IBM System/360 Model 30 (アメリカのコンピュータ歴史博物館 展示品)
System/360 (システムさんろくまる、S/360 、システム/360 )は、IBM が1964年 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社とは、UNIVAC 、Honeywell 、GE 、CDC 、RCA 、NCR 、バロース のことであり、市場シェアを数%ずつ分け合う小さな存在であった。
なおSystem/360は集積回路 を使用した「第3世代」コンピュータに分類される[ 6] 。
コンピュータ産業界への影響
コンピュータ・ファミリの出現、互換周辺機器市場の出現、互換機市場の出現
それ以前とは異なり、IBM社は小型から大型までのさまざまなモデル を含むコンピュータシリーズ全体を開発し、基本的に全てのマシンにおいて同じ命令セット が動作するようにした(一部特殊市場向けには例外あり)。これによって顧客は最初は小さなシステムで利用をはじめて、必要に応じて(業務ソフトウェアを変更することなく)上位のモデル機種の利用に移行することが可能となった。そのうえ多くのモデルでは顧客が以前に利用していたIBM社の機種の命令セット(例えばIBM 1401 やIBM 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互換の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のCPU。箱の中全体がCPU
業界標準となった特徴
System/360では以下のような業界標準が生まれた。
IBM System 360-20 でマイクロコード を格納したTROS (英語版 )
(※)EBCDICについては解説が必要である。本来、ASCII の採用がSystem/360のセールスポイントのひとつであり、BCD (二進化十進表現 )とASCIIとの切り替えスイッチが付いていた。IBMはASCIIの標準化にも深く関わっている。しかし、360をリリースするとき周辺機器がASCIIに対応していなかった。また、大企業や政府は大量のBCD ファイルを持っていてASCIIに抵抗があった。BCDは簡単にEBCDICに変換できたが、ASCIIではそうはいかなかったのである。そのためもっぱらEBCDIC がSystem/360の初期に使用され、それが大成功したがために業界標準となってしまい、その後の汎用コンピュータは互換性を維持するためにEBCDICをサポートし続けた。
アーキテクチャ
System/360シリーズにはコンピュータ・アーキテクチャ 仕様が定められている[ 14] [ 15] [ 16] 。その仕様は実装については全く何も前提としておらず、外部とのインタフェースと外から見た振る舞いを規定している。アーキテクチャは、あらゆる実装で必須とされるインタフェースが記述しており、実装しなくてもよいオプションのインタフェースも記述している。
アーキテクチャには次のような項目が含まれる。
バイト順序はビッグエンディアン
プロセッサ
16本×32ビット 汎用レジスタ (R0-R15)
64ビット プログラムステータスワード (PSW)
割り込み は、マスク不可とマスク可能なクラス、さらにサブクラスがある。
命令セット 。各命令が詳述されており、プログラムへの割り込みとして認識される例外の発生条件も定義されている。
記憶装置
1バイトは8ビット
特殊なプロセッサ通信領域がアドレス0番地から始まっている。
アドレスは24ビット
人手による操作で可能な制御
ブート (IBMでは Initial Program Load、IPL と呼ぶ)
オペレータによる割り込み発生
システムのリセット
基本的なデバッグ機能
システム状態(メモリおよびプロセッサ)の表示と人手による変更
入出力機構 - 周辺機器自体は記述されていない。
オプションの機能として次のような項目がある。
モデル20を除く全てのSystem/360でこれらの仕様を実装していた。
二進演算と論理演算は、レジスタ-レジスタ間、メモリ-レジスタ/レジスタ-メモリ間で実行可能である。商用命令セット・オプションを実装している場合、レジスタ-レジスタ間および一部はメモリ-レジスタ間でパック10進数 演算を実行可能である。科学命令セット・オプションを実装している場合、4本の浮動小数点数 レジスタがあり、32ビット または64ビット の浮動小数点演算を実行可能である。モデル85と195の場合、さらに128ビットの拡張浮動小数点数を扱うことができ、2本の浮動小数点数レジスタで1つの数値を格納する。他の機種ではソフトウェアでのエミュレーションで同等機能を提供する。1バイトは8ビット、1ワードは32ビット、1ダブルワードは64ビット、1ニブル は4ビットである。命令のオペランドにはレジスタ番号またはメモリアドレスを指定できる。この複雑な組み合わせにより、命令長や形式は様々に変化する。
メモリアドレッシングは「ベース+ディスプレースメント」形式でレジスタ R1~R15 をベースに使うことができる。ディスプレースメントは12ビットなので最大4096バイトまで示すことができ (0-4095)、ベースレジスタの示すアドレスからのオフセットを指定する。R0レジスタはベースとして使うことはできず、「0」をベースに指定するとメモリの先頭 4KB の範囲を指定することになっていた。これは割り込みルーチンの先頭部分で、ベースレジスタを適切に設定する前に固定のメモリアドレスにアクセスするのに使われていた。IPL の場合は、レジスタの内容をセーブする必要はなく単にクリアすればよいので、この機能は使われていない。
モデル67以外では[ 17] 、あらゆるアドレスは物理メモリアドレスである。IBMが仮想記憶 を本格的に採用したのはSystem/370 シリーズからである。モデル67では仮想記憶アーキテクチャが導入され、MTS (英語版 ) 、CP-67 (en:CP-67 ) 、TSS/360 (英語版 ) で使われたが、System/360の主要OSでは仮想記憶に対応していない。
命令コードは1バイトで、最低でも1バイトのイミディエート値が一種のオペランドとして存在する。命令は必ず 2バイト境界に配置しなければならない(命令の先頭アドレスが2で割り切れる)。命令には3種類の形式がある。オペランド無し(2バイト)、1オペランド(4バイト)、2オペランド(6バイト)である。
例えばMVC(文字移動)命令(16進で D2)は最大でも256バイトしか転送できない。それ以上の転送には複数回のMVC命令を実行する必要がある(System/370ではもっと強力な命令MVCLが追加され、16MBまでの文字列転送が可能となった)。1オペランドは2バイトである。4ビット(ニブル )でベースレジスタを指定し、残り12ビットでディスプレースメントを指定する。MVC命令は 6バイトであり、(R8+1)アドレスから(R7+0)アドレスへ256バイトを転送する命令のコードは "D2FF 7000 8001 " となる(FFの部分が転送サイズを示し、実際の転送サイズより1小さい値を取る)。
System/360は「システム状態」と「問題状態」を分離するよう設計されている。それによって基本的セキュリティとプログラミング上のエラーからの復帰を可能にしている。問題 (problem) とはユーザプログラムを意味し、システム状態に対応しているデータやプログラムの内容を変更することはできない。プログラム実行で何らかのエラーが起きると、制御されたルーチンを経由してシステム状態に移行し、オペレーティングシステムがエラーの訂正または当該プログラムの終了を試みる。同様にプロセッサのハードウェアエラーが起きると、マシンチェック・ルーチンを経由して復旧を試みる。
プロセッサー
SLTモジュールの例(IBM 1130 のもの)
発明されたばかりの集積回路 は信頼性や可用性に不安があったため、IBMはハイブリッド 集積回路を使用した。個々のトランジスタ やダイオード とセラミック基板にプリントされた抵抗などでフリップフロップ を構成して、プラスチックか金属でカバーを施した。これをいくつかプリント基板 に実装してSLTモジュール (Solid Logic Technology)と呼んだ[ 18] 。SLTモジュールの一方の端にはソケットがあり、バックプレーン にあるピンを挿入する形で実装する(一般的な実装とはソケットとピンが逆である)。
セラミック基板は競争入札の末、設立されたばかりの京セラ が受注した[ 18] 。企画書は分厚い本になっているほど詳細で厳しい条件であったが、僅か7ヶ月で審査に合格したことで京セラの信用度は大きく高まった[ 18] 。
チャネル
周辺機器は「チャネル」経由でシステムと接続する。チャネルは、周辺機器と主記憶間のデータ転送に最適化された命令セットを持つ専用プロセッサである。現代風に言えば、Direct Memory Access (DMA) に近い。
チャネルには、バイトマルチプレクサチャネルとセレクタチャネルがある。前者は低速デバイス向けで、パンチカードリーダ/パンチ、ラインプリンター、通信コントローラなどを接続する。後者は高速デバイス向けで、ディスクドライブ 、磁気テープドライブ 、磁気ドラム などを接続する。モデル20以外のSystem/360は、バイトマルチプレクサチャネルを1つとセレクタチャネルを1つ以上備えている。小型のシステム(モデル50まで)ではチャネルが本体に内蔵されているが、大型のシステム(モデル65など)では本体とは別筐体になっている(IBM 2860/2870など)。
バイトマルチプレクサチャネルは同時に複数の周辺機器の入出力を扱え、それぞれの周辺機器は最高速度で動作できる。このため「マルチプレクサ 」と名付けられており、複数の周辺機器の入出力を多重化 して主記憶との単一のデータ経路にまとめている。各周辺機器は、1バイトモード、2バイトモード、4バイトモード、バーストモードのいずれかで動作するよう設定される。相対的に高速な周辺機器ほど大きなデータブロックを使用する。例えば2501パンチカードリーダは毎分600枚のパンチカードを読み込み、1バイトモードで動作する。一方、1403-N1プリンターはバーストモードで動作する。また、バイトマルチプレクサチャネルにはサブセレクタ部があり、磁気テープドライブを接続できる。バイトマルチプレクサのチャネルアドレスは一般に "0" で、サブセレクタのアドレスは "C0" から "FF" である。したがって磁気テープドライブは一般に 0C0 から 0C7 のアドレスに配置される。他の一般的なアドレスとしては、2501カードリーダは00A、2540リーダ/パンチは00C/00D、1403-N1プリンターは00E/00F、3211プリンターは010から013、2701/2703通信ユニットは020から0BFである。これらのアドレスはz/VMでもそのまま継承されている。
モデル30/40/50には1052-7コンソールが付属しており、アドレスは一般に01Fとされた。ただし、コンソールはバイトマルチプレクサチャネルに接続されるわけではなく、直接本体と接続される。
セレクタチャネルは高速周辺機器を扱う。ストレージデバイスを制御ユニットに接続し、制御ユニットをチャネルに接続する。制御ユニットを介することで多数のデバイスをチャネルに接続できる。上位モデルでは複数のセレクタチャネルを備え、それらが同時並行的に動作するので、全体として性能が向上する。
バスタグ・ケーブル
バスタグ・ターミネータ
制御ユニットとチャネルは灰色のバスタグ (bus and tag) ケーブル対で接続する。バスケーブルはアドレスおよびデータ情報を運び、タグケーブルはバスケーブル上のデータが何なのかを示す。一般に制御ユニットはデイジーチェーン接続される。各制御ユニットには対応するアドレスの範囲が割り当てられている。例えば制御ユニットXがアドレス40から4F、制御ユニットYがC0からDF、制御ユニットが80から9Fといった具合である。アドレス範囲は8以上の2のべき乗でなければならず、各制御ユニットには複数のデバイスを接続できる。例えば、制御ユニットYに6台のディスクを接続し、それらにアドレスC0からC5を対応させる。
制御ユニット同士をどういう順番で接続するかも重要である。各制御ユニットには優先度として High または Low が設定される。制御ユニットが X、Y、Z の順序でデイジーチェーン接続されている場合、デバイス選択をメインフレームからチャネルに送信すると、X→Y→Z→Y→X とその信号が送られていく。優先度がHighに設定された制御ユニットは信号が外に向かう際にチェックを行い、優先度がLowに設定された制御ユニットは信号が折り返して戻ってくる際にチェックを行う。また、1つの制御ユニットを複数のチャネルから接続することができ、それらチャネルは別々のメインフレームでもよい。
一般にチャネルのケーブルは最大約60メートルまでとされている。このとき制御ユニット1台を接続するとケーブル長約3メートルに換算する。
マルチプレクサチャネル
モデル85および195で、IBMは新たな種類のチャネルである 2880 ブロックマルチプレクサチャネルを導入した。このチャネルはチャネルプログラムの実行を中断して配下デバイスの入出力完了を待ち合わせずに別のデバイスのためにチャネルを解放することができる。これを最初に使ったのは 2305 固定ヘッドディスクで、8つのアドレスを持ち、回転位置検出 (RPS) 機能を持っていた。これらのチャネルは標準で1.5MB/sであり、2バイト・インタフェースでは3MB/sとなる。後者の場合、タグケーブル1本につきバスケーブル2本を使用する。
オペレーティングシステム
System/360の小型機種向けには BOS/360(ベーシック)、COS/360(カード)、TOS/360(テープ)、DOS/360(ディスク)があり、DOS/360は後に DOS/VS, DOS/VSE, VSE/AF, VSE/SP, VSE/ESA へと発展し、最終的に z/VSE に進化した。
それより上位のモデルではOS/360 を使用した。当初 PCP (Primary Control Program) や MFT (Multiprogramming with a Fixed number of Tasks) があり、それらが OS/VS1 に発展した。また、MVT (Multiprogramming with a Variable number of Tasks) は MVS へと発展した。MVTは開発に時間がかかりすぎたため、機能の限定された MFT が主に使用された。PCPは中型機で使われたが、最終的にはMFTとMVTだけが残った。
モデル67を1965年8月に発表したとき、IBMは多くの先進的機能を備えたTSS/360(タイムシェアリングシステム を搭載したMultics への対抗OS)も本体と同時にリリースすると発表した。しかし正常に動作させることができず、リリース延期が繰り返され、最終的に1971年にキャンセルされた。代わりとしてCP-67、MTS、OS/360上で稼働するTime Sharing Optio (TSO)などが使われた。
CP-67は仮想機械 システムであり、CP/CMS (en:CP/CMS ) とも呼ばれる。CP-67はIBMの主流ではない部門がMIT の研究者らと共同で開発した。CP/CMSは広く受け入れられ、VM/370 へと発展し、現在の z/VM へとつながっている。
モデル20には単純化したOSである、CPS (Card Processing System)、TPS (Tape Processing System)、DPS (Disk Processing System) が用意された。それぞれ必要な主記憶容量が 4K (CPS)、8K (TPS)、12K (DPS) であり、多くのユーザーは最小構成で使えるCPSを使っていた。
TPSとDOSでは、実行すべきジョブスタックの定義(JCL )とトランザクションデータの供給にパンチカードリーダーを使っていた。しかし、OS自体はディスクや磁気テープで提供されており、結果(マスターファイル)も磁気テープやハードディスクに格納することができる。
周辺機器
System/360の周辺機器は従来の1400シリーズの流用より新規に開発されたものが多く、2で始まる4桁の番号がついている。1400シリーズからの流用として例えば、1403プリンターは信頼性が高かったので、1403-N1プリンターとして存続した。また光学文字認識 (OCR) リーダとして 1287 と 1288 があった。
端末(コンソール)
小型システムの多くは、IBM 1052-7 がコンソール・タイプライタとして付属していた。上位機種には10万ドルもするグラフィカル・ディスプレイ IBM 2250 (英語版 ) を接続することもあった。モデル85では 5450 をコンソールとして採用し、モデル165やSystem370/168ではその系統を受け継いだ 3066 コンソールが採用されている。
直接アクセス記憶装置 (DASD)
IBM 2311 ディスクドライブ
360用の最初のディスクドライブは IBM 2302[ 19] :60-65 と IBM 2311 である。2302 は 1302 を改良したものである。
2311はリムーバブルなディスクパック 1316 を使用する装置であり、IBM 1311 の後継である。理論上は7.2MBの容量があるが、実際の容量はレコード設計に依存する[ 20] :31 。例えば、モデル20で1316パックを使う場合、固定長セクタ でフォーマットされ、最大容量は5.4MBとなっていた。
1966年、2314 が出荷された。内蔵制御ユニットにより最大で8台のディスクドライブを使用できる。実際は9台のドライブがあるが、1台は予備として予約されている。各ドライブに2316ディスクパックを装着すると、それぞれの容量は23MB弱となる。2311と2314のディスクパックは現代から見れば巨大であり、例えば1316は直径が36cmで、6枚のプラッタがある。プラッタ群の一番上の面と一番下の面にはデータを記録せず、それら以外の中間のプラッタは両面に記録するので、全部で10面あることになる。10個の読み書き用ヘッダは同期して動作する。シークをなるべく短縮するため、プラッタ群を同心円状に貫く仮想的シリンダにデータをなるべくまとめて記録する。一般に可変レコード長であり、現代のハードディスクのように固定長セクタでフォーマットされているわけではない。
IBM 2314 ディスクドライブと IBM 2540 カードリーダ/パンチ(ミシガン大学)
初期のSystem/360では、トラック毎にヘッドがある磁気ドラム を高速記憶装置として使っていた。容量4MBで3,500RPMの2301[ 21] は7320の後継として、System/360発表時にその一部として発表された。303.8kB/sの IBM 2303[ 19] :74-76 は1966年1月31日に発表されたもので、容量は3.913MBである。磁気ドラムはこれらだけであり、後継としては固定ヘッドディスクがリリースされた。
1970年に登場した6,000RPMの固定ヘッドディスク装置2305は、モジュール毎に5Mb (2305-1) と 11Mb (2305-2) の容量である[ 22] [ 23] 。容量は小さいものの、データ転送速度と転送レートが高速であり、高性能を求める用途で使われた。例えば、オーバレイ リンケージで同じメモリ領域の内容を高速に切り換えるなどの用途で使われた。固定ヘッドディスクや磁気ドラムは、初期の仮想記憶システムでのページング用デバイスとして重宝された。2305は固定ヘッドディスク装置だが、ドラムと呼ばれることも多かった。
あまり見られない記憶装置として IBM 2321 Data Cell (英語版 ) がある[ 24] 。複雑な機構を内蔵した装置で、多数の磁気テープ片にデータを記録し、指定された磁気テープ片を取り出して読み書きし、元の場所に戻すということを繰り返し、ランダムアクセスが可能である。2311が7.2MBの容量だった時代に400MBという大容量を実現している。コスト/容量/速度の各面で磁気テープとハードディスクのギャップを埋めようとした装置といえる。しかし電気機械式だったため信頼性が低かった。
モデル44は、標準でディスクドライブを1台備えていた。2315ディスクカートリッジを装着し、1,171,200バイトの容量である[ 25] :11 。
磁気テープ装置
IBM 2401 磁気テープドライブ
2400磁気テープドライブはドライブと制御ユニットが統合されており、1/2インチ磁気テープドライブを追加することができる。System/360でIBMは7トラックから9トラックにフォーマットを切り換えた。2400は従来の7トラックの磁気テープも読み書きできる。1967年には、より低速で安価な2ドライブと制御ユニットを統合した 2415 がリリースされた。1968年、高速な 2420 がリリースされ、1979年まで製造されていた。
ユニットレコード装置
IBM 1403 ラインプリンター
パンチカード 関連装置としては、2501カードリーダ、1442 と2540 リーダ/パンチがあり、多くのシステムに2540が使われていた。さらにソータとしても使える 2560 MFCM ("Multi-Function Card Machine") はモデル20でのみ使えたが、信頼性に問題があることで有名だった。
ラインプリンター としてはIBM 1403 と低速なIBM 1443 (IBM 1443 )があった。
紙テープリーダ 2671 は1964に登場した。読み取り速度は 1,000 cps である。初期には紙テープリーダやパンチもあったが、標準品ではなく特注品扱いだった。
光学文字認識 (OCR) 装置としては 1287 と 1288 がある。1287は手書きの数字や一部のOCR用フォントを認識でき、キャッシュレジスター用のOCR紙テープを読み取れる。1288はページ単位でOCRフォントの文書を読み取ることができ、手書きの数字も認識できる。
磁気インク文字認識 (MICR) 装置としては、1412 と 1419(小切手ソータ)がある。また小切手に磁気インクで印刷する 1445 プリンターがある。これらは基本的に銀行向けである。
通信制御装置
通信制御装置として2701/2702 があり、モデム ・通信回線 を通して、1030 データ収集システム・1050 データ通信システムなど様々な遠隔地通信端末の接続を可能にして、それまでデータ処理 をすべて電算機室に集めたセンター集中方式から遠隔地コンピューティングへの幕開けを迎えた。
後継機、互換機
System/360は1971年 にSystem/370 シリーズに置き換えられ、360/20の後継としては IBM System/3 が用意された。当初の計画では劇的に進化したFSテクノロジー で置き換えるはずだったが、コストと時間がかかり過ぎ、1970年代 中盤に計画が中止された。その後の互換システムとしては、IBM自身のIBM 3090 (英語版 ) 、System/390 、zSeries、System z がある。
機械語レベルまたはアーキテクチャレベルで同一または互換といえるコンピュータとしては、アムダール の470ファミリ、日立製作所 のメインフレーム、UNIVAC 9200/9300/9400シリーズ、イングリッシュ・エレクトリック の System 4、RCA Spectra 70 (英語版 ) シリーズ(UNIVACに売却され UNIVAC 90/60 となった)などがある[ 注釈 2] 。また、ソビエト連邦 もSystem/360互換機を製造していた(ES EVM)。
1975年に登場した IBM 5100 ポータブルコンピュータは、System/360のAPL.SV プログラミング言語をハードウェアエミュレータ経由で実行できるオプションを提供していた。これは、5100向けのAPL処理系開発が遅延したためにとったアプローチである。
放射線耐性を強化するなどの改造を加えた System/360 は System/4 Pi (英語版 ) アビオニクス コンピュータと呼ばれ、いくつかのジェット戦闘機やジェット爆撃機に使われた。完全32ビットのAP-101版の 4 Pi は二重化されたフォールトトレラント なスペースシャトル のコンピュータシステムに使われた。アメリカ連邦航空局 (FAA) はSystem/360を改造した特殊なクラスターを IBM 9020 と呼び、1970年 から1990年代 まで航空管制に使用していた。(9020用ソフトウェアはその後の新ハードウェア上でもエミュレーション 機能上で使われている。)
その他
日本
日本アイ・ビー・エム 本社のSystem/360
日本で最初の導入は1965年の東海銀行 (現三菱UFJ銀行)である[ 26] 。
現存機器
System/360の現存するマシンは数少ない。当時は多数のメインフレーム システムが稼働していたが、現存しているものは数少なく、しかもいずれも動作できない状態である。多くはリース品だったので、役目を終えたマシンはIBMが回収し、廃棄された。一般にメインフレームは古いほど巨大で維持費もかかる。スミソニアン博物館 は System/360 Model 65 を所有しているが、既に展示していない。ボストン の科学博物館 (Museum of Science )にあったSystem/360 Model 30はマウンテンビュー のコンピュータ歴史博物館 へ移されて、動作しないものが展示されている。ニュージーランドのオークランドにある輸送技術博物館 やオーストリアのウィーン工科大学 にも動作しないSystem/360が展示されている。西オーストラリア大学 は完全なシステムを所蔵している。ジンデルフィンゲン のIBM博物館にはモデル20とモデル91がある。スタンフォード大学 の計算機科学科にはSystem/360の制御パネルがいくつか展示されており、中にはシステム規模が最大だったFAA の IBM 9020 (英語版 ) の制御パネルもある[ 27] 。エンディコットにあるIBMの歴史センターにも動作しないSystem/360などが展示されている。日本 では情報処理学会 のコンピュータ博物館は日本企業が開発したコンピューターだけを所蔵しているので[ 28] 、京都コンピュータ学院 のKCGコンピュータ博物館がSystem/360モデル40を所蔵・展示している[ 29] 。
スイスの
ベルン ・コミュニケーション博物館(Museum für Kommunikation Bern)
脚注
注釈
^ 日本では翌4月8日
^ RCA Spectra 70 は割り込みやI/Oの面で大きくアーキテクチャが異なる。互換パッケージを使うことでSystem/360のOSを Spectra/70 上で動作させること(あるいはその逆)が可能となる。
出典
^ IBM System/360 Dates and Characteristics
^ System 360/30 announcement
^ a b c "System/360 Announcement" (press release), IBM Data Processing Division, April 7, 1964, webpage: IBM-PR360 : states cycle time from "millionth-of-a-second to only 200 billionths-of-a-second" and "memory capacity ranges from 8,000 characters of information to more than 8,000,000".
^ An Appreciation - John R. Opel, posted on www.ibm.com
^ a b c d e f g h i
IBM公式サイト(英語)。System 360, From Computers to Computer Systems.[1]
^ メインフレーム 誕生と発展の歴史 - コンピュータ博物館
^ bit 編集部『bit 単語帳』共立出版 、1990年8月15日、35頁。ISBN 4-320-02526-1 。 において、マイクロコードを用いて IBM 360/30 で IBM 1401 のエミュレーションを実現したのが商用計算機で初めての事と記されている。
^ IBM (February 1971), System/370 Model 165 Theory of Operation (Volume 8) 709/7090/7094/7094-II Compatability Ferature (Second Edition ed.), SY77-6835-0
^ IBM (April 1964), System/360, Model 30 1401 Compatibility Feature , A24-3255-1, http://www.bitsavers.org/pdf/ibm/360/1401_emulator/A24-3255-1_Model30_1401_Compatibility_Apr64.pdf , "Mode status (System/360, Model 30, mode or 1401 compatibility mode) is set during the read-in of the compatibility initialization deck."
^ IBM (November 1971), Emulating the IBM 7094 on the IBM Models 85 and 165 using OS/360 Program Number for M/85: 360C-EU-734 Program Number for M/165: 360C-EU-740 OS Release 20 (Third Edition ed.), GC27-6951-2
^ DIGITAL COMPUTER NEWSLETTER , Office of Naval Research, Mathematical Sciences Division, July 1965--pages 5-6: IBM System/360 time-sharing computers
^ 『コンピュータの構成と設計 第3版 別冊 歴史展望』p. 89
^ NTIS (1979), I/O Channel Interface , National Technical Information Service, FIPSPUB60
^ IBM (1964), IBM System/360 Principles of Operation , A22-6821-0, http://bitsavers.org/pdf/ibm/360/princOps/A22-6821-0_360PrincOps.pdf
^ IBM (September 1968), IBM System/360 Principles of Operation , IBM Systems Reference Library, File No. S360-01, Poughkeepsie, NY, A22-6821-7, http://www.bitsavers.org/pdf/ibm/360/princOps/A22-6821-7_360PrincOpsDec67.pdf revised by IBM (May 12, 1970), GN22-0354 and IBM (June 8, 1970), GN22-0361
^ IBM, IBM System/360 I/O Interface Channel to Control Unit Original Equipment Manufacturers' Information (Fifth Edition ed.), A22-6843-3, http://www.bitsavers.org/pdf/ibm/360/A22-6843-3_360channelOEM.pdf
^ IBM (February 1972), IBM System/360 Model 67 Functional Characteristics (Third Edition ed.), GA27-2719-2, http://bitsavers.org/pdf/ibm/360/funcChar/GA27-2719-2_360-67_funcChar.pdf
^ a b c “IBM社「システム360」用サブストレート | 技術 | 稲盛和夫について ”. 稲盛和夫 オフィシャルサイト . 2024年10月25日 閲覧。
^ a b IBM (December 1969). IBM System/360 Component Descriptions - 2841 and Associated DASD (Eighth Edition ed.). GA26-5988-7. http://bitsavers.org/pdf/ibm/28xx/2841/GA26-5988-7_2841_DASD_Component_Descr_Dec69.pdf
^ http://www.bitsavers.org/pdf/ibm/dasd/A26-5988-0_2841_2311_2321_7320_Descr.pdf
^ IBM 2301 Drum Storage , Columbia University Computing History
^ IBM 2305 product announcement
^ IBM (November 1980), Reference Manual for IBM 2835 Storage Control and IBM 2305 Fixed Head Storage Module (Fifth Edition ed.), GA26-1689-4
^ The IBM 2321 Data Cell Drive , Columbia University Computing History
^ IBM System/360 Model 44 Functional Characteristics
^ [2]
^ IBM 360 display and Stanford Big Iron
^ 日本のコンピューター(情報処理学会コンピュータ博物館)
^ 大型・中型コンピュータ(KCGコンピュータ博物館) & KCG Computer Museum
参考文献
この記事は2008年11月1日以前にFree On-line Dictionary of Computing から取得した項目の資料を元に、GFDL バージョン1.3以降の「RELICENSING」(再ライセンス) 条件に基づいて組み込まれている。
関連項目
外部リンク
IBM Journal of Research and Development
IBM Systems Journal
Blaauw, G. A., and Brooks, F.P., Jr., "The Structure of System/360, Part I-Outline of the Logical Structure" , IBM Systems Journal , vol. 3, no. 2, pp. 119–135, 1964.
Stevens, W. Y., The structure of SYSTEM/360, Part II: System implementations" , IBM Systems Journal , Volume 3, Number 2/3, Page 136 (1964)
Amdahl, G. M., "The structure of SYSTEM/360, Part III: Processing unit design considerations" , IBM Systems Journal , Volume 3, Number 2/3, Page 144 (1964)
Padegs, A., "The structure of SYSTEM/360, Part IV: Channel design considerations" , IBM Systems Journal , Volume 3, Number 2/3, Page 165 (1964)
Blaauw, G.A., " The structure of SYSTEM/360, Part V: Multisystem organization" , IBM Systems Journal , Volume 3, Number 2/3, Page 181 (1964)
Tucker, S. G., "Microprogram control for SYSTEM/360" IBM Systems Journal , Volume 6, Number 4, pp. 222–241 (1967)
その他
IBMメインフレーム
年
シリーズ名
アーキテクチャ
主なモデル
主なOS
主な特徴
1952
701シリーズ
-
701 , 704 , 709 , 7090 , 7040 , 7094
-
科学技術計算用、真空管 /トランジスタ
1953
702シリーズ
-
702 , 705 , 7080
-
真空管 /トランジスタ
1953
650シリーズ
-
650 , 7070 , 7074 , 7072
-
科学技術計算用、真空管 /トランジスタ
1959
1401シリーズ
-
1401 , 1410 , 1440 , 7010 , 1460
-
商用計算用、オールトランジスタ
1961
その他
-
305(RAMAC) , 7030(Stretch)
-
ディスク装置 (RAMAC)、マルチタスク (Stretch)
1964
System/360
S/360
20 - 195
OS/360 , DOS/360, CP-67/CMS
汎用機 、アーキテクチャ 、IC 、24ビット アドレッシング、仮想機械
1970
System/370
S/370
115 - 195
OS/VS(MVS) , DOS/VS, VM/370
仮想記憶 、マルチプロセッサ 、PPAR
1977
30x0, 4300 , 9370
S/370, S/370-XA
303x/308x/3090, 43x1, 937x
MVS/XA, DOS/VSE, VM/XA
31ビット アドレッシング・動的チャネルサブシステム(S/370-XA)
1990
ES/9000
S/390 , ESA/390
9021, 9121, 9221
MVS/ESA, VSE/ESA, VM/ESA, AIX/ESA
64ビット データ空間、拡張ストレージ(ES)、LPAR 、ESCON 、FICON
1994
S/390
ESA/390
9672/9674(G1 - G6), IBM Multiprise 2000/3000
OS/390 , VSE/ESA, VM/ESA, Linux
CMOS , 並列シスプレックス , UNIX 互換環境(OS/390 USS)、Linuxサポート
2000
eServer zSeries
z/Architecture
z800/z900, z890/z990
z/OS , z/VSE , z/VM , Linux
64ビット アドレッシング、IFL、zAAP、zIIP、IPv6
2005
System z
z/Architecture
z9, z10
z/OS , z/VSE , z/VM , Linux
IRD
2010
zEnterprise
z/Architecture
z114/z196, z12
z/OS , z/VSE , z/VM , Linux
ブレード拡張(POWER , x86 )
2015
z System
z/Architecture
z13, LinuxOne
(z13)z/OS , z/VSE , z/VM , Linux (LinuxOne) Linux, z/VM
2017
IBM Z
z/Architecture
z14, LinuxOne II
(z14)z/OS , z/VSE , z/VM , Linux (LinuxOne) Linux, z/VM
暗号化 、zHyperLink
2019
IBM Z
z/Architecture
z15, LinuxOne III
(z15)z/OS , z/VSE , z/VM , Linux (LinuxOne) Linux, z/VM
全方位型暗号化技術、Data Privacy Passports、OpenShift
2022
IBM Z
z/Architecture
z16
(z16)z/OS , z/VSE , z/VM , Linux
IBM Telum プロセッサー、オンチップのAIアクセラレーター、耐量子暗号