| 開発者 | IBM |
|---|---|
| 書かれた | アセンブラ (XF)、PL/S (旧 BSL) |
| OSファミリー | OS/360 および後継機種 |
| ソースモデル | 開ける |
| 初回リリース | 1972年 |
| 最新リリース | リリース 1.7 |
| マーケティングターゲット | IBM メインフレーム コンピュータ |
| プラットフォーム | 370 年代 |
| ライセンス | なし |
| 先行 | オペレーティングシステム |
| 後継者 | OS/VS2 (MVS) |
シングル仮想記憶域(SVS)[1] [2]は、オペレーティングシステム/仮想記憶域2 (OS/VS2)のリリース1を指します。これは、オペレーティングシステム/360のMVT [注1]オプションの後継システムです。OS/VS2(SVS)はMVSが利用可能になるまでの暫定的な手段でしたが、IBMはMVSの出荷後もかなり経ってからSVSのサポートと機能強化を提供しました。
SVS は、物理メモリのサイズに関係なく、システム内のすべてのタスクで共有される 単一の16MiBアドレス空間を提供します。
MVTとの違い
OS/360 は、時刻の提供と時間依存イベントのトリガーにインターバル タイマー機能を使用していました。S /370のサポートでは、新しいタイミング機能が限定的に使用されましたが、インターバル タイマーへの依存関係は維持されました。SVS は、 TOD クロック、クロック コンパレーター、およびCPU タイマーのみを使用します。
OS/360 は、エラー回復ルーチンと一時 SVC ルーチンをSYS1.SVCLIBから小さな一時領域にロードします。SVS は、 LPA 作成 ( CLPA ) オプションを指定した IPL 中に、これらのルーチンをSYS1.LPALIBからページング可能リンク パック領域(PLPA)にロードします。一時領域はありません。
IBMはApplied Data Researchとの 訴訟を受けて、いくつかのアプリケーション(主に言語プロセッサ)の有料版を開発することを決定したが、訴訟が実際に決定要因であったかどうかは明らかではない。その結果、SVSにはソート/マージプログラムや、システム生成プロセスに必要な新しいアセンブラ(XF)(アセンブラ(F)[3]に代わる)以外の言語プロセッサは含まれていない。
許可プログラム機能(APF) は、特定の危険なサービスの使用を許可されたプログラム(AC(1)でリンク編集され、リンク リスト、LPA、またはSYS1.SVCLIBからロードされたプログラム) に制限する新しい機能です。MVSでは、IBM はこの機能を拡張し、インストール時に追加のデータ セットを許可済みとして指定できるようにしました。
SVS のリーダー/インタープリターはページング可能なストレージで実行されるため、自動 SYSIN バッチ処理 (ASB) リーダーの利点ははるかに少なく、SVS には含まれていません。OS/360 には、Direct SYSOUT (DSO) と呼ばれる機能があり、特定の出力クラスを通常のSPOOLデータ セットではなくテープ上のデータ セットに転送できます。DASDの価格が下がったため、この機能は使用されなくなり、SVS では提供されていません。
OS/360 は、タイム シェアリング オプション(TSO)より前に、会話型リモート ジョブ エントリ(CRJE)、グラフィック ジョブ処理(GJP)、対話型端末機能(ITF)、およびサテライト グラフィック ジョブ処理(SGJP) で限定的な対話型機能を提供していましたが、IBM はそれらを SVS に引き継いでいません。TSO は、2250 を端末として使用することをサポートしていないことを除いて、同等の機能を提供し続けています。グラフィックス アクセス メソッド(GAM) およびグラフィックス サブルーチン パッケージ(GSP) を使用するバッチ ジョブからの 2250 の使用は、引き続きサポートされています。OS/360 には、 TESTRANというバッチ デバッグ機能が含まれていますが、 IBSYS/IBJOBの同等の機能よりも扱いにくく、あまり使用されていませんでした。TSO の登場により、TESTRANの重要性はさらに低下し、SVS には含まれていません。
ダイナミックサポートシステム(DSS)は、システムソフトウェア用の新しいOS/VSデバッグ機能でした。[4]これは、Selectable Unit 64およびMVS/System Extensions Release 2まで利用可能でした。
System/360およびSystem/370のストレージ キー機能は、ページ フレームが変更された日時を追跡します。SVSのマシン チェック ハンドラー(MCH) は、破損したページ フレームの割り当てを解除し、ページ テーブル エントリをマークして、新しく割り当てられたページ テーブルへのページイン操作を実行することにより、変更されていないページのパリティ エラーまたは ECC エラーを修正できます。これは、OS/360 の更新可能な一時SVCルーチンの特別な処理に代わるものです。
SVS は、エラー回復手順(ERP) 一時領域 のサイズを拡張します。
SVS が実行されるプロセッサには 2361 Large Core Storage (LCS) に相当するものがないため、SVS が提供しない階層サポートは必要ありません。また、SVS は一部の旧式の I/O 機器のサポートも廃止しました。
OS/360 では、ロード モジュールは、初期プログラム ロード(IPL) 時に、リンク パック領域(LPA)と呼ばれる実ストレージ領域に永続的にロードできます。SVS では、LPA は 3 つの領域に分割され、各領域が順番に検索されます。
- インストールでは、固定リンク パック領域(FLPA)にロードするモジュールのリストを指定できます。これらは IPL 時に V=R ストレージにロードされます。
- インストールでは、 IPL 時に変更リンク パック域(MLPA)にロードされるロード モジュールのリストを指定できます。これらのモジュールは通常のページングの対象となります。
- SVS は、専用のページング データ セットを使用して、永続リンク パック領域(PLPA)をバックアップします。通常の IPL では、SVS は既存の PLPA ページング データ セット内のモジュールを必要に応じてページインするだけですが、オペレーターは CLPA オプションを指定して、SYS1.LPALIBからすべてのロード モジュールをPLPA にロードし、新しい PLPA を PLPA ページング データ セットに書き込むことができます。
OS/360 は、360/65 のマルチプロセッサ バージョンをサポートしています。SVS は同等のサポートを提供していないため、マルチプロセッサ System/370 を実行したい顧客はMVS を使用する必要があります。
OS/360 では、キュー型通信アクセス メソッド(QTAM)の後継として通信アクセス メソッド(TCAM) が導入されました。SVS には QTAM は含まれていません。
SVS にはリモート ジョブ エントリ(RJE)は含まれていません。ただし、ASP と HASP は同等の機能を提供します。
SVS が提供するアドレス空間が大きい (16 MiB) ため、MVT よりも外部フラグメンテーションが少なくなり、Rollin/Rollout によるメリットが少なくなります。SVS にはこれが含まれていません。
OS/360 では、一時的なSVCルーチンは SVC 一時領域と呼ばれる 1 KiB の領域にロードされ、それを管理するためにかなりの量のコードが必要になります。SVS では、すべての SVC ルーチンは仮想ストレージ[注 2]にプリロードされ、SVC 一時領域は存在しません。
SVSはOS/360のSPOOLサポートを維持していますが、ほとんどのショップではそれぞれJES3とJES2の前身である ASP [5]またはHASP [6]を使用していました。
ストレージ管理
SVS のストレージ管理は MVT のものと似ていますが、いくつかの顕著な違いがあります。以下の説明は多少簡略化されており、いくつかの特殊なケースについては簡単に説明しています。
SVS は、物理メモリのサイズに関係なく、単一のアドレス空間に 16MiB のアドレス指定可能なストレージを持っています。核と FLPA は仮想 = 実(V = R) であり、つまり、その領域内の各仮想アドレスは対応する物理アドレスにマップされます。
SVS のジョブ ステップは V=R ストレージを要求できます。V=R 領域に割り当てられたすべてのページは、対応する実ページ フレームにマップされます。
割り込みコード 16 または 17 でプログラム チェックが発生すると、SVS は仮想アドレスにページが割り当てられているかどうかを確認します。割り当てられている場合、SVS はページ フレームを割り当て、ページの内容をそこに読み込みます。ページが割り当てられていない場合、SVS は、保護違反に対して MVT が使用するのと同じ ABEND コード (0C4) で 異常終了 ( ABEND ) を引き起こします。
SVS は、ページの固定と固定解除のサービスを提供します。ページが固定されると、そのページ フレームはページ スチールの対象になりません。ページ固定の主な目的は I/O です。
入出力
S/370 (および後継機) の I/O チャネルには、アドレス変換を行う機能がありません。[注 3]ただし、仮想ストレージ オペレーティング システムのサポートの一環として、IBM は間接データ アドレス(IDA) 機能を提供しています。IDAビットが設定されたチャネル制御ワード(CCW) は、I/O バッファーを直接指すのではなく、IDA リスト (IDAL) を指します。
SVS は、実行チャネル プログラム ( EXCP ) SVCの一部として CCW 変換サービスを提供します。EXCP は、必要なページ修正、IDA リスト用のストレージの割り当て、仮想アドレスの実アドレスへの変換、変換されたアドレスの適切な IDA ワードへの配置、IDA リストの実アドレスの変換された CCW への配置を行います。I/O が完了すると、EXCP はプロセスを逆転させ、ストレージを解放し、ステータスを仮想アドレスに戻します。
さらに、SVS は、独自のページ修正を実行し、独自の IDA リストを構築する特権アプリケーション向けに、 実ストレージでのチャネル プログラム実行 ( EXCVR ) SVC を提供します。
独立コンポーネントリリース (ICR)
IBM は、当初 SVS に同梱されていなかったいくつかの機能強化を SVS に提供しました。これには次のものが含まれます。
- 電気通信アクセス方式(TCAM) リリース 10
- 仮想順次アクセス方式(VSAM)
- 仮想電気通信アクセス方式(VTAM) リリース 2
参考文献
- ^ IBM、OS/VS2 シングル仮想ストレージ機能補足、GC20-1753
- ^ IBM、OS/VS2 計画および使用ガイド、GC28-0600
- ^ IBM、OS/VS、VM/370 アセンブラ言語: VS2 Rel 1.6、1.7、GT33-4010
- ^ IBM、OS/VS ダイナミック サポート システム: VS2 リリース 1.6、1.7 (GC28-0640-0)、GT28-0640
- ^ IBM、IBM System/360 および System/370 非対称マルチプロセッシング システム: 一般情報マニュアル、プログラム番号 360A-CX-15X、GH20-1173
- ^ IBM、OS/VS2 HASP II バージョン 4 システム プログラマーズ ガイド プログラム 370H-TX-001、GC27-6992
注記
- ^ ただし65MPではない
- ^ Nucleus、FLPA、MLPA、またはPLPAのいずれか。
- ^ 一部の Amdahl IBM 互換機は「チャネル DAT」機能を提供します。これは、チャネル プログラムに仮想アドレスを含め、これらのアドレスをチャネルのハードウェアによってリアルタイムで変換する機能です (そのため「チャネル DAT」と呼ばれます)。この機能は、Amdahl で実行される Fujitsu の MVS 互換機でサポートされますが、MVS 自体ではサポートされません。
