IO.SYS
IO.SYS
is the DOS BIOS of all versions of MS-DOS and Windows 9x. It contains the default MS-DOS device drivers (hardware interfacing routines) and the DOS initialization program. It is responsible and essential for every version of MS-DOS and Windows 9x to boot.
The file IO.SYS
in some OEM releases (especially non PC-compatible ones) have different names such as BIOS.SYS
, IOSYS.COM
and IBMBIO.COM
however they all perform the same task. IBM PC-DOS and DR-DOS use the file IBMBIO.COM
. The name of this file is not important as long as the boot sector loads it. IO.SYS
has RHSA
attributes so it cannot be deleted or executed easily.
IO.SYS
in Windows 9x has three parts (DOS BIOS, DOS Kernel and a bitmap). Some Emergency Boot Disks created by Windows 9x use the file name WINBOOT.SYS
. Similarly, FreeDOS uses a combined system file as well, but names it KERNEL.SYS
.
Boot sequence[edit | edit source]
In the IBM PC bootup sequence, the first sector of the boot disk is loaded into memory and executed. If this is the DOS boot sector, it loads the first three sectors of IO.SYS
into memory and transfers control to it. IO.SYS
then:
- Loads the rest of itself into memory.
- Initializes each default device driver in turn (console, disk, serial port, etc.). At this point, the default devices are available.
- Loads the DOS kernel and calls its initialization routine. The kernel is stored in
MSDOS.SYS
with MS-DOS and inIO.SYS
with Windows 9x. At this point, normal file access is available. Pressing the F8 key in MS-DOS 6.0 and later triggers the step-by-step confirmation, which, for example, allows skippingAUTOEXEC.BAT
. On Windows 9x, a startup menu appears, which has options such as the step-by-step confirmation, skippingWIN.COM
or skipping both the startup process andWIN.COM
. - Processes
MSDOS.SYS
orWINBOOT.INI
with Windows 9x. - Processes the
CONFIG.SYS
file, in MS-DOS 2.0 and higher. - Processes the
AUTOEXEC.BAT
file. - Loads
COMMAND.COM
or other shells if specified. (In Windows 9x, it automatically loadsWIN.COM
unless "Command prompt only" is selected from the startup menu) - Displays the boot screen in Windows 9x. If
LOGO.SYS
is present, it is used as the boot screen. Otherwise, the bitmap inIO.SYS
is used.
Disk layout requirements[edit | edit source]
- The two first entries of the root directory must be
IO.SYS
andMSDOS.SYS
, in that order (except for Windows 9x). IO.SYS
must be the first file stored in the FAT directory table for files (except for Windows 9x).- The files
IO.SYS
andMSDOS.SYS
must be contiguous (except for Windows 9x). - MS-DOS 3.30 allows sector 4 and higher to be fragmented.
- MS-DOS 5.00 allows the first 3 sectors of
IO.SYS
to be allocated anywhere (as long as they are contiguous).