pmap of amd64

Yonghong Yan noah.yan at gmail.com
Fri Oct 12 15:24:27 PDT 2007


Hi Matt,

I try to come up the way to organize the kernel memory maps and having
spent sometime figuring out the freebsd pmap structure which looks
wired to me (because of not understanding:).

below is the amd64 long mode 4k page VA structure.

63           48             39               30              21
       12                 0
----------------------------------------------------------------------------------------
|      Ext       |     PML4   |    PDP        |      PD      |      PT
       |     offset     |
----------------------------------------------------------------------------------------
                           9it              9bit            9bit
     9bit             12bit

some issues for discussions:

1. 4K page or 2M page for kernel?
2. how many PML4/PDP entry for kernel/user?
3. how to do with the per-cpu data, should a PML4/PDP entry for each CPU?

hopefully there are relevant. others issues that I may not know,
please raise them. answers to them may have do with the
machine-independent VM management and the specificities of dfly kernel
thread/messaging system.

thanks
Yonghong





More information about the Kernel mailing list