posted by Howard Fosdick on Mon 11th Jul 2011 21:50 UTC
IconI've described how to refurbish mature computers in several articles. The emphasis has been on machines in the four to ten year old range -- Pentium IV's, D's, M's, III's and Celerons. But what if you have a really old computer, like a Pentium II, I, or even a 486? Can you use it for anything worthwhile? A vintage distro named Damn Small Linux answers "yes." This article describes DSL and tells how to make 1990's computers useful again. Screenshots follow the article.

WARNING: Some people feel that playing with computers more than a decade old is nothing short of idiotic. If you agree, stop reading now and save yourself the trouble of composing a clever flame. Those brave enough to enter the WABAC Machine, please continue:


Entering the WABAC Machine

Mr. Peabody and his pet boy Sherman enter the WABAC (pronounced "Way Back") computer to fix history.
The Rocky and Bullwinkle Cartoon Show, 1960. (Image: Wikipedia)


Background

486's, Pentium I's, and II's ran Windows 3.1, 95, 98, 98SE, ME, and 2000. The trouble with refurbishing any of these older versions of Windows is that you can't securely connect them to the Internet. Microsoft doesn't supply security fixes and they're long out of support. Most anti-malware vendors don't support them. If you find an anti-malware product that runs on them, it overwhelms the CPU. It's no longer practical to run internet-connected, pre-XP versions of Windows.

Windows alternatives are the way to go to. This article describes one of several Linux distributions that fills the bill. Other possibilities for include BSD variants (FreeBSD, OpenBSD, and NetBSD), DOS descendants (FreeDOS, OpenDOS), and other small operating systems (MINIXBreadbox Ensemble).

Damn Small Linux is a "turnkey" distro. It's convenient because it bundles everything you need right in the initial install. Another way to go is to take a bare-bones Linux distro like Tiny Core and build it up into the system you want. This takes more effort but ensures that only apps you need consume resources. The choice is yours.

Keep in mind that old computers simply don't have the horsepower for some tasks people use computers for today. Video? Movie-making? Lots of open windows? Web site generators? Nope. Limitations in mind, here's what old hardware offers:


Pentium: Produced: Processor Speeds: Typical Memory: Maximum Memory:





486
1989 to 2007
16 mhz to 100 mhz
2 to 16 M
varies widely
I and I-MMX
1993 to 1999 60 mhz to 300 mhz 16 to 64 M 128 M
II 1997 to 1999 233 mhz to 450 mhz 64 to 128 M 256 M
III 1999 to 2003 450 mhz to 1.4 ghz 128 M to 512 M 512 M to 1 G

Sources: Wikipedia, Tom's Hardware, personal experience. "Typical Memory" refers to how much memory you'll typically encounter in donated computers. "Maximum Memory" is the hardware limit for the maximum allowable memory. Computers vary a bit in maximum memory by manufacturer; common maximums are listed. 
Celerons are excluded from this chart because the word is a brand name for "value computers" that indicates nothing about processor speed.


Pentium III's and earlier have no resale value. You can get one free from friends, family, co-workers, Freecycle, or Craigslist. You might even have one in your own basement or attic.

Enter Damn Small Linux

Damn Small Linux or DSL was released in 2003 to create a Linux operating system for older hardware. It's based on Knoppix/Debian technology. While your mileage may vary, the basic DSL system requirements are:
  • 486 or better processor
  • 8 M memory for the command line inteface (16 M recommended)
  • 16 M memory for the graphical user interface (24 M recommended)
  • The DSL download is 50 M
DSL's targeted "sweet spot" is:
  • High-end 486's
  • Pentium I's
  • Pentium I MMX's
  • Low-end Pentium II's
If you have a more capable machine -- a Pentium II with at least 128M or a Pentium III -- I'd recommend Puppy Linux. Puppy supports a broader range of bundled applications than DSL and is more user-friendly. Read my Puppy review here. 

With a Pentium III with at least 256M and there are dozens of distros available to you. My favorite is Lubuntu. Read my Lubuntu review here.

Whatever machine you have, be sure to top out its memory. Memory is a critical resource that limits what you can do with these old machines. Bump a P-I MMX up from 32M to 128M, or top out a P-II with 256M, and you've acquired a whole new universe of possibilities. Used memory is cheap. Just like the old computers themselves, it's often free if you can find it. If not, local computer shows, eBay, and refurbishing organizations like Free Geek are excellent sources.

How Does DSL Do It?

How on earth does DSL get Linux -- with a GUI -- to run on an old P-I or a 486?

DSL disables all unnecessary daemons or services. It gives you a tool to directly manage daemons. Bundled applications were chosen specifically for their stingy resource use.

DSL will run entirely from memory if you have at least 128M. This eliminates slow CD, hard disk, or USB access and executes the system at in-memory speeds. This has a big performance impact because the drives on older computers were much slower than they are today. Remember 2x and 4x CD-ROMs?

Efficiency means trade-offs, of course. Many of DSL's apps are a bit geeky rather than easy to use. The default GUI is Fluxbox, a lightweight interface configured by text files. Fluxbox offers some eye candy but has limited support for graphical icons. My feeling is that while DSL performs miracles in reviving older computers for hobbyists, it isn't appropriate for the typical "computer consumer" or end user.

Flexibility

DSL adapts well to the system you have, rather than imposing hardware requirements. This is critical because old hardware may have missing or broken components. Maybe your system doesn't have a working CD, or maybe the disk drive is flaky. I had a Gateway Pentium II on which the USB ports never worked. (The USB 1.x specification was not entirely successful.)  DSL works around the hardware you're missing.

DSL boots from any bootable device: Live CD, business card CD, USB memory stick or pen drive, IDE compact flash drive, hard disk, zip drive, floppies, and more. Likewise, it stores data to any writeable device. You can run DSL stand-alone or under Windows as an embedded "guest OS" using the QEMU emulator. So you can run DSL from the disk of a Windows computer without repartitioning.

If you install DSL to disk, you can choose either the frugal install or a full install. The frugal install simply copies the Live CD files to disk. This gives you the speed of hard disk coupled with a very easy install. DSL's full install is a traditional Debian disk install. DSL also runs from a USB pen drive.

What You Can Do With It

Ok, so you run DSL on a low-end computer. What can you do with it? It won't do everything today's computers can, yet you can perform a surprising range of useful tasks.

DSL 4.4.10 is the current release, available since late 2008. Here's what it bundles:

Windows Interface
FluxBox, Joe's Window Manager (JWM)
Browsers
Dillo, Netrik, FireFox
Office
SIAG spreadsheet, Ted word processor with spell checker, Xpdf PDF viewer
Text Editors
Beaver GUI text editor, Nano, Vim
Email
Sylpheed
File Managers emelFM, DFM
Images Xzgv picture viewer, Xpaint image editor, mtPaint raster graphics editor
Instant Messaging
Naim, a AIM, ICQ, and IRC client
Voice Over IP (VoIP)
Gphone
Music and Video
XMMS (mp3, ogg, mpeg, cd audio) and mp321 and ogg123
FTP
AxyFTP FTP client, and BetaFTPD FTP server


Other apps include: MS Office Viewer, Postscript Viewer, Midnight Commander, Microcom, Bash Burn (CD Burning App), Monkey web server, VNCviewer, Rdesktop, Sqlite (a small and fast SQL database engine), Telnet client, Nano (a Pico Clone), and Xbase utilities (Xcalc etc.). 

DSL supports Wi-Fi, USB devices, and PC cards.  It comes with lightweight system administration tools.  Its system monitor displays system statistics -- memory and CPU use -- in the upper right-hand corner of the screen at all times. This information is helpful on resource-constrained computers. The display is unobtrusive because it appears in a small, lightweight font.

A DSL feature called MyDSL enables you to easily install applications from the DSL software repositories. Debian's Advanced Packing Tool (APT) is included. You have to enable it first by following the link to Menu -> Apps -> Tools -> Enable Apt. Then you can use apt-get to add more applications.

DSL Versus Other Distros

DSL occupies a different niche than other lightweight Linuxes. It was designed, tested and run on old computers. It retains support for many old devices. Try running current Linux distros on machines from the 1990's and you'll come to appreciate this problem right away.

DSL runs the 2.4 Linux kernel, instead of today's 2.6 kernel. For those who object that "this isn't current software," keep in mind that we're talking 1990's computers. They often aren't capable of running current software. The 2.4 kernel retains support for legacy devices that 2.6 dropped since it came out in 2003. DSL also supports the older SYSLINUX booter as well as ISOLINUX for computers that won't boot the latter.

Most current distros that run on resource-limited equipment do not test on old hardware.
Examples are Lubuntu and Tiny Core Linux. Lubuntu was first released in 2010 and has few if any users beneath the P-III range. Tiny Core 1.0 was released in early 2009. Puppy Linux supports both 2.6 and 2.4 kernels and some enthusiasts run it on the old machines DSL targets. But most Puppy users have high-end P-II's or better.

What you really have to decide here is whether you're looking for a distro with limited resource requirements, or whether you need one that specifically supports old computers as well. These are two distinct goals. DSL is your best bet for computers from the 1990's.

Here's a comparison based solely on resource. The first line below shows "best use" based on processors, while the second indicates best use based on the memory size --

Where Distros Fit

DSL-N

DSL has a larger, more current sister product called DSL-N. DSL-N weighs in at about a 95 M download and bundles a correspondingly larger group of applications.

DSL-N runs the 2.6 Linux kernel and includes the GTK+ widget toolkit Version 2. It minimally requires a 200 mhz Pentium processor with 64 M of memory. It targets P-II and P-III computers.

