当前位置:操作系统 > DOS/Win9x >>

Win 98系统启动过程全揭密(二)

  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命令行处理程序

  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。

  四、MSDOS.SYS

  1、MSDOS.SYS的作用

  在Win 9X中,MSDOS.SYS变成了纯文本系统配置文件,用于控制Win的启动方式。可以在DOS模式下解除其特殊属性(只读、隐藏、系统),根据需要自行配置。MSDOS.SYS可以是空文件,甚至可以删除,当然此时系统只能以纯DOS方式启动,不能进入GUI系统。

  不同方式形成的MSDOS.SYS默认内容不同,主要有四种,其中前三种方法形成的MSDOS.SYS文件无任何配置命令,几乎是空文件,仅保留一行注释,以说明该文件形成方式,这类文件多见于系统软盘中。不同的MSDOS.SYS内容如下:

  1)Win安装时建立的系统盘 : ;Win95EBO
  2)FORMAT /S建立的系统盘 : ;FORMAT
  3)SYS A:传递建立系统盘 : ;SYS
  4)建立系统时在硬盘上形成的MSDOS.SYS

  系统硬盘中的MSDOS.SYS内容比较完整,包括必要的启动配置命令,文件长度必须大于1024 bytes,即占用两个以上磁盘扇区,这一要求在该文件中说明为保证兼容性,但从未见更深入的介绍,实际上文件小于1024 bytes对系统并无明显影响,该要求估计是为了保证系统与旧版DOS和Win 3.X兼容而提出的,这一点尚望行家指教。

  用SYS向硬盘传送系统以修复启动文件时,将覆盖引导记录、IO.SYS和COMMAND.COM,MSDOS.SYS的内容保持不变,保证系统引导部分修复后,整个系统仍能正常启动,这一做法非常聪明。

  2、MSDOS.SYS的配置参数

  MSDOS.SYS由三小节组成,其各配置参数无顺序要求,内容如下:
   [PATHS]  指定Windows的系统文件路径
   WinDir=     指定Win 9X各系统文件及其子目录所在的目录
            该路径必须包括注册表文件SYSTEM.DAT和Win 9X启动必需的驱动程序,如HIMEM.SYS等
   WinBootDir=   指定Win 9X的GUI启动程序Win.COM所在的目录
   HostWinBootDrv= 指定Win.COM所在的驱动器,不需冒号(:)
   UninstallDir=  指定保存原系统的目录,便于自身删除时恢复原系统用
            该参数出现在Win的升级版本中
   [OPTIONS] 指定Windows的启动方式,/前的值为缺省值
   LOGO=1/0    允许/禁止启动时显示Win 9X标志(LOGO)
           屏蔽该画面有时可解决第三方内存管理程序造成的冲突            看到系统启动过程出现的提示信息,也使系统启动稍快,启动
           启动时可用ESC键清除Win 9X标志,查看实模式启动信息
   BootKeys=1/0  允许/禁止启动键改变启动方式
           为0时直接进入默认的启动方式,不能用启动热键转换
   BootGUI=1/0  启动图形界面GUI / 仅启动DOS 7.X,进入DOS字符界面
           为0时可为DOS 7.X多重启动提供方便,能进一步启动图形界面
   BootWin=1/0  启动Win 9X / 启动旧版DOS,可按要求对换系统文件
           当BootWin=0时,默认启动旧版DOS,若此时选择启动菜单的
           “Previous MS-DOS version”,将启动Win 9X
           注:BootWin级别高于BootGUI,两者冲突时以前者为准
   BootMulti=0/1 禁止/允许双重启动
           即在启动菜单中是否出现“Previous vertion of MS DOS”项
           从旧版DOS升级Win 9X时会自动出现此项,并设置为                                 1,但对于Win 97/98 来说,如果不对启动系统进行修改,选择此项将造成系统下次无法启动


   BootMenu=0/1  系统启动时是否自动显示启动选择菜单
           该值为1,在启动时会直接弹出启动选择菜单
   Network=0/1  启动菜单中是否出现“带网络的安全模式启动”项
           即“Safe mode with network support”项
   BootDelay=n  系统引导前显示“Starting Windows 95...”时间,默认为2秒供使用启动键改变启动方式,该值为0时不出现任何提示直接进入默认的启动过程,可加快启动速度,但仍可用启动热键选择启动方式

   BootMenuDefault= 启动菜单使用的默认选项,缺省值为 1
   BootMenuDelay= 启动菜单按默认方式启动延迟间,缺省值30,单位:秒
   BootSafe=0/1  系统是否以安全模式启动,为1时系统直接以安全模式启动
   BootWarn=1/0  启动时是否显示警告信息
           当系统非正常关机重新启动时,是否提示“应进入安全模式” 实际上安全模式解决问题能力非常有限,真正的系统问题在该模式下是无法解决的,不进也罢
   BootConfig=1/0  能否使用单步配置模式,其作用不明
   DisableLog=0/1  在“Step-by-step config”时是否创建BOOTLOG.TXT
           1:不选择“Logged”时不询问也不创建Bootlog.txt
           0:询问是否创建日志文件Bootlog.txt
   SystemReg=1/0  系统启动时是否运行Windows 9X注册器
           1:“Step-by-step config”下询问是否运行注册器
            其他模式则自动运行注册器
            0:不运行也不询问是否运行Windows 9X的注册器
            该注册器在整个系统启动前首先运行,但运行与否对系统无明显影响,其作用不明

   LoadTop=1/0   是否将COMMAND.COM、Drvspace.bin、Dblspace.bin等加载到高端内存,如启动中出现内存地址冲突,可将该值设为0
            这类冲突多由CONFIG.SYS、AUTOEXEC.BAT加载的程序造成Autoscan=1/0
            非正常关机(如掉电等)再启动时,是否自动执行SCANDISK
            (仅在Win 97/98有效)
            取消自动检测硬盘固然可以免除一些烦恼,但确实给系统带来了隐患,还是不关闭的好

   DoubleBuffers=1/2/0  是否加载BDLBUFF.SYS,提供双重缓存支持
              0:不提供;1:需要时提供,如有SCSI卡等;
 

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,