分析计算机启动过程中,计算机系统引导过程分析.doc

计算机系统引导过程分析

第三章、计算机系统引导过程分析

第一节 计算机加电自测(POST)

计算机在工作之前,必须检测并初始化所有系统部件,并将操作系统引导在内存中。系统检测和初始化过程一般由ROM BIOS控制。加电自测及初始化过程一般简称为POST(Power-on Self Test)。

3.1.1 计算机的启动方式:

1)系统加电(即开启系统):BIOS跳至由处理器复位向量(F:0000h)所指的入口点,执行所有POST测试和初始化工作。POST调用BIOS INT 19h 引导系统。

2)通过硬件复位键(RESET键)复位系统:(同上)。

3)通过按++三组合键(热启动):INT 09h键盘硬件中断服务例程将控制权转给BIOS POST。对64K以上的内存不作测试和初始化,但其他POST测试和初始化工作一律要执行。然后POST调用BIOS INT 19h 引导系统。

3.1.2 POST过程:

POST过程的初始化和自检功能是紧密联系的,一般可将这些功能分为二类:与中心系统硬件有关的功能;与配置和非系统硬件有关的功能。

中心硬件POST测试失败一般引起严重的系统板错误,并产生喇叭信号。在进行其他POST测试之前,中心硬件功能应正常,最重要的中心硬件最先测试和初始化。POST测试和初始化中心硬件的顺序如下:

在测试和初始化完之后,POST验证存储在CMOS RAM 中的系统配置数据是否与实际硬件一致。然后,POST 测试并初始化64K以上内存、键盘、软盘、硬盘驱动器、CRT控制器和其他非系统板硬件。POST测试和初始化配置与非系统硬件的顺序如下:

至此,计算机的加电自测完成。加电自测过程中可能出现的故障以及解决的方法在第三章中将专题讨论,本章不再熬述。

第二节 INT 19h引导系统

在加电自测完成之后,计算机将控制权交给INT19h,由INT19h引导并加载操作系统。在分析讨论INT19h工作过程之前,我们首先了解获得INT19h源程序的方法。

3.2.1 获得INT19h源程序的方法:

由于计算机在加栽操作系统的过程中,INT19h的入口参数被多次修改(如图3-1),因而原INT19h被包裹上了一层或多层外壳。因此原始的INT19h入口参数不能简单地从内存0000:0064H处获得,而必须去掉它的所有外壳才能获得。INT19h源程序的方法很多,下面以“采用DEBUG.EXE获得INT19h源程序”的方法为例,具体给大家介绍。

第一步、让计算机按缺省方式启动:将启动盘根目录下的CONFIG.SYS和AUTOEXEC.BAT改名后重新启动即可。之所以要按缺省方式启动,是因为按缺省方式启动时,INT19h被修改次数最少,也最容易找到原始INT19h的入口。

第二步、找到当前INT19h的入口地址:INT19h的入口地址位于内存0000:0064H处,用DEBUG的D命令即可显示。

第三步、获得并分析该层源程序:采用文件重定位方法可获得源程序。源程序分析举例如下:

0070:0000 18 09 17 23 01 EA 93 08-70 00 00 00 00 00 00 00 ...#....p.......

0070:0010 00 00 7C 03 23 01 00 00-00 00 00 00 70 00 01 02 ..|.#.......p...

0070:0020 00 E8 00 35 00 70 00 13-80 F5 06 00 07 43 4F 4E ...5.p.......CON

0070:00F0 70 00 00 80 F5 06 33 07-43 4F 4D 34 20 20 20 20 p.....3.COM4

0070:0100 10 C8 19 00 C0 13 97 9F-00 F0 15 59 F8 00 F0 19 ...........Y....

0070:0110 F2 E6 00 F0 1B 53 FF 00-F0 4E 03 70 00 00 FF F8 .....S...N.p....

0070:0630 00 00 00 00 00 00 00 00-00 00 FF FF FF FF FC 01 ................

0070:0640 01 02 C3 E2 00 F0 08 A5-FE 00 F0 09 87 E9 00 F0 ................

0070:0650 0A 73 F7 00 F0 0B 73 F7-00 F0 0C 73 F7 00 F0 0D .s....s....s....

0070:0660 73 F7 00 F0 0E 57 EF 00-F0 7

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值