MSDOS.SYS is a system file in MS-DOS and Windows 9x operating systems.
In versions of MS-DOS from 1.1x through 6.22, the file comprises the MS-DOS kernel and is responsible for file access and program management. MSDOS.SYS
is loaded by the DOS BIOS IO.SYS
as part of the boot procedure.[1] In some OEM versions of MS-DOS, the file is named MSDOS.COM
.
In Windows 95 (MS-DOS 7.0) through Windows ME (MS-DOS 8.0), the DOS kernel has been combined with the DOS BIOS into a single file, IO.SYS
(aka WINBOOT.SYS
[2]), while MSDOS.SYS
became a plain text file containing boot configuration directives instead. If a WINBOOT.INI
file exists, the system will retrieve these configuration directives from WINBOOT.INI
rather than from MSDOS.SYS
.[3]
When Windows 9x is installed over a preexisting DOS install, the Windows file may be temporarily named MSDOS.W40
for as long as Windows' dual-boot feature has booted the previous OS. Likewise, the MSDOS.SYS
of the older system is named MSDOS.DOS
for as long as Windows 9x is active.
Some DOS utilities expect the MSDOS.SYS
file to have a minimal file size of at least 1 KB. This is the reason why a large dummy comment is typically found in the MSDOS.SYS
configuration file since Windows 95.[nb 1][4][5][6]
By default, the file is located in the root directory of the bootable drive/partition (normally C:\
for hard disks) and has the hidden, read-only, and system file attributes set.
The MS-DOS derivative Disk Control Program (DCP) by the former East-German VEB Robotron used a DCDOS.SYS filename instead.[7][8]
IBM PC DOS as well as DR-DOS since 5.0 (with the exception of DR-DOS 7.06) used the file IBMDOS.COM
for the same purpose, whereas DR DOS 3.31 to 3.41 used DRBDOS.SYS
instead.[2] FreeDOS uses the file KERNEL.SYS
for the same purpose.
Windows NT-based operating systems (NT 3.1–4, 2000, XP, and 2003) use the NTLDR file and NT 6+ operating systems (Vista, 2008, 7, 8, 8.1, and 10) use bootmgr instead, as they have a different boot sequence.
Robbins_1991
was invoked but never defined (see the help page).Paul_1997_OD-A3
was invoked but never defined (see the help page).Microsoft_KB136416
was invoked but never defined (see the help page).Microsoft_KB118579
was invoked but never defined (see the help page).Microsoft_KB129998
was invoked but never defined (see the help page).Wolking_1996_BootOpt
was invoked but never defined (see the help page).Robotron_1988_DCP1700
was invoked but never defined (see the help page).DCP_2016
was invoked but never defined (see the help page).
Cite error: There are <ref group=nb>
tags on this page, but the references will not show without a {{reflist|group=nb}}
template (see the help page).