[Prev][Next][Index][Thread]

problems about vm(note !!)



In function oskit_uvm_machdep_init(),it first setup
the initial page table according to the phys_mem_max.
Then it initializes the pde of PTE_BASE.Then,in
function pmap_bootstrap(),it will allocate five
speciall va pages,now,whether the vas should be in
initialized pdes.For example,128M RAM,
    if I enable the ACPI in BIOS SET,It's phys_mem_max
is 77f0000, initialzed pde is 0-29 . the special vas
is in pde 29.
    If I disable the ACPI in BIOS SET,it's
phys_mem_max is 8000000,pde 0-31.the special vas is in
pde 32.so later,in pmap_growkernel()->pmap_zero_page()
will cause faults.because va of zero_pte has not been
allocated,in pde table has no its pde,it couldn't find
its pde in pde table.
    my problem is ,you how to ensure that the five
special vas has been allocated,in a word,the five va
pages alreasy have their pdes.Another problem is the
zero_pte's use,pmap_zero_page() how to use the tmp
page (zero_pte) to zero page and setup a pde.
    thank you very much.

__________________________________________________
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.com