This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: Users can provide their own kernels? (Was: Re: [Xen-users] Basic Que

To: Andy Smith <andy@xxxxxxxxxxxxxx>
Subject: Re: Users can provide their own kernels? (Was: Re: [Xen-users] Basic Question)
From: Mark Williamson <mark.williamson@xxxxxxxxxxxx>
Date: Wed, 15 Jun 2005 14:35:39 +0100
Cc: xen-users@xxxxxxxxxxxxxxxxxxx
Delivery-date: Wed, 15 Jun 2005 13:40:35 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <20050615133433.GN754@xxxxxxxxxxxxxx>
List-help: <mailto:xen-users-request@lists.xensource.com?subject=help>
List-id: Xen user discussion <xen-users.lists.xensource.com>
List-post: <mailto:xen-users@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=unsubscribe>
References: <36967cc905061503081361da34@xxxxxxxxxxxxxx> <200506151424.27329.mark.williamson@xxxxxxxxxxxx> <20050615133433.GN754@xxxxxxxxxxxxxx>
Sender: xen-users-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: KMail/1.8
> Very nice work!  Thanks.

You should thank Jeremy Katz (RedHat) for PyGrub (aq provided some additional 
patches,  IIRC - ReiserFS support, colour support, etc).

> Out of curiosity, does this mean that the domU kernel has to exist
> both inside the domU's root file system and in the dom0 filesystem?
> Or does Xen just start the bootloader from the domU filesystem and
> go from there?

Using PyGrub's approach, the bootloader is part of Xend and uses a filesystem 
library to poke into the guest filesystem and read the grub.conf / menu.lst 
and the kernel, initrd, etc.  The bootloader is running in dom0 but the 
kernel only needs to be in the guest filesystem.

Using the kexec approach, there'd be a bootloader kernel in dom0 that 
initially runs in the domain, mounts the FS and finds the appropriate files.  
Kexec is then used to jump into execution of a kernel from the guest 
filesystem.  Thus the bootloader runs in the domU *and* the guest kernel is 
in the domU filesystem.

The second approach is a bit more complicated to implement (from a developer 
PoV) but does have the advantages that all access to the guest filesystem 
occurs in an unprivileged domain and that it can immediately support all 
filesystems Linux will support.  *however* this will arguably be most 
important to people who are a) paranoid about security (highly untrusted 
guests) or b) use really weird filesystems ;-)


Xen-users mailing list