MS-DOS Operating System

blog-1.jpg

MS-DOS Operating System is one of the earliest, and perhaps most important, operating systems for IBM-compatible personal computers. Microsoft developed MS-DOS in the early 1980s and created what we now recognize as today’s standard for computing – the simple command line. MS-DOS has been mostly replaced by GUI systems like Windows; however, you can still find this operating system present in legacy systems, embedded systems, or in the educational environment. In this article, you will learn about what MS-DOS is, how it implements functions, its features, commands, and architectural design, as well as the benefits and drawbacks.

Table of Contents:

What is the MS-DOS Operating System?

MS-DOS is an older operating system that was created by Microsoft for IBM-compatible personal computers, and it manages, operates, and controls the computer’s hardware resources. MS-DOS was the first operating system to be released in 1981 by Microsoft, and the operating system that became very famous in the 1980s and early 1990s. IBM did not use Windows as its OS for its users’ information system. 

MS-DOS stands for Microsoft Disk Operating System. It is a command-line-based operating system, which means users can work with this OS by typing text commands. MS-DOS is used to manage hardware resources, files, and programs on a computer. It is an operating system that allows a single user to access its computer’s resources and applications by allowing only a single task at a time. However, over a period of time, it was slowly replaced with the GUI (Graphical User Interface) systems such as Windows.

Why is MS-DOS Used?

Here are a few reasons that will help you understand why MS-DOS is still used, although modern operating systems use GUIs.

  • Education and Research: MS-DOS is still used for educational and research purposes because it is a simple and accessible way for students and enthusiasts to understand how a basic OS works.
  • Legacy System Support: Still, many older systems rely on MS-DOS due to its stability, lack of upgrade funding, and compatibility with important legacy applications.
  • Embedded Systems: Some industrial and embedded devices still use MS-DOS due to its low-resource requirement and simplicity.
  • Gaming: A wide range of older computer games were developed exclusively for MS-DOS.
  • User Preferences: Some users and writers still prefer the straightforward, simple interface developed using MS-DOS.

MS-DOS version history

Version Release Year Key Features
MS-DOS 1.0 1981 First version: basic file and disk management (floppy only).
MS-DOS 1.25 1982 OEM version for IBM PC compatibles.
MS-DOS 2.0 1983 Support for hard disks, directories, and installable device drivers.
MS-DOS 3.0 1984 Introduced FAT16; improved disk support (hard disks > 10MB).
MS-DOS 3.2 1986 Support for 3.5″ floppy disks (720KB).
MS-DOS 3.3 1987 Improved memory and partition support.
MS-DOS 4.0 1988 Graphical shell introduced; support for large hard disks.
MS-DOS 5.0 1991 Full-screen editor (EDIT), improved memory management.
MS-DOS 6.0 1993 Disk compression (DoubleSpace), virus scanner, backup tools.
MS-DOS 6.22 1994 Last standalone version; included DriveSpace for disk compression.
MS-DOS 7.0 1995 Integrated into Windows 95, C long file name support (VFAT).
MS-DOS 7.1 1998 Came with Windows 98; FAT32 support added.
MS-DOS 8.0 2000 Final version; shipped with Windows ME; limited command-line features.

Layered Architecture of MS-DOS

The layered architecture of MS-DOS is a simple structure that shows how different parts of the operating system interact with hardware and the user. MS-DOS architecture is divided into five main layers. 

Architecture of MS-DOS

Now, let’s discuss each of these layers in brief.

1. Application Programs

This is the top layer of MS-DOS. Application programs are user-developed or third-party software, such as word processors, spreadsheets, games, utilities, etc. The application programs use services offered by the command interpreter and the kernel and need those services to perform tasks with the hardware.

2. Resident System Programs 

In this layer, you can find all of the core system programs that remain in memory after the machine has booted. The most important file in this layer is COMMAND.COM, which:

  • Functions as a command interpreter.
  • Processes internal commands (for example, DIR, COPY).
  • Executes executable files (EXE, COM, or BAT).
  • Provides a simple user interface by means of a command prompt.
Build Real Skills for Real Jobs with Software Development Course.
Launch Your Tech Career with IIT-Certified Training - Enroll Now!
quiz-icon

3. MS-DOS Device Drivers

These software modules handle communication between the OS and connected hardware like printers, keyboards, and disk drives. Drivers can be loaded via CONFIG.SYS and help provide:

  • Device-specific functionality.
  • A uniform interface for applications to access hardware.

4. ROM-BIOS Device Drivers

This is the lowest layer of the software, and is found in the system ROM. This kind of firmware usually provides low-level control of system hardware, and also provides a standardized way to access that hardware via software interrupts. The following are common interrupts used in BIOS:

  • INT 13h – Disk services 
  • INT 10h – Video display 
  • INT 16h – Keyboard input 

