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

[Xen-devel] Trying to understand HVM booting


  • To: xen-devel@xxxxxxxxxxxxxxxxxxx
  • From: "Steven Y. Ko" <sko@xxxxxxxxxxx>
  • Date: Tue, 17 Apr 2007 11:45:44 -0500
  • Delivery-date: Tue, 17 Apr 2007 09:44:19 -0700
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:sender:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition:x-google-sender-auth; b=Rgt/WrMpb4suqV3nP8rcg5aINW2EKUzW2UKhpN03dMHYlT9wGbzENh1VuyViyNwg7UcGG5/koBYV+ONwnL6nWB4kW4uK+U6bhMq1Ri99B8OLF00RUfMEJv9Yxl1bNlQOlRzcLC8sIFpPU1OsrOH2g4EZJYsJCNlbIeKg67fx6Qg=
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

Hello,

I'm trying to understand how HVM booting works. By my limited
understanding of the Xen code, it seems that a new domain is scheduled
but paused (or is it paused?) by domain_create() in
xen/common/domain.c. Then xc_hvm_build() in tools/libxc/xc_hvm_build.c
loads hvmloader and calls a hypercall with XEN_DOMCTL_setvcpucontext.
It looks like, when executing this hypercall, domain_unpause() is
called (in xen/common/domctl.c) and it starts the execution of
hvmloader. Is this correct? My understanding is very limited, and it
would be great if someone can point out some important pieces of code
so I can look into it.

Also, I'm looking at hvmloader, and wondering where it actually starts
loading the new HVM DomU kernel. Specifically, I wonder where in the
code it reads the disk to load the kernel. Can anyone give me some
pointers? Thanks!

- Steve

_______________________________________________
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®.