Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 23 Mar 2020 16:02:02 +0000 (UTC)
From:      Warner Losh <imp@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r359246 - head/lib/libc/gen
Message-ID:  <202003231602.02NG22Gi054549@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: imp
Date: Mon Mar 23 16:02:01 2020
New Revision: 359246
URL: https://svnweb.freebsd.org/changeset/base/359246

Log:
  Document when execl and execp entered unix.
  
  For this, things are complicated. The first mention in the manual was in the 4th
  edition manual (as an add on to exec(II)).  The 2nd and 3rd editions didn't have
  these in the manual (either as a separate page, or as an add-on to exec(II)). We
  don't have good 1st, 2nd or 3rd edition distributions to look in. However,
  there's a tape labeled 'last1120c' that we do have. This tape contains the last
  version of the V2 edition of the C compiler on it (just after C got struct). On
  this tape there was a libc.sa archive that contains source for execl and
  execp. This source is sufficiently different from the V5 sources (which are the
  next ones we have sources for) and have a slightly different calling convention
  than later sources, suggesting that the early date for the last1120c tape is
  correct (in that era, the epoch changed every year, leading to a one or two year
  ambiguity on when the files could have been modified) and it should be though of
  as V2. Since this was also a time of compiler development, and the calling
  convetions are known to be under evolution, and since the rest of the sources in
  libc.sa are consistent, that's further evidence that V2 is likely. Finally, 2nd
  edition was the last version to fully support the 11/20 because it lacked many
  basic features and bell labs moved off it to the 11/45 as soon as they could
  afford to buy one, around this time era. The unix manuals make it sound like V3
  might have supported the 11/20, but the same intro could also be read to mean it
  didn't, at all, and that V3 was the first rewrite for the 11/45 ahead of the
  rewrite in C that came with V4.
  
  Taken together, the evidence leans most heavily to V2 (90% IMHO), and slightly
  to V3 (8%) or possibly V4 (2%). I've not put all this in the man page, but have
  left it here in case someone notices in the future that V4 is the first manual
  page for it.

Modified:
  head/lib/libc/gen/exec.3

Modified: head/lib/libc/gen/exec.3
==============================================================================
--- head/lib/libc/gen/exec.3	Mon Mar 23 15:39:42 2020	(r359245)
+++ head/lib/libc/gen/exec.3	Mon Mar 23 16:02:01 2020	(r359246)
@@ -316,6 +316,12 @@ The
 function appeared in
 .At v1 .
 The
+.Fn execl
+and
+.Fn execv
+functions appeared in
+.At v2 .
+The
 .Fn execvP
 function first appeared in
 .Fx 5.2 .



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202003231602.02NG22Gi054549>