[TUHS] Unix v7 icheck dup problem

Noel Chiappa jnc at mercury.lcs.mit.edu
Sun Mar 5 00:41:34 AEST 2023


    > From: Clem Cole wrote:

    > It had more colorful name originally - fsck (pronounced as fisk BTW)
    > was finished. I suspect the fcheck name was a USG idea. 

I dunno. I don't think we at MIT wold have gratuitously changed the name to
'fcheck'; I rather think that was its original name - and we pretty
definitely got it from CMU. 'fsck' was definitely descended from 'fcheck'
(below).


    > From: Jonathan Gray

    >> (are 'fsck' and 'fcheck' the same program?)

    > https://www.tuhs.org/cgi-bin/utree.pl?file=V7addenda/fsck

Having looked the the source to both, it's quite clear that 'fcheck' is a
distant ancestor of 'fsck' (see below for thoughts on the connection(s)). The
latter has been _very_ extensively modified, but there are still some traces
of 'fcheck' left.

A lot of the changes are to increase the portability, and also to come into
compliance with the latest 'C' (e.g. function prototypes); others are just to
get rid of oddities in the original coding style. E.g.:

  unsigned
        dsize,
        fmin,
        fmax
  ;

Perfectly legal C, but nobody uses that style.


    > From: Jonathan Gray

    > fcheck is from Hal Pierson at Bell according to
    > https://www.tuhs.org/Archive/Distributions/USDL/CB_Unix/readme.txt

Hmm. "the major features that were added to UNIX by CB/UNIX ... Hal Person
(or Pierson?) also rewrote the original check disk command into something
that was useful by someone other than researchers."

I poked around in CB/UNIX, and found 'check(1M)':

  https://www.tuhs.org/Archive/Distributions/USDL/CB_Unix/cbunix_man1_01.pdf

(dated November 1979). Alas, the source isn't there, but it's clearly in the
fheck/fsck family. (CB/UNIX also has chkold(1M), which looks to me like it's
'icheck'.)

So now we have a question about the ancestry of 'check' and 'fcheck' - is one
an ancestor of the other, and if so, which - or are they independent
creations? Without the source, it's hard to be definitive, bur from the
messages (as given in the manual), they do seem related.

Clem's message of 3 Mar, 14:35 seems to indicate the the original was from
CMU, authored by Ted Kowalski; he also:

  https://wiki.tuhs.org/doku.php?id=anecdotes:clem_cole_student

says "Ted Kowalski shows up for his OYOC year in the EE dept after his summer
at Bell Labs ... He also brought his cool (but unfinished) program he had
started to write originally at U Mich - fsck". So maybe the CB/UNIX 'check' is
descended from a version that Ted left behind at Bell Labs?

Is anyone in touch with Hal Pierson? He could surely clear up these questions.

	Noel


More information about the TUHS mailing list