linux 0.11 研究用 编译到运行整套

上传者: guotong1988 | 上传时间: 2022-03-28 00:22:59 | 文件大小: 15.46MB | 文件类型: -
1、下载一个带有 gcc 1.40 编译环境的 Linux 0.11 系统软件包。 http://oldlinux.org/Linux.old/bochs/linux-0.11-devel-040329.zip 2、解压linux-0.11-devel-040329.zip 3、安装Bochs: 在解压的目录里有Bochs安装文件:Bochs-2.1.1.exe,点击安装 4、把解压下的大多数文件拷贝到安装目录下(除了Bochs-2.1.1.exe) 5、双击bochsrc-hd.bxrc运行,能运行起来说明,安装成功 6、运行bochs, 在进入目录/usr/src/linux后键入make命令, 即可编译 Linux 0.11 内核源代码 make clean ## 来清除所有编译好的*.o文件或其它模块 make ## 重新编译 出现错误: gcc-cc1: Invalid option "string-insns" 请将每个Makefile文件中的-mstring-insns参数去掉。每个子目录中都有一个,kernel目录下还有三个驱动程序子目录(math, blk_drv, chr_drv) (/usr/src/linux,fs,lib,kernel,kernel/blk_drv,kernel/chr_drv,kernel/math) 同时,到/usr/local/bin中把ar 改名为gar, 或者复制一个 修改完后再执行 make clean make 7、make成功后生成引导启动映象文件Image。若需要输出这个Image文件, 可以首先备份bootimage-0.11-hd文件, 然后使用下面命令就会把bootimage-0.11-hd替换成新的引导启动文件 dd bs=8192 if=Image of=/dev/fd0 注意此处是把编译完的Image(启动映象文件)输出到/dev/fd0,注意此处的/dev/fd0实际上就是bochs中定义的floppya: 1_44="bootimage-0.11-hd", status=inserted,也就是要替换"bootimage-0.11-hd" 8、直接重新启动 Bochs 即可使用该新编译生成的 bootimage-0.11-hd 来引导系统。 9、如果不相信,可以修改bootsect.s然后重新编译,就可以看到启动的时候 Loading system...create by happy (还要执行# dd bs=8192 if=Image of=/dev/fd0) 嘿嘿,可以任意修改,主要修改几个地方: ! Print some inane message mov ah,#0x03 ! read cursor pos xor bh,bh int 0x10 mov cx,#47 mov bx,#0x0007 ! page 0, attribute 7 (normal) mov bp,#msg1 mov ax,#0x1301 ! write string, move cursor int 0x10 msg1: .byte 13,10 .ascii "Loading system ...this is create by happy" .byte 13,10,13,10 .org 508

文件下载

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明