A couple of my friends from UC Berkeley were musing on another email
thread. The question from one of them came up: *"I'm teaching the
undergrad OS course this semester ... Mention where ~ comes."*
This comment begets a discussion among the 4 of us at where it showed up in
the UNIX heritage and it if was taken from somewhere else.
Using the tilde character as a short cut for $HOME was purely a userspace
convention and not part of the nami() kernel routine when it came into
being. We know that it was supported by Mike Lesk in UUCP and by Bill Joy
in cshell. The former was first widely released as part of Seventh Edition
but was working on V6 before that inside of BTL. Joy's cshell came out as
part of 2BSD (which was V7 based), but he had released "ashell" before that
and included it in the original BSD (*a.k.a.* 1BSD) which was for V6 [what
I don't remember is if it supported the convention and I can not easily un-
ar(1) the cont.a files in the 1BSD tar image in Warren's archives.
In our exchange, someone observed suggested that Joy might have picked it
up because the HOME key was part of the tilde key on the ADM3A, which were
popular at UCB [*i.e.* the reason hjkl are the movement keys on vi is the
were embossed on the top of those keys on the ADM3A]. It also was noted
that the ASR-33 lacks a ~ key on its keyboard. But Lesk definitely needed
something to represent a remote user's home directory because each system
was different, so he was forced to use something.
It was also noted that there was plenty of cross-pollination going on as
students and researchers moved from site to site, so it could have been BTL
to UCB, vice-versa, or some other path altogether.
So two questions for this august body are:
1. Where did the ~ as $HOME convention come to UNIX?
2. Did UNIX create the idiom, or was there an earlier system such as
CTSS, TENEX, ITS, MTS, TSS, or the like supported it?
Fun read and it's totally wild that people's emotional comfort with *text*
drives a lot of their love or hate of unix.
http://theody.net/elements.html
Tyler
Ken's (?) Plan 9 assemblers are well known for their idiosyncratic
syntax, placing identical behaviour across platforms over a sense
of resemblance to people used to normal assemblers. While I am
aware of Rob's talk [1] on the basic design ideas and have read both
the Plan 9 [2] and Go [3] assembler manuals, many aspects of the
design (such as the strange way to specify static data) are
unclear and seem poorly documented.
Is there some document or other piece of information I can read on
the history of these assemblers? Or maybe someone recalls more bits
about these details?
Yours,
Robert Clausecker
[1]: https://talks.golang.org/2016/asm.slide
[2]: https://9p.io/sys/doc/asm.html
[3]: https://golang.org/doc/asm
--
() ascii ribbon campaign - for an 8-bit clean world
/\ - against html email - against proprietary attachments
This memory just came back to me. There was a UNIX disribution
(PWB/UNIX?) that had a program called 1.
It printed tis quaint bit of propaganda.
One Bell System. It works.
This was fine until one day I’m at work in a big bull pen computer room
when Bernie, one of my co-workers, shouts.
“What’s all this Bell System crud in the editor?”
My reaction is, “Well, it’s all Bell System crud.” I walk over to his
terminal and find he is typing 1 repeatedly at the shell prompt and
getting the above message. (This was back in the old /bin/ed days where
1 got you to the top of the file). I had to point out he wasn’t in
the editor.
Later that day, the program was changed to say:
You’re not in the editor, Bernie.
This I think made it into one of the BRL releases and occassionally got
inquiries as to who Bernie is.
Warner Losh and I have been discussing the early history of John
Lions' "A commentary on the Sixth Edition UNIX Operating System".
I've been hosting Warren Toomey's version (with some correction of
scan errors) at http://www.lemis.com/grog/Documentation/Lions/ for
some years now, and my understanding had been that the book hadn't
been published, just photocopied, until Warren posted it on
alt.folklore.computers in 1994. But now it seems that the "book" had
been published by UNSW when Lions held the course, and only later was
the license revoked. Does anybody have any insights? What
restrictions were there on its distribution? What was the format?
Was it a real book, or just bound notes?
Greg
--
Sent from my desktop computer.
Finger grog(a)lemis.com for PGP public key.
See complete headers for address and phone numbers.
This message is digitally signed. If your Microsoft mail program
reports problems, please read http://lemis.com/broken-MUA
There also exists a latter-day AT&T version of the Lions
book. White cover with deathstar logo; standard US letter-
sized paper, perfect-bound along the short edge. Two
volumes: one for the source code, one for the commentary.
I have a copy, and I bet Andrew does too: as I remember,
he got a handful of them from Judy Macor (who used to
handle licensing requests--I remember speaking to her
on the phone once in my pre-Labs days) when she was
clearing old stuff out of her office, and I nabbed one.
Norman Wilson
Toronto ON
Has anyone gotten Xinu running in SIMH? It seems like it should be straightforward to run the "support" utilities under BSD on an emulated VAX and then run Xinu itself on an emulated LSI-11. If anyone's done so, I'd be interested to learn what all you had to do to set it up and get it working.
-- Chris
-- who needs to figure out SIMH config file syntax to match the board set he wants to simulate
Does anyone have an email for Eric Schmidt? My vibe is he is super
private so contact me off list if you need to know why I am looking.
I overlapped with him at Sun and talked to him a few times but I doubt
he remembers me.
--lm
I've made a number of 'improvements' to the LSI-11 version of MINI-UNIX.
(I'm starting to be fairly impressed with MINI-UNIX; for people who have a
hardware PDP-11 with no memory management, it's a very capable system; most
of V6, and very good source compatability.)
First, with help from feedback from Paul Riley, I've improved the "Running
MINI-UNIX on the LSI-11" page:
http://ana-3.lcs.mit.edu/~jnc/tech/unix/Mini/Mini.html
It should be pretty usable at this point, but more feedback on further
improvements gratefully accepted! (Hint, hint :-)
In code changes, I have a new version of mch.s:
http://ana-3.lcs.mit.edu/~jnc/tech/unix/Mini/mch.s
The main improvements are a tiny prs() and prn(), to allow systems to leave
out prf.c to save space, but still be able to print messages (rather than
simply dying silently, as is MINI-UNIX's wont). The prs() also saves and
restores the console'e CSR, and prints with console interrupts off (to prevent
spurious interrupts).
An idea from Milo Velimirovic (use the top of the stack!) resulted in minor
improvements in two places where there wasn't a register free to use
MFPS/MTPS.
Also,I have a working RL driver for MINI-UNIX now (I was able to attach a V6
filesystem to RL0 and then could do "icheck /dev/rl0" and it worked); I'll be
up-loading that, and adding directions for using it, 'soon'. (It pretty much
just worked; pulled out the XMem bits, and the raw I/O calls, and it worked
right off.)
To make an RL the root filesystem, I need to tweak a few more things; the
parameters ROOTDEV, etc - crucially, including SWPLO and NSWAP - are currently
set in param.h, so you'd have to recompile the OS to switch disk types. I'm
going to put them back as externals in conf.c, the way they are in V6; that
way you'll only need an 'rlconf.c' to switch roots. (I'm not sure why they
were moved; it only saves one word each to make them #define's.)
Noel