login
Header Space

 
 

Dusting Off the 0.01 Kernel

January 2, 2008 - 4:35pm
Submitted by Jeremy on January 2, 2008 - 4:35pm.
Linux news

Abdel Benamrouche announced that he has updated the original 0.01 Linux kernel to compile with GCC-4.x, allowing it to run on emulators such as QEMU and Bochs. After applying his series of small patches, Abdel explains that the 0.01 kernel can be built on a system running the 2.6 Linux kernel. He added that he's successfully ported bash-3.2, portions of coreutils-6.9, dietlibc-0.31 (instead of glibc), bin86-0.16.17, make-3.81, ncurses-2.0.7, and vim-7.1 all to run on his modified 0.01 kernel.



From: Abdel <draconux@...>
Subject: linux 0.01 released
Date: Jan 1, 4:56 pm 2008

Hello everybody and happy new year,


I have ported linux 0.01 to gcc-4.x, and bach-3.2 (and few others
programs) can run on it.

so you will find binary Image of linux 0.01 floppy and qemu hdd here:
http://draconux.free.fr/download/os-dev/linux0.01/Image/

to run it on qemu :
> qemu  -hdb hd_oldlinux.img  -fda linux-0.01-3.3.omg -boot a
nb : also work with bochs, and I have not tested it (yet) on real computer.

----------------

kernel source code :
http://draconux.free.fr/download/os-dev/linux0.01/linux-0.01-rm-3.x/linux-0.01-rm-3.3....

to see change from original linux 0.01 to linux-0.01-3.3 see
- http://draconux.free.fr/download/os-dev/linux0.01/doc/note_patch
- http://draconux.free.fr/download/os-dev/linux0.01/linux-0.01-rm-1.x/patch_*
- http://draconux.free.fr/download/os-dev/linux0.01/linux-0.01-rm-3.x/patch_*
- http://draconux.free.fr/download/os-dev/linux0.01/linux-0.01-rm-2.x/patch_*

doc :
http://draconux.free.fr/download/os-dev/linux0.01/doc/LINUX_0.01_GCC_4.x

----------------

If you have some problem runing linux 0.01 you can mail me :)

regards,

-- 
Abdel Benamrouche
http://draconux.free.fr/
--


bach? bash? Still, cute and

January 2, 2008 - 6:20pm

bach? bash?

Still, cute and kudos!

Of course, bash. Check out

January 2, 2008 - 6:33pm
Anonymous (not verified)

Of course, bash. Check out on the screenshots. This is a silly typo in the original announcement.

Pics

January 2, 2008 - 6:20pm
Anonymous (not verified)

What... No zsh?

January 2, 2008 - 6:37pm
nash (not verified)

Once zsh is done, I'm upgrading from my crusty debian-thingy, thei new linux looks good!

Serious waste of programming

January 3, 2008 - 12:53am
Anonymous (not verified)

Serious waste of programming

Perhaps not.

January 3, 2008 - 1:36am
June (not verified)

Hrm... I'm not so sure about that. The early kernel designs were simple enough to learn from. Aspiring kernel hackers would likely be interested in this more modernized old kernel -- especially since now it can be run through bochs and qemu -- since knowledge of the dark corners of the system is very hard to come by.

In that case,

January 3, 2008 - 3:40am
Anonymous (not verified)

In that case, study an OS such as MINIX or {Open,Net}BSD. They're far simpler (read: cleaner) than this huge, messy thing called Linux. However, if you're only interested in Linux and its history ...

Evidence for your assertions

January 3, 2008 - 4:04am
Anonymous (not verified)

Please provide some evidence for your assertions.

As far as I know, there is only consensus that "{Open,Net}BSD" is "cleaner" than Linux amongst anti-Linux trolls. Their evidence is basically self-referential with the odd half-truth or anecdote.

Here you go

January 4, 2008 - 1:24am
Jack Ripoff (not verified)

Non sequitur. Sorry, you

January 4, 2008 - 9:11am
Anonymous (not verified)

Non sequitur. Sorry, you lose.

It follows

January 4, 2008 - 4:01pm
Jack Ripoff (not verified)

Yes it does. I win. You lose.

Just accept it, your system is not developed with stability and security in mind, just as an afterthought. The "more eyeballs" thing just isn't enough, you need some actual proactivity there as well.

We continuously audit our software for bugs and security problems. When we find something that's buggy or bad designed we not only fix it, but we also investigate the whole source tree for similar issues. We maintain our own version of GCC with lots of fixed security problems and extra security features. Our code is clean, well-documented and easily maintainable. All this adds up to a more secure and stable system, which the above numbers come to confirm.

No it doesn't.

January 5, 2008 - 1:05pm
Anonymous (not verified)

Sorry, it doesn't, he wins, you lose. You're arguing that OpenBSD is more secure than linux, fine, maybe it is. He was originally arguing that Linux 0.01 was a very early version of a modern kernel that was, because so early, is a very simple and easy to follow piece of code that could be used by aspiring kernel developers to learn kernel development.

Who the fuck cares if it's not as secure when you're just using it as a simple model at most?

Wait, I know that one!

January 5, 2008 - 7:38pm
Anonymous (not verified)

Because it's a bad model.

It's very clever to compare

January 7, 2008 - 3:56pm
Anonymous (not verified)

It's very clever to compare it to a 2.6.x kernel.
Retard.

Dont feed the trolls

January 8, 2008 - 7:31pm
Anonymous (not verified)

Dont feed the trolls

The above links are to

January 9, 2008 - 11:30pm
Linux and OpenBSD user (not verified)

The above links are to OpenBSD 4.2 and Linux 2.6. That's comparing two vastly different time periods given that OpenBSD 4.2 was released within the last 6 months and Linux 2.6 has been available for years. If you compare OpenBSD releases covering a similar period to Linux 2.6 then you need to go back to OpenBSD 3.x. There you'll find 89 violations listed. That's still less than Linux but not the almost two orders of magnitude difference you get if you compare OpenBSD 4.2 against Linux 2.6.

Still big difference

January 11, 2008 - 12:04pm
Jack Ripoff (not verified)

You may be right.

OpenBSD is a complete operating system though. Linux is just a kernel.

Big difference, hm. To make

January 12, 2008 - 4:17pm
Linux and OpenBSD user (not verified)

Big difference, hm.

To make it more accurate one needs to exclude all non-kernel issues logged against OpenBSD, only count issues logged in the same period, take account of the relative difference in the amount of code (more code, more bugs)

The first two not to hard and we get: Linux 7, OpenBSD 0-3.

The variation in OpenBSD is that Secunia don't list any kernel vulnerabilities but if you look elsewhere you can find issues. If you look at OpenBSD's site they have two "Reliability Fixes" for problems that can cause the box to crash or hang. Since they can be used as DOS by a hacker then they should be counted given that issues like isdn_net_setcfg are being counted on the Linux side. Also the report for the coredump bug against Linux also claims the same issue exists in FreeBSD and OpenBSD.

So its either 7:0 or 7:3 depending on how you want to count without taking into account the difference in the amount of code in each project.

The numbers are so low that it is hard to conclude anything meaningful from them. If the ratio held up consistently across other time periods, and didn't disappear when corrected for code size differences then it might be possible to meaningfully conclude something. I don't care enough to do the analysis, I'd write write code.

you are wrong

January 3, 2008 - 4:11am
Abdel (not verified)

- linux 0.01 is not a "huge thing"
- the source is clean
- linux 0.01 is small, you can understand all components.
- Minix is a kind of micro-kernel wich are more complex than a monolithic kernel. ( by the way you can compare linux 0.01 with minix but not with {Free,Open,net}BSD (there is linux2.6 for that)
- It's not a "wast of programing", because I've learned a lot from this project. ( 386-asm , inline asm, how a kernel work, and a lots of other things ! )
- And last but not least I was doing this for the fun :)

Nice job!

January 3, 2008 - 4:25am
Erik (not verified)

But hey, Linus started the whole kernel 'just for fun'.

Did you ever read the MINIX

January 3, 2008 - 5:48pm

Did you ever read the MINIX source code? If yes you wouldn't mention MINIX here.

Nice snarky comment, but

January 3, 2008 - 11:39am
Anonymous (not verified)

Nice snarky comment, but absolutely wrong.

Any programming endeavour is only a waste of time if the person doing it gets nothing in return, whether that be knowledge, money, or simply a thumbs up from fellow programmers.

Well in that case, a hearty

January 3, 2008 - 1:06pm
Anonymous (not verified)

Well in that case, a hearty thumbs up to the coder in question!

So...you think the time

January 3, 2008 - 1:08pm
Eve (not verified)

So...you think the time spent by Linus and other developers on this OS is wasted? Good/Bad is a 'POV' thing. You think Linux sucks? But many don't - and they are using it happily.

let's just leave this guy alone. Why should we care if he hates an OS so much...

hmm...

January 3, 2008 - 1:10pm
Eve (not verified)

So...you think the time spent by Linus and other developers on this OS is wasted?
Good/Bad is a 'POV' thing. You think Linux sucks? But many don't - and they are using it happily.

let's just leave him alone. Why should we care if he hates an OS so much?

I'm loving the Finnish

January 3, 2008 - 6:42pm
Anonymous (not verified)

I'm loving the Finnish keyboard

Great hack

January 4, 2008 - 2:42pm
Anonymous (not verified)

How awesome. (And utterly pointless)

Respect. I always wanted to

January 4, 2008 - 8:38pm
Anonymous (not verified)

Respect. I always wanted to study 0.01 source, but never did. Good job!

small typo

January 7, 2008 - 7:01am
Anonymous (not verified)

small typo
the command line should be

qemu -hdb hd_oldlinux.img -fda linux0.01-3.3.img -boot a

Announcing Oldbuntu Linux

January 7, 2008 - 6:31pm
Anonymous (not verified)

We have started working on an Ubuntu Derivative utilising the 0.0.1 kernel. Our goal is to bring you the latest in Linux 0.0.1 technology in a friendly fashion.

Feel free to send us your comments, suggestions, feature requests etc.

That's hilarious

January 8, 2008 - 11:26pm
Anonymous (not verified)

OK, you got a laugh out of me with that. Good one! :-D

Haha, beat me to it! My

January 8, 2008 - 11:55pm
Dennis (not verified)

Haha, beat me to it! My first thought when I read this was, "If I add the 0.1 kernel to my grub menu, I wonder how much of Ubuntu I can get to run on it?"

linux 0.0.1 on ubuntu

September 21, 2008 - 10:37am
Popa Marius Adrian (not verified)

here is the compiling status on fresh hardy

http://mapopa.blogspot.com/search/label/linux%200.0.1

seem that now compiles just fine on ubuntu hardy

September 21, 2008 - 11:46am
Popa Marius Adrian (not verified)

wget http://draconux.free.fr/download/os-dev/linux0.01/linux-0.01-rm-3.x/linu...

tar -zxvf linux-0.01-rm-3.5.tgz
cd linux-0.01-rm-3.5
make

or time make

make[1]: Leaving directory `/home/mariuz/linux-0.01-rm-3.5/lib'
ld -s -x -M -Ttext 0 -e startup_32 boot/head.o init/main.o \
kernel/kernel.o mm/mm.o fs/fs.o \
lib/lib.a \
-o tools/system > System.map
(echo -n "SYSSIZE = (";stat -c%s tools/system \
| tr '\012' ' '; echo "+ 15 ) / 16") > tmp.s
cat boot/boot.s >> tmp.s
as86 -0 -o boot/boot.o tmp.s
00286 /*
00287 * This procedure turns off the floppy drive motor, so
00288 * that we enter the kernel in a known state, and
00289 * don't have to worry about it later.
00290 */
00286 /*
00287 * This procedure turns off the floppy drive motor, so
00288 * that we enter the kernel in a known state, and
00289 * don't have to worry about it later.
00290 */
rm -f tmp.s
ld86 -0 -s -o boot/boot boot/boot.o
gcc -Wall -O -fstrength-reduce -fomit-frame-pointer -fno-stack-protector \
-o tools/build tools/build.c
#chmem +65000 tools/build
objcopy -O binary -R .note -R .comment tools/system tools/system.bin
tools/build boot/boot tools/system.bin > Image
Boot sector 452 bytes.
System 89732 bytes.

real 0m4.512s
user 0m3.696s
sys 0m0.768s

I can't access the links given in there

April 21, 2008 - 10:28pm
sxg (not verified)

all the links above seem invalid to me, would anyone please send me a copy of linux-0.01-rm-3.3.tgz?
Thanks in advance, I would really appreciate that.
My e-mail address is song.xian-guang@hotmail.com, thanks.

seem to crashes on kvm

September 21, 2008 - 9:54am
Popa Marius Adrian (not verified)

i will submit an bug , i wanted to check it for 17 years anniversary ,with qemu is ok

sudo kvm -hdb hd_oldlinux.img -fda linux0.01-3.3.img -boot a -no-kvm-irqchip
unhandled vm exit: 0x200101 vcpu_id 0
rax 000000000000000f rbx 000000000000000f rcx 0000000000012660 rdx 0000000000000030
rsi 0000000000000001 rdi 0000000000000080 rsp 0000000000013618 rbp 0000000000000013
r8 0000000000000000 r9 0000000000000000 r10 0000000000000000 r11 0000000000000000
r12 0000000000000000 r13 0000000000000000 r14 0000000000000000 r15 0000000000000000
rip 0000000000005834 rflags 00000687
cs 0008 (00000000/007fffff p 1 dpl 0 db 1 s 1 type b l 0 g 0 avl 0)
ds 0010 (00000000/007fffff p 1 dpl 0 db 1 s 1 type 3 l 0 g 1 avl 0)
es 0010 (00000000/007fffff p 1 dpl 0 db 1 s 1 type 3 l 0 g 1 avl 0)
ss 0010 (00000000/007fffff p 1 dpl 0 db 1 s 1 type 3 l 0 g 1 avl 0)
fs 0017 (00000000/0009ffff p 1 dpl 3 db 1 s 1 type 3 l 0 g 1 avl 0)
gs 0017 (00000000/0009ffff p 1 dpl 3 db 1 s 1 type 3 l 0 g 1 avl 0)
tr 0020 (000127c0/00000068 p 1 dpl 0 db 0 s 0 type 9 l 0 g 0 avl 0)
ldt 0028 (000127a8/00000068 p 1 dpl 0 db 0 s 0 type 2 l 0 g 0 avl 0)
gdt 4878/7ff
idt 4078/7ff
cr0 80000011 cr2 0 cr3 0 cr4 0 cr8 0 efer 0
Aborted

Comment viewing options

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