你现在位置:首页>技术论文>软件知识>正文
BIOS的启动过程
日期:2007-6-3 10:30:00 来源:本站整理  
点击: 作者:仇先生
点击【】放大字体.
BIOS的启动过程 
WWW_P※LCJS_COM-PLC-)技.术_网

W1WW_P4LCJS_COM-PLC-技.术_网

只要一打开计算机的电源开关,一个叫Bootstrap(引导程序)的小软件就要发挥作用,
WW.W_PLCJS_COM-PLC-技.术_网

它常驻在BIOS ROM的地址FFFFOH处,当ROM加载程序加载它后,它就完成下面的几项工
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

作。
W1WW_P4LCJS_COM-PLC-技.术_网

WW.W_PLC※JS_C,OM-PL,C-技.术_网

1、加电自检
WWW_PLCJS@_COM%-PLC-技.术_网

WWW_PLCJS_COM-PLC-技.术_网

POST(Post On Self Text,加电自检子程序)测试系统的完整性,如果系统通过测试
WWcW_PLCJS_COM-PLC-技.术_网

,计算机扬声器发出一短促的鸣叫声(是否有鸣叫声取决于BIOS的厂家,这里以广泛使
WWcW_PLCJS_COM-PLC-技.术_网

用的Award的BIOS为例),如果系统出现故障而未通过测试,根据故障的不同扬声器将
WWW.PLCJS.COM——可编程控制器技术门户

发出不同的鸣叫声,因为各个厂商对鸣叫声的定义不同,要了解各个鸣叫声的意义需查
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

看BIOS或者主板厂商的用户手册。某些BIOS在检测出系统故障时会暂停并且在显示器上
WWcW_PLCJS_COM-PLC-技.术_网

显示出相关的错误信息(如键盘错误等)。在POST过程还要测试内存的完整性。
WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

plcjs.技.术_网

2、检测即插即用设备
WWW_PL※CJS_COM-PLC-技.术_网

P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

3、查找引导盘
WWW_PLC※JS_COM-PmLC-技.术_网

plcjs.技.术_网

引导程序接着检测BIOS中的设置以找到第一个可引导的驱动器(一般为A盘或C盘),如
WWW.PLCJS.COM——可编程控制器技术门户

果在检测完BIOS中指定的所有可引导器仍未发现引导驱动器,引导程序暂停启动过程并
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

显示一个错误信息:找不到启动盘。
WWcW_PLCJS_COM-PLC-技.术_网

WWW_PL※CJS_COM-PLC-技.术_网

(二)、Dos的启动过程
WW.W_PLC※JS_C,OM-PL,C-技.术_网

WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

操作系统加载程序从ROM加载程序得到控制权后就开始DOS的启动,其步骤如下。
WWW_P※LCJS_COM-PLC-)技.术_网

P.L.C.技.术.网——可编程控制器技术门户

1、加载IO.SYS
WWcW_PLCJS_COM-PLC-技.术_网

WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

操作系统加载程序从引导驱动器上读取主引导记录MBR(Master Boot Record)并将控
P.L.C.技.术.网——可编程控制器技术门户

制权叫给MBR,MBR读取分区表(在MBR的尾部)并找到引导分区的位置,MBR将控制权叫
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

给引导分区的引导扇区(引导扇区包含磁盘引导程序和磁盘特性表)上的磁盘引导程序
——可——编——程——控-制-器-技——术——门——户

,检测BIOS参数块(BPB,BIOS Parameter Block)以找到操作系统引导文件所在的根
WW.W_PLCJS_COM-PLC-技.术_网

目录,将操作系统引导文件IO.SYS从根目录拷贝进内存,IO.SYS实际上是一个可执行文
W1WW_P4LCJS_COM-PLC-技.术_网

件并且只能位于引导分区的第一磁道上。
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

2、加载FAT和MSDOS.SYS
——可——编——程——控-制-器-技——术——门——户

WWW_PLC※JS_COM-PmLC-技.术_网

