Re:puzzle about about page fault in sigma0 space
Bob <[email protected]> Wed, 10 Sep 2008 11:41:08 +0800 (CST)
| Newsgroups | gmane.comp.micro-kernel.l4.l4ka.general |
|---|---|
| Message-ID | <[email protected]> |
In addition, a pagefault occur. A ipc containing the virt address caused the pagefault will be send to the pager. And the pager will allocate a phys region. And map it to the virt address. Then the program can goes on. But i didnot find how a pager can make this map? Pager is in user level, but page table can only be changed in kernel mode. Thanks, all! Bob <[email protected]> wrote: Hi, all I am sorry for trouble you again. I am puzzled about page fault in sigma0 space. My puzzle is that when access a virt address below 256M in sigma0 space, and a page fault will occur. Then the page fault process will make phys : virt 1 : 1 mapping through map_sigma0() funtion. Then it can access the phys address which is below 256M ? But these low 256M addresses is kernel used. And shouldn't be accessed by user thread directly. Or else the kernel data will be distroyed . How to explain this? ------- Best regards Bob 买房不必东奔西走,上房老大,看"二手房"网上房展会