Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!cwjcc!gatech!udel!mmdf From: cmcmanis%pepper@UDEL.EDU Newsgroups: comp.sys.amiga Subject: 286 features Message-ID: <4408@louie.udel.EDU> Date: 3 Oct 88 22:12:01 GMT Sender: mmdf@udel.EDU Lines: 65 Received: from CUNYVM by CUNYVM.BITNET (Mailer X2.00) with BSMTP id 7676; Sat, 01 Oct 88 00:29:09 EDT Received: from UDEL.EDU by CUNYVM.CUNY.EDU (IBM VM SMTP R1.1) with TCP; Sat, 01 Oct 88 00:29:05 EDT Received: from Louie.UDEL.EDU by Louie.UDEL.EDU id ab17521; 30 Sep 88 20:58 EDT Received: by Louie.UDEL.EDU id ac17361; 30 Sep 88 20:47 EDT Received: from USENET by Louie.UDEL.EDU id aa17006; 30 Sep 88 20:20 EDT From: Chuck McManis Subject: 286 features Keywords: OS/2 sucks OS/2 sucks OS/2 sucks OS/2 sucks Message-ID: <71136@sun.uucp> Date: 30 Sep 88 21:21:36 GMT Organization: Sun Microsystems, Mountain View To: amiga-relay@UDEL.EDU Sender: amiga-relay-request@UDEL.EDU In article <2401@hplabsz.HPL.HP.COM> dleigh@hplabsz.UUCP (Darren Leigh) writes: -> OS/2 will run on any AT class machine (ATs, PS/2s and 386 boxes -> running in emulation mode) that has enough memory (about 2 MBytes just -> for the system if I recall -- I wouldn't try running with less than -> 4). The 80286 operating in protected mode does have hardware -> protected memory (thus the name) on a segment by segment basis. -> Segments may be up to 64K bytes long (ha ha ha ha ha ha . . . ) but -> can be smaller. This allows you to have somewhat finely grained -> protection until you run out of segment descriptors. The protection -> works OK for runaway programs, but not for security as I understand it -> is easy to get around. Oh, and Jerry's gonna love all those -> protection violation errors he gets when he trys to write a simple -> program in C, especially when the the OS spits them out for many -> reasons. I can only assume you have never programmed an 80286 or you wouldn't be quite so smug. True, a segment can be at most 64K bytes long, and true you can have at most 64K segments, but things are not nearly as gloomy as you paint them. The protections works exceptionally well for programs and can be built extremely securely. It is always a question of going for speed or going for protection. Some OS's such as Microsoft's Xenix map the kernel in the same address space as the user code, although at a higher protection level. The only way to call the OS is thru a call gate and the gate can check for valid parameters on all calls. As for running out of descriptors, you may for large programs (large >10Meg) but I doubt you will hit this limit in practice. With several 10Meg programs running you will begin to wonder about how much virtual memory you will need. Of course this is the upper limit for the '286, but only midway into the operating range of the '386. -> By swapping segments to disk, OS/2 has "virtual memory" (derisive -> laughter fills the background). There are some problems though. -> Since segments are normally 64K bytes in length (way too large) the OS -> thrashes like mad, and since segments can be less than 64K bytes long, -> the memory gets fragmented and the OS wastes time copying big chunks -> of memory around. -> Darren Leigh -- I speak for myself, not the company. You do a disservice to yourself when you laugh derisively at segment swapping. Paged virtual memory is not God's gift to computers, ask a Cray programmer sometime. And segments aren't "normally" 64K either, they are often simply the size of the load module. So while it doesn't give you the granularity of page swapping, it is better than checkpointing and a damn site better than nothing at all. Secondly, when the memory gets fragmented and space needs to be reclaimed, all the CPU does is a MOVS followed by a change in the Local Descriptor table. Poof! And your program is never the wiser. This is not meant to start a flame war, simply to point out that there