jer@peora.UUCP (J. Eric Roskos) (12/06/85)
In several of the recent postings on IBM PC's, it's been argued that Unix can/can't run without memory management; counterexamples have usually been based on unix look-alikes, however. In fact, Western Electric briefly provided a Unix without a need for any memory management, called "Mini-Unix", which ran on the PDP 11/03. This was done by swapping whole process images to disk each time a context switch was done, in order to avoid having to do any relocation. Drawbacks of this Unix were that it tended to be slow on context switches, and you could overwrite parts of the kernel via an errant user process. I don't know what became of this project; the point is that Unix can be made to run very well without memory management hardware if you incur the extra overhead, and forego the kernel protection. Actually, using old-fashioned technologies it would be possible to write a clean, fast OS for the IBM PC; but as soon as the PC came out, people went for the 64K restriction as a way to differentiate compilers, which pretty much eliminated any chance of ever implementing such a system. The problem was that people tried to jump from machines like the Apple II (which was sort of like a PDP-8) to a "micro-mainframe" (everyone wanted a VAX) without taking the intermediate step. -------- [Please try to minimize "not enough technical content" flames. If you want to discuss this topic, I can explain the old ideas; though I suspect most people familiar with "mainframe" machines know them, and I don't want to write long tutorials of little interest, when writing them takes *so long*. Basically, you could have partitioned the memory, using the segment registers as base registers, assumed a fixed 64K bound on process size, and written your compilers using the small memory model. The system would not be secure (since assembly-language routines could just change the segmentation registers and bypass the whole thing), but it would be possible to demonstrate that programs written in a HLL would be reasonably safe, as long as they didn't modify their code. The result would have been something like a single-CPU, multitasking 8080. Such approaches may seem impossible to the "do your own thing" hacker, but were quite common in early machines; they simply required discipline in programming.] -- UUCP: Ofc: jer@peora.UUCP Home: jer@jerpc.CCC.UUCP CCC DNS: peora, pesnta US Mail: MS 795; CONCURRENT Computer Corp. SDC; (A Perkin-Elmer Company) 2486 Sand Lake Road, Orlando, FL 32809-7642
tg@sfmin.UUCP (T.Glinos) (12/08/85)
> In several of the recent postings on IBM PC's, it's been argued that Unix > can/can't run without memory management; counterexamples have usually been > based on unix look-alikes, however. > > In fact, Western Electric briefly provided a Unix without a need for any > memory management, called "Mini-Unix", which ran on the PDP 11/03. This > was done by swapping whole process images to disk each time a context switch > was done, in order to avoid having to do any relocation. SCO has a version of UNIX called XENIX which does run on an IBM-PC. It does it very nicely by the way. XENIX System V should be available some time soon. (Of course all the standard disclaimers apply) tom glinos
crandell@ut-sally.UUCP (Jim Crandell) (12/18/85)
In article <1825@peora.UUCP> jer@peora.UUCP (J. Eric Roskos) writes: > Basically, you could have partitioned the memory, using the >segment registers as base registers, assumed a fixed 64K bound on process >size, and written your compilers using the small memory model. The system >would not be secure (since assembly-language routines could just change >the segmentation registers and bypass the whole thing), but it would be >possible to demonstrate that programs written in a HLL would be reasonably >safe, as long as they didn't modify their code. The result would have >been something like a single-CPU, multitasking 8080. Congratulations. You've just invented PC/IX. -- Jim Crandell, C. S. Dept., The University of Texas at Austin {ihnp4,seismo,ctvax}!ut-sally!crandell
gemini@homxb.UUCP (Rick Richardson) (12/19/85)
>Jim Crandell, C. S. Dept., The University of Texas at Austin writes: >In article <1825@peora.UUCP> jer@peora.UUCP (J. Eric Roskos) writes: >> Basically, you could have partitioned the memory, using the >>segment registers as base registers, assumed a fixed 64K bound on process >>size, and written your compilers using the small memory model. > >Congratulations. You've just invented PC/IX. Nope, you invented Venix/86. PC/IX didn't arrive for several more months. Rick Richardson, PC Research, Inc. (201) 922-1134 ..!ihnp4!houxm!castor!{rer,pcrat!rer} <--Replies to here, not to homxb!!!