[TUHS] PDP-11 questions

Noel Chiappa jnc at mercury.lcs.mit.edu
Mon Jan 25 04:01:40 AEST 2016


    > From: Mark Longridge

    > when Bell Labs got that first PDP-11/20 what software (if any) came
    > with it?

I have this bit set that they didn't get anything, they wrote a
cross-assembler on another machine. I know that when it came, it didn't have a
disk (wasn't ready yet), so it ran a chess problem (memory only) for quite a
while until the disk came. I think that's in the ACM paper, or if not, one of
the BSTJ Unix history papers.


    > Perhaps an older PDP-11 doesn't have DRAM but surely the later models
    > did?

MOS memory came in starting roughly around the time of the 11/04 and /34.
(Well, that's not quire right - there were bipolar and MOS memory options
for the 11/45, the second PDP-11 model, but they were kind of special.)

But the earliest ROM bootstraps were too small to have space for code to
clear memory, or anything like that. The diode-array BM792 ROM certainly
didn't.

The later M9301 (see disassembly of the contents here:

  http://ana-3.lcs.mit.edu/~jnc/tech/pdp11/M9301-YA.mac

of one variant) didn't clear memory either, although there was probably room
in the ROMs by that point.

I suspect it didn't because nobody bothered with stuff like that back then -
you just wrote over whatever was already there. Properly written code would
never have referenced a location which had not been loaded or written to, that
way you couldn't get a parity error from random gubbish in semi-conductor at
power up (and of course core always had old data in it).


    > Now the last question has to do with what made the PDP-11 architecture
    > so great.

Bang/buck (in the metaphorical sense) ratio.

For a machine with a 16-bit word size (i.e. limited instruction size), it had
remarkable programming capability. Data could be in registers, pushed or
popped with a stack, at fixed addresses, PC-relative, indexed into a table,
etc, etc. And _all_ the instructions (basically) had acceess to _all_ those
modes.

As a result, the code density was probably higher than any similar sized
machine, and back when memory was core (i.e. expensive/limited), code density
was important.

The bus was also extremely flexible, given how simple it was: memory and
devices were all on the same (simple) bus.

    > of course it was the machine that made Unix possible

I'd lay good money that the vast majority of PDP-11's never ran Unix. And
UNIX might have happened on some other machine - it's not crucially tied to
the PDP-11 - in fact, the ease with which it could be used on other machines
was a huge part of its eventual success.

    > It seems though that there should have been a PDP-11 based desktop and
    > as far as I can tell that didn't happen.

Because DEC were a bunch of losers. There's some DEC history book which talks
about DEC's multiple failures (on a variety of platforms, not just PDP-11
based ones) to get into the desktop market, if the title comes to me, I'll
post it.

	Noel



More information about the TUHS mailing list