3、处理CONFIG.SYS和AUTOEXEC.BAT
WW.W_PLCJS_COM-PLC-技.术_网

WWW_P※LCJS_CO※M-PLC-技-.术_网

如果CONFIG.SYS文件不存在,IO.SYS从MSDOS.SYS的“WinBootDir=”获得Ifshlp.sys、
plcjs.技.术_网

Himem.sys和Setver.exe这三个文件的位置,然后自动加载这三个必需的驱动程序。如
WWcW_PLCJS_COM-PLC-技.术_网

果MSDOS.SYS中有BootGUI=0这个选项,IO.SYS将控制权交给命令行解释器COMMAND.COM
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

(或者叫给CONFIG.SYS中由命令“SHELL=”指定的命令行解释器),然后COMMAND.COM
WWW.PLCJS.COM——可编程控制器技术门户

将控制权叫给计算机用户,也就是等待用户输入DOS命令,至此DOS的启动过程完成。
plcjs.技.术_网

WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

(三)、Windows的启动过程
W1WW_P4LCJS_COM-PLC-技.术_网

WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

在DOS启动过程的最后一步,如果MSDOS.SYS中是BootGUI=1而不是BootGUI=0这个选项,
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

IO.SYS将控制权将交给Windows加载程序以继续加载Windows,Windows的启动过程真正
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

开始。
WWW_PLCJS_COM-PLC-技.术_网

WWcW_PLCJS_COM-PLC-技.术_网

1、显示“Starting Windows...”
WWW_PLC※JS_COM-PmLC-技.术_网

W1WW_P4LCJS_COM-PLC-技.术_网

屏幕显示“Starting Windows 9x...”这个提示信息,在这个信息显示的过程中:
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

WW.W_PLC※JS_C,OM-PL,C-技.术_网

MSDOS.SYS中的BootDelay=n(n为整数)选项可以控制该信息的显示延长时间,若
WW.W_PLC※JS_C,OM-PL,C-技.术_网

MSDOS.SYS没有该选项,默认该信息显示3秒。
WWW_P※LCJS_COM-PLC-)技.术_网

WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

若MSDOS.SYS中有BootKeys=1,按住Ctrl或F8键则显示Windows启动菜单。若有
WWW_PLCJS_COM-PLC-技.术_网

BootMenu=1,不按住Ctrl或F8键也会自动显示Windows启动菜单。
WWW_PLCJS@_COM%-PLC-技.术_网

P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

MSDOS.SYS中若有BootMenuDelay=n的选项,可以指定Windows启动菜单显示的延长时间
WWW_PLC※JS_COM-PmLC-技.术_网

,默认是30秒。
WWW.PLCJS.COM——可编程控制器技术门户

WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

MSDOS.SYS中若有BootMenuDefault=n,可以指定Windows启动菜单上的启动项,默认是1
WWW_PLCJS@_COM%-PLC-技.术_网

,即以正常模式启动Windows。
WWW_P※LCJS_COM-PLC-)技.术_网

P.L.C.技.术.网——可编程控制器技术门户

如果Windows上一次没有正常关闭,而且在MSDOS.SYS中没有AutoScan=0选项,磁盘扫描
WWW_PLCJS@_COM%-PLC-技.术_网

程序Scandisk将询问或者自动扫描硬盘,默认该选项是AutoScan=1,既自动扫描。
WWW_P※LCJS_COM-PLC-)技.术_网

WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

不管MSDOS.SYS中是否有以上选项,只要Windows上一次的启动或关机过程没有正常完成
plcjs.技.术_网

,Windows的启动菜单会自动出现,而且默认启动项是安全模式(Windows Safe Mode)
W1WW_P4LCJS_COM-PLC-技.术_网

,这个自动出现的启动菜单其显示延时是30秒。
WWW_PLCJS_COM-PLC-技.术_网

W1WW_P4LCJS_COM-PLC-技.术_网

