Article View: comp.arch
Article #3382Re: IBM PC prehistory
From: Wm E Davidsen Jr
Date: Tue, 16 Jan 1990 13:48
Date: Tue, 16 Jan 1990 13:48
31 lines
2125 bytes
2125 bytes
In article <380@bambam.UUCP> bpendlet@bambam.UUCP (Bob Pendleton) writes:
| The back patching operation can be pretty quick, but it does slow down
| program loading and you pay for table space in the disk copy of the
| program. The point is that you can relocate programs at load time with
| no runtime penalty, no weird coding style for relocatability, and no
| MMU.
This is a good point, but it doesn't solve the basic problem of no
MMU, which is protecting processes from one another. Without an MMU the
segmented archetecture, at least in small mode, is better. A well
behaved compiler will never generate anything which modifies the segment
registers, and a program will stay within it's own memory, even if it
gets a pointer messed up.
Note that this (a) doesn't protect against deliberate bad behavior,
just against a program getting a pointer hosed, and (b) limits the
addressable memory to one segment (two for separate i and d space). One
example of this is PC/ix (SysIII) running on an XT. Running development
on a production machine was never a problem, but it would not stand up
to hackers with access to assembler, of course.
BTW: I think CP/M used something very similar to a relocating loader
to build the system for a given size. There was a bitmap of addresses
which needed to be relocated. I remember (vaguely) doing two absolute
assemblies and running a bitmap generator to "diff" the two and write
the map so you could relocate later. Much easier with a relocating
assembler, of course.
--
bill davidsen (davidsen@crdos1.crd.GE.COM -or- uunet!crdgw1!crdos1!davidsen)
"Stupidity, like virtue, is its own reward" -me
Technical Details
Message-ID:
<2019@crdos1.crd.ge.COM>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!crdgw1!crdos1!davidsenReferences:
<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!crdgw1!crdos1!davidsen From: davidsen@crdos1.crd.ge.COM (Wm E Davidsen Jr) Newsgroups: comp.arch Subject: Re: IBM PC prehistory Message-ID: <2019@crdos1.crd.ge.COM> Date: 16 Jan 90 13:48:56 GMT References: <7413@drilex.UUCP> <380@bambam.UUCP> Reply-To: davidsen@crdos1.crd.ge.com (bill davidsen) Organization: GE Corp R&D Center, Schenectady NY Lines: 31