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

Linux源码学习(3) 2013-2-27

时间:2015-07-07 21:00:08      阅读:252      评论:0      收藏:0      [点我收藏+]

标签:

 

Setup.s的过程

1.利用Rom bios中断读取系统硬件信息 并存储到0x90000位置即原来bootsect.s的位置

2.将System模块从0x10000位置移到0x00000处

3.加载IDTR和GDTR

4.开启A20地址线

5.重新设置8259A的中断向量,将0x00~0x0f 设置成0x20~0x2f

6.设置CR0寄存器,进入保护模式

7.跳转到System模块最前面的Head.s中开始执行

 

关于A20地址线

实模式下需要A0~A19地址线,通过A20信号来判断是否开启了高位地址。

A20信号读取在当时是通过8042键盘上一个空闲的IO端口P2来实现的

 

此时内存视图

技术分享

 

Linux源码学习(3) 2013-2-27

标签:

原文地址:http://www.cnblogs.com/fengpeng/p/4628391.html

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