CP/M-86 - MS-DOSに遅れを取ったのは何故か
8ビットCPUな時代にDOSとしては圧倒的なシェアを誇っていたCP/Mですが、8086に対する16ビット用のDOSとしての道のりは茨の道でした。開発元のデジタル・リサーチとしてはCP/Mが普及していたからこそ、8086を使った16ビット時代にふさわしいOSとしての進化を実現させたかったのでしょうし、その責任も感じていたのでしょう。特にいわゆる本格的なOSへの進化を目指し、この機会にマルチタスク処理が可能になるための準備となる機能拡張を行ったために、8ビット時代との互換性が失われ、開発に手間取ってしまいました。
CP/M - DOSってなんドス?
CP/M-86
このためリリースされたのは1981年も終わりごろとなり、8088を採用したIBM PCに採用されたのはマイクロソフト製のDOS(PC-DOS、後のMS-DOS)で、遅れを取ることになってしまいました。8080から8086への移行はインテルとしてはバイナリレベルの互換性は諦めたもののソースコードレベルでは互換性が充分にあると説明されていて、実際、過去の資産を引き継ぐ必要のなかったMS-DOSの方が、むしろCP/Mで作られたコードの移植が容易だったようです。
PC-DOS
MS-DOS
この辺りも多くのBASICをいろいろなメーカーにOEM供給していたマイクロソフトの顧客の求める機能と開発のタイミングのセンスが活きたのだとも思います。この段階では8086に求められていたのは、高速で多くのメモリを扱える8080に過ぎず、本格的なOSは時期尚早だったようです。ただ、リリースタイミングが大きく違ったわけでもなく、最初のバージョンの機能としてはドッコイだったので、まだどちらが優位であるかはわかりませんでした。
初期のバージョンではいずれも日本語への対応は行われておらす、最初に日本語に対応したのは1982年で三菱電機のMULTI16に搭載されたCP/M-86だと言われており、この時にパソコンでその後の主流となるシフトJISコードが採用されたと言われています。シフトJISはMS漢字コードとも呼ばれており、このコードを検討した段階でマイクロソフトも関わったのだと思うのですが、同時並行的に話は進んでいたのでしょう。MS-DOSも少し遅れて1983年のVersion2.01から日本語の対応が行われました。
MULTI16 - 遂に三菱電機もパソコンを出した
Shift_JIS
Microsoftコードページ932
多くの16ビットパソコンでは、MS-DOSとともにCP/M-86も選択できることが多かったのですが、アプリケーションの数の多さからMS-DOSが使われることが圧倒的に多かったです。このため、CP/M-86は、当初の目的であったマルチユーザ・マルチタスクを実装したコンカレントCP/M-86の開発を急ぎ、ビジネス向けの用途に活路を見出すこととなりました。
こうして16ビットな時代にはBASICがOSを兼ねていた時代から脱却して、画面処理などで機種ごとの対応がまだ必要だったものの、徐々にDOSという世界で括られた共通のアプリケーションが使える時代に入っていきました。
ヘッダ画像は、以下のものを使わせていただきました。https://commons.wikimedia.org/wiki/File:CPM-86.png
Digital Research, Inc. - http://www.hampa.ch/pce/screenshots/index.html, パブリック・ドメイン, https://commons.wikimedia.org/w/index.php?curid=77387751による