On Fri, 11 Jan 2019, Clem Cole wrote:
Right and select(2) was created by Sam and wnj during
the 4.2 development.?
I've forgotten which sub-version (it was in 4.1c, but it might have been in
b or a before that).? There was a lot of arguing at the time about it's need;?
the multiple process solution was considered more 'Unix-like.'
...
I search through the SCCS code in 4.1c. There is a reference to it by
name for 4.1a in syscalls.c (82/11/13) to answer your comment.
"#38 -- 4.1a select", /* 38 = nosys */
The select system call was added in 81/02/07 with no comment. Commit
history shows in 81/10/17: "cleanup (mpx removal, old tty removal,
beginnings of select)" and in 81/10/11 "first boot with select()" which
includes lots of changes like replace lots of tty code and use
selwakeup().
But I don't see any of the select code itself until a new file
kern_descrip.c was introduced in 82/07/15. Soon after the #38 select
became obsoleted oselect and a new syscall number #93 was assigned.
(In 4.2 the select code was in sys_generic.c.)
Can someone tell me about SCCS behaviour when renaming/moving or
deleting files? In particular, I think the select() code prior to
82/07/15 had different source filenames that no longer exist and the
SCCS history was lost. Anyone else have ideas about this? I have
noticed this with other SCCS spelunking where code was removed and then
corresponding "s" files were missing -- but maybe that is just the way
the systems that our current snapshots (McKusick discs) of this history
were made from. Maybe sccs didn't checkout the history of deleted files
by default (that is my guess).