论文部分内容阅读
一、BIOS的启动过程
只要一打开计算机的电源开关,一个叫Bootstrap(引导程序)的小软件就要发挥作用,它常驻在BIOS ROM的地址FFFFOH处,当ROM加载程序加载它后,它就完成下面的几项工作。
(一)加电自检
POST(Post On Self Text,加电自检子程序)测试系统的完整性,如果系统通过测试,计算机扬声器发出一短促的鸣叫声(是否有鸣叫声取决于BIOS的厂家,这里以广泛使用的Award的BIOS为例),如果系统出现故障而未通过测试,根据故障的不同扬声器将发出不同的鸣叫声,因为各个厂商对鸣叫声的定义不同,要了解各个鸣叫声的意义需查看BIOS或者主板厂商的用户手册。某些BIOS在检测出系统故障时会暂停并且在显示器上显示出相关的错误信息(如键盘错误等)。在POST过程还要测试内存的完整性。
(二)检测即插即用设备
(三)查找引导盘
引导程序接着检测BIOS中的设置以找到第一个可引导的驱动器(一般为A盘或C盘),如果在检测完BIOS中指定的所有可引导器仍未发现引导驱动器,引导程序暂停启动过程并显示一个错误信息:找不到启动盘。
二、Dos的启动过程
操作系统加载程序从ROM加载程序得到控制权后就开始DOS的启动,其步骤如下。
(一)加载IO.SYS。操作系统加载程序从引导驱动器上读取主引导记录MBR(Master Boot Record)并将控制权叫给MBR,MBR读取分区表(在MBR的尾部)并找到引导分区的位置,MBR将控制权叫给引导分区的引导扇区(引导扇区包含磁盘引导程序和磁盘特性表)上的磁盘引导程序,检测BIOS参数块(BPB,BIOS Parameter Block)以找到操作系统引导文件所在的根目录,将操作系统引导文件IO.SYS从根目录拷贝进内存,IO.SYS实际上是一个可执行文件并且只能位于引导分区的第一磁道上。
(二)加载FAT和MSDOS.SYS
(三)处理CONFIG.SYS和AUTOEXEC.BAT。如果CONFIG.SYS文件不存在,IO.SYS从MSDOS.SYS的“WinBootDir=”获得Ifshlp.sys、Himem.sys和Setver.exe这三个文件的位置,然后自动加载这三个必需的驱动程序。如果MSDOS.SYS中有BootGUI=0这个选项,IO.SYS将控制权交给命令行解释器COMMAND.COM(或者叫给CONFIG.SYS中由命令“SHELL=”指定的命令行解释器),然后COMMAND.COM将控制权叫给计算机用户,也就是等待用户输入DOS命令,至此DOS的启动过程完成。
三、Windows的启动过程
在DOS启动过程的最后一步,如果MSDOS.SYS中是BootGUI=1而不是BootGUI=0这个选项,IO.SYS将控制权将交给Windows加载程序以继续加载Windows,Windows的启动过程真正开始。
(一)显示“Starting Windows...”。屏幕显示“Starting Windows 9x...”这个提示信息,在这个信息显示的过程中:MSDOS.SYS中的BootDelay=n(n为整数)选项可以控制该信息的显示延长时间,若MSDOS.SYS没有该选项,默认该信息显示3秒。
若MSDOS.SYS中有BootKeys=1,按住Ctrl或F8键则显示Windows启动菜单。若有BootMenu=1,不按住Ctrl或F8键也会自动显示Windows启动菜单。
? SDOS.SYS中若有BootMenuDelay=n的选项,可以指定Windows启动菜单显示的延长时间,默认是30秒。
MSDOS.SYS中若有BootMenuDefault=n,可以指定Windows启动菜单上的启动项,默认是1,即以正常模式启动Windows。
(二)检测Windows的启动画面。如果MSDOS.SYS中有logo=1选项或者没有该选项,IO.SYS加载并显示其内部默认的Windows启动画面(即蓝天白云画面)。用户可自定义一个LOGO.SYS文件(实际上是分辨率为320?400、颜色深度为256色的BMP图形)并把它放在根目录下一取代该画面,这样Windows的启动画面就变成了用户的自定义画面。可能有些计算机用户这样做后发现显示的仍然是蓝天白云画面,这种情况发生在OEM版的Windows中,原因是微软为这些OEM厂商修改了LOGO.SYS必须放在特定的目录中,例如C:\WINDOWS或者别的目录中,不同的OEM厂家可能有所不同。
在MSDOS.SYS设置logo=0则不显示Windows的启动画面。
(三)检测DRVSPACE.INI和DBLSPACE.INI文件。如果存在DRVSPACE.INI和DBLSPACE.INI文件,并且在MSDOS.SYS中没有指定DblSpace=0、Drvspace=0,DRVSPACE.BIN和DBLSPACE.BIN被加载。
(四)检测注册表。IO.SYS打开注册表文件SYSTEM.DAT并调用其它工具检测数据的有效性,如果文件SYSTEM.DAT不存在,则自动从备份文件中恢复该文件,如果SYSTEM.DAT被恢复,USER.DAT也被自动恢复。Windows98中备份文件被压缩在目录C:\WINDOWS\SYSBACKUP\下的RB00n.CAB中,n的值为0―5。
(五)检测DBLBUFF.SYS。如果在MSDOS.SYS中有DoubleBuffer=1,或者注册表中有键值HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\WinBoot\DoubleBuffer,则加载DBLBUFF.SYS。即使以上两个条件都没有满足,但是Windows探测到双缓冲(Double Buffer)是必须的,也会自动加载双缓冲。
(六)加载WIN.COM。配置文件加载完成后即运行WIN.COM,WIN.COM是Windows的加载器(Windows Loader),由它继续Windows的启动工作。
(七)加载Vxd文件。Vxd其全称为Virtual Device Driver,即虚拟设备驱动程序。WIN.COM首先处理VMM32.VXD。
实模式虚拟设备驱动程序加载程序检测是否所需的VxD文件已成功加载,如果没有,它再一次尝试加载。一旦实模式虚拟设备驱动程序加载成功,设备初始化开始。任何需要在实模式下初始化的VxD文件此时开始初始化。VMM32将计算机处理器从实模式切换到保护模式,VxD第三阶段的初始化过程开始。在这个阶段VxD设备驱动程序根据InitDevice指定的次序而不是根据VxD被加载进入到内存中的次序进行初始化。
(八)加载GUI程序。在所有的静态VxD和WINSTART.BAT被加载后,Windows的GUI(Graphical User Interface,图形用户界面)被加载,这些GUI程序是Krnl32.dll、Gdi.exe、User.exe和Explorer.exe,其中Explorer.exe是Windows默认的Shell,可以改为使用别的应用程序来代替。
(九)Windows注册和网络注册。接下来是加载网络环境设置,即加载注册表键值HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce、Windows logon和network,此时出现询问Windows注册和网络注册密码的对话框。Windows加载网络环境参数时提示用户输入网络注册密码,如果用户是在单机上而不是在网络上使用计算机,并且已经关闭了密码输入提示功能,Windows将用以前提供的默认用户名实现自动注册网络,Windows要完成自动注册功能必须满足:(1)以前至少输入过一次有效的用户名(2)上次输入的用户名没有被清除;(3)没有设置必须使用密码。
只要一打开计算机的电源开关,一个叫Bootstrap(引导程序)的小软件就要发挥作用,它常驻在BIOS ROM的地址FFFFOH处,当ROM加载程序加载它后,它就完成下面的几项工作。
(一)加电自检
POST(Post On Self Text,加电自检子程序)测试系统的完整性,如果系统通过测试,计算机扬声器发出一短促的鸣叫声(是否有鸣叫声取决于BIOS的厂家,这里以广泛使用的Award的BIOS为例),如果系统出现故障而未通过测试,根据故障的不同扬声器将发出不同的鸣叫声,因为各个厂商对鸣叫声的定义不同,要了解各个鸣叫声的意义需查看BIOS或者主板厂商的用户手册。某些BIOS在检测出系统故障时会暂停并且在显示器上显示出相关的错误信息(如键盘错误等)。在POST过程还要测试内存的完整性。
(二)检测即插即用设备
(三)查找引导盘
引导程序接着检测BIOS中的设置以找到第一个可引导的驱动器(一般为A盘或C盘),如果在检测完BIOS中指定的所有可引导器仍未发现引导驱动器,引导程序暂停启动过程并显示一个错误信息:找不到启动盘。
二、Dos的启动过程
操作系统加载程序从ROM加载程序得到控制权后就开始DOS的启动,其步骤如下。
(一)加载IO.SYS。操作系统加载程序从引导驱动器上读取主引导记录MBR(Master Boot Record)并将控制权叫给MBR,MBR读取分区表(在MBR的尾部)并找到引导分区的位置,MBR将控制权叫给引导分区的引导扇区(引导扇区包含磁盘引导程序和磁盘特性表)上的磁盘引导程序,检测BIOS参数块(BPB,BIOS Parameter Block)以找到操作系统引导文件所在的根目录,将操作系统引导文件IO.SYS从根目录拷贝进内存,IO.SYS实际上是一个可执行文件并且只能位于引导分区的第一磁道上。
(二)加载FAT和MSDOS.SYS
(三)处理CONFIG.SYS和AUTOEXEC.BAT。如果CONFIG.SYS文件不存在,IO.SYS从MSDOS.SYS的“WinBootDir=”获得Ifshlp.sys、Himem.sys和Setver.exe这三个文件的位置,然后自动加载这三个必需的驱动程序。如果MSDOS.SYS中有BootGUI=0这个选项,IO.SYS将控制权交给命令行解释器COMMAND.COM(或者叫给CONFIG.SYS中由命令“SHELL=”指定的命令行解释器),然后COMMAND.COM将控制权叫给计算机用户,也就是等待用户输入DOS命令,至此DOS的启动过程完成。
三、Windows的启动过程
在DOS启动过程的最后一步,如果MSDOS.SYS中是BootGUI=1而不是BootGUI=0这个选项,IO.SYS将控制权将交给Windows加载程序以继续加载Windows,Windows的启动过程真正开始。
(一)显示“Starting Windows...”。屏幕显示“Starting Windows 9x...”这个提示信息,在这个信息显示的过程中:MSDOS.SYS中的BootDelay=n(n为整数)选项可以控制该信息的显示延长时间,若MSDOS.SYS没有该选项,默认该信息显示3秒。
若MSDOS.SYS中有BootKeys=1,按住Ctrl或F8键则显示Windows启动菜单。若有BootMenu=1,不按住Ctrl或F8键也会自动显示Windows启动菜单。
? SDOS.SYS中若有BootMenuDelay=n的选项,可以指定Windows启动菜单显示的延长时间,默认是30秒。
MSDOS.SYS中若有BootMenuDefault=n,可以指定Windows启动菜单上的启动项,默认是1,即以正常模式启动Windows。
(二)检测Windows的启动画面。如果MSDOS.SYS中有logo=1选项或者没有该选项,IO.SYS加载并显示其内部默认的Windows启动画面(即蓝天白云画面)。用户可自定义一个LOGO.SYS文件(实际上是分辨率为320?400、颜色深度为256色的BMP图形)并把它放在根目录下一取代该画面,这样Windows的启动画面就变成了用户的自定义画面。可能有些计算机用户这样做后发现显示的仍然是蓝天白云画面,这种情况发生在OEM版的Windows中,原因是微软为这些OEM厂商修改了LOGO.SYS必须放在特定的目录中,例如C:\WINDOWS或者别的目录中,不同的OEM厂家可能有所不同。
在MSDOS.SYS设置logo=0则不显示Windows的启动画面。
(三)检测DRVSPACE.INI和DBLSPACE.INI文件。如果存在DRVSPACE.INI和DBLSPACE.INI文件,并且在MSDOS.SYS中没有指定DblSpace=0、Drvspace=0,DRVSPACE.BIN和DBLSPACE.BIN被加载。
(四)检测注册表。IO.SYS打开注册表文件SYSTEM.DAT并调用其它工具检测数据的有效性,如果文件SYSTEM.DAT不存在,则自动从备份文件中恢复该文件,如果SYSTEM.DAT被恢复,USER.DAT也被自动恢复。Windows98中备份文件被压缩在目录C:\WINDOWS\SYSBACKUP\下的RB00n.CAB中,n的值为0―5。
(五)检测DBLBUFF.SYS。如果在MSDOS.SYS中有DoubleBuffer=1,或者注册表中有键值HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\WinBoot\DoubleBuffer,则加载DBLBUFF.SYS。即使以上两个条件都没有满足,但是Windows探测到双缓冲(Double Buffer)是必须的,也会自动加载双缓冲。
(六)加载WIN.COM。配置文件加载完成后即运行WIN.COM,WIN.COM是Windows的加载器(Windows Loader),由它继续Windows的启动工作。
(七)加载Vxd文件。Vxd其全称为Virtual Device Driver,即虚拟设备驱动程序。WIN.COM首先处理VMM32.VXD。
实模式虚拟设备驱动程序加载程序检测是否所需的VxD文件已成功加载,如果没有,它再一次尝试加载。一旦实模式虚拟设备驱动程序加载成功,设备初始化开始。任何需要在实模式下初始化的VxD文件此时开始初始化。VMM32将计算机处理器从实模式切换到保护模式,VxD第三阶段的初始化过程开始。在这个阶段VxD设备驱动程序根据InitDevice指定的次序而不是根据VxD被加载进入到内存中的次序进行初始化。
(八)加载GUI程序。在所有的静态VxD和WINSTART.BAT被加载后,Windows的GUI(Graphical User Interface,图形用户界面)被加载,这些GUI程序是Krnl32.dll、Gdi.exe、User.exe和Explorer.exe,其中Explorer.exe是Windows默认的Shell,可以改为使用别的应用程序来代替。
(九)Windows注册和网络注册。接下来是加载网络环境设置,即加载注册表键值HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce、Windows logon和network,此时出现询问Windows注册和网络注册密码的对话框。Windows加载网络环境参数时提示用户输入网络注册密码,如果用户是在单机上而不是在网络上使用计算机,并且已经关闭了密码输入提示功能,Windows将用以前提供的默认用户名实现自动注册网络,Windows要完成自动注册功能必须满足:(1)以前至少输入过一次有效的用户名(2)上次输入的用户名没有被清除;(3)没有设置必须使用密码。