[TUHS] Early supported UNIX manual

segaloco via TUHS tuhs at tuhs.org
Sat Dec 24 18:58:06 AEST 2022


Your reference to sema(2) in CB-UNIX prompted me to go check the source and curiously, that isn't in sysent.c:  https://www.tuhs.org/Archive/Distributions/USDL/CB_Unix/SourceCode/cbunix6.pdf (p. 50).  However, there is a sys5.c with some semaphore stuff in it.  Not how the code gets from the sigcall entry to that file, maybe there's a CB-specific syscall aggregator like the sys3b systemcall for 3B20-specific stuff.  It had never actually occurred to me that the semaphores in SVR1 weren't the ones from CB-UNIX, I thought they just forklifted all the IPC into 4.0 from CB.  That then means the semaphores that carried through in System V originated at least in UNIX/TS 4.0, but not by way of CB.  Minor trivia, but that's news to me.  Maybe the sysV modification request logs can shed some light, I remember seeing several IPC mentions in there.

- Matt G.

------- Original Message -------
On Friday, December 23rd, 2022 at 7:30 PM, Jonathan Gray <jsg at jsg.id.au> wrote:


> On Thu, Dec 22, 2022 at 04:44:32PM -0500, Phil Budne wrote:
> 
> > Matt G wrote:
> > 
> > > One area of immediate curiosity for me is the init system, whether the pages suggest it is more in line with research (rc and ttys files) or TS (inittab, runlevels).
> > 
> > The init (VII) page mentions /etc/rc and refers to ttys (V) which says the file
> > consists of lines with three characters (enable, tty name, getty arg)
> > 
> > getty (VII) describes behaviors for 0, -, 1, 2
> > 
> > The one interesting bit in section (II) is lock (system call 62.) that
> > implements semaphores with subfunctions lock/unlock/tlock, all of
> > which take a non-negative semaphore ID called a flag.
> 
> 
> used by MERT:
> 
> https://www.tuhs.org/Archive/Documentation/Manuals/MERT_Release_0/Unix Programmer Manual - UPM - White Tabs/System Calls - man2/lock.2.pdf
> 
> "The semaphores provided in the MERT/UNIX supervisor are identical to
> those provided by the USG-UNIX Generic 3 system [8].
> [8] Brandt, R. B., Implementation of Semaphores and Messages in UNIX, MF-76-8234-076."
> https://www.tuhs.org/Archive/Documentation/TechReports/Heinz_Tech_Memos/TM-78-3114-4_The_MERT-UNIX_Supervisor_19780420.pdf
> 
> "Make (a program for maintaining other programs) was launched at the
> CSRC towards the end of the year and was immediately adopted by USG for
> the next generic release (PG-1C300 issue 2). This was a snapshot of the
> USG system at mod level 3.33 (January 1976) indicating at least three
> distinct levels of evolution: the generic releases, major and minor USG
> mod levels."
> 
> "Generic 3.0 was released in spring 1977 (delayed from January)."
> 
> Pirzada, A Statistical Examination of The Evolution of the UNIX System
> 
> "I do remember a conversation with Dennis about semaphores, though.
> He mentioned that no less than five groups inside of Bell Labs had
> hacked semaphores into the kernel. Each group did it differently."
> Steve Johnson
> https://minnie.tuhs.org/pipermail/tuhs/2017-February/009748.html
> 
> In CB-UNIX there was sema(2):
> https://www.tuhs.org/Archive/Distributions/USDL/CB_Unix/cbunix_man2_04.pdf
> 
> In System V Release 1, semctl(2), semget(2), semop(2)
> http://www.bitsavers.org/pdf/att/unix/System_V_Release_1/301-905_UNIX_System_V_Release_1_Users_Manual_Jan83.pdf
> 
> xenix creatsem(2), opensem(2), sigsem(2), waitsem(2)
> http://www.bitsavers.org/pdf/intel/system3xx/xenix-286/174385-001_Overview_of_the_XENIX_286_Operating_System_Nov84.pdf


More information about the TUHS mailing list