📄 windows 9x 启动全揭秘.txt
字号:
Windows 9X 启动全揭秘
自WIN 95发行以来,微软公司坚持对WIN 9X系统内核技术保密,用户难以获得WIN 9X启动过程
更底层的技术资料,它始终是一个黑色的过程。掌握系统的启动过程是全面控制系统和优化系
统的关键,现在根据公开的技术资料和实践经验,仅从应用角度,对WIN 9X(包括95、96(95O
SR1)、97(95 OSR2.X)、98、98SE)的启动过程全面揭密,并对各技术细节加以必要的说明。
WIN 9X家族主要由四个版本系列组成,其中WINDOWS 95是第一个版本,正是它开创了PC世
界新纪元,并将比尔·盖茨推向世界首富的宝座。该版本并不完善,BUG最多,在推出一个多
月后就开始提供修正软件包。
WIN 96即WIN 95的OSR1版(称其为96,是因其发布于96年,97同此),该版本几乎重写了W
IN 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版本沿革比较复杂,其核心却保持着相对的稳定,没有根本性变化,启动过程也几
乎完全相同,这是本文存在的依据。
一、WIN 9X启动概述
WIN 9X的启动过程继承了DOS的传统并进行了必要的扩充,主要由两个阶段组成,即扩展
的DOS实模式启动和GUI(即图形界面)32位保护模式启动,WIN 9X的技术核心集中在后一阶段中
。
该启动过程依次由引导记录、IO.SYS、MSDOS.SYS、COMMAND.COM、CONFIG.SYS、AUTOEXE
C.BAT、GUI启动命令WIN.COM和其它必要的相关文件完成,其中与DOS的系统文件完全同名的文
件实际上发生了质的变化。
WIN 95/96提供了彻底的双重启动功能,即用户可以用WIN 95/96和DOS(6.22以下)两种方
式启动系统,互不干扰,解决了新旧系统的兼容问题,最大限度地维护了用户的利益。但为了
逐渐摆脱落后的DOS对PC世界的影响,从WIN 97开始,微软公司尝试限制双重启动功能,使WI
N 97/98的启动系统必须修改才能实现双重启动。目前,双重启动功能在实际上的需要确已越
来越少。
二、引导记录
引导记录的作用是将操作系统的核心文件调入内存,以启动系统。
所有系统的引导记录均位于磁盘的起始位置,微机加电启动时,直接从固定位置将引导记
录调入内存,引导系统启动。不同版本系统的引导记录自然不同。
DOS引导记录的版本标志为MSDOS5.0,支持FAT 12(各版本均用于软盘或小于16M的硬盘)、
FAT 16磁盘格式,指定的系统引导文件是IO.SYS、MSDOS.SYS。
WIN 95/96的引导记录与DOS(6.22前独立版本)的完全兼容,版本标志为MSWIN4.0,支持F
AT 12、FAT 16磁盘格式,支持双重启动,指定的引导文件是WINBOOT.SYS(IO.SYS在旧版DOS下
使用时的文件名)和IO.SYS、MSDOS.SYS。
WIN 97/98的引导记录与DOS有了本质的区别,版本标志为MSWIN4.1,使用32位指令代码,
支持FAT 12、FAT 16和FAT 32三种磁盘格式,固定引导IO.SYS,这导致不经修改,WIN 97/98
不能直接支持双重启动。
WIN 97/98的全新磁盘格式FAT 32可以支持大容量硬盘,取消了FAT 16的容量限制,与传
统的FAT 16完全不兼容,当然不能为DOS、WINDOWS 95/96识别。这种磁盘格式下多数原DOS、
WINDOWS 95/96软件均能正常运行,但与磁盘格式有关的软件如磁盘工具等不能继续使用。由
于主流的硬盘容量正在超过8.4G,FAT 32的应用越来越广。
三、IO.SYS
1、IO.SYS的内部启动菜单
WIN 9X的IO.SYS由原DOS的系统文件IO.SYS、MSDOS.SYS合并而成,提供标准硬件的输入/
输出接口和DOS的中断调用,功能全面增强,它基本上控制着WIN 9X的全部启动过程,是WIND
OWS的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提供启动选择菜单,便于用户根据需要选择启动方式:
⑴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启动过程中的问题,只能借助BO
OTLOG.TXT文件
⑸Command prompt only
仅执行完整的实模式 DOS启动过程,进入纯DOS状态加载全部支持WIN启动的DOS驱动程序
,主要用于只能运行于纯DOS模式下的应用软件或解决严重的系统问题,可用命令WIN启动正常
的GUI
⑹Safe mode command prompt only最简单的 DOS启动仅执行最基本的IO.SYS、MSDOS.SY
S和COMMAND.COM三个系统文件,不加载默认驱动程序(HIMEM.SYS、IFSHLP.EXE和SETVER.EXE)
和CONFIG.SYS,AUTOEXEC.BAT,其它的环境默认值同WIN 9X 的设定,该模式无法继续启动正
常的或安全模式的GUI,主要用于处理最严重的系统故障。
⑺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下使用,W
IN 9X不需要
BUFFERS=30 :设置最大的磁盘缓冲区数,能满足大多数应用
仅为DOS使用,WIN 9X不需要
FCBS=4 :文件控制块数,现已极少使用,仅为DOS使用
LASTDRIVE=Z :最大盘符设置,该值设置过小,将无法加载光驱
STACKS=9,256 :设定栈数目、大小,该设置为旧程序使用WIN 9X系统不需要
SHELL=COMMAND.COM/P :指定WIN 9X命令行处理程序
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等),系统则根据默认设置自动加载。(如果要
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -