4.IBM 360 シリーズの誕生(途中です)

 1964年4月7日、IBMはそれ以降のコンピュータの歴史を画期することになる
IBM System/360を発表する。これは最大で50倍も速度の違う6種類のモデル、
つまり、model 30,40,50,60,62,70 という6モデルからなる汎用コンピューター
のリリースであった。50倍も速度が異なるハードウエアに対して同一のソフトウエア
が何の変更も無しに動作するという厳密な互換を保障する史上初の商用コンピュ
ータシステムの誕生である。更に以後リリースする全ての大型コンピュータに対し
この「互換性」を保障するというのであり、IBMはこのシリーズ以降の大型コンピュタ
を「汎用=メインフレーム」とこれ以後呼ばせるのである。
 IBMは当時の年間売り上げの1.5倍の50億ドルの開発費を投じ、このS/360を開
発し、瞬く間にコンピュータ業界の超独占的ガリバー企業にのし上がるのである。
以後、電算機市場は「白雪姫と7人の小人たち」と呼ばれる様な状態が長く続くこと
になる。当時の50億ドルは現在の5兆円を下らないだろう。(アポロ計画では200億
ドルの予定で結局400億ドルかかったといわれる)
 今にして考えれば、この歴史を画期する事件が単なる偶然では無いことが明瞭
に浮かび上がるのだが、このあたりの事情を少し覗いてみよう。
 コンピュータに於ける「汎用」概念の登場は、非「専用」という消極的意味ではなく、
IBMでは、当時も今も一般に理解されている以上に、極めて積極的・挑戦的意味
合いを帯びた概念として使用され続けられるのである。汎用性とは、この概念の登場
と同時に、コンピュータが従来の機械からは全く異なる範疇(カテゴリー)に属
する機械であることを明確に提示・宣言するまさに画期的なものであった。それは
どういう意味なのかというと、
 人間にとって、道具を含め機械とは、”ある種の「目的」をもって外部の「対象物」に
働きかける「もの=物」であった”。例えば、自動車は主に「移動」する目的をもって
「道路や地面」を走る「もの」である。あるいは又、冷蔵庫は主に「飲食物」を「冷やし
一定の保存温度に保つ」「もの」である。
 この「目的性」の為、対象の物理的性質、アナログ性と言ってもよい性質を機械が
必然的に内包・内在することから開放されることは絶対に不可能である。
(例えば自動車にタイヤが必要な様に、...もし車のタイヤがキャタピラに変われば、
それはもはや車ではなくブルトーザとか戦車とが異なる機械になるのである。この内
在化したアナログ性こそ機械を性格付けるものであり、その機械の本質の一部を成
すものである)、... というよりも「馬鹿ばかしいくらい自明」で考えてみようとすらしない
事項であるいう方が的確な表現かもしれない。
 ところが、コンピュータに於ける「汎用」概念は、まず、この機械の「目的性」・
「道具性」を捨象する事により初めて浮かび上がる新概念、新定義なのである。
 これは、簡単に言ってしまえば、「コンピューターが2進法、デジタル機器であること
から来るモジュール・インターフェース型システムである」ことの明確な宣言である。
 かのJ・フォン・ノイマンが2進法、プログラム内蔵、逐次実行等の現在で云うコンピ
ュータアーキテクチャを導入してから明らかになるべき事実だったのだが、明確に
特別な意図を持ってこのことを実践したのはIBMのこの360シリーズであった。
----
 この事の意味をある程度正確に理解しておこう。まずコンピュータ本体を「汎用ハード
ウエア」と定義(アーキテクチャする)することによってソフトウエアは明確にハードと
分離されたものとなったのだ。
 普通のアプリケーションソフトウエアはOSという「基本ソフト」を通じ超高速に「機能
=デジタル化された論理信号」としてハードウエアを「認識」することになる、つまり
ハードウエアがたとえ交換されても同じ論理信号が返って来る以上、実際に異なる
ハードであっても「同じ」ハードウエアと認識できる訳だし、そう認識する以外に方法も
ないのだ。ここにハードウエアのソフトウエアに対づする互換性という概念が同時に
誕生するのである。と共にソフトウエアから見てハードウエアは極めて「抽象化=
2進論理化=ブーリアン化」され仮想化の基盤を構築するのである。IBM System
/360が「汎用コンピュータ」でありソフトに対し「互換性」を保障し登場してくるのは、
偶然に、それぞれがバラバラな技術が出会った集合体(システム)だったからでは
なく、本質的に一つの出来事の異なる側面だったからである。
 このIBM360の登場以来、コンピューターは使用目的のない(というより目的を勝手に
定義できる)「魔法の箱」となったのだ。この事実は当時は、今でさえも、一部の専門技
術者を除き理解しずらいものであった。この為、各種様々な誤解や浅い理解が生まれる
ことになった。
 例えば、「コンピュータは何に使えるのか?答え、コンピュータは何でも出来る」という
