The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] V8 4BSD or 32V Based? (was: Unix V8 Chaosnet, any takers?)
@ 2022-07-15 17:15 segaloco via TUHS
  2022-07-15 17:50 ` [TUHS] " Warner Losh
  2022-07-16  9:31 ` Paul Ruizendaal
  0 siblings, 2 replies; 6+ messages in thread
From: segaloco via TUHS @ 2022-07-15 17:15 UTC (permalink / raw)
  To: Paul Ruizendaal; +Cc: The Eunuchs Hysterical Society

Re-subject'd as this part of the conversation diverges.

Found the quote that I was thinking of when I said that:

"Research Unix 8th Edition started from (I think) BSD 4.1c, but with enormous amounts scooped out and replaced by our own stuff." - Dennis Ritchie

The "I think" adds some murkiness for sure.  There's definitely a good chunk of code from 4BSD.  Compare init, getty, locore.c (as opposed to .s in V7 back).  Heck, even the main.c between the two kernels are more similar to each other than V7.  I would almost opt towards calling that being rebased on 4BSD rather than V7 with bits and pieces of BSD added.  I could see it being more beneficial to start with 4BSD and tack on necessary Bell bits rather than take V7/32V and try and shoehorn in the VM implementation for VAX.

The 4.1cBSD copy on the archive does appear to be pretty different, so in terms of raw comparison, I suspect the basis is 4BSD rather than 4.1cBSD.  I don't know that we have a clean copy of 4.1BSD gold, I'd be interested to see if the structure of the source code changed between 4.1 and 4.1c, as 4.1c does exhibit the new organization by the BSD folks, 4BSD still shows folders like cmd, lib, and so on.

Not trying to be combative by any means, but I've been doing a bit of research lately into when V8 was snapped from BSD and where Bell and Berkeley then diverged from that last major confluence, especially with a focus on init and other early stages of userland.

- Matt G.

------- Original Message -------
On Friday, July 15th, 2022 at 1:51 AM, Paul Ruizendaal via TUHS <> wrote:

> > Message: 6
> > Date: Thu, 14 Jul 2022 17:51:39 +0000
> > From: segaloco
> >
> > Given V8 being rebased on 4(.1?)BSD, I suspect the path of least resistance would be to just start grafting V8 code onto the working 4.1BSD.
> I doubt that V8 is "rebased on 4(.1?)BSD": in my understanding it ported some code from 4xBSD, but it is a different code base.
> As I currently understand it, the V8 kernel:
> - is a further development from 32V
> - retains the code organisation of the V5..32V versions
> - adds virtual memory code from BSD
> - adds select() from BSD
> and then adds all the V8 innovation on top of that (streams, file system switch, virtual proc file system, networking, remote file system, support for the Blit terminal, etc.)
> In particular in the area of networking the V8 kernel is organised quite differently from the 4xBSD kernel, including the Chaosnet driver (i.e. it is streams based).
> Paul

^ permalink raw reply	[flat|nested] 6+ messages in thread
* [TUHS] Re: V8 4BSD or 32V Based?  (was: Unix V8 Chaosnet, any  takers?)
@ 2022-07-16 19:27 Paul Ruizendaal
  0 siblings, 0 replies; 6+ messages in thread
From: Paul Ruizendaal @ 2022-07-16 19:27 UTC (permalink / raw)
  To: The Eunuchs Hysterical Society

> Regarding select, I recall that Dennis implemented it and passed it to
> Berkeley*, but maybe not. He certainly had a hand in its design; I
> distinctly remember talking to him about it after one of his trips out
> west.

That is an interesting comment. DMR was on the steering committee for what would become 4.2BSD.

I once spoke with Kirk McKusick about the origins of the sockets API and I think he told me that there was a lot of debate in the committee whether descriptor readiness API should be stateful (like Haverty’s await() ) or stateless (like select). According to Sam Leffler (who I think added select() to 4.1c BSD) the select system call was somewhat modelled after the ADA select statement. 

I am speculating now, but I would not be surprised if dmr favoured the stateless design and contributed to its design.


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-07-16 19:28 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-15 17:15 [TUHS] V8 4BSD or 32V Based? (was: Unix V8 Chaosnet, any takers?) segaloco via TUHS
2022-07-15 17:50 ` [TUHS] " Warner Losh
2022-07-15 18:41   ` segaloco via TUHS
2022-07-16  9:31 ` Paul Ruizendaal
2022-07-16 10:31   ` Rob Pike
2022-07-16 19:27 Paul Ruizendaal

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).