DSL-N's bundled applications include:  the 2.6.11 kernel and modules, Mozilla Suite 1.7.12 (browser, mail, irc, etc.), Mplayer 3.3.5 audio and video, Leafpad 0.7.9 editor/notepad, Abiword 2.2.7 wordprocessor, Gnumeric 1.4.3 spreadsheet, gTFP 2.0.18 ftp client, gaim 0.77 IM client, Xpdf 3.0.0 pdf viewer, Emelfm 0.9.2 file manager, Xpaint 2.7.6 paint program, and Cups 1.1.14 printing.

The Fate of Small Distros

By now, I imagine some readers are nearly apoplectic. But it's no longer supported!! True. The DSL project is dormant. DSL is no longer actively developed or maintained.

The immediate cause of DSL's demise was a personality conflict among the leadership (Robert Shingledecker went on to found Tiny Core Linux). But in falling inactive DSL follows the fate of many retro Linux distributions.

Why? If you target older hardware, eventually your project is more or less complete. You can't evolve the software forward because newer Linux software won't support older hardware. And you can't add more software to the distribution or it is no longer lightweight. Your distro becomes static.

The population of old hardware shrinks over time. Seven or eight years ago picking up a free Pentium I and making it useful was exciting, but today, well, you might score a free Pentium III. Maybe even a P-IV. Why play with a P-I if you could as easily get a machine two generations newer?

DSL's popularity shrinks as the hardware it targets slips deeper into history. DSL once was among the world's top ten most popular Linux distros at Distrowatch. Today the action for small Linuxes has shifted to distros like Puppy and Lubuntu, ranked 8th and 16th as of June 2011. They target P-IV's, P-III's, M's, and D's. Today this is the sweet spot of computer refurbishing.

The DSL team tried to address this natural progression by going upscale with DSL-N. But in contrast to DSL's huge popularity, DSL-N never caught on.

The Bottom Line

DSL is what it is. It's not supported. It won't change or improve. Yet it plays a useful role in providing a proven, turnkey Linux for computers from the 1990's: 486's, P-I's, P-I MMX's, and P-II's.

You can't expect to run current software on these old computers. The Linux kernel, developer toolkits, and many applications have moved on. An operating system that specifically addresses and supports these old systems is what you need.

DSL is one solution. It's complete and convenient. Put it on an old Windows box and you have a secure, useful system. You can use it for word processing, email, IM and chat, spreadsheets, personal databases, and game playing. It can be your "crash box" for suicide surfing and unconstrainted testing. It can serve as a secondary box for the basement, garage, or rec room, or as a backup if your main computer goes on the fritz. And finally, there is this: it may be old, but it's still a free computer, with all the discovery and learning that offers.

DSL is fun! If you've got an old box lying around, try it. You'll learn something while making that creaky hardware freaky.

- - - - - - - - - - - - - - - - - - - - - -
Howard Fosdick (President, FCI) is an independent consultant who supports databases and operating systems. His hobby is refurbishing computers as a form of social work and environmental contribution. Read his other articles here or email him at contactfci at the domain name of sbcglobal (period) net.

Further Information:

DSL Home Page
Community Wiki
The Official Damn Small Linux Book
Official DSL Forum (largely inactive)
Other Forums:  LinuxForums.org, LinuxQuestions.org
Other Reviews:  IT Reviews, TechieMoe, TechSource


Screenshots

All the screen snapshots you see here were taken with DSL's built-in "X Window Snapshot" utility.

The first screenshot is the DSL desktop. It shows the default Window manager, FluxBox.

DSL's desktop is not well designed for visibility. For example, the icons at the bottom of the screen have a thin black font on gray background. The menuing system (not shown) also features black on gray shaded background. The icons in the top left-hand corner of the screen have labels with special background around them, since they wouldn't be visible otherwise.

System statistics are dynamically posted in the upper right-hand corner of the screen. Immediately after system start-up, 19 processes are running, using only 25.9 M of real memory, and 1% of a single-core 2 ghz P-IV CPU. Now, that's a light system! Having these system stats always visible on-screen in this unobtrusive manner is a big plus when working on resource-constrained systems.

The Desktop


This screen shows a typical group of applications in use. They include Firefox (aka Bon Echo) with 5 tabs open, the fast simple Dillo browser hidden underneath, the emelFM file manager, and a terminal window. Total real memory: 114 M, with 36 processes running! When the graphics weren't being refreshed, CPU use idled at less than 5%.

Desktop Applications


This last screenshot shows some of DSL's office applications. Here I have opened the TED gui word processor, the MSDoc File Viewer and Converter, and the SIAG spreadsheet. The MyDSL Browser is in the upper right-hand corner of the screen. It allows you to easily download and install more applications from the DSL software repository. In the upper left-hand corner a window shows folders that hold DSL's bundled apps, along with some of its system tools. It's amazing how much useful software DSL crams into a 50M download.

Running office applications

e p (8)    58 Comment(s)

Technology White Papers

See More