Building Your Own (Minimal) Operating System

 http://www.osnews.com/story.php?news_id=2691 Written by special contributor Steve Mulder on 2003-01-31 07:35:16 UTC

Why, you might ask, would anyone want to build their own operating system? It's really about being in control and knowing what's going on.In the next few paragraphs I'll explain what motivated me to take on this project, the recipe I used, and what I like about it.

 

 

<script language="javascript" type="text/javascript"> Ads_kid=0;Ads_bid=0;Ads_xl=0;Ads_yl=0;Ads_wrd='[KeyWord]'; </script> <script language="javascript" src="http://a.as-us.falkag.net/dat/cjf/00/13/60/97.js" type="text/javascript"></script> <script language="JavaScript" src="http://a.as-us.falkag.net/dat/bjf/00/10/66/15.js" type="text/javascript"></script> <script language="JavaScript" type="text/javascript">function Ads_PopUp() {}</script> <script language="JavaScript" src="http://a.as-us.falkag.net/dat/brf/00/23/56/18.js" type="text/javascript"></script> <script language="JavaScript" src="http://ad.doubleclick.net/adj/ttm.osnews/ros;tile=3;sz=336x280;ord=80737902?" type="text/javascript"></script>
Click here to find out more!

 

I'm not fond of confusion or complexity, so I want an operating system that is clear and simple. I don't want to wait for anything. When I turn my computer on, I'd like it to be ready as fast as a light switch, or at the very least, in about as long as it takes to get a dial tone. When I launch a program, I want to use it right now. No hour-glass or wait message please. I want all of the programs that I use to be either completely obvious, or well documented with a short learning curve. There should not be any software on my machine that I don't plan to use. All of it should be easy to maintain. <script language="JavaScript" type="text/javascript"> var dc_UnitID = 14; var dc_PublisherID = 810; var dc_AdLinkColor = '#003300'; var dc_adprod='ADL'; </script> <script language="JavaScript" src="http://kona.kontera.com/javascript/lib/KonaLibInline.js" type="text/javascript"></script> <script language="JavaScript" src="http://kona.kontera.com/javascript/lib/KonaLibInline_new.js" type="text/javascript"></script> <script src="http://kona.kontera.com/javascript/lib/Traffic.js" type="text/javascript"></script> <script src="http://kona.kontera.com/javascript/lib/ImageCamps.js" type="text/javascript"></script> <script src="http://kona4.kontera.com/KonaGet.js?u=1156213342144&p=810&k=IntahiaoeyratteosiweyoytltcSanIwao%27rgealteranhlnufirilbiml%2Cdnspeu.twhuWghifmwhoaIE&al=1&l=http%3A//www.osnews.com/story.php%3Fnews_id%3D2691&t=Building+Your+Own+%28+Minimal+%29+Operating+System+-+OSNews.com&m1=OSNews+%2C+OS+News+%2C+Operating+System+%2C+Linux+%2C+BeOS+%2C+Unix+%2C+Windows+%2C+Microsoft+%2C+AtheOS+%2C+Irix+%2C+AIX+%2C+Solaris&i=14&n=0&dc_aff_id=&cl=2&mp=0" type="text/javascript"></script> <script src="http://te100.kontera.com/ListingTransform/ListingTransform?publisherId=810&searchid=8&layout=adlinks&sId=134&cb=1156213321&creative=L&cn=oth&pRfr=http://www.osnews.com/story.php?news_id=2691&dc_aff_id=&keys=computer;software;Windows%2098;SuSe;software%20installation;source%20code&kids=328350;2533;158042;309579;158142;288116&iit=1;1;1;1;1;1&index=0&tit=1&resultNum=1&time=5500&tag=0&dc_aff_id=&bt=1" type="text/javascript"></script>

I haven't seen anything like that. Well, at least not lately. In the 80's , I bought a Commodore-64. As quick as you could throw the switch, it was ready to rock. There was no tinkering with the operating system, it was hard-wired. I used it to develop programs in basic and C. It was great in its time, but it never evolved.

Eventually, I bought a '286 pc with DOS. I never had much interest in the Windows 3.x series, and didn't use windows until I replaced the DOS box with a new "Windows 98" machine. (When I say "Windows" I mean Microsoft's product, and when I say "windows" I mean any graphical operating system.)

With Windows it was one damn thing after another. I don't want to sound too harsh, because it usually worked and was easy to use. For most people it's a good choice. I just wasn't happy with it. I never felt that I was in control with Windows. When things jammed up, it was usually a total mystery. "Help" didn't help, "Shutdown" wouldn't, "can't find the driver", "page fault", "general protection error", etc.

So I started looking at Linux. I tried out SuSe, Mandrake, Slackware and maybe a dozen other Linux distributions. A lot of them are pretty good, but as often as not I'd run into trouble setting up the X window system or with other software installation or maintenance issues. I was actually starting to miss the "C:/" prompt.

Then I came across something different.

Gerard Beekmans' "Linux From Scratch" is a "roll your own" Linux distribution. You start out with about 80 megabytes of program source code, then compile and install it all (one program at a time) until you have a bootable Linux system. It's remarkably educational, and it's well documented. It's not instant gratification, but once it's working, you know where everything is and how it got there.

A basic LFS installation is text only, but there are lots of links explaining how to install X or almost anything else you could want. I just wanted a decent platform for surfing, email, editing and a bit of programming.

I started with a basic "Linux from Scratch" installation, then got my network connection working . After that, my plan was to add the minimum amount of software for an effective desktop environment.

John Murray's article "Building The Lo-Fat Linux Desktop" was my main guide for selecting lean and effective software.

Here's what I picked:

 

utilities:   nano which wget
graphics driver:   XFree86
graphics libraries:gtk glib jpeg png
window manager:    Blackbox
console window:    Rxvt
text editor:       Nedit
file manager:      X File Explorer
web/file browser:  Dillo
browser,mail,news: Mozilla*
ps/pdf viewer:     GSview
image editor:      Gimp*

*(Mozilla and Gimp don't really qualify as lean, but I like what they do and I don't mind waiting five seconds for them to load.)

The result is a fairly boring desktop that does everything I need and very little else. I don't even use wallpaper or desktop icons. Here's a screenshot of it in action. I have installed this system on several pc's, always with good results. It's not trying to do too much, so it's quite responsive even on older hardware. My Celeron 300A has no problem with it. It hardly ever jams up, but when it does, I usually have a pretty good idea how to fix it.

It doesn't start up nearly as quick as my Commodore-64 did. Booting takes about twenty seconds. When I get tired of that, I suppose I could get some help from the folks at "LinuxBIOS". I've read that their boot times are somewhere between light switch and dial tone.

This installation, without the source files, takes about 450M of space. The source files take about 220M, so it all fits easily on one CD.

It was a little more work than most distributions, but I think it was worth it.

About the Author:
Steve is an optical engineer in Windsor, Ontario. He writes programs using C++ and OpenGL to solve problems in lighting design, and prefers larger computers because the little ones are too hard to take apart.

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值