Path: utzoo!utgpu!watmath!clyde!att!pacbell!hoptoad!peora!rtmvax!bilver!wbeebe From: wbeebe@bilver.UUCP (bill beebe) Newsgroups: comp.os.minix Subject: Re: MINIX for the 386 Message-ID: <341@bilver.UUCP> Date: 23 Dec 88 04:39:39 GMT References: <1836@ast.cs.vu.nl> Reply-To: wbeebe@bilver.UUCP (bill beebe) Organization: W. J. Vermillion, Winter Park, FL Lines: 28 In article <1836@ast.cs.vu.nl> ast@cs.vu.nl (Andy Tanenbaum) writes: > >The subject of the 386 has come up several times recently... >... I would forget 16 of the 386's 48 address bits >and just concentrate on making a virtual memory system that uses a single >32-bit segment. In effect, this simulates the 68020, and should make porting >to 68020 (68030) systems straightforward. The mode your talking about is called Flat, or Motorola, mode. In that mode the base address in the descriptor is set to zero, and the limit is set to all binary ones. The granularity bit is set so that the limit is in 4K byte pages, not single bytes. What this buys is the creation of only one set of descriptors that are loaded when the kernel first boots, and remain untouched after that. With just a *little* work, the descriptor for the stack can be segragated from the rest of the data and code descriptors so that some protection from stack over-run (and subsequent code/data corruption) can be enforced in the hardware. There are a few examples on how to set the 80386 family up in flat mode. >The 286 has such an awful architecture that I am not inclined to cater to it >at all, despite the fact that my own machine is a 286 and our department has >a room full of them. I agree. The 80386DX and 80386SX provide solutions to the problems that drive mad men crazy when they try to program 80286 PM. I might also remind you that the 80486 is Real Close Now :-).