IO.SYS: The Real-Mode Operating System

Windows 95 uses a new system file, IO.SYS, which replaces the MS-DOS system files (IO.SYS and MSDOS.SYS). This real-mode operating system file contains the information needed to start the computer. Your computer no longer needs CONFIG.SYS and AUTOEXEC.BAT to start the Windows 95 operating system (although these files are preserved for backward compatibility with certain applications and drivers).

Note The Windows 95 IO.SYS file is automatically renamed to WINBOOT.SYS if you start the computer using your previous operating system.

The drivers loaded by default in IO.SYS include the following, if these files are found on the hard disk:

Most of the common functionality provided by the various CONFIG.SYS file entries are now provided by default in IO.SYS. The following table lists the common entries in CONFIG.SYS that are now incorporated into IO.SYS for Windows 95.

CONFIG.SYS Settings Incorporated in Windows 95 IO.SYS

Setting

Description

dos=high

Specifies that MS-DOS should be loaded in the high memory area (HMA). Also, the umb value is included if EMM386 is loaded from CONFIG.SYS. (IO.SYS does not load EMM386.)

himem.sys

Enables access to the HMA. This line loads and runs the real-mode Memory Manager. HIMEM.SYS is loaded by default in Windows 95.

ifshlp.sys

Installable File System Helper, which loads device drivers. This allows the system to make file system calls. Until this is loaded, only the minimal file system from IO.SYS is used. After this point, the full file system is available.

setver.exe

Optional TSR-type device. It is included for compatibility reasons. Some MS-DOS–based applications require a specific version of MS-DOS to be running. This file responds to applications that query for the version number and sets the version number required.

files=

Specifies the number of file handle buffers to create. This is specifically for files opened using MS-DOS calls and is not required by Windows 95. It is included for compatibility with older applications. The default value is 60.

lastdrive=

Specifies the last drive letter available for assignment. This is not required for Windows 95 but is included for compatibility with older applications. If Windows 95 Setup finds this entry, it is moved to the Registry. The default value is z.

buffers=

Specifies the number of file buffers to create. This is specifically for applications using IO.SYS calls and is not required by Windows 95. The default value is 30.

stacks=

Specifies the number and size of stack frames. This is not required for Windows 95 but is included for compatibility with older applications. The default value is 9,256.

shell=command.com

Indicates what command process to use. By default, the /p switch is included to indicate that the command process is permanent and should not be unloaded. If the /p switch is not specified, AUTOEXEC.BAT is not processed and the command process can be unloaded when quitting the operating system.

fcbs=

Specifies the number of file control blocks that can be open at the same time. You should use a fcbs= line in CONFIG.SYS only if you have an older program that requires such a setting. The default value is 4.


To override default values in Windows 95 IO.SYS

The values in IO.SYS cannot be edited. If CONFIG.SYS contains switches or other parameters for any of the drivers or settings created by IO.SYS, the CONFIG.SYS entries override the IO.SYS defaults. Entries for files=, buffers=, and stacks= must be set in CONFIG.SYS to at least the default values in IO.SYS.

Note IO.SYS does not load EMM386.EXE. If any of your applications requires expanded memory or loads data into the high memory area, EMM386 must be loaded in CONFIG.SYS. For details about using EMM386, see Appendix A, "Command-Line Commands Summary."