On 2/22/2006 at 5:26 PM Chris M wrote:
I realize that I'm talking about something much
later
in time, but didn't Windows 95 engage in "thunking",
meaning, IIUC, to revert to 16 bit code (i.e.
non-protected mode stuph)? So therefore, at least
newer Pentium series uPs, had the ability to switch in
and out of protectd mode. M$ had us believing that
Chicago was rewritten from the ground up (I think they
said that in the beginning), and didn't rely on 16-bit
code whatsoever.
Well, now wait just a second. "Thunking" usually refers to calling a
32-bit DLL from 16-bit code or vice versa. But both are usually in
protected mode. And, while it's true that Win95 used a lot of the guts of
DOS and BIOS functions, there wasn't any need in the 386 architecture to
switch to real mode. Did MS ever claim that Chicago was written from the
ground up? I didn't think they did--they did integrate the Win32S DLL into
the new platform and added support for long file names. For a quick and
dirty solution to attempt to bridge the gap between NT and Windows 3.x, it
wasn't too bad. I still keep a copy of Win98 running on a system or two
around here.
Windows 3.x had a lot of really limiting stuff in it. Such as the way VxDs
were called via the mux interrupt. If you wrote a VxD back in the Win 3.1
days, you had to apply to MS for a VxD number if you ever hoped to deploy
the thing--and you couldn't dynamically load and unload them.
Cheers,
Chuck