logo
Published on KernelTrap (http://kerneltrap.org)

Linux: The 0.02 and 0.03 Releases

By Jeremy
Created Aug 2 2007 - 10:22

"Do you pine for the nice days of minix-1.1, when men were men and wrote their own device drivers?" began the October 5th, 1991 announcement for Linux kernel version 0.02 on the comp.os.minix newsgroup. In the release notes, Linus Torvalds continued, "as I mentioned a month(?) ago, I'm working on a free version of a minix-lookalike for AT-386 computers. It has finally reached the stage where it's even usable (though may not be depending on what you want), and I am willing to put out the sources for wider distribution." 19 days after the 0.01 kernel [1] was released, the 0.02 kernel debuted with the new-found ability to run a handful of utilities including bash, gcc, gnu-make, gnu-sed and compress. There was no floppy driver yet, the hard disk driver was hard coded to AT-compatible drives, and due to various buffer-cache problems it was not possible to compile large programs like gcc from a running 0.02 kernel. Linus noted:

"I can (well, almost) hear you asking yourselves 'why?'. Hurd will be out in a year (or two, or next month, who knows), and I've already got minix. This is a program for hackers by a hacker. I've enjouyed doing it, and somebody might enjoy looking at it and even modifying it for their own needs. It is still small enough to understand, use and modify, and I'm looking forward to any comments you might have."

The 0.02 release needed to be compiled on minix-386 with gcc-1.40, "you need minix to set it up if you want to run it, so it is not yet a standalone system for those of you without minix. I'm working on it. You also need to be something of a hacker to set it up (?), so for those hoping for an alternative to minix-386, please ignore me. It is currently meant for hackers interested in operating systems and 386's with access to minix." It only worked on AT-compatible hard drives (with a note that "IDE is fine"), and with an EGA/VGA monitor.

Unfortunately, it's not possible to review the source changes that were made between the 0.01 kernel and the 0.02 kernel, as no known copy of the 0.02 source code exists. Linus recently explained that what probably happened is that when the 0.03 version came out he simply deleted the outdated 0.02 version, "hey, it wasn't historically interesting at the time!"

Evidently the 0.03 kernel met the same fate when 0.10 was released a little over a month later, as again no known copy of the 0.03 source code exists. Though the exact release date of the 0.03 kernel is unknown, a posting dated October 31st, 1991 on comp.os.minix notes that 0.03 had recently been released:

"Linux is a full kernel that has so far worked on a number (5-10?) of at-386 (and one 486 as far as I know). It supports GNU cc (gcc), bash and some other free stuff. It is currently more of a hackers kernel (and minix-386 is needed, but that will change with this weeks release), and the current version number is 0.03 (next is 0.10 I think)."

Linus then listed some features of the 0.03 kernel:

He went on to list some "bad points":

By this point, Linus was already touting Linux as having better performance than Minix, "except the floppy-disk driver which really sucks :-)". He cautioned that Linux needed a lot of memory, "word of warning: it needs 4MB to be usable." In a 1992 interview [2], he noted that the 0.03 kernel "actually worked pretty well", going on to add, "the buffer cache mostly worked, as did most other things."

As Linux development continued between the 0.03 and 0.10 releases, Linux gained the ability to be useful without Minix. However, at this early point of Linux development Linus was still operating under the assumption that it would be a short-lived project, ultimately replaced by the GNU Hurd:

"Happily this isn't true any more (needing minix, that is). Linux /can/ be used without minix, but it's not a tool for a user yet. Hacker-material (ie I've got gcc, uemacs etc, but no real utils). Wait for Hurd if you want something real. It's fun hacking it, though (but I'm biased)."

While wrong about Linux being a short-lived project, Linus was certainly right about it being fun to hack on, as evidenced by the ever growing community of Linux kernel hackers that grew around Linux. A community that continues to grow and evolve to this day.


Linux 0.02 release announcement:

From: Linus Benedict Torvalds) [email blocked]
Subject: Free minix-like kernel sources for 386-AT [3]
Newsgroups: comp.os.minix
Date: 5 Oct 91 05:41:06 GMT

Do you pine for the nice days of minix-1.1, when men were men and wrote
their own device drivers? Are you without a nice project and just dying
to cut your teeth on a OS you can try to modify for your needs? Are you
finding it frustrating when everything works on minix? No more all-
nighters to get a nifty program working? Then this post might be just
for you :-)

As I mentioned a month(?) ago, I'm working on a free version of a
minix-lookalike for AT-386 computers.  It has finally reached the stage
where it's even usable (though may not be depending on what you want),
and I am willing to put out the sources for wider distribution.  It is
just version 0.02 (+1 (very small) patch already), but I've successfully
run bash/gcc/gnu-make/gnu-sed/compress etc under it.

Sources for this pet project of mine can be found at nic.funet.fi
(128.214.6.100) in the directory /pub/OS/Linux.  The directory also
contains some README-file and a couple of binaries to work under linux
(bash, update and gcc, what more can you ask for :-).  Full kernel
source is provided, as no minix code has been used.  Library sources are
only partially free, so that cannot be distributed currently.  The
system is able to compile "as-is" and has been known to work.  Heh.
Sources to the binaries (bash and gcc) can be found at the same place in
/pub/gnu.

