rick at linuxmafia.com
Sat Feb 21 23:25:06 PST 2009
Quoting Edmund J. Biow (biow at sbcglobal.net):
> The Dell Inspiron 7000s have Pentium II & Celeron processors between 266
> MHz & 400 MHz.
Yes, I know them well.
> I have to say, modern Linux distros just don't run very well on this
> sort of hardware.
Well, you see, that depends entirely on what you _run_ with those modern
Linux distributions. My Dell Inspiron 7000 has been out of commission
for a few years (still need to fix that glitch with the AC jack), but
I've had occasion to put modern Linux distros on a number of other
PII-class old machines -- and it's really not difficult: I just start
with Debian (still my own preference), make it run some reasonable X11
window manager such as Window Maker (still my preference), Blackbox,
IceWM, etc., _and_ I look carefully through the output of "ps auxw | more"
to make sure I'm not running anything except what *I* want to run.
For someone new to Linux (such as Mike Kirk) and to many other relative
newcomers, figuring out what's desirable or necessary, and figuring out
how to disable what isn't, can seem like a daunting task. If you're
determined to learn the ropes, as I was, back when I was a Unix
newcomer, you learn that some processes get loaded into RAM as part of
the SysVInit startup scripts (or equivalent such as UpStart for Ubuntu
and kin), some via /etc/inittab (on SysVInit systems), some via kernel
module conffiles, and some via X11 configuration files.
Let me give you a trivial example: On any of the machines where you've
found yourself grumbling about pokey Linux performance, has it ever
dawned on you to _cease_ running _six_ getty processes to run virtual
consoles, via lines in /etc/inittab? Why not? You're not using them;
they're a pure, constant waste of RAM in your usage scenario. So, why
are they still there? Why haven't you at least commented them out and
rebooted, to see if it makes a difference for performance?
On a low-RAM machine, that sort of thing does make a really quite large
difference, and it's dead-simple to try. If you haven't bothered doing
that, then you're still making the single biggest error common among
those attempting to get satisfaction from Linux on low-spec machines.
I'll get back to this matter, below.
And you get motivated to figure out how to prune those down, because you
think "Why _am_ I running all this junk? Did I decide to run it? Don't
I have better things to do with the RAM? Am I sure these processes,
that I didn't even decide to run in the first place, aren't reducing
system stability and performance?"
You think, "Well, how _do_ I determine whether I need this particular
process or not?", and you realise that a reasonable functional test is:
If you run without it for a while, and find that you don't miss it, then
obviously you didn't need it. So, you disable each in turn, and some
turn out to be needed or outright essential, and for some you say "Good
riddance." And pretty soon you have really satisfactory if not fine
performance on even a PII with 128MB RAM -- as long as you stick to
appropriate applications, e.g., AbiWord instead of OpenOffice.org Write,
Gnumeric instead of OpenOffice.org Calc, and so on.
> I tried AntiX M-7 (from last year, may have been Ubuntu based rather
> than Debian like Mepis is now) on a friend's Gateway 400 MHz with 256
> MB in live CD mode and it was excruciating. I had to edit the
> xorg.conf to get in to X (which impressed my friend) and it was very
> slow. However his CD-ROM may have been suspect, so maybe that is not
> a fair test of AntiX.
You don't expect decent performance on low-RAM machines when running in
live CD mode. Live CD mode chews up RAM!
It's a convenience for seeing what the system is like, and for doing
installation from a graphical environment, but it's _not_ intended to
provide good performance unless you also throw gobs of RAM at it.
> I've been shopping around for a good distro for my home made Via Samuel
> CPU box (maybe 800 MHz but really more like a PIII 500) with 384 MB of
> RAM and that is a slog.
Well, the VIA C3-series (ex-Cyrix) CPUs do have that cmov CPU-instruction
issue: You have to make sure that the kernel is _not_ one with i686
instruction support, i.e., you have to force use of a kernel compiled
That's the big issue with _all_ of the VIA ex-Cyrix CPUs, and I keep
seeing people doing strange things to contend with it. (Personally, I
am wary of such CPUs; just too much gratuitous almost-compatibility for
> Maybe the slow 3.2 GB hard drive is a culprit, but this thing
> actually ran Red Hat 7-9 passably in the past, I just think Linux is
> getting heavier.
No, I'm betting it's primarily a combination of that VIA CPU, which is
severely underpowered even for its era, and not bothering to seriously,
_seriously_ look through the process table and make an actual decision
about what to run and what not to run.
You cannot hope to have reasonable performance on low-spec machines with
default distro configurations. That goes triple for the runtime state
of live CDs. I guess I'm just old-fashioned, but it's blindingly
obvious to me that you would simply have to take full charge of your
configuration, know why you're running each and every process, and find
out why (and if) each process is necessary or useful, through the
obvious expedient of shutting them off and seeing if you miss them. If
you're not doing that, then you're not yet serious about getting the
best out of Linux on that machine.
Honestly, the biggest single change I've seen spread around the Linux
user community since early days is that an increasing number of people,
and not just raw newcomers, seriously think you're _done_ when the
distro installer terminates -- that it's not a necessary and obvious
next step to keep working at the details of the installation until it
fully meets _your_ needs. That's what I've always done, and what's
always been the way to get best results. Morever, it's a logical
consequence of recognising that Linux puts _you_ in charge of your own
system. You're handed that control on a platter. Why refuse to
You're right that a couple of the ncessary compnents for a Linux
installation have gotten heavier: 2.6 kernels generally take up a bit
more RAM than do 2.4 and 2.2 ones, and current-production X.org is a bit
more RAM-intensive than the XFree86 of circa 2000. However, not _that_
> I've tried XFCE-based Zenwalk, Vector, sidux and Xubuntu on machines
> of this vintage and they are also very sloooow, even with adequate
As I said, Xfce4 spends RAM like water -- just not in as profligate a
manner as do KDE and GNOME.
> Actually, if they will do the trick for you, I'd recommend trying out
> Puppy Linux or even DSL (Damn Small Linux).
I would recommend aiming for something more satisfactory and far less
Again, this bad micro-distro recommendation, which I keep hearing in
these situations, results from the underlying error of assuming that
you're done when the distribution installer finishes. I didn't
understand, for quite a while, why anyone would recommend something as
limited as DSL as a long-term solution for a machine, for no better
reason than having only circa-2000 CPUs and total RAM.
Sorry, but DSL and Puppy Linux are very limited setups, and you would
use them only because you are _radically_ short on hardware, especially
on disk space (like, 200 MB), or because for some reason you need an
absolutely barebones, tiny live CD. They are completely unsuitable for
systems that you intend to use longterm.
And, more to the point, they are horribly unsatisfactory compared to,
say, installing Debian _and not stopping_ with setup until it's
configured and pared down appropriately. Like, say, starting up only
what is required, carefully disabling the load of anything not strictly
necessary, and using something like IceWM or similar.
And that is why I picked antiX SimplyMEPIS as something to serve as a
starting point for Mike Kirk: Although I've never tried it, going by
the description, it sounds like it would _install_ a somewhat reasonable
system for a PII with 256MB and a 8GB hard drive -- a relatively
minimalist IceWM-based Debian-derivative distro with no "desktop" stuff.
I did _not_ expect that it would give satisfactory performance from the
live CD default bootup: To the contrary, the 256 MB RAM limitation and
run-from-CD operation ensure that it'd be functional but slow. The
point is, it would function and be able to install to HD without hassle,
and _then_ would function reasonably -- in addition to being
maintainable from standard package archives, and not be hampered by
extremely nonstandard architecture the way, say, DSL is.
I don't want to say I don't respect what the Puppy and DSL maintainers
have accomplished: It's always great to have a functional X11-based
live CD in a 50-85 MB business-card-sized CD image (as has been known
since, ahem, the Linuxcare Bootable Business Card). However, achieving
that sort of miniaturisation requires a whole bunch of compromises --
ones that are absolutely not in the interest of someone installing a
distribution to a system with a 8GB hard drive.
Cheers, Crypto lets someone say "Hi! I absolutely definitely have
Rick Moen a name somewhat like the name of a large familiar
rick at linuxmafia.com organization, and I'd like to steal your data!" and lots
McQ! (4x80) of users will say "OK, fine, whatever." -- John Levine
More information about the conspire