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

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

  • To: "Pradeep Singh, TLS-Chennai" <pradeep_s@xxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx
  • From: "Petersson, Mats" <Mats.Petersson@xxxxxxx>
  • Date: Mon, 19 Feb 2007 15:49:23 +0100
  • Delivery-date: Mon, 19 Feb 2007 06:48:53 -0800
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AcdUMrLZPBqRLQ4JTBKoxnklKEMAywAAHHlQ
  • Thread-topic: [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"?
> 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

Xen-devel mailing list



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