Path: utzoo!mnetor!uunet!lll-winken!lll-lcc!ames!pasteur!agate!eris!doug From: doug@eris (Doug Merritt) Newsgroups: comp.sys.amiga Subject: Re: Amiga UNIX Message-ID: <9031@agate.BERKELEY.EDU> Date: 21 Apr 88 08:26:20 GMT References: <211@laic.UUCP> <3663@cbmvax.UUCP> Sender: usenet@agate.BERKELEY.EDU Reply-To: doug@eris.UUCP (Doug Merritt) Organization: University of California, Berkeley Lines: 37 Summary: Unfair comparison of 68K to 286 In article <3663@cbmvax.UUCP> daveh@cbmvax.UUCP (Dave Haynie) writes: >While the 80286 machines that Xenix run on are pretty brain damaged from ^^^^^^^^^^^^^ (definitely agree!) >an architectural point of view, their segmentation scheme works as well >as paging to make each process appear to run at the same location in >memory. So you can just drop Xenix into an AT[Clone] and go. The plain >old 68000 doesn't support anything like that. That's not quite accurate, and is in fact quite unfair to the 68000 family, which has address modes that are more general than the 80x86 family. The 68000 can be programmed to use a pure segmentation scheme, using "register indirect with offset" and "indexed register indirect with offset". For that matter, you can create 68K code that is purely relocatable. The difference that you're thinking of is that the 286 has a simple MMU built into it to support their crumby segmentation scheme, while the 8086 had none. The result *will* run Xenix, but due to the addition of MMU hardware, not from some advantage to segmentation. Quite the contrary! Having worked *extensively* with Xenix on the 286, and with Unix on a 68000 (with a custom MMU), I can tell you definitively that the 68000 is a *much* more pleasant architecture. As an example, try porting any Unix program that has arrays larger than 64K. It's trivial on a 68K, but requires a rewrite from the ground up, in general, for the 286. And yes, this did come up often...it seems that once people start writing for nonsegmented architechtures (e.g. VAX), they start assuming that large arrays are ok. How silly. Everyone knows that 64K is a reasonable absolute limit on the size of data structures! :-) The 286 is newer than the 68000; a fair comparison is against the 68010 with the 68851 or something. In which case Unix works better on the 68010 than Xenix on the 286. By far. Doug Merritt doug@mica.berkeley.edu (ucbvax!mica!doug) or ucbvax!unisoft!certes!doug or sun.com!cup.portal.com!doug-merritt