home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.os.linux
- Path: sparky!uunet!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!eff!snorkelwacker.mit.edu!bloom-picayune.mit.edu!daemon
- From: tytso@ATHENA.MIT.EDU (Theodore Ts'o)
- Subject: Re: VM386? Possible?
- Message-ID: <1992Sep1.212303.2509@athena.mit.edu>
- Sender: daemon@athena.mit.edu (Mr Background)
- Reply-To: tytso@ATHENA.MIT.EDU (Theodore Ts'o)
- Organization: The Internet
- Date: Tue, 1 Sep 1992 21:23:03 GMT
- Lines: 36
-
- From: lm@slovax.Eng.Sun.COM (Larry McVoy)
- Date: 1 Sep 1992 17:08:52 GMT
- Reply-To: lm@sun.UUCP (Larry McVoy)
-
- Forgive my ignorance, but is it possible to run a 386 program on a
- virtual 386 on a real 386? The reason I ask is this: aren't a lot
- of dos programs running in 386 mode? So even if you got VM86 working
- and got a dos emulator running, wouldn't things like windows apps
- not run at all? Or is everything still running as an 8086?
-
- There's no such thing as a "virtual 386 mode" on a 386. If there was,
- they'd have to be infinitely stacking, because you a program running on
- the virtual 386 might want to run a virtual 386 mode on top of the
- virtual 386 mode, and so on, and so on, and so on.....
-
- Actually, most DOS programs don't run in 386 mode. There are two
- reasons for this. One is that is takes a fair amount of effort to write
- a 386-mode program, since DOS runs in 16bit mode, and so you would need
- to use a so-called "DOS extender" which translates 32 bit subroutine
- calls to the 16-bit calls necessary to invoke the DOS routines. The
- other reason why most programs aren't written in 386 mode is that a lot
- of people don't have 386 machines; they have 8086 or 80286 machines, and
- if your program is 386-only, you've just locked out a good segment of
- the market place from being able to use (and therefore buy) your
- program.
-
- It's true that you won't be able to run Windows on a VM86 emulator ---
- but that's because it's trying to be an *operating system*, and Linux has
- control over all of the page tables, interrupt descriptor tables, etc.,
- and it cannot reliquish them over to Windows without completely messing
- up Linux.
-
- But for the majority of the PC *applications*, this shouldn't be a
- concern; they tend to be written using only 8086 code.
-
- - Ted
-