在Windows的启动过程中,将保留所有的UMB(Upper Memory Block,上位内存)使用。
WW.W_PLCJS_COM-PLC-技.术_网

WWW_PLCJS_COM-PLC-技.术_网

WWW.PLCJS.COM——可编程控制器技术门户

2、检测Windows的启动画面
——可——编——程——控-制-器-技——术——门——户

WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

如果MSDOS.SYS中有logo=1选项或者没有该选项,IO.SYS加载并显示其内部默认的
WWW_PLC※JS_COM-PmLC-技.术_网

Windows启动画面(即蓝天白云画面)。用户可自定义一个LOGO.SYS文件(实际上是分
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

辨率为320?400、颜色深度为256色的BMP图形)并把它放在根目录下一取代该画面,这
WWW_PL※CJS_COM-PLC-技.术_网

样Windows的启动画面就变成了用户的自定义画面。可能有些计算机用户这样做后发现
W1WW_P4LCJS_COM-PLC-技.术_网

显示的仍然是蓝天白云画面,这种情况发生在OEM版的Windows中,原因是微软为这些
P.L.C.技.术.网——可编程控制器技术门户

OEM厂商修改了LOGO.SYS必须放在特定的目录中,例如C:\WINDOWS或者别的目录中,不
W1WW_P4LCJS_COM-PLC-技.术_网

同的OEM厂家可能有所不同。
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

WWW_P※LCJS_COM-PLC-)技.术_网

在MSDOS.SYS设置logo=0则不显示Windows的启动画面。
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

3、检测DRVSPACE.INI和DBLSPACE.INI文件
WWW_PLC※JS_COM-PmLC-技.术_网

WWW_PLCJS_COM-PLC-技.术_网

如果存在DRVSPACE.INI和DBLSPACE.INI文件,并且在MSDOS.SYS中没有指定DblSpace=0
WW.W_PLCJS_COM-PLC-技.术_网

、Drvspace=0,DRVSPACE.BIN和DBLSPACE.BIN被加载。
plcjs.技.术_网

P.L.C.技.术.网——可编程控制器技术门户

4、检测注册表
WW.W_PLCJS_COM-PLC-技.术_网

WWW_PLCJS@_COM%-PLC-技.术_网

IO.SYS打开注册表文件SYSTEM.DAT并调用其它工具检测数据的有效性,如果文件
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

SYSTEM.DAT不存在,则自动从备份文件中恢复该文件,如果SYSTEM.DAT被恢复,
WW.W_PLCJS_COM-PLC-技.术_网

USER.DAT也被自动恢复。Windows98中备份文件被压缩在目录C:\WINDOWS\SYSBACKUP\下
P.L.C.技.术.网——可编程控制器技术门户

的RB00n.CAB中,n的值为0―5。
WWW.PLCJS.COM——可编程控制器技术门户

WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

5、检测DBLBUFF.SYS
WWW_PLCJS@_COM%-PLC-技.术_网

plcjs.技.术_网

如果在MSDOS.SYS中有DoubleBuffer=1,或者注册表中有键值
——可——编——程——控-制-器-技——术——门——户

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\WinBoot\DoubleBuffer,则
WWW_P※LCJS_CO※M-PLC-技-.术_网

加载DBLBUFF.SYS。即使以上两个条件都没有满足,但是Windows探测到双缓冲(
——可——编——程——控-制-器-技——术——门——户

Double Buffer)是必须的,也会自动加载双缓冲。
WW.W_PLCJS_COM-PLC-技.术_网

WWW_PL※CJS_COM-PLC-技.术_网

6、加载WIN.COM
WWW.PLCJS.COM——可编程控制器技术门户

WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

配置文件加载完成后即运行WIN.COM,WIN.COM是Windows的加载器(Windows Loader)
P.L.C.技.术.网——可编程控制器技术门户

,由它继续Windows的启动工作。
P.L.C.技.术.网——可编程控制器技术门户

P.L.C.技.术.网——可编程控制器技术门户

7、加载Vxd文件
plcjs.技.术_网

