01 IBM i の歴史

AS/400の登場(1988年)

1988年6月、先進的なアーキテクチャを備えたオフィスコンピュータであるSystem/38をベースに、分散処理に優れたSystem/36の機能を取り込む形で、AS/400が発表された。

当時、その開発を担当したIBMのロチェスター研究所(米ミネソタ州)が目指したのは、1990年代を支える先進的なコンピュータである(図表1)

 

図表1 画像をクリックすると拡大します】

48ビットアドレッシングに基づく単一レベル記憶(図表2)や、全モデル共通のOS(図表3)による上位モデルへの完全互換性、そして使いやすさ(EOU:Ease Of Use)の徹底追求がその根幹である。

 

図表2 画像をクリックすると拡大します】

 

図表3 画像をクリックすると拡大します】

 

 

 

アドレッシングに関しては、最大128ビットまで拡張可能な仮想化されたアドレス空間が当初よりOS内部で想定され、実装上は90ビット超のアドレス空間まで扱うことが可能で、予測しうる将来にわたって物理プロセッサのアドレス空間を収容できるように設計されていた(図表4)。

 

図表4 画像をクリックすると拡大します】

 

実際、AS/400では1994年に物理プロセッサのアドレス空間が48ビットから64ビットへ変更されたが、OSやアプリケーションプログラムにはまったく影響を及ぼさなかった。それは、内部は物理プロセッサのアドレッシングで動いておらず、90ビット超の仮想アドレス空間で稼働しているためであった。この基本的な考え方と実装は、今日のIBM iに至るまで何ら変わっていない。

対応(1990年代前半)

1990年代に入ると、UNIXやPCを主軸とするクライアント/サーバーシステムやオープン化、そして当時の流行であったダウンサイジングが急速に進み、AS/400はその影響を受けて当初の高い成長率が鈍化したことがあった。

「オープン」という言葉の対義語として、メーカー固有のアーキテクチャを意味する「プロプライエタリ」という言葉がある。オープン化やダウンサイジングが脚光を浴びていた当時、プロプライエタリの象徴であるメインフレーム(汎用機)やオフィスコンピュータは滅亡の一途をたどる、との予測が盛んになされ、事実、その後多くの国産オフィスコンピュータはテクノロジーの孤立やベンダーロックインを忌み嫌う流れから抜け出せず、衰退していった。しかしそのなかで唯一、AS/400だけは生き延びた。それはAS/400がオープン対応の取り組みを怠らず、現在に至るまで一貫して業界標準やオープンソース、オープンスタンダードをサポートしてきたことが大きな理由の1つである。

1990年代のAS/400は、生まれもった固有のアーキテクチャを保持しつつ、オープンな環境への対応を広範囲に、急速に進めた時期にあたる。

64ビットRISCプロセッサへの切り替え(1990年代後半)

1994年、AS/400はクライアント/サーバーシステムに対応する重要な機能拡張を行った。それまで「PCサポート」と呼んでいた製品に大幅な機能拡張を加えたのである。それが「クライアント・アクセス」(のちの「IBM i Access for Windows」)である。

さらに、UNIXやWindowsなどのファイルシステムを扱えるようにした「統合型ファイル・システム」(Integrated File System:IFS)の実装や、TCP/IPのパフォーマンス改善、POSIX(各種UNIXをはじめとする異なるOSの実装用の共通アプリケーション・プログラミング・インターフェースの定義)への準拠、なども行われた。

そして1995年、将来のパフォーマンス要件が大きく成長することを見越して、従来の48ビットCISCプロセッサから、64ビットRISCプロセッサ(PowerPC)への移行が実施された。

プロセッサの命令セットが大きく変わると、通常のシステムではアプリケーションの互換性が失われるなどの弊害が生じるが、AS/400はその常識を覆し、コンパイル済みアプリケーションがそのまま利用できるという互換性を維持した。

これは「TIMI」(Technology Inde pendent Machine Interface、図表5)と呼ばれるAS/400固有のアーキテクチャによってマシンが仮想化されていたために、新旧テクノロジーの差異をマイクロコードレベルで完全に吸収できたからである。さまざまなサーバーが登場し消えていったなかで、AS/400が今もなお生き延びている理由の1つが、TIMIである。

 

図表5 画像をクリックすると拡大します】

 

 

製品名をiSeries、その後System iに変更(2000年代前半)

2000年には「PASE」と呼ばれるAIX実行環境が搭載され、UNIXアプリケーションをOS/400上に容易に移植できるようになった。
また同じ2000年に、IBMによる全サーバーブランドの名称変更に伴い、AS/400は「eServer iSeries」に製品名を変更した。そしてこのときに、長年親しまれてきたAS/400の名前を捨て、インテグレーション(統合)を意味する「i」を冠して新たなスタートを切っている(とはいえ、IBM iは現在でも「AS」「AS/400」の愛称で呼ばれることが多い)。

2001年、AS/400に搭載されていたビジネス用途のPowerPCと、RS/6000に搭載されていた科学技術計算用途のPOWER3が統合され、両システム共通のプロセッサとしてPOWER4が発表された(図表6)。プロセッサの共通化は開発費の削減と、ひいてはハードウェア価格の低下をもたらすこととなり、Power Systemsの今日の躍進の原動力ともなっている。

以降、AS/400とRS/6000の統合化はプロセッサ以外のテクノロジーでも着々と進み、さらにPOWERプロセッサ自体の進化と機能の充実もあり、2004年にiSeriesから「eServer i5」へ(OSの名称は「OS/400」から「i5/OS」へ変更)、さらに2006年には「System i5」へと製品名を変更している。

 

図表6 画像をクリックすると拡大します】

Power SystemsとIBM i(2008年以降)

2008年、System iとSystem p(旧来のRS/6000を改称)の両プラットフォームを統合した「Power Systems」が発表された。ビジネスニーズに迅速に対応できるIT基盤と最適化を実現する柔軟なITインフラの構築が目的である。そしてPower Systems上で稼働するOSは、i5/OSから「IBM i」へと名称変更され、POWER6プロセッサをベースとする単一のハードウェア上で、IBM i、AIX、Linuxの3種類のOSが稼働するマルチプラットフォームとしての環境が整えられた。

その後もIBM iは継続して新しいバージョンがリリースされ、2016年には最新版のIBM i 7.3が発表されている。

IBM i 7.3では、アナリティクス機能の一環である、データを時系列的に捉えて分析を可能にするためのテンポラルテーブルや、データ変更をいつ誰が行ったのかを明らかにするセキュリティ機能の実装が図られている。また、基幹業務の領域だけでなく、Python、Node.js、Eclipse Orion、Gitなどといったオープンソース・テクノロジーも積極的に取り込まれ、POWERプロセッサのパワフルかつ安定した処理能力をベースとして、IBM iはこれまで以上にオープンなシステムへと変貌を遂げている。

しかし、こうした大きな飛躍の一方で、10年、20年も昔のプログラムがコンパイルのやり直しなしに最新プロセッサ搭載のサーバーで稼働できることを忘れてはならない。

1988年発表のAS/400は、ハードウェアの呼称としてiSeries、System i、Power Systemsへ、OSの呼称としてOS/400からi5/OS、IBM iへと変遷を重ねているが、AS/400よりも前のSystem/38時代から受け継ぐ設計思想は、今もって不変である。その結果、ユーザーの資産は長期にわたって保護され継承できる。この類いまれなアプリケーション実行環境こそ、IBM iが現在においても「AS/400」と親しみを込めて呼ばれるゆえんなのかもしれない。
[小林直樹]

More Posts