Linux 0.10 (November 11, 1991 ???)0.10
commitfa1ec1000cf9954b8e78216c11b0c3f86336d488
authorLinus Torvalds <torvalds@linuxfoundation.org>
Fri, 23 Nov 2007 20:08:59 +0000 (23 15:08 -0500)
committerLinus Torvalds <torvalds@linuxfoundation.org>
Fri, 23 Nov 2007 20:08:59 +0000 (23 15:08 -0500)
tree50513ca5b65213e4f55e000924bdb866a5ea062e
parentbb441db1a90a1801ef4e6546417a8d907c55d92f
Linux 0.10 (November 11, 1991 ???)

Likely correct 0.10: these were re-created from the RCS tree that Ted
Ts'o had, no known pristine 0.10 tree (or, sadly, 0.02 and 0.03 trees)
exist any more.

Linux-0.10 was actually a major step.  It was _almost_ able to host
itself, and if I remember correctly, a small patch I posted to the
newsgroup a few days later got the buffer cache handling stable enough
that Linux could now compile itself under itself without running out of
memory due to a memory leak.

Apart from bugfixes, the major update here is the support for
mount/umount.  But you can also tell that others are starting to test
out this thing, since the harddisk geometry is now auto-sensed, and we
support the US keyboard layout in addition to the Finnish one.

(This is also the first actual thing from the outside: the US keyboard
layout tables came from Alfred Leung, although with major editing by me.)

 - add copyright messages ("(C) 1991  Linus Torvalds")

   Nobody else is really doing coding (yet..) but clearly I'm starting
   to be a lot more aware of other people here.

 - split up boot/boot.s into boot/bootsect.s and boot/setup.s
 - autodetect floppy type for booting
 - make root device and boot device configurable

 - support up to 16MB of physical memory (instead of just 8MB ;)

   Whee. We're clearly moving into the "big iron" phase of Linux.

 - move drivers around.  We now have separate subdirectories for
   character device drivers (tty and memory) and block device drivers.

 - initial floppy driver support!

   You can see how the "block layer" interfaces evolved directly from
   moving parts of the original hd.c driver into ll_rw_block.c and
   making them "generic".

 - make file reading do simple read-ahead
 - make file writing avoid reading in blocks that are totally overwritten
 - add support for /dev/port and /dev/null (!!)
 - improve pipe throughput

 - add support for sigaction(), not just old-style signal()

   This also rewrites most of the signal code in C rather than assembly.

 - add "mknod()" and "mount()"/"umount()" system calls, and support
   for traversing over mount-points.

 - add "sessions" and setsid(), so that we get proper SIGHUP's
111 files changed:
Makefile
RCS/Makefile,v [new file with mode: 0644]
boot/boot.s [deleted file]
boot/bootsect.s [new file with mode: 0644]
boot/bootsect.sg [new file with mode: 0644]
boot/gas-convert [new file with mode: 0644]
boot/head.s
boot/setup.s [new file with mode: 0644]
boot/setup.sg [new file with mode: 0644]
fs/Makefile
fs/RCS/buffer.c,v [copied from fs/buffer.c with 56% similarity]
fs/RCS/exec.c,v [copied from fs/exec.c with 60% similarity]
fs/RCS/namei.c,v [copied from fs/namei.c with 79% similarity]
fs/RCS/open.c,v [copied from fs/open.c with 73% similarity]
fs/bitmap.c
fs/block_dev.c
fs/buffer.c
fs/char_dev.c
fs/exec.c
fs/exec.c.orig [copied from fs/exec.c with 60% similarity]
fs/exec.c~ [copied from fs/exec.c with 70% similarity]
fs/fcntl.c
fs/file_dev.c
fs/file_table.c
fs/inode.c
fs/ioctl.c
fs/namei.c
fs/namei.c~ [copied from fs/namei.c with 81% similarity]
fs/open.c
fs/open.c~ [copied from fs/open.c with 93% similarity]
fs/pipe.c
fs/read_write.c
fs/stat.c
fs/super.c
fs/truncate.c
fs/tty_ioctl.c
include/RCS/ctype.h,v [copied from include/ctype.h with 68% similarity]
include/asm/RCS/segment.h,v [copied from include/asm/segment.h with 73% similarity]
include/asm/segment.h
include/ctype.h
include/ctype.h~ [copied from include/ctype.h with 100% similarity]
include/linux/RCS/kernel.h,v [new file with mode: 0644]
include/linux/config.h
include/linux/fdreg.h [new file with mode: 0644]
include/linux/fs.h
include/linux/hdreg.h
include/linux/kernel.h
include/linux/kernel.h.orig [new file with mode: 0644]
include/linux/kernel.h~ [copied from include/linux/kernel.h with 100% similarity]
include/linux/sched.h
include/linux/sys.h
include/linux/tty.h
include/signal.h
include/unistd.h
init/main.c
kernel/Makefile
kernel/RCS/exit.c,v [new file with mode: 0644]
kernel/RCS/sched.c,v [copied from kernel/sched.c with 52% similarity]
kernel/RCS/sys.c,v [copied from kernel/sys.c with 57% similarity]
kernel/asm.s
kernel/blk_drv/Makefile [new file with mode: 0644]
kernel/blk_drv/blk.h [new file with mode: 0644]
kernel/blk_drv/floppy.c [new file with mode: 0644]
kernel/blk_drv/hd.c [new file with mode: 0644]
kernel/blk_drv/ll_rw_blk.c [new file with mode: 0644]
kernel/blk_drv/ramdisk.c [new file with mode: 0644]
kernel/blk_drv/ramdisk.c~ [new file with mode: 0644]
kernel/chr_drv/Makefile [new file with mode: 0644]
kernel/chr_drv/RCS/keyboard.S,v [copied from kernel/keyboard.s with 85% similarity]
kernel/chr_drv/console.c [moved from kernel/console.c with 94% similarity]
kernel/chr_drv/keyboard.S [copied from kernel/keyboard.s with 83% similarity]
kernel/chr_drv/keyboard.S.jtkohl [copied from kernel/keyboard.s with 85% similarity]
kernel/chr_drv/keyboard.S.orig.orig [copied from kernel/keyboard.s with 87% similarity]
kernel/chr_drv/keyboard.S~ [moved from kernel/keyboard.s with 85% similarity]
kernel/chr_drv/rs_io.s [moved from kernel/rs_io.s with 96% similarity]
kernel/chr_drv/serial.c [moved from kernel/serial.c with 95% similarity]
kernel/chr_drv/tty_io.c [moved from kernel/tty_io.c with 91% similarity]
kernel/exit.c
kernel/exit.c~ [copied from kernel/exit.c with 59% similarity]
kernel/fork.c
kernel/hd.c [deleted file]
kernel/malloc.c [new file with mode: 0644]
kernel/mktime.c
kernel/panic.c
kernel/printk.c
kernel/sched.c
kernel/sched.c~ [copied from kernel/sched.c with 55% similarity]
kernel/signal.c [new file with mode: 0644]
kernel/sys.c
kernel/sys.c~ [copied from kernel/sys.c with 81% similarity]
kernel/system_call.s
kernel/traps.c
kernel/vsprintf.c
lib/Makefile
lib/_exit.c
lib/close.c
lib/ctype.c
lib/dup.c
lib/errno.c
lib/execve.c
lib/open.c
lib/setsid.c
lib/string.c
lib/wait.c
lib/write.c
mm/Makefile
mm/memory.c
mm/page.s
tools/RCS/build.c,v [new file with mode: 0644]
tools/build.c
tools/build.c.orig [new file with mode: 0644]