W1WW_P4LCJS_COM-PLC-技.术_网

Vxd其全称为Virtual Device Driver,即虚拟设备驱动程序。WIN.COM首先处理
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

VMM32.VXD。
WWW_P※LCJS_CO※M-PLC-技-.术_网

WWW_PL※CJS_COM-PLC-技.术_网

实模式虚拟设备驱动程序加载程序检测是否所需的VxD文件已成功加载,如果没有,它
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

再一次尝试加载。一旦实模式虚拟设备驱动程序加载成功,设备初始化开始。任何需要
WWW_P※LCJS_COM-PLC-)技.术_网

在实模式下初始化的VxD文件此时开始初始化。VMM32将计算机处理器从实模式切换到保
WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

护模式,VxD第三阶段的初始化过程开始。在这个阶段VxD设备驱动程序根据InitDevice
P.L.C.技.术.网——可编程控制器技术门户

指定的次序而不是根据VxD被加载进入到内存中的次序进行初始化,这些VxD文件初始化
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

次序如下。
WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

WWW_PLC※JS_COM-PmLC-技.术_网

a.SYS_CRITICAL_INIT(SYSCRITINIT,系统关键初始化)
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

W1WW_P4LCJS_COM-PLC-技.术_网

在这个阶段为了让VxD文件有足够多的时间准备设备初始化而不被系统中断,所有的系
WWW.PLCJS.COM——可编程控制器技术门户

统中断都被关闭,所有的文件输入/输出(I/O)也被关闭,因此所有的VxD文件被加载
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

的过程不被Windows启动记录文件Boot.txt记录,直到该初始化过程完成之后,所有VxD
WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

文件被加载的过程才被记录到文件Bootlog.txt中。
WW.W_PLC※JS_C,OM-PL,C-技.术_网

WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

b、SYS_DEVICE_INIT(DEVICEINIT,系统设备初始化)
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

WWW.PLCJS.COM——可编程控制器技术门户

在这个阶段大量的VxD进行初始化,文件的输入/输出也被允许,因此每一个VxD文件的
——可——编——程——控-制-器-技——术——门——户

初始化都被记录,但Ifsmgr的设备初始化例外。Ifsmgr的作用是控制实模式文件系统,
WWW_P※LCJS_CO※M-PLC-技-.术_网

在Ifsmgr的设备初始化过程中磁盘输入/输出不被允许,直到其初始化完成后磁盘输入/
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

输出才被允许进行。由于这个原因,Ifsmgr的初始化过程也没有被记录,因此从表面上
WWW_PLCJS@_COM%-PLC-技.术_网

看,好像它在设备初始化阶段并没有出现。
WWW_PLCJS@_COM%-PLC-技.术_网

plcjs.技.术_网

c、SYS_INIT_COMPLETE(INITCOMPLETE,系统初始化完成)
WW.W_PLCJS_COM-PLC-技.术_网

W1WW_P4LCJS_COM-PLC-技.术_网

通过这几个阶段的VxD此时一般可以正常工作了,而那些通过a、b两阶段而没有通过c阶
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

段的VxD将被从内存中清除。
WWW_PL※CJS_COM-PLC-技.术_网

P.L.C.技.术.网——可编程控制器技术门户

8、加载GUI程序
WWcW_PLCJS_COM-PLC-技.术_网

WWW_P※LCJS_CO※M-PLC-技-.术_网

在所有的静态VxD和WINSTART.BAT被加载后,Windows的GUI(Graphical User 
WW.W_PLC※JS_C,OM-PL,C-技.术_网

Interface,图形用户界面)被加载,这些GUI程序是Krnl32.dll、Gdi.exe、User.exe
WWW_P※LCJS_CO※M-PLC-技-.术_网

和Explorer.exe,其中Explorer.exe是Windows默认的Shell,可以改为使用别的应用程
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

序来代替。
WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

WW.W_PLCJS_COM-PLC-技.术_网