The BIOS also performs the Power-On Self-Test and passes the control to MS-DOS during the boot-up process.

5. Hardware Layer

The physical layer consists of the physical parts of the computer, known as the computer hardware. These include the hardware such as CPU, RAM, disk drives, keyboard, mouse, monitor, etc. The physical layer consists of:

  • Processing power for the system.
  • Interfaces for communication with I/O devices.
  • The physical layer supports all upper layers of software.

Characteristics of MS-DOS Operating System

MS-DOS was a commonly used operating system during the early days of personal computing, due to its straightforwardness and efficiency on early IBM-compatible personal computers.  Here are a few key characteristics:

  1. Command-Line Interface (CLI): MS-DOS uses a text-based interface where users type commands to perform tasks like managing files or launching programs.
  2. Single-User and Single-Tasking: It supports only one user at a time and can execute only one program at a time, which simplifies its operation and reduces complexity.
  3. Low System Requirements: MS-DOS requires minimal memory and processing power, making it ideal for early hardware with limited resources.
  4. File and Directory Management: It supports the FAT12 and FAT16 file systems and allows users to create, delete, copy, move, and organize files in directories.
  5. Device Independence: By using device drivers, MS-DOS can interact with a wide range of hardware without needing applications to be rewritten for each device.
  6. Direct Hardware Access: Applications can access the hardware directly, as well as the system memory, to facilitate game development and apps designed to maximize performance optimization.
  7. Interrupt-Driven Services: MS-DOS provides system functions using software interrupts (like INT 21h) to handle input or output, memory management, and file operations.
  8. Lightweight and Fast Boot time: It has a small footprint and boots easily, which can be more effective than an operating system like Windows on older machines, especially on flash storage.

Working of MS-DOS

Below is a step-by-step description of the MS-DOS operating system:

  1. When the computer is powered on, the BIOS checks the hardware components of the computer through the Power-On Self Test (POST). 
  2. Then it finds the boot sector on the system disk and loads it into memory, which contains instructions to load MS-DOS.
  3. Now, the boot sector loads the important MS-DOS files into memory, such as the IO.SYS, MS-DOS.SYS, and COMMAND.COM.
  4. Then, MS-DOS runs CONFIG.SYS and AUTOEXEC.BAT are used to configure the system settings to load drivers and prepare the environment.
  5. After initialization, MS-DOS displays the command prompt, which is ready to accept the user’s commands.
  6. Then, the command interpreter processes internal commands or runs external executable files.
  7. MS-DOS uses software interrupts (e.g., INT 21h) to perform file operations and interact with hardware.
  8. After executing a command, control returns to the command prompt for the next instruction.

Get 100% Hike!

Master Most in Demand Skills Now!

MS-DOS Commands

MS-DOS commands are text commands to manipulate the system through the MS-DOS command line. The commands that the system executes allow the user to manipulate files, folders, and system settings. Some examples of commands are DIR, COPY, and DEL: each command executes a specific task. MS-DOS commands are an easy and efficient way to manipulate the system while bypassing a Windows-style graphical interface. The two types of MS-DOS commands are internal (built-in to the MS-DOS mode) and external commands (stored as separate files on the hard disk).

Now, let’s discuss the types of MS-DOS commands in more detail with examples.

1. Internal Commands

The internal commands are a type of MS-DOS command that are built into the COMMAND.COM command interpreter. They are always available in memory when the system is running. Internal commands do not need any external files to run and are used for basic file and directory operations. 

The following is a list of some of the commonly used internal commands in MS-DOS:

Command Description
DIR Displays the files and directories in the current folder.
CD or CHDIR Changes the current working directory.
COPY Copies files from one location to another.
DEL or ERASE Removes one or more files.
CLS Clears the screen.
REN or RENAME Renames a file or directory.
TYPE Displays the contents of a text file.
DATE Displays or sets the system date.
TIME Displays or sets the system time.
VER Displays the version of MS-DOS.
PROMPT Changes the command prompt appearance.
PATH Sets or displays the command path.

2. External Commands

External commands are another form of MS-DOS commands that are not built into the command interpreter of MS-DOS. External commands exist as a separate executable disk file, typically with the extensions of .EXE, .COM or .BAT. They are loaded into memory as they are needed. External commands are used for the more advanced system tasks that the internal commands will not handle.

Here is a list of some of the common external commands in MS-DOS:

Command Description
FORMAT Formats a disk for use.
FDISK Manages disk partitions.
CHKDSK Checks a disk and displays a status report.
DISKCOPY Copies the entire contents of one disk to another.
XCOPY Copies the files and directory trees.
DELTREE Deletes a directory and all its contents.
EDIT Opens a simple text editor.
SCANDISK Scans and repairs disk problems.
ATTRIB Displays or changes file attributes.
MODE Configures system devices like COM ports.

