Chinaunix首页 | 论坛 | 博客

net

  • 博客访问: 136962
  • 博文数量: 4
  • 博客积分: 1995
  • 博客等级: 上尉
  • 技术积分: 320
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-06 15:30
文章分类

全部博文(4)

文章存档

2008年(4)

我的朋友
最近访客

分类:

2008-04-28 17:13:43

主板(BIOS)启动的顺序
1 .BIOS 的管理内容
  BIOS ROM 芯片对于主板的意义就在于全面管理,而BIOS 管理功能的强弱其实在很大程度上也决定 了一款主板的性能是否优越。在这里,BIOS 的管理功能主要包括:
  (1)BIOS 中断服务程序。BIOS 中断服务程序实质上就是微机系统中软件与硬件之间的一个可编程接口,主要用于程序软件功能与微机硬件之间的接口,例如Windows 98 对于软驱、光驱、硬盘等的管理,中断的设置等。
  (2)电脑部件配置记录是放在一块可写的CMOS RAM 芯片中的,主要保存着系统的基本情况、CPU 特性、软硬盘驱动器等部件的信息。在 BIOS ROM 芯片中装有“系统设置程序”则重点用来设置CMOS RAM 中的各项参数。这个程序在开机时按某个键就可进入设置状态,并会提供给用 户一个良好的操作界面。
  (3)POST(Power On Self Test,上电自检)。一部微机接通电源后,系统会首先利用POST 程序对内部各个设备进行检查。通 常完整的POST自检包括对CPU 、640KB 基本内存、1MB 以上的扩展内存、ROM 、主板、CMOS 存储器、串并口、显示卡、软硬盘子系统 及键盘进行测试,一旦在自检中发现问题,系统将给出提示信息或鸣笛警告。
  (4)BIOS 系统设置程序。系统完成POST自检后,ROM BIOS 就会按照系统CMOS 设置中保存的启动顺序搜索软硬盘驱动器及CD- ROM 、网络服务器等有效地启动驱动器,依次读入操作系统引导记录,然后 将系统控制权交给引导记录,并由引导记录来完成系统的顺序启动。
  2 .BIOS 启动顺序
  接通电脑的电源,系统将执行POST 上电自检。完整的POST自检包括对CPU 、系统主板、基本的640KB 内存、1MB 以上的扩展内存、系 统ROM BIOS 的测试;CMOS 中系统配置的校验;初始化视频控制器,测试视频内存、检验视频信号和同步信号,对CRT 接口进行测试;对键盘、 软驱、硬盘及CD-ROM 子系统作检查;对并行口(打印机)和串行口(RS232)进行检查。当自检完成后,系统会自动转入BIOS 的下一步骤, 即 从A 驱、C 驱或CD-ROM 以及网络服务器上寻找操作系统进行启动,然后将控制权交给操作系统。具体步骤如下:
  (1)当按下电源开关时,电源就开始向主板和其他设备供电。此时电压还不太稳定,主板上的控制芯片组会向CPU发出并保持一个Reset(重置)信 号,让CPU 内部自动恢复到初始状态,但CPU在此刻不会马上执行指令。当芯片组检测到电源已经开始稳定供电后(当然从不稳定到稳定的过程只是一瞬间的 事情),便撤去Reset信号(如果是手工按下计算机面板上的Reset按钮来重启机器,那么松开该按钮时芯片组就会撤去Reset信号),CPU 马上 就从地址FFFF0H 处开始执行指令。无论是Award BIOS还是AMI BIOS,放在这里的只是一条跳转指令,跳到系统BIOS中真正的启动代 码处。
  (2)BIOS的启动代码首先要做的事情就是执行POST 。POST的主要任务是检测系统中一些关键设备是否存在和能否正常工作,例如内存和显卡等 设备。由于POST是最早进行的检测过程,此时显卡还没有初始化,如果系统BIOS在进行POST 的过程中发现了一些致命错误,例如没有找到内存或者内 存有问题(此时只会检查640KB 常规内存),那么系统BIOS 就会直接控制喇叭发声来报告错误,声音的长短和次数代表了错误的类型。在正常情况下, POST过程进行得非常快,我们几乎无法感觉到它的存在,POST结束之后就会调用其他代码来进行更完整的硬件检测。
  (3)接下来主板BIOS 将查找显卡的BIOS,找到显卡BIOS 之后就调用它的初始化代码,由显卡BIOS 来初始化显卡,此时多数显卡都会在 屏幕上显示出一些初始化信息,介绍生产厂商、图形芯片类型等内容,不过这个画面几乎是一闪而过。主板BIOS 接着会查找其他设备的BIOS 程序,找到 之后同样要调用这些BIOS内部的初始化代码来初始化相关的设备。
  (4)查找完所有其他设备的BIOS之后,系统BIOS将显示出它自己的启动画面,其中包括有系统BIOS 的类型、序列号和版本号等内容。
  (5)接着主板BIOS将检测和显示CPU的类型和工作频率,然后开始测试所有的RAM,并同时在屏幕上显示内存测试的进度,我们可以在CMOS设置中自行决定使用简单耗时少或者详细耗时多的测试方式(测试1 次或3 次)。
  (6)内存测试通过之后,主板BIOS将开始检测系统中安装的一些标准硬件设备,包括硬盘、CD-ROM 、串口、并口、软驱等设备,另外绝大多数较 新版本的BIOS 在这一过程中还要自动检测和设置内存的定时参数、硬盘参数和访问模式等。标准设备检测完毕后,系统BIOS内部支持即插即用的代码将开 始检测和配置系统中安装的即插即用设备,每找到一个设备之后,系统BIOS都会在屏幕上显示出设备的名称和型号等信息,同时为该设备分配中断、DMA 通 道和I/O 端口等资源。
  (7)到这一步为止,所有硬件都已经检测配置完毕了,主板BIOS 会重新清屏并在屏幕上方显示出一个表格,其中概略地列出了系统中安装的各种标准硬 件设备,以及它们使用的资源和一些相关工作参数。接下来主板BIOS 将更新ESCD (Extended System Configuration Data,扩展系统配置数据)。ESCD 是主板BIOS 用来与操作系统交换硬件配置 信息的一种手段,这些数据被存放在CMOS(一小块特殊的RAM,由主板上的电池来供电)之中。 通常ESCD 数据只在系统硬件配置发生改变后才会更 新,所以不是每次启动机器时我们都能够看到 “Update ESCD ……Success ”这样的信息。不过,某些主板的系统BIOS在保存 ESCD 数据时使用了与 Windows 9x 不相同的数据格式,于是Windows 9x 在它自己的启动过程中会把ESCD 数据修改成自己的格 式,但在下一次启动机器时,即使硬件配置没有发生改变,系统BIOS 也会把ESCD 的数据格式改回来, 如此循环,将会导致在每次启动机器时,系统 BIOS 都要更新一遍ESCD,这就是为什么有些机器在每次启动时都会显示出相关信息的原因。
  (8)ESCD更新完毕后,系统BIOS的启动代码将进行它的最后一项工作,即根据用户指定的启动顺序启动。以从C盘启动为例,系统BIOS 将读取 并执行硬盘上的主引导记录,主引导记录接着从分区表中找到第一个活动分区,然后读取并执行这个活动分区的分区引导记录,而分区引导记录将负责读取并执行 Io.sys,这是DOS 和Windows 9x 最基本的系统文件。Windows 9x的Io.sys首先要初始化一些重要的系统数据,然后就显示 出我们熟悉的蓝天白云,Windows 将继续进行DOS部分和GUI(图形用户界面)部分的引导和初始化工作。如果系统之中安装有引导多种操作系统的工 具软件,通常主引导记录将被替换成该软件的引导代码,这些代码将允许用户选择一种操作系统,然后读取并执行该操作系统的 基本引导代码(DOS 和 Windows 的基本引导代码就是分区引导记录).

