Happy Birthday, Linus

Today is the birthday of Linus. Although that's essentially a private event for him, there's an interesting historical link to the creation of the Linux kernel, too.

As is well known, before he started writing Linux, Linus coded on a Sinclair QL, a brilliant if rather bizarre system that was based on a cut-down version of the Motorola 68000 chip used in the Amiga, Atari ST, Apple Lisa and Macintosh. Linus was prepared to put up with the limitations of that chip because it offered multi-tasking – and hence the possibility of some advanced programming.

It was for similarly rigorous reasons that he avoided buying a PC for some time: he disliked the underlying architecture of Intel's chips. But when the 80386 came out, Linus finally succumbed, and at the end of 1990, decided to buy a PC. The only problem was finding the funds to pay for it.

One source was a grant from the Finnish government. This was actually a student loan meant for general living costs during his time at university, rather than specifically for buying computers, but Linus not unreasonably felt that a PC was an indispensable item for a student studying computing science, and hence a permitted expense. He finally paid off that debt in November 1992.

To this student loan, Linus added what he termed “Christmas money”. As anyone who has a birthday very near Christmas will tell you, such “Christmas money” almost invariably includes money for the birthday bundled in too, so it's likely that some funds for the PC arrived in the form of birthday presents. Significantly, Linus wasted no time in buying the new computer after Christmas – and hence his birthday. As he told me in 1996: “ I remember the first non-holiday day of the New Year I went to buy a PC.” The specification is rather sobering:

386, DX33, 4 Megs of RAM, no co-processor, 40 Megs hard disc

Having acquired the hardware, Linus then had to wait for the software he wanted – Tanenbaum's Minix operating system. This was one reason why he had finally opted for the PC: Tanenbaum's Unix-like system had been ported to the 80386, and ran quite quickly on it, as Linus discovered during his university studies, which whetted his appetite for this educational tool.

Minix may have been fast on the PC but it was painfully slow in arriving. In his first published interview, in Linux News, Linus recalled what exactly he got up to in the meantime:

As it turned out, Minix wasn't available in Finland (at least I wasn't able to find it easily), so while I got my machine on January 5th 1991 (easy date to remember due to the monthly payments :-), I was forced to run DOS on it for a couple of months while waiting for the Minix disks. So Jan-Feb was spent about 70-30 playing "Prince of Persia" and getting aquainted with the machine.

When Minix finally arrived, I had solved "PoP", and knew a smattering of 386 machine code (enough to be able to get the machine into protected mode and sit there looping). So I installed Minix (leaving some room for "PoP" on a DOS partition), and started hacking.

Getting Minix wasn't altogether a pleasant experience: the keyboard bindings were wrong, and it didn't exactly act like the suns I was used to (ugghh. I *hate* the bourne shell for interactive work). The keyboard was easy to correct (although I didn't like the Minix keyboard driver code), and applying Bruce Evans' 386-patches made the system a bit more "real".

So somewhere around March-91, I had a 386 system running Minix-386, and I was able to install awb's gcc-1.37.1 port. After that, I was able to port bash to the resulting mess, and things looked a bit better. I also spent my time generally fooling around (porting gcc-1.40 and various other programs), and kept on learning about the 386 while doing so (writing small boot-disks that would set up a protected mode environment and print out various inane messages).

In that interview, Linus modestly described the genesis of Linux thus:

"Linux" didn't really exist until about August-91 - before that what I had was essentially just a very basic protected mode system that had evolved from a glorified "Hello world" program into a even more glorified terminal emulator. Linux stopped for quite a while at the terminal emulator stage: I played around with Minix, and used my protected mode program to read news from the univerity machine. No down/upload, but it did a fair vt100 emulation, and did it by using two tasks which communicated from keybodard->modem and modem->screen.

By mid-summer -91, "Linux" was able to read the disk (joyful moment), and eventually had a small and stupid disk driver and a simple buffer cache. So I started out trying to make a filesystem, and used the Minix fs for simple practical reasons: that way I already had a file layout I could test things on. After some more programming (talk about glossing things over), I had a very simple UNIX that had some of the basic functionalities of the real thing: I could run small test-programs under it.

By that time I looked around for some standards texts - I decided early on that I didn't want to write the user-level programs, and that in order to easily port things I'd either have to make the new system compatible with Minix (ugghh) or follow some other kind of standard. What I wanted was a POSIX guide, not so much to be 100% posix, but in order not to do anything really stupid I'd regret later.

My quest for the posix standards failed, as the posix standard committee sells the standard to feed itself as I found out, but I did get a good pointer to the (then very alpha and unsupported) GNU libc.a, which had an early manual accompanying it. The manual was of some help, but the biggest help was actually the contact to the person who pointed it out to me: arl@sauna.hut.fi. He was/is the organizer of the pub/OS subdirectory at nic.funet.fi, and was interested in giving Linux a home at nic.

Back then, I was only idly thinking about making my system available (and I had no real time-table), but arl happily created a pub/OS/Linux subdirectory at nic, and thus also gave the system it's name. I wasn't really ready for a release yet, so the directory contained just a README for about a month ("this directory is for the freely distributable Minix clone" or something like that). Arl probably thought the project wouldn't come to anything.

I think we can safely say that “arl” - Ari Lemmke, a member of the Helsinki University staff – was a little mistaken on that point. It's truly extraordinary to contemplate that Linus's “glorified "Hello world" program” is now running nearly 90% of the world's top supercomputers. And at the other end of the scale, it is making huge in-roads into the smartphone market, which means that one day there may be billions of people with the Linux kernel in their pocket.

Indeed, it is difficult to imagine what the world would be like today had Linus not bought that PC in 1991 with his Christmas and birthday money. There could hardly be a better time than today to thank him for Linux, his amazing gift to us, and to wish him many happy returns.

Follow me @glynmoody on Twitter or identi.ca.

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Linux as such

Noname's picture

You see, boys'n'girls, Linux has 'stillborn' flaw, and more specifically, lapse fatale: you can invent as many programming languages of yer choice but you've got to start not with the mission definition (of course, you've all got one and the same mission, ever). If you try to define your own mission, it's too late - it's unimportant what yer mission is…
Ah, Linux… Yeah, Linux!
You've forgot to write proper manuals, guys!

