MS-DOS
The foundational operating system for IBM PC compatibles, MS-DOS evolved from a six-week clone of CP/M into the backbone of early personal computing.
Last updated
MS-DOS (Microsoft Disk Operating System) is an operating system for x86-based personal computers, developed primarily by Microsoft. It was the dominant operating system for IBM PC compatibles throughout the 1980s, before being gradually replaced by graphical user interface (GUI) systems, particularly successive versions of Microsoft Windows. The term "DOS" is often used collectively to refer to MS-DOS, its IBM-branded counterpart PC DOS, and other compatible systems.
The origins of MS-DOS trace back to 86-DOS, a disk operating system created by Tim Paterson of Seattle Computer Products in 1980. 86-DOS was a clone of Digital Research’s CP/M, adapted for the Intel 8086 processor, and was developed in just six weeks. It featured an improved disk sector buffering system and used the FAT12 file system instead of CP/M’s.
Microsoft hired Paterson in May 1981 and purchased 86-DOS 1.10 that July, renaming it MS-DOS while keeping the version number. IBM licensed this software and released it as PC DOS 1.0 in August 1981 for the IBM Personal Computer. Microsoft then licensed MS-DOS to over 70 other companies within a year.
MS-DOS was designed to run on any 8086-family computer, with each hardware vendor creating a customized version using a Microsoft development kit. This modular structure included internal device drivers for disks and the console, integrated with the kernel, plus installable drivers for other hardware.
However, many application programs, especially games, bypassed MS-DOS services to directly control hardware for greater speed. This led to the dominance of IBM-compatible architecture, and soon a single standard version of MS-DOS sufficed for the market. Microsoft omitted multi-user support from MS-DOS, reserving that capability for its Unix-based Xenix system.
Lore & Background
MS-DOS began as a renamed version of 86-DOS, a disk operating system owned by Seattle Computer Products and written by Tim Paterson. Development of 86-DOS took only six weeks, as it was basically a clone of Digital Research's CP/M (for 8080/Z80 processors) ported to the Intel 8086. It had two notable differences from CP/M: an improved disk sector buffering logic and FAT12 instead of the CP/M filesystem. This first version was shipped in August 1980.
Microsoft, which needed an operating system for the IBM Personal Computer, hired Tim Paterson in May 1981 and bought 86-DOS 1.10 for that July. Microsoft kept the version number, but renamed it MS-DOS. They also licensed MS-DOS 1.10/1.14 to IBM, which, in August 1981, offered it as PC DOS 1.0 as one of three operating systems for the IBM 5150 or the IBM PC. Within a year, Microsoft licensed MS-DOS to over 70 other companies.
It was designed to be an OS that could run on any 8086-family computer. Each computer would have its own distinct hardware and its own version of MS-DOS, similar to the situation that existed for CP/M, and with MS-DOS emulating the same solution as CP/M to adapt for different hardware platforms. To this end, MS-DOS was designed with a modular structure with internal device drivers (the DOS BIOS), minimally for primary disk drives and the console, integrated with the kernel and loaded by the boot loader, and installable device drivers for other devices loaded and integrated at boot time.
The OEM would use a development kit provided by Microsoft to build a version of MS-DOS with their basic I/O drivers and a standard Microsoft kernel, which they would typically supply on disk to end users along with the hardware. Thus, there were many different versions of "MS-DOS" for different hardware, and there is a major distinction between an IBM-compatible (or ISA) machine and an MS-DOS [compatible] machine. Some machines, like the Tandy 2000, were MS-DOS compatible but not IBM-compatible, so they could run software written exclusively for MS-DOS without dependence on the peripheral hardware of the IBM PC architecture. This design would have worked well for compatibility, if application programs had used only MS-DOS services to perform device I/O. Indeed, the same design philosophy is embodied in Windows NT (see Hardware Abstraction Layer).
A Product Microsoft Never Meant to Keep
Gordon Letwin, a key figure in Microsoft's early development, later recalled that DOS was conceived as a one-time, throwaway product designed solely to keep IBM satisfied so the company would continue purchasing Microsoft's programming languages. The internal plan was to treat MS-DOS as a stopgap before launching Xenix, a multi-user Unix-like system. None of those features survived into later DOS releases, but they were repurposed to form the kernel foundation of OS/2 1.0. The product Microsoft had dismissed as temporary thus quietly seeded the architecture of its next major platform.
Reader's Guide
MS-DOS went through eight versions, until development ceased in 2000; version 6.22 from 1994 was the final standalone version, with versions 7 and 8 serving mostly in the background for loading Windows 9x. The command interpreter, COMMAND.COM, runs when no application program is running.
When an application exits, the interpreter resumes loaded back into memory by the DOS if it was purged by the application. A command is processed by matching input text with either a built-in command or an executable file located on the current drive and along the command path. A command with significant program size or used infrequently tended to be a separate file in order to limit the size of the command processor program.
More in Computing & Software
Sources
Compiled from Wikipedia and the sources listed below. Text from Wikipedia is available under CC BY-SA 4.0; this entry is adapted from it.
- Wikipedia: MS-DOS (CC BY-SA 4.0).
Spotted an error? Know more?
Reader corrections go straight into our review queue. Suggest an edit · How this site is sourced
