码迷,mamicode.com
首页 > 系统相关 > 详细

linux0.12内核bootsect.S

时间:2015-03-31 14:14:36      阅读:124      评论:0      收藏:0      [点我收藏+]

标签:

这个文件就是0.12内核的主引导扇区代码,他的作用就是加载操作系统内核。

计算机加电,自检完毕后,BOIS就将启动设备的第一扇区加载到内存0x7c00(31KB)处,并开始从这里执行,若启动设备是硬盘的话,加载的即为该硬盘0磁道0柱面1扇区的内容,共512字节,以0xAA55为结束标志,这就是硬盘的MBR(master boot recorder)。

 

linux0.12内核bootsect.S中的代码编译后,将会写入启动设备的MBR中,它的主要工作加载操作系统内核的初始化程序setup.S和操作系统内核system模块。

 

为完成这个工作,bootsect.S开始执行时将自己移动到内存0x90000(576KB)处,然后在0x90200开始处加载setup.S程序,加载完毕后,又将system加载到内存0x10000(64KB)处。至此它的使命完成了,最后执行一句段间远转移指令,接下来cpu开始执行setup.S中的代码了。

linux0.12内核bootsect.S

标签:

原文地址:http://www.cnblogs.com/zg3407/p/4380544.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!