All, would anybody have an e-mail address for Dick Haight? I am still
trying to narrow done the date when pipes were added to Unix, so far
between June 72 and January 73. I have this quote from Dick:
"I happened to have been visiting the research crew the
day they implemented pipes. It was clear to everyone
practically minutes after the system came up with pipes
working that it was a wonderful thing. Nobody would ever go
back and give that up if they could help it."
so he might be able to provide a smaller date range than what I have
at present.
Cheers,
Warren
Dave Horsfall scripsit:
> Great atricle :-)
Great ventricle, too.
--
But you, Wormtongue, you have done what you could for your true master. Some
reward you have earned at least. Yet Saruman is apt to overlook his bargains.
I should advise you to go quickly and remind him, lest he forget your faithful
service. --Gandalf John Cowan <cowan(a)ccil.org>
All, not terribly Unix specific, but here's a good
read for those who have suffered at the hands of
field circus engineers :)
http://nemesis.lonestar.org/stories/stages.html
Have a good Xmas everyone.
Warren
Also, is there a place where I can download archives of Usenet groups
in a plain text format? I think I've got v6.bugs and v7.bugs and some
of comp.sources.unix. I just came across net.unix on Google Groups,
but I'd rather not have to wget all that HTML!
Thanks,
Warren
All,
My IEEE Spectrum article finally got published and you can read it
on-line here: http://spectrum.ieee.org/computing/software/the-strange-birth-and-long-life…
I've had a few e-mails about it. This one has a few more snippets about
early Unix history (from Rey Bonachea):
It was with great pleasure and a bit of nostalgia that I read your IEEE
article below. Thank you very much for writing it. One aspect that did
not get mention, and that perhaps you may or may not be aware of, was
the pseudo real time applications of Unix.
In 1972 I joined Bell Labs in Holmdel NJ working on a project by the name
of Switching Control Center System. At the beginning I was just a brand
new member of the technical staff working on circuit design for
interfaces to the PDP11/20. This project was meant to centralize the data
streams from the maintenance channel of switching machine. Then, in a
multi-user environment , would analyze the incoming data streams and raise
alarms as appropriate. It also provided a whole suite of analysis tools to
allow switch maintenance personnel to trouble shoot the electronic
switches.
Because the switches could not buffer messages or be slowed by flow
control, the Unix system had to catch messages in real time and put it
away on disk for later analysis. Due to the near real time requirements, a
number of features were added to Unix such as semaphores. The Unix based
Switching Control Center System (SCCS) software was trialed in New
Brunswick NJ in 1973 and later that year was released as the first
commercial application of the Unix OS.
I learned to program on that PDP 11/20 computer running Unix and
eventually wrote many applications for the SCCS, initially in assembly
language and then in C as we were also the first project to use C
commercially.
Cheers,
Warren
Hi,
In memoriam, I read The Development of the C Language:
http://cm.bell-labs.com/who/dmr/chist.html
It talks a bit about how B was originally implemented somewhat like
ETH Pascal (p-code). Are there any B interpreters or programs in the
archive?
Thank you,
A. P. Garcia
Yep, dungeon runs great on RT-11 ... I've docuemnted the experence here...
http://virtuallyfun.superglobalmegacorp.com/?p=169
Building the fortran compiler was... an adventure onto its own, but luckily
I found some documentation @ bitsavers, and could ask on the PDP11 lists for
help... I'm amazed it compiled and runs! ..
Oh and TripOS is the BCPL based OS that ran on all kinds of machines, it was
very portable, the best known port would be AmigaDOS for the Commodore
Amiga. I wonder if it was licensing fees and BCPL/TripOS being based in the
UK what seperated them from C/Unix... I guess we'd be living in the B++, B#
and ObjectiveB world if it wasn't for DMR's wonderful world of C .. :)
-----Original Message-----
From: Gregg Levine [mailto:gregg.drwho8@gmail.com]
Sent: Saturday, October 15, 2011 12:37 AM
To: tuhs(a)minnie.tuhs.org
Cc: Jason Stevens
Subject: Re: [TUHS] b remnants?
On Sat, Oct 15, 2011 at 12:20 AM, Jason Stevens
<jsteve(a)superglobalmegacorp.com> wrote:
> Wasn't the other 'advantage' of threaded/pcode that it'd be smaller than a
> native executable?
>
> I know it's out of left field, but building Dungeon on RT-11, you have to
> use the treaded compiler, and I assume it was a space thing.. Just as on
> MS-DOS (Yeah I know...) a save for fitting stuff in 64kb for the later
> compilers was to compile to p-code..
>
> Wikipedia gives p-code for Pascal a timeframe of the 'early 70's and
> attribes the whole interpeted code as O-Code for BCPL ....
>
> I wonder if anyone ever did save any TripOS tapes for the PDP-11.....
>
> -----Original Message-----
> From: A. P. Garcia [mailto:a.phillip.garcia@gmail.com]
> Sent: Friday, October 14, 2011 11:58 PM
> To: tuhs(a)minnie.tuhs.org
> Subject: Re: [TUHS] b remnants?
>
>
> On Fri, Oct 14, 2011 at 9:52 AM, A. P. Garcia
> <a.phillip.garcia(a)gmail.com> wrote:
>>
>> In memoriam, I read The Development of the C Language:
>> http://cm.bell-labs.com/who/dmr/chist.html
>>
>> It talks a bit about how B was originally implemented somewhat like
>> ETH Pascal (p-code). Are there any B interpreters or programs in the
>> archive?
>
> What intrigued me about this is that it's such an early example of an
> abstract machine running as an interpreter. BCPL, roughly
> contemporaneous, used ocode as an intermediate language, but it seems
> this was intended to be further translated into assembly. While it's
> possible to interpret ocode, in practice it seems this was rare, if it
> was done at all. Almost everything I've read about abstract/vitual
> machines traces its roots back to the following source:
>
> James R. Bell. 1973. Threaded code. Commun. ACM 16, 6 (June 1973),
> 370-372. DOI=10.1145/362248.362270
> http://doi.acm.org/10.1145/362248.362270
>
> Here's where dmr mentions implementing B using this technique:
>
> The B compiler on the PDP-7 did not generate machine instructions, but
> instead `threaded code' [Bell 72], an interpretive scheme in which the
> compiler's output consists of a sequence of addresses of code
> fragments that perform the elementary operations. The operations
> typically-in particular for B-act on a simple stack machine.
>
> Note he says it was published in 1972, when it actually appeared in
> print in 1973 (same page numbers). Two paragraphs later he writes:
>
> By 1970, the Unix project had shown enough promise that we were able
> to acquire the new DEC PDP-11. The processor was among the first of
> its line delivered by DEC, and three months passed before its disk
> arrived. Making B programs run on it using the threaded technique
> required only writing the code fragments for the operators, and a
> simple assembler which I coded in B; ; soon, dc became the first
> interesting program to be tested, before any operating system, on our
> PDP-11. Almost as rapidly, still waiting for the disk, Thompson
> recoded the Unix kernel and some basic commands in PDP-11 assembly
> language. Of the 24K bytes of memory on the machine, the earliest
> PDP-11 Unix system used 12K bytes for the operating system, a tiny
> space for user programs, and the remainder as a RAM disk. This version
> was only for testing, not for real work; the machine marked time by
> enumerating closed knight's tours on chess boards of various sizes.
> Once its disk appeared, we quickly migrated to it after
> transliterating assembly-language commands to the PDP-11 dialect, and
> porting those already in B.
>
> The abstract machine is also mentioned in Thompson's "Users' Reference
> to B", dated January 7, 1972. If the 1970 date is correct, they were
> using this technique some three years before most of the computing
> world knew about it!?
Hello!
This discussion is beginning to strike a heck of a lot of chords.
Jason what is this TripOS you are describing here about? And did you
actually get Dungeon to work?
-----
Gregg C Levine gregg.drwho8(a)gmail.com
"This signature fought the Time Wars, time and again."
Wasn't the other 'advantage' of threaded/pcode that it'd be smaller than a
native executable?
I know it's out of left field, but building Dungeon on RT-11, you have to
use the treaded compiler, and I assume it was a space thing.. Just as on
MS-DOS (Yeah I know...) a save for fitting stuff in 64kb for the later
compilers was to compile to p-code..
Wikipedia gives p-code for Pascal a timeframe of the 'early 70's and
attribes the whole interpeted code as O-Code for BCPL ....
I wonder if anyone ever did save any TripOS tapes for the PDP-11.....
-----Original Message-----
From: A. P. Garcia [mailto:a.phillip.garcia@gmail.com]
Sent: Friday, October 14, 2011 11:58 PM
To: tuhs(a)minnie.tuhs.org
Subject: Re: [TUHS] b remnants?
On Fri, Oct 14, 2011 at 9:52 AM, A. P. Garcia
<a.phillip.garcia(a)gmail.com> wrote:
>
> In memoriam, I read The Development of the C Language:
> http://cm.bell-labs.com/who/dmr/chist.html
>
> It talks a bit about how B was originally implemented somewhat like
> ETH Pascal (p-code). Are there any B interpreters or programs in the
> archive?
What intrigued me about this is that it's such an early example of an
abstract machine running as an interpreter. BCPL, roughly
contemporaneous, used ocode as an intermediate language, but it seems
this was intended to be further translated into assembly. While it's
possible to interpret ocode, in practice it seems this was rare, if it
was done at all. Almost everything I've read about abstract/vitual
machines traces its roots back to the following source:
James R. Bell. 1973. Threaded code. Commun. ACM 16, 6 (June 1973),
370-372. DOI=10.1145/362248.362270
http://doi.acm.org/10.1145/362248.362270
Here's where dmr mentions implementing B using this technique:
The B compiler on the PDP-7 did not generate machine instructions, but
instead `threaded code' [Bell 72], an interpretive scheme in which the
compiler's output consists of a sequence of addresses of code
fragments that perform the elementary operations. The operations
typically-in particular for B-act on a simple stack machine.
Note he says it was published in 1972, when it actually appeared in
print in 1973 (same page numbers). Two paragraphs later he writes:
By 1970, the Unix project had shown enough promise that we were able
to acquire the new DEC PDP-11. The processor was among the first of
its line delivered by DEC, and three months passed before its disk
arrived. Making B programs run on it using the threaded technique
required only writing the code fragments for the operators, and a
simple assembler which I coded in B; ; soon, dc became the first
interesting program to be tested, before any operating system, on our
PDP-11. Almost as rapidly, still waiting for the disk, Thompson
recoded the Unix kernel and some basic commands in PDP-11 assembly
language. Of the 24K bytes of memory on the machine, the earliest
PDP-11 Unix system used 12K bytes for the operating system, a tiny
space for user programs, and the remainder as a RAM disk. This version
was only for testing, not for real work; the machine marked time by
enumerating closed knight's tours on chess boards of various sizes.
Once its disk appeared, we quickly migrated to it after
transliterating assembly-language commands to the PDP-11 dialect, and
porting those already in B.
The abstract machine is also mentioned in Thompson's "Users' Reference
to B", dated January 7, 1972. If the 1970 date is correct, they were
using this technique some three years before most of the computing
world knew about it!?
_______________________________________________
TUHS mailing list
TUHS(a)minnie.tuhs.org
https://minnie.tuhs.org/mailman/listinfo/tuhs
I didn't see it as immeditaly obvious on slackware 1.0 ... or SLS .. it very
well may have been some addon or something somehwere....
If anyone knew it's filename that'd go a long long way! :)
-----Original Message-----
From: Derrik Walker [mailto:lorddoomicus@mac.com]
Sent: Friday, October 14, 2011 12:36 PM
To: Gregg Levine
Cc: tuhs(a)minnie.tuhs.org
Subject: Re: [TUHS] b remnants?
On Oct 14, 2011, at 11:53 AM, Gregg Levine <gregg.drwho8(a)gmail.com> wrote:
> On Fri, Oct 14, 2011 at 11:34 AM, Derrik Walker <lorddoomicus(a)mac.com>
wrote:
> > Many, many eons ago, in the early '90's, there was an implementation of
B
> > for Linux ( I believe it was written in C, ironically enough ). I think
it
> > was part of a bigger collection of "ancient" software for Linux that use
to
> > be around in the early Slackware days.
> >
> > Alas, I have searched for it in the recent past, as I was thinking about
> > porting it to OS X for kicks, but it seems to have vanished.
> >
> > Having an B, implemented in a modern language for a modern OS would be
cool.
> >
>
>
> Hello!
> How early a time period for the Slackware Linux group? (Which is what
> I run.) There's a repository of older distributions on the Ibib site,
> and a more comprehensive one situated on a mirror in the UK.
It would have been around '92 or '93, back when Slackware really only
provided a very basic boot system, gcc, some fancy scripts, and a crap load
of tarballs to compile everything. I'm not even sure it was part of the
Slackware collection, it might have been something someone added to the
server - I didn't build that computer.
It was an experimental system at CSU, where I was going to school at the
time - and the first actually Linux computer I ever had an account on. One
of the older professors had a bunch of B code he got from someplace and put
the compiler on there to see if he could get it to build. I remember he
also put f2c on there too as he had a tape full of Fortran code he wanted to
compile.
But, for all I know, he may have written the B compiler himself, but I seem
to remember him telling me about this collection of ancient software for
Linux that someone else had written, and he had gotten it up and running on
the experimental Linux system. Just not sure how faulty my memory is. I
just remember looking at B, and asking why he just doesn't covert it to C?
Funny thing was, some of the younger professors were complaining saying the
preferred their "REAL UNIX".
Unfortunately, he as long since retired. And that Computer was retired when
they moved the main Student system from HPUX to Redhat in the late '90's.
- Derrik
Just for the record.
The correct way to mirror a site with links corrected is
wget -c -m -k -np -e robots=off URL
Seems most people have problem remembering this incantation.
--
EMBnet/CNB
Scientific Computing Service
Solving all your computer needs for Scientific
Research.
http://bioportal.cnb.csic.eshttp://www.es.embnet.org
We could set up a web site
inmemoriamdmr.org
maybe initially as a wiki and ask people to add their contribution
and then maybe we could try to collect there his works or add a blog with
articles about him that could be commented...
Just an idea, I am in the middle of a Congress, seated in the front
row and trying to listen to speakers through my consternation, and can do
very little now.
j
--
EMBnet/CNB
Scientific Computing Service
Solving all your computer needs for Scientific
Research.
http://bioportal.cnb.csic.eshttp://www.es.embnet.org
Truly a great loss.
I just saw this (I have traveling to some international meetings).
I wonder if we could come up with a way to pay hommage to him
all together to acknowledge his legacy.
Don't know what could be best, but I am sure there are people
here who knew him and through their consternation can give us an idea
of what would be the best way to publicly honor him.
Can we all get together to do something jointly for him? I
guess a global collaborative initiative would be most in his spirit
and philosophy of life.
Dunno, maybe create web site to celebrate him. Where everybody
can leave a testimony of how his work has affected our lives.
j
--
EMBnet/CNB
Scientific Computing Service
Solving all your computer needs for Scientific
Research.
http://bioportal.cnb.csic.eshttp://www.es.embnet.org
True. I had to mirror via ftp as the robots.txt stopped the http mirroring. It should be possible to fix the mirror in the tarball. I'll see what I can do.
Thanks, Warren
--
Sent from my Android phone with K-9 Mail. Please excuse my brevity.
Hans Ottevanger <hansot(a)gmail.com> wrote:
On Thu, Oct 13, 2011 at 6:57 AM, Warren Toomey <wkt(a)tuhs.org> wrote: > All, I've taken a mirror of http://cm.bell-labs.com/cm/cs/who/dmr/ > and placed it at http://minnie.tuhs.org/dmr/ > > Feel free to mirror from minnie, in case the Labs' server gets overloaded. > It's 112 Megs. > Warren, Thanks for this excellent action, but your links are still absolute, i.e. point to the original content on the Bell Labs website. If that content disappears for whatever reason you will have a lot of links to convert. Kind regards, Hans Ottevanger
On Wed, Oct 12, 2011 at 10:02:08PM -0700, Lyndon Nerenberg wrote:
> >Feel free to mirror from minnie, in case the Labs' server gets overloaded.
> >It's 112 Megs.
>
> A tarball, perhaps?
Of course. ftp://minnie.tuhs.org/misc/dmr_cm.bell-labs_mirror.tar.gz 90M
Cheers,
Warren
For those of you who haven't heard yet, dmr died on Sunday. Rob Pike
announced it at
https://plus.google.com/101960720994009339267/posts/ENuEDDYfvKP
I don't know what to say. A *real* giant is dead. And almost the
saddest thing is that nobody has paid any attention.
Greg
--
Sent from my desktop computer
Finger grog(a)FreeBSD.org for PGP public key.
See complete headers for address and phone numbers.
This message is digitally signed. If your Microsoft MUA reports
problems, please read http://tinyurl.com/broken-mua
https://plus.google.com/101960720994009339267/posts/ENuEDDYfvKP?hl=en
I just heard that, after a long illness, Dennis Ritchie (dmr)
died at home this weekend. I have no more information. I trust
there are people here who will appreciate the reach of his
contributions and mourn his passing appropriately. He was a quiet
and mostly private man, but he was also my friend, colleague,
and collaborator, and the world has lost a truly great mind.
- Pob Pike
With great thanks and appreciation to him,
Warren
That is kind of what I'd imagine... In 1983 I thought 160kb was infinate
storage.. lol
> -----Original Message-----
> From: Lyndon Nerenberg (VE6BBM/VE7TFX) [SMTP:lyndon@orthanc.ca]
> Sent: Friday, September 09, 2011 6:23 PM
> To: jsteve(a)superglobalmegacorp.com; dave(a)horsfall.org; tuhs(a)tuhs.org
> Subject: Re: [TUHS] UNIX V 6.9999999 ?
>
> > It is insteresting reading about people haveing
> > 600MB of storage back in 1981
>
> You mean both of them?
Ah that makes sense, I could totally see that happening.. Esp with the cost
of hardware back then! It is insteresting reading about people haveing
600MB of storage back in 1981.. I can only imagine how much it'd have cost!
Thanks again!
Jason
-----Original Message-----
From: Dave Horsfall [mailto:dave@horsfall.org]
Sent: Wednesday, September 07, 2011 11:36 PM
To: The Eunuchs Hysterical Society
Subject: Re: [TUHS] UNIX V 6.9999999 ?
On Wed, 7 Sep 2011, Jason Stevens wrote:
> What is UNIX V 6.9999999?? I suspect it's v6 with a bunch of patches,
> but not quite v7? I've seen from some Russian stuff that they prefered
> v6 on pdp-11's as it "ran faster" than v7 and needed far less ram/disk
> space... I know it's 30 years too late to ask them what it is but I
> figure someone may have actually ran/used 6.9999999...
Back in the V6 days, I was known as Mr Unix 6-and-a-half, because I'd
spliced all sorts of V7 features into V6 - notably XON/XOFF, and there was
no way that V7 would run on the 11/40,
I rewrote the Calcommp and Versatec plotter drivers to use the block
interface, and they went like a bat out of hell.
Sigh... We had fun in those days.
-- Dave
_______________________________________________
TUHS mailing list
TUHS(a)minnie.tuhs.org
https://minnie.tuhs.org/mailman/listinfo/tuhs
> > Interesting. I've taken a look at the sources from the CD set and
> found that the text there (in /usr/src/sys/sys/machdep.c) is the same
> > as above. Looking further, the entire directory has the same files in
> > 4.0 and 4.1, with the same modification dates. So it looks as the 4.0
> > sources accidentally got replaced by the 4.1 sources.
>
Hmmm, no, I don't have anything useful to add.
I suspect you could check the modification dates on the files, and the file
SCCS IDs, against the source-code revision logs to figure this out for sure.
--keith
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Keith Bostic
keith(a)bostic.com
While cruising olduse.net I came across this puzzling entry in net.general
Department of Computer Engineering and Science
Case Western Reserve University
Cleveland, Ohio
We would like to announce our connection to Usenet. We are a
private university located in Cleveland, vacation spot of the midwest.
The department's primary facilities consist of:
VAX 11/780: hardware: RM05's, TU77, DZ-11, DH-11 (able), 2.5 Mbytes.
software: 4.1 BSD
PDP 11/45: hardware: RM02, DS330 (RP04), RK05, RX02, RS04(solid
state)
cache45 (able), DH-11
software: UNIX V 6.9999999
What is UNIX V 6.9999999?? I suspect it's v6 with a bunch of patches, but
not quite v7? I've seen from some Russian stuff that they prefered v6 on
pdp-11's as it "ran faster" than v7 and needed far less ram/disk space... I
know it's 30 years too late to ask them what it is but I figure someone may
have actually ran/used 6.9999999...
Thanks
Jason Stevens
All, IEEE Spectrum have asked me to write a paper on Unix to celebrate the
40th anniversary of the release of 1st Edition in November 1971. I'm after
ideas & suggestions!
I think my general thrust is that Unix is an elegant design, and the
design elements are still relevant today. The implementation is mostly
irrelevant (consider how much the code has changed from assembly -> C,
from the simple data structures in V7 through to current BSD), but the
original API is classic. Note that about 28 of the 1st Ed syscalls are
retained in current BSDs and Linux, and with the same syscall numbers.
I'm having some trouble thinking of the right way to explain what is
an elegant design at the OS/syscall level, so any inspirations/ideas
would be most welcome. I might highlight a couple of syscall groups:
open/close/read/write, and fork/exec/exit/wait.
If you have any references/URLs you think I should look at, please
pass them on to me.
I'm also trying to chase down some quotes; my memory seems to be failing me
but I'm sure I've seen these somewhere:
- in a paper, I think by Thompson & Ritchie, where they assert that the
kernel should provide no more than the most minimal services to the
userland programs. I thought this was the CACM paper, but I can't spot
this bit. Maybe it's in Thompson's preface to the Lions Commentary,
of which my copy is elsewere at present.
- I'm sure I remember someome (Kernighan?) say that Ritchie encouraged
them to espouse the use of processes as context switching was cheap,
but later measurements showed that in fact it wasn't that cheap in
the early versions of Unix.
Anyway, if you can think of good ideas/references about the elegance of
Unix, especially from the design perspective, I would much appreciate them.
Cheers,
Warren