System/360
[Wikipedia|▼Menu]
IBM System/360 Model 30 (アメリカのコンピュータ歴史博物館展示品)

System/360(システムさんろくまる、S/360、システム/360)は、IBM1964年4月7日[注釈 1]に発表したメインフレーム コンピュータのシリーズである。1965年から1977年まで出荷された[1]

コンピュータ・アーキテクチャを採用し、アーキテクチャと個々の機種の回路実装は区別し、プログラムおよび周辺機器互換性がある小型から大型までのファミリ(コンピュータファミリ)を形成した。商用計算と科学技術計算をカバーし(汎用機)、また商用では初のオペレーティングシステム仮想機械が登場するなど、後のコンピュータの設計に影響を与え続け、「史上最も成功したコンピュータ設計の1つ」とされている。

このSystem/360シリーズの大成功により、コンピュータ業界で後発のIBMは競合他社を市場で圧倒することになり、そのアーキテクチャやアプリケーション・プログラムの互換性は、後続のSystem/370や最新のSystem zまで引き継がれている。
概要

System/360はアドレス指定に8ビットで構成されるバイト単位を採用し、また商用計算で使用される十進数演算と科学技術計算で使用される浮動小数点数演算の両方の命令セットを備えた。この「8ビット = 1バイト」はSystem/360の成功によってその後のコンピュータの事実上の業界標準となり、また十進数演算と浮動小数点数の両方の装備により従来の「専用機」に対して「汎用機」とも呼ばれるようになった(なお浮動小数点演算の方式は当初は精度上の課題があり、後に改良された)。またシステム制御プログラム群が整理され「オペレーティングシステム」と呼ばれるようになった。

同一の命令セット・アーキテクチャを、最上位機種では可能な限りハードウェアで直接的に実装し、下位機種ではマイクロプログラム方式の活用により比較的低コストで実装した。このコンピュータ・アーキテクチャ確立により、IBMは互換性のある設計で様々な価格帯のシステムをリリースすることができた。

System/360は市場で大いに成功し、顧客は小さめのシステムを購入しても、後で自社の業務の規模の拡大に合わせて上位機種へ移行できて、その際に新しい機種へのソフトウェアの書き換えが不要という利点が生じた。プログラムや周辺機器の互換性が生まれ、コンピュータ・ファミリを形成した。System/360発表の新聞広告(一部抜粋、日本経済新聞1964年4月9日付朝刊)フォルクスワーゲンで使われているSystem/360

1964年に発表されたSystem/360で、最も低性能な機種は0.018から0.034MIPS[2]、最上位機種はその約50倍の性能である[3]主記憶装置の容量は8kBから8MBまであったが[3]、後者の構成は滅多に見られなかった。また補助記憶装置は、主記憶装置の磁気コアメモリ装置に比して10倍程度アクセスが低速な磁気コアメモリ装置 Large Core Storage (LCS)(英語版) を最大8MBまで接続可能である。大型機種では主記憶装置は最低でも256kB以上であり、512kB、768kB、1024kB といった容量が一般的だった。

System/360は上述の通りコンピュータ・アーキテクチャと回路実装を明確に区別した最初のコンピュータシリーズである。System/360の設計責任者はジーン・アムダール、プロジェクトマネージャはフレデリック・ブルックスで、責任者は会長のトーマス・J・ワトソン・ジュニアである[3]。ワトソンのもう1人の副官であるジョン・R・オペル(英語版)もSystem/360の立ち上げに深く関わった[4]。System/360開発プロジェクトには多額の費用がかかっており、フォーチュン誌による "$5 billion gamble" という表現の示すとおり、IBMはSystem/360に社運をかけたと言っても過言ではない(2002年の価値に換算すると280億ドルつまり約3兆円のお金をIBMは投入した。ちなみに、同時期のあのアポロ計画の予算が250億ドルである。アポロ計画よりも多くの金を投入したのである。)そして、IBMは賭けに勝ったのである。

それまでのコンピュータは、主に事務処理や入出力処理用の小型機(IBM 1401など。衛星プロセッサとも)と主に科学技術計算用の大型機(IBM 7090など)とでは、それぞれ異なる命令セットアーキテクチャで作られる(専用機)のが普通であって、OSのようなシステムプログラムはモデル別に開発されており、大型のモデルに変更するとアプリケーションプログラムはそのままでは利用できず書き直しが必要であった。System/360は、最下位モデルから最上位モデルまで命令セットアーキテクチャをほぼ統一して、基本的にはシリーズ内のどれかで動くプログラムは、全てのモデルで動く(汎用機)。また、様々な用途に応じたソフトウェアを入れ替えて使うことで、多種多様の業務に対応できるとも言える。「360度(全方位)、様々な業務に対応できる」という意味を込めて、360と付けられた。構成によっていくつかのサブモデル(360/40など)がある。また、360の後継はSystem/370で、更に現在のSystem Zシリーズに続いている。

