ロードマップでわかる!当世プロセッサー事情 第402回
業界に痕跡を残して消えたメーカー MS-DOS誕生のきっかけとなったOS「CP/M」を生みだしたDigital Research
2017年04月10日 11時00分更新
IMSAI 8080にCP/Mを移植する際に
ひらめいたBIOS
会社設立後、米海軍大学校での生徒だったGlenn Ewing氏が、IMSAI 8080にCP/Mを移植するというアイディアを持ちかけてくる。これに乗ったKildall氏はEwing氏と一緒に移植作業を進めるが、この際にBIOSというアイディアが生まれる。
当時はすべてのマイコンがそれぞれ独自の周辺回路設計になっており、当然互換性はなかったわけだが、基本的な入出力に関して「プログラムから見えるインターフェースを統一する」ことで、複数のマイコンで同一のプログラムが動く、という可能性を提供できることになる。これがBIOS(Basic Input/Output System)という概念の生まれた瞬間である。
もっともこの当時は、まだ(後のIBM-PCと異なり)BIOS ROMそのものは搭載されていない。CP/MはFDDからシステムを立ち上げる仕組みだが、そもそも「FDDから立ち上げる」手順がマイコンごとにまちまちだったりした。
CP/Mでは「FDDを動かして最初のセクターを読み込み、その読み込んだ内容をメモリーの0番地に展開し、そこに制御を移す」という処理(これをブートストラップと呼ぶ)を原則とし、マイコンメーカーもこれに対応した形でFDDのコントローラーを用意したことで、まず最初の問題がクリアになった。
次が入出力の構成の違いであるが、CP/Mでは内部をBDOS(Basic Disk Operation System)、BIOS(Basic Input/Output System)、CCP(Console Command Processor)の3つに分け、BDOSとCCPはすべての場合で共通とし、BIOSのみ機種ごとに書き換えるという形で複数機種のマイコンに対応した。とはいえ8080の時代の話なので、BIOSの機能はそれほど多くなく、移植は簡単だったという。
メモリー利用量はCP/M 1.4の場合で16KBと極めてコンパクトである。とはいえメモリー空間は全部で64KBしかないので、これでも重いという声は常にあった。これに対応するのがリブートというメカニズムである。
CP/Mがブートすると、BDOS/BIOS/CCPが全部メモリーにロードされるが、そこからアプリケーションを起動する際にメモリー中に残るのはBIOSだけである。アプリケーションはBIOSを経由して、FDDを含む周辺機器にアクセス可能である。
そしてアプリケーションが終了すると、もう一度メモリーにBDOSとCCPを再ロードする。この再ロードの仕組みをリブートと称した形だ。これにより、利用可能メモリー量を最大限に確保することが可能になっていた。
爆発的に普及した
CP/M対応のマイコン
さてそのCP/Mは、こうした移植を容易にするメカニズムも整ったことにより、急速に普及することになる。CCPは後のMS-DOSを思わせる、というかMS-DOSがCP/Mを真似たのだから当然なのだが、もっともそのCCPは、DECがPDP-11用に提供したRT-11というリアルタイムOSの影響をかなり受けているので、その意味ではご先祖様はRT-11ということになる。
画像の出典は、“Computer History Museum”
起源はともかくとして、これに代るものは当時なかったという事情もあり、草の根効果でつぎつぎと売れていった。また8080に加えてZ80もサポートしたことで、さらにさまざまなマイコンがCP/Mをサポートするようになった。
一説によれば、CP/Mに対応したマイコンは3000機種を超えるという。もっともこの中には同じ機種の仕様違い(例えばメモリー量やCPUの動作周波数)も含まれているとは思うので、どこまで正確なのかははっきりしない。
こうしたことに対応し、Digital Researchはまず1979年に最初の社員としてインテルからTom Rolander氏を引き抜き、次の製品であるMP/Mの開発にあたらせている。1980年には社員数は20名を超え、売上は350万ドルを超えていた。
売上はその後も急増し、1982年には2000万ドル、1983年には4500万ドルに達している。当時の顧客の中には、なんとマイクロソフトまで含まれていた。マイクロソフトはZ80カードにCP/Mをバンドルして再販するビジネスを行なっていたためである。
IBMとの交渉が決裂したことで
マイクロソフトのMS-DOSが誕生
その絶頂期に近い1980年が、同社にとって運命の分かれ道になった。IBMは8088ベースのIBM-PCの開発を水面下で行なっていた。この開発を指揮したEDS(Entry Systems Division)の指揮を取っていたDon Estridge氏の方針で、すべてを自社でまかなうのではなく、可能な限り外部のリソースを利用して開発期間を短縮しようとしていた。
この方針に基づき、IBMはマイクロソフトにBASICのインタプリタを、Digital ResearchにDOSを提供してもらう方針を定めた。ここからの話は非常に有名である。
IBMのチームはDigital Researchを訪ねるものの、その時Kildall氏は他の顧客との打ち合わせのために飛行機で出かけており、契約を主に担当していた妻のDorothy氏とIBMの顧問弁護士が打ち合わせに臨むことになった。ただIBMは説明の前に機密保持契約へのサインを求め、これをDorothy氏が拒絶したことでのっけから契約は暗礁に乗り上げる。
そうこうしているうちにKildall氏も戻ってきた(これには、IBMのチームとフロリダ行きの飛行機の中で再会したので、そこで再び交渉が始まった、という別の説もあるが真偽は不明)ものの、IBMが提示した契約条件(8086用のCP/Mの権利を丸ごと買い取る)をKildall氏が拒絶し、最終的に物別れに終わる。Digital ResearchはCP/Mをロイヤリティー方式で販売しており、この経営戦略を崩したくなかったのだろう。
この打ち合わせが不調に終わったことを知ったマイクロソフトのBill Gates氏は、すぐさまSeattle Computer Productsという小さな会社が開発していたQDOS(Quick and Dirty Operationg System:後に86-DOSと称される)を買収し、これをMS-DOSとしてIBMに提供することを申し出る。
Gates氏が賢明だったのは、MS-DOSを非独占ライセンスとしてIBMに売りつけたことだ。この結果、IBMはPC-DOSという名前でIBM-PC用のDOSを独占販売できることになった一方、マイクロソフトはIBM-PC以外のマイコンに、MS-DOSの名前でDOSを販売できるようになった。この結果が現在のマイクロソフト帝国につながるわけだが、それは本題ではない。
この連載の記事
-
第803回
PC
トランジスタの当面の目標は電圧を0.3V未満に抑えつつ動作効率を5倍以上に引き上げること IEDM 2024レポート -
第802回
PC
16年間に渡り不可欠な存在であったISA Bus 消え去ったI/F史 -
第801回
PC
光インターコネクトで信号伝送の高速化を狙うインテル Hot Chips 2024で注目を浴びたオモシロCPU -
第800回
PC
プロセッサーから直接イーサネット信号を出せるBroadcomのCPO Hot Chips 2024で注目を浴びたオモシロCPU -
第799回
PC
世界最速に躍り出たスパコンEl Capitanはどうやって性能を改善したのか? 周波数は変えずにあるものを落とす -
第798回
PC
日本が開発したAIプロセッサーMN-Core 2 Hot Chips 2024で注目を浴びたオモシロCPU -
第797回
PC
わずか2年で完成させた韓国FuriosaAIのAIアクセラレーターRNGD Hot Chips 2024で注目を浴びたオモシロCPU -
第796回
PC
Metaが自社開発したAI推論用アクセラレーターMTIA v2 Hot Chips 2024で注目を浴びたオモシロCPU -
第795回
デジタル
AI性能を引き上げるInstinct MI325XとPensando Salina 400/Pollara 400がサーバーにインパクトをもたらす AMD CPUロードマップ -
第794回
デジタル
第5世代EPYCはMRDIMMをサポートしている? AMD CPUロードマップ -
第793回
PC
5nmの限界に早くもたどり着いてしまったWSE-3 Hot Chips 2024で注目を浴びたオモシロCPU - この連載の一覧へ