November 1999

Lighter Guts and Window Managers for Older Systems

I am not what you would call a luddite. I think technology improvement is great. I also believe properly applied innovation and redistribution are great things. All of these put together make for a great marketplace. What I did forget is that all things eventually have a limit and remembering these limits is perhaps just as important as being aware of them. This column takes a look at a chain of events I allowed to happen out of over exuberance and a slight case of temporary stupidity.

I for one am not a big fan of pictorial displays - well - at least not anymore. I used to be, sure, when I had an OS with a cool desktop environment I had these nifty pictures to show me stuff. The one important thing I kept forgetting was that my little home PC (or as I like to call it the little P75 that could and does) would eventually decide that these new spiffy managers I was dragging home once a month would eventually choke the life out of it. Piled on top of that were the never ending additions of servers (or in some cases some still there) and different distributions having different servers to run. Once again, shooting myself in the foot, I always ran on the philosophy of hey I might use that I ought to install it. Heck, it is a home system and I dutifully keep my backups (lucky for me).

Well you, being the intelligent reader, probably see where this is going. I did finally reach critical mass. Before I get into that and what led me up to that, let's take a quick peek under the hood.

What we are talking about here is actually pretty normal as far as most home UNIX users go (not those guys who get free hardware thrown at them):

  • P75 Triton Chipset
  • 256k Cache
  • Aopen S3 Virge DX (2MB Video Ram)
  • 33.6 modem (rather fast for this system)
  • 2GB HDD (Western Digital)
  • 4x CDROM (who cares)
  • 32MB RAM
  • SVGA Monitor

Not exactly an earth shattering system but running the right OS it can scream.

Now, let's take a look at the past, I had been working on and off with UNIX right up to 1995. In late 1995 I pretty much got neck deep into it by taking on both sys and net admin chores nearly full time (as in 6 of 8 hours a day). I liked it, but, was having trouble coping with the steep learning curve of in depth sysadmin (I had to build a lot of kernels - it was an rnd project) so I asked around for help, enter GNU/Linux. I picked up Slakware w/kernel 1.0.13. My window managers were olvwm, mwm and twm. I learned, I enjoyed. I didn't really bother changing that distro because I didn't have much of a reason to. It worked just fine, I could write programs left and right, shell script, whatever.

Meanwhile, back at work, the machines I am maintaining finally get some commercial workstations with a thing called CDE. Boy, did it look cool. It had nice pictures, GUI configurable schemes and everything. Wow it rocked (I hope you are seeing the sarcasm here). Anyway, I decided my twm, mwm and olvwm sucked. At the time, however (early 1997) I was beginning to feel restless and wanted to move on, so I did. I get to my new job and they toss me hardware left and right. Now at work I get a used HP Vectra 500 to do with as I please. So, I pick up Red Hat 5.0, install it and away I go. Now I have Afterstep, more pictures - yay!!!

Let's take a little side trip real quick. I am normally not the type of person who cares about fluff. I am so odd that I am writing a program that emulates a tiny boolean logic circuit, I consider that to be fun. So you see, it is all very strange behavior for someone like myself, but there is an explanation a little later.

I install Red hat 5.0 on my P75 and away I go, I install themes, toys, pretty terminals - gee life is swell. Suddenly I start having fitt's, I see GNOME and KDE and Enlightenment stuff. Plus that thing called Windowmaker. All of these look even cooler than AfterStep. So, I get Red Hat 5.1 with a hardware order, then 5.2 and finally I hit it big with GNU/Linux Mandrake 6.0. This thing is freaking loaded with stuff, it has it all, GNOME, KDE, Enlightenment, you name it! I install it at work, boy am I happy (still use it actually). I install it at home, cool, fire off GNOME+Enlightenment and . . . that was about the time I heard by PC whisper something about cutting my throat in my sleep. That was it, no more. I then tried KDE (which actually wasn't that bad) and finally WindowMaker which also fared pretty well (actually, of all the more picturesque Managers WindowMaker is about the fastest). Still I realized I simply was not getting the speed and performance I was used to on that system. So, I sat aside a block of time and did some research.

I ran benchmarks of fvwm2, mwm, twm and blackbox on my system. I was looking at these areas:

  1. total memory usage (including stuff I wanted like fvwm2's IconMan)
  2. stress against the X server - this is often overlooked but very important
  3. uptime before memory corruption

Now, before you see the results and immediately change your Window Manager, remember, I sat aside several days to monitor the performance of these and then sifted through the data (I used Python interactively to do so -- easy math!). Also take care to remember it is my computer, not yours, depending on where and how your memory is arranged, what type of busing you have and other little gotcha's the results can be severely different. All of that said, fvwm2 turned out to be the best. I was able to hand configure it to use no graphical icons, it had the least intensive plus resource hit on my system and it was the most stable.

So why did I even go there, I'm a smart guy right? I should have known Enlightenment would wreck my system but I insisted anyway. I was fighting FUD. Which, I feel, is a good excuse. I was creating the most graphically rich environment to prove to all of my pals that my little P75 that could does and does it better than your whatever. My mistake was I lost sight of why I had the thing running GNU/Linux Distro * in the first place. I realized that one night while I was working on a little histogram program on my little P75 that could and it was all text based and I got a kick out of applying colors to it using the S-lang interface. So, suffice to say after another destabilizing session of WindowMaker (which is a darn good manager) I set to work to streamlining my system. I spent a day straight learning how to fully customize fvwm2 and then built my little themes.

My next logical step will be to trim off the kernel and dump any unused filesets to get me back in the hot seat where I belong. All in all the moral of the column is, if you don't need it, don't use it, the second oldest adage of computing (the first being the universally applied if it ain't broke don't fix it).

The X Factor and Other Catch 22's

My choice of Window Manager boiled down to the oddities of X. X servers can be stressed out with certain graphics, even if they don't look all that fancy. For example, there is a Window Manager out there called wm2. It is a Window Manager, as in that is all it is for, managing Windows, not icons, not menu pinning, not configuring etc. As a result, it is actually kind of small - but - it does put stress on the X protocol because of a strange design. Same thing goes for Blackbox and can go for any Window Manager. This is related to using certain editors utilities and the like. Keep an eye on them to see what they do and how they interact with your system.

My Personal Taste

I definitely opt for function over form, simplicity versus glam. I also chose fvwm2 because it, like mwm, twm, vtwm and a couple of other managers offer a succinct interface that can be fully customized in one central location. There are no hierachies of files in my home directory, no volumes of graphics to manage. One file, one executable, that's all I need. If you do choose to increase performance by forsaking one of the graphically inclined make sure you visit the site listed below and also investigate field stripping the manager you are using now as a quick alternative to learning a whole new one.

All About Window Managers

To find out more information about Window Managers check out Window Managers for X.