アクセス方式は、ディスク、テープ、またはその他の外部デバイス上のデータへのアクセスを可能にするメインフレームオペレーティングシステムの機能です。 [ a ]アクセス方式は、1950年代後半からさまざまな名前でいくつかのメインフレームオペレーティングシステムに存在していました。アクセス方式という名前は、 1963年にIBM OS/360オペレーティングシステムで導入されました。[ 4 ]アクセス方式は、プログラマがデバイスとの間でデータを転送するためのアプリケーションプログラミングインターフェイス(API)を提供し、メインフレーム以外のオペレーティングシステムのデバイスドライバと比較できますが、通常はより高いレベルの機能を提供します。
System/360 および後継システムは、 I/O チャネル用の特別なプログラムを使用して入出力を実行します。I /O チャネルは、周辺ストレージ デバイスへのアクセスとメイン メモリとの間のデータ転送を制御する専用のプロセッサです。チャネル プログラムは、チャネル コマンド ワード(CCW)で構成されます。これらのプログラミングは、ハードウェア特性に関する詳細な知識を必要とする複雑な作業です。チャネル プログラムは、オペレーティングシステムによって発行されるSTART IO命令によって開始されます。通常、アプリケーション プログラマの利便性のために、この命令の前にExecute Channel Program ( EXCP ) マクロが配置されます。EXCPは、オペレーティングシステムにアプリケーションに代わって START IO を発行するように指示するSVC (スーパーバイザ コール命令) を発行します。 [ 5 ]
アクセス方法には以下が含まれます。
Unix系のシステムでは、すべてのファイルとデバイスはフォーマットされていないバイトストリームとして扱われますが、メインフレームでは、レコードの種類やサイズ、レコードキーによるアクセス方法など、さまざまなデータオプションとフォーマットが提供されます。アクセス方式は、プログラムがこうした複雑さに対処するための手段となります。
OS/360では、ユーザーはデータ制御ブロック(DCB)を作成してオープンし、処理が完了したらクローズする必要があります。多くのマクロ命令はDCBを直接参照しますが、一部のマクロ命令は、さらにDCBを参照する制御ブロックを参照します。チャネルプログラムの実行(EXCP)では、ユーザーは入出力ブロック(IOB)を指定します。基本的なアクセス方式では、READ、WRITE、CHECKマクロ命令はデータイベント制御ブロック(DECB)を参照します。
OS/VSでは、IBMは仮想ストレージアクセス方式(VSAM)と仮想通信アクセス方式(VTAM)という2つの新しいアクセス方式を導入しました。これらはDCBの代わりにアクセス制御ブロック(ACB)を使用し、ほとんどの操作で新しい制御ブロックである要求パラメータリスト(RPL)を使用します。
OS/VS1およびMVSでは、ジョブエントリサブシステム(JES)はSYSINおよびSYSOUTデータセット用のACB/RPLインターフェースを備えていますが、BSAMおよびQSAMはBSAMおよびQSAMをサポートするための互換性インターフェースを備えています。
ストレージ指向のアクセス方式を、おおよその年代順に並べたもの:
どちらのアクセス方式もデータセットのレコードを扱います。基本的なアクセス方式では、一度に 1つの物理レコード(ブロック)を読み書きします。キュー方式では、データの内部ブロッキングと、多くの場合、先読みスキームがサポートされます。[ 4 ]キュー方式は一般的にパフォーマンスが向上しますが、基本的な方式は柔軟性が高くなります。
シーケンシャルアクセスとは、レコードが直接アクセス(またはランダムアクセス)ではなく、順次的にのみ処理されることを前提としています。磁気テープなどの一部のデバイスは、本質的にシーケンシャルアクセスを強制しますが、ディスクドライブなどの直接アクセスストレージデバイス(DASD)でも使用できます。後者の場合、シーケンシャルアクセスで書き込まれたデータセットは、後で直接的に処理できます。
ネットワーク指向型アクセス方式を概ね時系列順に並べたもの:
IBM情報管理システム(IMS)では、「アクセス方式」という用語を用いて、「データベースレコード内のセグメント」を操作する方法を指します。それらは以下のとおりです。
これは、この記事で言及されている他のアクセス方法とは異なる用語の使い方です。
z/OSオペレーティングシステムでは、2つの要素がアクセス方法を提供します。