现在的位置: 首页 > 综合 > 正文

what-is-the-bios-and-what-does-it-do

2013年09月18日 ⁄ 综合 ⁄ 共 1316字 ⁄ 字号 评论关闭

BIOS

http://forum-en.msi.com/faq/article/what-is-the-bios-and-what-does-it-do

CMOS

post  -- beep and  display

active other BIOSs

interrupt

configuration

booting and address

booting process and address 

and

grub

BIOS -- bootloader
0x7C00 (x86) -- OS
 

地址FFFF0H在PC中有特别的用途。系统在启动时,CS=F000H,IP=FFF0H,即从地址FFFF0H处开始执行,这个区域属于系统BIOS。(F000:FFF0)=EA5BE000F0(是JMP F000:E05B指令的十六进制表示),它立即跳转到BIOS的初始化程序,开始系统的启动过程。


对于很多人来讲0x7C00这个地址是很神秘的,不知道这是干什么的。但是对于了解过x86平台下BIOS启动过程的人,对这个地址再熟悉不过了。BIOS就是将MBR读入0x7C00地址,然后进行后续的引导的。操作系统或是bootloader开发者必须假设
他们的汇编代码被加载并从0x7C00处开始执行。0x7C00的定义对于这个地址,它不属于Intel x86平台规范的,而是属于BIOS规范中定义的内容。


+——————— 0×0| Interrupts vectors(中断向量表)

+——————— 0×400| BIOS data area(BIOS的数据区域)

+——————— 0×5??| OS load area(操作系统加载区域)

+——————— 0x7C00| Boot sector(引导区域)

+——————— 0x7E00| Boot data/stack(引导数据/堆栈)

+——————— 0x7FFF| (not used)+——————— (…)


BIOS将磁盘的第一个扇区(磁盘最开始的512字节)载入内存,放在0x0000:0x7c00处(见图三),如果个扇区的最后两个字节是“55 AA”,那么这就是一个引导扇区,这个磁盘也就是一块可引导盘。通常这个大小为512B的程序就称为引导程序(boot)。如果最后两个字节不是“55
AA”,那么BIOS就检查下一个磁盘驱动器。

通过上面的表述我可以总结出如下三点引导程序所具有的特点:

1.               它的大小是512B,不能多一字节也不能少一字节,因为BIOS只读512B到内存中去。

2.               它的结尾两字节必须是“55 AA”,这是引导扇区的标志。

3.               它总是放在磁盘的第一个扇区上(0磁头,0磁道,1扇区),因为BIOS只读第一个扇区。


操作系统引导探究

http://blog.csdn.net/daiyutage/article/details/8895895

UEFI

http://blog.csdn.net/u011643458/article/details/9853595

我所認知的BIOS

http://blog.csdn.net/lightseed/article/category/547391

抱歉!评论已关闭.