- Cost Breakdown
- The Operating System
- Hardware
- Purchasing the DPF
The Operating System
Given my limited funds, Linux was the only real option for an operating system. I could have installed DOS or Windows 95 from an OEM copy I had lying around, but technically this is illegal. Since these were to be presents for my family, I really wanted to avoid that kind of unethical conduct, although the thought of the BSA busting in on my parents was amusing!
Deciding to use Linux was the easy part; the real question was which Linux. After a few minutes of searching online, I realized that the options were almost endless: Red Hat, Slackware, SUSE, Mandrake, and so on. Fortunately, the fact that I was most likely going to be using an old laptop helped dry up the pool of candidates.
My first search was for "small Linux." The results were humorous. Damn Small Linux seems to be rather popular; but again, this was to be a family gift and I couldn't see myself explaining that one to my in-laws. I next searched for "Linux boot floppy," which proved to be more successful. I choose this search because my laptop most likely would not have a CD-ROM and therefore would require a floppy-based installation. This landed me at the floppy page of LinuxLinks.com, which lists more than 30 versions of Linux that fit on a floppy. While many of them serve a unique purpose, such as a bootable router or disk-wiping tool, several stood out. I researched each version for a few minutes, but came to the conclusion that muLinux was my best option. First, many sites online were devoted this operating system and its uses; second, it seemed to be fairly popular with little in the way of negative feedback. So, I took a chance and went to the muLinux web site to learn more.
According to the developer's web site, "muLinux is a minimalistic Linux distribution, suitable for old computers. X11, GCC, VNC, SSH, Samba, Netscape etc. are supported on additional add-on floppies. It can be installed from DOS/Win9x or Linux, without repartitioning." The mu in the name represents a millionth unit, or simply stated, is a way to say "very small." Figure 1 shows the muLinux boot screen.
Figure 1 The muLinux boot screen.
One of the key requirements for my operating system was that it had to reside on the laptop. In addition, since I was going to display pictures, I would need an image-processing program and most likely the X Window System with some window manager. Not familiar with Linux? The X Window System (popularly but incorrectly known as "X windows") gives Linux a GUI into which a window manager can connect and create the windows/graphics most people expect from their computer.
The muLinux web site had lots of information about the packages and components included with the operating system. I was able to review the /usr/bin directory (Linux program list) and found most of the normal executables. In addition, muLinux includes numerous add-ons that can be installed from 1.722MB floppy images, as shown in the following table.
Abbreviation |
Product |
Description |
SRV |
Server Extension (Samba, Smail, etc.) |
Popular services found on Linux |
WKS |
Workstation Extension (mutt, ssh, PGP, etc.) |
Popular client programs |
X11 |
X Window system (VGA-16, fvwm95, Afterstep, wm2) |
All about X |
VNC |
VNC (zip, UPX, etc.) |
Very popular remote-control program |
GCC |
GCC reduced (make, nasm, yacc and lex, Fortran, Pascal) |
Create programs |
TCL |
Tcl/Tk (with a lot of demos) |
Popular program language |
TEX |
TeX typesetting system |
Formatting of text files |
PERL |
Perl language and libc6 support |
Great for scripts |
EMU |
Wine, DosEMU |
Emulation software |
JVM |
Java Virtual Machine (Kaffe compiler, sshd) |
Support for Java programs |
NS1 |
Netscape Part 1 (SVGA XServer) |
Required for SVGA and GUI browsing |
NS2 |
Netscape Part 2 |
Ditto |
As I discovered, part of the brilliance of muLinux is that the components of these packages overlap to reduce their size. For example, the VNC package includes an image viewer and the NS1 package includes the files needed for SVGA (good quality graphics) output.