论坛: 菜鸟乐园 标题: bootsect.s---setup.s-----main.c 复制本贴地址    
作者: cimsxiyang [cimsxiyang]    版主   登录
[大概描述]
linux启动顺序执行文件:
bootsect.s---setup.s-----main.c
当pc  POST后,启动设备的第一个扇区的数据(bootsect.s)并将其装载到0x7C00处,执行。再将其移载到绝对物理地址0x90000处,重置磁盘控制器,从启动设备读入2K数据(setup.s),装载到0x90200处。内核剩下的部分装载到0x10000处。
  完成以上工作,便显示load...,整个系统从0x10000处移动到0x0100处,并进入保护模式,转入0x1000执行剩下的代码。
载入内核(start_kernel)/* ./init/main.c */
一系列的初始化和登记。


[疑问]
1。bootsect.s是怎样把权利交给setup.s的?
2。对这个一系列的内存地址跳转不是很清楚,譬如说“第一个扇区的数据为什么会从0x7C00被移到0x90000”?
 
[声明]
我的汇编水平不敢恭维啊,大家还请包涵包涵!
另外,假如我理解有什么错误,还请大家不吝指教




地主 发表时间: 03/31 21:22

回复: cimsxiyang [cimsxiyang]   版主   登录
补充一下:
谁知道有学习c和汇编的好地方,不妨推荐一下,
不恶补不行了。
:)


B1层 发表时间: 04/01 21:21

回复: xiaoxingchi [xiaoxingchi]   论坛用户   登录
asm.yeah.net

学汇编 的地方

B2层 发表时间: 04/01 22:02

回复: group [group]   论坛用户   登录
是不是发错版了?

B3层 发表时间: 04/02 11:45

回复: cimsxiyang [cimsxiyang]   版主   登录
sorry
我把他发到操作系统

B4层 发表时间: 04/02 11:50

论坛: 菜鸟乐园

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号