様な素朴なものに始まり「仮想化とは人間に、実際に存在していないものを存在している
様に見せる技術である」なんていう「擬似バーチャルリアリティ」もどきのものまで多岐に
渡る。この様に「コンピューターはデジタルなモジュール・インターフェース型システムで
ある」という本質をIBMが技術上もマーケティング上も実践した事は、従来のコンピュータ
についての現実(技術、コンセプト、関連業界など)を一変させ、その後40年以上に亘り
益々その重要性を露わにしてきているのであり、技術革新の激しいこの業界に於いて
今尚、現在進行形の事態なのである。
 それではこのIBM360が登場する迄のコンピユータはいかなるものであったのか?
それは、ある特定の目的(主に科学技術計算と事務用計算-集計記録)に対して
専用に設計された特定の「ハードウエア」と「ソフトウエア」の集合体であるという極めて
正常な立派な機械群として設計・製造されたものであった。しかも、特に1.黎明期 
2.ENIACの誕生 で述べた如く、既に60年代当時はノイマン型2進デジタルコンピ
ユーターは研究用、商用を問わずコンピュータの主流を占めていたのである。しかし
残念ながら「ワイヤードプログラム」に象徴される様なハードとソフトの渾然一体化した
システムのままの段階では「デジタルコンピュータ」が本来持つべき驚異的パワーは
まだ眠ったままなのであった。多少語弊はあるが、IBM360以前のコンピュータはデジ
タルシステムではあったが、モジュール型ではなかったと言える。IBMはこのパラダイム
シフトの技術的有利性をマーケティング上極めて特異な戦略の基に展開することになる
のだが、詳しくは以下を参照ください。
  7.IBMとコンパチブルメーカーの競合 
     A特別編 IBM の市場支配力の源泉とはなにか?

 IBM360については話題が多く、たくさんの方々がいろいろと書かれていますので
エピソードや現在使用されない古いペリフェラル(周辺機器)については、重複を避ける
意味でも全部割愛して現在時点で重要となるポイントに絞り以後私見を述べさせてもら
います。
 このシステム360で次に注目したいのは上記の必然的結果としてOS(オペレーティング
システム)の概念の導入であり、OSというものは、このIBM360に実装されたOS/360に
より明確に歴史に登場するのである。異なるハードウエア仕様のそれぞれの機種の上で同
じソフトが変更無しに動く為には「ソフト」に対してハードの差異を隠す何らかの「クッション」
が必要になる。(つまりソフトに対しハードを隠微すること、この様に何かを明確に偽る目的
或いは効果をもって使用される技術は嫌が上にも「言語」を連想させるのだが、...)当時の
システムは同一メーカのものでも最大メモリーサイズ、CPUの速度、IOデバイスの数などが
異なればソフトウエアの互換性はたちどころに保てなくなる代物であった。つまりOSの様な
機能を持ったソフトウエアはあったが、それはそれが動作するハードに専用に設計された
ものであった。異なるハードウエアに対して同じOSを使いハードを隠微し、ソフトウエアの互
換性を確保する、これがOSの必要になった直接の理由だが、OSが担うべき機能は実際には
これに止まらず多岐に渡るのだが,そのことが当時どの程度理解されていたのかは定かでは
ない。何れにしても極めて高価なハードウエアを最大限「効率良く」動かす為にも(文字通り、
24時間休みなく作動させる)、このOSというものは必要であったのだ。
 この様にCPUを休みなく作動させる為に採られていた方式がバッジ処理方式と呼ばれる
