IO.SYS

Last updated

IO.SYS is an essential part of MS-DOS and Windows 9x. It contains the default MS-DOS device drivers [1] (hardware interfacing routines) and the DOS initialization program.

Contents

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 IO.SYS into memory and transfers control to it. IO.SYS then:

  1. Loads the rest of itself into memory.
  2. Initializes each default device driver in turn (console, disk, serial port, etc..). At this point, the default devices are available.
  3. Loads the DOS kernel and calls its initialization routine. The kernel is stored in MSDOS.SYS with MS-DOS and in IO.SYS with Windows 9x. At this point, "normal" file access is available.
  4. Processes the MSDOS.SYS file with Windows 9x.
  5. Processes the CONFIG.SYS file, in MS-DOS 2.0 and higher and Windows 9x.
  6. Loads COMMAND.COM (or other operating system shell if specified).
  7. Displays the bootsplash in Windows 9x. If LOGO.SYS is present, it is used as the bootsplash. Otherwise, the bootsplash in IO.SYS is used.

The IO.SYS filename was also used by Disk Control Program  [ de ] (DCP), an MS-DOS derivative by the former East-German VEB Robotron. [2] [3]

IBM PC DOS and DR DOS use the file IBMBIO.COM for the same purpose; it in turn loads IBMDOS.COM .

In Windows 9x, the IO.SYS not only contains the DOS BIOS, but also holds the DOS kernel, which previously resided in MSDOS.SYS. Under some conditions, Windows 9x uses the alternative filenames WINBOOT.SYS [4] or JO.SYS instead. When Windows 9x is installed over a preexisting DOS install, the Windows file may be temporarily named IO.W40 for as long as Windows' dual-boot feature has booted the previous OS. Likewise, the IO.SYS of the older system is named IO.DOS for as long as Windows 9x is active.

DR-DOS 7.06 (only this version) also follows this scheme and the IO.SYS filename in order to become bootable via MS-DOS boot sectors.

Similarly, FreeDOS uses a combined system file as well, but names it KERNEL.SYS.

Disk layout requirements

However, MS-DOS version 3.3 allows sector 4 and higher to be fragmented; version 5.0 allows the first 3 sectors of IO.SYS to be allocated anywhere (as long as they are contiguous). [nb 1] [7] [5] [8]

COMMAND.COM can be treated like any ordinary file.

See also

Notes

  1. The MS-DOS 5.0 manual incorrectly states that the system files no longer need to be contiguous. However, for the boot process to work the system files still need to occupy the first two directory entries and the first three sectors of IO.SYS still need to be stored contiguously. SYS continues to take care of these requirements.

Related Research Articles

Booting Process of starting a computer

In computing, booting is the process of starting a computer. It can be initiated by hardware such as a button press, or by a software command. After it is switched on, a computer's central processing unit (CPU) has no software in its main memory, so some process must load software into memory before it can be executed. This may be done by hardware or firmware in the CPU, or by a separate processor in the computer system.

COMMAND.COM Default command-line interpreter for DOS, Windows 95-98 and Windows Me

COMMAND.COM is the default command-line interpreter for MS-DOS, Windows 95-98, Windows 98SE and Windows Me. In the case of DOS, it is the default user interface as well. It has an additional role as the usual first program run after boot, hence being responsible for setting up the system by running the AUTOEXEC.BAT configuration file, and being the ancestor of all processes.

NTLDR is the boot loader for all releases of Windows NT operating system up to and including Windows XP and Windows Server 2003. NTLDR is typically run from the primary hard disk drive, but it can also run from portable storage devices such as a CD-ROM, USB flash drive, or floppy disk. NTLDR can also load a non NT-based operating system given the appropriate boot sector in a file.

A boot disk is a removable digital data storage medium from which a computer can load and run (boot) an operating system or utility program. The computer must have a built-in program which will load and execute a program from a boot disk meeting certain standards.

Bootloader Software responsible for starting the computer and load other software to the CPU memory

A bootloader, also spelled as boot loader or called boot manager and bootstrap loader, is a computer program that is responsible for booting a computer.

