← Back to articles
News· 3 min read

Linux 0.01: The Story of the Kernel That Began as a Hobby

In September 1991 a 21-year-old Finnish student uploaded a handful of files to a university FTP server, and those files would go on to change computing. The bundle was version 0.01 of the kernel we now know as Linux. It wasn’t much to look at. It couldn’t even boot on its own. But it was the first brick of one of the most important software projects in history.

The Student Who Just Wanted a Hobby

Linus Benedict Torvalds was studying at the University of Helsinki when he started tinkering with his new Intel 80386-based PC. He was fed up with the limitations of MINIX, Andrew Tanenbaum’s small educational Unix, so he set out to write his own kernel from scratch.

On 25 August 1991 Torvalds posted his famous message to the comp.os.minix Usenet group, announcing “a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386(486) AT clones.” That bit of modesty became one of the most spectacularly wrong technology predictions ever made.

Version 0.01: September 1991

On 17 September 1991 Torvalds got version 0.01 ready and placed it on ftp.funet.fi, the server of Finland’s university research network FUNET. It was an almost private release, with no public announcement, meant for a handful of the curious.

That first kernel held roughly 10,000 lines of code (around 10,239 by the notes of the day), written in C and assembly. It came with one striking catch: it wasn’t executable on its own. To compile and test it you needed MINIX installed, so in practice Linux was born as an add-on to the very system it aimed to replace.

Tailored for the 386

Linux 0.01 was written only for the Intel 80386 processor, with no hardware abstraction layer at all. The code leaned hard on the chip’s features (protected mode, paging) at the cost of being completely impossible to port to other architectures. Other operating-system designers criticised that choice sharply, yet it let Torvalds move fast.

The kernel had no networking and barely any hardware support beyond the bare minimum. It used the MINIX filesystem, and most of the support routines were still unwritten. It was, quite literally, a starting point.

The Name Torvalds Didn’t Choose

One of the great curiosities of this story is that Linux was never meant to be called Linux. Torvalds wanted to name his project “Freax”, a blend of free, freak, and the x from Unix, because naming it after himself felt egotistical. He kept the files under that name for months.

But when he uploaded the code to FUNET, the FTP server’s administrator, Ari Lemmke, wasn’t sold on “Freax” and created the directory under the name linux on his own, without consulting Linus. The name stuck, and Torvalds eventually came round to it. There are more relics from that era too: the original Makefile still carried “Freax” references, and a Finnish keyboard layout was essentially hard-wired into the code.

From 0.01 to a Revolution

Version 0.01 was just the start of a breakneck pace. On 5 October 1991 came 0.02, the first publicly announced “official” version. Version 0.11, in December 1991, was the first that could compile itself on a machine already running Linux. And in January 1992, with version 0.12, Torvalds made a pivotal call: he adopted the GNU GPL version 2 and dropped his own license, which had forbidden commercial redistribution. That move opened the door to global collaboration and to distributions like Debian, Slackware and, later, Ubuntu.

Those 10,000 lines written by a student in his bedroom are today a kernel of tens of millions of lines, powering everything from supercomputers to Android phones. The “hobby that wouldn’t be big” turned out to be, arguably, the most successful free-software project of all time.

Sources