ものである。当時の入力デバイスは主にパンチカードであった為、多くのユーザーのたくさん
のパンチカードにより作られたジョブ(プログラム)をディスクパック(ハードディスクの一種)等
に貯めておきCPUに連続して処理させていた。この様にある種のバッファーメモリにジョブを
蓄えて一括処理する方式をバッジ処理方式の中でも「ストアード」方式と呼び当時は新しい
機能であったという。また出力は主にラインプリンターであり、バックアップに磁気テープを使
用するというのが当時のコンピュータ使用の一般的スタイルであった。キーボードは人間が
打ち込む為、入力速度が遅く、制御の為のコンソウル用にしか使用されなかった。これは
バッジ処理方式というものの基本的考え方、つまり高価なハードウエアを最大限「効率良く」
動かすという目的を考えれば当然の事である。参考に掲載してある写真にもパンチカードを
読ませる装置をオペレートする女性がいるだけでキーボードは見えない。
現在我々が主に使用しているパソコンやUNIX(Linus)系のコンピュータとはかなり趣きの
異なるものである。特にヒューマンインターフェースという面ではまるで違うものである。ライト
ペンはあったが、マウスなどは当時未だ発明されていないし又そこに至る必要性に対する
「ひらめき」すら存在してしないのである。
 今の様に一人でコンピューターを占有する様な現在の使用スタイルに至る迄には製造コスト
面での驚くような技術革新もさることながら、OSをバッチ処理方式から、リアルタイム性を重視
する複数ジョブの「同時実行」を可能とするTSS(タイムシェアリング)概念へのOSの移行を経
て更に新しいユーザーインターフェースと新しい利用形態のコンセプトの発展を目指す革新的
な発想が必要であった。OSはこの様な指向性を持って以後発展をして行くこととなる。この
様な指向性はコンピュータ資源の中で人間が最も希少な資源(リソース)であるという認識が
当時からあったことを明瞭に裏づけており、コンピュータ操作の難物ぶりは誕生当時から遺憾
なく発揮されていたわけだ。
 さて更に人間とのインターフェースの改善を目指し、地味だが各種周辺機器の開発(ビットマ
ップ型ディスプレイやマウス)が必要であったし高級言語の開発が必要であったのだ。
---
 実はIBMはこのS360でTSSシステムを実際にOSに導入するのだが、あまり上手くは行か
なかったのだ。このTSSの実用レベルの開発・実装はIBMの後継機370に限らず,その一部の
流れは、DECのマシーンやアポロコンピュータ等のワークステーション(WS)へと大きく発展し
現在のパソコンに至るのであるが詳細はそれぞれのコーナーでどうぞ。もちろんIBMが汎用
大型機で目指すTSSシステムとDECやWSの目指すTSSとはそのコンセプトが大きく異なっ
ていたのである。いずれにしてもこのTSSが動作する環境では複数のプログラムが外見上、
同時に実行されている様に見える。現在では、スーパーコンピュータ、汎用大型コンピュータ
では、本来のネイティブOS上で、各種OS(例えばUNIX系OS、Linux)での利用を前提に、
それらのOSのエミュレーションソフトをTSS・マルチタスク環境で提供している。ユーザ達は
各種ネットワークの上で端末機やPC,Unix機などのウインドウで、それぞれに違う種類のOS
で各ユーザごとプログラムを同時に実行している状態にあり、正に「盲人たちと象」の喩えその
ものである。いずれにしても、IBM360以前の「OS」は周辺機器が比較的単純だったので、
主に入出力(I/O)を制御する為のものでOSと呼べるものではなかった。(OSと言うよりもI/O
制御システムソフトと呼ぶべきでものある) IBM360で導入したOS概念は現在まで各種コンピ
ュータの主要・基本ソフトとしてコンピュタの高度な利用を行う場合には無くてはならないもの
となっている。
---
 その他にも、このIBM360リリースと同時に、採用された為に、つまり最初に導入さて訳では
ないが、事実上のコンピュータ標準や基準となってしまったものは数多くある。中でもコンピ
ュータの基本設計であるデジタル2進法の採用(当時はデジタル10進法を採用したコンピュ
ータもあったのだ)、更に1バイト=8ビットの確立等は、今では、コンピュタ教育の基本中の
基本であり、誰でも疑いもなく受け入れているものである。
---


IBM System/360の命名の由来
 あらゆる用途に使用できるというと
いう意味を込めて角度の360度から
命名したという説はあまりに有名。


IBM360

コンピュータ・アーキテクチャ
 この概念もシステム360の開発
