Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!wuarchive!uwm.edu!bionet!agate!darkstar!kithrup!sef From: sef@kithrup.COM (Sean Eric Fagan) Newsgroups: comp.arch Subject: Re: Segmented Architectures ( formerly Re: 48-bit computers) Message-ID: <1991Apr05.010343.16664@kithrup.COM> Date: 5 Apr 91 01:03:43 GMT References: <23615@as0c.sei.cmu.edu> <1991Apr04.202446.13595@kithrup.COM> <23660@as0c.sei.cmu.edu> Organization: Kithrup Enterprises, Ltd. Lines: 66 In article <23660@as0c.sei.cmu.edu> firth@sei.cmu.edu (Robert Firth) writes: >In article <1991Apr04.202446.13595@kithrup.COM> sef@kithrup.COM (Sean Eric Fagan) writes: >>Gee, this works on current 32-bit machines? >No. But you claimed to have a machine with 32-bit integer and 48-bit >addressing, and challenged us to produce code that ought to work on >such a machine but won't on yours. No, actually, I described a machine with 32-bit segments, and 32-bits worth of possible segments. A difference. >The above was my response. Which was incorrect. I impose the limitation, as I said in my first article, that no single object (such as your array) be larger than 4Gbytes. You broke that restraint. No correct code will break, as there is *no* requirement in any language standard (c, pascal, fortran, ada, etc.) that the sum total of all objects' size be less than or equal to the size limit for a single object. *You*, by being flip, decided to come up with a program that would break. BFD. I can come up with programs that will break for any given language/hardware combination. Now, please show me how my proposed segmented machine a) breaks existing *correct* code, and/or b) makes things difficult or impossible? Yes, dealing with a single object larger than 4Gbytes is difficult or impossible, but damned few people are doing that (and, even then, I can make it work, if you let me play with the OS and compilers/linkers a bit; it just won't be as efficient as it could be in a flat address space). >> And if it bothers you that much, fine: >>for the FORTRAN compiler, it, also, will use just one segment tag, just like >>the intial C port I hypothesized about. There, now you've only got 4Gb of >>virtual memory for any fortran program. Happy? > >Yes, for you have just conceded my point: the code ought to work; The code you gave *oughtn't* work. Period. Check out the Implementation Defined Details section of the FORTRAN compiler manual for the machine (hint: it doesn't exist, either, but that makes things easier 8-)). In it, it says that, "persuant to section of the FORTRAN standard, the size of any single array must not exceed 4Gbytes." Now, if you are going to try to claim that *any* standard mandates that a system must allow arrays larger than 4Gbytes, well, tough. No system *I* play with (and that includes some rather decent mainframes) is going to allow that, either, so damned few people are going to be coding for it. >you are >not competent to solve the problem in the compiler; Bullshit. I *am*, and in a followup article, I described what one can do to implement flat-style addressing on the machine I described. But I guess reading all of the articles in a thread is beyond you, isn't it? Why don't you try a) reading some standards, b) playing with real systems, and c) trying to figure out just what someone is capable of before insulting their abilities? *You* are the one who's pathetic, buddy. -- Sean Eric Fagan | "I made the universe, but please don't blame me for it; sef@kithrup.COM | I had a bellyache at the time." -----------------+ -- The Turtle (Stephen King, _It_) Any opinions expressed are my own, and generally unpopular with others.