A. linux-0.11-081030.tar.gz
B. linux-0.11-devel-040329.zip
linux 0.11源码文件在linux-0.11-081030.tar.gz中,进入目录解压后的目录linux-0.11中
1. ubuntu 8.04 gcc 版本为4.2.4,但是GCC4.x 默认检查stack安全,会导致出现__stack_chk_fail错误,所以在编译之前应先修改Makefile:
linux-0.11/Makefile
linux-0.11/kernel/Makefile
linux-0.11/kernel/chr_dev/Makefile
linux-0.11/kernel/blk_dev/Makefile
linux-0.11/fs/Makefile
在 CFLAGS参数中加入-fno-stack-protector
2. Make的时候还有一个错误的地方,提示“elif”,将其改成else即可
3. 在第二步出问题后,进入第三步make clean一下,然后再make
我将linux-0.11-devel-040329.zip的文件都解压到linux0.11的目录下,由于各种原因不成功(总是出现在配置文件上有问题,不知道是版本的问题还是怎么了),
东拼西凑最后终于出来了,其中的道道还是不大清楚。linux-0.11-devel-040329.zip解压如下:
配置文件如下:
#gdbstub:enabled=1, port=1234, text_base=0, data_base=0, bss_base=0
romimage: file=$BXSHARE/BIOS-bochs-latest #, address=0xf0000
megs: 16
vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest
#floppyb: 1_44=./rootimage-0.11-for-orig, status=inserted
floppya: 1_44="bootimage-0.11-hd", status=inserted
ata0-master: type=disk, path="hdc-0.11-new.img", mode=flat, cylinders=410, heads=16, spt=38
boot: a
log: bochsout.txt
vga_update_interval: 300000
keyboard_serial_delay: 200
keyboard_paste_delay: 100000
#floppy_command_delay: 50000
#ips: 100000000
private_colormap: enabled=0
fullscreen: enabled=0
cpu: count=1
i440fxsupport: enabled=1
运行界面: