Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Linux Kernel to Include KVM Virtualization

Posted by ScuttleMonkey on Tue Dec 12, 2006 06:34 AM
from the last-minute-contenders dept.
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."
+ -
story
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • Yes... (Score:2, Funny)

    by Anonymous Coward
    ...but does this Linux run Linux?
  • how many KVMs (Score:5, Informative)

    by Gopal.V (532678) on Tuesday December 12 2006, @06:41AM (#17206082) Homepage Journal

    First there was KVM [wikipedia.org] switches and then there was the Java KVM [sun.com] (kilobyte VM).

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

    Leave that acronym alone !

    • All three-letter acronyms are recycled many times already but it will not stop future projects/organizations to recycle them once more.
    • Well someone here just update the KVM [wikipedia.org] disambiguation page.
    • there is also libkvm (for kvm_open, kvm_read, etc)
    • 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...

    • Re: (Score:3, Interesting)

      And it's not even an KDE app! I used to think it was some KDE front-end to an existing virtualization program...
      • Well you know, there are only 26 * 26 * 26 = 17576 combinations of TLAs to choose from. Of course, some are a priori more likely than others because of the relative frequencies of letters that start proper names.

        And if you throw out the lame ones, you have, like, five left. That's the problem.
  • KVM switch? (Score:5, Funny)

    by advocate_one (662832) on Tuesday December 12 2006, @06:44AM (#17206098)
    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)
    • Re: (Score:2, Insightful)

      by Anonymous Coward
      > 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)

      Keyboard and mouse data comes in packets of about 3 or 4 bytes. If a KVM switch toggles mid-packet the PC and/or the peripheral may get badly confused. A well-designed KVM product will get this right, but many don't; it looks like your Belkin product falls into this category.

      KVM swithces also vary enormously in their video quality. It is a mista
    • Re: (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
  • Not frist psot! (Score:4, Interesting)

    by Aladrin (926209) on Tuesday December 12 2006, @06:54AM (#17206138)
    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 [sourceforge.net]

    It does also say elsewhere on the site http://kvm.sourceforge.net/faq.html [sourceforge.net] 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 it gives another OS *full* access to everything then you'd be just as vulnerable to viruses , worms etc as if you were running that OS natively and you could well find your linux filesystem hosed. Hopefully guest OSes will be in a sandbox or at the very least only allowed to directly access specific user defined hardware resources. If not then I certainly won't be taking advantage of this system anytime soon.
      • by brunes69 (86786) <`slashdot' `at' `keirstead.org'> on Tuesday December 12 2006, @07:34AM (#17206358) Homepage
        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.

        • 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.

          If the full interface documentation for recent Nvidia and ATI video cards was released, and GPL-compatible drivers existed, this would probably already be in the works.

        • Re: (Score:3, Insightful)

          Games is not the main barrier to adoption. The home desktop is low price, low margin cut-throat business. Why would VMware, XenSource etc. want to go after a market which will be difficult to support, and not provide them with the money they need to keep going? The corporate market (particularly servers) is far larger and far more important for them - so don't expect video drivers to ever be a priority.
        • Re: (Score:3, Insightful)

          Games may be an inhibitor for Linux adoption in the home market, but Xen/QEmu/KVM/VMWare aren't aimed at the home market at all. When you consider the fact that what you want is most definitely not a simple task, you may understand why nobody has done it yet.

        • Re: (Score:3, Insightful)

          "a crashing X session won't bring your whole machine down."

          If it locks up the video sub system it can make the machine unusable except via a net or dumb terminal connection , which could mean the machine needs a reboot. Not good in a business enviroment.
        • by Schraegstrichpunkt (931443) on Tuesday December 12 2006, @08:13AM (#17206568) Homepage

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

          DMA + lack of IOMMU [wikipedia.org] = unrestricted access to system memory

          ... in the WORLD

        • by LarsG (31008) on Tuesday December 12 2006, @09:38AM (#17207482) Journal
          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. [wikipedia.org]

          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.
  • But is this going to let me run 32-bit Windows under 64-bit Linux? Apparently Xen can't do it and that really bugs me.
    • VMWare (Score:3, Informative)

      You can do that in VMWare player and VMWare server, both of which are free (as in beer).

      http://www.vmware.com/ [vmware.com]

      • Re: (Score:3, Funny)

        You can do that in VMWare player and VMWare server, both of which are free (as in beer).

        You mean I can get drunk if I use them too much ?
        • Why does it matter if you're running a proprietary OS in a proprietary VM? If you're concerned about only using free software, why bother with the proprietary OS? If you're wanting to virtualize Free operating systems, use Xen. It rocks.
            • Re: (Score:3, Informative)

              Take off your tinfoil hat and let your head breathe.

              You think VMWare tells anything to Microsoft? Why would they? They are about as far from being "in bed" with them as you can imagine. For one, Microsoft is their #1 competitor (with Virtual Server).

              You can rest assured that VMWare tells **as little as possible** to Microsoft about everything.

              All this is not to mention the fact that what you are implying would be highly unethical and if VMWare actually did that, they would have been found out long ago and p
    • Re: (Score:3, Informative)

      Yes:

      "The driver supports i386 and x86_64 hosts and guests. All combinations are allowed except x86_64 guest on i386 host. For i386 guests and hosts, both pae and non-pae paging modes are supported." (From LKML)
  • by Viol8 (599362) on Tuesday December 12 2006, @07:09AM (#17206232)
    It mentions some code names but I'm not au fait with Intel or AMD code names. How long have these functions been in CPUs? Will my P4 support it or is it only the latest core duos and so forth?
    • by d34d.10n (924456) on Tuesday December 12 2006, @07:47AM (#17206400)
      From Wikipedia [wikipedia.org]:

      "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."
  • by cortana (588495) <samNO@SPAMrobots.org.uk> on Tuesday December 12 2006, @07:28AM (#17206330) Homepage
    Xen [xensource.com]
    VMWare [vmware.com]
    linux-vserver [linux-vserver.org]
    UML [sourceforge.net]
    OpenVZ [openvz.org]
    Plex86 [sourceforge.net]
    Qemu [bellard.free.fr]
    Bochs [sourceforge.net]
    lhype [ozlabs.org]

    and now

    KVM [sourceforge.net]

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

    Are there any more?
    • Yeah, there is Parallels [parallels.com] which runs on Windows, Linux, and OSX.

      I feel VMware is still king of the hill for most anything (especially Windows on Linux). I have yet to use any other system that can match it in terms of features, performance and compatibility. I know that sounds like an advertisement but it is one of the few pieces of software I have consistently bought the latest version of since it was first released like 7 or 8 years ago. It tends to be much less buggy than anything else also.

      You can onl
    • by julesh (229690) on Tuesday December 12 2006, @08:13AM (#17206564)
      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.
          • Re: (Score:3, Informative)

            Actually there is/was an open source effort to replace the KQEMU "accelerator" module... QVM86 [nongnu.org]. Unfortunately it needs work, it's functional but only operates on x86 (no x86_64). There are patches against current CVS for compatibility with KQEMU 1.3.x and QEMU 0.8.2 on the QVM86 newsgroup but development seems to have otherwise stagnated.

            Also the author of KQEMU did say he would open up the source if sponsored.
    • Re: (Score:3, Informative)

      You left out dosemu [dosemu.org] (the earliest hardware virtualization, using the V86 mode of all 386-compatible processors - but also supporting 32-bit DPMI applications) and DOSBox [sourceforge.net] (which is based on bochs). Also Cooperative Linux [colinux.org] for running a Linux system under other OSes, such as Windows.
  • by erroneus (253617) on Tuesday December 12 2006, @07:41AM (#17206378) Homepage
    http://www.haifux.org/lectures/152/kvm-external.pd f [haifux.org]

    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.
    • by Conley Index (957833) on Tuesday December 12 2006, @07:52AM (#17206438)

      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...
    • Re: (Score:3, Informative)

      http://www.intel.com/products/processor_number/pro c_info_table.pdf [intel.com]

      This confirms it. I can't play. But it also lists who can play! Are you on the list? Check it out.
    • 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.
    • by gbjbaanb (229885) on Tuesday December 12 2006, @08:25AM (#17206648)
      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.
    • Re: (Score:3, Informative)

      Basically, the approach is pretty close to the VMware approach but presently requires the newer, more advanced processors to operate.

      That's not a good way of putting it, because it incorrectly suggests that VMware somehow pioneered virtualization and KVM follows it. But what VMware actually pioneered was a workaround for a lack of virtualization instructions on older x86. Modern x86 virtualization follows models that have been around since long before VMware existed.
  • VMotion/HA? (Score:5, Interesting)

    by Stile 65 (722451) on Tuesday December 12 2006, @07:48AM (#17206408) Homepage Journal
    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)?
    • Re: (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.
    • It says in their FAQ:
      "kvm today supports non-live migration, where there is a pause while memory content is transferred. Pauseless live migration is work in progress."
  • A W E S O M E ! ! ! (Score:4, Interesting)

    by Anonymous Coward on Tuesday December 12 2006, @08:39AM (#17206766)
    According to http://kvm.sourceforge.net/faq.html [sourceforge.net] is will support VMWare images and it does run win32.

    Now turn that kernel into a BIOS http://linuxbios.org/Welcome_to_LinuxBIOS [linuxbios.org] and you will be able to use the same images for all your machines.
  • KVM? (Score:3, Funny)

    by MMC Monster (602931) on Tuesday December 12 2006, @09:43AM (#17207542)
    Does this mean I can use 2 mice independently on my system? Cool!
    • Probably a joke but shouldn't be. The kernel developers could make it possible to accelerate the JVM/CLR by giving faster access to the actual hardware pages. What I mean is, the JVM has a 'scratch' area where recently created objects are allocated and then after garbage collecting this area the leftover objects are moved out. They do this because the vast majority of objects last only a tiny amount of time. So to be able to do a GC *only* of this scratch area the JVM actually replaces reference assignm
    • Running Windows and Linux at the same time is a pretty big deal, if you need access to Windows-only apps. It's good for web developers, who need to check out their results in IE, and it may make some Windows to Linux migration attempts easier (since the migration might otherwise be held up by a desperate need for a single legacy app).

      What else does it offer you, the consumer? Well, you can try things that no sane mortal should attempt with their computer. Install crapware and find out what it actually do