What’s the difference between MS-DOS and PC-DOS?

In the following comment Louis Parks asked about MS-DOS/PC-DOS being a joint deal with IBM.

Actually the answer’s a bit more complicated and has to do with the way the PC market worked back in the 1980s.

People these days don’t remember what the world looked like back in the ‘80s as far as computers go.  A fancy high end machine would cost $5,000 and came with a whopping 10M hard disk.  When the IBM PC/AT came out, it DOUBLED the hard disk space to 20M.  I distinctly remember one of the Xenix developers running down the hall holding up a shoebox sized hunk of metal crowing that it held SEVENTY MEGABYTES!  That was bigger than anything that anyone had seen before (at least for PC’s).

Back in 1984, when I started at Microsoft, Microsoft didn’t sell operating systems to end-users (we did sell a product called MSXDOS in Japan, and we sold a hardware product for the Apple II called the Microsoft Softcard that included a version of CP/M with it).  Heck, with the exception of languages, Microsoft didn’t sell ANY systems products at all.  Microsoft sold other products at retail (games, productivity tools, hardware, and languages) but not systems products. Instead, all of Microsoft’s non language systems products were sold to OEMs (Original Equipment Manufacturers, basically PC manufacturers) who then bundled the product with their hardware.

And we had one very special OEM, IBM.  IBM set the direction in hardware for the PC industry, and one of their requirements was that every new IBM computer needed to have a version of PC-DOS for the computer.  So versions of PC-DOS were essentially tied to the computer.

PC-DOS 1.0 came with the original IBM PC that supported 160Kb floppies
PC-DOS 1.1 came with the IBM PC that supported 360Kb floppies

PC-DOS 2.0 came with the IBM PC XT, and added support for the 10M hard drive that came with the XT.

PC-DOS 2.1 came with the PC Jr.
PC-DOS 3.0 came with the IBM PC AT.
PC-DOS 3.1 added networking support and was shipped at the same time that the IBM PC Network product shipped.
PC-DOS 3.3 came with the IBM PS/2 line of computers.

Microsoft’s contribution to DOS was hardware agnostic – it didn’t have any utilities for supporting specific PC hardware – the binaries shipped had just had DOS, the low level drivers (called the BIOS), the command interpreter, and a couple of other utilities (join, print, subst, replace, etc), IBM provided all the hardware specific utilities (mode.com, etc).

The development agreement with IBM allowed Microsoft to sell its contributions to the PC-DOS product to other OEM’s, and Microsoft shipped its contributions to OEMs as the MS-DOS product.  It came on a 3 ring binder and included all the code Microsoft wrote.

This made sense even in 1984 because not every PC sold was 100% IBM compatible.  There were significant variations between PC hardware platforms. Back in those days, the Tandy 1000 was still a viable platform, even though its display subsystem was incompatible with IBM’s.

However, as time went on, it became very clear that PCs needed to be 100% IBM compatible to survive, and given that their computers were completely compatible with IBM’s computers, the OEM’s became dissatisfied with this process.  They wanted to have a shrink-wrapped product they could buy from Microsoft and just drop into their computer box on the assembly line.  Essentially they wanted a “packaged product” version of MS-DOS.  So Microsoft obliged them, for MS-DOS 3.2, we wrote a Microsoft version of all the utilities that IBM included in their PC-DOS.

By the time that MS-DOS 3.3 came out, Microsoft and IBM were working under the Joint Development Agreement, and as a result of the JDA, Microsoft gained the right to redistribute IBM’s utilities (and I believe that IBM gained the rights to redistribute Microsoft’s).  So the packaged product version of MS-DOS 3.3 contained the real IBM utilities, which eased compatibility concerns on the part of our OEMs.

So the simple answer: PC-DOS was name of the version of DOS that was sold by IBM, MS-DOS was the name of the version that was sold by OEM’s.  But it wasn’t a part of the joint development operation until the DOS 3.3 timeframe (1987ish).


I want to thank MarkZ for reviewing this for accuracy before I posted it, I really appreciate his review.

Insert std disclaimer: This posting is provided “AS IS” with no warranties, and confers no rights


Comments (5)

  1. Anonymous says:

    The same MarkZ mentioned at the beginning of each executable file? Wow…

  2. Anonymous says:

    Thanks for the clarification.

  3. Anonymous says:

    Dru’s Blog » I love computer history…

  4. Anonymous says:

    Somewhere at home I have the MSDOS 3.2 manuals that came with a noname taiwanese clone. Excellent fun as they mention the 8" disk support that was in 3.2, these books also hadn’t been customised in any way so when talking about the command line editing keys they didn’t refer to things like F3 but used odd phrases like "copy rest of line"