9、Windows注册和网络注册
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

WWW_PL※CJS_COM-PLC-技.术_网

接下来是加载网络环境设置,即加载注册表键值
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
WW.W_PLC※JS_C,OM-PL,C-技.术_网

、Windows logon和network,此时出现询问Windows注册和网络注册密码的对话框。
WWW_PL※CJS_COM-PLC-技.术_网

Windows加载网络环境参数时提示用户输入网络注册密码,如果用户是在单机上而不是
WW.W_PLC※JS_C,OM-PL,C-技.术_网

在网络上使用计算机,并且已经关闭了密码输入提示功能,Windows将用以前提供的默
WWW_PLCJS@_COM%-PLC-技.术_网

认用户名实现自动注册网络,Windows要完成自动注册功能必须满足:
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

——可——编——程——控-制-器-技——术——门——户

(1)以前至少输入过一次有效的用户名;
WW.W_PLC※JS_C,OM-PL,C-技.术_网

WWW_PLC※JS_COM-PmLC-技.术_网

(2)上次输入的用户名没有被清除;
W1WW_P4LCJS_COM-PLC-技.术_网

WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

(3)没有设置必须使用密码。
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

WWcW_PLCJS_COM-PLC-技.术_网

在单机用户系统上按ESC或者选择取消,Windows将会使用默认的桌面设置继续启动,但
WWcW_PLCJS_COM-PLC-技.术_网

Widows下一次启动时会再次要求输入用户名。如果网络注册验证中设置不完全正确且用
plcjs.技.术_网

户输入了一个新的用户名,Windows将根据控制面板中的网络用户设置参数替这个用户
WWW.PLCJS.COM——可编程控制器技术门户

创造一个环境设置参数。
WWW_P※LCJS_COM-PLC-)技.术_网

WWW_PLCJS_COM-PLC-技.术_网

10、注册表主键加载
WWW_PLCJS@_COM%-PLC-技.术_网

——可——编——程——控-制-器-技——术——门——户

Windows中有几个自动运行的项目,它们按以下的次序加载:
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

(1)HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunservicesOnce,
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

——可——编——程——控-制-器-技——术——门——户

WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

(2)HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Runservices,
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

plcjs.技.术_网

WWcW_PLCJS_COM-PLC-技.术_网

(3)Windows的注册提示,
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

(4)HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce,
WW.W_PLCJS_COM-PLC-技.术_网

P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

(5)HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run,
plcjs.技.术_网

WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

(6)HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run,
WWW_PL※CJS_COM-PLC-技.术_网

P.L.C.技.术.网——可编程控制器技术门户

(7)启动组,
WWW_PLCJS@_COM%-PLC-技.术_网

WWW_PLCJS@_COM%-PLC-技.术_网

(8)HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce。
WWW.PLCJS.COM——可编程控制器技术门户

WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

上面各项(1)、(2)和(3)可以同时加载,只有(4)的地位比较特殊,它必须等待(1)、(2)
WWW_PLC※JS_COM-PmLC-技.术_网

和(3)都完成加载之后才开始加载,而在它之后的(5)、(6)、(7)和(8)也都可以同时加
——可——编——程——控-制-器-技——术——门——户

载,但它们都必须等待(4)中所有的项目完成加载之后才开始加载。RunservicesOnce中
P.L.C.技.术.网——可编程控制器技术门户

的键值在执行一次之后被自动地从注册表中清除。
WW.W_PLCJS_COM-PLC-技.术_网

WWcW_PLCJS_COM-PLC-技.术_网

经过了以上的所有步骤,Windows也就完成了其启动的全过程 
plcjs.技.术_网

plcjs.技.术_网

WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

创建时间:2006-8-19 
WWW_PL※CJS_COM-PLC-技.术_网

www.163164.com 
评论内容
载入中...
载入中...
P
L
C



|










|


P
L
C









·最新招聘信息
·最新求职信息
·推荐产品
·推荐厂商
·栏目热门排行
·站内热门排行