Slashdot Mirror


Linux Kernel to Include KVM Virtualization

It looks like the newest version of the Linux kernel (2.6.20) will include KVM, the relatively new virtualization environment. From the article: "Thanks to its approach KVM already runs in the current kernel, without any extensive bouts of patching and compiling being required, after the fairly simple compilation of a module. Virtual machines that run unmodified operating systems are meant to appear in the host as a simple process and work independently of the host kernel. In a fashion comparable to that of Xen a modified QEMU is used for the supportive emulation of typical PC components of the virtual machines."

22 of 194 comments (clear)

  1. how many KVMs by Gopal.V · · Score: 5, Informative

    First there was KVM switches and then there was the Java KVM (kilobyte VM).

    Now there's the linux KVM which has nothing to do with either those or the Kernel VM rewrites of the linux past.

    Leave that acronym alone !

    1. Re:how many KVMs by should_be_linear · · Score: 3, Insightful

      All three-letter acronyms are recycled many times already but it will not stop future projects/organizations to recycle them once more.

      --
      839*929
    2. Re:how many KVMs by bazorg · · Score: 3, Funny

      yep, there just aren't enough TLA...

    3. Re:how many KVMs by the-stringbean · · Score: 3, Funny

      Now all we need is somebody to connect a KVM (switch) to a KVM (virtualisation) machine that's running a KVM (Java KVM)!

      I just know that someone is going to comment on KVM overlords soon...

  2. KVM switch? by advocate_one · · Score: 4, Funny

    I take it this has nothing to do with the other meaning for KVM, Keyboard, Video, Mouse switches... there I was thinking that my Belkin KVM switch was finally gonna work properly (I have two mice connected as the switch cannot switch the mice correctly)

    --
    Donald 'Duck' Dunn: We had a band powerful enough to turn goat piss into gasoline.
    1. Re:KVM switch? by TheThiefMaster · · Score: 3, Informative

      Don't get me started on belkin, I've had trouble with everything they've made. I've even got a usb bluetooth adapter here that isn't xp sp2 compatible. It's an F8T001_v1, I've had it since before SP2 was released, and I tried it again recently and they still haven't made SP2 drivers for it (last driver release was 2003).

      But seriously, I read an article once about why kvms can't switch mice properly, apparently it's because the ps2 mouse protocol has no synchronisation in it. So when a cheap kvm switches the mouse to the other pc, switching in the middle of a data packet more often than not, the pc starts thinking the start of the packet is the middle. This results in things like "moving the mouse clicks the buttons" and other such fun. Most mouse drivers can identify this problem and correct for it, but it takes a few seconds of mouse movement. Even better, some laptops have a kind of ps2 merge circuit for their ps2 touchpad and external mouse, so if the external mouse gets out of sync there is no way to correct it, because the merge is too stupid and the drivers can't see the touchpad and mouse separately, so it can't independently change the synch of the external mouse.

      In other words, either get a decent kvm, a kvm that can switch usb mice (which do have synch and so don't have this problem), or stick to two separate mice.

      Oh, one more word of kvm warning, they often can't handle resolutions above 1024x768 on the monitor without blurring badly. Whether this is the fault of the cheap cables they always come with or the kvm itself, I don't know.

  3. Not frist psot! by Aladrin · · Score: 3, Interesting

    Not first post, but at least I can be the first not to kvetch about them not integrating a physical object with a piece of software. -sigh-

    The article talks about a news article mistakenly stating it was for Intel processors only. I imagine it said that because the official site says it's for Intel only. http://kvm.sourceforge.net/howto.html

    It does also say elsewhere on the site http://kvm.sourceforge.net/faq.html that it's for certain AMDs also.

    It claims it can run 32-bit windows inside the virtualization. Does this mean Windows can directly access the hardware, and provide true 3D support and such? Or is it simply another hardware emulator with all the associated problems? Too bad 'windows guest' installation is broken at the moment.

    --
    "If you make people think they're thinking, they'll love you; But if you really make them think, they'll hate you." - DM
  4. Virtualisation on Linux by cortana · · Score: 4, Informative

    Xen
    VMWare
    linux-vserver
    UML
    OpenVZ
    Plex86
    Qemu
    Bochs
    lhype

    and now

    KVM

    http://linuxvirtualization.com/ has some good linux to recent announcements regarding virtualisation software on Linux.

    Are there any more?

    1. Re:Virtualisation on Linux by julesh · · Score: 4, Informative

      Many of these are substantially different from standard virtualization systems, though:

      linux-vserver and OpenVZ are chroot-based virtual hosting environments, not virtualized operating systems. You can add OpenVSD to the list of such projects, although it appears to be practically dead.

      Qemu and Bochs are PC emulators, not virtual machines, which is a slightly more subtle distinction, but still one that needs to be made.

      UML is something different entirely -- an operating system that is designed to run as a process on another operating system with a similar syscall interface.

      That leaves KVM, Xen (which uses an exokernel, so is effectively its own OS, not a Linux-hosted VM), VMware (which is proprietary) and plex86 (which will only run modified kernels so doesn't provide a true virtual machine).

      So, you see, KVM is effectively the only Linux-based VM system (by the traditional definition) on that list.

  5. Not everything, just video by brunes69 · · Score: 3, Interesting

    One of the main barriers to Linux adoptoin is the fact that you can't ru Windows games in Linux, unless you reboot into windows. If LVM / Xen / QEMU / VMWare started realizing this and made video driver performance a priority, they could have a real market leader on their hands.

    I know if there was a VM out there that coudl run Windows games with full native windows video accelleration, I woudl pay very good money for it.

    Sound / disk / CPU performance has been there in VMs for years, at least froma desktop users standpoint. The one area that lags behind all other sis video support. Even with VMWare (arguable the fastest VM out there right now), running a full scrteen Windows session under Linux feels sluggish at best...a nd there isno Direct3D support at all.

    And as far as your comment - there is absolutely nothing stopping them from doing this. Just look at X, it interfaces direct with the kernel via DRI, and it's secure.. a crashing X session won't bring your whole machine down.

  6. For those brain-dead like me: by erroneus · · Score: 4, Informative

    http://www.haifux.org/lectures/152/kvm-external.pd f

    This breaks down in fairyly simple terms where KVM fits in. Basically, the approach is pretty close to the VMware approach but presently requires the newer, more advanced processors to operate. So where VMware can run on more hardware such as my Pentium M processor based laptop, KVM will not likely work as far as I can tell. (Please tell me I'm wrong if I am.)

    I'm disappointed that I will not be able to play with this new toy any time soon as I don't think I will be buying new hardware any time soon.

    1. Re:For those brain-dead like me: by Conley+Index · · Score: 5, Funny

      I'm disappointed that I will not be able to play with this new toy any time soon as I don't think I will be buying new hardware any time soon. You can always emulate modern hardware...
    2. Re:For those brain-dead like me: by zdzichu · · Score: 5, Informative

      Yes, it needs processor with Intel VT-x (Vanderpool) or AMD SVM (Pacifica). So Pentium 4/D (available since 2005), most of Core Duos, Core 2 or AMD CPUs sold since August this year (Socket F/1207 and AM2) qualify.

      --
      :wq
    3. Re:For those brain-dead like me: by gbjbaanb · · Score: 3, Informative

      No, KVM will work, but it will not be as fast as you'd like. With the new CPU instructions, it will be a lot faster. (the reason is down to the memory management unit, with a VM every time it context switches, it throws away some cached page state. The new CPUs deal with this so you get the better performance).

      I read a ng post where the author said his VM desktop was fine, but with the new CPUs you'd get performance very near running natively.

  7. Re:Only up to date processors? How up to date? by d34d.10n · · Score: 4, Informative

    From Wikipedia:

    "Intel VT was officially launched at the Intel Developer Forum Spring 2005. It is available on most Pentium 4 6x2, Pentium D 9x0, Xeon 3xxx/5xxx/7xxx, Core Duo and Core 2 Duo processors. On some implementations, IVT support may be switched off in the BIOS/EFI."

    "AMD processors using Socket AM2, Socket S1, and Socket F include AMD Virtualization support. In May 2006, AMD introduced such versions of the Athlon 64 and Turion 64 processors. AMD Virtualization is also supported by release two (x2xx series) of the Opteron processors."

  8. VMotion/HA? by Stile+65 · · Score: 4, Interesting

    The company I work for now is virtualizing on RedHat boxes running VMWare, and one of the neat features that it has is called VMotion, which lets you nearly instantly move a virtual machine from one box to another without interrupting its execution (except a slight delay). The high availability (HA) feature, which they also have but we have not yet configured, allows this to happen automatically if a host box goes down. There are rules about which VMs may not run on the same machines, etc. (for redundancy purposes, you don't want all your web servers running on the same host, for example).

    Is this at all possible with KVM? If not, are they planning it? Is it possible to approximate it with something like OpenMosix, since (IIRC) OpenMosix can move processes around dynamically when nodes fail or get bogged down, and a VM is just a process (assuming a central SAN that all the host boxes connect to)?

    --
    I claim first use of "Error No. 0B" - or "No. 0B error." It'll be the new ID 10T!
    1. Re:VMotion/HA? by hey! · · Score: 4, Funny

      How about the moon on a stick? Would you like the moon on a stick?


      I'm an American, you insensitive clod. That means on a stick, wrapped in a pork rind, breaded, then deep fried. Mmmm.
      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    2. Re:VMotion/HA? by smodak · · Score: 3, Informative

      Well, the company behind KVM (I realy hope they choose some other name for the finished product) reportedly has Moshe Bar on their payroll. IIRC he is the guy involved in OpenMosix, so I'd think that this facility, if not already available, would be available very soon.

  9. Re:I hope Windows can't access the hardware. by Schraegstrichpunkt · · Score: 4, Informative

    How in the WORLD does access to the video, sound, or any other daughterboard grant access for a virus?

    DMA + lack of IOMMU = unrestricted access to system memory

    ... in the WORLD

  10. A W E S O M E ! ! ! by Anonymous Coward · · Score: 4, Interesting

    According to http://kvm.sourceforge.net/faq.html is will support VMWare images and it does run win32.

    Now turn that kernel into a BIOS http://linuxbios.org/Welcome_to_LinuxBIOS and you will be able to use the same images for all your machines.

  11. Re:What benefits does this give? by BokLM · · Score: 4, Informative

    Why is this comment rated informative ?
    For thoses who are interested, look at this page :
    http://kvm.sourceforge.net/faq.html

    It is the same thing, but it is actually readable.

  12. Re:I hope Windows can't access the hardware. by LarsG · · Score: 4, Insightful

    How in the WORLD does access to the video, sound, or any other daughterboard grant access for a virus?

    If you don't know, please leave your geek-card at the door on your way out.

    Short answer - DMA.

    Long answer - memory protection between processes (and in this case guest OSes) is done by the MMU, making sure that process A can't read/write to memory owned by process B (or in this case guest OS and host OS). Unfortunately, the memory space seen by devices on extention buses like PCI is not mapped by the MMU. If a process has direct access to a device that supports DMA, it can tell the device to read or write memory that belongs to other processes (f.ex. order the sound card to read the sound buffer from kernel space. The process can then read the sound buffer to get access to kernel memory).

    To safely allow a process (or guest OS) direct access to hardware devices, the hardware architecture and OS needs to be designed so that a DMA from the hardware device can only access memory owned by the process that ordered the DMA.

    --
    If J.K.R wrote Windows: Puteulanus fenestra mortalis!