Win 98系统启动过程全揭密
【编者按:有朋友可能会惊诧----Windows XP都出来了,干嘛还写Win 9X的内容呢?我主要是基于两方面考虑:一是技术具有延续性,特别是操作系统,XP是在9X的基础上发展起来的,它的出现并不意味着所有都推倒从来,通过了解9x的一些技术内幕,对更好地了解2000版或XP版有触类旁通的作用;二是许多朋友还是在使用9X版本,在多重系统安装、优化、游戏修改、系统程序开发等方面,都要涉及到Windows启动方面的知识,而时下关于Windows启动的资料杂乱纷繁,有必要正本清源,让大家系统地了解这方面的知识。基于此,作者老瓦费了不少心血对这方面的资料进行搜集。】目录
Win 9X启动概述
引导记录
IO.SYS
MSDOS.SYS
COMMAND.COM
CONFIG.SYS和AUTOEXEC.BAT
Win.COM
GUI启动
Win 9X启动顺序小结
结语
Win 9X启动概述
自Win 95发行以来,微软公司坚持对Win 9X系统内核技术保密,用户难以获得Win 9X启动过程更底层的技术资料,它始终是一个黑色的过程。掌握系统的启动过程是全面控制系统和优化系统的关键,现在根据公开的技术资料和实践经验,仅从应用角度,对Win 9X(包括95、96(95OSR1)、97(95 OSR2.X)、98、98SE)的启动过程全面揭密,并对各技术细节加以必要的说明。
Win 9X家族主要由四个版本系列组成,其中Windows 95是第一个版本,正是它开创了PC世界新纪元,并将比尔·盖茨推向世界首富的宝座。该版本并不完善,BUG最多,在推出一个多月后就开始提供修正软件包。
Win 96即Win 95的OSR1版(称其为96,是因其发布于96年,97同此),该版本几乎重写了Win 95的内核,纠正了Win 95在实际应用中的种种问题,由于与Win 95发布时间太近,流传不广。
Win 97即Win 95的OSR2.X,该版本发生了质的飞跃,其最大的变化是提供了新磁盘的格式FAT 32,集成了Internet浏览器IE 3.0,这表明微软的系统发展战略开始转向因特网。OSR2.X有三种版本,即OSR2.0、OSR2.1和OSR2.5,其中OSR2.1支持USB和AGP显卡,OSR2.5则提供了IE4.0。由于FAT 32使OSR2.X与Win 95和DOS不兼容,微软只将其做为OEM产品而不提供零售版,Win 97因此也成为Win 95后最流行的版本。
Win 98是以DOS为基石的Windows系列的最后辉煌。它将因特网技术和操作系统紧密结合,同时提供了IE4.0和DirectX5.0,但没有提供更激动人心的东西,更象是Win 97的零售版。
Win 98 SE是Win 98的第二版,与Win 98相比只是提供了IE5.0和DirectX6.1a,别无新意。
Windows 2000是以Windows NT为基础的网络操作系统,它已经是与Win9X截然不同的产品了,而新推出的Windows Me则是Windows 9X的替代产品,但除了借用Windows 2000的界面外,尚没有更新的发现。
Win 9X版本沿革比较复杂,其核心却保持着相对的稳定,没有根本性变化,启动过程也几乎完全相同,这是本文存在的依据。
三、IO.SYS
1、IO.SYS的内部启动菜单
Win 9X的IO.SYS由原DOS的系统文件IO.SYS、MSDOS.SYS合并而成,提供标准硬件的输入/输出接口和DOS的中断调用,功能全面增强,它基本上控制着Win 9X的全部启动过程,是Windows的DOS实模式的核心文件。但它需要根据MSDOS.SYS的设置才能实现正常的启动过程。
IO.SYS可由启动功能键改变启动过程,这些功能键对应着启动菜单各选项:
功能键 对应的启动菜单项
F4: Previous MS-DOS version
F5: Safe mode
Shift+F5: Command prompt only
F6: Safe mode with network support
F8: 启动时调出启动菜单
Shift+F8: Step-by-step confirmation
系统启动出现“Starting Windows 95...”时按下功能键即可
IO.SYS提供启动选择菜单,便于用户根据需要选择启动方式:
本篇文章共8页,此页为首页 下一页
⑴Normal
正常启动模式(默认的启动方式)
当MSDOS.SYS中的BootWin=0时,选择本项系统将启动旧版DOS
⑵Logged(BOOTLOG.TXT)
正常启动模式,同时在根目录下形成BOOTLOG.TXT
BOOTLOG.TXT记录了启动过程中发生的所有情况,是Win 9X系统启动过程唯一全面的诊断记录,可供用户检查启动过程中的问题
⑶Safe mode
安全模式的GUI,屏幕四角有“安全模式”字样不加载CONFIG.SYS、AUTOEXEC.BAT,也不加载启动程序组中任何程序,只加载最基本硬件配置 (标准VGA模式,无声卡、光驱等),即最简单的GUI启动,用于纠正因硬件配置等造成的GUI启动问题。系统出现问题无易做图常启动时,多数情况下会进入该启动模式,但该模式能解决的问题非常有限,多用于显示器等配置系统配置主要在控制面板上调整。要进入正常的GUI,必须重新启动
⑷Step-by-step confirmation
单步执行 Windows启动
用于确定因系统文件损坏造成的启动故障,该方式仅能确定DOS启动过程中的系统问题,主要修正Config.sys和Autoexec.bat中存在的问题要确定GUI启动过程中的问题,只能借助BOOTLOG.TXT文件
⑸Command prompt only
仅执行完整的实模式 DOS启动过程,进入纯DOS状态加载全部支持Win启动的DOS驱动程序,主要用于只能运行于纯DOS模式下的应用软件或解决严重的系统问题,可用命令Win启动正常的GUI
⑹Safe mode command prompt only最简单的 DOS启动仅执行最基本的IO.SYS、MSDOS.SYS和COMMAND.COM三个系统文件,不加载默认驱动程序(HIMEM.SYS、IFSHLP.EXE和SETVER.EXE)和CONFIG.SYS,AUTOEXEC.BAT,其它的环境默认值同Win 9X 的设定,该模式无法继续启动正常的或安全模式的GUI,主要用于处理最严重的系统故障。
计算机教程Win 98系统启动过程全揭密来自www.itwen.comIT WEN计算机教程网
⑺Previous MS-DOS version
启动旧版DOS,执行双重启动根目录下应有以.DOS为扩展名保存的五个原DOS系统文件。该选项的出现由MSDOS.SYS中的参数“BootMulti”控制注意:当MSDOS.SYS中的BootWin=0时,选择本项将启动正常的Win 9X系统⑻Safe mode with network support带实模式网络访问的安全模式该选项的出现由MSDOS.SYS中的参数“NetWork”控制用于排除网络系统的PC故障,可通过实模式网络系统,获得更大的系统支持
2、IO.SYS提供的扩展的DOS默认配置
IO.SYS在启动时与DOS的最大不同,是提供能满足大多数DOS应用的缺省CONFIG.SYS配置,能够自动加载必要的驱动程序,以保证Win 9X正常启动,具体内容如下:
HIMEM.SYS :支持1M以上内存,提供扩展内存(XMS)管理保证Win启动的必需文件
DBLBUFF.SYS :双重缓存驱动程序,仅需要时加载,多用于支持SCSI卡
IFSHLP.EXE :增强的文件管理驱动程序,支持Win的VFAT系统
保证Win启动的必需文件
SETVER.EXE :版本登录服务,消除版本限制,仅在DOS下用
Dblspace.bin :DOS 6.0磁盘压缩驱动程序,仅在硬盘被压缩时才加载
Drvspace.bin :DOS 6.22以后的磁盘压缩驱动程序,同上
DOS=HIGH,UMB :将DOS系统移入HMA,以留出更多的常规内存而UMB对系统没有任何作用,实属摆设
FILES=30 :能打开的最大文件数,能满足大多数应用仅为DOS下使用,Win 9X不需要
BUFFERS=30 :设置最大的磁盘缓冲区数,能满足大多数应用
仅为DOS使用,Win 9X不需要
FCBS=4 :文件控制块数,现已极少使用,仅为DOS使用
LASTDRIVE=Z :最大盘符设置,该值设置过小,将无法加载光驱
STACKS=9,256 :设定栈数目、大小,该设置为旧程序使用Win 9X系统不需要
SHELL=COMMAND.COM/P :指定Win 9X命令行处理程序
本篇文章共8页,此页为第2 页 上一页 下一页
IO.SYS提供的系统环境设置如下:
命令查寻路径 : PATH=C:\Windows;C:\Windows\COMMAND
DOS提示符 : PROMPT=$P$G
临时文件目录 : TEMP=TMP=C:\Windows\TEMP
命令行处理程序位置:COMSEPC=C:\Windows\COMMAND\COMMAND.COM
IO.SYS提供了较完善的系统配置,使取消CONFIG.SYS、AUTOEXEC.BAT成为可能。出于兼容性考虑,IO.SYS不加载EMM386.EXE驱动,不提供扩充内存EMS和上位内存UMB。EMM386.EXE在系统搜寻新硬件时可能引起系统死机,在日常使用时不会有问题。
3、IO.SYS控制下的启动过程
⑴系统启动时,IO.SYS显示“Starting Windows 95...”,此时可由启动功能键选择启动方式。
⑵IO.SYS根据启动菜单选择和MSDOS.SYS的配置确定启动模式。
⑶若使用原DOS系统,IO.SYS自动将DOS和Win 9X的系统启动文件对换,然后由原DOS控制系统启动过程。(即Win 9X的双重启动过程最终是由IO.SYS控制完成的,与引导记录等无关)
⑷IO.SYS根据启动模式先由CONFIG.SYS进行系统硬件配置,若CONFIG.SYS中没有加载Win 9X启动的必需文件(如HIMEM.SYS、IFSHLP.EXE等),系统则根据默认设置自动加载。(如果要加载使用扩展内存的驱动程序,如EMM386.EXE等,必须在CONFIG.SYS第一行加上HIMEM.SYS驱动,否则由于系统此时未提供扩展内存,EMM386.EXE等程序将无法运行)
⑸完成CONFIG.SYS等硬件配置后,IO.SYS通过COMMAND.COM调用AUTOEXEC.BAT进行软件配置。
⑹系统根目录下的BOOTLOG.TXT是由IO.SYS控制完成的,其它一些日志文件多是在安装系统时建立的。
⑺完成DOS启动过程后自动调用Win.COM,开始启动GUI。