Linux as such

Arunk's picture

Do you have any proof for Stillborn flaw? What ever your are blaming!!! Show me the proof.

Linux already proved and its used every where. Hence it is proved... Linux is ROCKING..

How small things made Linus to start writing own OS!

Tommy.S's picture

This is just great to know that how small things really made Linus to write own OS, starting from basic Hello World to basic terminal program and then actually adding all needed OS functions and he got the whole OS as monolithic kernel!

And without the FTP server, Linux would never be released to wide use. And without GNU, people would never be ported so many open source software to Linux OS (OS == monolithic kernel alone, without any GNU software on it and Linux is not a microkernel what is just a part of the OS!)

Happy Birthday Linus! (even for late).

Happy Birthday Linus

Honggang's picture

Thanks you open the door, so I can work on a field not controlled by evil M$ and previous evil Unix monsters!

Just found this...

Peter Winter's picture

Just found this vid on YouTube:
http://www.youtube.com/watch?v=pxx6brHlwJI

The guy setup an 40th birthday surprise page for Linus ;-)
Linus Torvalds 40th birthday surprise!

Interesting. So, at least some early software (a software blitter) of Linus
resurrected.

Pete

A Bit Late but Happy

Anonymous's picture

A Bit Late but Happy Birthday.

Happy birthday to both god &

jianhua's picture

Happy birthday to both god & linus. I'm writting this on my htc magic mobile which comes with google's android linux. I bought it one month ago, and it costs me ¥2600 RMB. It's usable but not good enough. I need bash and 'build essential' on it most badly.

If there were no Linux

Alison Chaiken's picture

Then we'd all be running BSD. AT&T's many lawsuits against the University of California delayed the public release of BSD long enough to make Linux the winner, but without Linux BSD would be in equally widespread distribution. What would have happened had BSD and Linux come out at the same instant, I won't venture to say.

HBD

jG/SVK's picture

many happy birthdays, Linus. and a lot of such great ideas. thnx4linux!

Happy birthday Linus, you

Diego Viola's picture

Happy birthday Linus, you rock!

Happy birthday Linus! :D

Antonio Alecrim Jr's picture

Happy birthday Linus! :D

Happy Birthday, Linus

N GowriSankar's picture

Many many happy returns of the day, Linus.

Enjoy Linus!!

Mohan R's picture

Thanks for your contribution to the mankind Linus, Happy Birthday !!

DX = already contains a coprocessor. SX processors did not.

Linux lover's picture

Happy birthday Linux anyway.

386 DX/SX

Enoch's picture

That would be true for the 486 processor. In the 386 world the DX addressed memory via a 32 bit memory bus, while the SX addressed memory via a 16 bit memory bus.

Happy Birthday and Thank You

Anonymous's picture

Hope you have many more to come, enjoy and Thank You for all your efforts.

Happy Birthday

PatrickEB's picture

Linus :)

happy birthday

linuxvictim's picture

Man, this guy had major balls even back then!

Happy Birthday, God !
(ducks, runs for cover ;-) )

Linus Happy Birthday!

Nicle's picture

Linus

Happy Birthday!

Happy Birthday..

Avin Tokade's picture

" Happy Birthday "

|"|
| |
| |__ INUS
-----"

Happy Birthday

vicm3's picture

Indeed a very happy birthday Linus you're a really strong inspiration for me and my work.

Thanks Linus

circuit_breaker's picture

I work full-time as a Linux SA for a Fortune 500 company. I wouldn't be here doing Solaris or Windows. Too much headache and too much clicky-clicky. Linux allows me to play with expensive hardware while I work. THANKS LINUS!

