- MCP server with stdio transport for local use - Search episodes, transcripts, hosts, and series - 4,511 episodes with metadata and transcripts - Data loader with in-memory JSON storage 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
158 lines
13 KiB
Plaintext
158 lines
13 KiB
Plaintext
Episode: 12
|
|
Title: HPR0012: Xen
|
|
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr0012/hpr0012.mp3
|
|
Transcribed: 2025-10-07 10:17:44
|
|
|
|
---
|
|
|
|
music
|
|
Hello and welcome to Hacker Public Radio.
|
|
My name is Miro Vinci and I'll be your host today.
|
|
Previously in episodes of Today with a Techie, I discussed using VMware and virtualization
|
|
as a potential solution to different problems or to different test networks such as that
|
|
as you might need.
|
|
I believe I listed the example of a virtual cluster that I had built completely inside
|
|
of VMware.
|
|
I had a master node to slave nodes and all of the networking necessary to actually run
|
|
to actually test the cluster and it saved me bundles in terms of hardware because I only
|
|
needed one machine with one piece of software, you know, I'll be at VMware.
|
|
But this past semester, I took a class at the university, simply titled virtualization
|
|
and we spent the entire semester going through different journal articles and discussing
|
|
the technology of virtualization, a lot of the theory behind virtualization and a lot
|
|
of a lot of very interesting stuff and we concluded the semester with individual projects.
|
|
And so I hope to over the next few episodes that I have with Hacker Public Radio to explore
|
|
some of the things that we discussed in class and even potentially hopefully share my
|
|
project with you, with the community because it's a simple project, it was something that
|
|
I whipped together in the application that I'll actually be talking about here shortly and
|
|
has a potential, I feel to be a real benefit and hopefully in the coming months, I will
|
|
be able to talk about that some more coming weeks rather.
|
|
So today I wanted to discuss more and depthly of virtualization solution known as Zinn.
|
|
Now Zinn is spelled X-E-N and actually started with a professional article, a journal article
|
|
that came out in 2003 called Zinn and the Art of Virtualization, you know, and the main
|
|
authors on that were Paul Barham, Boris Dragovic and Kair Fraser and I would definitely
|
|
encourage you to go on the internet and you can go to websites like site seer at C-I-T-E-S-E-E-R.
|
|
You have to Google that or just use Google or Google Scholar to actually find this article.
|
|
It's 40 pages long and it really is an introduction, a good introduction to Zinn and how Zinn
|
|
works as a virtualization system or virtualization solution.
|
|
Some of you might be wondering what exactly is a virtualization software or virtualization
|
|
system to start with VMware as an example.
|
|
VMware will allow you to install their software onto your current operating system and then
|
|
install what they refer to as guest operating systems inside of that program.
|
|
Ultimately though what is going on is that guest operating system is installing completely
|
|
within software, installing completely within software to where it has no direct access
|
|
to any physical hardware because to the guest operating system, it has a complete set
|
|
of physical hardware which is completely being emulated by VMware.
|
|
Yes it is possible inside of say VMware workstation or VMware server to allow the guest
|
|
operating system to have access directly to pieces of hardware whether that is a CD-ROM
|
|
drive, USB hubs or USB devices, network cards, network interface devices.
|
|
You can allow that sort of access but by default and by its overall operation it is trying
|
|
to contain the guest operating system completely within emulated hardware or virtual hardware.
|
|
So now if you think about it, if you try and run just let's say a CD player application
|
|
within your guest operating system but you want to play it on the physical or you want to
|
|
play the physical CD-ROM drive, the CD player application has to send its you know system calls
|
|
and hardware calls and all that stuff through the guest operating system which gets down
|
|
to the virtual hardware which then VMware interprets those requests and then allows it
|
|
allows from that software application to take those hardware calls and hardware requests
|
|
down through the real operating system which is the operating system that lies beneath
|
|
the VMware, not above it, but beneath the VMware that allows then access to the physical
|
|
hardware.
|
|
So we've now added multiple layers that system calls and things like that have to get
|
|
through before they get to now comparing Zen to this virtualization model or virtualization
|
|
example, Zen is actually rather different.
|
|
Now for VMware Workstation and VMware Server it is a guest operating system installed
|
|
of a piece of software that was installed on top of a real operating system.
|
|
Now with Zen the guest operating system is installed onto what is referred to as a hypervisor.
|
|
Now the hypervisor is technically a piece of the Zen software that translates or handles
|
|
the system calls between the guest operating system and the hardware.
|
|
Now so this basically removes a lot of those layers between you know the software operating
|
|
system or software operating system, virtualization software, the true operating system down
|
|
to the real hardware and allows for a more direct access to the hardware.
|
|
Now even though a guest operating system has this more direct access access to hardware
|
|
is still controlled by Zen.
|
|
So just like in the VMware example if you want to allow a piece of hardware to have direct
|
|
access to a guest OS you can certainly do that and conversely if you don't want the
|
|
guest OS to have direct access or any access whatsoever to a piece of hardware you have
|
|
the ability to block that access and to deny access to that hardware or to that hardware
|
|
device.
|
|
If you were if you're following or if you get a chance to download the papers in the
|
|
virtualization figure one is a better description of you know of the Zen hypervisor and how
|
|
it fits into I guess the operating system model I don't know I don't this has a technical
|
|
term that I'm not familiar with but you'll see what's going on here.
|
|
Now to control the actual hypervisor as you'll see in this picture is and as you read in
|
|
this paper is something referred to as domain zero.
|
|
Within the Zen software guest operating systems are referred to as domains and all of all
|
|
of these things installing guest operating systems starting and stopping guest operating
|
|
systems as well as setting up hardware for guest operating systems or domains is all
|
|
controlled by domain zero and domain zero is a you know is a is a Linux is basically I mean
|
|
it it's Linux that has access to the Zen hypervisor and that allows these controls.
|
|
Okay so now we're aware of two different virtualizing solutions that are currently on the
|
|
market what's you know why would you choose one over the other well the answer comes
|
|
down to performance and performance issues as well as you know what you're going to do
|
|
with it now in terms of performance the Zen you know appears to do very very well and if
|
|
you look in in the article there's a complete section of evaluation and testing and figure
|
|
three is is a it's a graph that shows shows a benchmarks comparing native Linux so Linux
|
|
on a physical machine to what they call Zeno Linux which is their which is their Zen client
|
|
a VMware workstation but to be fair this is VMware workstation 3.2 and then user mode
|
|
Linux in all of these cases the Zeno Linux the Zen does almost as well as the native Linux
|
|
does or as the native hardware does and that's simply because it doesn't have the overhead of an
|
|
of an additional operating system operating underneath of Zen and underneath of what you know Zen
|
|
is trying to accomplish now to be fair though you can't really use this article to compare Zen
|
|
to VMware because in the article they use VMware workstation 3.2 and I don't know if it's
|
|
explained in this article or if it was in different articles that we read but you can go to and you
|
|
can go to the VMware website and you can find this in their in their in user license agreement
|
|
that you are not allowed to do benchmarking without VMware's express permission and I think in some
|
|
of their or in a recent change to their you know you know it's you you can you can do your own
|
|
benchmarks but they ask that you not publish the results and so even though they're up to like
|
|
VMware workstation 5.5 at the time this people was written VMware workstation 3.2
|
|
was the only version of VMware that VMware would license or allow them to do this benchmark on
|
|
and use the results in this article so you know so to to be fair to VMware I do want to point out
|
|
point out that difference and point out that thing but comparing Zen to native Linux so Linux
|
|
on a physical machine the numbers are incredible and that Zen performs very very well and so
|
|
they continued on with more benchmarks into let's see section 4.3 with running concurrent virtual
|
|
machines so they tested running running instances simultaneous instances of you know this benchmarking
|
|
program on you know Linux or native Linux and Zen and it's remarkable that looking in figure 4
|
|
and they're running what's called spec web 99 which was a a stress test of Apache servers or
|
|
a stress test for Apache servers and whenever there was one instance of the Apache server running
|
|
on Linux and Zen you know the native Linux did better than Zen did and it does that for the
|
|
two instances and for four instances but once we get to eight concurrent Apache servers that are
|
|
running the stress test analyzer now we get to a point where Zen actually performs better than
|
|
the native Linux does and I mean then that and that's because they're you know for each instance
|
|
of the Apache they're running it on different um different um domains and so you know so there's
|
|
not this conflicting overhead of software costs you know from from one instance to the other
|
|
azures with the native Linux or the you know the Linux on a physical machine and so Zen performs
|
|
very very well and you know if you read another pieces of literature depending on the application
|
|
that you're doing Zen runs incredibly well now again to be fair to VMware not that I by any way
|
|
I'm trying to um give plugs to VMware to encourage you to buy VMware's product or VMware products
|
|
they do have something called ESX server which is which is in in my opinion not that I've had direct
|
|
experience with it but appears to be very similar if not the same to this idea of pair of virtualization
|
|
now to completely you know reiterate that I don't want to give plugs to VMware because I mean
|
|
their products are commercial they cost and you know I am a free open source kind of guy I like
|
|
to support the open source community and Zen is actually an open source product now they do have a
|
|
apparent company or a the company the the people who created Zen you know created their own
|
|
company which was bought out by Citrix last year and so Zen does have a commercial solution
|
|
but they still have all of their source code online available for download for you know
|
|
absolutely free and I will definitely include a link in the show notes but that link is
|
|
Zen.org xen.org now you can go to ZenSource.org and that'll take you to the you know to the new
|
|
parent company Citrix but Zen.org xen.org is where you can get you can download it you can download
|
|
the user manual they have a wiki you know all sorts of that general open source communal
|
|
so that you can communicate that you can talk with others and that you can work with others
|
|
on your Zen project I'll also include a link in in a how to forge article that I use initially
|
|
when I got started with Zen and and if you just go to Zen or go to how to forge.com and you can
|
|
do a search for Zen devian it should be like the first link I used devian as my domain zero
|
|
to control my Zen and control the hypervisor it was able to install other devian domains or other
|
|
devian guest operating systems on my on my system on my Zen virtualized system I know there are
|
|
articles in the how to forge about how to install multiple versions of Linux or multiple flavors of
|
|
Linux onto our into a Zen environment including Ubuntu and Fedora core devian obviously etc so
|
|
definitely a worthwhile tool feel free also if you have any more questions you can email me directly
|
|
at MiroVinji at gmail.com that's m-i-r-o-v-e-n-g-i you can also find me in the
|
|
infinomicon channel on the free node irc server and in future episodes we'll be looking at more
|
|
virtualization technology that's come out especially some of the hardware technologies like the
|
|
vt enabled stuff I hope to discuss more theory about that about what goes into virtualization
|
|
and how some of these things like VMware like Zen work and and to potentially maybe look at
|
|
some of the more recent virtualization news which is like the VMVM escaping that many people
|
|
are working on you know looking at malware things like blue pill and just also how to really
|
|
use these technologies to your advantage and to you know what you're doing which you know gets
|
|
back to my class project that I hope to unveil at some point I hope that you've enjoyed today's
|
|
episode I'm again the MiroVinji and this has been hacker public radio thank you for listening
|
|
to hacker public radio hpr is sponsored by caro.net so head on over to caro.net for all your hosting
|