Slashdot Mirror


Plex86 Lives, As Lightweight VM Technology

Kevin P. Lawton writes "Plex86 has been completely overhauled, and simplified to be a user (application) code only Virtual Machine technology. For running user code, many of the heavy weight x86-VM techniques are unnecessary. But the bonus is, Linux can easily be made to run inside the plex86 VM, so that the kernel is actually 'pushed down' to user privilege level. This has been demonstrated on both Linux 2.4 and 2.5 kernels. Thus, Linux can run in a plex86 VM without the need for any heavy virtualization. My goal is to keep the code base trim, tight, auditable and get to usable releases quickly. And to favor those goals over adding unnecessary complexities. The first milestones have just been reached, so it's still early in development. There are email lists available on the main plex86 site."

12 of 189 comments (clear)

  1. Plex86 vs. VMWare? by Anonymous Coward · · Score: 4, Interesting

    A topic brought up on Slashdot some time ago had some interesting discussion that if Free solutions like Plex86 took off, it would destroy VMWare's business model, and show other businesses that you can't make money developing software for Linux because someone will undercut you with a Free solution. How do you respond to these fears?

    1. Re:Plex86 vs. VMWare? by Anonymous Coward · · Score: 4, Insightful

      response to fears:

      plex86 has a heckuva long ways to go before it's even near competing with software like vmware.

      provided that it even makes it there, companies like vmware have known it's coming for quite a while, and have surely been looking after their best interests just as if this were a commercial competitor.

      competition is part of life, whether it be commercial, opensource, or the kid next door.

    2. Re:Plex86 vs. VMWare? by ottffssent · · Score: 4, Insightful

      What *I* say to that is that if VMware can't produce a better product than the OSS community can in their spare time, they don't deserve my $130. If they can't keep their product better, they don't deserve the younger generation's $130. If Plex86 takes off and it kills VMware, it won't "show other businesses that you can't make money developing software for Linux because someone will undercut you with a Free solution" but rather show them that you can't make money selling inferior software for Linux because someone will do it right, even if it's not you.

      Why is it that a community that could be broadly characterized as having heavy libertarian leanings encompasses so many, like you, who are willing to set aside those ideals for your pet project? I love VMware as much as the next person - I just think it's so cool seeing Phoenix BIOS show up in a window - but that doesn't mean I'm willing to set aside the capitalist ideals of free commerce and competition just so it will survive. If the Plex86 group can put together a better product and are willing to give it away, they win. If it takes them 10 years, then VMware has 10 years to find a different business model or go under. Businesses fail all the time. That's the way it works. If you can't cut it, you die. Meanwhile, Plex86 gets better in competition with VMware; VMware gets better in competition with Plex, and I win no matter which approach works best.

  2. Re:Taking So Very Long by modus · · Score: 4, Interesting

    Funny you should ask. The site talks about using the new plex86 as an acceleration engine for Bochs. So, instead of emulating each x86 instruction, Bochs could leverage Plex86 and get a big 'ole speedboost.

    Kevin's posted a very limited test case demonstrating this ability to the Bochs lists a bit ago.

  3. Re:Taking So Very Long by PCM2 · · Score: 4, Interesting
    Bochs works fine, even if slow, and virtualization isn't exactly a big market.
    You might be surprised. Lots of people are interested in virtualization. It's useful for things like software testing, and ISPs are keen on it for giving their customers the "dedicated server" experience while maintaining fewer actual boxes. That said, the most effective type of virtualization is the kind that gives applications a "chroot" type of environment -- where each virtualized process is running on the same instance of the OS. Running all those Linux kernels in virtualized environments doesn't really reduce your infrastructure complexity all that much...
    --
    Breakfast served all day!
  4. When will it be useful? by steveha · · Score: 4, Interesting

    There are two things I would like to do with plex86:

    0) multiple virtual Linux servers, each in its own chroot jail.

    1) run Win98 under Linux, to be able to run Win32 apps for testing purposes or backwards compatability.

    Sounds like it will do multiple Linux servers very well, soon. But do they still have any hopes for plex86 running non-Linux OSes as guests?

    P.S. According to reviews I have read, Win4Lin does a decent job of letting you run Win98 under Linux. It's not free software, of course.

    steveha

    --
    lf(1): it's like ls(1) but sorts filenames by extension, tersely
  5. User-Mode Linux? by Doc+Hopper · · Score: 4, Interesting

    With the changes he's made in the goals of Plex86, it sure seems as if he's targetting the same approach currently in use by User-Mode Linux. I understand it may be quite different under the hood, but will that matter to users? It doesn't matter much to me if the task is accomplished using a ptrace thread under kernel system calls or actually virtualizes hardware -- if I can run several virtual GNU/Linux systems on top of one physical system, at a reasonable speed for the load, using free software as much as possible, I'm happy. The technical details of how it's done are irrelevant to me -- what matters is the result.

    If the Bochs/Plex86 combination is actually faster than Bochs by itself on X86 hardware, and can approach the speed of VMWare, well, that sounds interesting to me. Virtualization technology is a large and growing market, funding a lot of IBM's recent growth in the mid-range server market with quad and 8-processor systems running VMWare to aggregate systems, improve manageability, and reduce personnel management costs. There's no denying the need is there; VMWare posted their first profit ever last quarter because of these strong sales, with more big money coming down the pipe.

    Competition among free software projects is a good thing. I'm glad to see Plex86 come out with something new that may work better than the old. But what most people wanted was to run multiple copies of Microsoft Windows on top of Linux, or to run MS Windows in VMs alongside GNU/Linux, and if that doesn't work easily & quickly, it may be a potent obstacle to widespread adoption.

    1. Re:User-Mode Linux? by Abcd1234 · · Score: 4, Informative

      This will change once SKAS mode goes into the mainline UML distribution. To quote from the UML website:

      "In short, the changes cause the UML kernel to run in an entirely different host address space from its processes. This solves the security and honeypot fingerprinting problems by making the UML kernel totally inaccessible to UML processes. Their address spaces are identical to what they would be on the host. This also provides a noticable speedup by eliminating the signal delivery that used to happen for every UML system call."

      So, there you have it. It requires a kernel patch, but basically solves all the old UML security issues. I don't believe it's quite ready for primetime, though. :) The SKAS page can be read here.

  6. Re:UML by Anonymous Coward · · Score: 5, Informative
    User mode Linux has been invented and merged to the kernel already, no need for any additional software.

    Yes, but UML uses almost 80% of the processor's MTRR registers as a scratchpad to save state. Therefore, any kernel drivers that require real-time interrupt service (NET, SCSI) have to use cut-through emulation, instead of the much faster native emulation.

    The bottom line is UML works fine, and exhibits quite decent responsiveness, until you start trying to push disk and or network I/O.

    It's a fundemental flaw of UML. But UML's proponents consider it a necessary evil in the name of portability and lightweight robustness. I'm not sure I disagree with them.

  7. Re:Taking So Very Long by MikeFM · · Score: 4, Insightful

    Isn't this the same argument thrown against Mozilla a year or two ago? "It's taking to long so it isn't worth the effort." or "We have Internet Explorer anyway - why do we need another browser?"

    Software, especially good software, takes a lot of time to produce. Anyone can throw off crappy code quickly but to make something you'll be able to keep secure and stable over it's lifetime takes time and effort. Unless you're the developer what do you care how the effort is being spent? it's not your time or effort so feel free to go about your business doing something you feel your efforts are more useful in.

    As for me I find Plex86 interesting because I don't want to spend a fortune on hardware but sometimes I do like to have a sandbox enviroment to run development stuff, test apps, or just open questionable email attachments. Bochs is to slow to run many apps properly and if I was going to spend the money for faster hardware I might as well just buy new computers. It makes more sense to use a virtualized enviroment and save some money (and hassle).

    Virtualization may not have as many users as web browsers but it's technology which for the most part will continue to be useful for a long time. The x86 processor has a long history of compatible code so there is no reason to think Plex86/Bochs won't still be useful a decade from now. :)

    --
    At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
  8. Re:Summary: Kevin's a loser by spnbs · · Score: 4, Insightful

    Dude, chill out. I'd like to see your resume before you knock one of the sharpest VM programmers in the business. Not only is Kevin smart, but he knows the x86 ISA better than most people know how to read. Add on the fact that he pumps out code at an insane rate, and you get a programmer I'm grateful is working in the OSS world. Kevin's given us a lot and I'm more willing to forgive him for being a triffle distractable in exchange. People have called Kevin a lot of things (erratic, drasticable, incapable of proper commenting), but to call him shit is unbelievable. Unless you're Linus or RMS, get off the man's back.

  9. Resisting ... urge ... to comment ... by kma · · Score: 4, Interesting

    Arrggh, it's too hard.

    I work for VMware. if you want to believe we've corrupted Kevin's precious bodily fluids, feel free. I don't speak for the company, and I know nothing beyond what slashdot has posted about plex86. Consider yourself disclaimed.

    If I understand the story correctly, plex86 has basically surrendered. They've given up on running arbitrary supervisor level code; the Linux guests that Kevin refers to above require a patch to "fix" something the new "lean, mean" plex86 gets wrong.

    If Linus is feeling even vaguely himself, he will not accept this patch. Ordinarily, people trying to put stuff into the kernel that a) hurts performance, and b) fixes no real problem, but c) is critical to some contrived project that seems really important to the contributor get entertainingly flamed, and then shown the door. In fact, Kevin's most likely motivation for submitting this as a Slashdot story is to marshall support for his Linux patch.

    Even if Linus does accept this patch, I can guarantee you that Microsoft, the FreeBSD team, the now non-existent Be, etc., won't all be taking helpful hints from Kevin about which x86 features they may and may not use. Ergo, there is nothing interesting (either commercially or geekily) you can do with plex86; the most it can hope for is to run recent-ish Linux guests on recent-ish Linux hosts. Bestill my heart.

    On the upside, maybe Kevin will stop implying that VMware stole Bochs, now that he's spent four years trying to clone our software and has finally admitted defeat.