Xref: utzoo comp.unix.microport:3024 comp.unix.questions:12420 Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.milw.wisc.edu!lll-winken!uunet!steinmetz!davidsen From: davidsen@steinmetz.ge.com (Wm. E. Davidsen Jr) Newsgroups: comp.unix.microport,comp.unix.questions Subject: Re: C bug causes double fault Message-ID: <13424@steinmetz.ge.com> Date: 24 Mar 89 18:27:58 GMT References: <244@tree.UUCP> <9884@smoke.BRL.MIL> <27245@cci632.UUCP> <9900@smoke.BRL.MIL> Reply-To: davidsen@crdos1.UUCP (bill davidsen) Organization: General Electric CRD, Schenectady, NY Lines: 24 In article <9900@smoke.BRL.MIL> gwyn@brl.arpa (Doug Gwyn (VLD/VMB) ) writes: | Of course nobody would call it "reasonable", but it's not too surprising. | Incorrect user-mode code on a nonprotected multitasking system (forced by | limitations of the PC/AT architecture) can easily crash the entire system. I'm sure dozens of people will tell you that the 286 has full memory and i/o space control in protected mode, and that all UNIX versions on the 286 use this. The flaw is in the handling of floating point exceptions. Question: I could see this failing if you used a "%f" format to print an int, since it would be an unnormalized float, but why was printf doing anything in f.p. on this?? To the person who maligned the 286 vs. the PDP-11. 16MB segmented beats 256k linear every time. Ask anyone who ever tried to shoehorn an application one an old 11. Some of the very top of the line 11's had access to more memory, I believe, but I don't think it was more convenient than the "huge" model, in that you still only have 16 bit int's for subscripts. The last 11 I used was a 40 (or 45) and V7. -- bill davidsen (wedu@crd.GE.COM) {uunet | philabs}!steinmetz!crdos1!davidsen "Stupidity, like virtue, is its own reward" -me