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


[Xen-devel] A little more clarification

To: Tim.Deegan@xxxxxxxxxxxx, xen-devel@xxxxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] A little more clarification
From: Ted Hilts <thilts@xxxxxxxxxxxxxxxx>
Date: Wed, 02 Mar 2005 20:32:20 -0700
Cc: thilts@xxxxxxxxxxxxxxxx
Delivery-date: Thu, 03 Mar 2005 03:30:43 +0000
Envelope-to: xen+James.Bulpin@xxxxxxxxxxxx
List-archive: <http://sourceforge.net/mailarchive/forum.php?forum=xen-devel>
List-help: <mailto:xen-devel-request@lists.sourceforge.net?subject=help>
List-id: List for Xen developers <xen-devel.lists.sourceforge.net>
List-post: <mailto:xen-devel@lists.sourceforge.net>
List-subscribe: <https://lists.sourceforge.net/lists/listinfo/xen-devel>, <mailto:xen-devel-request@lists.sourceforge.net?subject=subscribe>
List-unsubscribe: <https://lists.sourceforge.net/lists/listinfo/xen-devel>, <mailto:xen-devel-request@lists.sourceforge.net?subject=unsubscribe>
Sender: xen-devel-admin@xxxxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (Windows; U; Win95; en-US; rv:1.0.1) Gecko/20020823 Netscape/7.0 (nscd2)

Thank you for your comments.  I am still having a problem in trying to visualize a few things.  I hope you can persevere with me on this. Sorry to be so lengthy on something that seems more than obvious to others on the list. Let me explain.

Back in the days of Linux kernel 2.2.x I purchased VMWARE (for Linux) which was intended -- in non technical terms --  to be installed on top of or into my existing (SuSE 6.2 or 6.4 or equivalent installed distribution using kernel 2.2.x) Linux distribution. I just followed the instructions and it worked but I had no real insight into the matter. Then a few weeks ago a chap on the [SLE] list said he had downloaded Xen and installed it on top of or into his existing SuSE 9.1 (kernel 2.6.x) distribution installation. He indicated (just as with VMWARE) that he had a virtual Linux distribution installed on top of his existing or primary Linux installation. He indicated that both the initial installation and the virtual one ran concurrently. Although, that is probably not a techincally correct way of talking about these things. So when reading the tutorial and installation web pages for Xen I was predisposed to interpret this material from that same standpoint.  In otherwords, I either properly or improperly assumed that there must be a 2.4.x or 2.6.x Linux system already up and working with the servers such as NFS, Telnet, SSH, portmap, and others as well the NIC and other physical interface devices all working.  In my mind it was this already installed and working distribution that would become the (basis) GUEST OS for DOMAIN 0 once the kernel was modified (ported) and installed becoming joined to Xen.

When I used VMWARE I just followed instructions but did not appreciate the reasoning or proprietary software architecture behind those instructions.  Because I now want to work with the source code of Xen and the Linux kernel I want very much to develop an accurate and proper insight. That is why I am now dwelling on this issue which was supposed to be my point #1 of 4 high level points in my previous email. So now I will ask my question.

Is what I have assumed correct, must there be an existing 2.4 or 2.6.x kernel based Linux installation up and running which must be modified (kernel modification or ported) to run Xen?  It is my understanding that the Xen source code installation or the binary installation both require a properly pre installed fully functional Linux system as the basis of Xen operation.  Once it's (pre installed linux distribution) 2.4.x or 2.6.x kernel has been modified to work with the Xen software and tools we have created this Linux distribution into an Xen-based system called Domain 0 that becomes so when shutdown and then booted???

If my assuption correctly follows the Xen documentation then my first point should have read:

NOTE:: If this point is flawed by the assumpition that there must be a fully functional pre existing 2.4 or 2.6.x Linux sytem then my thinking is all screwed up. It would not be the first time. BTW, by OS I don't mean just the kernel. Some consider the entire installation the OS -- an obvious mutation.  I don't know how Xen documentation defines OS.  For some people the kernel is the OS as it is the primary layer.  For others the distribution less the desk top, games, graphical applications, office packages and any non command line controlled packages constitute the OS.  I use the latter definition.  So if OS means just the kernel code then  I will have to significantly change my point #1.

The following detail is what I meant to imply by my point #1.

#1 -- The BUILD:
The  Xen distribution includes 3 main components (Xen itself, ports of Linux 2.4 and 2.6.x kernels to run on (with) Xen, and user-space tools required to manage an Xen-based system) all of which assumes the existence of an already installed and fully fuctional  pre existing Linux system which must be adapted (to become the default Xen Linux build identified as DOMAIN 0.  Domain 0 is  the primary layer (controlled by the Xen package) and consists of the GUEST OS (the adapted pre existing Linux system) hosted by a secure pseudo virtual machine (a controlled execution environment using the adapted or ported kernel and Xen tools and processess to run and monitor parts of the GUEST OS (entire installed linux system?)).  The pre existing system once so adapted and running under Xen control contains support for relatively modern server-class network and disk hardware. The Xen process (called xend) runs in highest privilege in DOMAIN 0 and  it's code detects and starts secondary processors, sets up interrupt routing, time slicing, and performs PCI bus enumeration as well as offloads hardware support issues to DOMAIN 0 GUEST OS which is the modified pre existing Linux installed distribution.  As such, Xen provides a secure virtual machine for this GUEST OS, builds other domains using an OS installed in a root file system placed on a partition and booted from that partition, manages their virtual devices and performs administrative tasks.

My next question:
What exactly is an HTTP/S server -- apparently it is a requirement for browser administration access to a Xen-based system? Is Apache such a server and if not can it be turned into such a server???

One more question:
Regarding the source code.  I have been reviewing Python and C (gcc/gcc++) and was wondering if there was a high level diagram showing dependencies (hierarchy based on caller and called)  and code utilized (python, C, binary insertions, etc.)???

Based on what I am learning here (mostly from you) I have been constructing a very high level chart showing levels, key Xen processes, and stuff like that.  I will send you a copy once I am sure the information is correct and properly represents what is happening.

Thank you very much in advance for your comments and advice.


<Prev in Thread] Current Thread [Next in Thread>