[Simh] pdp11 and unix
Will Senn
will.senn at gmail.com
Fri Feb 26 20:28:43 EST 2016
Found this in Ritchie's article, "The Development of the C Language":
Thompson was faced with a hardware environment cramped and spartan
even for the time: the DEC PDP-7 on which he started in 1968 was a
machine with 8K 18-bit words of memory and no software useful to
him. While wanting to use a higher-level language, he wrote the
original Unix system in PDP-7 assembler. At the start, he did not
even program on the PDP-7 itself, but instead used a set of macros
for the GEMAP assembler on a GE-635 machine. A postprocessor
generated a paper tape readable by the PDP-7.
These tapes were carried from the GE machine to the PDP-7 for
testing until a primitive Unix kernel, an editor, an assembler, a
simple shell (command interpreter), and a few utilities (like the
Unix rm, cat, cp commands) were completed. After this point, the
operating system was self-supporting: programs could be written and
tested without resort to paper tape, and development continued on
the PDP-7 itself.
Thompson's PDP-7 assembler outdid even DEC's in simplicity; it
evaluated expressions and emitted the corresponding bits. There were
no libraries, no loader or link editor: the entire source of a
program was presented to the assembler, and the output file—with a
fixed name—that emerged was directly executable. (This name, a.out,
explains a bit of Unix etymology; it is the output of the assembler.
Even after the system gained a linker and a means of specifying
another name explicitly, it was retained as the default executable
result of a compilation.)
So, they didn't use DEC's assembler, but they used GE's?
Interesting stuff.
Will
On 2/26/16 6:26 PM, Clem Cole wrote:
> If you were used to building your own tools, you might not. Also if
> you are bootstrapping from something else (like a large timesharing
> system from another manufacturer). You might put your tools on the
> other system, until the new system could "self host."
>
> We do the same things today.
>
> Clem
>
> On Fri, Feb 26, 2016 at 7:23 PM, Will Senn <will.senn at gmail.com
> <mailto:will.senn at gmail.com>> wrote:
>
>
>
> Sent from my iPhone
>
> > On Feb 26, 2016, at 5:28 PM, Nigel Williams
> <nw at retrocomputingtasmania.com
> <mailto:nw at retrocomputingtasmania.com>> wrote:
> >
> >> On Sat, Feb 27, 2016 at 10:24 AM, Johnny Billquist
> <bqt at softjar.se <mailto:bqt at softjar.se>> wrote:
> >> On 2016-02-26 23:47, Eric Smith wrote:
> >>>> On Feb 25, 2016, at 9:26 PM, Gregg Levine
> <gregg.drwho8 at gmail.com <mailto:gregg.drwho8 at gmail.com>
> >>>> <mailto:gregg.drwho8 at gmail.com
> <mailto:gregg.drwho8 at gmail.com>>> wrote:
> >>>>
> >>>> Version Zero was hand coded on a PDP-7
> >>>
> >>>
> >>> I know Gregg is right. But .. Can you /imagine?/
> >> Not sure I understand this comment either. Are you suggesting
> that coding an
> >> OS is assembler is something exceptional or complicated, or
> unusual?
> >
> > I took "hand-coded" to mean Version Zero was (initially) done
> without
> > an assembler, they wrote down the instructions in machine code.
> >
> > Perhaps not unusual for the 1960s but laborious none-the-less.
> > _______________________________________________
> > Simh mailing list
> > Simh at trailing-edge.com <mailto:Simh at trailing-edge.com>
> > http://mailman.trailing-edge.com/mailman/listinfo/simh
>
> I don't understand this. The PDP 7 had an assembler and debugger.
> Wouldn't they have used the assembler to generate the bootstrap
> system?
> _______________________________________________
> Simh mailing list
> Simh at trailing-edge.com <mailto:Simh at trailing-edge.com>
> http://mailman.trailing-edge.com/mailman/listinfo/simh
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.trailing-edge.com/pipermail/simh/attachments/20160226/f80eb566/attachment.html>
More information about the Simh
mailing list