On Wednesday, June 5th, 2024 at 3:17 AM, Andrew Lynch via TUHS <tuhs(a)tuhs.org>
wrote:
Hi
Out of curiosity, what would be considered the most direct descendent of Unix available
today?
...
Thanks, Andrew Lynch
I don't think this question has one correct answer, rather, it really depends on your
definition of purity. My two cents:
From a purely source code perspective, much of System V and its kin can be traced back to
the Research implementations of various bits. Between V7 and V8, Research incorporated a
fair deal of BSD, but at a time prior to the majority of BSD being reimplemented as
unencumbered source code, so in many parts of the codebase, the actual source still very
much was descended from V7, just with some BSD "accent" incorporated. To me one
of the most notable userland divergences in the commercial stream is the init system, what
with commercial UNIX aligning more with what is seen in CB (and allegedly USG Program
Generic 3, but I have no direct proof, just speculation based on alleged manpages.)
In any case, if you did a huge diff of the source code between say V7 and SVR4, you would
likely find a fair deal of commonality, especially in userland.
Taking an alternate viewpoint, BSD, while entirely rewritten, strove for functional
compatibility with the bits that were being replaced, and in many ways BSD
"behaved" more like Research, in reality and in "spirit". Again using
the init system as an example, to this day the BSDs use an init system much closer to
Research init than USGs run-level system. BSD also shows up in many more UNIX
"places" than System V does. Indeed primarily System V distributions over time
incorporate aspects of BSD due to their proliferation elsewhere in the UNIX world, much
more than commercial backflow in the other direction.
Given this, my humble opinion (which again this sort of thing I believe is largely a
philosophical matter of opinion...) is that the BSD line captures the spirit of Research
UNIX much more than System V does, while System V retains much more of the source code
lineage of what most folks would consider a "pure" UNIX. Of course all of this
too is predicated on treating V7 (really 32V...) as that central point of divergence.
Good luck in your quest to find the answer to this question. I suspect it has no concrete
answer and rather is one of those more philosophical quandaries that makes UNIX something
worth pondering on this level. That all said, eventually I intend via my mandiff project
to determine which of the three "last" historic UNIX manuals (SVR4, 4.4BSD, V10)
has the highest parity with V7 literature, and similar work has been attempted via source
code (D. Spinellis git repo[1]), so if that sort of quantitative analysis is more your cup
of tea, then it may be possible to boil it down to ratios of "is and isn't
V7" in codebases...but that sort of thing doesn't paint the full picture. That
and the linked git repo doesn't incorporate System V for legal reasons...a bridge I
haven't had to cross yet as I'm between V6 and V7 on my own analysis presently.
One last disclaimer as I know this question can also stir up matters of pride, this is all
opinion, and I think only can be opinion at this point, but my opinion is also only based
on observations from afar. I wasn't a key player in this stuff, those folks'
thoughts carry much more weight than mine do, but I also suspect, like good parents, folks
with more heft to their involvement in things know the value in not playing favorites and
letting their issue stand on their own.
- Matt G.
P.S. Can you tell this is one of my favorite questions to ponder :)
[1] -
https://github.com/dspinellis/unix-history-repo/branches/all?page=9