Content is scrollable

MCC Interim Release

The MCC Interim Release was the first Linux distribution capable of being installed on a machine without any other operating system being present. Below is a contemporary email from the author, Owen Le Blanc, explaining what the MCC Interim Release is and what it’s goals are.

In response to the question ‘What is the MCC release of Linux?, Owen wrote:

To: Linux-Activists

From: (A. V. Le Blanc)
Subject: MCC ‘interim’ version of Linux (was Re: two questions)
Date: 23 Apr 92 13:21:07 GMT

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

Back to History main page