Hu Jia Yi
2008-Feb-28 09:24 UTC
RE: [Xen-devel] A question on vmx loader in xen - how and when rombiosis loaded into memory
Where can I download documents elaborating the differences between xen-3.2.0 and 3.1.0. The white paper in xen.org is too short to be enlighting. By the way, how can a full emulation of real mode be done? Is there a big speed gap between the full emulation and VM86? Best regards, Hu Jia Yi Ext: 20430 Tel: 65-67510430 -----Original Message----- From: Keir Fraser [mailto:Keir.Fraser@cl.cam.ac.uk] Sent: Thursday, February 28, 2008 4:59 PM To: Hu Jia Yi; Cui, Dexuan; xen-devel@lists.xensource.com Subject: Re: [Xen-devel] A question on vmx loader in xen - how and when rombiosis loaded into memory We don’t take that patch in Xen 3.2 and earlier. Instead we use vmxassist (see the use_vmxassist() if statement immediately above the jump to f000:fff0). In current xen-unstable we have got rid of vmxassist and Xen itself does full emulation of real mode; and the tools/firmware/README is gone! -- Keir On 28/2/08 07:33, "Hu Jia Yi" <jyhu@asmpt.com> wrote: Thank you. I notice the system then jumps to F000:FFF0 to execute. But because VMX is turned on, switching to real-mode would incur problems? I don’t find any clue to turn on the vm86 mode as Readme in the tools/firmware directory puts. Best regards, Hu Jia Yi Ext: 20430 Tel: 65-67510430 -----Original Message----- From: Cui, Dexuan [mailto:dexuan.cui@intel.com] <mailto:dexuan.cui@intel.com%5d> Sent: Thursday, February 28, 2008 11:43 AM To: Hu Jia Yi; xen-devel@lists.xensource.com Subject: RE: [Xen-devel] A question on vmx loader in xen - how and when rombiosis loaded into memory> how and when rombios, vgabios and vmxassist have been loaded to the memory from the disk before calling “memcpy”.They are statically compiled into hvmloader in the way of C array and are loaded with hvmloader. Please step into the directory hvmloader/ and search for "roms.h" in Makefile. -- Dexuan ________________________________ From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] <mailto:xen-devel-bounces@lists.xensource.com%5d> On Behalf Of Hu Jia Yi Sent: 2008年2月28日 11:26 To: xen-devel@lists.xensource.com Subject: [Xen-devel] A question on vmx loader in xen - how and when rombiosis loaded into memory A “main” function is defined in Xen-3.1.0-source/tools/firmware/hvmloader/hvmloader.c. In this main function, rombios, vgabios and vmxassist are copied to specified address, with following commands memcpy((void *)ROMBIOS_PHYSICAL_ADDRESS, rombios, rombios_sz); … memcpy((void *)ETHERBOOT_PHYSICAL_ADDRESS, etherboot, sizeof(etherboot)); …. But after searching the whole directory “firmware”, I don’t know how and when rombios, vgabios and vmxassist have been loaded to the memory from the disk before calling “memcpy”. Could anybody help me on this? Best regards, Hu Jia Yi Ext: 20430 Tel: 65-67510430 ________________________________ _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Keir Fraser
2008-Feb-28 09:52 UTC
Re: [Xen-devel] A question on vmx loader in xen - how and when rombiosis loaded into memory
There isn’t such a document. You can probably find a short list of bullet points on xen.org. Yes emulation much slower but modern bootloaders spend only a short time in real mode. The exceptions (e.g., SuSE bootloader pre-10.2) don’t work with vm86 at all. -- Keir On 28/2/08 09:24, "Hu Jia Yi" <jyhu@asmpt.com> wrote:> Where can I download documents elaborating the differences between xen-3.2.0 > and 3.1.0. > The white paper in xen.org is too short to be enlighting. > > By the way, how can a full emulation of real mode be done? Is there a big > speed gap between the full emulation and VM86? > > > Best regards, > Hu Jia Yi > Ext: 20430 > Tel: 65-67510430 > > -----Original Message----- > From: Keir Fraser [mailto:Keir.Fraser@cl.cam.ac.uk] > Sent: Thursday, February 28, 2008 4:59 PM > To: Hu Jia Yi; Cui, Dexuan; xen-devel@lists.xensource.com > Subject: Re: [Xen-devel] A question on vmx loader in xen - how and when > rombiosis loaded into memory > > We don’t take that patch in Xen 3.2 and earlier. Instead we use vmxassist (see > the use_vmxassist() if statement immediately above the jump to f000:fff0). In > current xen-unstable we have got rid of vmxassist and Xen itself does full > emulation of real mode; and the tools/firmware/README is gone! > > -- Keir > > On 28/2/08 07:33, "Hu Jia Yi" <jyhu@asmpt.com> wrote: > Thank you. > > I notice the system then jumps to F000:FFF0 to execute. But because VMX is > turned on, switching to real-mode would incur problems? > > I don’t find any clue to turn on the vm86 mode as Readme in the tools/firmware > directory puts. > > > Best regards, > Hu Jia Yi > Ext: 20430 > Tel: 65-67510430 > > -----Original Message----- > From: Cui, Dexuan [mailto:dexuan.cui@intel.com] > <mailto:dexuan.cui@intel.com%5d> > Sent: Thursday, February 28, 2008 11:43 AM > To: Hu Jia Yi; xen-devel@lists.xensource.com > Subject: RE: [Xen-devel] A question on vmx loader in xen - how and when > rombiosis loaded into memory > >> > how and when rombios, vgabios and vmxassist have been loaded to the memory >> from the disk before calling “memcpy”. > > They are statically compiled into hvmloader in the way of C array and are > loaded with hvmloader. > Please step into the directory hvmloader/ and search for "roms.h" in Makefile. > > -- Dexuan > > > > > > > From: xen-devel-bounces@lists.xensource.com > [mailto:xen-devel-bounces@lists.xensource.com] > <mailto:xen-devel-bounces@lists.xensource.com%5d> On Behalf Of Hu Jia Yi > Sent: 2008年2月28日 11:26 > To: xen-devel@lists.xensource.com > Subject: [Xen-devel] A question on vmx loader in xen - how and when rombiosis > loaded into memory > A “main” function is defined in > Xen-3.1.0-source/tools/firmware/hvmloader/hvmloader.c. > In this main function, rombios, vgabios and vmxassist are copied to specified > address, > with following commands > > memcpy((void *)ROMBIOS_PHYSICAL_ADDRESS, rombios, rombios_sz); > … > memcpy((void *)ETHERBOOT_PHYSICAL_ADDRESS, etherboot, sizeof(etherboot)); > …. > > But after searching the whole directory “firmware”, I don’t know how and when > rombios, vgabios and vmxassist have been loaded to the memory from the disk > before calling “memcpy”. > > Could anybody help me on this? > > Best regards, > Hu Jia Yi > Ext: 20430 > Tel: 65-67510430 > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel