Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!ucsd!ucsdhub!hp-sdd!ncr-sd!crash!pnet01!jca From: jca@pnet01.cts.com (John C. Archambeau) Newsgroups: comp.os.minix Subject: Re: C compilers in 286 protected mode. (was compress) Message-ID: <4670@crash.cts.com> Date: 21 Jul 89 06:56:17 GMT Sender: news@crash.cts.com Organization: People-Net [pnet01], El Cajon CA Lines: 32 Leisner.Henr@xerox.com (marty) writes: >Having a C compiler which understands segmentation is part of the problem. > >Having an operating system which understands segmentation is another >problem. > I never said it would be easy now, did I? The iAPX 286 manual should tell you everything you ever wanted to know about 286 protect mode but were afraid to ask. The problem is that there's LITTLE documentation on 286 protect mode. The 286 protect mode linker has to juggle these descriptor tables that are ambiguous enough to people who wright extended memory ramdisk drivers. The memory manager system task will also have to handle context switching and multiple code and data segments, but the moral is that it CAN be done. It just takes somebody stubborn enough not to give into the fact that it's more trouble that it's worth. This might be the case for you, but it's not the case for me. I am stubborn enough to write the linker myself if need be as I stated before. You and I both know that all problems with segmentation will disappear when you go to a 386 or 486, well that's fine and dandy, but it's a waste with 286 protect mode and I HATE waste. With 16 Mb of physical memory, you will fill up the process table before you fill up physical memory, in fact, I'm sure that this will happen with only 8 Mb or perhaps 4 Mb of memory. 128K is a small piece of memory when you stop to think about it which is the maximum size of PC Minix processes under the current C compiler. /*--------------------------------------------------------------------------* * Flames: /dev/null (on my Minix partition) *--------------------------------------------------------------------------* * ARPA : crash!pnet01!jca@nosc.mil * INET : jca@pnet01.cts.com * UUCP : {nosc ucsd hplabs!hd-sdd}!crash!pnet01!jca *--------------------------------------------------------------------------*/