CONFIG.SYS is the primary configuration file for the DOS and OS/2 operating systems. It is a special ASCII text file that contains user-accessible setup or configuration directives evaluated by the operating system's DOS BIOS during boot. CONFIG.SYS was introduced with DOS 2.0.

AUTOEXEC.BAT is a system file that was originally on DOS-type operating systems. It is a plain-text batch file in the root directory of the boot device. The name of the file is an abbreviation of "automatic execution", which describes its function in automatically executing commands on system startup; the filename was coined in response to the 8.3 filename limitations of the FAT file system family.

IBMBIO.COM System file (DOS BIOS) in PC DOS and DR-DOS

IBMBIO.COM is a system file in many DOS operating systems. It contains the system initialization code and all built-in device drivers. It also loads the DOS kernel (IBMDOS.COM) and optional pre-loadable system components, displays boot menus, processes configuration files and launches the shell.

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. In some OEM versions of MS-DOS, the file is named MSDOS.COM.

IBMDOS.COM System file (DOS kernel) in PC DOS and DR-DOS

IBMDOS.COM is the filename of the DOS kernel. Loaded and initially invoked by the DOS BIOS in IBMBIO.COM during the boot process, it contains the hardware-independent parts of the operating system, including the embedded FAT12, FAT16 and, in newer versions, the FAT32 file system code, as well as the code to provide the DOS API to applications.

A disk compression software utility increases the amount of information that can be stored on a hard disk drive of given size. Unlike a file compression utility, which compresses only specified files—and which requires the user to designate the files to be compressed—an on-the-fly disk compression utility works automatically through resident software without the user needing to be aware of its existence. On-the-fly disk compression is therefore also known as transparent, real-time or online disk compression.

The partition type in a partition's entry in the partition table inside a master boot record (MBR) is a byte value intended to specify the file system the partition contains or to flag special access methods used to access these partitions.

Computer hardware or software is said to be bug compatible if it exactly replicates even an undesirable feature of a previous version. The phrase is found in the Jargon File.

In computing, sys is a command used in many operating system command-line shells and also in Microsoft BASIC.

MS-DOS Microsofts discontinued operating system

MS-DOS is an operating system for x86-based personal computers mostly developed by Microsoft. Collectively, MS-DOS, its rebranding as IBM PC DOS, and few operating systems attempting to be compatible with MS-DOS, are sometimes referred to as "DOS". MS-DOS was the main operating system for IBM PC compatible personal computers during the 1980s, from which point it was gradually superseded by operating systems offering a graphical user interface (GUI), in various generations of the graphical Microsoft Windows operating system.

DOS Group of closely related PC-compatible operating systems

DOS is a platform-independent acronym for disk operating system which later became a common shorthand for disk-based operating systems on IBM PC compatibles. DOS primarily consists of Microsoft's MS-DOS and a rebranded version under the name IBM PC DOS, both of which were introduced in 1981. Later compatible systems from other manufacturers include DR DOS (1988), ROM-DOS (1989), PTS-DOS (1993), and FreeDOS (1998). MS-DOS dominated the IBM PC compatible market between 1981 and 1995.

Architecture of Windows 9x

The Windows 9x series of operating systems refers to the kernel which lies at the heart of Windows 9x. Its architecture is monolithic.

A FAT file system is a specific type of computer file system architecture and a family of industry-standard file systems utilizing it.

MS-DOS 7

MS-DOS 7 is a real mode operating system which has never been released separately by its creator Microsoft, but included in the Windows 9x family of operating systems. Windows 95 RTM reports to be MS-DOS 7.0, while Windows 95 OSR2, Windows 95 OSR2.5, Windows 98 and Windows 98SE report as 7.1.