System/360を発表するとIBMには当初の予想を超える受注が舞い込み、発表後の最初の4週間で1,000台受注した[5]。その次の4週間で、さらに追加で1,000台受注した[5]。System/360は、IBMメインフレームの巨人メーカーへと成長させた。当時のメインフレーム市場における IBM社 の強さを「白雪姫と7人の小人」にたとえるものもあった。1967年頃には、IBM社は大型コンピュータにおける米国メーカーの出荷高の7割以上を占めており、他社を圧倒してメインフレームの市場をほぼ独占していた。残りの7社とは、UNIVACHoneywellGECDCRCANCRバロースのことであり、市場シェアを数%ずつ分け合う小さな存在であった。

なおSystem/360は集積回路を使用した「第3世代」コンピュータに分類される[6]
コンピュータ産業界への影響
コンピュータ・ファミリの出現、互換周辺機器市場の出現、互換機市場の出現

それ以前とは異なり、IBM社は小型から大型までのさまざまなモデルを含むコンピュータシリーズ全体を開発し、基本的に全てのマシンにおいて同じ命令セットが動作するようにした(一部特殊市場向けには例外あり)。これによって顧客は最初は小さなシステムで利用をはじめて、必要に応じて(業務ソフトウェアを変更することなく)上位のモデル機種の利用に移行することが可能となった。そのうえ多くのモデルでは顧客が以前に利用していたIBM社の機種の命令セット(例えばIBM 1401IBM 1620)をマイクロコードエミュレーションするオプションを提供していた[7]。これにより以前の機種で使用していたプログラムもほぼ変更せずに新しいシステム360のマシン上で動作させることができた。

System/360は、 コンピュータのハードウェア というものに対するユーザ企業の考え方をすっかり変えた[5](コンピュータのハードウェア市場のありかたを完全に変えた)。移行の柔軟性により、導入や機種更新に際しての障壁が小さくなった。他のシステムベンダー(ゼネラル・エレクトリック以外)では自社の機種間でも相互に互換性がなく、それぞれの機種は顧客の用途に合わせて高度にカスタマイズされて設計されており、結果的に値段が高くなり導入しにくいことが多かった。System/360により、ユーザは最初は安価な下位機種から使い始めて、次第に装置を足したり、上位機種に変更してゆけば良いということになった[5](しかも当時、IBMはコンピュータを顧客に販売せずにレンタルしていたのでさらに利用の障壁は低かった。これは第二次世界大戦前のパンチカード会計システムの頃からの伝統であり、不況に強いビジネスモデルと言われている)。

IBM以外の企業も、System/360と組み合わせて動く周辺機器を製造することができた[5]。すぐにS/360プラグ互換の周辺機器を製造する企業群とその産業領域が出現した[5](なお、これと同じような現象が、およそ20年後にIBMがパーソナルコンピュータ(IBM PC)をリリースした際にもクローンなどを許可したことで起きた[5])。他社によるS/360の周辺機器は1967年のテレックス(テレタイプ端末)やテープドライブ装置などを皮切りに、1968年のディスク・ストレージ付きen:Memorexなどと続き、この産業領域は目覚ましい成長を経験した[5]。互換機も製造されるようになり(後述)、1972年にはソヴィエト連邦東欧諸国の連合までSystem/360互換の(en) Ryad(ES EVM)コンピュータを製造すると発表した[5]
従来との互換性

IBMの既存の顧客は第二世代のマシン上で動作するソフトウェアの大きな資産を抱えていた。多くのモデルで顧客の従来のマシン(例えば、モデル30では IBM 1400シリーズ、モデル65では IBM 7094)のエミュレーションをオプションとして提供している。特殊なハードウェアを使ったり[8]、特殊なマイクロコードやソフトウェアを使って、ターゲットシステムの命令をエミュレートし、古いプログラムを新しいマシン上で実行可能としていた。ただし、初期化時にモードを切り換えるので、エミュレーションと通常運用を同時に行うことはできない[9]。モデル85と後のSystem/370にもエミュレーション・オプションが残されているが、そちらはOSの上で通常のプログラムと同じようにエミュレーションを行える[10]
歴史

