I have been trolling these many threads lately of interest. So thought I should chip in.
"SVr4 was not based on SunOS, although it incorporated
many of the best features of SunOS 4.x”.
IMHO this statement is almost true (there were many great features from BSD too!).
SunOS 5.0 was ported from SVR4 in early 1991 and released as Solaris 2.0 in 1992 for desktop only.
Back in the late 80s, Sun and AT&T partnered development efforts so it’s no surprise that SunOS morphed into SVR4. Indeed it was Sun and AT&T who were the founding members of Unix International…with an aim to provide direction and unification of SVR4.
I remember when I went to work for Sun (much later in 2003), and found that the code base was remarkably similar to the SVR4 code (if not exact in many areas).
Here’s the breakdown of SVR4 kernel lineage as I recall it. I am pretty sure this is correct. But I am sure many of you will put me right if I am wrong ;)
From BSD:
TCP/IP
C Shell
Sockets
Process groups and job Control
Some signals
FFS in UFS guise
Multi groups/file ownership
Some system calls
COFF
From SunOS:
vnodes
VFS
VM
mmap
LWP and kernel threads
/proc
Dynamic linking extensions
NFS
RPC
XDR
From SVR3:
.so libs
revamped signals and trampoline code
VFSSW
RFS
STREAMS and TLI
IPC (Shared memory, Message queues, semaphores)
Additional features in SVR4 from USL:
new boot process.
ksh
real time extensions
Service access facility
Enhancements to STREAMS
ELF
> I wonder if >pdd ... was in any way any inspiration for /proc?
That may have been a bit too cryptic. "pdd" ('process directory directory')
was a top-level directory in the Multics filesystem which contained a
directory for each process active in the system; each directory contained data
(in segments - roughly, 'files', but Multics didn't have files because it was
a single-level store system) associated with the process, such as its kernel-
and user-mode (effectively - technically, ring-0 and ring-4) stacks, etc.
So if a process was sitting in a system call, you could go into the right
directory in >pdd and look at its kernel stack and see the sequence of
procedure calls (with arguments) that had led it to the point where it
blocked. Etc, etc.
Noel
>Date: Wed, 11 Jan 2017 02:16:26 +0000
>From: Steve Simon <steve(a)quintile.net>
>To: tuhs(a)tuhs.org
>Subject: [TUHS] Rje / sna networking
>Message-ID: <05DECAED-065A-4520-805A-D86CF1596A01(a)quintile.net>
>Content-Type: text/plain; charset=us-ascii
>Casual interest,
>Anyone ever used RJE from SYS-III - IBM mainframe remote job entry
>System? I started on Edition 7 on an interdata so I am (pretty much) too young
>for that era, unless I am fooling myself.
>-Steve
In the 90sh DEC in Europe had a number of products on top of SCO UNIX
3.2V4.2 calling DECadvantage (from the German part of former Philips
Information Systems). Included were an SNA environment with 3270
display/print, 3770/RJE, and APPC. I've used RJE for downloading daily
reports in one of the banks here in Thailand. Long time ago though.
Still have various sample scripts I put together that time.
> /proc came from research
Indeed it did.
> /proc was done by Roger at AT&T (maybe USL). I recall him telling me that
> he was not the original author though and that it came from PWB.
Roger Faulkner's /proc article, recently cited in tuhs, begins with
acknowledgment to Tom Killian, who originated /proc in research.
(That was Tom's spectacular debut when he switched from high-energy
physics, at Argonne IIRC, to CS at Bell Labs.)
doug
I asked:
> I wonder where the inspiration for the Unix job control came from? In
> particular, I can't help but notice that Control-Z does something very
> similar in the PDP-10 Incompatible Timesharing System.
Jim Kulp answered:
> The ITS capabilities were certainly part of the inspiration. It was a
> combination of frustrations and gaps in UNIX with some of those
> features found in ITS that resulted in the final package of features.
Casual interest,
Anyone ever used RJE from SYS-III - IBM mainframe remote job entry
System? I started on Edition 7 on an interdata so I am (pretty much) too young
for that era, unless I am fooling myself.
-Steve
Doug McIlroy:
There was some pushback which resulted in the strange compromise
of if-fi, case-esac, do-done. Alas, the details have slipped from
memory. Help, scj?
====
do-od would have required renaming the long-tenured od(1).
I remember a tale--possibly chat in the UNIX Room at one point in
the latter 1980s--that Steve tried and tried and tried to convince
Ken to rename od, in the name of symmetry and elegance. Ken simply
said no, as many times as it took. I don't remember who I heard this
from; anyone still in touch with Ken who can ask him?
Norman Wilson
Toronto ON
Reputed origins of SVR4:
> From SunOS:
> ...
> NFS
And, sadly, NFS is still with us, having somehow upstaged Peter
Weinberger's RFS (R for remote) that appeared at the same time.
NFS allows one to add computers to a file system, but not to
combine the file systems of multiple computers, as RFS did
by mapping uids: NFS:RFS::LAN:WAN.
Doug
> From: Chet Ramey
> /proc was done by Roger at AT&T (maybe USL). I recall him telling me
> that he was not the original author though and that it came from PWB.
> The original implementation was done by Tom Killian for 8th Edition.
I wonder if >pdd (which dates to somewhere in the mid-60's, I'm too lazy to
look the exact date up) was in any way any inspiration for /proc?
Noel
Wasn't ksh SVR4... It was in the Xelos sources @Concurrent Computer which was an SVR2 port. Xelos didn't do paging but the source in 87 or 88 or so had ksh in it.
I. built it for SVR4 on my Xelos 3230 back in the day.
Bill
Sent from my android device.