References

  1. "MS-DOS Device Driver Names Cannot be Used As File Names". Revision 2.0. Microsoft. 2003-05-12. KB74496. Q74496. Archived from the original on 2012-07-21.
  2. Anwenderdokumentation - Anleitung für den Systemprogrammierer - MOS DCP 1700 (PDF). 3.20 (in German). Dresden, East-Germany: VEB Robotron-Projekt Dresden. 1988-01-29. C3013-0000-0 M3030, Textdiskette DCP1700 T1/2 C3010-9991-2M3020, Disk-Nr.: 5962 /88 ROBOTRON PROJEKT DRESDEN KA2 DD-DS 80*16*256. Archived (PDF) from the original on 2021-08-29. Retrieved 2021-12-03.
  3. Kurth, Rüdiger; Groß, Martin; Hunger, Henry (2016-11-29) [2007]. "Betriebssystem DCP". www.robotrontechnik.de (in German). Archived from the original on 2019-04-03. Retrieved 2019-04-28.
  4. Paul, Matthias R. (1997-10-02) [1997-09-29]. "Caldera OpenDOS 7.01/7.02 Update Alpha 3 IBMBIO.COM - README.TXT and BOOT.TXT - A short description of how OpenDOS is booted". Archived from the original on 2003-10-04. Retrieved 2009-03-29. (NB. Also has a few bits on how other DOSes are booted.)
  5. 1 2 3 4 "SYS.COM Requirements in MS-DOS Versions 2.0–6.0". Revision 2.0. Microsoft. 2003-05-23. KB66530. Q66530. Archived from the original on 2012-07-17.
  6. 1 2 3 Zbikowski, Mark; Allen, Paul; Ballmer, Steve; Borman, Reuben; Borman, Rob; Butler, John; Carroll, Chuck; Chamberlain, Mark; Chell, David; Colee, Mike; Courtney, Mike; Dryfoos, Mike; Duncan, Rachel; Eckhardt, Kurt; Evans, Eric; Farmer, Rick; Gates, Bill; Geary, Michael; Griffin, Bob; Hogarth, Doug; Johnson, James W.; Kermaani, Kaamel; King, Adrian; Koch, Reed; Landowski, James; Larson, Chris; Lennon, Thomas; Lipkie, Dan; McDonald, Marc; McKinney, Bruce; Martin, Pascal; Mathers, Estelle; Matthews, Bob; Melin, David; Mergentime, Charles; Nevin, Randy; Newell, Dan; Newell, Tani; Norris, David; O'Leary, Mike; O'Rear, Bob; Olsson, Mike; Osterman, Larry; Ostling, Ridge; Pai, Sunil; Paterson, Tim; Perez, Gary; Peters, Chris; Petzold, Charles; Pollock, John; Reynolds, Aaron; Rubin, Darryl; Ryan, Ralph; Schulmeisters, Karl; Shah, Rajen; Shaw, Barry; Short, Anthony; Slivka, Ben; Smirl, Jon; Stillmaker, Betty; Stoddard, John; Tillman, Dennis; Whitten, Greg; Yount, Natalie; Zeck, Steve (1988). "Technical advisors". The MS-DOS Encyclopedia: versions 1.0 through 3.2. By Duncan, Ray; Bostwick, Steve; Burgoyne, Keith; Byers, Robert A.; Hogan, Thom; Kyle, Jim; Letwin, Gordon; Petzold, Charles; Rabinowitz, Chip; Tomlin, Jim; Wilton, Richard; Wolverton, Van; Wong, William; Woodcock, JoAnne (Completely reworked ed.). Redmond, Washington, USA: Microsoft Press. ISBN   1-55615-049-0. LCCN   87-21452. OCLC   16581341. (xix+1570 pages; 26 cm) (NB. This edition was published in 1988 after extensive rework of the withdrawn 1986 first edition by a different team of authors. )
  7. Chappell, Geoff (January 1994). Schulman, Andrew; Pedersen, Amorette (eds.). DOS Internals. The Andrew Schulman Programming Series (1st printing, 1st ed.). Addison Wesley Publishing Company. ISBN   978-0-201-60835-9. (xxvi+738+iv pages, 3.5"-floppy ) Errata:
  8. Kim, Mark K. (2004-09-24). "Re: [vox-tech] rescuing winxp?". mail-archive.com. Archived from the original on 2019-04-06. Retrieved 2019-04-06.