happy

gadget's picture

happy birthday Linus.

meh

Anonymous's picture

From one software professional to another: If none of this had ever happened, if Linus had gone and bought a guitar, or a hooker, or whatever else kids in Finland did with their cash back then, I'd dare say the world would have much higher quality, and far more easily used software. Linux has so significantly furthered software that is exceptionally difficult to use and understand, that it is no longer the domain of just the super high priced modelling and graphics packages that are difficult to understand, but that nearly every free piece of software out there is only "good enough" for whoever wrote whatever function piecemealed into the software. Linux has set back software development decades.

what are you talking about?

Anonymous's picture

what are you talking about? your mumbling is "difficult to understand".

Oh Sure, of course. You'd know this...crap

PatrickEB's picture

Seriously?

I dare say that while they say "don't feed a troll" I think sometimes it's best to shove food down them until they burst at the seams.

Today is the day.

You won't read this most likely, but other boring people like you may well.

Get out of your mother's basement, take your hands off it and go do something useful - make the Darwin Awards an offer they can't refuse.

http://www.darwinawards.com/

Happy Birth Day

Prasad J's picture

Happy Birth Day Linus, for giving us peace of mind

Happy birthday Linus.....

Anonymous's picture

Happy birthday Linus.....

Happy BirthDay Linus!!!

Santiago's picture

Thanks for Linux!!

Peace out dude!

sims's picture

I wish you the best!

Yay!

Bjørn Enki's picture

Happy birthday Linus!

Happy Birthday, and loads of

Anonymous's picture

Happy Birthday, and loads of thanks for linux and saving from drugs, i mean it.

happy christmas, thanks for

kangu's picture

happy christmas, thanks for all the good softwares!

Happy Birthday Linus -

Anonymous's picture

Happy Birthday Linus - you've been a huge inspiration to me, and no doubt many other hackers on the bleeding-edge too. :-)

Happy Birthday!

John and Dagny Galt's picture

Thanks to your fine efforts, publicizing Atlas Shrugged and Starving The Monkeys has never been as widespread!

Keep up the great work!

Sincerely,
John and Dagny Galt
Atlas Shrugged, Owners Manual For The Universe!(tm)

.

Happy Birthday, Linus

Anonymous's picture

To add to this story, in 1993 or 1994 (I forget exactly which year) one member on the Linux mailing list--the founder of the Linux Counter web page if I remember correctly--proposed that anyone interested in contributing to a fund to express their appreciation to Linus for his work could contribute through him and the proceeds would be sent to Linus. The results were that four, maybe five--no more than that--individuals contributed. Linux users really are cheapskates.

Happy Birthday, Linus.

Anonymous's picture

Happy Birthday, Linus. Thanks for everything you do for us.

Happy birthday and thanks a

BigBert's picture

Happy birthday and thanks a STACK for all your hard work!

Happy Birthday Linus!

Serban's picture

I myself I'm born on Jan 2nd and really hope that I'll be able to do something similar to what you did. Thanks for Linux!

No!! pls no!, not another

Anonymous's picture

No!! pls no!, not another unix-clone ;)

No please, not another "Troll Clone"

PatrickEB's picture

Duh!

long live the king

Daniele Bortolotti's picture

happy birthday linus!!
thanks for linux

Thanks for all your work!

Coderpunk's picture

Thanks for all your work! Have a happy birthday!

Happy Birthday!

ruff's picture

Thanks and all the best! Happy Birthday!

Kind of expected, but still..

Erez Hadad's picture

Happy Birthday, Linus. May you always enjoy your work. Lots of other people do (incl. yours truly).

-- EH

Bad man.

Josh C's picture

Happy birthday to a wife-killing bastard. Linux is great, Linus is not.

Josh C - @55h0l3

Anonymous's picture

What an @55h0l3, confusing Hans Reiser with Linus Torvalds.
kill -9 "Josh C"

What is "55h0l3"?

Quan's picture

What is "55h0l3"?

You misread it, he's an

Anonymous's picture

You misread it, he's an @55h0|3. See http://en.wikipedia.org/wiki/Leet_speak

mmmmmm

Anonymous's picture

Maybe you are mistaking Linus Torvalds by Hans Reiser. Happy birthday anyway...

White Paper
Linux Management with Red Hat Satellite: Measuring Business Impact and ROI

Linux has become a key foundation for supporting today's rapidly growing IT environments. Linux is being used to deploy business applications and databases, trading on its reputation as a low-cost operating environment. For many IT organizations, Linux is a mainstay for deploying Web servers and has evolved from handling basic file, print, and utility workloads to running mission-critical applications and databases, physically, virtually, and in the cloud. As Linux grows in importance in terms of value to the business, managing Linux environments to high standards of service quality — availability, security, and performance — becomes an essential requirement for business success.

Learn More

Sponsored by Red Hat

White Paper
Private PaaS for the Agile Enterprise

If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.

Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.

Learn More

Sponsored by ActiveState