QDOS

QDOS (Quick and Dirty Operating System、即席オペレーティングシステム) は、原始的な 16bit オペレーティングシステム である。元々はシアトル・コンピュータ・プロダクツ （Seattle Computer Products : SCP) から販売された Intel 8086 ベースのコンピュータ・キット用として 1980年 にティム・パターソンが4ヶ月で開発したもので、コンピュータ民俗学で最も偉大な伝説の一部として有名である。最初のPC DOS（MS-DOS）は、QDOSをベースに作られた。
なおシンクレア・リサーチ社の Sinclair QL コンピュータ用の OS である QDOS とは無関係。
QDOS のコマンド構造と API はデジタルリサーチ社の CP/M に似ており、簡単にプログラムを移植することができた。

起源

QDOS が開発されたのは、1979年6月にデモを行い 11月から出荷された SCP の 8086 コンピュータ・キットにはオペレーティングシステムが無く、販売に苦戦していたからである。ボードと一緒に SCP から提供されたソフトウェアは、スタンド・アロンの Microsoft BASIC-86 だけであった。マイクロソフトは、新しいプロセッサ上でソフトを動かすことに非常に熱心で、6月のデモに参加していた。SCP から 8086 ボードのプレ・リリース版の貸与を受けることで、開発が容易になった。
当時のマイクロコンピュータ用の主要なオペレーティングシステムはデジタルリサーチ社の CP/M だったが、1980年の時点では 16bit 版は存在しなかった。SCP は開発用ボードをデジタル社には提供しなかったのだが、その理由は、デジタル社が興味を示さなかったからなのか、それとも「ボードを提供しても CP/M の 16bit 版を開発してくれないだろう」と SCP が考えたからなのかは、はっきりしない。とにかく SCP の社内には、動作するプロトタイプが2つしか無かったのである。利用可能なオペレーティングシステムが無いまま、パターソンは1980年4月に QDOS の開発を始めた。
パターソンの設計した QDOS は、内部 API が CP/M と同じで、ユーザコマンドも大部分が同じであった。MS-DOS と同様に、QDOS は CP/M の「遺物的なコマンド」をいくつか切り捨てていた。DEC ミニコンピュータで使われていたコマンドに似ている PIP ファイル・コピー・サブシステムは、COPY コマンドに置き換えられた。PIP に続けて「コピー先=コピー元」とタイプして実行する代わりに、MS-DOS のコマンドでは（ PDP-11 オペレーティングシステムを引き継いだ VAX/VMS の COPY コマンドと同様に）単純に「COPY コピー元 コピー先」である。それとは別に CP/M では、フロッピーディスクを入れ替えた時はコントロールキーを打たなければならないことを、ユーザは不便に思っていた。その後の DOS と Windows では、Unix と GUI オペレーティング・システム・シェルに似た機能とユーザ・インターフェースが採用されていくこととなった。
（短命に終わった）最初のバージョンは 86-DOS（en:86-DOS） として売り出されたのだが、CP/M の特徴の多くを取り入れていなかった。パターソンは CP/M のファイルシステムをそのままコピーせず、Microsoft BASIC のいくつかのバージョンで採用された FAT ファイルシステムを使った。

IBM の関心

