码迷,mamicode.com
首页 > 移动开发 > 详细

BIOS 的作用

时间:2015-03-13 22:07:41      阅读:378      评论:0      收藏:0      [点我收藏+]

标签:

BIOS 的作用

BIOS 的作用

实模式 :20 位,1M 的存储器可以直接访问 BIOS 以及硬件,没有分页和多任务,一开机就是实模式

BIOS :由硬件自己启动,他位于 0xFFFF0,硬件一加电就会自动执行他 CS:0xF000,IP:FFF0 –> 0xFFFF0

保护模式 :我们平常使用的模式。在实模式中 IP 为 16 位,在保护模式下,IP 变为 32 位,叫 EIP

BIOS 启动的作用,检测硬件, 更重要的是 在内存中建立 中断向量表 和 中断服务程序

1K:0x0 ~ 0x3FF
256B:0x0 ~ 0xFF

中断向量表 在内存中:
0x00000 ~ 0x003FF:中断向量表
0x00400 ~ 0x004FF:BIOS 数据区
0x0E05B ~ 0x0FFFF:与中断向量表相关的若干中断服务程序

中断向量表 有 1K,其他包含 256 个中断向量,每个中断向量表就占 4K,其中包含 CS 和 IP 的值
每个中断向量都指向一个具体的中断服务程序

计算机分 3 次 加载 操作系统 内核

  • 由 BIOS 中断 int 0x19 把第一扇区 bootsect 的内容加载到内存
  • 2 和 3 在 bootsect 的指挥下,分别把其后的 4 个的扇区和随后的 240 个扇区的内容加载到内存

其他 BIOS 中断 0x19 是由计算机的 BIOS 启动的。中断向量 0x19 将 CPU 指向 0x0E6F2 (在 0x0E05B ~ 0x0FFFF 存在有 与中断向量表相关的若干中断服务程序,其中 0x19 对应的中断服务程序就在这里 0xE6F2) 。他的作用是:
把软盘第一扇区的程序 (512B) 加载到内存中的指定位置

中断向量表 interrupt verctor table:是实模式中断机制的重要组成部分,记录所有中断对应的中断服务程序的内存地址
中断服务 interrupt service:具有特定功能的程序

int 0x19 执行完之后,就会将第一扇区的内容复制到内存 0x07C00 处

这个扇区里面的内容就是 linux 的引导程序,也就是 bootsect 启动扇区,然后 bootsect 执行软盘中的第二批,第三批代码载入内存中

技术分享

BIOS 的作用

标签:

原文地址:http://www.cnblogs.com/sunznx/p/4336050.html

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