While cleaning a storage room, our staff found this tape containing #UNIX v4 from Bell Labs, circa 1973
Apparently no other complete copies are known to exist: gunkies.org/wiki/UNIX_Fourth_E…
We have arranged to deliver it to the Computer History Museum
reshared this
Jessamyn
in reply to Rob Ricci • • •Rob Ricci
in reply to Jessamyn • • •Evan Prodromou
in reply to Rob Ricci • • •Rob Ricci
in reply to Rob Ricci • • •We have some more information on this! One of @regehr's grad students
did some excellent sleuthing and figured out that this was received by Martin Newell : archive.org/details/unix_news_…If that name sounds familiar to you, it's probably because his teapot is ubiquitous in computer graphics: graphics.cs.utah.edu/teapot/
cv.thalia.dev/UNIX News July 30 1975 : USENIX Association : Free Download, Borrow, and Streaming : Internet Archive
Internet ArchiveRob Ricci
in reply to Rob Ricci • • •Great talk on how recovering an old tape like this is done:
youtube.com/watch?v=7YoolSAHR5…
- YouTube
www.youtube.comRob Ricci
in reply to Rob Ricci • • •Some local stories about this tape:
attheu.utah.edu/science-techno…
ksltv.com/science-technology/u…
We're going to try to get it read in a couple of weeks
University of Utah team discovers rare computer relic
Shelby Lofton (KSLTV.com)Rob Ricci
in reply to Rob Ricci • • •reshared this
Oblomov, Matteꙮ Italia e René Seindal (MOVED) reshared this.
Rob Ricci
in reply to Rob Ricci • • •Rob Ricci
in reply to Rob Ricci • • •Rob Ricci
Unknown parent • • •Here's the document release you were waiting for today!
The UNIX V4 tape!
archive.org/details/utah_unix_…
#retrocomputing
UNIX V4 tape from University of Utah (raw) : Computer History Museum : Free Download, Borrow, and Streaming : Internet Archive
Internet Archivereshared this
Ángela Stella Matutina, Miguel de Icaza ᯅ🍉, Robert J. Berger, Oblomov, FKA ZOG, Campbell Jones e Carsten Müller reshared this.
Rob Ricci
in reply to Rob Ricci • • •UNIX - v4
squoze.netreshared this
Oblomov reshared this.
Rob Ricci
Unknown parent • • •mcc
Unknown parent • • •Rob Ricci
in reply to mcc • • •Rob Ricci
in reply to Rob Ricci • • •Rob Ricci
in reply to Rob Ricci • • •Rob Ricci
in reply to Rob Ricci • • •Asta [AMP]
in reply to Rob Ricci • • •do you know if V4 Unix would have included anything like a source tree, including the kernel?
because if so, I suddenly find myself curious as to how long it'll be until
A. someone gets it running on a VM (or even on real hardware!), and
B. gets Doom to run on it... assuming it doesn't already
SnoopJ
Unknown parent • • •@aud and so much of it `#include`s .c files
it was a different era
Rob Ricci
Unknown parent • • •Rob Ricci
Unknown parent • • •Sensitive content
SnoopJ
Unknown parent • • •@aud yea, I think "boot" is a far-too-modern paradigm here.
I don't know much about it at all but my coarse understanding is that you'd read in however much of the tape needed reading, then enter `/etc/init` and now your system is running.
As evidence to support my hand-waving argument, `/usr/source/s1/init.c` includes `case reboot` that basically re-enters `/etc/init`
SnoopJ
in reply to SnoopJ • • •@aud and getting all the way down to brass tacks: that re-entry is done with `execl()`, which is implemented in assembly in `/usr/source/s4/execl.s`
Really not a lot of semantic distance between the user and "the operating system is just one program in a trenchcoat full of other programs"
mcc
in reply to Rob Ricci • • •Rob Ricci
Unknown parent • • •@SnoopJ @aud Source for init in /usr/source/s1/init.c
maybe I will run this instead of systemd
Brad
Unknown parent • • •Rob Ricci
in reply to Brad • • •SnoopJ
in reply to Rob Ricci • • •@bk1e @aud love this comment from the scheduler:
```
/*
* no easy core,
* if this process is deserving,
* look around for
* oldest process in core
*/
```
weighing your process's soul to see if it is lighter than a feather
Rob Ricci
in reply to Rob Ricci • • •Asta [AMP]
in reply to Asta [AMP] • • •Asta [AMP]
in reply to SnoopJ • • •unixbinary, which I'm assuming is the kernel. What architecture and boot up chain would you even need to get that running, I wonder?... I realize I know nothing about boot up sequences from the 70s for UNIX. Did they have something we'd recognize as a BIOS, I wonder...jn (B side)
in reply to Rob Ricci • • •Sensitive content
Rob Ricci
in reply to Asta [AMP] • • •SnoopJ
Unknown parent • • •Rob Ricci
Unknown parent • • •@SnoopJ @aud check out this 🔥 /etc/rc:
```
rm -f /etc/mtab
chdir /tmp
rm -f [a-t]* [x-z]* v*
chdir /
/etc/update
```
SnoopJ
Unknown parent • • •@aud okay yes and if I had just slowed the heck down and read `/usr/sys/ken/main.c` a LITTLE more carefully I would see clearly that it is setting up `init` and then invoking the scheduler
welp
It's really cool how abstract-but-actually-very-concrete that is to me, someone who has functionally zero exposure to systems programming:
```
/*
* make init process
* enter scheduling loop
* with system process
*/
if(newproc()) {
expand(USIZE+1);
u.u_uisa[0] = USIZE;
u.u_uisd[0] = 6;
sureg();
copyout(icode, 0, 30);
return;
}
sched();
```
SnoopJ
in reply to SnoopJ • • •@aud thinking about this a bit more in the context of that `unix` binary, I'm probably wrong, but we're well beyond what I know about UNIX here.
But consulting V7 setup, it looks like `unix` indeed was the entrypoint. Maybe my mental model of `init` as the effective base of a process tree is also too modern!
wolfram.schneider.org/bsd/7thE…
setup
wolfram.schneider.orgMichael Katzmann🐈
Unknown parent • • •It's been booted!
squoze.net/UNIX/v4/
UNIX - v4
squoze.netRob Ricci
in reply to Rob Ricci • • •Thread about the .tap format for those who want to dig in more:
github.com/larsbrinkhoff/emacs…
Repair Gosling emacs.tap from Universität Stuttgart by thaliaarchi · Pull Request #17 · larsbrinkhoff/emacs-history
GitHubRob Ricci
in reply to Rob Ricci • • •Hidden in storage, a University of Utah research associate happened upon the only known copy of this ‘revolutionary’ software
The Salt Lake Tribune