From: gordonl@microsoft.com (Gordon Letwin)
Subject: Re: MS's misconduct!
Date: 05 Oct 92 23:56:08 GMT
Organization: Microsoft Corporation

In article <1992Oct1.135558.10280@njitgw.njit.edu> dic5340@hertz.njit.edu (David Charlap) writes:
>In article <1992Sep30.201520.16617@microsoft.com> gordonl@microsoft.com (Gordon Letwin) writes:
>>
>>1) Although current versions of Windows do run on top of DOS, and their
>>	performance and robustness are somewhat hindered by that, Windows
>>	and windows apps don't HAVE to run on top of DOS.  And in the future
>>	they won't.  
>
>What about all the Windows apps that make INT21h calls in order to
>access the file system?  Or will future versions of the Windows-OS also
>use this antiquated method?  Or will those apps become incompatible
>with future versions of Windows?

INT21 calls will still be supported.  Just because you use a "DOS interface"
doesn't mean you have to run DOS.  OS/2 1.1 and onward support INT21
calls, at least in the DOS box, without having DOS.  We've learned our
compatibility lesson, several times, so compatbility will be very strict,
even more so than OS/2 2.0.

>>	So when people say that Windows doesn't multitask as smoothly as OS/2,
>>	*right now*, they're right.  But when they suggest that this is
>>	a permanent feature which will cripple Windows in the future, they're
>>	wrong.  Expect to see some real product demonstrating this "pretty
>>	soon now".

>This would be interesting.  At one time (when MS was supporting OS/2),
>Bill Gates stated that Windows would never have preemptive
>multitasking because that's what OS/2 was for.  It seems to me that
>they're going to leave Windows as a cooperative system, with NT being
>the preemptive one.

Nope.  That original statement was trying to clarify the roles of the two
operating systems.  ISVs get confused when there's not a clear understanding
of what's going on; they don't know what to write to and therefore don't
write to anything.  Also, IBM participated in OS/2 and not in Windows, so
to make them happy we tried to show that OS/2 was a "high end" system and
that windows was "low end".  None of these things are true anymore.

Although there's confusion with IBM's OS/2 vs. "pink" and other things
they're playing with, MS's message to the ISVs is very clear these days -
it's windows everything.  There's 16-bit windows - non-preemptive and
shared address space - and 32-bit windows with preemption and individual
address spaces.  All platforms (386 and better) will support both.  There
is a choice of operating systems, but as far as an app is concerned there's
only one programming environment.


>>3) The people who originally designed every key feature of OS/2 2.0 (except
>>	for the WPS, thank god) are all still here and are working on
>>	superior successor products.

>So why won't MS put some of that into their Windows/DOS product?  It's
>not the technology we're (well, most of us) complaining about but the
>corporate attitude of deliberately withholding technology from low-end
>products to keep the high-end stuff looking interesting.

We're working on DOS/windows products full speed ahead.  By no means are
all of our efforts on NT.  The majority of the ex-OS/2 guys, I'm pretty
sure, are working on stuff other than NT.

>If this stuff (like good multitasking) was developed years ago (as it
>was for OS/2 1.0 and up), why hasn't it been included in Windows yet?
>After all, there've been two major revisions of Windows that it could
>have been included in, and both of them made previous apps
>incompatible, anyway.

No, no windows release totally broke nearly all apps, and that's what
preemptive multitasking would do for windows.  So 16-bit windows apps
will remain non-preemptive.  Just as we used the advent of OS/2 - which
required new apps - to revise a bunch of stuff (and introduce preemptive
multitasking) we'll use the introduction of 32-bit windows to introduce
stuff like strict protection and preemption.  (Note that 32-bit windows doesn't
require a rewrite, but it's not binary compatbile, so when the ISV produces
a 32-bit binary version of his app he'll then have to make any changes
necessary to deal with preemption.
Xref: sparky comp.os.os2.advocacy:6413 comp.os.ms-windows.advocacy:2230