Slashdot Mirror


Plex86 Runs DOS

Adam Bertil was one of a number of people who've written about the recent announcement from www.plex86.org that Plex86 will now run DOS applications. Kevin Lawton apparently did the work and a screenshot is on Plex86 [?] .org.

21 of 151 comments (clear)

  1. Moz86 by spoonyfork · · Score: 4

    How soon until this gets added to the Mozilla project so I can run Word for DOS in my web browser that has been customized to have a Word 2000 GUI interface?

    --
    Speak truth to power.
  2. Re:Congradulations in order -- running DOS! by EMN13 · · Score: 5
    I think that the success they have had to date is truly not to be derided. But I also here see another Open Source project that could be breaking more interesting ground - as, unfortunately, many.

    I'm sure there are enough people around here that have differing opinions about open source, but to head off discussion in that direction, it's merely an impression I have and I'm possibly wrong. I've never contributed a line of code - something I hope to change.

    I think the whole concept of emulation/VM is something to be embraced and which could _really_ revolutionize the computing model. So as opposed to encapsulating already native code to sneakily let it think it's running as a base system, go ahead and really change it, emulate it - don't just "bracket" it.

    Why? Currently, we're essentially writing compilers for a non-existing platform. The x86 platform as originally seen has long been "dead", what we're seeing now is chips that convert this "universal" language into their own microops and then execute them. The internal structure of a P3 / Athlon has a large section dedicated to this very task. But what if we could throw all that away, and make a chip that simply crunches numbers as good as current technology allows? We have the making of a darn fast chip. If I had to make a completely uninformed guess, we could well stuff two "Athlons" (if we can still call them that) on the same die if the whole x86 ISA is dropped.

    In comes the virtual machine... we simply convert the bytecode into native code and run. Sort of like java does it - but better, as we have a chip that can run faster and possibly more efficiently.

    Guess what? Sun is already doing just that with MAJC. The point is, Plex86 should not try to run code natively at all. It simply happens to have a bytecode that's identical to the native code. This gives us an architechture that is far longer-lived than something that can run legacy x86 systems on x86 systems. This might be portable to newer things as well.

    Proof that this sort of thing is possible is incarnate in the Transmeta Crusoe chip. Of course, they chose to have a chip that is really power efficient, but imagine a a chip that is to speed what Crusoe is to power - Yummy.

    I've heard objections that speed gains in the architecture might be outweighed by speed losses in the transformation. This is not true. The optimizations that a run-time VM can do are quite astounding - it can not only decide to unroll loops when necessary, but to expand a frequent multiplication by a memory adress into constant bitshifts, it could dynamically choose what to place into registers far more wisely that a traditional compiler can, look ahead and do IO access before the program needs to... I am no expert, but there's obvious potential here.

    And here again, there are some innovative people at work, just look at HP's Dynamo - which takes native code and does real time optimizations (actually it does more than this, and is an interesting read. Transmeta wasn't the first. One of the interesting things is that actual optimized native code can still run faster under dynamo than simply natively. Obviously, this isn't the case for all programs, but its certainly not the case that Emulation/VM-ing is by definition slower than native execution. And realize, we're talking about an architecture (originally PA-RISC but porting activities are ongoing I believe) that wasn't even designed for this sort of activity. A CPU with this in mind could well do even better.

    So my conclusion is that we shouldn't emulate VMware, we should, well emulate. Weird as it may sound, emulation is the future.

    --EMN

  3. Re:Why DOS? by tchuladdiass · · Score: 3
    You guys are all missing the point (why DOS? what DOS apps?)... the point of Plex86 (which used to be called FreeMWare, but was renamed), is to provide a Free VMware work-alike. It's goals are to be able to run ANY os under Linux (and possibly other OS's), but getting something simple like DOS to boot is the first step.

    Personally, I think they've come pretty far in only a few months. BTW, this project grew out of the BOCHS project (which provides an Intel platform emulator under Unix), the difference is, Plex86 doesn't emulate an x86 CPU, it runs x86 code natively and traps privlidged instructions (and also pulls some other tricks to trap non-trapple privlidged instructions) so that it can run an alternate OS under Linux at near-native performance (about 80 - 90% of the native hardware). This is so you don't have to dual boot. Also, unlike Wine, Plex86 will allow you to boot any support OS under under it (just like VMWare).

  4. mmmmm.... by AugstWest · · Score: 4

    DOS screenshots... God, they're beautiful.

  5. Plex86 BeOS Port by freebe · · Score: 3
    At BeUnited, we're also working on a port of Plex86 to BeOS. The great thing about Plex86's design is that it is completely portable - with a little bit of work, Plex86 will turn into a really cool cross-platform VM for x86. Has anybody tried to run Win 3.1 under Plex86?

    Me, I'm still getting over how cool running MacOS 7.5.3 in Basilisk II is...

    --

    Free BeOS, runs from a Linux partition

  6. Fairly good preformance... by Midnight+Ryder · · Score: 3

    Runs great. My configuration: Windows NT 4.0, SP5, 256 MB RAM, Dual PII / 400 machine.

    However - be sure to read the docs, and install the VMWare video driver within the virualized machines, otherwise preformance SUCKS!

    Typically at any give time, I have the following running: 1 copy of Windows 98, 2 copies of Windows NT, and one copy SUSE Linux running KDE. NT and Linux sessions take about 1 - 2 % CPU utilization when they are not actually doing anything important but running idle. 98, on the other hand, takes about 18 - 25% utilization off of one of the processors (it may be a dual processor machine, but 98 only gets to play with one of them - VMWare can't do anything to help that unfortunately.

    The one downside at the moment with VMWare - no support for 3D acceleration. I really want them to fix this - while I use VMWare for testing my games and such (DirectDraw only - no 3D in these games) I'd love to be able to move completely to Linux for my base OS, and boot up a VMWare session to play UT and things like that (plus it would help for testing on the game that I've been working on that DO utilize 3D hardware!) A minor (?) setback is that it also doesn't support MIDI ouput - no big deal to me really, but, it's important to a couple of older games.

    My two favorite features: running NT and Linux on the same box, and just switching back and forth, without really noticing and preformance degredation (*MOST* of the time - there are some things you can do that really do slow things down!), and the 'Suspend / Restore' button on the various OS's. If you actually need that 2% CPU power restored back to your 'real' OS, or the memory back, just hit the 'suspend' button, and close VMWare. Later, open it again, and hit resume - I've got your "Instant On" right here!!!

    --

    Davis Ray Sickmon, Jr - looking for something to read? Check out my three free novels at MidnightRyder.org

  7. There' s more to this wide world than games. by slothbait · · Score: 5

    Some people actually use their computers to get work done. As one small example: you'd be amazed how many control systems for industrial machinery are still run on DOS PC's. I run into them all the time.

    Often their software was written by a long-since defunct company. Windows port? Hah! This stuff hasn't been rev'ed in atleast a decade. The company died, and the program sources went with it to it's grave. This is among the greatest arguments for open source software. If we had source to these control programs, then we could rewrite it for a Linux machine, or a Be machine or whatever-the-heck we wanted. We could update it to use more modern or more reliable computers. Instead, we're stuck hoping that that old 286 keeps chugging along.

    Fortunately, for the most part, those 286 systems *do* keep chugging along. There are plenty of workhorse PC AT's sitting in cabinets, unceremoniously controlling production equipment -- pushing the GNP along. Eventually, they will die, and a replacement will have to be found. But as long as the old, dusty system still runs, why throw money at a replacement?

    DOS was so universal for so long, and so much application software was written for it that it will be around for a very, very long time. Infact, DOS may even outlive the x86.

    --Lenny

  8. What I've Always Wanted by RobHornick · · Score: 3

    Great! Now I can use my Linux box to run a DOS emulator. Then I'll run Win 3.1 on that... And load up a mac emulator. So then I can play Nintendo games with my NES emulator that only runs on OS8. Finally...

  9. Re:REALLY worth watching. by Ricdude · · Score: 4
    With Open Source Plex86, it will be really easy to build a custom reverse engineering tool. Want a parallel port scanner? Don't have the protocol? Log all the output to the printer port. Easier said than done under winzzzz - unless its running under Plex86, which is already intercepting the I/O.

    You can also find tools out there that take over the parallel and serial port drivers, and log data. The tools page at www.gphoto.org has the links.

    Part of the beauty of this system is that you can run the guest os off of a disk image file. You can keep copies of the file. Run WinXX and try installing a program. Oops, it just messed up your VBRUNxx.DLL! Close the VM and copy from your "last known good" disk image. Also comes in damn handy for testing windows installation software for those of us who do cross platform development.

    --
    How's my programming? Call 1-800-DEV-NULL
  10. I'm surprised no one's mentioned by FascDot+Killed+My+Pr · · Score: 3

    Bochs. Kevin Lawton is the creator and maintainer of bochs, which, like Plex86 and VMWare is an Intel emulator. It also runs on Linux, Windows and I think Mac. Best of all, it was recently GPL'd (or LGPL'd maybe). That's why Kevin is working on Plex86 now. He's kind of merging the two projects together.

    I've tried bochs and it's neat--but very very slow. I'm running Win95 in the emulator on my PII 350 (with 128MB) and it is so slow as to be totally unusable. It's also got some issues with devices (like it doesn't support network and the mouse is really flakey).
    --

    --
    Linux MAPI Server!
    http://www.openone.com/software/MailOne/
    (Exchange Migration HOWTO coming soon)
  11. Re:Plex86 vs. VMWare by homoted · · Score: 4

    I believe Plex86 has x86 emulation, so you can run x86 apps even if your box doesn't have an x86 CPU ... which I believe VMWare doesn't have ...

    Wrong!, Plex86 will only feature x86 virtualisation, emulating an x86 on an x86 would be silly.

    Howevever, the program Bochs (written by the plex86 author) has x86 emulation, but only parts of the bochs code will be used in plex86. In other words: if you want an x86 emulator, use Bochs. If you want virtualisation, use plex86 (when it gets usable) or buy VMware.

    --

  12. Congradulations in order -- running DOS! by Anonymous Coward · · Score: 5

    I have been following the Plex86/FreeMWare since it's inception. While I doubt it does much more than booting dos, it is impressive progress.

    For those that invariably complain that you already have a dos emulator, the goal of the project is not to give you another dos emulator. It is to provide a free clone of VMWare. That is, to allow you to freely run any OS under (i386) linux. I don't doubt that it will be portable and will be ported, though. Booting DOS is the logical first step for its simplicity.


    The point... When a project arrives at a milestone, don't complain because you think that it is not complete or because you don't understand what it's attempting. One of the problems(advantages!) with open source software is that people get to see the software in all of its stages of development. For those that are used to commercial software, you just get to see the final product, (usually) polished, and ready for the general public.

    Plex86 is by no means finished. However, it has attained a significant milestone. And for that, they should be praised. I can tell you, the kind of work they are attempting is not easy!

  13. Why this is useful.. Kernel Development by golob · · Score: 3

    For an Operating Systems course I took, we modified the linux kernel, and tested our changes in VMWare running linux on a stable kernel. The cost of the VMWare liscenses was a bit prohibitive, but for anyone doing experimental work at the the kernel level, software such as this is endlessly useful. If a modification seriously damages things, one can simply kill the vmware/plex86 process, copy over a clean disk image, and immediately restart, rather than having to have a seperate whole system which has to be painstakingly rebuilt after each error.
    To have a free version of this software could only help kernel development, making all of us linux users much happier

  14. DOS apps? by Anonymous Coward · · Score: 4

    So, it'll run Windows 98 then, right? Just a DOS app, what's the problem?

  15. VGA support? by Christopher+Thomas · · Score: 3

    Does anyone know if this DOS support extends to the int 10 mechanisms for setting up graphics? It would be interesting to be able to easily run my collection DOS games and demos under this.

  16. Great. Making my job harder... by Mark+A.+Rhowe · · Score: 4

    ...as if the script kiddies didn't already have enough Denial Of Service tools at their disposal.

  17. Plex86 vs. VMWare by Fjord_Redd · · Score: 4

    I currently have VMWare up and running on my system. For those who don't know, VMWare stands for Virtual Machine Ware. From what I've gathered about Plex86, it does the same thing as VMWare, which is create a virtual machine that runs like a separate machine. It really is quite interesting software.

    The difference I can see, however, is that VMWare is already developed and is already costly. For the student version (which is usually substantially cheaper) it costs $99. And for Joe Student, $99 is a whole lot. However, the technology is already advanced such that under my Linux box I have had Win98 running (for apps that just don't work under Wine). If you get the chance VMWare is avalable for a 30 day demo, which I highly recommend.

    --

    --
    Bad spellers of the world, untie!
  18. Re:Enough emulation. by crysflame · · Score: 3

    This is really starting to be annoying. We are completely holding ourselves back by emulating everything that we can get a hold of.

    We aren't just creating new technologies - for instance, a processor that might be able emulate things faster than the original can run them - we're learning how to reproduce the set of rules that govern a given system without access to the rules that created that system. Perhaps you'd find that to be a useful skill when studying the physics of our world.

    If I need to slowly run old DOS apps... I'l buy an old 486 for $30. If for some reason I want to run windows... I'll jsut buy a copy of windows.

    You're perfectly welcome to do so; I'm guessing a few of those people creating the emulators have physical systems as well, for study (and fun). I would take an old C64 any day of the week if I could find and purchase one, but right now, that's not convenient. Should I not implement my cool new C64 idea because of that restriction - access to physical hardware?

    Every step that we have taken forward lately is also a step back because we are refusing to let the legacy stuff be that... just a legacy. There is no need for ISA slots on a motherboard. We are so worried about vendors not recompiling software that we have kept the crappy x86 processors around WAY longer than they should have.

    Absolutely; the farther back we step, the better we understand "legacy stuff", and so we make better informed decisions - this "stuff" must go, this "stuff" can still be supported, this "stuff" is still useful. Certainly, Intel may not have taken the best market path in processors - but we just started this computer age, it hasn't been a hundred years yet; I'm pretty sure someone is going to get right, and soon.

    Just like the OpenWin project that was mentioned earlier, it's a waste of time and talent. There are so many areas of computing that could be impproved on but so many people just want to recode the same thigns over and over.

    Because in the end, people will code on whatever makes them feel good. Let's say I want to improve this thing I call "Windows", and Microsoft hasn't provided me any method to do so - I can add extensions, sure, but I can't fix bugs in system DLLs. Argh, that's frustrating. Hey, maybe I can help one of these other Windows projects - I could replace my own someday, or maybe Microsoft will wise up and fix it. Cool.

    Don't set restrictions on what people should program - that's reserved for the programmer alone. In a project, sure. In a job, sure. Coding is something that's done as randomly as poetry sometimes; I find out that I want to do something, pull up a window, and do it. Some people get their fun working on Windows debuggers. "What a total waste of time!", many would say. And yet they provide valuable tools to themselves and others, and make themselves as happy as

  19. mirror of screenshot by po_boy · · Score: 3
    plex86.org is kinda slashdotted, so I put the image here: http://dotslash.dynodns. net/00/08/02/142208/plex86-dos.gif

    Please only use this while the real site is slashdotted, as I'm not responsible for the content; I just blatently copied it.

    Also, if the plex86.org guys want this removed, just mail me and I'll pull it down.

  20. plex86 on everything2.com by theonetruekeebler · · Score: 4
    "Plex86" doesn't seem to have an entry at everything2.com. So I tried "Plex 86" and I got a link for, among other things, Seinfeld Episode 86, which is the one where George decides to act the opposite of how he always does, and lands a job with the New York Yankees.

    In the meantime, Plex86 is an x86 virualizer that allows you to run multiple OSen concurrently on a single machine. What this means to you and me is that you can boot Linux, then run a real-live licensed Windows98 under it, without emulation, at near-native speeds. That's the Big Goal, anyway.

    One thing it can fer sher handle is booting Linux under Linux, which is a good thing when you want to see if that new kernel boots.

    The sites being slashdotted pretty thoroughly right now...

    --

    --
    This is not my sandwich.
  21. REALLY worth watching. by Anonymous+Colin · · Score: 5

    This technology is something the OS community should really keep an eye on. Simply being able to run winzzzz at the same time as linux/BSD/Be/whatever is interesting enough. But that's just the start of the possibilities here.

    With Open Source Plex86, it will be really easy to build a custom reverse engineering tool. Want a parallel port scanner? Don't have the protocol? Log all the output to the printer port. Easier said than done under winzzzz - unless its running under Plex86, which is already intercepting the I/O. Simply re-write the I/O traps in Plex86 (OK, not so simply, but certainly do-able) and log the traffic for later analysis. Same goes for WinModems. Possibly even for graphics cards with PCI/AGP I/O.

    This is really exiting, and these are just the start. Support this project, folks, it's worth it!