All, behind the scenes we have had Grant Taylor and Tom Ivar Helbekkmo
helping us find a solution to the TUHS list DKIM issues. We have been
running two separate lists (unmangled and mangled TUHS headers) for a
few weeks. It looks like we can now merge them all back together and
use the settings on one to avoid (most of) the DKIM problems.
So that's what I've done: merged back to a single TUHS mailing list.
I've restored the [TUHS] on the Subject line as well.
I'll monitor the logs for further bounces. Fingers crossed there won't
be any further unsubscriptions from the list due to bounce processing.
If there are, I'll manually put you back in.
Cheers all & thanks to Grant and Tom.
Warren
[I tried to send this earlier, but was thwarted by list shenanigans.
Apologies if it's a dup.]
On Thu, Oct 19, 2017 at 10:52 AM, Ron Natalie <ron(a)ronnatalie.com> wrote:
> My favorite reduction to absurdity was /bin/true. Someone decided we
> needed shell commands for true and false. Easy enough to add a script that
> said "exit 0" or exit 1" as its only line.
> Then someone realized that the "exit 0" in /bin true was superfluous, the
> default return was 0. /bin/true turned into an empty, yet executable, file.
>
> Then the lawyers got involved. We got a version of a packaged UNIX (I
> think it was Interactive Systems). Every shell script got twelve lines of
> copyright/license boilerplate. Including /bin true.
> The file had nothing but useless comment in it.
Gerard Holzmann has something on this that I think is great:
http://spinroot.com/gerard/pdf/Code_Inflation.pdf
- Dan C.
PS: A couple of thoughts.
The shell script hack on 7th Edition doesn't work if one tries to
'execl("/bin/true", "true", NULL);'. This is because the behavior of
re-interpreting an execution failure as a request to run a script is
done by the shell, not exec in the kernel. This implies that one could
not directly exec a shell script, but rather must exec the shell and
give the path to the script as the first argument. I vaguely recall we
had a discussion about the origin of the '#!' syntax and how this was
addressed about a year or so ago.
I tried to write a teeny-tiny '/bin/true' on my Mac. Dynamically
linked, the obvious "int main() { return 0; }" is still a little over
4KB. Most of that is zeros; padding for section alignment and the
like. I managed to create a 'statically' linked `true` binary by
writing the program in assembler:
% cat true.s
# /bin/true in x86_64 assembler for Mac OS X
.text
.globl start
start:
mov $0x2000001, %rax # BSD system call #1
mov $0, %rdi # Exit status: 0 = 'true'
syscall
# OS X requires a non-empty data segment.
.data
zero: .word 0 As I recall,
%
macOS requires you to have a data section aligned to 4K, even if you
don't use it. The resulting binary is a little over 8K; again, mostly
zeros.
There are parlor tricks people play to get binary sizes down to
incredibly small values, but I found the results interesting. Building
the obvious C program on a PDP-11 running 7th Edition yields a 136
byte executable, stripped. Still infinitely greater than /bin/true in
the limit, but still svelte by modern standards.
> How realistic would the experience be to actually running the system
> described in the Unix Programming Environment [v8] if it's actually
running > BSD 4.1... Thanks for any insights y'all might have on this.
This question bears on a recent thread about favorite flavors of Unix. My
favorite flavor is Universal Unix, namely the stuff that just works
everywhere. That's essentially what K&P is about.
That's also what allowed me to use a giant Cray with no instruction
whatsoever. And to do everyday "programmering" on the previously
inscrutable Macintosh, thanks to OS X.
The advent of non-typewriter input put a damper on Universal Unix. One has
to learn something to get started with a novel device. I am impressed,
though, by the breadth of Universal Unix that survives behind those
disparate facades.
> From: Larry McVoy
>>> I was told, by someone that I don't remember, that uwisc was the 11th
>>> node on the net. ... If anyone can confirm or deny that I'd love to know.
> I dunno.
I don't have any axe to grind here. I don't care if they were the first, or
the last. You asked "If anyone can confirm or deny that I'd love to know",
and all I'm trying to do is _accurately_ answer that.
> That 1985 map has uwisc in there
I have a large collection of ARPANET maps here:
http://www.chiappa.net/~jnc/tech/arpanet.html
and the first one on which UWisc shows up is the October, 1981 geographical
map - over ten years since the ARPANet went up (December, 1969 is the earliest
map I have there).
> I do know that prior to the net there was uucp
Which "net" are we talking about here? ARPANET? CSNET? Internet? The UUCP network
long post-dated the ARPANET - I think it was started in the late 70's, no?
The earliest Internet map I have is from 1982, here:
https://upload.wikimedia.org/wikipedia/commons/6/60/Internet_map_in_Februar…
and again UWisc is not on it. (Yes, I know it's on Wikipedia, but I'm the one
who uploaded it, so I can verify it.)
CSNET I don't know much about, that may have been what the comment referred
to.
Wikipedia (for what little we can trust it) says "By 1981, three sites were
connected: University of Delaware, Princeton University, and Purdue
University"; since Lawrence Landweber at UWis was the main driver of CSNET, I
doubt it would have been far behind.
Noel
> From: Grant Taylor
> Does anyone know of a good place to discuss networking history, routing,
> email, dns, etc. I'd like to avoid getting too far off topic for TUHS.
You could try the "Internet History mailing list":
http://www.postel.org/internet-history/
which covers all of networking, including pre-Internet stuff.
Noel
> From: Larry McVoy
> I was told, by someone that I don't remember, that uwisc was the 11th
> node on the net. ... If anyone can confirm or deny that I'd love to know.
There's a copy of the July '77 revision of the HOSTS.TXT file as an appendix
here:
http://www.walden-family.com/dave/archive/bbn-tip-man.txt
The IMPs are numbered in order of deployment; so UCLA is #1, SRI is #2, Utah
is #4, BBN is #5, etc.
I don't see Wisconsin in the list at all. Maybe the person meant CSNET?
Noel
Does anyone know why stty won't accept '^?' in v7? It will accept '^h',
but then the shell expects ^h to "backspace". I am trying to get the
delete key on my mac to do the backing up and it's '^?'. # isn't my
favorite since it's used in C programs, but pressing CTRL-h to backup is
a pain too. If you've read this far, I have three more questions:
1. How do you escape # in order to write a C program if # is the erase
character in the terminal?
2. How do you enter a literal character in the v7 shell (I am used to
CTRL-v CTRL-DEL to enter the delete character on other unices)?
3. Is there a way to echo the ascii value of a keypress in v7?
Thanks,
Will
--
GPG Fingerprint: 68F4 B3BD 1730 555A 4462 7D45 3EAA 5B6D A982 BAAF
Dear THUS members,
An international conference on the history of Unix will be held in
Paris, Oct. 19th, at the Conservatoire National des Arts & Métiers. Here
is the link to the (bilingual) program :
http://technique-societe.cnam.fr/colloque-international-unix-en-france-et-a…
<http://technique-societe.cnam.fr/medias/fichier/programme-colloque-unix-bil…>
There will be audio recordings of the symposium available afterwards -
check the program page to know where and when.
It will be followed, the next day, by a kick-off meeting of the research
project “What is a computer program?”:
http://technique-societe.cnam.fr/table-ronde-qu-est-ce-qu-un-programme-info…
<http://technique-societe.cnam.fr/table-ronde-qu-est-ce-qu-un-programme-info…>
Please note that an active member of this list, Clem Cole, will be
giving a much awaited talk!
Best,
Camille Paloque-Bergès, for the orgazining committee(a THUS lurker !).
--
Institutional email address : camille.paloque_berges(a)cnam.fr
<mailto:camille.paloque_berges@cnam.fr>
*Laboratory for the History of Techno-Sciences (HT2S), Conservatoire
national des arts et métiers, 2 rue Conté, 75003 Paris, France
*Associate researcher at the Digital Paths cluster of CNRS' Institute
for Communication Sciences (ISCC)
I remember a thread on the mailing list a while back where Warren
announced the availability of the V8-V10 source code and being intrigued
at the possibility of running it. Then I recently came across a note by
dmr referring to V8 and further tweaking my interest:
http://minnie.tuhs.org/pipermail/tuhs/2003-June/002195.html
Here's what he said:
As for the system aspects: K&R 1 (1978) was done on
what would soon be 7th edition Unix, on 11/70;
K&R 2 (1988) using 9th edition on VAX 8550.
Kernighan and Pike's Unix Programming
Evironment (1984) used 8th edition
on VAX 11/750.
About the releases (or pseudo releases) that
Norman mentions: actually 8th edition was
somewhat real, in that a consistent tape
and captured, probably corresponds fairly
well with its manual, and was educationally
licensed for real, though not in large quantity.
9th and 10th were indeed more conceptual in that
we sent stuff to people (e.g. Norman) who asked,
but they weren't collected in complete and
coherent form.
This combined with my tinkering with V7 and working through K&R (1978)
got me hankering to go through K&P (1984) on a Vax running V8. Then, I
came across this:
https://virtuallyfun.com/2017/03/30/research-unix-v8/
and decided to jump in and start running V8. Then it hit me - is it even
possible to run a V8 instance (similarly to V5/V6/V7, from tape) or is
it as this note says, necessary to run the bits on a 4.1 BSD base? How
realistic would the experience be to actually running the system
described in the Unix Programming Environment if it's actually running
BSD 4.1... Thanks for any insights y'all might have on this.
Thanks,
Will
--
GPG Fingerprint: 68F4 B3BD 1730 555A 4462 7D45 3EAA 5B6D A982 BAAF