Indexed Sequential Access Method
ISAMは、コンピュータメモリが不足していた時代に開発された。IBMは、メモリ使用量が最小限になるようシステムを設計した。その反面、入出力チャネル、制御ユニット、ディスクがビジー状態に保たれてしまう。 ISAMファイルは、データレコードのコレクションと2つまたは3つのレベルのインデックスで構成される。トラックインデックスには、インデックスを作成するシリンダー上の各ディスクトラックの最高のキーが含まれる。シリンダーインデックスには、シリンダーの最上位のキーと、対応するトラックインデックスのディスクアドレスが格納される。オプションのマスターインデックスは、通常、大きなファイルにのみ使用され、シリンダーインデックストラックの最上位のキーとそのシリンダーインデックスのディスクアドレスを含む。ファイルがロードされると、データレコードは移動されなくなる。挿入されたレコードは、別のオーバーフロー領域に配置される。キーでレコードを見つけるために、ディスク上のインデックスは複雑な自己書き換えチャネルプログラムによって検索される。 これにより、チャネル、コントロールユニット、およびディスクのビジー時間が増加した。後のシステムで物理メモリと仮想メモリのサイズが大きくなると、これは非効率的であると見なされ、VSAMは、メモリ使用量とディスクアクティビティの間のトレードオフを変更するために開発された。
I/O操作の開始時にCP-67がチャネルプログラム全体を固定メモリにコピーし、仮想アドレスを実アドレスに変換したため、ISAMが自己書き換えチャネルプログラムを使用することで、後でOS/360のCP-67サポートが困難となった。