ALERT! WARNING! NOTE! These sources still need minix-386 to be compiled
(and gcc-1.40, possibly 1.37.1, haven't tested), and you need minix to
set it up if you want to run it, so it is not yet a standalone system
for those of you without minix. I'm working on it. You also need to be
something of a hacker to set it up (?), so for those hoping for an
alternative to minix-386, please ignore me. It is currently meant for
hackers interested in operating systems and 386's with access to minix.

The system needs an AT-compatible harddisk (IDE is fine) and EGA/VGA. If
you are still interested, please ftp the README/RELNOTES, and/or mail me
for additional info.

I can (well, almost) hear you asking yourselves "why?".  Hurd will be
out in a year (or two, or next month, who knows), and I've already got
minix.  This is a program for hackers by a hacker.  I've enjouyed doing
it, and somebody might enjoy looking at it and even modifying it for
their own needs.  It is still small enough to understand, use and
modify, and I'm looking forward to any comments you might have.

I'm also interested in hearing from anybody who has written any of the
utilities/library functions for minix. If your efforts are freely
distributable (under copyright or even public domain), I'd like to hear
from you, so I can add them to the system. I'm using Earl Chews estdio
right now (thanks for a nice and working system Earl), and similar works
will be very wellcome. Your (C)'s will of course be left intact. Drop me
a line if you are willing to let me use your code.

                Linus

PS. to PHIL NELSON! I'm unable to get through to you, and keep getting
"forward error - strawberry unknown domain" or something.


Comments about Linux 0.03:

From: Linus Benedict Torvalds [email blocked]
Subject: Re: Free minix-like kernel sources for 386-AT [4]
Newsgroups: comp.os.minix
Date: 31 Oct 91 10:12:52 GMT

In article [email blocked] writes:
>(C. G. Albone) writes:
>>Hello all..
>>        I missed the original posting, so could someone please tell me
>>how I may obtain the sources.
>  And me too !!!!!!!!!!!!!!
>  Also, are them available via e-mail (mail server or smth), as I'm
>in the former Soviet Union and can't do any FTP.

Ok, as I've gotten quite a few questions, I guess I'd better follow up
again.

Linux is currently ONLY available via ftp from nic.funet.fi, directory
/pub/OS/Linux. As the sources change rather rapidly (next release due
out this weekend after I have tested some more), it is also currently
impractical to make them available from other places. There is a
mail-server possibility fron nic, but I think it's still in testing (you
could try mailing "mailser... at nic.funet.fi" with "help" in the body,
but I don't know if it will work).

Linux is a full kernel that has so far worked on a number (5-10?) of
at-386 (and one 486 as far as I know). It supports GNU cc (gcc), bash
and some other free stuff. It is currently more of a hackers kernel (and
minix-386 is needed, but that will change with this weeks release), and
the current version number is 0.03 (next is 0.10 I think).

Good things about linux:

- it's free, full source, and I try to correct bugs you find.
- it's a bit faster than minix, I think.
- uses paging for memory management (not to disk yet)
- multithreaded fs (but then you can get patches to minix that do
similar stuff)
- mostly full termios and vt100-console.
- most things easy to port (easier than to minix).

Bad points:

- ONLY 386/486
- early versions: there might be lots of bugs, and you might need to
port/hack things to work.
- minix is recommended even for the upcoming version that doesn't
absolutely need it.
- currently only VGA (EGA?) support, limited keyboard drivers (US and
Finnish) etc

You can mail me for more info. "finger torvalds at kruuna.helsinki.fi"
might tell you something too.

                Linus [email blocked] 


Linus plugs Linux:


From: Linus Benedict Torvalds [email blocked]
Subject: Re: Beginner asking questions. [5]
Newsgroups: comp.os.minix
Date: 21 Oct 91 18:49:40 GMT

In article Don Capps writes:

>    I am new to minix. I am interesting in knowing if a version
>    exists that has pageing and swapping ( For those PC`s with
>    an MMU) ?

>                                    Thanks ahead of time.
>                                    ca...[email blocked]

Ok, it is obviously time for a small plug once more :-)

There is an experimental FREE minix-like thing which supports paging
(not yet to disk, but using the MMU to share pages after a fork etc
etc), written only for 386 AT's.  It currently isn't very practical,
even though a number of people have a running system.  It is a bit
faster than minix (except the floppy-disk driver which really sucks :-).

This is a kernel for hackers, so if you aren't one, you'd better wait
for a later release.  If anybody wants to look at the sources, there is
a version available from 'nic.funet.fi' by anonymous FTP.  There are
also some binaries for the kernel there (gcc, tar, make, uemacs and
fileutils).  All this can be found in /pub/OS/Linux.  This version
currently needs minix-386 to compile (but in a week I'll have a bootable
version there, I think).

Anybody interested can finger me, or mail me for info, or just ftp some
of the text-files from nic. Word of warning: it needs 4MB to be usable.

                Linus [email blocked]


Linus comments on GNU Hurd:

From: Linus Benedict Torvalds [email blocked]
Subject: Re: Wolf Hugs and stuff [6]
Newsgroups: alt.folklore.computers
Date: 10 Nov 91 21:45:04 GMT

> Adam Justin Thornton writes:
>> I'm frustrated because I'm too cheap to buy a decent OS for my 386 and GNU OS
>> isn't out yet and I have to run this silly little loader called MSDOS.
>
>Well, check out comp.os.minix. As the Arch-OS/2 fiend Peter Busser has informed
>me, there's a 386 kernel called linux under development in Finland. You need
>MINIX to bring it up, though.

Happily this isn't true any more (needing minix, that is).  Linux /can/
be used without minix, but it's not a tool for a user yet.  Hacker-
material (ie I've got gcc, uemacs etc, but no real utils).  Wait for
Hurd if you want something real.  It's fun hacking it, though (but I'm
biased).

                Linus "finger me for more info" Torvalds
                [email blocked]

Source URL:
http://kerneltrap.org/node/14037