元麻布春男の週刊PCホットライン

OS/2の歩みを振り返る




 2006年12月31日、IBMはクライアント向け32bit OSである「OS/2 Warp 4」と、サーバー向け「OS/2 Warp Server for e-business」のサポートを正式に終了した。これは2005年7月12日付けで予告されていたものであり、販売は2005年12月で終了している。今後は大量導入した大口顧客を対象として、ソフトウェアの欠陥に対する有償サポートのみが細々と続けられることになる。ここでは、OS/2の簡単な歩みをまとめておくことにしよう。

活動終了のお知らせ OS/2 V3の起動画面(Paralless上で動作)

●時代をキャッチアップできなかったOS/2

 もともとOS/2は、8088/8086用に書かれたDOSの後継となるOSとして、プロテクトモードを備えた80286プロセッサ向けに、当時提携関係にあったMicrosoftとIBMが共同開発したものであった。開発がスタートしたのは、80286プロセッサを搭載したIBM PC/AT('84年8月発表)がリリースされた直後のことだと思われるが、最初のOS/2リリースは'87年12月まで待たねばならなかった。開発にこれだけの時間を要してしまったことが、OS/2の運命を大きく変えることになる。

 IBM PC/ATが誕生してから「OS/2 1.0」がリリースされるまでの3年強の間、さまざまな事件が起こっている。特に'85年秋には、後にOS/2に大きな影響を及ぼす2つのイベントがあった。それは、Intelによる80386プロセッサのリリース(10月)と、Microsoftによる「Windows 1.0」のリリース(11月)だ。

 上に述べたように、OS/2は80286用の「次世代OS」としてスタートした。が、実際にはPC/ATをリリースした翌年には32bitプロセッサである80386が誕生している。80286のプロテクトモードが8086譲りのセグメントモデルでプログラムを書きにくかったのに対し、80386はフラットな32bitアドレス空間を提供、大規模ソフトウェアの開発が容易だった。しかも80386は、複数の8086互換環境を実行する仮想86モードを備えており、広く普及していたMS-DOSアプリケーションを複数同時に実行可能という決定的なメリットがあった。

 もしIBMとMicrosoftが80386のリリースを受けて、OS/2のターゲットプロセッサを変更していれば、歴史は変わったかもしれない。だが、おそらくIBMは、PC/ATを購入した顧客への約束を果たすため、80286向けにリリースすることにこだわったのだろう。OS/2はリリースされた時点で、最先端の機能を利用できないOSになってしまった。

 一方、MS-DOS上のGUIとして誕生した最初のWindows 1.0だが、その出来映え自体は、とるに足らないものでしかなかった。2DDのFD1枚におさめる(3.5インチ2DD FDDを搭載したIBM Convertibleでも動くようにするためだった、とも言われている)という制約があったとはいえ、モノクロ画面、低い画面解像度、アプリケーションのウィンドウを重ねられないタイリングウィンドウシステムなど、実用的なシステムとは言い難い。広く普及しなかったのも無理はない。

 Windows 1.0で重要なのは、ここでWindows API(後のWin16 API)の原型が定義された、ということだ。Win16 APIは、Windows 2.x、Windows 3.xへと引き継がれ、さらに32bit化されてWin32 APIへと発展していく。この発展の過程でAPIセットとしての洗練が行なわれていったとはいえ、OS/2の開発スタート時点において、不備が目立つAPIセットであったろうことは容易に想像がつく。OS/2は、Windowsと全く異なるAPIセットを採用することになる。

 IBMとして初の386マシンとなるIBM PS/2シリーズがリリースされた'84年4月、Microsoftは「Windows 2.0」をリリースする。このバージョンで画面のカラー化が行なわれると同時に、EMSによるメモリ拡張や、サードパーティ製ドライバによるディスプレイ解像度の拡張(高解像度のサポート)が可能になった。これらにより、徐々にではあるが、Windows上で動作するアプリケーションが、グラフィックスやDTP分野を中心にボツボツとそろい始める。Corel DRAW!やMicrografx Designer、Aldus Pagemakerなどが、Win16アプリケーションとして登場してきた。

 一方、'87年12月にリリースされたOS/2 1.0は、画面描画のAPIは用意されていたものの、GUIを持たない、キャラクタインターフェイスのOSだった。OS/2がそのGUIであるPresentation Managerをまとうのは、'88年10月にリリースされた「OS/2 1.10」からであり、標準的なGUIのない環境が、グラフィックスアプリケーションを引きつけられるハズもなかった。

 この'88年には、限定的とはいえ80386プロセッサの機能を利用できる「Windows 386」をMicrosoftがリリース、Win16アプリケーションと並行して、複数のMS-DOSアプリケーションを実行可能な環境が提供されることとなる。このWindows 386をベースに、ベストセラーとなるWindows 3.0が誕生する。IBMが32bit化されたOS/2(OS/2 2.0)をリリースするのは'92年のことであり、それまでOS/2では386プロセッサの拡張された機能を利用することができなかった。'92年は2世代目の486プロセッサ、i486DX2(後のDX2プロセッサ)がリリースされた年である。

 このようにOS/2は、スタートから新機能の採用で後手後手を踏む。OSとしてはきちんと作られており、玄人受けするのだが、華がなく美的なセンスにも欠ける印象が否めない。アプリケーションも、IBMが優先して提供するのはメインフレーム端末のエミュレータソフトが中心。OS/2はWindowsアプリケーションを実行することもできたが、OS/2環境におけるWindowsアプリケーションの実行はあくまでもISVのサポート対象外であり、IT部門のサポートを受けられる大企業はともかく、一般のユーザーにとっては縁遠いものでしかなかった。

 '90年にリリースされたWindows 3.0は、大ヒットしたことでOS/2の開発パートナーであったMicrosoftとIBMの仲を引き裂く。それまでWindows 3.xの次はOS/2と言い続けてきたMicrosoftは、Windows 3.0のヒットを受けてWindows路線の継続へと舵を切る。一時的にOS/2 1.xと32bit化された「OS/2 2.x」の開発をIBMが、新規開発されるカーネル(マイクロカーネルのアイデアを取り入れたもの)を利用した「OS/2 3.x」の開発をMicrosoftが行なうという妥協も図られたものの、結局MicrosoftはOS/2 3.xをWindowsに作り替えること(後のWindows NT)を決断、両社は完全に決別した。

●独自の発展を試みるも主導権は奪えず

 OS/2はIBMの単独開発となり、32bit化されたOS/2 2.xを生み出す。OS/2 2.xでは、複数の仮想DOSマシンをサポートし、同時に複数のDOSアプリケーションを利用することができた。この延長として、仮想DOSマシンでWindowsのユーザーモードコンポーネントを利用して、複数のWindowsアプリケーションを実行することも可能だった。

 IBMとMicrosoftは決別したとはいえ、両社間のクロスライセンス契約は生きており、IBMはMicrosoftが開発したコードやコンポーネントを利用することができたからだ(もちろん逆も可)。わが国で、PC/AT互換機向けの日本語化されたWindows 3.0を日本IBMがリリースしたり、日本IBMが開発したDOS/VコンポーネントをマイクロソフトがMS-DOS/Vに採用したり、といった例が見られたが、これもクロスライセンスのおかげであった。

 ただ、OS/2 2.xでのWindowsアプリケーションサポートは、ユーザーモードコンポーネントを利用する関係から、16bitアプリケーションに限られた。カーネルモードレベルでの互換性がないことは、32bitアプリケーション(Windows 3.xの386エンハンストモードを利用するアプリケーション)の互換性を損なうだけでなく、デバイスドライバレベルの互換性もないことを意味する。OS/2では、市場にあふれるWindows対応の周辺機器を、そのまま利用することはできなかったのである。

 本来、OS/2 2.xの次に来るものとしてMicrosoftが開発していたOS/2 3.xは、Windows NTになってしまった。自らOS/2 3.xを準備することになったIBMは、OS/2のマイクロカーネル化を試みる。従来のOS/2カーネルは、Intelアーキテクチャに依存しており、多くのアセンブラコードを含んでいた。マイクロカーネルの採用で、開発言語をC/C++にシフトすると同時に、他のプロセッサアーキテクチャへの移植も容易になる。実際、当時のIBMはPowerPCプラットフォームを推進しており、次世代OS/2はIntelアーキテクチャだけでなく、PowerPCでも動くものが求められていた。いずれx86アーキテクチャは、RISCプロセッサに置き換えられてしまうと考えられていた時代である。

 Workplace OSと呼ばれたこの次世代OS/2は、CMU(Carnegie Mellon大学)で開発されたマイクロカーネルであるMach 3.0ベースのカーネル上で、OS/2、Windows 3.x、MS-DOS、UnixさらにはOS/400などさまざまなOSと互換性を持つモジュール(パーソナリティと呼ばれた)を複数同時に実行することを目指した。このPowerPCサポートと複数パーソナリティの同時実行というWorkplace OSの特徴は、PowerPCベースの標準プラットフォームを模索していたApple、IBM、Motorolaの共同OS開発プロジェクト「Taligent」にも支持されることとなる。これは、互換機を認めていた当時のAppleの戦略にも合致していた。

 だが、あまりにも野心的なこのプロジェクトは、開発スケジュールの大幅な遅延を招く。Workplace OSはかろうじてリリースされたものの、約束されたパーソナリティはOS/2とUnixしか揃わず、多くのパーソナリティをサポートする重荷を背負ったことによる性能不足の問題で、ついにはWorkplace OSはキャンセルとなる。Workplace OSの不調を見ていたAppleは、しだいにTaligentから距離をとり、自前のマイクロカーネルOSであるCoplandへと傾くが、こちらも開発のメドがたたず結局はキャンセル。クラシックOSを延命させつつ、買収したNeXTが開発していたOPENSTEPをベースに新しいOSであるRhapsody(現在のMac OS X)の完成を待つことになる。

 Workplace OSを失ったIBMだが、Workplace OSの開発と並行してOS/2 2.xの改良も継続していた。この改良版がOS/2 Warp V3としてリリースされることになる。x86アーキテクチャに依存し、OS自体の移植性が低いOS/2だが、逆に言えばx86に依存したアセンブラコードはタイトで、少ないリソースでも快適に動作する。こうした特徴が買われて、ATMなどの組み込み用途にも利用された。

OS/2 Warp V3日本語版のパッケージとメディア

 OS/2 Warp V3は、従来のバージョンに比べて、ネットワーク機能とマルチメディア機能が強化されたことに加え、BonusPakと呼ばれるCDに、IBM Worksと呼ばれる一般向けのアプリケーションが添付されている。続いてリリースされたOS/2 Warp V4は、いわばOS/2の最終形で、Javaのサポートや画面デザインの見直しが行なわれたが、世はWindows 95ブームのただ中にあり、一般ユーザーからOS/2が顧みられることはなかった。

 このOS/2 Warp V4のリリースが'96年のこと。以来10年、この間、バグフィックスを含むマイナーアップデートはあったものの、メジャーバージョンアップは絶えている。逆に、最後のメジャーリリースを出してから、なお10年間サポートを続けた息の長さは敬服に値する。

 そのサポートもついに終了を迎えたわけだが、現在も、そしておそらくこれからもOS/2を購入することはできる。2001年からSerenity Systems Internationalと呼ばれる会社が、IBMからライセンスを受け、「eComStation」の名称でOS/2を販売、改良も行なっている(http://www.ecomstation.com/)。だからといって、OS/2が一般の脚光を再び浴びることがあるとは思えないが、簡単に消えはしない、ということなのだろう。

□IBMのホームページ(英語)
http://www.ibm.com/
□Microsoftのホームページ(英語)
http://www.microsoft.com/
□関連記事
【1月9日】日本IBM、OS/2のすべての活動を終了
http://pc.watch.impress.co.jp/docs/2007/0109/ibm.htm

バックナンバー

(2007年1月11日)

[Reported by 元麻布春男]


【PC Watchホームページ】


PC Watch編集部 pc-watch-info@impress.co.jp ご質問に対して、個別にご回答はいたしません

Copyright (c) 2007 Impress Watch Corporation, an Impress Group company. All rights reserved.