Amazing is the recent interest in full, live, operating systems that can fit on a 50 MB CD-ROM. It’s totally astounding that they can cram so much onto such a tiny disk. But wait.. let’s run back to the days of old.. back to say 1988.
Note: This editorial is meant for discussion and rebuttal if any is to be had. I’m not here to pick on an OS in general. I’m here mostly because I don’t have the answers and I’m hoping that the smarter people out there can give me the answers I seek.
It’s an amazing and exciting time in computers here in 1988. Apple’s Lisa has caused a stir. Atari has a system that can appeal to the graphic hungry, as does a little company called Commodore with their Amiga. Hard drives are just swelling to almost 20Megs in size if you want to spend a couple grand and there’s a new media out that people think is so much better than those flimsy 5.25″ disks. Soon the world will rattle with the sounds of 3.5″ 800KB floppy disks being filtered through someone’s fingers like large square poker chips. Intel has the 386 chip out and someone has broken the 640K memory barrier in real mode. It’s just amazing what computers are doing.
I’ll use the Amiga for a moment since I owned one and know it’s internals enough to be able to speak with some authority. This machine had 1 MB of memory, half of that was directly accessible to the graphics chip. I used 2 x 3.5″ floppies and hadn’t a hope to have the cash to buy a hard drive at the time. But I had a pre-emptive, multitasking operating system, with a modern graphical user interface (GUI for those that need it.) that I could use to play games, write documents, ray trace, paint, do database stuff, spreadsheet and even use a modem to dial up a BBS. I actually used it to access CompuServe for the longest time. Because I’d learned the command line commands on CompuServe long before it went GUI.
The operating system was easily as stable as Windows or the Mac’s OS at the time. Which means it crashed usually at the most important moments. Like 30 seconds before your 6 hour ray trace finished tracing and would have saved the last bit of the file that would have made it readable. But such is life on the bleeding edge of technology.
Now we’ll zip ahead a bit to 1994. Computers are expensive compared to today. But they were still exciting. IBM compatible computers.. Now generically referred to as PC’s and PC clones. Are the bulk of the computers currently in people’s home and office. Intel’s 486 has been the reigning king for almost 2 years as the primary engine of domestic computing. But the Pentium is ready to hit the streets and tear up data benchmarks we’ve all grown so use to. Windows 3.1 is the primary OS of choice. And though it crashes at a blink, has a clunky interface and needs at least 4 MB of ram to run well. 16 MB will get you lots of zippiness if you have the bucks. It needs however a computer with a hard drive. Which now drives of 60-100 MB can run you as little as $200.00. It’s still a lousy platform for games. And everyone still uses DOS to play their games.
From the depths of Geekdom and it’s techno-rage crowd comes a cry that is hardly heard by the masses save those who still hope there is a better way. People who got hooked on multitasking. Multitasking like UNIX does. Like the Amiga did. That cry was a little known UNIX operating system FreeBSD, and it’s UNIX like brethren Linux.
What was that cry? I hear you ask. The cry was simply this: Windows is a slow, bloated pig of an operating system that can’t multitask to save it’s own life. This UNIX operating system (FreeBSD,Linux,Netbsd) can do what windows does look we put X-windows on it. So you have a graphical interface too. The fact that you could download these operating systems via your 14.4Kb or the speedy 28.8Kb modem was another plus. You didn’t have to pay for them. But really at this current point the fact it was free wasn’t such an issue. A person could find 3.1 Windows and MS-Dos 6 something, lying around the house usually and piracy wasn’t really thick in the minds of lawmakers.
What mattered most about these early multitasking operating systems was that they made the most out of what you had. And they were more stable than anything out there. Computers running months on end without reboot was the norm compared to the daily sometimes hourly reboots of windows. And of course the real price for using these operating systems was you had to sit, read and learn the operating system and how it interacted with your computer. It had a high tech-knowledge price compared to the click-knowledge of windows.
I’ve spent all this time dredging up history to rush you to my problem with where we sit today in the open source world and operating systems in general. Ready… set… point: Can you imagine running a modern Unix operating system on just 16 Megs of ram? I’ll go one better, 32 Megs of ram and a modern Unix system with Gnome or KDE running as your GUI.
Windows XP SP1 boots and runs on average needing around 130-180 Megs of ram just by itself to run smoothly. Linux with KDE needs around 80-140 Megs of ram. From a memory perspective the 2 aren’t really all that far apart. Cut down the auxiliary services and things and you can get XP down to around 80 Megs of ram.
Code bloat has become the norm now that Memory and hard drive space is reasonably cheap. But that same code bloat also slows down the over all speed of the operating system as that much more data has to flow through the processor and ram. ‘But! (you cry) Look at all the wonderful capabilities you have in the Desktop. Stuff almost just like Windows.’
‘Just like Windows’ .. Ironic isn’t it? they say all too often in war, you become what you hate.
To that end people in OSS have for the last 6 years or so really worked hard to try and make something to replace Windows on peoples computers. Something free, made with their own hands, and something that will always be available to the masses who simply want their little box of plastic, silicon, copper and steel to do something for them they think they need.
Is there any way we can reduce the memory footprint of what we build and use to improve overall, our UNIX of choice? Our Desktop, our Graphical User Interface? I remember ages a go when I had a 1GB hard drive and I fit Windows, Slackware and FreeBSD on it all with room to do what I wanted and GUI’s on every one. Today if you’ve only got a GB of disk space you can shoehorn in any of these but there won’t be much room for anything else. Does this mean we are better off? Are we actually doing more for all the space this bloat takes up? Or have we just become obsessed with doing something like someone else.. cough.. MS cough. Or doing something better than someone else.
In my humble opinion, Innovation was the most significant hallmark of OSS. Doing something that was smarter, better, more efficient than the big guy. We still have some astounding innovators don’t get me wrong. Fabrice is an amazing example. FFmpeg, TTC, QEMU just as a sample. Blender is another project that’s just amazing. It’s code is small, but it’s capability is HUGE! Audacity, slirp (the original user land nat/ppp/slip emulator.) These are probably the most amazing projects I’ve seen in the last 8 years of working with computers.
Open office is a great example of duplicating effort for the soul purpose of being free. It’s not really much smaller than Microsoft’s Office 2000. In general it matches most all of Office’s functions pretty closely. OSS advocates say it’s great because it gives you a choice and it’s free. I say it’s still as big a resource hog as Office.
2 years ago people whined.. ‘Mozilla is sooo huge! let’s do something and cut out all this code bloat’ Now people tout Firefox because it’s small, fast and free. When you look at the resulting differences in this anti-bloat driven craze. You realize that when you group Firefox, Thunderbird and Sunbird together you get about the same code size as Mozilla did previously. Here we’ve divvied up functionality to try and be faster, smaller better. but not really innovative.
Here are some questions I have for you to ponder, answer or gloss over:
- How small could we make a functional desktop with Microsoft Windows like features? Memory foot print and file size. It doesn’t have to have every bell and whistle. It just needs to be intuitive and usable.
- What would be the real losses functionality wise if someone built an Office suite that only needed 10 Megs (This is completely Arbitrary) of disk space but inter operated file wise with Microsoft’s Office.
- Could we really accomplish much of what we do today on our UNIX desktops on a machine that only had a 486 and 32 megs of ram?
- Are these desktops and applications huge because we have the room or it couldn’t be done with smaller, better code?
- Would we see any real world advantage by making the desktop, applications, toolkits more compact an efficient? Understand real world encompasses development time too. So if it took 3 months to code something tight that someone could write in their huge code in 2 weeks. Clearly we’d be looking at a disadvantage.
In closing, anyone who wishes to comment on what I’ve said here or who wants to answer the questions, I thank you sincerely for responding no matter your view. I feel strongly that the soul of OSS is in hock for the sake of beating the other team by supplantation, instead of being better than the other team by innovation.
Maybe I’m on this little rant today because I remember my days when I wailed pitiously that my TRS-80 Model I lvl II machine with it’s 4K of ram complained to me so often that I’d run out of room for the program I’d spent 10 hours writing. Because I had no room for strings left, when I typed RUN
Till next time, if there is a next time. Thank you for your time. Sincerely,
If you would like to see your thoughts or experiences with technology published, please consider writing an article for OSNews.