🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.arch
Article #3378

Re: IBM PC prehistory

#3378
From: John R. Levine
Date: Tue, 16 Jan 1990 05:56
21 lines
1667 bytes
In article <380@bambam.UUCP> bpendlet@bambam.UUCP (Bob Pendleton) writes:
>> I would suggest that an MMU is necessary for anything which wants to 
>> implement fork() while allowing two tasks to occupy memory at once.

>My conclusion is that you've never heard of a relocating loader.

Don't be so rude, he's right.  When you do a fork, you create two copies
of the same program.  In the absence of an MMI either they have to run at
different addresses or you have to do the old mini-Unix hack of only swapping
in one program at a time.

Coding a program so that it can be moved while it's running is a lot harder
than a relocating loader.  Either you have to tag every single pointer that
the program uses, which is impractical in C, or else you need a coding style
that reserves some registers as base pointers and make all memory references
relative to the base pointers.  It's been done, but it's pretty gross and
depends critically on the good will and non-bugginess of the compilers.
-- 
John R. Levine, Segue Software, POB 349, Cambridge MA 02238, +1 617 864 9650
johnl@esegue.segue.boston.ma.us, {ima|lotus|spdcc}!esegue!johnl
"Now, we are all jelly doughnuts."
Technical Details
Message-ID: <1990Jan16.055625.8255@esegue.segue.boston.ma.us>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!snorkelwacker!spdcc!ima!esegue!johnl
References: <7413@drilex.UUCP> <380@bambam.UUCP>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!snorkelwacker!spdcc!ima!esegue!johnl
From: johnl@esegue.segue.boston.ma.us (John R. Levine)
Newsgroups: comp.arch
Subject: Re: IBM PC prehistory
Message-ID: <1990Jan16.055625.8255@esegue.segue.boston.ma.us>
Date: 16 Jan 90 05:56:25 GMT
References: <7413@drilex.UUCP> <380@bambam.UUCP>
Reply-To: johnl@esegue.segue.boston.ma.us (John R. Levine)
Organization: Segue Software, Cambridge MA
Lines: 21