Hi,
Everyone on the list is well aware that running V7 in a modern
simulator like SIMH is not a period realistic environment and some of
the "problems" facing the novice enthusiast are considerably different
from those of the era (my terminal is orders of magnitude faster and
my "tape" is a file on a disk). However, many of the challenges facing
someone in 1980, remain for the enthusiast, such as how to run various
commands successfully and how devices interoperate with unix. Of
course, we have do resources and some overlapping experience to draw
on - duckduckgo (googleish), tuhs member experience, and exposure to
modern derivatives like linux, macos, bsd, etc. We also have
documentation of the system in the form of the Programmer's Guide - as
pdfs and to some degree as man pages on the system (haven't found
volume 2 documentation on the instance).
My question for you citizens of that long-ago era :), is this - what
was it like to sit down and learn unix V7 on a PDP? Not from a
hardware or ergonomics perspective, but from a human information
processing perspective. What resources did you consult in your early
days and what did the workflow look like in practical terms.
As an example - today, when I want to know how to accomplish a task in
modern unix, I:
1. Search my own experience and knowledge. If I know the answer, duh,
I know it.
2. Decide if I have enough information about the task to guess at the
requisite commands. If I do, then man command is my friend. If
not, I try man -k task or apropos task where task is a one word
summary of what I'm trying to accomplish.
3. If that fails, then I search for the task online and try what
other folks have done in similar circumstances.
4. If that fails, then I look for an OS specific help list
(linux-mint-help, freebsd forums, etc), do another search there,
and post a question.
5. If that fails, or takes a while, and I know someone with enough
knowledge to help, I ask them.
6. I find and scan relevant literature or books on the subject for
something related.
Repeat as needed.
Programming requires some additional steps:
1. look at source files including headers and code.
2. look at library dependencies
3. ask on dev lists
but otherwise, is similar.
In V7, it's trickier because apropos doesn't exist, or the functional
equivalent man -k, for that matter and books are hard to find (most
deal with System V or BSD. I do find the command 'find /usr/man -name
"*" -a -print | grep task' to be useful in finding man pages, but
it's
not as general as apropos.
So, what was the process of learning unix like in the V7 days? What
were your goto resources? More than just man and the sources? Any
particular notes, articles, posts, or books that were really helpful
(I found the article, not the book, "The Unix Programming Environment"
by Kernighan and Mashey, to be enlightening
https://www.computer.org/csdl/mags/co/1981/04/01667315.pdf)?
Regards,
Will
I came to V7 under emulation, since I didn't really do much Unix until
System III.
I learned Unix as a user using Kochan and Wood's Unix Shell programming
to get used to the shell
syntax, which was very different from CP/M, MS-DOS, RT11, RSTS/E, RSX
and VMS which I dealt with as a DEC Field Engineer. I picked up the
Nutshell books on Unix, TCP/IP, DNS.
After touching some BSD and Ultrix, I moved back to System V, Xenix
System V (8086/8088) and
Uniplus System III. I compiled and replaced older tools to get things
like apropos where they
didn't exist. Don't ask how I got Korn Shell code...
It really helps to have the right friends with access... When I got ksh
working on SVR2 based
systems and Xenix (at home) I was amazed how much better it was than the
alternatives in '86-88.
One thing that the BSD's and Uniplus had were a number of the original
Unix papers which I
collected in the original troff/nroff (if I could find them). They were
a great help in understanding
how the systems all went together.
Understanding the history is useful. I was explaining why there's /bin,
/usr/bin /sbin to a bunch
of new Linux users -- telling them the original RK05's about 2.5
megabytes (1.5 megawords) used to hold the entire system. Minimal was
important back in the day.
Current compressed Ubuntu linux kernel 4.13 = aproximately 7.5 megabytes.
Now the kernel's larger than the disk was.
Some of the stuff was interesting. The stty stuff was just plain
wierd. AT&T assumed hard copy terminals as a default still supporting
only upper case and # as a character erase and Control-C
as an interrupt character made more sense than Ascii DEL.
Once I got my profile standardized to make the systems all look the same
I was good.
There's a nice table on
I picked up the AT&T Sys V docs and the BSD 4.2 and 4.3 docs and worked
backwards to the minimalist Version 7.
My only exposure with V6 was hardware with a bad backplane on an 11/70
corrupting a customer
database back in the mid '80's. Amazing to find the sysadmins in a Unix
operations and sysadmin
class I was teaching on Pyramid MIServer boxes in the 1993 timeframe
when they were upgrading
to a Pyramid.
Bill
--
Digital had it then. Don't you wish you could buy it now!