China DOS Union

-- Unite DOS · Advance DOS · Grow DOS --

Union site: www.cn-dos.net Forum site: www.cn-dos.net/forum
DOS stands for freedom, openness and progress. Let us work hard, learn from the openness and GNU spirit of FreeDOS and Linux, and together build and grow a free GNU GPL world!

中国DOS联盟论坛
The time now is 2026-07-31 15:49
中国DOS联盟论坛 » DOS学习入门 & 精彩文章 (教学室) » [Original] A Comprehensive Analysis of Windows 9x's Msdos.sys DigestI View 4,066 Replies 3
Original Poster Posted 2004-08-03 00:00 ·  中国 海南 海口 电信
初级用户
Credits 189
Posts 16
Joined 2004-07-30 00:00
22-year member
UID 29349
Gender Male
Status Offline
  I believe all computer enthusiasts are certainly no strangers to MSDOS.SYS. But unlike traditional DOS, in the Windows 9x era Msdos.sys had already cast off its mysterious outer shell. The current Msdos.sys is nothing more than a text file with hidden, system, and read-only attributes. We can edit and modify it with an ordinary plain-text editor, so as to achieve our goal of speeding up Windows 9x. Now let's take a look at what exactly is inside Windows 9x's Msdos.sys.

  To view and edit the Msdos.sys file, we first need to use the Attrib command (attrib –s –h –r msdos.sys) or Windows 9x's file manager to remove Msdos.sys's system, read-only, and hidden attributes. Then we can open the Msdos.sys file with a plain-text editor (such as Edit or Notepad). We can find that Msdos.sys consists of three sections: one consists of some meaningless characters, while the other two are [Paths] and [Options], defining some of the information required for Windows 9x startup. Now let us first introduce the relevant parameters in these two sections, and finally get to know the section made up of information that appears useless on the surface. (Note: whether the following parameters appear depends on each person's installation situation.)

The [Paths] section contains the following settings:
1.HostWinBootDrv=<Root of Boot Drive>
Default: C
Meaning: specifies the location of the boot drive root directory.
2.UninstallDir=<Root of Boot Drive>
Default: C
Meaning: specifies the location of the W95undo.dat and W95undo.ini files. These files are required for uninstalling Windows 9x.
Note: this parameter appears only when the user chooses to back up system files while installing Windows 9x.
3.WinBootDir=<Windows Directory>
Default: the Windows 9x installation directory (for example: C:\WINDOWS)
Meaning: shows the location of the files required to start Windows 9x.
4.WinDir=<Windows Directory>
Default: the Windows 9x installation directory (for example: C:\WINDOWS)
Meaning: shows the Windows 9x installation directory.

The [Options] section contains the following settings:
1.AutoScan=<Number>
Default: 1
Meaning: defines whether to run Scandisk after an abnormal shutdown. Specifically:
0——do not run; 1——prompt before running; 2——do not prompt before running, but prompt the user when errors are found and need to be fixed.
This parameter is valid only in Windows 95 OSR2 and Windows 98.
2.BootDelay=<Seconds>
Default: 2
Meaning: the delay time for which the “Starting Windows” message remains displayed before Windows 9x continues startup.
Note: this parameter is not supported by Windows 98.
3.BootSafe=<Boolean>
Default: 0
Meaning: if set to 1, it forces the computer into Safe Mode.
4.BootGUI=<Boolean>
Default: 1
Meaning: if set to 1, it forces the graphical interface to load; if 0, the graphical interface is not loaded.
5.BootKeys=<Boolean>
Default: 1
Meaning: if 1, startup via function keys is allowed (including F4, F5, F6, F8, and CTRL); if 0, use of these function keys during startup is disabled.
Note: the setting BootKey=0 takes priority over the setting BootDelay=n.
6.BootMenu=<Boolean>
Default: 0
Meaning: if 1, use of the startup menu is allowed. If 0, the user must press F8 when “Starting Windows 9x” appears, or hold down CTRL during machine startup, in order to call up the startup menu.
7.BootMenuDefault=<Number>
Default: menu item 1 if the system last ran normally; menu item 3 if the last system run was suspended.
Meaning: this setting is used to set the default startup menu item
8.BootMenuDelay=<Number>
Default: 30
Meaning: this setting is used to set the delay time for displaying the startup menu. After the delay time passes, startup proceeds using the default menu item.
Note: this option takes effect only after BootMenu=1 has been set.
9.BootMulti=<Boolean>
Default: 1
Meaning: if set to 0, multiboot is disabled; if set to 1, use of the F4 and F8 keys to start the user's original operating system is allowed.
10.BootWarn=<Boolean>
Default: 1
Meaning: if set to 0, the Safe Mode warning message and startup menu items are disabled.
11.BootWin=<Boolean>
Default: 1
Meaning: if set to 1, it forces Windows 9x startup; if set to 0, it prevents Windows 9x from becoming the default operating system (usually useful only when Ms-dos version 5.0 or above also exists on the user's machine)
Note: if BootMulti=1, pressing F4 will change the default operating system (for example: when BootMulti=1, pressing F4 will force Windows 9x to run)
12.DoubleBuffer=<Boolean>
Default: 0
Meaning: if set to 1, the system sets double buffering only for controllers that need it (for example SCSI controllers); if set to 2, double buffering is set unconditionally whether the controller needs it or not.
13.DBLSpace=<Boolean>
Default: 1
Meaning: if set to 1, the DBLSPACE.BIN file is loaded automatically; if 0, automatic loading of the DBLSPACE.BIN file is disabled.
Note: as long as either Dblspace.bin or Drvspace.bin exists in the root directory of the boot drive, Windows 9x will load it automatically. To avoid automatically loading Dblspace.bin or Drvspace.bin at startup, it is recommended to add the following settings to the Msdos.sys file:
DBLSpace=0
DRVSpace=0
14.DRVSpace=<Boolean>
Default: 1
Meaning: if set to 1, the DRVSPACE.BIN file is loaded automatically; if 0, automatic loading of the DRVSPACE.BIN file is disabled.
15.LoadTop=<Boolean>
Default: 1
Meaning: if 0, Windows 9x is prevented from loading COMMAND.COM or DRVSPACE.BIN/DBLSPACE.BIN into upper memory. If there are compatibility problems with other software, you may want to try setting it to 0.
16.Logo=<Boolean>
Default: 1
Meaning: if 1, the Windows 9x logo is displayed; if 0, the Windows 9x logo is not displayed, and at the same time this can also avoid incompatibility problems with some third-party memory management software.
17.Network=<Boolean>
Default: 0
Meaning: if 1, it means network components have been installed, and the “Safe mode with network support” item is added to the startup menu.

  The last part of the Msdos.sys file is made up of some information that looks useless. This information is necessary for programs that need to determine the length of the Msdos.sys file. For example, if some antivirus program detects that the length of Msdos.sys is less than 1024 bytes, it may think that the Msdos.sys file has been infected by a virus. If Msdos.sys is accidentally deleted, the computer will be unable to boot.
Floor 2 Posted 2004-08-03 00:00 ·  中国 福建 福州 仓山区 电信
元老会员
★★★
农民
Credits 2,903
Posts 991
Joined 2003-07-23 00:00
23-year member
UID 7391
Gender Male
From 福建省
Status Offline
Hmm, this is pretty good, make it featured as encouragement!
艰难奋长戟,万古用一夫

中国DOS联盟 http://www.cn-dos.net 欢迎大家来共同学习
我的MSN&E-Mail cn_archer@hotmail.com QQ 56049418
Floor 3 Posted 2004-08-11 00:00 ·  中国 辽宁 辽阳 中移铁通
初级用户
Credits 106
Posts 3
Joined 2004-08-11 00:00
21-year member
UID 29968
Gender Male
Status Offline
Bump
Floor 4 Posted 2004-08-11 00:00 ·  中国 天津 联通
中级用户
Credits 297
Posts 44
Joined 2004-06-15 00:00
22-year member
UID 26749
Gender Male
Status Offline
Good stuff should be bumped!
Forum Jump: