lproven at gmail.com
Thu Feb 23 09:22:55 CST 2006
On 2/23/06, Chris M <chrism3667 at yahoo.com> 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)?
Not quite. On an OS that runs a mixture of code designed for different
word lengths - e.g., mixed 16- & 32-bit, or mixed 64- and 32-bit -
"thunking" is making API calls from one address space to the other.
So, for example, running 32-bit Internet apps on Win9x called the
16-bit networking layer, requiring a thunk from Win32 address space
into Win16. Similarly, running 16-bit apps on NT required thunks from
16-bit address space into 32-bit, so that the 16-bit apps could call
The same applies with running 32-bit Windows code on 64-bit versions
of XP or W2K3.
> So therefore, at least
> newer Pentium series uPs, had the ability to switch in
> and out of protectd mode.
The 80286 ran in "protect mode" or "real mode", but only provided an
opcode to switch from real to protected, not back again. This is the
problem discussed elsewhere in this thread - horrible kludges were
required to get back into real mode again, causing major problems for
OSs trying to run real-mode code in protect mode. I.e., OS/2 1.x.
> 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.
No, not so. Chicago was "Windows 4.0" for a long time. It's NT that
was the ground-up rewrite, albeit based on the codebase of OS/2 3, the
portable version of OS/2, as made to work by Dave Cutler & his team
hired in from DEC, which explains the internal resemblances to VMS.
Liam Proven · http://livejournal.com/userinfo.bml?user=lproven
AOL/AIM/iChat: liamproven at aol.com · MSN/Messenger: lproven at hotmail.com
Yahoo: liamproven at yahoo.co.uk · Skype: liamproven · ICQ: 73187508
Gmail/Google Talk/Orkut: lproven at gmail.com
More information about the cctalk