IBM PC DOS
A typical command line in PC DOS
|Developer||IBM and Microsoft|
|Written in||Assembly Language, C (programming language)|
|Working state||No longer supported|
|Source model||Closed source|
|Initial release||August 1981|
|Latest release||PC DOS 2000 / April 1998|
|Latest preview||PC DOS 7.1 / 2003|
|Kernel type||Monolithic kernel|
|Default user interface||Command line interface|
|License||Commercial proprietary software|
IBM PC DOS (full name: International Business Machines Corporation Personal Computer Disk Operating System) was an operating system for the IBM Personal Computer, manufactured and sold by IBM from the 1980s to the 2000s. Before version 6.1, PC DOS was an IBM-branded version of MS-DOS. For versions 6.1 and later, development diverged and PC DOS became an independent product.
The IBM task force assembled to develop the PC decided that critical components of the machine, including the operating system, would come from outside vendors. This radical break from company tradition of in-house development was the key decision that made the IBM PC an industry standard. But it was done out of necessity, to save time. Microsoft was selected for the operating system.
IBM wanted Microsoft to retain ownership of whatever software it developed, and wanted nothing to do with helping Microsoft, other than making suggestions from afar. According to task force member Jack Sams, "The reasons were internal. We had a terrible problem being sued by people claiming we had stolen their stuff. It could be horribly expensive for us to have our programmers look at code that belonged to someone else because they would then come back and say we stole it and made all this money. We had lost a series of suits on this, and so we didn't want to have a product which was clearly someone else's product worked on by IBM people. We went to Microsoft on the proposition that we wanted this to be their product."
IBM first contacted Microsoft to look the company over in July 1980. Negotiations continued over the next months, and the paperwork was officially signed in early November.
Although the company expected that most customers would use DOS IBM supported using CP/M-86—which became available six months after DOS—or UCSD p-System as operating systems. IBM was correct; one survey found that 96.3% of PCs were ordered with the $40 DOS compared to 3.4% for the $240 CP/M-86.
PC DOS 1.x
Microsoft first licensed, then purchased 86-DOS from Seattle Computer Products (SCP), which was modified for the IBM PC by Microsoft employee Bob O'Rear with assistance from SCP (later Microsoft) employee Tim Paterson. O'Rear got 86-DOS to run on the prototype PC in February 1981. 86-DOS had to be converted from 8-inch to 5.25-inch floppy disks and integrated with the BIOS, which Microsoft was helping IBM to write. IBM had more people writing requirements for the computer than Microsoft had writing code. O'Rear often felt overwhelmed by the number of people he had to deal with at the ESD (Entry Systems Division) facility in Boca Raton.
Perhaps the first public mention of the operating system was in July 1981, when Byte discussed rumors of a forthcoming personal computer with "a CP/M-like DOS ... to be called, simply, 'IBM Personal Computer DOS.'" 86-DOS was rebranded IBM PC DOS 1.0 for its August 1981 release with the IBM PC. The initial version of DOS was largely based on CP/M and many of its function calls as well as the file system were copied directly from the older OS. Unlike all later DOS versions, the DATE and TIME commands were separate executables rather than part of COMMAND.COM. Single-sided 160 kilobyte (kB) 5.25" floppies were the only disk format supported.
In late 1981 Paterson began writing PC DOS 1.10. It debuted in May 1982 along with the Revision B IBM PC. Support for the new double-sided drives was added, allowing 320 kB per disk. A number of bugs were fixed, and error messages and prompts were made less cryptic. The DEBUG machine language monitor utility was now able to load files greater than 64k in size.
PC DOS 2.x
Later, a group of Microsoft programmers (primarily Paul Allen, Mark Zbikowski and Aaron Reynolds) began work on PC DOS 2.0. Completely rewritten, DOS 2.0 added subdirectories and hard disk support for the new IBM XT, which debuted in March 1983. A new 9-sector format bumped the capacity of floppy disks to 360 kB. The Unix-inspired kernel featured file handles in place of the CP/M-derivative file control blocks and loadable device drivers could now be used for adding hardware beyond what the IBM PC BIOS supported. BASIC and most of the utilities provided with DOS were substantially upgraded as well. A major undertaking that took almost 10 months of work, DOS 2.0 was more than twice as big as DOS 1.x, occupying around 28k of RAM compared to the 12k of its predecessor. It would form the basis for all Microsoft consumer-oriented OSes until 2001, when Windows XP (based on Windows NT) was released.
In 1983, Compaq released the Compaq Portable, the first 100% IBM PC compatible and licensed their own OEM version of DOS 1.10 (quickly replaced by DOS 2.00) from Microsoft. Other PC compatibles followed suit, most of which included hardware-specific DOS features, but some were generic.
PC DOS 3.x
In August 1984, IBM introduced the Intel 80286-derived IBM PC/AT, its next-generation machine. Along with this was DOS 3.00. Despite jumping a whole version number, it again proved little more than an incremental upgrade, adding nothing more substantial than support for the AT's new 1.2 megabyte (MB) floppy disks. Planned networking capabilities in DOS 3.00 were judged too buggy to be usable and Microsoft disabled them prior to the OS's release. In any case, IBM's original plans for the AT had been to equip it with a proper next-generation OS that would use its extended features, but this never materialized. PC DOS 3.1 (released March 1985) fixed the bugs in DOS 3.00 and supported IBM's Network Adapter card on the IBM PC Network. PC DOS 3.2 added support for 3½-inch double-density 720 kB floppy disk drives, supporting the IBM PC Convertible, IBM's first computer to use 3½-inch floppy disks, released April 1986.
In June 1985, IBM and Microsoft signed a long-term Joint Development Agreement to share specified DOS code and create a new operating system from scratch, known at the time as Advanced DOS. On April 2, 1987 OS/2 was announced as the first product produced under the agreement. At the same time, IBM released its next generation of personal computers, the IBM Personal System/2 (PS/2). PC DOS 3.3, released with the PS/2 line, added support for high density 3½-inch 1.44 megabyte (MB) floppy disk drives, which IBM introduced in its 80286-based and higher PS/2 models. The upgrade from DOS 3.2 to 3.3 was completely written by IBM, with no development effort on the part of Microsoft, who were working on "Advanced DOS 1.0". DOS 3.30 was the last version designed with the IBM XT and floppy-only systems in mind; it became one of the most popular versions and many users preferred it to its buggy successor.
PC DOS 4.x
PC DOS 4.0 (internally known as DOS 3.4 originally), shipped July 1988. DOS 4.0 had some compatibility issues with low-level disk utilities due to some internal data structure changes. DOS 4.0 used more memory than DOS 3.30 and it also had a few glitches. Newly added EMS drivers were only compatible with IBM's EMS boards and not the more common Intel and AST ones. DOS 4.0 is also notable for including the first version of the DOS Shell, a full screen utility designed to make the command-line OS more user friendly. Microsoft took back control of development and released a bug-fixed DOS 4.01
PC DOS 5
DOS 5 debuted in June 1991. This is one of the biggest upgrades of DOS in its history. DOS 5 supported the use of the High Memory Area (HMA) and Upper Memory Blocks (UMBs) on 80286 and later systems to reduce its conventional memory usage. Also all DOS commands now supported the /? option to display command syntax. Aside from IBM's PC DOS, MS-DOS was the only other version available as OEM editions vanished since by this time PCs were 100% compatible so customizations for hardware differences were no longer necessary.
This was the last version of DOS that IBM and Microsoft shared the full code for, and the DOS that was integrated into OS/2 2.0's, and later Windows NT's, virtual DOS machine.
PC DOS 6.1
PC-DOS remained a rebranded version of MS DOS until 1993. IBM and Microsoft parted ways—MS-DOS 6 was released in March, and PC DOS 6.1 (separately developed) followed in June. Most of the new features from MS-DOS 6.0 appeared in PC DOS 6.1 including the new boot menu support and the new commands CHOICE, DELTREE and MOVE. QBasic was dropped and the MS-DOS Editor was replaced with the IBM E Editor. PC DOS 6.1 reports itself as DOS 6.00.
PC DOS 6.3
PC DOS 6.3 followed in December. PC DOS 6.30 was also used in OS/2 for the PowerPC. PC DOS 6.3 also featured SuperStor disk compression technology from Addstor.
PC DOS 7
PC DOS 7 was released in April 1995 and was the last release of DOS before IBM's Boca Raton facility closed. The REXX programming language was added, as well as support for a new floppy disk format, XDF, which extended a standard 1.44 MB floppy disk to 1.86 MB. SuperStor disk compression technology was replaced with Stac Electronics' Stacker. An algebraic command line calculator and a utility program to load device drivers from the command line were added. PC DOS 7 also included many optimizations to increase performance and reduce memory usage.
PC DOS 2000
The most recent retail release was PC DOS 2000 – released from Austin in 1998 – which found its niche in the embedded software market and elsewhere. PC DOS 2000 is a slipstream of 7.0 with Y2K and other fixes applied. To applications, PC DOS 2000 reports itself as "IBM PC DOS 7.00, revision 1", in contrast to the original PC DOS 7, which reported itself as "IBM PC DOS 7.00, revision 0".[nb 1]
Hitachi used PC DOS 2000 in their legacy Driver Fitness Test (4.15) and Hitachi Feature Tool (2.15) until 2009. ThinkPad products had a copy of the latest version of PC DOS in their Rescue and Recovery partition.
PC DOS 7.1
PC DOS 7.1 added support for Logical Block Addressing (LBA) and FAT32 partitions.[nb 1] Various builds from 1999 up to 2003 were not released in retail, but used in products such as the IBM ServerGuide Scripting Toolkit. A build of this version of DOS appeared in Norton Ghost from Symantec. Version 7.1 indicates support for FAT32 also in MS-DOS.
Most builds of this version of DOS are limited to the kernel files IBMBIO.COM, IBMDOS.COM and COMMAND.COM. The updated programs FDISK32, FORMAT32 allow one to prepare FAT32 disks. Additional utilities are taken from PC DOS 2000, where needed.
- For PC DOS the DOS INT 21h function 30h Get DOS version returns OEM code 00h for IBM instead of FFh for Microsoft. This is particularly important for DOS 7, because various features introduced in MS-DOS 7.0 and 7.1 are not supported in PC DOS 7.x, and vice versa, e.g., MS-DOS does not support REXX, and PC DOS 7 and 2000 do not support LBA access.
- Wallace, J. & Erickson, J. (1992). Hard Drive, John Wiley & Sons. ISBN 0-471-56886-4.
- Bunnell, David (Feb–Mar 1982). "The Man Behind The Machine? / A PC Exclusive Interview With Software Guru Bill Gates". PC Magazine. p. 16. Retrieved February 17, 2012.
- Edlin, Jim (June–July 1982). "CP/M Arrives". PC Magazine. p. 43. Retrieved 21 October 2013.
- Lemmons, Phil (October 1981). "The IBM Personal Computer / First Impressions". BYTE. p. 36. Retrieved 19 October 2013.
- "PCommuniques". PC Magazine. February 1983. p. 53. Retrieved 21 October 2013.
- 86-DOS version 0.3 (1980-11-15) License Agreement between Seattle Computer Products and Microsoft, dated 1981-01-06, published as part of the Comes v. Microsoft case as exhibit #1/#2, retrieved 2013-04-01.
- 86-DOS Sales Agreement between Seattle Computer Products and Microsoft, dated 1981-06-21, published as part of the Comes v. Microsoft case as exhibit #2/#3, retrieved 2013-04-01.
- Tim Paterson (2007-08-08). "Is DOS a Rip-Off of CP/M?". DosMan Drivel. Retrieved 2014-02-13.
- Duncan, Ray (1988). The MS-DOS Encyclopedia, Microsoft Press. ISBN 1-55615-049-0.
- Morgan, Chris (July 1981). "IBM's Personal Computer". BYTE. p. 6. Retrieved 18 October 2013.
- Michal Necasek (2004-06-24). "Microsoft Operating System/2 With Windows Presentation Manager Provides Foundation for Next Generation of Personal Computer Industry". The History of OS/2. — a copy of Microsoft's 1987-04-02 press release announcing OS/2
- History of Microsoft Windows and MS-DOS (Miscellaneous) TACKtech Corp.
- Vernon Brooks. "PC DOS Retro - Information and history about PC DOS and MS-DOS". Retrieved 2014-01-10.
- "Drivers and Software for Legacy (Discontinued) Products". HGST. 2009. Retrieved 2014-02-13.
- "How to use the pre-boot service partition to recover your software". Lenovo. Retrieved 2014-02-11.
An additional undocumented feature added to the User Interface is the ability to drop directly out to a DOS prompt. Pressing F3 (there is no prompt for this) will exit the recovery utility and go to a DOS prompt
- "IBM ServerGuide Scripting Toolkit, DOS Edition, version 1.3.07". IBM. 2008-01-24. MIGR-53564. Retrieved 2014-02-13.
- "Create a Standard Ghost Boot Disk". Symantec. 2004-01-03. TECH108761. Retrieved 2014-02-13.
- IBM Corporation and Microsoft, Inc. DOS 3.30: User's Guide. IBM Corporation, 1987. Part number 80X0933.
- IBM Corporation and Microsoft, Inc. DOS 3.30: Reference (Abridged). IBM Corporation, 1987. Part number 94X9575.
- IBM Corporation. Getting Started with Disk Operating System Version 4.00. IBM Corporation, 1988. Part number 15F1370.
- IBM Corporation. Using Disk Operating System Version 4.00. IBM Corporation, 1988. Part number 15F1371.
- IBM Corporation. IBM Disk Operating System Version 5.0. User Guide and Reference. IBM Corporation, 1991. Part number 07G4584.
- Que Corporation. IBM PC DOS and Microsoft Windows User's Guide. Suzanne Weixel, 2nd ed., Indianapolis, 1995. ISBN 0-7897-0276-2.
- IBM Corporation. PC DOS 7 User's Guide. Margaret Averett, 1995. Part number 83G9260 (S83G-9260-00).
- IBM Corporation. PC DOS 7 Technical Update. IBM Redbooks, 1995. ISBN 0-7384-0677-5.