IBMは6つのモデルのコンピュータと40種類の共通周辺機器を発表した。最終的にはNASA向けの特殊な機種も含めて14のモデルがリリースされた。最も安価なモデルは 360/20 であり、4Kの磁気コアメモリを装備し、レジスタも他のモデルが32ビット16本なのに対して、16ビット8本であり、命令セットは他の機種のサブセットになっていた(小企業向けであり、それ以上のものではない)。

1964年の最初の発表では、モデル30, 40, 50, 60, 62, 70 という6モデルが含まれている。モデル30, 40, 50 は中小型システムで、従来のIBM 1400シリーズの市場をカバーする。これらは1965年中頃に出荷が開始された。モデル60以上のモデルは7000シリーズの市場をカバーすることを想定していたが出荷されることなく、モデル65 と 75 が新たに発表され、モデル65 は1965年11月に出荷開始され、モデル75 は1966年1月に出荷開始された。

下位モデルとして、モデル20(1966年、上述)、22(1971年)、25(1968年)が追加された。モデル22はモデル30に若干制限を加えたバージョンで、主記憶容量の上限が小さくなっていて、I/Oチャネルの容量も小さくなっている。したがってディスクやテープ装置の性能や容量がモデル30より小さくなっている。

モデル44(1966年)は中型の科学技術計算向けであり、浮動小数点演算機構が付加されているが一部の命令は削除されている。

上位モデルとして、モデル67(1966年、後述、64または66と予測されていた機種[11])、85(1969年)、91(1967年)、95(1968年)、195(1971年)が追加された。モデル85はSystem/360と後継のSystem/370のギャップを埋めるために出された機種で、後の370/165の基盤となった。System/370にもモデル195があるが、そちらは動的アドレス変換機構を含まない。

それぞれのモデルは、データパス幅の違いや、マイクロコード使用の有無などで実装は異なるが、いずれも互換性を保っている。すなわち、特に文書化された点を除いて、各モデルはソフトウェア的には互換で、新しい機能はアーキテクチャを崩さないように追加されている。

例えばモデル91は科学技術計算向けに設計されており、ビジネス向けの十進演算命令は省かれていた。モデル91はTomasuloのアルゴリズムによりアウト・オブ・オーダー実行を行うが、そのための「不正確な割込み」(imprecise interrupt)という問題は不評で、以後の同様のマシンでは「確定ユニット」が取り入れられた[12]。モデル65にはCPU間信号を追加したデュアルプロセッサ版 (M65MP) があり、モデル85ではキャッシュメモリ(バッファメモリ)を導入している。モデル44, 75, 91, 95, 195ではロジックをハードウェア回路で実装しているが、それら以外の下位のモデルではマイクロコードによる実装を採用している。

モデル67は1965年8月に発表されたモデルで、IBMとしては初の動的アドレス変換機構(DAT、現在ではMMUと呼ばれるもの)でタイムシェアリングシステムをサポートした。モデル40をベースとしてDAT実験機が構築されている。モデル67をリリースする前にIBMはモデル64と66を発表していた。それらはモデル60と62にDATを追加したものだが、60および62の代替としてモデル65をリリースすることが決まり、モデル64と66もモデル67で代替されることになった。System/370では1972年にDATハードウェアが再登場したが、370でも当初はDATがなかった。モデル65と同様、モデル67にもデュアルCPU版が存在する。

IBM社は1977年末までにはすべてのSystem/360のモデルの営業を終えた(次のSystem/370に完全に移行したためである)。

System/360-20(フロントパネルがない)と IBM 2560 MFCM (Multi-Function Card Machine)

System/360 Model 65 のオペレータ用コンソールレジスタの内容を示すランプ群とトグルスイッチ群と緊急用の赤い大きなスイッチ(右上端)が見える。

System/360 Model 91 (NASAで1960年代末ごろ撮られた写真)

特徴System/360のCPU。箱の中全体がCPU
業界標準となった特徴

System/360では以下のような業界標準が生まれた。

2の補数による整数演算(業界初ではないが、System/360で採用されたことで標準となった。現在のデジタルコンピュータはことごとくこの方式である。)

8ビットバイトを構成(4ビットや6ビットをバイトとする案もあった)

バイト単位のアドレス指定(ワード単位アドレスではない)

32ビット ワード

バスタグI/Oチャネルは FIPS-60 で標準化されている[13]

セグメント方式ページング方式によるメモリ管理
IBM System 360-20 でマイクロコードを格納したTROS(英語版)

マイクロプログラム方式の商用化

IBM浮動小数点標準(これはIBM/360からの標準であり、16進指数を採用しており、数値的な性質の観点からは良い選択ではなかった。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:87 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef