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

[Xen-devel] question about memory auto-translate and paravirtual and no pseudophysical overlay



hi
I try to understand the code of xen memory
there are gmfn, gpfn and pfn  in the xen
and in the /xen/include/xen/mm.h there are some explanation about them as follows:

* 1. gpfn/gpaddr: A guest-specific pseudo-physical frame number or address.
* 2. gmfn/gmaddr: A machine address from the p.o.v. of a particular guest.
* 3. mfn/maddr:   A real machine frame number or address.
* 4. pfn/paddr:   Used in 'polymorphic' functions that work across all
*                 address spaces, depending on context. See the pagetable
*                 conversion macros in asm-x86/page.h for examples.
* Also 'paddr_t' is big enough to store any physical address.
*

I seems to understand the meaning about them,but I am confused about the different memory-management modes as follows

* This scheme provides consistent function and variable names even when
* different guests are running in different memory-management modes.
* 1. A guest running in auto-translated mode (e.g., shadow_mode_translate())
*    will have gpfn == gmfn and gmfn != mfn.
* 2. A paravirtualised x86 guest will have gpfn != gmfn and gmfn == mfn.
* 3. A paravirtualised guest with no pseudophysical overlay will have
*    gpfn == gpmfn == mfn.
*

what is the meaning about auto-translated mode,is it not the same with paravirtualised one ? does the auto-translated mode work for hvm and shadow mode? how does it work? and what is the mechanism about paravirtualised guest with no pseudophysical overlay?

I am confused about it

could you help me
Thanks in advance




_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.