The old Linux kernel source ver 0.11 which has been tested under modern Linux, Mac OSX and Windows.
- a linux distribution: debian , ubuntu and mint are recommended
- some tools: gcc gdb qemu
- a linux-0.11 hardware image file: hdc-0.11.img, please download it from http://www.oldlinux.org, or http://mirror.lzu.edu.cn/os/oldlinux.org/, ant put it in the root directory.
- Now, This version already support the Ubuntu 16.04, enjoy it.
$ make help // get help
$ make // compile
$ make start // boot it on qemu
$ make debug // debug it via qemu & gdb, you'd start gdb to connect it.$ gdb tools/system
(gdb) set architecture i386:x86-64
(gdb) target remote :1234
(gdb) b main
(gdb) cThe original project is pretty old, and it can only be built on an old system without changes. This option makes compiling easier.
To build, you can run
make in-dockerIt builds a docker image including all required dependencies, and also build Linux 0.11 in it. After that, you can do the same as 1.2 in your host system.
- install cross compiler gcc and binutils
- install qemu
- install gdb. you need download the gdb source and compile it to use gdb because port doesn't provide i386-elf-gdb, or you can use the pre-compiled gdb in the tools directory.
- a linux-0.11 hardware image file: hdc-0.11.img
$ sudo port install qemu
$ sudo port install i386-elf-binutils i386-elf-gccoptional
$ wget ftp://ftp.gnu.org/gnu/gdb/gdb-7.4.tar.bz2
$ tar -xzvf gdb-7.4.tar.bz2
$ cd gdb-7.4
$ ./configure --target=i386-elf
$ makesame as section 2.2