To: Linux-Activists@BLOOM-PICAYUNE.MIT.EDU
From: zlsiial@uts.mcc.ac.uk (A. V. Le Blanc)
Subject: MCC 'interim' version of Linux (was Re: two questions)
Date: 23 Apr 92 13:21:07 GMT

In article <1992Apr22.195030.8492@muddcs.claremont.edu> jwinstea@jarthur.claremont.edu (Jim Winstead Jr.) writes:
>In article <EdxN7bq00awDMEveIn@andrew.cmu.edu> aw2t+@andrew.cmu.edu (Alex R.N. Wetmore) writes:
>>2) What is the MCC release of Linux?
>
>It's the Manchester Computing Center (?) release, which serves as a
>sort of extended-release, as I see it.  It includes many more
>utilities than the basic release from Linus and myself, and as a
>result comes on three (four?) floppies.

It comes on two floppies, but there are a few others available.

The Manchester ComputING CentRE was once Manchester University Regional
Computer Centre (pronounced 'murk') and later UMRCC.  The change from
'computer' to 'computing' was made (supposedly) to mark a shift in
emphasis from supporting machines to supporting the people who use
them.  (Some of the people who use them complain that the shift in
emphasis has not yet been implemented.)  The University of Manchester
has been known to claim that computers were invented here, which they
were if you define 'computer' properly.  We are a Centre, not a
Center, because (as someone pointed out in a recent note) that is
how it is spelled in 'proper' English (English + Irish + Australian +
Indian + Canadian + ...) as opposed to the American dialects.  I try
to mention MCC from time to time, since they pay me and supply me
with equipment.  I am in fact supposed to be doing other things for
MCC, and, also in fact, I do.

The MCC 'interim' releases of Linux are unofficial experiments.
They vary depending on my whims and on the time I have to give them,
usually not enough, I am afraid.  The latest so far, 0.95c+,
had (or has?) the following goals:

(a) To provide a simple installation procedure.
(b) To provide a more complete installation procedure.
(c) To provide a backup/recovery service.
(d) To backup my (then) current system!

When I first put Linux on a PC, back at 0.11, I got the standard
boot and root floppies, found there was no working fdisk, tried
edpart, which made a mess of my partition table by sorting it,
used the MINIX fdisk, and finally got a system going.  Then I
started trying to get other bits to it.  I decided this was a
bit awkward, and hoped someone would do something about it.
I also hate having to search through 3 ftp sites for useful bits,
the fragmented nature of a system which, I believe, was one of
the serious problems with MINIX, and having to compile everything
again and again because it was originally linked with some
defective version of the library, as happens often enough even
with 'mature' commercial Unixes.

Theodore Ts'o wrote the ramdisk code in the Linux kernel.  As he
remarked, it was originally designed to make it possible to store
some files on the ramdisk, and so free the disk drive for other
purposes, for example, for creating or modifying a boot floppy
so that it boots using a hard disk partition as the root device.
Both Ted and Linus warned me that the ramdisk code was inefficient,
but I thought this was no problem for an installation/backup/
recovery system.  Both also pointed out that the ramdisk uses
much more memory than it should, and this has in fact proven to
be a problem on systems with only 2mb of RAM.

Nevertheless, the latest 'interim' release from MCC does manage to
squeeze quite a lot onto TWO disks: one of which combines the boot
and root disk, and one of which I called the 'utilities' disk.
The boot disk boots, loads its root device from the same disk, and
then starts executing /etc/rc.  This runs a little script which
asks for the drive size, and mounts the utilities disk (which you
will of course have placed in the drive when you were instructed to).
The commands available on the combined boot/util combination are
approximately equivalent to those on Jim Winstead's root disk.
Of course, I have a lot more space than he does -- about 500k more --
so I use a lot of this space for tar.Z files which contain all the
usual Unix commands I can find, excluding 'man' and the compilers,
but including, for example, awk (gawk), all of the GNU shell/file/text
utilities, grep and its cousins, sed, vi, more, less, tar, compress,
uuencoding/decoding, the mtools package for reading/writing DOS
files, and make.  I also added the joe editor, for those who find
vi too alien.  The format was a bit to cramped to try to include
emacs or tex or any other monster utilities, and almost everything
I wanted fit except Kermit, shoelace (which is awful, I admit, but
works if you know how to do it), and man pages.

All of this fit on two disks, the boot disk and the utilities disk,
as I have said before.  Now I tried this out on some of my unsuspecting
friends, who made interesting suggestions and complaints.  One in
particular asked if I could add a disk containing the C compiler.
So my first additional disk (comp) contains gcc 2.1 plus the include
files and the libraries.  I couldn't fit g++ on the same disk, so I
added shoelace and a bit of g++.  (I supplied a new README file for
shoelace, explaining how to test it out from a floppy before you
overwrite your primary boot sector).  Later I added another disk
(comp2) containing the rest of g++ (include files, binaries, libraries)
and Kermit, which is too big to fit on the utilities disk.  When
I released this version (which did not include Kermit at first),
I received some favourable comments, but most people felt that
man pages should be included.  I therefore project another disk,
which should include groff, man, and man pages.  Note that these
additional disks (comp, comp2, and man) are not really part of the
'interim' version proper, though it is convenient to lump them
together.  Not also that the man disk does not yet exist, though
the binaries and patches for groff are in fact available; the
binaries are not really usable, since they include only unlinked
executables, not the groff library stuff.  When the man disk comes
out, it will probably include only preformatted man pages, with the
unformatted pages available for ftp in another format.  The pages
are collected from the GNU sources and from elsewhere, including,
of course, those from the excellent Linux-man contributors.
The man-1.0 program does not do QUITE what I would like, and so I
am messing with it -- I hate distributing things that don't do what
they should.

Contrary to my expectations, I did in fact create a sixth image,
which is called xdisk, and which -- in an awkward way -- allows
people with less than 4mb of RAM to install the 'interim' version
without using the ramdisk; they don't need my boot disk, but they
do need a standard 0.95c+ boot disk and my xdisk.

I hope this clarifies what the MCC 'interim' version of Linux 0.95c+
is, and why, when it consists of SIX disks, of which one does not
exists, while two come in two versions (US and UK keyboards), etc.,
I would still say that, properly speaking, it consists of TWO disks,
together with a number of optional extra disks.

The latest 'interim' version, while put together by me, is deeply
indebted to many other people, including Linus himself and Ted Ts'o,
who put up with a lot of hassle while I was working it up, and
Jim Winstead, some of whose bits are included.  Also included are
poe-igl-1.2, lots of GNU code, HLU's C, C++, and libraries, all GNU
in origin, but with an awful lot of work involved in porting them,
the UU-, XX- and AtoB encoding/decoding utilities by Konrad Bernloehr,
and all the people who helped with testing and by reporting bugs
and even those who just said 'Thanks'.

I would hope that the 'interim' version would influence other
versions, from which I will of course get new ideas and code.
But it would be very awkward to do the standard distribution this
way.  First of all, it is a pain producing a boot disk.  If you want
to change a letter in a text file, you have to mount, edit, unmount,
copy the disk to a file, copy the file and the image to another disk,
and then reboot.  The present system, with Linus providing boot disks
and Jim providing root disks, is more convenient in many respects -- 
but much harder for the end user.  Perhaps it will change eventually
when Linux becomes stable -- but can you ever believe it will stop
changing?

     -- Owen
     LeBlanc@mcc.ac.uk


[ The MCC "interim" release can be found in ~ftp/pub/linux/mirrors/mcc-interim
  on TSX-11.MIT.EDU.  --- Ted]