Find the answer to your Linux question:
Results 1 to 2 of 2
As we know, the address of 3G~4G of a process is mapped as the kernel address. and in order to improve efficiency, use a constant 0xc000000 to get the phisical ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Just Joined!
    Join Date
    Nov 2006
    Posts
    2

    a problem about kernel address map,thanks


    As we know, the address of 3G~4G of a process is mapped as the kernel address. and in order to improve efficiency, use a constant 0xc000000 to get the phisical address, for example, address 0xc1000000's phisical address is 0xc1000000 - 0xc0000000, and in the book of <<Understanding the Linux Kernel, 3rd Edition>>, this address is called as "Fix-Mapped Linear Addresses", but I have a problem, why the this could improve efficency? because the MMU will transform every address to phisical address by the page table which created by the kernel. and as the MMU will look up the page table, should the kernel fill the corressponding entries in page table which is used to map the 3G~4G address to phisical address ? if don't, the MMU will not work correctly. but if do, why use the expresstion 0xc1000000 - PAGE_OFFSET(0xc0000000) to calculate the phisical address ? and what is "Fix-Mapped Linear Addresses"? Why "Fix-Mapped Linear Addresses"?
    thank you very much!
    and I'm sorry for my poor English

  2. #2
    Just Joined!
    Join Date
    Nov 2006
    Posts
    2
    who can help me?
    thanks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •