MS-DOS 6.22 Hardware Device Loader File

During the startup process of MS-DOS 6.22, the system relies on specific system files to initialize hardware, load the operating system kernel, and establish user control. This article identifies IO.SYS as the primary hardware device loader, explains its exact function in the boot sequence, and details how it prepares the machine for higher-level drivers and operating system operations.

In MS-DOS 6.22, the primary system file that acts as the hardware device loader is IO.SYS. Located in the root directory of the boot drive as a hidden, read-only system file, IO.SYS provides the low-level interface between the computer hardware, the system BIOS, and the operating system kernel.

When a computer boots MS-DOS 6.22, the Master Boot Record (MBR) reads the Partition Boot Record (PBR), which immediately looks for and loads IO.SYS into memory. Once loaded, IO.SYS executes its initialization routines. It detects base system hardware and provides resident device drivers for standard components, including:

  • CON: The system console (display screen and keyboard).
  • AUX / COM1: The primary serial communications port.
  • PRN / LPT1: The parallel printer port.
  • CLOCK$: The real-time system clock.
  • Basic block device drivers for floppy and hard disk controllers.

After initializing these built-in drivers, IO.SYS loads the MS-DOS kernel, contained in MSDOS.SYS. The kernel handles high-level functions such as file management, memory allocation, and software interrupts (primarily Interrupt 21h).

IO.SYS then proceeds to read and process the CONFIG.SYS configuration file. During this phase, IO.SYS functions as the loader for external device drivers specified by DEVICE= or DEVICEHIGH= directives, loading drivers such as HIMEM.SYS, EMM386.EXE, or custom hardware drivers (such as CD-ROM or sound card controllers) into conventional or upper memory.

Once all drivers in CONFIG.SYS are loaded and initialized, IO.SYS hands execution control over to the command processor, COMMAND.COM, which runs AUTOEXEC.BAT and presents the user with the command prompt. Without IO.SYS, the operating system cannot establish contact with basic peripheral devices, making hardware abstraction and system initialization impossible.