In a nutshell: Tim Patterson(Seattle Computer Products) produces 86DOS. Microsoft buys it and adapts it to IBM's needs for the 1st 5-slot PC's. This is PC DOS 1.0 - it supports 8 sector single sided floppys and only has FCB file system. 1.1 adds double sided support, still FCB's and 8 sectors. Along comes the IBM XT with its hard disk, and something else is needed - that will be DOS 2.0. This was a major advance, it adds handle based I/O, the directory structure, and hard disk support. One of the major players on this release was Mark Zibikowski at Microsoft (who's name was imortalized in the "MZ" signature found at the beginning of the EXE file format). The 2.0 release now supports the 9 sector diskette format too, the "360K" diskette is born! DOS 2.1 fixes a few bugs (most notably the exec bug) and adds some device support and some minor internationalization stuff. Along comes the IBM AT - a major new architecture, with a lot of new hardware features that need support. Enter DOS 3.0 - extended memory is supported (crudely) by VDISK. 1.2M floppy's are supported. More internationalization support, and the groundwork for network support - although its not really turned on yet as it wasn't quite ready. IBM PC NEtwork arrives (2M bit baseband, NetBIOS). DOS 3.1 is a major release - this one has the LAN support enabled and fixes many of the egregious bugs in 3.0. DOS 3.2 is a relatively minor release - driven by the need to support the 720K floppy format. A few new IOCTL's appear. Enter the IBM PS/2's - hard disks are getting bigger, a single 32M partition isn't enough anymore. A key change in DOS development occurs at this point in time - IBM Boca becomes the main development center for DOS 3.3, Microsoft focuses on OS/2. The IBM developed DOS 3.3 is licenced back to Microsoft as part of the JDA (Joint Development Agreement). DOS 3.3 supports the PS/2's, multiple partitions, more internationalization, 1.44M floppys, and a bunch of new stuff. DOS 3.3 becomes a defacto "standard". Compaq adapts their 3.3 release to support large partitions - this is the Compaq 3.31 release. IBM continues development work on DOS 4.0. It adds large partition support, the rudements of an IFS (subsequently removed in DOS 5), the 1st "graphical" shell for DOS, more internationalization, and support for EMS (buggy, it only worked on the IBM XMA card). One of the DOS 4.0 API's conflicts with MSCDEX - this goof is quickly fixed in DOS 4.01. IBM and Microsoft decide that an "industry standard" DOS is needed - and 4.0/4.01 weren't it. Large partition support was too crude, and the kernel had grown too large. Enter DOS 5. IBM spec's it - Microsoft is contracted to build it. The kernel and utilities get a major overhaul. EMM386 and HIMEM appear. A disk cache ships in DOS now too. The DOS 5.X kernel is now aware of Windows. Now the game gets interesting - IBM decides it wants to sell DOS openly, not just onto IBM platforms. IBM's DOS 5.00.1 is released - it removes the hardware check from QBASIC so the package will run on any clone. Soon after, IBM releases 5.02 - this point release adds some support for electrically ejectable/lockable drives, ISO screen fonts, and Interlink. [This is the first DOS release I worked on while I was with IBM in Boca]. IBM does various retail bundling deals with 386Max & Stacker using the 5.00.1 package. DOS 5.X was a major event horizon in the development of DOS - not so much for the new features it added, but for the fact that DOS's internal data structures stayed fairly stable in the subsequent 6.XX releases from IBM and MS. The DOS data areas and core API's weren't going to be a moving target anymore. I'm getting finger weary here, or I'd continue on with some of the history of the MS/IBM 6.XX releases and IBM PC DOS 7. This "rising from the dead" for DOS is also an interesting story and probably should be told. I know the IBM side, and it's quite a tale. Maybe tomorrow... Tony