Home > OS News > Xen Passes Windows MilestoneXen Passes Windows Milestone Submitted by jeanmarc 2005-08-24 OS News 30 CommentsStart-up XenSource has succeeded in booting Microsoft Windows on top of Xen software, an important milestone in its effort to commercialize the virtual machine. About The Author David AdamsFollow me on Twitter @david_adams 30 Comments 2005-08-24 7:31 am Correct link seems to be;http://news.com.com/Xen+passes+Windows+milestone/2100-7344_3-584226… 2005-08-24 7:34 am raver31thanks for the proper link.I have been watching Xen closely since they made their first announcement. I think they will have a better product than vmware and win4lin. I wish them luck 2005-08-24 8:13 am archiesteelAlthough the article you need a VT-enabled Intel chip to run unmodified OSes…and somehow I doubt Vista will be modified in order to support Xen. So while it’s a very promising project, it doesn’t replace vmware/win4lin if you don’t have access to the appropriate hardware.Do the AMD chips have anything similar to the Intel VT? 2005-08-24 8:26 am You miss the point.Next year all new processors from Intel and AMD have hypervisor technology. Xen already supports both manufacturers. And then, Xen surpasses vmware/win4lin by far, because of the fact that Xen is included in the linux kernel and Novel/RH supports it in there distributions.Also look at the wide support Xen is getting from the big guys (IBM, HP, Intel, AMD, Sun etc. etc.) and you will see it has got a bright future! 2005-08-24 3:21 pm Mark WilliamsonVista will support paravirtualisation at some point: MS are introducing their own paravirtual interface. The MS hypervisor will need VT / Pacifica hardware *anyway* though.Win4Lin Pro support for running in Xen was announced recently, btw.AMD are introducing something called “Pacifica” which is rather similar to VT. Their product is a bit further off release but they’ll be contributing support to Xen too. 2005-08-24 8:32 am Give, and it shall be given unto you – Luke 6:38I will not wish them luck, but I wish them all the best! 2005-08-24 8:54 am Tyr.This scares MS to no end. Windows running on top of someone elses software, open source even, imagine. So they’re working on their own hypervisor ( http://blogs.msdn.com/dglover/archive/category/10609.aspx ) as part of Vista.I don’t remember them ever considering this before we had Xen. 2005-08-24 9:40 am The Xen project states on their website ( http://www.cl.cam.ac.uk/Research/SRG/netos/xen/ ) that a port of Xen for Windows XP was created but could not be released due to license restrictions. Additionally, on the same page it states that work on Xen has been supported by MS Research. I would not be surprised if the MS hypervisor is based on Xen. 2005-08-24 11:15 am Tyr.I would not be surprised if the MS hypervisor is based on Xen.MS include GPL licensed software in Windows ? I’ll believe that when I see it. 2005-08-25 4:23 am So what is stopping Microsoft from using the software and not give credit to anyone? How will you see it then? Their software is closed and sealed, so how will anyone ever know? 2005-08-25 4:36 am WIth 40,000 in house developers and numerous thousands with their “strategic partners” someone is bound to spill the beans. 2005-08-25 7:13 am Celerate“So what is stopping Microsoft from using the software and not give credit to anyone? How will you see it then? Their software is closed and sealed, so how will anyone ever know?”I remember when SCO first made claims that Linux had stolen code from SCO’s unix many people used something like MD5 sums if I remember correctly to compare the compiled binary code. I can’t remember if that’s really exactly how they did it, but they found a way and it may be possible to do the very same to closed source Windows software.Anyway I don’t claim to understand what they did, I just know they thought that method would work and that’s good enough for me. Also a lot of people who steal GPL code get caught because of similarities, such as console output, size of the executable, the same bugs, etc… in the derived software. 2005-08-25 1:17 pm Mark WilliamsonAside from the binary fingerprinting techniques others have described, I think MS would be too scared to touch GPL software, to be honest. Anyone finding GPL code in an MS product would be an absolute legal and PR disaster for them! 2005-08-25 2:15 pm How about the alleged BSD IP stack in Win2000 ? 2005-08-25 2:19 pm Mark WilliamsonThe BSD license permits you to include BSD-licensed code into proprietary products 2005-08-24 2:32 pm It was a port of XP not Xen…“A port of Windows XP was developed for an earlier version of Xen, but is not available for release due to licence restrictions.” 2005-08-24 2:48 pm Mark WilliamsonIt’s not based on the Xen code because it’s GPL’d. However, the MS hypervisor clearly has learnt a lot from the development of Xen and has a *very* similar architecture (including running device drivers in a privileged virtual machine, some paravirtualised interfaces, etc.) 2005-08-24 9:54 am It’s scaring VMWare too.The other day I got an Email from VMWare – they’re doing a kind of MSDN thing now where as a developer you pay 299usd a year and get access to Workstation, GSX and ESX server for unlimited machines. If you already have a WS5 license, they’ll knock that off the 299 too!Not bad considering Workstations costs, what 180usd?I’m a big fan of VMWare but know a lot of people who have moved away from it because of the hassle of having to recompile it every time you update your kernel on a Linux host, and also having to hack around to get the tools working on Linux guests (Solaris guests are a right pain!)A Windows host is of course a lot easier to manage (as are Windows guests). But I wonder will Xen not have these problems or worse, or is it better as it uses your actual hardware instead of emulated hardware?I wonder if we’ll see OS/2 running under Xen ever, something VMWare could do once long ago (pre v3?) and people have been screaming about since. I think VirtualPC can run it, although VPC is a joke in my opinion. 2005-08-24 12:09 pm Could you post details of that $299 vmware developer deal? 2005-08-24 1:40 pm well you could have just looked at vmware.com, it is on the homepage….http://www.vmware.com/products/vplatform/vmtn_features.html 2005-08-24 12:26 pm evert“For example, the (Windows XP) boot process uses 16-bit code from that must be emulated on today’s 32-bit and 64-bit chips”unbelievable, isn’t it? 2005-08-24 2:55 pm Mark WilliamsonThing is, any full x86 virtual machine needs to support 16 bit code (e.g. for the bootloader). The difference for Windows is that it *keeps* using 16 bit huring its startup process and you can’t bypass it.Early efforts for VT-enabled Xen just stuck Linux into memory and kicked it into life in protected mode. 2005-08-24 3:01 pm Mark WilliamsonActually I think I’ll modify that comment: I’m not sure how much Windows expects to use 16 bit mode during kernel startup but in any case I think it *needs* the bootloader to load the various DLLs, registry data etc beforehand. And the bootloader will need to run in 16 bit mode. 2005-08-24 3:04 pm Not really, considering the fact that the bootloader has to be 16-bit for the CPU to run it correctly. 2005-08-24 1:45 pm Funny thing is… Xen doesn’t support framebuffer (nor does their VT/VMX model), I am curious as to how running a CLI (most likely the recovery console) constitutes running a Windows OS. Xen is well over a year from replacing the useability of any of the more solid VMs out there.By the way, you need to compile Xen linux kernels for both your host and your guest machines, and then you need to put your modules into the virtual machines disk. Each VMM has its … downfalls. 2005-08-24 2:53 pm Mark WilliamsonActually, there is a framebuffer device for VT/VMX virtual machines under Xen (I’ve used it), so I imagine Ian demo’d graphical Windows. It’d be really nice if some videos emerged at some stage.Also, you don’t actually need[*] a separate kernel for guest virtual machines, the same kernel will run fine on both. Using the default config, guests don’t need any modules, so you won’t usually need to install any.[*] two kernels *are* supplied but that’s just because the fully unprivileged guest kernel is a bit smaller. Any Xenified kernel should run in a guest.HTH,Mark 2005-08-24 1:49 pm Last I checked, maybe my x86 architecture knowledge is a little outdated, but all x86 processors start in 16-bit mode? How can that be called “emulating”? I do know there is a VM8086 mode, but you have to be in 32-bit protected mode to even access that. Furthermore that isn’t an issue VT should even have to worry about. That’s like saying in Windows 98, we have a 16-bit and a 32-bit task… ie, its the hardwares responsibility to ensure that the instructions are properly executed (x86 supports task switching on the hardware level… this implementation is very similar to how VT is implemented).I think Xen is good software, but I think these guys are tooting their own horn way to damn hard. 2005-08-24 2:59 pm Mark WilliamsonSure, x86 starts in 16 bit mode. The trouble is that once you’ve booted into your host OS and want to start a virtual machine you’re not in 16 bit mode anymore, you’re in protected mode.VT doesn’t give you complete virtual machines, it just gives assistance to a virtual machine monitor. It’s still the VMM’s job to somehow ensure that 16-bit code gets executed correctly. This wasn’t needed to get Linux running in a VMX-assisted virtual machine but it really can’t be avoided for running Windows.Side note: although you can do hardware task switching on x86 I don’t think most OSes use it. 2005-08-24 3:12 pm Mark WilliamsonEmulating real hardware devices has some performance limitations. Xen-native guest operatings systems are able to use special “Xen-aware” devices that give optimal IO performance. Although some optimisation is to be done on the current device emulation code, there are also plans to allow Windows to use the Xen-aware devices to boost the performance. 2005-08-24 11:08 pm To the chap who claimed you need to compile special host and guest kernels: Yes, at the moment you do. But the whole article is about running windows on it. They used VT, which meant windows didn’t need to be modified. Which means, your domain x (x>0) machines do not need to be modified.