From: strobl@gmd.de (Wolfgang Strobl)
Subject: Re: Mac & IBM raw info
Organization: GMD, Sankt Augustin, Germany
Date: Wed, 30 Sep 1992 12:42:51 GMT

In <1992Sep28.210550.21394@nmsu.edu> bgrubb@dante.nmsu.edu (GRUBB) writes:

>Was rewriting -Mac & IBM CPUs Info- and desided to broaden the subject.
>Part of this is because the Mac vs IBM thread is getting very messy
>and that the Mac CPU, hardware, and OS are besigned to work together,
>so talking about one ONLY is silly. [...]

What do you mean by "the Mac CPU ... and OS are designed to work
together"? Did the Mac OS development have had any influence
on the design of the 68000? I really would like to hear
more about that!

[...]

>286       ~ 68020 {This is the poorest compairison since the MMU in the 
>286 pulls it past the 68020 and to the 68030 class while the 16-bit of the 
>286 pulls it nearer the 68000. Since a IBM guru here says that VERY FEW 
>programers or OSes use the MMU of the 286 the 68000 looks like a better 
>comparison, but since the MMU does exist I desided that the 68020 fits
>better even though the 286 is 16-bit and the 68020 32-bit.

There is no such thing as "the MMU" on Intel CPUs. The 386 and 486
processors implement segmenting on top of paging. Both are quite
different concepts. In short, it works as follows: an address - as
seen by the programmer - consists of two parts: a selector (thats
a pointer to a segment descriptor cached within the CPU) and an offset.
From the contents of the descriptor and the offset the CPU makes 
a linear virtual address. This address goes through the
- more or less conventional - memory management unit, which splices
the address into various parts, does a page-table lookup and finally
generates a real address.
 
This is how it works on 386+ CPUs. The 286 only has the hardware
segmenting support, but not the paging unit. The 86 (and 88, which is
just a 86 with a multiplexed data bus) has neither.

What your "IBM guru says" doesn't make much sense to me. It is indeed
correct that very few programmers use the 286 "MMU", i.e. the hardware
segmenting, just like very few programmers "use" the hardware paging
(i.e. manipulate the page tables, for example) on CPUs with
paging. I don't know how many OS use the hardware segmenting
of the 286. Personally, I only know two of them: OS/2 1.x and
Windows 3.x. Both make heavy use of that feature.

>Side Note: the 68020 just bit it -again and for good, I hope- as a CPU.}

>386       ~ 68030 {The MMUs and 32-bit nature of these chips puts
>them roughly together with protected memory a added feature of the 386.}

This implies that memory protection is new on the 386. This isn't
true - the 286 had it already. In fact, both the segmenting and the
paging unitoffer memory protection, the paging unit down to the page
level, and the segmenting unit down to the byte level.

[...]

>OSes

[...]

>IBM
>DOS 5.0: does this still have the 640K barrier?

No. Neither did earlier versions. It still has the 1M barrier, as long
as you don't use any of the many DOS extenders, including, of course,
MS-Windows 3.x.  

[...]

>Window 3.1: breaks 640K barrier but still has to deal with DOS file stucture and runs well on 386SX.

It runs well on 286 processors, too.

>Windows NT:  Rumor mill is that the FINAL version and ALL programing 
>infomation not to be avalible before Oct 1993 (InfoWorld 25 May and 
>InfoWorld 6 July which are sited in Vaporware 07/92 and 08/92 repectively.)

Well, a *lot* (and I mean a LOT!) of programming information for NT is
available to me and to everybody else, for 69$ (I paid 164 DM here
in Germany). For that money, you'll get the preliminary version of
the Windows NT System Development Kit on CD-ROM. This includes a working
copy of NT for both the 386/486 family and the MIPS R4000 processor,
as a development platform. Also on the same CD: the about 6000 pages
documentation for the API and tools, , i.e. the NT programmers interface,
both as heavily hypertext like indexed Windows helpfile, and as 
PostScript version of all the printed manuals. If you want the docs
on paper, you have pay another 300$ or so. 

I have NT and the SDK running on my machine for some weeks now,
and it looks quite real to me. I mean: I've already seen and used
it myself, not just heard somebody talking about it.

>OS/2: Unix like featuresIand unix like requirements; a 80MB hard drive,
>4 MB of RAM, and 386 CPU.

If you want to learn something about OS/2 or NT, there is a long
comparison between NT and OS/2, which has been posted (and heavily
discussed) to comp.os.os2.advocacy, recently.

[...]

>Corrections to the INFORMATION are welcome

Well, you asked for it. :-)

Wolfgang Strobl
#include <std.disclaimer.hpp>
Newsgroups: comp.sys.mac.advocacy