设为首页 加入收藏

TOP

利用bochs调试引导程序和Linux内核
2014-11-24 08:20:32 来源: 作者: 【 】 浏览:1
Tags:利用 bochs 调试 引导 程序 Linux 内核


该段代码需要使用as86汇编编译器编译,在Ubuntu10.04中没有,需要先apt-get install bin86进行安装,安装结束后使用


as86 -0 -a -o boot.o boot.s //编译


ld86 -0 -s -o boot boot.o //链接,去掉符号信息


dd bs=32 if=boot of=cun skip=1 //删除BOOT程序前的32B,这部分是MINIX头结构,并将文件名改为cun(这是偶的名字


<-_->)


拷贝到Windows下bochs2.4.5的安装目录下,下面使用bochs2.4.5中的Disk Image Creation Tool创建一个空的虚拟软盘IMG,这一步根据提示一问一答的进行应该没有任何问题,最后在安装目录下生成一个cun.img文件,这就是我们制作的虚拟软盘映象文件。


接着就是配置bochsrc-simpel.txt文件,这个是配置文件的例子,需要对此进行配置以满足我们自己的要求,主要要修改的选项有一下几个:


megs: 16 //由于我的boot程序小,内存申请16M足够了


floppya: 1_44="cun.img", status=inserted //我的启动代码的名字


ata0-master: type=disk, path="cun.img", mode=flat,cylinders=227, heads=16, spt=63 //一些启动的属性,如启动时启动的路径,是以安装目录为根路径的,最后三个参数是根据Disk Image Creation Tool产生IMG文件时候给出的数字


然后将bochsrc-simpel.txt的后缀名改为.bxrc,这时这个TXT文档也变成可执行程序图标。


最后一步是使用Floppy Writer软件将我们编译好的引导程序Cun注入到虚拟软盘cun.img中,这个软件可以再网上免费下载,使用简单,不详述。


双击bochsrc-simpel.bxrc,屏幕上显示红色的"Loading System...",大功告成,可以继续Linux内核探索之旅。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇用mmap写Linux用户空间驱动 下一篇u-boot的通用目录是怎么做到与平..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·C 内存管理 | 菜鸟教 (2025-12-26 20:20:37)
·如何在 C 语言函数中 (2025-12-26 20:20:34)
·国际音标 [ç] (2025-12-26 20:20:31)
·微服务 Spring Boot (2025-12-26 18:20:10)
·如何调整 Redis 内存 (2025-12-26 18:20:07)