MS-DOS 6.22 Boot File Order in Root Directory
This article details the system file requirements and directory structure needed to successfully boot MS-DOS 6.22. It covers the required system files, their physical placement and order within the root directory table, and the chronological boot sequence the system follows to reach the command prompt.
Required Root Directory Files
For MS-DOS 6.22 to boot cleanly to a command prompt, the root
directory (C:\ or A:\) must contain the
following core system files:
- IO.SYS (Hidden, System, Read-Only)
- MSDOS.SYS (Hidden, System, Read-Only)
- COMMAND.COM (Read-Only or Normal)
While not strictly required for a basic boot, two additional configuration files are standard:
- CONFIG.SYS (Text configuration file)
- AUTOEXEC.BAT (Startup batch script)
Directory Entry and Disk Placement Order
In early versions of MS-DOS (versions 1.x through 3.2), strict
physical directory placement was mandatory: IO.SYS had to
occupy the very first entry in the root directory table, followed
immediately by MSDOS.SYS.
By MS-DOS 6.22, the boot sector logic was updated, modifying these physical directory restrictions:
- Directory Entry Order: The MS-DOS 6.22 partition
boot sector contains code that searches the root directory entries
specifically for the filename
IO.SYS, followed byMSDOS.SYS. As a result,IO.SYSdoes not strictly have to be the first physical 32-byte entry in the root directory table, though utilities such asSYS.COMandFORMAT /Swill write it there by default. - Cluster Contiguity: The initial sectors of
IO.SYSmust reside at the very beginning of the data area (Cluster 2) and must be contiguous. The boot sector contains only enough code to read the first few sectors ofIO.SYSinto memory directly without traversing complex cluster chains in the File Allocation Table (FAT). - MSDOS.SYS Placement: Once
IO.SYSinitializes, its internal routines read the FAT table directly. Consequently,MSDOS.SYSdoes not need to be contiguous or occupy a fixed cluster position, though it must exist in the root directory.
The Execution Boot Sequence
When the machine starts, execution follows this specific order:
- Master Boot Record (MBR): The BIOS loads the MBR, which locates the active primary partition.
- Partition Boot Record (PBR): The MBR passes control to the volume boot record of the MS-DOS partition.
- IO.SYS Execution: The boot sector locates
IO.SYSin the root directory, loads its first sectors into memory, and hands over control.IO.SYSinitializes basic hardware drivers and loads the rest of itself. - MSDOS.SYS Initialization:
IO.SYSloads the core operating system kernel,MSDOS.SYS, into memory. The kernel initializes file systems, device tables, and system variables. - CONFIG.SYS Processing: The kernel parses
CONFIG.SYSfrom the root directory to load specified device drivers (DEVICE=) and allocate system buffers. - COMMAND.COM Loading: The system loads the default
command processor,
COMMAND.COM(or an alternative specified viaSHELL=inCONFIG.SYS). - AUTOEXEC.BAT Execution:
COMMAND.COMexecutesAUTOEXEC.BATto configure the environment, run startup utilities, and present the user with the command prompt.