1980年後半、IBM は IBM PC の原型を開発していた。その当時最も普及していたオペレーティングシステムは CP/M であり、IBM は競争のためには CP/M が必要だと考えていた。最終的には IBM は CP/M ではなく QDOS を採用することになるのだが、その理由はいくつか考えられている。
ある説では、IBM の代理人がデジタルリサーチ社のゲイリー・キルドール（CP/M の開発者であり後に DR-DOS も開発する）を訪ねた時に、彼が会おうとしなかっただけだ、ということである。一方で、最も有力な（ビル・ゲイツによる）説では、デジタルリサーチ社を訪問した IBM の重役達を何時間も待たせたまま、キルドールは自家用飛行機を飛ばしに行っていた、ということである。その後 IBM がオペレーティングシステムの提供をマイクロソフトに依頼することにした時、キルドールは世紀のチャンスを逃してしまったのである。ただしどちらの説も、「確かな話」とは一般に認められていない。
パターソンらによれば、キルドールは商談には関与せず、弁護士でもある妻の Dorothy McEwen に任せていた、という。パターソンは「彼女が IBM との秘密保持契約（NDA）へのサインを嫌がった」と語っている。また後にキルドールがNHKスペシャル『新・電子立国』のインタビューで語ったところによれば、IBMの重役が最初にデジタルリサーチを訪れた時、キルドールは既にサンノゼで別の商談の予定が入っていたため、妻に代わりに対応してもらった際にNDA締結を巡るトラブルがあったという。ただしキルドールの同僚であるゴードン・ユーバンクスは「彼女はサインした」と言っている。ユーバンクスは「キルドールは PL/1 コンパイラに取り組んでいたので、当時は CP/M の 16bit プロセッサへの移植には興味が無かった」とも言っている。
他の説では、IBM と デジタル社が価格面で折り合わなかったのだ、とされている。IBM は 250,000 ドルで CP/M を丸ごとすべて買い取ることを提案したが、キルドールの希望は 1 コピーあたり 10 ドルのライセンスであった。
少なくとも、IBMとデジタルリサーチの間で具体的にCP/Mの供給を巡り複数回の交渉が行われたことや、IBMから25万ドルでCP/Mを買い取りたいという提案があったことはキルドール自身が認めており、NDAを巡るトラブルが当初あったにせよ、その後両社の間でNDAが結ばれ具体的な価格交渉が行われたことは間違いないと思われる。ただしこの交渉に関してIBM側の関係者とキルドールの証言が大きく食い違っているのも事実で（NHKのインタビューに対し、IBM側の交渉担当者だったジャック・サムズは「キルドールとは一度も会っていない」と語っているのに対し、キルドールは「サムズとは複数回会って交渉した」と語っている）、真相は依然謎に包まれている。
とにかく、IBM はマイクロソフトにオペレーティングシステムの提供を依頼し、マイクロソフトもまたそれを受諾した（マイクロソフトは既に PC 用の ROM BASIC インタプリタも提供していた）。

PC DOS の誕生

1980年12月にマイクロソフトは、シアトル・コンピュータ・プロダクツ社 (SCP) から 86-DOS の非独占的なライセンスを 25,000 ドルで買い取った。1981年5月にはティム・パターソンを引き抜いて、QDOS の IBM PC（安いが遅い 8088 と、それ用の周辺チップを使用）への移植を行なわせた。IBM は連日開発に付き合い、受領の前に 300 以上のバグを報告し、ユーザ・マニュアルも作成した。
PC をリリースする 1ヶ月前の1981年7月に、マイクロソフトは SCP から 86-DOS の全ての権利を 50,000 ドルで買い取った。それは IBM の主な基準を満たしていた。CP/M のように見え、特に QDOS の TRANS コマンドを使って 8080 のソースファイルを 8086 の機械語に変換できるおかげで既存の 8bit CP/M プログラムを簡単に移植できた。マイクロソフトは QDOS を IBM にライセンスし、PC DOS 1.0 となった。このライセンスでは、マイクロソフトが他の会社に DOS を売ることも認められており、実際に販売が行なわれた。取引は大成功を収めたのだが、後に SCP はマイクロソフトを訴える。マイクロソフトがオペレーティングシステムを安く買い取るために IBM との関係を秘密にした（関係を示すことが IBM との秘密保持契約 (NDA) に反するとしても）と SCP は 主張し、最終的には 100万ドルで和解した。

知的財産論争

IBM は DOS を 60ドルで販売し、その価格設定は240ドルの CP/M-86よりも遥かに魅力的だった。デジタルリサーチ社は、CP/M のシステムコール、プログラム構造、ユーザーインターフェイスのほぼすべてを DOS に模倣されていたためマイクロソフトを訴えることを考えたが、結局は取りやめた。マイクロソフトを訴えれば IBM も訴えなければならなくなり、IBM のような巨大な企業を相手に裁判で戦えるほどの資金は無く、勝てる見込みが無いからである。
1982年までに IBM がハードディスクに準拠した DOS のバージョンをリリースしてくれるようにマイクロソフトに依頼した時には、PC DOS 2.0 は DOS をほとんど丸ごと書き直したものだった。したがって 1983年3月までには、QDOS 由来のソースコードはほんの一部が残っているだけになっていた。QDOS 由来のソフトウェアで最も長く生き残った一部は、原始的なライン・エディタの EDLIN である。QBasic を元とするグラフィカルなエディタ（EDITとして知られている）を同梱した MS-DOS 5.0 が 1991年6月 にリリースされるまで、EDLIN はマイクロソフト版の DOS で提供されていた唯一のエディタであった。