ど共に現れる。本来この語の意味
は、極めて狭く”汎用コンピュータ
に共通な命令セットの仕様”の意味
で使用された。その後、”ハードウエ
アの基本仕様”といった意味でも使
われ始め、最近では「共通するデザ
インパターン」の様に誤用されている
が、本来は「システムの基本設計」
迄の意味とし、それ以上拡張した
意味には用いない方が良い。


ソフトとハードの明確な分離
 (相互独立性の確保)
汎用概念の誕生とともに従来からの
様々に交錯し混沌としていた諸機能
諸概念やそれらについての諸コンセプト
はやがて「あらゆるデーター形式を取扱う」
ソフトウエアとそれを実行するハードウエア
というカテゴリーに基づき整理整頓され
ていくのである。ハードウエアはプログ
ラマーにとっては単に自分のプログラム
を実行してくれる「箱」になるのであり、
 そしてそのことは、ハードが本当のハード
である必要さえ無くなり(つまりハードを
エミュレートするソフト)現在まで続く
仮想化テクノロジーの興隆をみるのである。
この原点を見逃すと現在のインターネット
やヘテロジニアスなマルチCPU処理に
ついてその本質を全く理解できなくなる。

白雪姫と7人の小人たち
7人の小人とは
バローズ、CDC(コントロール・
データ・コーポレーション)、
GE(ゼネラル・エレクトリック)、
ハネウェル、NCR、RCA、UNIVAC
の7社を指す。
'65以降IBMのメインフレームに
於けるシェアは70%を占めた。
7人の小人たちは撤退するか何らか
の意味で「コンパチブル」メーカー
の道を選択せざろう得なくなる。
デジタルモジュール・インターフェース
型システム の意味

 左にしつこく説明している事は、別の
表現を用いれば、「汎用」とはシステム
を物理的性質から開放し論理層だけで
システムを構築するテクノロジーである。
 この様に物理層と論理層の分離を完全
に行ったことは歴史的事件であった。
今流に言えば「パラダイムシフト」である。
 このことと同等のことを通信分野で行っ
たのは「パケット」概念の導入がこれに
あたる。あまりにも重大な変革が理解され
るには普通長い年月がかかるものであり、
パケットの重要性などいまだに十分に
理解されていない。

OS概念オペレーティングシステムの登場

バッジ処理方式とリアルタイム処理方式
 バッジ処理はCPUにとってはジョブを分割
せずに処理する方式だが、ユーザー(達)が
極めて短い時間内にCPUの応答を必要と
する環境(又はプログラム、例えば機器の
制御やフライトシュミレーションの様な)を
OSに組み込む場合、複数のプログラムを
分割して、順番に処理して各プログラムが
見かけ上「同時」動作する様にするシステム
をTSS(Time Sharing System)といい対話型
(インタラクティブ)環境構築の基礎になる
技術である。又、一定時間内の応答を保障
するシステムをリアルタイム処理という。

TSS(タイムシェアリング)概念の登場
 話は簡単そうだが、TSSの開発は困難を
極めた。CPUの処理速度やメモリーサイズ
の不足といったハード」の能力以外にも極め
て困難な様々なハードルが立ちはだかった。
コンピュター各社は多大の人的資源とコスト
をTSSの開発に投入することになる。
 話題の多い中で、ここではMIT(マサチ
ューセッツ工科大学)のMULTICS(Multiple
-xed Information and Computing Service:マルティクス)
についでだけ紹介する。このOSは他にATT
ベル研究所(通称ベル研)とGE(ゼネラルエレ
クトリック)の共同プロジェクト開発なのだが、
’69年GEはコンピュータ部門をハネウェルに
売却し、ATTも開発に見切りをつけエンジニア
を引き上げてしまい、結局失敗に終わるのだが、
ATTベル研に引き上げたエンジニア達により
TSSシステムでマルチタスクOS、UNIXが
誕生する。またMITではそれ以前にIBM7090
(IBM360の前主力機)をプラットホームとして
CTSSを開発。又MITの別の派閥で有名な
AI研のハッカー達はITSというTSSシステム
を開発していた。しかしいずれのTSSシステム
も実用に耐えうるものではなかった。だがこの頃
にはMITは米国コンピュータ科学の抜きん出た
リーダーとなっていたのである。

高級言語:人間の自然言語に近いもの
程、「高級な言語」プログラムというのが業界の
慣習である。自然言語といっても英語だろう
けど。機械語に近いものは低級とは呼ばな
いが、機械語、アセンブラー、高級言語と
いった便宜上の分類が一般的である。