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
|