From: Howlin' Bob (gt8134b@prism.gatech.EDU)
Date: 06/29/93


From: gt8134b@prism.gatech.EDU (Howlin' Bob)
Subject: Re: Coherent vs. Linux - a comparo
Date: 29 Jun 1993 05:13:12 GMT

In <9306292460@umunk.GUN.de> udo@umunk.GUN.de (Udo Munk) writes:

>: Would you dare to bet on it, that MWC will NOT stuff in a DOS-Emu.
>: if there is demand for it?

>Maybe, but there is no demand for it, because it's not very usefull.

Perhaps not for you. I happen to use it quite a lot, and I know several
others that do, also. I needed it so bad that I took a mostly useless
version of the emulator which had been all but abandoned and hacked it
until it even runs VGA programs with real sound. I can even run some games
under it. That's not what I use it for; I use it to run Microsoft
Word for my girlfriend, and the HP48 Saturn Assembler and RPL compiler
for myself.

>Seems that COHERENT users doesn't like good old DOS programs any more.
>I guess the most ones are using Windows and would be happy to get a
>emulator, which is able to run Windows in 386 protected mode.

DOS has been around much longer than Windows. Sure, all the pretty
programs run only under Windows now, but a lot of useful ones are
DOS-based.

>But before this can be realized, so that it can be used for real work,
>Intel must give us a CPU, where real virtual CPU's can be created and not
>limited 8086 ones.

I wouldn't mind this at all, from a developer's standpoint. However, there
really is no reason for it. With a good protected-mode interface
standard (DPMI is almost there), there's no need to virtualize the 386.
And a self-virtualizing 386 is most definitely a bloated chip.

>: Here is my bet: They will, if it would sell -- dependless whether it
>: blasts the kernel or not!

>Maybe. But hopefully with the possibility to configure it as an option,
>like VP/IX for SCO.

Listen, I've seen about enough of this. You say you're tired of reading the
kernel sources, well apparently you didn't pay attention to the parts
devoted to V86 mode. The code to support V86 mode is *small*. A few
lines of code here and there, namely: the vm86() system call, an extra
step or two when returning from the vm86 system call, a few lines in the
write-protected page fault handler to handle a very special case of
page-protection (monitoring the "virtual screen RAM" for changes so
it can be updated to the terminal efficiently if the DOS emulator is
not being run on the console). The task_struct has a couple of extra
fields, too. It isn't like the V86 code is weighing down the kernel.
If I didn't know where to look, I probably couldn't find it.

The Linux DOS emulator is a *user-level* process (actually, two).
In terms of memory, it's fairly cheap. The code for dosemu is even
implemented as a shared library. Kernel code would in some ways be less
desirable (it's non-pageable), but more desirable in others (Linux
provides a very traditional UNIX process environment, the limits of which
dosemu continually strains against).

As for optional inclusion; the DOS emulator is very optional: if you don't
want it, don't download it.

I won't get into the rest of the flamewar; this is comp.os.coherent, and
there's no need to shove Linux down their throats. If they really think
demand paging/page sharing/swapping, networking (yes, including SLIP that
works), and a free X11 implementation are bloat, then so be it. That's
their right. (Hey, I *did* get into it, didn't I? :-)

-- 
Robert Sanders
Georgia Institute of Technology, Atlanta Georgia, 30332
uucp:     ...!{decvax,hplabs,ncar,purdue,rutgers}!gatech!prism!gt8134b
Internet: gt8134b@prism.gatech.edu