From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,MAILING_LIST_MULTI autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 3262 invoked from network); 2 Mar 2023 01:33:58 -0000 Received: from minnie.tuhs.org (50.116.15.146) by inbox.vuxu.org with ESMTPUTF8; 2 Mar 2023 01:33:58 -0000 Received: from minnie.tuhs.org (localhost [IPv6:::1]) by minnie.tuhs.org (Postfix) with ESMTP id 869F9435E4; Thu, 2 Mar 2023 11:33:52 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tuhs.org; s=dkim; t=1677720832; h=from:from:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:list-id:list-help: list-owner:list-unsubscribe:list-subscribe:list-post; bh=anIhljH14oFr6clf0z4zNL6mYJnb+RJGTTX1qCWhTY4=; b=x1TvWjfhPdZLg8Y6n2hrN52THrVnEadV4n5sB/uOU4a7eR8YFa2ljsdOVYIUsrxULhV2ya hNMT8UFprqDo0PDnqIOBWqydeFhT8GZN9pNjx2ciE/WB3nNvh42Th4sKSJbIYAuu8jMCNd bec5+8mHKv6DLU5Zb0fUmagCipOpocA= Received: from mail-4318.protonmail.ch (mail-4318.protonmail.ch [185.70.43.18]) by minnie.tuhs.org (Postfix) with ESMTPS id B34BD434B3 for ; Thu, 2 Mar 2023 11:33:45 +1000 (AEST) Date: Thu, 02 Mar 2023 01:33:32 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1677720823; x=1677980023; bh=anIhljH14oFr6clf0z4zNL6mYJnb+RJGTTX1qCWhTY4=; h=Date:To:From:Subject:Message-ID:Feedback-ID:From:To:Cc:Date: Subject:Reply-To:Feedback-ID:Message-ID:BIMI-Selector; b=RzEGeUZ4wBKb7TO9LtCIRTNzKRUhaP+wr7YbqkEI1FaZ0Dy1vNTX2A3CfoOgHxeXg dnv5YaJbp8Rbbh2V7mhHkLWLz6w5OMGa2KAI+7cVbHFqZ7VAPO7kCsGRQbn16URxlM gZtkhfdlTBH3AbgSMbJ168FhNLpAMBrGAXaQ3d1wjEddURD7xEPdj6ilCWEhUV/s9S 3GHfmPjHtblBe3f/yJzcNZ1uZhKTrk5+SoUUWlsqfRxPuC7XtRjrZoWLy6KctL283O tiKMDr9KLtydgRre8VPyNRG5uuuhVnOy5HuRXsOnYc9J3dSNG2e2tYoVlrEd38OUkE qVgey7EBEo2SA== To: The Eunuchs Hysterical Society Message-ID: Feedback-ID: 35591162:user:proton MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Message-ID-Hash: LWCSOESGCZQANKLD5NNHPEFZG6EBYYV6 X-Message-ID-Hash: LWCSOESGCZQANKLD5NNHPEFZG6EBYYV6 X-MailFrom: segaloco@protonmail.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.6b1 Precedence: list Subject: [TUHS] Init History Ala MERT, CB-UNIX, and USG Generic List-Id: The Unix Heritage Society mailing list Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: segaloco via TUHS Reply-To: segaloco So now that I'm done futzing with the 4.1 manual for a while, I've decided = to look around a few others to try and get a better feel for the continuity= of different features as well as documentation practices between branches.= On that note, the more I compare, the more continuity I find between PWB = 1.0 and UNIX System III. Between that, various emails here, and some info = from Clem, I feel fairly confident calling System III and V as well as the = 4.1 in between PWB releases, at least as far as version continuity is conce= rned, so I may start using that nomenclature more here and there. On the f= lip side, the name UNIX/TS seems to bear less and less relevance outside of= whatever efforts it did originate with in the late 70's. I eventually mea= n to aggregate all the references I've found together to develop a better p= icture of what that was, but just know that documentation consistency point= s to PWB 3, 4, and 5 as the true identity of the USG releases in the 80s, n= ot UNIX/TS as I have referenced previously. So now for an interesting bit of init history I've managed to piece togethe= r. The 4.1 manual still indicates the same init system as System III, base= d on a file called /etc/inittab but with a slightly different format and se= mantics from what we ultimately see in System V. That init, seen earliest = thus far in PWB 3.0, seems to have been developed around that time. I'm st= ruggling to find the email right now but I think someone on the list mentio= ned having written this one in either '79 or '80. As for the init in Syste= m V, it likely entered the PWB line from CB-UNIX based on the CB-UNIX 2.3 m= anual which can be found here: https://www.tuhs.org/Archive/Distributions/U= SDL/CB_Unix/cbunix_man5.pdf . I say likely as some recent perusal of the M= ERT Release 0 manual has now cast some doubt on that. So to start, CB-UNIX= 2.3 appears to be somewhat contemporaneous with UNIX 5.0 in that the manua= l has pages labeled specifically UNIX 5.0. That said, the issue date on th= e front pages of the manuals is over a year apart, so the 5.0 additions cou= ld be just that, added pages after the formal 2.3 issue. Anyway, in common= between them is an init system utilizing likewise a file named /etc/initta= b, but with a slightly different format and some expanded functionality. T= he CB-UNIX manpage for this inittab(5) can be found on page 29 of the above= document. I had never looked further in that one though, and a couple day= s ago, I was cataloging all of the pages present in that manual when I came= across page 34. This is a page for lines(5) that simply says "No longer u= sed. See inittab(5)." Curious, so perhaps this stream of init once called= the file /etc/lines, then renamed it inittab to match PWB? The very next = page answers part of that question. Page 35, also lines(5), contains a des= cription of a file very similar to the inittab(5) entry except a line is 5 = fields wide, including a "shellcm" field. Unfortunately, the remaining pag= es of this entry are not in the PDF, presumably this was a mistaken entry. = I have another such mistaken entry in a moment. Anywho, what is there of = the page indicates the id field actually had an impact on the /dev entry fo= r the terminal line in that it would be named /dev/ln, and goes on to s= ay that if a line monitor other than /etc/getty is used this must be accoun= ted for. So interesting little note there about using something besides ge= tty for line monitoring. Otherwise the page reads pretty similar for what = is there, indicating a likely continuity between this /etc/lines-based init= and the CB variant of the /etc/inittab system. One interesting note is th= at /etc/lines supports C-style comments, /etc/inittab instead uses sh conve= ntions. This lines file also indicates there is a run-level 7 which may ha= ve become the S run-level. The respawn and wait actions are there, and tha= t's where the page cuts off, so no further evidence here of what was in /et= c/lines in 1979 in CB-UNIX 2.1. By 1980 it is replaced with /etc/inittab. So aside from the lines(5) stuff, this has been pretty well understood that= System V init came from or at least strongly resembles CB-UNIX init as far= as what is available documentation-wise. Well, as I mentioned above, the = MERT Release 0 manual may shed some further light on this matter, albeit wi= thout fully illuminating it. So first, some MERT context. This document d= etails the origins of MERT Release 0 pretty succinctly: https://www.tuhs.or= g/Archive/Documentation/Manuals/MERT_Release_0/Pgs%2037-38%20Introduction.p= df . Basically MERT 0 is the first "supported" release by the "Small Syste= ms Planning and Development Department (8234)" at Murray Hill. The manual = is based on the USG Program Generic Issue 3 version of the manual which was= issued in early 1977. This manual, in turn, is from October 1977. This i= ntro goes on to indicate that this product will eventually be released inst= ead as "UNIX/RT" to accompany the in-progress "UNIX/TS" which is said here = to be based on V7 with additions from USG Generic 3 and PWB. The MERT-spec= ific portion of this manual is technically considered the second edition, p= resumably in that the first was the material maintained and distributed by = Lycklama and Bayer. So in any case, the landscape of the time seems to be = that V7 is starting to go around to the various streams, with UNIX/TS in th= e works to present it with USG/PWB stuff and then UNIX/RT being planned as = the MERT-counterpart. This isn't quite my focus here, but does provide som= e UNIX/TS "stuff" that has been explained to varying degrees already. So w= here this all relates to the init though is this: https://www.tuhs.org/Arch= ive/Documentation/Manuals/MERT_Release_0/Pgs%2001-38%20Unix%20Programmer's%= 20Manual%20for%20MERT.pdf On page 4 of this document is a list of pages tha= t one must replace in a standard USG Program Generic 3 manual to produce a = MERT Release 0 manual. In other words, this essentially lists which pages = are changed for MERT. Of interest to this discussion is the V File Formats= section on page 5. The instructions are to remove a page called "lines" a= nd to add a page called "ttys". If you then go on to read through the manu= al, in section V, the ttys file suggests an init system akin to the researc= h init system. This is also indicated by replacement of the init page itse= lf with one describing a system closer to that of research than anything el= se: https://www.tuhs.org/Archive/Documentation/Manuals/MERT_Release_0/Unix%= 20Programmer%20Manual%20-%20UPM%20-%20White%20Tabs/System%20Programs%20-%20= man8/init.8.pdf . So based on this, it sounds like USG Generic 3 may have = had the same /etc/lines init that we see hints of in CB-UNIX. This also th= en suggests that CB-UNIX 2.3 may have some basis in USG Generic 3 just like= MERT. Based on yet another email I'm struggling to find, another user her= e had offered up some info regarding a USG Generic 2 manual he has from day= s past. That manual contained an init similar in flavor to the research in= it as well, indicating that this init system shows up as part of Generic 3. So now for that other misprint that also bears some relevance. In the UNIX= 4.1 manual I recently finished restoring, there was an errant gettydefs(4)= page which was only the very last few lines of the manpage (basically the = SEE ALSO) section. This file is not part of the pages one needs to discard= to create a MERT manual and is not otherwise in the manual, so does not ap= pear to be a part of Generic 3. However, this file does show up in CB-UNIX= 2.3, and from there presumably gets sucked into System V, but the misprint= suggests such a manpage existed somewhere that would've accidentally wound= up in a UNIX 4.1 typesetting run. In any case, it is very well possible t= his init system may have started popping up in the PWB line before 5.0, but= I can't confirm this. In any case, to consolidate this information, here's a bit of a timeline fo= r the init as I see it: 1975 May - V6 issued. Begins getting adopted as the standard = base for various streams 1976 January - USG Generic 2 issued. From what has been discussed= , this still has a research-style init based on /etc/rc and /etc/ttys 1977 March - USG Generic 3 issued. This allegedly features the = addition of the /etc/lines-based init that eventually becomes System V init 1977 May - PWB 1.0 issued. Forks the documentation style quit= e a bit, starts trends that continue to System III and beyond, still resear= ch-style init 1977 October - MERT 0 issued. This uses Generic 3 as a base but r= everts to a research-style init system 1979 January - V7 issued. Still using /etc/rc and /etc/ttys 1979 November - CB-UNIX 2.1 issued. This appears to be using a Gen= eric 3-style /etc/lines init 1980 June - PWB 3.0 issued. This has the first known appearanc= e of /etc/inittab but with a different implementation from USG Generic 3 1981 May - CB-UNIX 2.3 issued. By this point, /etc/lines has = morphed into /etc/inittab and /etc/gettydefs has been added 1981 June - PWB 4.1 issued. The manual still features the PWB = 3.0-style init but an errant page suggests at least possibly /etc/gettydefs= support 1982 June - PWB 5.0 issued. The transformation is complete, PW= B now uses Generic 3-descended init with CB-UNIX gettydefs This all makes me wonder what PWB 2.0 and UNIX/TS (if it ever coalesced) wo= uld've used. Precedent would say PWB 2.0 would use research-style init and= UNIX/TS would've likely used Generic 3 if the aim was continuity with the = USG Generics, but who knows. Anywho, hope that info's helpful to anyone el= se researching init systems. Of course if you have info that contradicts o= r enhances any of this I'd love to hear it! - Matt G.