|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] Questions about shadow page table.
Hi,
I have some questions about Shadow page table in Xen.
1. Xen used shadow-1, shadow-2, and shadow-3 from beginning to now. (http://blog.xen.org/index.php/2008/08/27/xen-33-feature-shadow-3/) In Xen 3.3, it re-use out-of-sync, which is used in Shadow-1.
Shadow-1. Its method of propagating changes from guest pagetables to the shadow pagetables was as follows:
1. Remove write access to any guest pagetable. 2. When a guest attempts to write to the guest pagetable, mark it out-of-sync, add the page to the out-of-sync list and give write permission. 3. On the next page fault or cr3 write, take each page from the out-of-sync list and: - resync the page: look for changes to the guest pagetable, propagate those entries into the shadow pagetable - remove write permission, and clear the out-of-sync bit.
My question is that, dose step 2 trap into Xen hypervisor?
2. I think there are 2 kinds of page fault. 1) normal page fault in guest, which should be handled by guest; 2) invoked by guest updating the page table, which should be handled by Xen.
So, if there's a page-miss fault in guest, how many times it will trap into Xen? First, page miss, trap into Xen. Xen finds out it's the 1st kind fault, then it go back to guest to handle it Then, in guest, when it updates the page table to fix the page fault, it will invoke the 2nd kind fault, which will trap into Xen again.
Am I right?
3. For the user space part, are the attribute bits of the entries in Guest page table and Shadow page table the same?
Thanks, Wu
穿越地震带 纪念汶川地震一周年
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] Questions about shadow page table.,
Wu Bingzheng <=
|
|
|
|
|