Xen Virtualization and Windows

Aug 19, 2005
48
0
0
I recently read that it was possible to run Windows XP with no major, if any, speed impacts at the same time as Linux via Xen virtualization. How would I go about doing this, and is it possible in Fedora Core, Ubuntu, or Suse?
 

dwcal

Senior member
Jul 21, 2004
765
0
0
You can't run Windows XP under Xen yet, only Linux and BSD. The developers did port Windows XP to run under an early version of Xen, but it was never released because of license restrictions. If you want to run Windows as a guest OS under Linux, the best option now is VMware, and the free QEMU is getting better all the time.

Intel and AMD are both working on virtualization features for their processors. AMD's is called Pacifica. When that comes out expect to see a lot more software supporting Windows under a VM.
 

bsobel

Moderator Emeritus<br>Elite Member
Dec 9, 2001
13,346
0
0
Originally posted by: dwcal
You can't run Windows XP under Xen yet, only Linux and BSD.

Correct, the OS has to be designed to cooperate with Xen since it does not use emulation (like Vmware and Connectix)

The developers did port Windows XP to run under an early version of Xen,

Actually, MS research did the work, but you are correct it was not released.

Intel and AMD are both working on virtualization features for their processors. AMD's is called Pacifica. When that comes out expect to see a lot more software supporting Windows under a VM.

Yep, that is Xen's roadmap for Windows support...
 

bsobel

Moderator Emeritus<br>Elite Member
Dec 9, 2001
13,346
0
0
Originally posted by: thepingofdeath
What I read said something about Suse 10 supporting Windows XP under Xen.

Xen is the hypervisor, so saying XP under Suse doesn't make sense in the context. Do you happen to have link to what you read?

 

bsobel

Moderator Emeritus<br>Elite Member
Dec 9, 2001
13,346
0
0
Originally posted by: thepingofdeath
yay. then i can finally run linux but losslessly and quickly swap to windows to play a game.

Yep. I personally believe (as this is improved) it's one of the biggest threats to MS. Linux itself isn't. But being able to truely try Linux (or OSX... just wait) side by side without 'losing everything' will help level the playing field. Those other OS's will still need to compete, but people who feel they do can migrate over instead of 'jump' like today

My 2 cents, your mileage WILL vary ;)
 

Sunner

Elite Member
Oct 9, 1999
11,641
0
76
Originally posted by: bsobel
Originally posted by: thepingofdeath
yay. then i can finally run linux but losslessly and quickly swap to windows to play a game.

Yep. I personally believe (as this is improved) it's one of the biggest threats to MS. Linux itself isn't. But being able to truely try Linux (or OSX... just wait) side by side without 'losing everything' will help level the playing field. Those other OS's will still need to compete, but people who feel they do can migrate over instead of 'jump' like today

My 2 cents, your mileage WILL vary ;)

Never thought of that really, good point :thumbsup:
 

kamper

Diamond Member
Mar 18, 2003
5,513
0
0
Originally posted by: bsobel
Originally posted by: thepingofdeath
What I read said something about Suse 10 supporting Windows XP under Xen.
Xen is the hypervisor, so saying XP under Suse doesn't make sense in the context. Do you happen to have link to what you read?
I don't understand why that doesn't make sense, but then again, I know very little about virtualization... Isn't this the scenario he's talking about:
-boot suse
-start xen as an application (sort of) within suse
-start xp within xen

Now, as for your comment about this being a threat to windows, which markets are you talking about? Server, desktop, work station? Does xen run 'on' windows? Please explain slowly :p
 

bsobel

Moderator Emeritus<br>Elite Member
Dec 9, 2001
13,346
0
0
-boot suse

Think of Xen as the primary OS for the box. You boot Xen, then you would boot Suse within a virtual machine (not the other way around). The model your discussing is much more like Vmware GSX or Vmware Workstation which does run ontop of another mainstream OS. Xen is more akin to Vmware ESX....

