[TUHS] Pipes in the Third Edition Unix

Warren Toomey wkt at tuhs.org
Wed Jan 4 08:04:07 AEST 2017


On Wed, Jan 04, 2017 at 07:53:10AM +1000, Warren Toomey wrote:
> The Third edition was still written in assembly code. The Fourth edition
> was the first to be rewritten in C. So there was a time when both
> existed in parallel.

I should have waited to add this. The nsys kernel is dated August 31, 1973 (see
http://www.tuhs.org/Archive/PDP-11/Distributions/research/Dennis_v3/Readme.nsys)
and the Third Edition manuals are dated February 1973 (see
http://minnie.tuhs.org/cgi-bin/utree.pl?file=V3/man/man0/intro)

The 3e manuals have a pipe syscall:
http://minnie.tuhs.org/cgi-bin/utree.pl?file=V3/man/man2/pipe.2
so pipes existed in February 1973. In fact, they existed as early as
January 15, 1973, as Doug McIlroy put out the notice for a talk which
described the state of UNIX at that time; page 4 describes SYS PIPE and its
implementation, (see
http://www.tuhs.org/Archive/Documentation/Papers/Unix_Users_Talk_Notes_Jan73.pdf)

Interestingly, the pipe manpage says:
	SYNOPSIS	sys pipe	/ pipe = 42.; not in assembler

and I don't quite understand the comment :-) Other manpages with
the same comment are boot(2), csw(2), fpe(2), kill(2), rele(2), sleep(2),
sync(2) and times(2). So it's not particular to pipe(2).

Can anybody help explain the "not in assembler" comment?

Thanks, Warren


More information about the TUHS mailing list