All, I've just received from Poul-Henning Kamp a document entitled
"UNIX Program Description", dated January 1976 and written by the
UNIX Support Group. It contains detailed descriptions of the functions
inside a Unix kernel. Given the date and the USG origin, I'm guessing
that the system described is PWB/1.0. Can anybody confirm this at all?
The URL is http://minnie.tuhs.org/Archive/PDP-11/Distributions/usdl/unix_program_descr…
but I'll move it if it turns out not to be about PWB.
I love how new documents and artifacts keep appearing! Thanks phk.
Cheers,
Warren
If I recall well the /sbin directory first appeared in HP/UX,
and the name stood for 'Static binaries'. Its reason for existence
was that with the introduction of shared libraries the file with
the C-library had become a single point of failure. Therefore this
sbin was introduced to hold Statically linked executables for the
most important commands needed to fix a broken system (sh, ls, mv,
cp, find, tar, fsck etcetera). With this directory earlier than
/bin in his PATH the administrator could at least restore a working
libc.so file. And, while we are at it, the name 'executable' was
not commonly used: they were called 'binaries' (except in IBM
mainframe terminology were they were called 'load modules').
Only much later the habit of /sbin = System binaries emerged.
An important reason to split /bin vs. /usr/bin and /lib vs. /usr/lib
etc. was that the root file system had to be kept small. The fsck
program, while at work, builds tables. If possible, they stay in
memory, but if memory runs out fsck writes them to disk. However,
you don't want them to be written to an untrusted/unchecked file
system, and certainly not to the file system currently under repair.
Since the root file system has to be checked before the others, it
had to be small enough so ensure that fsck could run memory-based
only. Therefore: the /bin, /lib and other root-fs based directories
held the minimal stuff needed for booting and for repairs/restores,
while all the rest had to go into the "overflow" directories /usr/bin,
/usr/lib etc (and, obviously, /usr was a separately mounted partition).
Remember: those were the days that every reboot included a full
fsck on all your partitions.
--
Hendrik-Jan Thomassen <hjt(a)ATComputing.nl>
AT Computing
6546 BE Nijmegen NL Fax +31 24 352 72 92
info(a)atcomputing.nl www.atcomputing.nl
'If you think education is expensive, then try ignorance.'
"Jose R. Valverde" <jrvalverde(a)cnb.csic.es> said:
> Beyond that, the original articles and comments complained also about
> directory naming (/bin /etc /lib) as "unintuitive". I fail to
> understand in
> what way is it easier for someone new to a computer to learn a "/bin
> /etc /var /lib" alien terminology and what it means, than to learn
> "System Config Libraries
> etc..." or "Windows Windows32 Windows64 Temp Users and Settings,
> etc..."
In SCO Xenix/UNIX, the home directory is usually mounted on /u.
I was amused the first time I saw it.
Lyndon Nerenberg:
A well designed system without library bloat can pump out some
pretty skinny static binaries.
=======
V6, for example. Or even V7 if carefully pruned.
Once upon a time, I made an RK05 disk (5MB) with a stripped-down
post-V7 for an 11/45. It had just enough programs to allow
basic file manipulation and text-processing.
We used this compact system to allow our secretaries (in a
small university department in the early 1980s) to continue
typing up papers and letters on the day the machine-room
air conditioning was being replaced. With the doors standing
open and a big fan, we were willing to leave the 11/45 running,
but not the VAX-11/780.
Due to contractor screwups (when the chilled water was turned
on, it rained up and down the hall--many poorly-soldered
joints in the copper pipes), we actually needed this for a
couple of days, so for safety I shut the system down every
evening, removed the RK05 cartridge, and took it downstairs
to the 11/34 that had a tape drive, where I booted RT11 and
took an image backup with ROLLOUT.
Norman Wilson
Toronto ON
> http://www.osnews.com/story/25556/Understanding_the_bin_sbin_usr_bin_usr_sb…
Cute, but most of the history is wrong.
The distinction between /bin and /usr/bin is true - / held the things
need to boot the system. Other things were on /usr.
The Berkeley guys did NOT invent shared libraries. Shared libraries as
we know them came originally from Sun, on SunOS 4.x for sure, possibly
on SunOS 3.x. (Larry?) Many commercial vendors adopted the design (Ultrix,
I think, and maybe others) and finally around 4.4 they found their way into
"pure" BSD.
/home and /opt came into the picture circa 1989 with SVR4 when Berkeley,
AT&T and Sun (and maybe a few others?) got together to standardize the
layout and make diskless booting possbile and reasonable with NFS sharing
of home directories. /sbin & /usr/sbin came into the picture at this
point also, to hold executables that until then had lived in /etc. The
idea was that /etc should only have per-machine configuration files.
The general point of the article and of some of the postings, that the
proliferation doesn't make a lot of sense today, is well taken. The
Bell Labs guys themselves recognized this when they did Plan 9.
The problem is even worse on 64 bit Linux systems, which can handle
two different architectures. /lib and /lib64 confuse a lot of the
older 'configure' programs.
Personally, I hate reading articles by "experts" where 85% of the facts
are wrong. I lived through all of it, and I know better... :-)
Arnold
I've received a link http://manpages.bsd.lv/history.html claiming to
be about man pages; in fact, it's a lot more than that, including the
prehistory of troff. Interesting stuff.
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
Hi. I announced this in comp.lang.awk in December and tried to BCC
the TUHS list but it didn't seem to happen. Here's the announcement
I posted.
Arnold
-----------------------------------------------
From: arnold(a)skeeve.com (Aharon Robbins)
Newsgroups: comp.lang.awk
Subject: AWKCC source now available
Date: Fri, 16 Dec 2011 12:27:39 +0000 (UTC)
Message-ID: <jcfdfr$qt9$1(a)dont-email.me>
[ BCC to TUHS list, Brian Kernighan & Chris Ramming ]
awk 'BEGIN { print "Sherman, set the wayback machine for 1988" }'
Hello All.
This note is to announce that through the valiant efforts of Brian Kernighan,
Alcatel-Lucent has been persuaded to make the source for awkcc available.
It can be found at:
https://open-innovation.alcatel-lucent.com/projects/awkcc
You have to register (no cost) before being able to download, but
it's easy. The license terms are at the site. It's a straightforward
"for personal use" kind of license.
For those who don't know, awkcc is an adaptation of Unix awk to translate
nawk programs into C. It was originally implemented by Chris Ramming (then
at Bell Labs, although no longer) circa 1988, and the source dist includes
some doc that Chris wrote.
Given how fast machines are these days, this program is mostly of
historical interest. But it's nice to have this bit of Unix / awk history
generally available. And, if you really need to turn an awk program into
C, this may provide a starting point.
Enjoy!
--
Aharon (Arnold) Robbins arnold AT skeeve DOT com
P.O. Box 354 Home Phone: +972 8 979-0381
Nof Ayalon Cell Phone: +972 50 729-7545
D.N. Shimshon 99785 ISRAEL
Hi All.
I announceced this some years ago but it's been renewed, so I'll announce
it again.
In 2004 sometime I downloaded all the comp.sources stuff I could from
uunet.uu.net, which was still making it available for anonymous ftp.
I've made a tarball of it available from http://www.skeeve.com/Usenet.tar.bz2
Warren, if you don't have this in the TUHS archives, maybe you could add it?
Thanks,
Arnold
Hi,
For those who want to refresh old memories.
Hans Bezemer has made big progress as far as performance of qemu is
concerned. His specific experience concerns Coherent, but other old
unixes could use it.
Details can be found in comp.os.coherent news group
http://groups.google.com/group/comp.os.coherent/topics
The older tuhs message can be mentioned :
http://minnie.tuhs.org/pipermail/tuhs/2008-July/001815.html
I have also noticed , that Coherent boots well and is very fast in
newest virtualbox 4.1.8, running in XP.
Dell Optiplex 755 was used with Core 2 Duo.
Details can be found in forums for "Other quests"
http://www.virtualbox.org
It suggests , that other old Unixes could benefit in new virtualbox.
Regards
Andrzej