[TUHS] Unix v7 icheck dup problem

Clem Cole clemc at ccc.com
Sat Mar 4 05:35:37 AEST 2023


On Fri, Mar 3, 2023 at 1:22 PM Noel Chiappa <jnc at mercury.lcs.mit.edu> wrote:

>     > From: KenUnix
>
>     > So is it safe to say there is no fsck or similar for v7?
>
Last fall, I recovered the original CMU sources to both. And I told Warren
after I clean things up, I'll push them to TUHS both source and binaries
but I have a number of other projects ahead of that.


>
> Yes, but that does't talk about '_end' not being defined if there
> are missing externals, either!

>From V7: https://man.cat-v.org/unix_7th/1/ld     <--- this should only be a
URL - let me know if Chrome/gmail is peeing on it again

The symbols `_etext', `_edata' and `_end' (`etext', `edata'
          and `end' in C) are reserved, and if referred to, are set to
          the first location above the program, the first location
          above initialized data, and the first location above all
          data respectively.  It is erroneous to define these symbols.

Then check the section 3 man page: https://man.cat-v.org/unix_7th/3/end
which describes them in more detail.



> Interesting. I wonder how 'fcheck' made it from CMU to Bell?

The late Ted Kowaski - the primary author. Undergrad EE UMICH (Bill Joy's
roommate) and Grad EE at CMU (and my programming/lab partner originally in
Dan Sieworick's grad RT course and Gordon Bell System Architecture
courses). MTS and TSS had a disk scavenger from IBM for their common FS
[which Ted has used at MICH and I had CMU].  icheck/ncheck/dcheck seemed
less useful.
A new program was started when he was an undergrad and never finished.

It had more colorful name originally - fsck (pronounced as fisk BTW) was
finished.  I suspect the fcheck name was a USG idea.    The reason why many
of the error messages are upper case is that was the IBM convention which
both MTS and TSS used for system programs.


> I'm pretty sure the reason we liked it was not any auto-repair
> capabilities,
> but ISTR it was somewhat faster than icheck/dcheck. (Interesting that they
> were
> separate programs in V6; V5 seems to have only had check
>
CMU only ran V5 for a very short time and never in the EE Dept.  I only
knew of one system that ever ran it.  We were a hacked V6 most of the time
I was there.  V7 showed up at the end, although parts of V7 and PWB leaked
to us via different students who worked at Bell (that story was similar at
many sites).


>
> which contained the functionality of both. I wonder why they were split?
> Space?
>
Table space to support larger disk was always a huge problem. Since we
mostly ran UNIX on 11/40 class systems, it had to be able to run on non-I/D
(45 class) machines. A lot of creativity was used to keep it small.  It was
fine for RK05s and RP03s but Ted's temp space hack was done when the first
RP04-like disk showed up - it was an IBM disk on an aftermarket Unibus
controller made to look like an RP in EE and then Dan Klein and I got the
very low serial # RK07 at Mellon Institute and that was my first Unix
driver which we hacked together one weekend.
ᐧ
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.tuhs.org/pipermail/tuhs/attachments/20230303/8489a440/attachment.htm>


More information about the TUHS mailing list