How to Open MS-DOS in Windows

Though later versions of Windows no longer have the original MS-DOS interface, you can still open a command-line interface (CLI) that supports many MS-DOS commands (via the Command Prompt). 

Here are the steps involved in opening MS-DOS in Windows:

1. Using Run Dialog

  • Press Windows + R on your keyboard.
  • Type cmd and press Enter.

2. Use the Start Menu

  • Press the Start button.
  • Type Command Prompt or cmd in the search dialog.
  • Click on the Command Prompt app.

3. Use File Explorer

  • Open any folder.
  • Type cmd in the folder address bar and press Enter. You have now opened a Command Prompt for that folder’s PATH.

NOTE: This will open a Command Prompt for Windows. The Windows Command Prompt has similarities to MS-DOS but is not the original MS-DOS environment. To run MS-DOS, you will need a program like DOSBox or another virtual machine that runs an older operating system with MS-DOS as the kernel.

Files and File Types of MS-DOS

MS-DOS has special file types and file extensions for operating the system, executing a program, and storing data. These file types are required for running the system files and for configuring and running hardware components, establishing commands in an automatic operation, and executing programs in the MS-DOS system. The following are some significant and important file types that are used in MS-DOS:

File Extension File Type Description
.COM Command File Small, simple executable files with memory of 64 KB.
.EXE Executable File Larger program files that can contain more complex instructions than .COM.
.BAT Batch File Text files containing a series of DOS commands to be executed in sequence.
.SYS System File Used by DOS for device drivers and system configuration.
.TXT Text File Basic text documents, often used for notes or configurations.
.INI Initialization File Contains settings used by applications and sometimes by the system.

Benefits of MS-DOS Operating System

  1. MS-DOS has a simple and lightweight design, which makes it easy to install and requires very few system resources.
  2. It allows low-level access to hardware, which is useful for system developers and embedded applications.
  3. Due to the simplicity and lack of background processes, the MS-DOS boots and runs programs quickly.
  4. Many older programs and industrial systems still run reliably on MS-DOS.
  5. MS-DOS is excellent for learning the fundamentals of command-line interfaces and file systems.
  6. Users can automate tasks using the .BAT files, which contain a series of DOS commands.
  7. It runs efficiently on older computers with very limited memory and storage.
Code Your Future - Begin Learning C & DSA
Learn from Industry Experts. Sign Up Free!
quiz-icon

Limitations of MS-DOS Operating System

  1. MS-DOS can only run a single program at once with no support for multitasking.
  2. It is entirely text-based and has no native graphical user interface (GUI).
  3. MS-DOS only supports up to 640 KB of conventional memory, which limits the support for modern applications.
  4. It has no user authentication and file permissions, or protection against unauthorized access.
  5. MS-DOS does not include networking support; users need to install additional software to have connectivity capability at all.
  6. MS-DOS cannot support most consumers’ modern processors, storage devices, or peripherals.
  7. It uses FAT file systems, which were inflexible due to a lack of support for large file sizes and long filenames.

Conclusion

MS-DOS was important in the early stages of personal computing, providing the first command-line operating system for IBM-compatible personal computers. The system gave users direct access to their files, programs, and hardware, which acted as a model for modern OS development. Even today, students still learn MS-DOS as it exists in legacy systems, older embedded devices, and is even being used in new devices. Understanding MS-DOS helps the user to understand the evolution of core system functions of operating systems (OS) that are still in place today.

MS-DOS Operating System – FAQs

Q1. Is MS-DOS still in use today?

Yes, MS-DOS is still used in embedded systems, legacy industrial software, and educational environments.

Q2. Can MS-DOS run multiple programs at once?

No, MS-DOS is a single-tasking operating system, which means that it can run only one program at a time.

Q3. How is MS-DOS different from Windows?

The difference between MS-DOS and Windows is that MS-DOS uses a command-line interface (CLI) and supports single-tasking, and Windows uses a graphical user interface (GUI) and supports multitasking.

Q4. Can I run MS-DOS on modern computers?

No, you cannot run MS-DOS directly on modern computers. You can use emulators like DOSBox or virtual machines to run MS-DOS on modern systems.

Q5. What is the full form of MS-DOS?

MS-DOS stands for Microsoft Disk Operating System.

About the Author

Senior Consultant Analytics & Data Science, Eli Lilly and Company

Sahil Mattoo, a Senior Software Engineer at Eli Lilly and Company, is an accomplished professional with 14 years of experience in languages such as Java, Python, and JavaScript. Sahil has a strong foundation in system architecture, database management, and API integration. 

fullstack