IO.SYS
is an essential part of MS-DOS and Windows 9x. It contains the default MS-DOS device drivers (hardware interfacing routines) and the DOS initialization program. Boot sequence 
In the 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  into memory and transfers control to it. 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  with MS-DOS and in  with Windows 9x. At this point, "normal" file access is available. Processes the  file with Windows 9x. Processes the  file, in MS-DOS 2.0 and higher and Windows 9x. Loads  (or other operating system shell if specified). Displays the bootsplash in Windows 9x. If  is present, it is used as the bootsplash. Otherwise, the bootsplash in  is used. The  filename was also used by  (DCP), an MS-DOS derivative by the former East-German VEB Robotron. IBM PC DOS and DR DOS use the file  for the same purpose; it in turn loads . In Windows 9x, the  not only contains the DOS BIOS, but also holds the DOS kernel, which previously resided in . Under some conditions, Windows 9x uses the alternative filenames  or  instead. When Windows 9x is installed over a preexisting DOS install, the Windows file may be temporarily named  for as long as Windows' dual-boot feature has booted the previous OS. Likewise, the  of the older system is named  for as long as Windows 9x is active. DR-DOS 7.06 (only this version) also follows this scheme and the  filename in order to become bootable via MS-DOS boot sectors. Similarly, FreeDOS uses a combined system file as well, but names it . Disk layout requirements 
 The two first entries of the root directory must be allocated by  and , in that order. must be the first file stored in the FAT directory table for files. The files  and  must be contiguous. However, MS-DOS version 3.3 allows sector 4 and higher to be fragmented; version 5.0 allows the first 3 sectors of  to be allocated anywhere (as long as they are contiguous). can be treated like any ordinary file. See also
 MSDOS.SYS
 IBMBIO.COM
 DRBIOS.SYS
 COMMAND.COM
 List of DOS system files
 Hardware abstraction layer (HAL)
 Remote Program Load
 Architecture of Windows 9x

Notes

References 

DOS files