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."
Kevin Lawton is the article submitter, the author of the program and bochs, and is really well known and highly regarded for his skill at this. Virtualizing a bios and all the devices is about as low level as you can get.
Put identity in the browser.
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.
There is a detailed discussion of this in the Linux Kernel Traffic from the Jan 22-27 issue.
Help fight continental drift.
A reference on Slashdot:
4 7&mode=nested
MandrakeSoft Buys Bochs, LGPLs It
Linux MandrakePosted by Hemos on Thursday March 23, @00:50
from the good-things-are-happening dept.
Direct from the mouth of Gael Duval, we've gotten word that MandrakeSoft (Yes, the folks who make Mandrake-Linux. No, it has nothing to do with Mandrake of Enlightenment fame. ) have purchased Bochs and hired Kevin Lawton. Now that Bochs is LGPLed, the Plex86 development can be speed up as well.
http://slashdot.org/article.pl?sid=00/03/22/18512
Plex86 is a VM that requires that it be run on an actual x86 chip, it virtualizes the code that is running inside the VM so that the code thinks it's got access to it's own machine when in fact it does not, but is running as a user process in linux.
So you can run Windows inside linux, or linux inside linux. They all have to be for the x86 though. But I don't know how well it works.
Bochs is the emulator that runs code for the x86 on ANY processor, PPC, Sparc, whatever it will compile on. So that you could run Windows on a Sparc or a Mac. Though I don't know if it works THAT well.
You should check that again.
VMware under Windows, loads up several device drivers to bridge/route network traffic between the virtual machines and your local NICs.
And when I installed a demo VMware on my Linux box, it needed a kernel headers to build the vmware kernel modules(don't know what for). So, Vmware also needs modules/device drivers for operation.
Kashif
User mode linux is a linux kernel that runs in userspace
plex86 is an x86 virtualizer that lest you create multiple virtual x86 machines to run whatever you want on them.
He explains how he got Linux 2.5 running in his bochs-developers post. It explains things pretty well, and it sounds pretty fast already - Plex86 can concentrate on all of the user level code, while Bochs handles everything else.
Meep meep
This will change once SKAS mode goes into the mainline UML distribution. To quote from the UML website:
:) The SKAS page can be read here.
"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.
May I point out crazybrowser, which embeds IE in a tabbed, popupblocking, cookie-eating enviroment while maintaining compatability with IE-needing sites? I use it as my secondary browser (with Moz being primary)
On the one hand ... VMWare supports specific OSes, not just any x86 OS. So one wonders how complete their virtualization is.
Wrongo. When we say "VMware supports FreeBSD," we mean that customers can call us and expect us to help with problems running FreeBSD in a VM. "Unsupported" guests that work fine include Plan9, BeOS, Openstep, FreeDOS, and AtheOS. VMware is not just a big dumb hack that happens to work for Linux and Windows.
Admittedlty, I haven't tried VMWare since the 2.something-or-other days, but even simple VGA emulation was far from perfect then.
:)
I'm a loyal, huge fan of several old DOS based engineering programs that don't have "modern" windowed or OSS equivalents that are nearly as efficient, and just don't work and play well in a Win2k DOS box (if you can call it that). But even so, I need to use Win2k for the rest of the CAD/CAM/EDA work I do day to day.
So, basically I just needed something to run these old DOS programs. I looked at Bochs, which was pretty young at the time, and wouldn't cut it at all then. I decide to try out VMWare, thinking that just simple non-VESA basic VGA emulation would pretty much be a slam-dunk and work out of the box. Wrong. Nothing but trouble, corrupted video, all sorts of "issues".
Now, I understand that these programs may manipulate the VGA hardware in, um, "non-standard" ways, but even so, I didn't expect the bulk of my old software running in simple 640x480x4bpp mode to exhibit such horrible artifacts. IIRC, even 320x240x4bpp mode exhibited the same problems.
After some fooling around, as an experiment, I installed Linux inside VMWare - with the proprietary X server, and then eventually succeeded in getting my DOS programs to run inside Linux inside Xdosemu. Even though it worked, it was a bit too much of a kludge - even for me. Research and emails to VMWare basically confirmed that video support for anything other than Windows or Linux just wasn't going to be "complete". Bummer.
So, I tried VirtualPC. Even though it was slower than VMWare, when running software in a DOS environment that was cutting edge in the 486-66 days, running in a VM on a 800MHz host seemed unnaturally fast in many ways
Many people have run VirtualPC down in that it emulates "outdated" hardware like the DEC Tulip ethernet controller (Intel now I believe) and the lowly S3 Trio video card, but from what I've seen, the hardware emulation is true to the real deal - and the bonus is that just about anything can support those two hardware components. So, VPC gave me what I needed, at a price and speed that were reasonable, even if it doesn't run on everyone's favorite free OS.
I'm sure VMWare has improved in many of these areas, but for what I needed at that time, it didn't fit at all, and was a basic disappointment. I'm sure if I needed a virtualized server farm, which is the main focus of VMWare currently, I'd be much happier. But it's strength at that time was in processor virtualization and not hardware emulation.
I'm intrigued with the "new" Bochs/Plex86 combination, and maybe someday it will be able to do what I need it to do, under any host OS it's available on. For now, I'll use VPC and watch intently from a distance.
Just my two cents worth.
Brad
This patch doesn't hurt performance. In fact, it does absolutely nothing to a normal kernel. It's only activated by an option at compile time, to build a special kernel for the "Hardware Abstraction Layer", which won't even run on bare hardware.
Here is a link to the actual patch.
Yes, it IS interesting; and no, it won't be confined to Linux hosts. (Nor guests, ultimately -- at the least, *BSD will be available.) I do agree that in a sense it looks like "giving up", though; it's certainly become less ambitious.
Share and Enjoy: 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
I must say that I appreciate VMWare for both its hack value and usefulness. (It's also one of the too few commercial applications that's as easy to deploy as should be with it's download-configure-pay -model.) Nice to hear a human^Wnerdish voice from someone inside as well.
I think, therefore thoughts exist. Ego is just an impression.