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

RE: [Xen-devel] Structure of the Xen source code

  • To: <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • From: "Pradeep Singh, TLS-Chennai" <pradeep_s@xxxxxx>
  • Date: Tue, 20 Feb 2007 09:10:20 +0530
  • Delivery-date: Mon, 19 Feb 2007 19:40:15 -0800
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AcdUMrLZPBqRLQ4JTBKoxnklKEMAywAAHHlQABr3orwAAHVVig==
  • Thread-topic: [Xen-devel] Structure of the Xen source code

-----Original Message-----
From: Pradeep Singh, TLS-Chennai
Sent: Tue 20-Feb-07 8:57 AM
To: Petersson, Mats
Subject: RE: [Xen-devel] Structure of the Xen source code

-----Original Message-----
From: Petersson, Mats [mailto:Mats.Petersson@xxxxxxx]
Sent: Mon 19-Feb-07 8:19 PM
To: Pradeep Singh, TLS-Chennai; xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: RE: [Xen-devel] Structure of the Xen source code

> -----Original Message-----
> From: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
> [mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of
> Pradeep Singh, TLS-Chennai
> Sent: 19 February 2007 14:32
> To: xen-devel@xxxxxxxxxxxxxxxxxxx
> Subject: [Xen-devel] Structure of the Xen source code
> hi all,
> I installed Xen on my Gentoo machine successfully from source.
> Now i am going through the code.
> instead of banging aimlessly for a week or so i thought i
> should ask the mailing list the following small doubts.
> I noticed that following directories are there in my
> xen-3.0.3_0-src directories.
> 1. linux-2.6.-xen-sparse
> 2. pristine-linux-
> 3. linux-
> 4. ref-linux-
> 5. linux-
> 6. linux-
> 7. xen
> 8. unmodified_drivers
> only these directories look like holding the source.
> As it looks from the directories i assumed that the xen dom0
> patched code must be residing in the linux-
> directory and that of patched xen domU in linux-
> Am i right? or i am missing something?

Yes, those are correct.

The pristine directory is a "direct copy of kernel.org sources" (or
whatever sources where used to generate the patched version of Linux).
This is used if you want to "make patches" to port to a different
version of Linux.

The sparse directory contains the xen-modified source-code, which is
"merged" with pristine to create the patched source-code.

Linux- is another version of ...-xenU and ...-xen0 which is
a "universal variant". The xenU and xen0 versions are "stripped down" to
make them as small as possible, but you have TWO of them. The -xen
version is a unified version which contains drivers and code for both
DomU and Dom0 usage, and thus you can have ONE kernel to install
everywhere. [Don't worry, the security of Dom0 and DomU is managed by
the Xen hypervisor anyways - it's just a case of "if you know it's going
to be DomU, don't put the code that it can't use in there" (and likewise
for Dom0 not being able to use some code needed in DomU)].

The xen directory contains the hypervisor itself.

> What exactly does the other directories signify?
> Secondly , if i want to start studying the Xen code what
> would be the correct path to follow.
> By path i mean is which the directory i should start digging first?

Depends on what you want to achieve... Understanding ALL of Xen is a LOT
of effort. Understanding enough to be able to do what you need to do may
be a lot less. What is the target of your "studying the code"?

Target to understand how exactly Xen is booted and initialized.
On second thought this is what i understood from my study.
Xen binary sits with the patched xen dom0 kernel above hardware.
Am i right?

When we say Xen binary i.e the first line of the Xen entry in Grub(e.g xen.gz), this is different from the patched dom0 kernel, right?

I look at this as

xen.gz -> hypervisor
linux.2.6.x.-xen.dom0 -> patched host kernel
linux.2.6.x-xen.domU -> patched/unpatched guest kernel we want to boot.

Please CMIIW.


> If a doc about code organisation of the Xen can be given that
> will be great.
> Any other links or pointer'll be appreciated.
> Thanks in Advance
> pradeep


The contents of this e-mail and any attachment(s) are confidential and intended 
for the named recipient(s) only.
It shall not attach any liability on the originator or HCL or its affiliates. 
Any views or opinions presented in 
this email are solely those of the author and may not necessarily reflect the 
opinions of HCL or its affiliates.
Any form of reproduction, dissemination, copying, disclosure, modification, 
distribution and / or publication of 
this message without the prior written consent of the author of this e-mail is 
strictly prohibited. If you have
received this email in error please delete it and notify the sender 
immediately. Before opening any mail and 
attachments please check them for viruses and defect.

Xen-devel mailing list



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