Python Notes

Thursday, February 17, 2005

PC virtualization is coming to age

Well, this is not exactly a post about Python, but it relates a lot to my development experiences. I've been interested in PC virtualization techniques for a long time. I was an early user of VMWare, back when the license (and the price) were not so restrictive. I followed projects such as Bochs, which is a fine piece of software, but it's too slow for practical use; and later Plex86, that for some reason never managed to make it. For some applications, User Mode Linux is a good solution; it isn't as general as VMWare, but it is already used for a lot of stuff, including testing of Linux distributions, which requires a clean and controlled environment, and even for web hosting.

Over the last week, I've came across two projects which raised my interest on the subject once again. The first one was QEMU, which aims to be a VMWare-class virtualization software. It already supports several guest OSs, including some of the Windows family members. However, the project has found it recently in the middle of a big licensing discussion. The project author released the QEMU Accelerator Module -- a special binary-only module that greatly improves the performance of the system, and that seems reminiscent of the techniques used by VMWare itself -- under a free-to-use but still proprietary license. He had gone to great lengths to insure that the new module could be used as a plug-in, without disturbing the free part of the system; but even these concerns didn't help him. The community seems to be split now, and that's not good news.

The other project came to me via Red Hat, but the project home is hosted at the Cambridge University: Xen is a virtual machine monitor, and it is a kind of intermediate between the older User Mode Linux and VMWare. The approach is described as paravirtualization; the guest OS needs to know that it's running inside a VM environment. This makes the life of the VM monitor easier and improves its performance, but takes off some of the flexibility of the system. The performance is potentially higher than a similar User Mode Linux installation.

In the end, what i found more interesting on these news developments was a small note on the Xen FAQ. On the question about support for Windows as a guest OS, the FAQ says that new developments on x86 chips from Intel and AMD will make this support easier. It seems that both manufacturers finally have awakened for the possibility of full virtualization, and are including all necessary hooks in the chips themselves. This is definitely good news, and it's a sign that PC virtualization is coming to age.


Post a Comment

<< Home