Path: utzoo!mnetor!uunet!husc6!bloom-beacon!tut.cis.ohio-state.edu!mailrus!ames!lamaster From: lamaster@ames.arpa (Hugh LaMaster) Newsgroups: comp.arch Subject: Re: Is the Intel memory model safe from NO-ONE ?!? Message-ID: <8487@ames.arpa> Date: 9 May 88 01:01:12 GMT References: <1806@obiwan.mips.COM> <2904@omepd> <353@cf-cm.UUCP> <2411@louie.udel.EDU> Reply-To: lamaster@ames.arc.nasa.gov.UUCP (Hugh LaMaster) Organization: NASA Ames Research Center, Moffett Field, Calif. Lines: 40 Keywords: 386 intel memory protection management model segmented In article <2411@louie.udel.EDU> rminnich@udel.EDU (Ron Minnich) writes: > But having used segmented machines (done right, at Burroughs) and >non-segmented machines, i can say that i trust programs running >on segmented machines a whole lot more. And I trust C programs >running on non-segmented machines not-a-whit- just ask anybody >who knows about NULL pointers. Several other postings defended segmentation as a Good Thing. I think several of the posters are assuming that two different uses of "segmentation" are synonyms or at least must go together. As a counterexample, consider the (infamous?) IBM 370. It has a linear 24 (now 32) bit address space. It also has Segmented Page Tables, which permit, for example, memory segments (or sections if you are used to a different terminology) to be shared (read only if you like) and so on. If you had a 64 bit linear address space, you could have 2^31 (or 32) memory sections of 2^32 bytes long, and put every data structure in its own section, if you wanted. Anyway, what is wrong with "Intel" style (also used in other machines) of "segmentation"? Well, if I need more than 2^32 bytes of memory, I probably need a Single Array of more than 2^32 bytes, and I probably need to address it very efficiently (Uh oh, it's those pesky scientific programmers again...) Now, I probably can't afford to load a segment register before every memory reference. Especially if I am using vector instructions and might cross a segment boundary in the middle of an instruction. The first kind of segmentation, segmented page tables, is a Good Thing. It can also do everything that the second kind of segmentation, the Bad Kind, can do, and without the drawbacks. Except for one- bigger addresses. Well, nothing is for free. -- Hugh LaMaster, m/s 233-9, UUCP {topaz,lll-crg,ucbvax}! NASA Ames Research Center ames!lamaster Moffett Field, CA 94035 ARPA lamaster@ames.arpa Phone: (415)694-6117 ARPA lamaster@ames.arc.nasa.gov