3.主板BIOS 启动顺序中的各部分功能
  在上述8 步的操作中,可以看到,BIOS 的主要功能有以下两个方面:
  (1)自检及初始化
  这部分负责启动计算机,具体有3个部分。第一个部分是用于计算机刚接通电源时对硬件部分的检测,也叫做加电自检(POST),功能是检查计算机是否良 好,例如内存有无故障等。第二个部分是初始化,包括创建中断向量、设置寄存器、对一些外部设备进行初始化和检测等。其中很重要的一部分是 BIOS 设 置,主要是针对硬件的设置参数,当计算机启动时会读取这些参数,并和实际硬件设置进行比较,如果不符合,会影响系统的启动。最后一个部分是引导程序,功能 是引导DOS或其他操作系统。BIOS先从软盘或硬盘的开始扇区读取引导记录,如果没有找到,则会在显示器上显示没有引导设备,如果找到引导记录会把计算 机的控制权转给引导记录,由引导记录把操作系统装入计算机,在计算机启动成功后,BIOS的任务就完成了。
  (2)程序服务处理和硬件中断处理
  虽然是独立的两个部分,但它们在使用上密切相关。程序服务处理主要是为应用程序和操作系统服务,这些服务主要与输入/输出设备有关,例如读磁盘、文件 输出到打印机等。为了完成这些操作, BIOS 必须直接与计算机的I/O 设备打交道,它通过端口发出命令,向各种外部设备传送数据以及从它们那儿接收 数据,使程序能够脱离具体的硬件操作,而硬件中断处理则分别处理PC 机硬件的需求。因此这两部分分别为软件和硬件服务,组合到一起,使计算机系统正常运 行。
  BIOS 的服务功能是通过调用中断服务程序来实现的,这些服务分为很多组,每组有一个专门的中断。例如视频服务,中断号为10H;屏幕打印,中断号 为05H;磁盘及串行口服务,中断号为14H等。每一组又根据具体功能细分为不同的服务号。应用程序需要使用哪些外设、进行什么操作只需要在程序中用相应 的指令说明即可,无需直接控制。
  常见的BIOS IC 封装有以下两种:
  ● DIP 封装:DIP 封装为长方形传统IC 包装方式,通常插在插座上,一般的主板、大型板卡上都使用这种芯片。
  ● PLCC:PLCC 封装为正方形四边都有折弯形接脚,笔记本电脑、Modem 、小型板卡使用这种芯片。
阅读(1665) | 评论(0) | 转发(0) |
0

上一篇:Bios 启动原理

下一篇:grub grub\stage1\stage1.s

给主人留下些什么吧!~~