Now, as for your comment about this being a threat to windows, which markets are you talking about? Server, desktop, work station? Does xen run 'on' windows? Please explain slowly :p

I was talking about desktop, this is already happenign in server where data centers use Vmware ESX and boot whatever they need to get the job done in vm's ontop of it...

Bill

 

drag

Elite Member
Jul 4, 2002
8,708
0
0

Originally posted by: Sunner
Originally posted by: bsobel
Originally posted by: thepingofdeath
yay. then i can finally run linux but losslessly and quickly swap to windows to play a game.

Yep. I personally believe (as this is improved) it's one of the biggest threats to MS. Linux itself isn't. But being able to truely try Linux (or OSX... just wait) side by side without 'losing everything' will help level the playing field. Those other OS's will still need to compete, but people who feel they do can migrate over instead of 'jump' like today

My 2 cents, your mileage WILL vary ;)

Never thought of that really, good point :thumbsup:


The current way Xen works it won't be as easy as all that.

Right now you have the core Xen system which runs the hardware and then the OSes run on that. (just a FYI so that people don't get confused that it works like Vmware versions were you run Vmware as a application inside another OS).

On that you have what they call 'rings'. The initial OS that gets started will run in 'ring 0'... which gives it special privilages to access hardware directly that other operating systems in other rings won't be able to do. This will allow it access to things like video and audio hardware. Other operating systems that will run won't have direct access like that, so things like 3d games in a non-ring 0 won't work.

So if you wanted to play video games in Windows, but be able to use Linux, you'd have to do something like run Windows in ring 0, to get access for hardware acceleration, then run Linux as another Xen-hosted OS. Then you could do something like run a X server on Windows and then use that to communicate directly with Linux.

Something like that, that's just from what I understand, though. I could be easilly wrong.

I don't know if this will change with Xen 3.0 either. It could be that with additional archatecture support with VT and such you could transfer hardware control over from one OS to another, but I doubt that would work very well if at all.

At this point most of the great things about Xen relate directly to servers and network services, and then also to clustering developement and also regular cross-platform developement. It would make it MUCH simplier to switch over from Windows servers to Linux servers for instance. Say you have some legacy VB apps that were developed in house for a corporation and they require a Windows server setup to work. That way you could run Windows server as a Xen client OS and move it around from PC server to PC server as it is needed. That sort of thing.

That's one of the neatest features I like about Xen. It has the ability to transfer memory information from one computer to another due to the abstraction. I think it works a bit like rsync or a primitive concurrent version control system... as the client OS is being used it copies memory image over to the other computer bit by bit. It tries to copy over information that isn't changing so much and updates everything gradually so that the idea is that the memory space on both machines is identical as much as possible. The the last part of the memory, that is being actively accessed and changed, will be 'paused' and sent over the network as quickly as possible. So that way if your working with a system memory image that is a few hundred megs, the majority of the memory will be already present on the other machine and the final few Ks or Megs will be transfered over... that way the system will have as little downtime as possible.
 

kamper

Diamond Member
Mar 18, 2003
5,513
0
0
Originally posted by: bsobel
-boot suse

Think of Xen as the primary OS for the box. You boot Xen, then you would boot Suse within a virtual machine (not the other way around). The model your discussing is much more like Vmware GSX or Vmware Workstation which does run ontop of another mainstream OS. Xen is more akin to Vmware ESX....
Thanks, that's exactly what I didn't understand :)
Now, as for your comment about this being a threat to windows, which markets are you talking about? Server, desktop, work station? Does xen run 'on' windows? Please explain slowly :p

I was talking about desktop, this is already happenign in server where data centers use Vmware ESX and boot whatever they need to get the job done in vm's ontop of it...

Bill
This is why I was curious. On the desktop, if people aren't willing to at least dual-boot linux or put it on a second machine already, why would they want to interupt the windows setup that they got from their oem by installing xen?

On the server, does linux need xens help to displace windows? Is it just a question of not having enough spare hardware to try out linux? This seems odd to me, because at the place where I just finished a co-op term, windows is in full stride taking the place of aix because it's way cheaper. Linux isn't even in the picture but if it was, I'm not sure that virtualization would really make it much more attractive.
 

drag

Elite Member
Jul 4, 2002
8,708
0
0
Originally posted by: kamper
Originally posted by: bsobel
-boot suse

Think of Xen as the primary OS for the box. You boot Xen, then you would boot Suse within a virtual machine (not the other way around). The model your discussing is much more like Vmware GSX or Vmware Workstation which does run ontop of another mainstream OS. Xen is more akin to Vmware ESX....
Thanks, that's exactly what I didn't understand :)
Now, as for your comment about this being a threat to windows, which markets are you talking about? Server, desktop, work station? Does xen run 'on' windows? Please explain slowly :p

I was talking about desktop, this is already happenign in server where data centers use Vmware ESX and boot whatever they need to get the job done in vm's ontop of it...

Bill
This is why I was curious. On the desktop, if people aren't willing to at least dual-boot linux or put it on a second machine already, why would they want to interupt the windows setup that they got from their oem by installing xen?

Many applications won't ever run in Linux. You could run Linux on your machine and then access Windows stuff natively on the same machine at the same time.

Home users aren't going to give a sh!t, probably, but corporate desktop is the current objective to many Linux developers.

It simply gets rid of another road block to Linux adoption.

On the server, does linux need xens help to displace windows? Is it just a question of not having enough spare hardware to try out linux? This seems odd to me, because at the place where I just finished a co-op term, windows is in full stride taking the place of aix because it's way cheaper. Linux isn't even in the picture but if it was, I'm not sure that virtualization would really make it much more attractive.

It'll help reduce costs and increase flexibility. Already it would probabably been much cheaper and easier for them to go from AIX to Linux instead of from AIX to Windows, but lots of places do lots of funny stuff. Most of the traditional Unix stuff is going to Linux nowadays at most places.

By removing the OS dependance on the hardware you can do things like have a server farm and move OSes and services around to machine to machine and replace and upgrade hardware on the fly. Also it increases security becuase you can do things like run untrusted network services in a Xen 'sandbox' and use other OSes to monitor it and run other sensitive services. This reduces the chances that a hacked 'machine' will have widespread damage. Stuff like that.

Any legacy windows applications/services that are to expensive to port can run in a Linux/Xen enviroment just fine without having to setup extra hardware resources to manage those systems.
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
yay. then i can finally run linux but losslessly and quickly swap to windows to play a game.

You can already do that with coLinux. It's a bit of a pain because you need to run an X server in Windows for GUI apps, but it works well enough.
 

bsobel

Moderator Emeritus<br>Elite Member
Dec 9, 2001
13,346
0
0
On that you have what they call 'rings'. The initial OS that gets started will run in 'ring 0'... which gives it special privilages to access hardware directly that other operating systems in other rings won't be able to do. This will allow it access to things like video and audio hardware. Other operating systems that will run won't have direct access like that, so things like 3d games in a non-ring 0 won't work.

So if you wanted to play video games in Windows, but be able to use Linux, you'd have to do something like run Windows in ring 0, to get access for hardware acceleration, then run Linux as another Xen-hosted OS. Then you could do something like run a X server on Windows and then use that to communicate directly with Linux.

Think of the Vanderpool technology as adding a new ring 'below ring 0' for the hypervisor to use. The OS then run at ring 0, but thats no longer the lowest possible ring.

I saw you edited the emulation comment out, but its core to the difference between Xen and Vmware (etc). There are about a dozen instruction on the x86 that can not be virtualized, Vmware actually emulates those code pages with the instructions to ensure it 'doesnt lost control' of the machine and that the right 'things' happen. Xen's approach is to have the hosted OS's not use those instructions, but instead inform Xen that they need to (which then does it on their behalf). With Vanderpool, even code running at ring 0, there is no longer any non-virtualized instructions. Hence the need to emulate goes away, so Vmware, Connectix, etc will all see performance gains when they support the new chips.

 

bsobel

Moderator Emeritus<br>Elite Member
Dec 9, 2001
13,346
0
0
This is why I was curious. On the desktop, if people aren't willing to at least dual-boot linux or put it on a second machine already, why would they want to interupt the windows setup that they got from their oem by installing xen?

Well, it might not be Xen itself, I was talking about the technology. It might even be from MS (run Longhorn along with your legacy XP install, side by side, etc). Intel, IBM, etc envision the capability to run multiple-os's side by side. I can easily envision MS shipping a side-by-side game OS someday.... But I digress...

On the server, does linux need xens help to displace windows? Is it just a question of not having enough spare hardware to try out linux? This seems odd to me, because at the place where I just finished a co-op term, windows is in full stride taking the place of aix because it's way cheaper. Linux isn't even in the picture but if it was, I'm not sure that virtualization would really make it much more attractive.

Vitualization in the datacenter is a big big business now, it's about cost effecitvely using the available hardware regardless of the OS that happens to be running the task at hand. Vmware started this, but Xen and the others have a pretty good shot too (as Vanderpool levels the cost of entry for all the providers).

 

drag

Elite Member
Jul 4, 2002
8,708
0
0
Originally posted by: bsobel
On that you have what they call 'rings'. The initial OS that gets started will run in 'ring 0'... which gives it special privilages to access hardware directly that other operating systems in other rings won't be able to do. This will allow it access to things like video and audio hardware. Other operating systems that will run won't have direct access like that, so things like 3d games in a non-ring 0 won't work.

So if you wanted to play video games in Windows, but be able to use Linux, you'd have to do something like run Windows in ring 0, to get access for hardware acceleration, then run Linux as another Xen-hosted OS. Then you could do something like run a X server on Windows and then use that to communicate directly with Linux.

Think of the Vanderpool technology as adding a new ring 'below ring 0' for the hypervisor to use. The OS then run at ring 0, but thats no longer the lowest possible ring.

I saw you edited the emulation comment out, but its core to the difference between Xen and Vmware (etc). There are about a dozen instruction on the x86 that can not be virtualized, Vmware actually emulates those code pages with the instructions to ensure it 'doesnt lost control' of the machine and that the right 'things' happen. Xen's approach is to have the hosted OS's not use those instructions, but instead inform Xen that they need to (which then does it on their behalf). With Vanderpool, even code running at ring 0, there is no longer any non-virtualized instructions. Hence the need to emulate goes away, so Vmware, Connectix, etc will all see performance gains when they support the new chips.

Ya, sorry about editing that comment out, after I wrote it I saw that you touched on the VMware server stuff and I didn't want to confuse anybody with any accidental missinformation.
 

kamper

Diamond Member
Mar 18, 2003
5,513
0
0
Originally posted by: drag
On the server, does linux need xens help to displace windows? Is it just a question of not having enough spare hardware to try out linux? This seems odd to me, because at the place where I just finished a co-op term, windows is in full stride taking the place of aix because it's way cheaper. Linux isn't even in the picture but if it was, I'm not sure that virtualization would really make it much more attractive.

It'll help reduce costs and increase flexibility. Already it would probabably been much cheaper and easier for them to go from AIX to Linux instead of from AIX to Windows, but lots of places do lots of funny stuff.
I seriously doubt it.

First of all, a huge part of the transition involves moving to sql server and .net.

Secondly, microsoft wegded itself in pretty well by giving out visual studio licenses for essentially nothing, paying for the in house developers to get trained on .net and they even paid for contractors to come in and start setting up a .net environment (that costs a sh|tload of money). Given that the entire office runs windows, nicely supported by IBM, the only options would have been going with java (certainly a possibility) or getting linux running on the developers machines (a pretty big upheaving).

While java would have been very doable, it would have been an IBM platform, which still would have been a bunch more expensive than .net.