 | DOS: Encyclopedia II - DOS - DOS for IBM PC compatibles
DOS - DOS for IBM PC compatibles
In particular, DOS refers to the family of closely related operating systems which dominated the IBM PC compatible market for the decade between 1985 and 1995: PC-DOS, MS-DOS, DR-DOS, FreeDOS, OpenDOS, PTS-DOS, and several others. Of these, MS-DOS from Microsoft became the most widely used.
MS-DOS (and the IBM PC-DOS which was licensed therefrom), and its predecessor, QDOS, was a successor to CP/M (Command Processor / (for) Microcomputers)—which was the dominant operating system for 8-bit Intel 8080 and Zilog Z80 based microcomputers.
DOS was one of the first operating systems for the PC compatible platform, and the first on that platform to gain widespread use (it was still widespread more than 10 years later). This was a quick and messy affair (the variant MS-DOS, sometimes colloquially referred to as Messy DOS, was developed from QDOS, which literally meant "Quick and Dirty Operating System").
IBM-PCs were only distributed with PC-DOS, whereas PC compatible computers from nearly all other manufacturers were distributed with MS-DOS. For the early years of this operating system family, PC-DOS was almost identical to MS-DOS. More recently, free versions of DOS such as FreeDOS and OpenDOS have started to appear.
Early versions of Microsoft Windows were little more than a graphical shell for DOS, and later versions of Windows were tightly integrated with MS-DOS. It is also possible to run DOS programs under OS/2 and Linux using virtual-machine emulators.
Because of the long existence and ubiquity of DOS in the world of the PC-compatible platform (DOS compatible programs were made well into the 90's), DOS was often considered to be the native operating system of the PC compatible platform.
DOS - Accessing hardware under DOS
The operating system offered a hardware abstraction layer that although adequate for developing character-based applications was woefully inadequate for accessing most of the hardware (such as the graphics hardware). This led to application programmers accessing the hardware directly. The result of this was that each application would have to have a set of device drivers written for it to use the various types of hardware on offer (different printers, etc.), and when some new hardware was released, the hardware manufacturers would have to make sure that device drivers for their hardware for the popular applications became available.
DOS - DOS and other PC operating systems
Early versions of Microsoft Windows were "shell-type" programs that ran under DOS. Later versions were launched under DOS but "extended" it by going into protected mode. Still later versions of MS Windows ran independently of DOS but included much of the old code such that it could run in virtual machines under the new OS and the latest versions of MS Windows are continually dropping ever more of the DOS ancestry. Windows Me was the last Microsoft OS to run on DOS.
Under Linux (running on x86-based systems) it's possible to run copies of DOS and many of its clones under dosemu (a Linux native virtual machine program for running real mode programs). There are a number of other emulators for running DOS and/or DOS-based software under various versions of UNIX, even on non-x86 platforms; one such emulator is DOSBox.
See also: List of DOS commands
DOS - Reserved device names under DOS
There are reserved device names in DOS that cannot be used as filenames regardless of extension; these restrictions also affect several Windows versions, in some cases causing crashes and security vulnerabilities.
A partial list of these reserved names is: AUX, COM, COM0, COM1, COM2, COM3, ..., COM8, COM9, CON, LPT1, LPT2, NUL, and PRN.
DOS - Drive naming scheme
Under Microsoft's DOS operating system and its derivatives drives are referred to by identifying letters. Standard practice is to reserve "A" and "B" for floppy drives. On systems with only one floppy drive DOS permitted the use of both letters for one drive, and displayed prompts to swap disks. This allowed for copying from floppy to floppy (this wasn't a very fast method though as it generally ended up asking for disk swaps far more often than really needed) or having a program run from one floppy whilst having its data on another. Hard drives were originally assigned the letters "C" and "D", but as support for more hard drives became available this developed into assigning the primary partitions on each drive (DOS only allowed a single active primary partition per drive even though the partitioning system allowed for more) letters first, then making a second pass over the drives to allocate letters to logical drives in the extended partitions. Letters for CD-ROMs, RAM disks and other things were allocated after the hard drive partitions. This was often done simply in the order the drivers were loaded, although many drivers could be specifically instructed to take a different letter. Network drives were usually given letters much further on in the alphabet by the network driver software so that they were generally out of the way of this system.
Because these letters were used directly by normal applications (unlike the /dev/* names in unix-like operating systems), the addition of an additional hard drive could be disruptive to applications, which then required reconfiguration or even reinstallation. This was especially true if there were logical drives in an extended partition on the original hard drive and the new hard drive had a primary partition, as it would then cause the logical drives on the first hard drive to change letters. However, even if the new hard drive had only logical drives in an extended partition it would still disrupt the letters of RAM disks and CD-ROM drives. This disruptive system persisted through the 9x versions of Windows but NT adopts a slightly different system. It uses the traditional rules when first installing but after that it tries to preserve the letters of existing drives.
Other related archives1985, 1995, Apple Computer, Apple DOS, Apple II, Atari 8-bit family, Atari DOS, BASIC, CD-ROM, CD-ROMs, CP/M, Commodore, Commodore DOS, DEC, DOSBox, DR-DOS, FreeDOS, IBM, IBM PC compatible, IBM-PCs, Intel 8080, Linux, List of DOS commands, MS-DOS, MSX, Microsoft, Microsoft Windows, OS/2, OpenDOS, PC compatible, PC-DOS, PDP-11, PTS-DOS, ProDOS, QDOS, RAM disks, System/360, VSE, Windows Me, X86 DOS Comparison, Z80, Zilog, computers, device drivers, disk operating system, dosemu, extended partitions, file system, floppy disk, floppy disk drive, hard disk, hardware, hardware abstraction layer, mainframe computers, minicomputers, operating system, primary partitions, printers, real mode, secondary storage, shell, unix-like, virtual machines, x86
 Adapted from the Wikipedia article "DOS for IBM PC compatibles", under the G.N U Free Docmentation License. Please also see http://en.wikipedia.org/wiki |