System/360はなぜ大成功を収めたのか
System/360登場以前のコンピュータにおいては、あるマシン上で開発されたプログラムを、別のマシンで動かすことはまず考えられませんでした。ハードウェアの構造が異なれば、プログラムは異なっていて当然だったわけです。これではプログラムを流通させることはできないばかりか、会社が成長してより上位のモデルへの買い替えを必要とした時に、プログラムもまた作り直しになってしまいます。 「ハードウェアが違うからプログラムも違う」、これを「ハードウェアが違っていてもプログラムは共通である」、へと大転換させたのが1964年に登場したSystem/360でした。これはハードウェアを抽象化すること、すなわちマイクロ・プログラムでハードウェアを覆ってしまうことによって成し遂げられました。ハードウェアの違いがあったとしても、マイクロ・プログラムはそれを吸収してしまうので、見た目上のハードウェアは共通になり、プログラムを変更する必要性はなくなります。この点が多くの企業に支持されたために、IBMは大成功を収めます。 コンピュータを評価する価値基準には様々なものがありますが、上記から言えることは、プログラムの可搬性はその重要なものの一つであるということです。System/360はシリーズを構成する各モデル間において、プログラムの可搬性が実現されたという点が画期的だったのですが、究極のビジネス用システムであるためには、もう少し違った視点が必要になるとロチェスターは考えていました。 参考までに、System/360登場の際に、合わせてコンピュータの基礎的概念ともいうべきアーキテクチャーがいくつか定められていきます。電流の有無を0か1かのビットという単位で表し、8ビットを1バイトとする、4バイトすなわち32ビットを1ワードとする、さらには、数値の表現形式であるBCD(Binary Coded Decimal: 二進化十進数)を拡張して文字も収容できるようにしたものをEBCDIC(Extended Binary Coded Decimal Interchange Code)コードとするなどです。これらは今日においても生き続けています。究極のビジネス用コンピュータの考え方
自らの生き残りをかけて、ロチェスターは究極のビジネス用コンピュータを開発しようと考えます。ターゲットとなるのは中堅・中小ユーザーです。ここでは利用可能なテクノロジーを活かすのではなく、ビジネス用コンピュータとして求められる要件を煮詰めてゆき、それをテクノロジーに落とし込んで実装する、という考え方で設計を進めてゆきます。製品の成り立ちにおいてこのような思考プロセスを経たコンピュータは、おそらく他に類を見ないものです。 この時に大いに参考になったのは、System/360とその後継シリーズであるSystem/370の大成功は、プログラムの可搬性を実現したことでもたらされたという事実でした。ビジネスを支えるコンピュータやプログラムにおいては、継続性が最も重要になるとロチェスターは考えました。そしてビジネスのやり方は、いきなり大きく変わることはまず考えられず、長期的に少しずつ改善されながら維持されてゆくものであることも、考慮しなければなりません。同一シリーズ内のモデル間、すなわち空間的なプログラム可搬性だけでは目的を達成できません。ひとたびプログラムを作り稼動させたら、そのプログラムを手付かずのままで、すなわち再度のコンパイル作業を伴うことなく、後継の新しいマシンにインストールしても、問題なく稼動できるようにしなければなりません。しかもそれは極めて長期間、マシンやテクノロジーの寿命を超えて、数十年に及ぶかもしれません。将来登場するであろう、予想もできないようなテクノロジーにも対応する必要があります。プログラムの可搬性は空間的であるばかりでなく、時間的観点からも実現されなければならないのです。 また、ユーザーの立場からすると大切なのは自社のビジネスであり、コンピュータを維持管理することはそのための手段でしかないことも認識しておくべきです。導入したら、システム構築のための手間を最小限に抑えて、直ちに実稼動させることができ、その後はできる限り自動的に運用できるようにする必要があります。特に大型コンピュータを導入できる大企業とは異なり、中小企業は割けるIT要員数にも限りがあります。ロチェスターが提供するコンピュータは、すぐに使えるシステムとして完成品でなくてはなりません。コンピュータの導入後に、データベース製品、システム運用ツール、などを個別に選択・導入・構成する手間は避けたいものです。それぞれの製品を組み合わせるということは、将来にわたって相互の互換性に問題が生じないよう維持するために、手間を掛け続けなければなりません。これはすなわちより多くのIT要員を必要とすることに直結します。 ビジネス用途のコンピュータにおいては、同時に複数のプログラムが稼動し、そして同時に多くのユーザーが使用する可能性があります。万が一にも誤動作させるわけにはいきませんし、そのためのセキュリティも万全でなくてはなりません。セキュリティ機能は、後からインストールするプログラムとしてではなく、あらかじめコンピュータの根幹部分に組み込んでおいた方が良さそうです。 さらに、これまでに見てきた要件を満たすためだからと言って、ビジネスを円滑に進めるためには、パフォーマンスを犠牲にするわけにはいきません。特にコンピュータが稼動する際にアクセスされる、プロセッサ、メモリ、ディスクの各要素の中で、最もスピードが遅いディスクの利用方法を工夫する必要もあります。 このような開発当初からすでに考えられていた要件は、現在においても十分に通用する普遍的なものであることに気付かされます。 IBMは1978年に究極のビジネス用コンピュータとしてSystem/38を発表します。画期的なアーキテクチャーを持っていたが故に、当初は期待したようなパフォーマンスが出ずに苦労したといった逸話も残されています。そしてその後はSystem/38をベースに、別ラインアップとして存在していたSystem/36を中に取り込む形で1988年にAS/400を発表します。このAS/400が現在のIBM i に発展を遂げていることは皆様ご存知のとおりです。 さて、IBM i の特徴を一言で説明するとしたら、これらの中で最も重要と考えるテクノロジー、例えばプログラムの継承性(時間的可搬性)を述べる方もいらっしゃるでしょう。もしくはより上位の概念を持ち込んで、ビジネス用途という明確な目的を持ちながら、実装するべきテクノロジーを選定する思考プロセスが存在していたこと、という答え方も良いかもしれません。これをさらに短くするとしたら、筆者は「IBM i には哲学がある」と答えることにしています。少々周囲を煙に巻くような表現ですが、このコラムを読んでくださった方であれば、その真意をご理解いただけるものと思います。 実際に何ヶ所かのIBMの開発研究所を見学されたお客様が、他の拠点と対比させて、「ロチェスターは哲学者」と評されたことがありました。哲学者が製品開発に携わっていたわけではありません。究極のビジネス用コンピュータはどうあるべきかを考える姿勢は、現在においてもなおロチェスターの中に息づいていることの証左であると考えています。 次回の本連載では、プログラムの時間的可搬性を実現するためのテクノロジーについて取り上げる予定です。どうぞ、ご期待ください。 次回の連載はこちら
著者プロフィール
安井 賢克(やすい まさかつ)
日本アイ・ビー・エム株式会社にて、パワーシステムの製品企画を担当。エバンジェリストとして、IBM i ないしパワーシステムの優位性や特徴を、お客様やビジネス・パートナー様に理解いただく活動を日々続けています。また、大学非常勤講師として、100人近い学生に向けてITとビジネスの関わり合いについて述べる講座も担当しています。