MS-DOS is an acronym for Microsoft Disk Operating System.
What is MS-DOS?
MS-DOS is the venerable operating system created by Microsoft for the first IBM personal computer in 1981. MS-DOS evolved through a number of versions until its final release in 1994 as MS-DOS 6.22.
Contents (this page)
- Versions of MS-DOS
- How MS-DOS Works
- Other vendors versions
- MS-DOS History
- MS-DOS Commands
- External references
The following table highlights the evolution of MS-DOS over the years.
Versions of MS-DOS
|1.0||August 1981||Designed for the IBM |
PC, the initial version was distributed on a
single 160-KB floppy
disk and ran in 8 KB of RAM.
|1.1||May 1982||Support was added for double-sided 320-KB |
|2.0||March 1983||Designed for the IBM |
PC/XT, this version added support for hard
directories, background printing, and third-party device drivers.
|2.1||October 1983||Designed for the short-lived IBM PCjr.|
|3.0||August 1984||Designed for the new |
IBM PC/AT, this version added support for
1.2-MB floppy disks
and hard drives larger than 10 MB.
|3.1||March 1985||Added support for networking and file |
|3.2||January 1986||Added support for the new 3.5-inch floppy |
|3.3||April 1987||Designed for the IBM |
PS/2, this version
added commands and support for
|4.01||February 1988||This version added the mem command, the |
MS-DOS shell, and
support for hard
drives larger than 32 MB.
|5.0||May 1991||For this version, the |
MS-DOS shell was
added, and more
|6.0||March 1993||Added the MemMaker utility, real-time disk |
compression, multiple boot configurations,
and antivirus and
|6.2||October 1993||Added Scandisk for |
|6.22||February 1994||Added DriveSpace disk compression.|
How It Works
MS-DOS is a 16-bit operating system that runs a command-line interface. MS-DOS commands come in two types:
- Built-in commands: Embedded in the MS-DOS command interpreter command.com. Examples include dir, copy, and date.
- External commands: MS-DOS utilities that reside as separate files. Examples include doskey, edit, and smartdrv.
The core operating system consists of three primary files in the root of the system partition:
- io.sys: Controls the boot process and contains basic I/O drivers.
- msdos.sys: Operating system kernel. Applications request operating system services through msdos.sys, which translates them into actions that can be performed by io.sys and device drivers.
- command.com: Command interpreter, which provides a user interface for executing MS-DOS commands.
In addition, two text files help control the boot process:
- config.sys: Contains commands that configure hardware components such as memory, keyboard, mouse, and printer
- autoexec.bat: Contains startup commands that configure your prompt and path and run memory-resident programs such as doskey and smartdrv
The remaining external MS-DOS commands and utilities are by default found in the directory C:\DOS.
Other vendors DOS Versions
MS-DOS was so popular in the PC market that other vendors produced their own versions, including IBM’s PC-DOS and Novell’s DR-DOS.
You can add networking functionality to MS-DOS by using the Microsoft Network Client 3.0 for MS-DOS add-on. You can create installation disks for this software using the Network Client Administrator tool in Microsoft Windows NT.
When IBM launched its revolutionary personal computer, the IBM PC, in August 1981, it came complete with a 16-bit operating system from Microsoft, MS-DOS 1.0. This was Microsoft’s first operating system, and it also became the first widely used operating system for the IBM PC and its clones.
MS-DOS 1.0 was actually a renamed version of QDOS (Quick and Dirty Operating System), which Microsoft bought from a Seattle company, appropriately named Seattle Computer Products, in July 1981. QDOS had been developed as a clone of the CP/M eight-bit operating system in order to provide compatibility with the popular business applications of the day such as WordStar and dBase. CP/M (Control Program for Microcomputers) was written by Gary Kildall of Digital Research several years earlier and had become the first operating system for microcomputers in general use.
QDOS was written by Tim Paterson, a Seattle Computer Products employee, for the new Intel 16-bit 8086 CPU (central processing unit), and the first version was shipped in August 1980. Although it was completed in a mere six weeks, QDOS was sufficiently different from CP/M to be considered legal. Paterson was later hired by Microsoft.
Microsoft initially kept the IBM deal a secret from Seattle Computer Products. And in what was to become another extremely fortuitous move, Bill Gates, co-founder of Microsoft, persuaded IBM to let his company retain marketing rights for the operating system separately from the IBM PC project. Microsoft renamed it PC-DOS (the IBM version) and MS-DOS (the Microsoft version). The two versions were initially nearly identical, but they eventually diverged.
The acronym DOS was not new even then. It had originally been used by IBM in the 1960s in the name of an operating system (i.e., DOS/360) for its System/360 computer. At that time the use of disks for storing the operating system and data was considered cutting edge technology.
Until its acquisition of QDOS, Microsoft had been mainly a vendor of computer programming languages. Gates and co-founder Paul Allen had written Microsoft BASIC and were selling it on disks and tape mostly to PC hobbyists.
MS-DOS soared in popularity with the surge in the PC market. Revenue from its sales fueled Microsoft’s phenomenal growth, and MS-DOS was the key to the company’s rapid emergence as the dominant firm in the software industry. This product continued to be the largest single contributor to Microsoft’s income well after it had become more famous for Windows.
Subsequent versions of MS-DOS featured improved performance and additional functions, not a few of which were copied from other operating systems. For example, version 1.25, released in 1982, added support for double-sided disks, thereby eliminating the need to manually turn the disks over to access the reverse side.
Version 2.0, released the next year, added support for directories, for IBM’s then huge 10MB hard disk drive (HDD) and for 360KB, 5.25-inch floppy disks. This was followed by version 2.11 later in the same year, which added support for foreign and extended characters.
Version 3.0, launched in 1984, added support for 1.2MB floppy disks and 32MB HDDs. This was soon followed by version 3.1, which added support for networks.
Additions and improvements in subsequent versions included support for multiple HDD partitions, for disk compression and for larger partitions as well as an improved disk-checking utility, enhanced memory management, a disk defragmenter and an improved text editor.
The final major version was 7.0, which was released in 1995 as part of Microsoft Windows 95. It featured close integration with that operating system, including support for long filenames and the removal of numerous utilities, some of which were on the Windows 95 CDROM. It was revised in 1997 with version 7.1, which added support for the FAT32 filesystem on HDDs.
Although many of the features were copied from UNIX, MS-DOS was never able to come anywhere close to UNIX in terms of performance or features. For example, MS-DOS never became a serious multi-user or multitasking operating system (both of which were core features of UNIX right from the start) in spite of attempts to retrofit these capabilities. Multitasking is the ability for a computer to run two or more programs simultaneously.
Many standard system commands were provided for common tasks such as listing files on a disk or moving files. Some commands were built into the command interpreter, others existed as external commands on disk. Over the several generations of DOS, commands were added for the additional functions of the operating system. In the current Microsoft Windows operating system, a text-mode command prompt window, cmd.exe, can still be used.
List of the most common MS-DOS commands:
- APPEND – Sets the path to be searched for data files or displays the current search path.
- ATTRIB – Attrib changes or views the attributes of one or more files. It defaults to display the attributes of all files in the current directory.
- BACKUP and RESTORE – These are commands to backup and restore files from an external disk.
- CD and CHDIR – The CHDIR (or the alternative name CD) command either displays or changes the current working directory.
- CHKDSK – CHKDSK verifies a storage volume (for example, a hard disk, disk partition or floppy disk) for file system integrity.
- COPY – Makes copies of existing files.
- DATE – Displays the system date and prompts the user to enter a new date. Complements the TIME command.
- DEFRAG – The command has the ability to analyze the file fragmentation on a disk drive or to defragment a drive.
- DEL and ERASE – DEL (or the alternative form ERASE) is used to delete one or more files.
- DELTREE – Deletes a directory along with all of the files and subdirectories that it contains.
- DIR – The DIR command displays the contents of a directory.
- DISKCOMP – A command for comparing the complete contents of a floppy disk to another one.
- DISKCOPY – A command for copying the complete contents of a diskette to another diskette.
- DOSKEY – A command that adds command history, macro functionality, and improved editing features to the command-line interpreter.
- EDIT – EDIT is a full-screen text editor, included with MS-DOS versions 5 and 6, OS/2 and Windows NT to 4.0 The corresponding program in Windows 95 and later, and Windows 2000 and later is Edit v2.0. PC DOS 6 and later use the DOS E Editor and DR-DOS used editor up to version 7.
- EXIT – Exits the current command processor.
- EXPAND – The Microsoft File Expansion Utility is used to uncompress one or more compressed cabinet files (.CAB).
- FDISK – Manipulates hard disk partition tables.
- FORMAT – Deletes the FAT entries and the root directory of the drive/partition, and reformats it for MS-DOS. In most cases, this should only be used on floppy drives or other removable media.
- HELP – Show help about DOS commands.
- KEYB – The KEYB command is used to select a keyboard layout.
- LABEL – Changes the label on a logical drive, such as a hard disk partition or a floppy disk.
- MD or MKDIR – Makes a new directory. The parent of the directory specified will be created if it does not already exist.
- MEM – Displays memory usage. It is capable of displaying program size and status, memory in use, and internal drivers.
- MOVE – Moves files or renames directories.
- PATH – Displays or sets a search path for executable files.
- PRINT – The PRINT command adds or removes files in the print queue.
- PROMPT – The PROMPT command allows the user to change the prompt in the command screen.
- QBASIC – An integrated development environment and BASIC interpreter.
- RD or RMDIR – Remove a directory (delete a directory); by default, the directories must be empty of files for the command to succeed.
- REPLACE – Replace one or more existing computer files or add new files to a target directory.
- SCANDISK – Disk diagnostic utility. Scandisk was a replacement for the chkdsk utility, starting with MS-DOS version 6.2 and later.
- SET – Sets environment variables.
- SYS – A utility to make a volume bootable. Sys rewrites the Volume Boot Code (the first sector of the partition that SYS is acting on) so that the code, when executed, will look for IO.SYS. SYS also copies the core DOS system files, IO.SYS, MSDOS.SYS, and COMMAND.COM, to the volume.
- TELNET – The Telnet Client is a tool for developers and administrators to help manage and test network connectivity.
- TIME – Display the system time and waits for the user to enter a new time. Complements the DATE command.
- TREE – It is an external command, graphically displays the path of each directory and sub-directories on the specified drive.
- UNDELETE – Restores file previously deleted with del. By default all recoverable files in the working directory are restored; options are used to change this behavior.
- VOL – An internal command that displays the disk volume label and serial number.
- XCOPY – Copy entire directory trees. Xcopy is a version of the copy command that can move files and directories from one location to another.