JPH0575134B2 - - Google Patents

Info

Publication number
JPH0575134B2
JPH0575134B2 JP61110992A JP11099286A JPH0575134B2 JP H0575134 B2 JPH0575134 B2 JP H0575134B2 JP 61110992 A JP61110992 A JP 61110992A JP 11099286 A JP11099286 A JP 11099286A JP H0575134 B2 JPH0575134 B2 JP H0575134B2
Authority
JP
Japan
Prior art keywords
data
record
command
storage
channel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP61110992A
Other languages
English (en)
Other versions
JPS626325A (ja
Inventor
Rinkaan Isukyan Jeemuzu
Jon Reguorudo Uaanon
Ritsuku Hongu Ryungu Piitaa
Yuujin Maachin Gai
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS626325A publication Critical patent/JPS626325A/ja
Publication of JPH0575134B2 publication Critical patent/JPH0575134B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/31Providing disk cache in a specific location of a storage system
    • G06F2212/312In storage controller

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【発明の詳細な説明】
この項では次の順序で説明を行う。 A 産業上の利用分野 B 従来技術 C 発明が解決しようとする問題点 D 問題を解決するための手段 E 実施例 (a) 構成 (b) 2つの動作モード (c) 動的に管理されたデータ (d) トラツク・アロケーシヨンでないレコー
ド・アロケーシヨン (e) 動作 (f) レコード・アクセス・モードの状況表現 (g) レコード・アクセス・モード用チヤネル・
コマンド再試行 (h) デステージされるべきLRU修正データの
走査 (i) トラツクによる修正データのデステージ (j) アイドル・ループからデイスパツチされる
レコード・アクセス装置フアンクツシヨン (k) 並列動作 (l) 補助マイクロプロセツサ・アルゴリズム (m) 修正ビツト・マツプ(MBM)アルゴリズ
ム (n) 欠陥ビツト・マツプ(DBM)アルゴリズ
ム (o) 診断モード・スイツチ・アルゴリズム (p) デイレクトリ・アルゴリズム (q) 入出力動作 (r) 参考文献 F 発明の効果 A 産業上の利用分野 本発明は、情報取扱装置に係り、特に、キヤツ
シユ記憶装置、バツキング記憶装置、並びに上記
キヤツシユ及びバツキング記憶装置中の記録に対
する読取及び書込アクセスを制御する制御手段を
有する電子的情報取扱周辺サブシステムに関す
る。 1秒当り非常に多数のトランザクシヨンを必要
とする情報取扱装置のユーザ・グループが存在す
る。これらのユーザは、データ・アクセスの迅速
性、信頼できるデータ記憶装置、効率の高い直接
アクセス記憶装置、高いメツセージ処理速度、並
びにDASDアクチユエータと特注のハードウエア
及びソフトウエアとの間のバランスのとれた活動
を必要としている。これらの実装装置の平均
DASD入出力速度は、1秒当り500乃至13500以上
のトランザクシヨンを有する。これらユーザは、
主として、航空、金融、ホテル及びデータ・サー
ビス産業に存在する。これら業界のユーザは、
DASD記憶装置の使用及びサービス時間に敏感で
ある。 本発明は、これらのユーザの現在及び将来のニ
ーズを満足させるために特に採用される。キヤツ
シユ技術を使用することにより、本発明は、デー
タに対する迅速且つ信頼性の高いアクセスを行う
ことができ、DASD記憶装置をより効率的に使用
できる。 B 従来技術 米国特許第3569938号に示唆されているように、
見掛上の記憶装置を提供するために長年にわたつ
て周辺データ記憶階層が使用されてきた。この特
許には、デマンド・ページングすなわちリクエス
ト・システムにおいては、キヤツシユ型高速フロ
ント記憶装置にデータを記憶すると、周辺記憶サ
ブシステムが大容量であるかのように見せること
ができるとともに、データを迅速にアクセスで
き、このアクセスはバツク記憶装置によつて得ら
れるものより速くすることができることが開示さ
れている。また、この特許は、バツク記憶装置を
例えば磁気テープ記録装置や磁気デイスク記録装
置(直接アクセス記憶装置すなわちDASD)のよ
うな保持(持久)記憶装置とし、フロント記憶装
置を例えば磁気コア記憶装置のような揮発性(非
持久)記憶装置とすることができることを教示し
ている。データ記憶技術が進むにつれて、フロン
ト記憶装置として半導体型データ記憶要素が使用
されるようになつた。米国特許第3839704号は、
このようなデータ記憶階層の別の形態を示してい
る。 データ記憶階層の重要な点は、データの保全性
を可能にする点にある。すなわち、中央処理装置
又は他のデータ取扱装置のようなユーザから受取
られたデータは、正しいことを示す標識又はエラ
ーが生じたことを示す標識とともに供給装置に戻
さなければならない。また、迅速アクセスのため
に他のデータを記憶できるように高レベルのデー
タを制限するだけでなく、保持記憶のために高レ
ベルから低レベルにデータを自動的に動かすこと
は、データ記憶階層においては通常行われること
である。米国特許第4020466号は、高レベル記憶
装置からバツキング記憶装置へのコピー変更を開
示している。米国特許第4077059号は、所定条件
の下での強制コピーバツクを開示している。この
ようなコピーバツク動作は、データ記憶階層時間
を消費する可能性がある。すなわち、非常に多く
のデータがコピーバツクされるので、使用装置に
よるデータへのアクセスが劣下する。この問題
は、米国特許第3588839号によつて部分的に解決
されている。この特許は、高レベル記憶装置から
低レベル記憶装置へコピーバツクされる必要があ
るデータは、変更されたデータだけであること、
すなわちバツキング記憶装置とフロント記憶装置
との間に不一致がある場合にコピーバツクを行う
ことを開示している。 データ記憶階層は別の形態をとることができ
る。例えば、米国特許第3569938号の場合、単一
の高速記憶装置が数人のユーザをサービスする。
米国特許第3735360号は、各プロセツサが異なつ
た性能を得るために、独自の高速記憶装置すなわ
ちキヤツシユを有することを開示している。デー
タ記憶装置階層の性能は、また、所定のデータを
キヤツシユ・フロント記憶装置すなわち高速(迅
速アクセス)記憶部へ配置するのに使用されるア
ルゴリズム及び他の制御に影響される。従つて、
米国特許第3898624号は、バツキング記憶装置か
らフロントすなわちキヤツシユ記憶装置にデータ
をフエツチする時間を変化させるのを、CPUで
実行中のプログラムに従つてコンピユータ・オペ
レータによつて選択できることを示している。こ
のように、キヤツシユすなわち階層の高レベルに
常駐しているデータはCPUに必要なデータであ
り、不要な他のデータは常駐していないことが望
まれる。これらすべての動作は、非常に複雑であ
る。 従つて、データ記憶階層を管理するのにどうす
るのが最も良いかを評価するのに評価プログラム
が使用されてきた。米国特許第3964028号及び第
4068304号は、データの保全性を確保しつつ最適
性能を改良するためのデータ記憶階層の性能監視
を示している。CPUに接続されたキヤツシユと
主メモリの組合せ中では、データ記憶階層に関す
る多くの作業が行われる。米国特許第3569938号
に示唆されているように、キヤツシユ化主メモリ
の原理は、周辺装置のキヤツシユイング及びバツ
フアリングに直接関係する。もちろん、米国特許
第3569938号が出現する前から、主メモリはCPU
のために磁気テープ及びデイスク記憶装置からの
データを一時記憶すなわちキヤツシユするのに使
用されていた。すなわち、主メモリは、CPUワ
ーキング記憶装置としてだけでなく周辺装置用の
バツフアとしても使用される。データへのアクセ
スを改良するために、あるデータはフロント記憶
装置に“束縛(pinned又はbound)”される。す
なわち、このようなデータはフロント記憶装置に
保持されることが保証され、他のデータは使用特
性に基いて新たなデータと置換可能とされる。こ
のような束縛データが保持記憶装置にコピーされ
ていなければ、重要なデータの保全性が危険にさ
れされる。 使用装置とバツキング記憶装置との間に介挿さ
れたキヤツシユイング・バツフアを常に使用する
ことは、総合データ処理性能及び保全性の上で最
良の利益を常に得られるわけではないことが、上
記性能監視に関する特許に示されている。例え
ば、米国特許第4075686号は、キヤツシユを選択
的にバイパスするためにキヤツシユをオンでオフ
に切換えることを教示している。さらに、バツキ
ング記憶装置は論理素子に分割でき、ある論理素
子すなわち論理セグメントが連続入出力動作のた
めに選択的にバイパスされるようにできる。さら
に、この特許は、ある特定のコマンドに対して
は、キヤツシユを使用するよりは使用しない方が
好ましいことを教示している。米国特許第
4268907号は、データ・ワードのフエツチを特定
するコマンドに対しては、標識フラグが所定状態
にセツトされることを教示している。キヤツシユ
中にすでに記憶されている多数のデータ命令の置
換をこのような命令の実行の間防止するために、
上記フラグは、次にフエツチされるデータ・ワー
ドのためにキヤツシユ記憶装置をバイパスするよ
うに次に続く所定コマンドに応答するよう置換回
路を条件付ける。米国特許第4189770号は、命令
データに対してはキヤツシユを使用し、オペラン
ド・データに対してはキヤツシユをバイパスする
ことを示している。 より新しいデザインでは、フロント記憶装置の
記憶容量を増加させる傾向にある。容量の増加
は、I/Oチヤネル速度を高めることにより行わ
れる。これにより、フロント記憶装置にデータを
記憶させる要求が増大する。このような変更は、
フロント記憶装置に記憶されるデータがますます
増大することを意味する。揮発性フロント記憶装
置中のデータ記憶量が増大すると、例えば給震の
動揺又は停電によつて生じるデータ保全性の問題
がより深刻となる。データの保全性は、常にデー
タを保持記憶装置に記録しておくことにより確保
される。この要求を満たすことは、性能を劣化さ
せることになる。すなわち、データ・アクセス時
間を増大させる。アイ・ビー・エム・テクニカ
ル・デイスクロージヤ・ブルテン(IBM
Technical Dislosure Bulletin)、Vol.18、No.1、
1975年6月に記載された“選択的ジヤーナリング
(Selective Journalling)”という題名の論文に記
載されているデータの選択的保持ジヤーナリング
は、性能劣化を減少させるが、データの保全性を
危険にさらすことを完全に満足できる態様で制御
するものではない。同様にアイ・ビー・エム・テ
クニカル・デイスクロージヤ・ブルテン(IBM
Technical Dislosure Bulletin)、Vol.18、No.10、
1976年3月の第3307頁乃至第3309頁は、多レベル
階層におけるレベル間転送を制御する置換制御に
おける多重置換クラスを開示している。この技術
を使用してデータの保全性が危険にさらされる可
能性は大きく、性能が制限される。 ホスト・プロセツサに対する周辺データ記憶装
置の動作完了表示は、通常、装置終了(DEVICE
END)信号である。装置終了信号は、ホストか
ら受取られたデータがデータ記憶装置に不揮発的
に記憶されていることを示す。 米国特許第4410942号は、複数のデータ・モー
ドを有する揮発性データ・バツフアを含むテー
プ・データ記録装置を開示している。好ましいモ
ード(“テープ・バツフア・モード)においては、
データが揮発性バツフアに記憶されているが保持
記憶テープ記録装置には記憶されていないとき
に、上述の装置終了信号がホスト・プロセツサに
供給される。データは、装置終了信号発生後、テ
ープ記録装置に記憶される。ホストからデータ記
憶装置に与えられる別個の同期
(SYNCHRONIZE)コマンドは、揮発性バツフ
アに記憶されているすべてのデータをテープ記録
装置に記憶させることを要求する。揮発性バツフ
アの他の動作モードにおいては、データが保持テ
ープ記録装置に記憶された後にのみ装置終了後信
号がホストに送られる。データ記憶装置は、また
バツフア・データ読取コマンドを受ける。このコ
マンドは、バツフア中に記憶されたデータ(ホス
ト又はテープ記録装置によつてバツフアに送られ
た)をホストへ転送させる。ホストによつてデー
タがデータ記憶装置へ送られるときには、このよ
うなデータは、上述のように、保持テープ記録装
置に常に記録される。バツフア・データ読取は、
エラー回復技術を含み、通常、テープへの書込動
作のためにホストから受取られたバツフア中のデ
ータを検索する方法はない。 データの保全性を危険にさらさないようにする
ために考えられる解決方法、保持フロント記憶装
置を備えることである。DASDをキヤツシユすな
わちフロント記憶装置とし、磁気テープをバツク
記憶装置にする。この種のデータ記憶階層の簡単
な開示は、アイ・ビー・エム・デイスクロージ
ヤ・ブルテン(IBM Technical Dislosure
Bulletin)、Vol.20、No.3、1977年8月の第939頁
乃至第940頁に掲載された“多レベル記憶デイレ
クトリの保全性(Multilevel Stove Directory
Integrity)”という題名の論文になされている。
しかし、このような保持バツフアは、今日のコン
ピユータによつてときどき要求される性能(短い
データ・アクセス時間)を通常提供できない。従
つて、真の高性能データ記憶階層を構成するに
は、大容量の揮発性フロント記憶装置を使用し且
つこの使用に伴うデータ保全性がさらされる危険
を制御する何らかの手段を設けなければならな
い。この危険制御は、印刷、通信等の他の装置に
も適用される。 アイ・ビー・エム・デイスクロージヤ・ブルテ
ン(IBM Technical Dislosure Bulletin)、
Vol.21、No.1、1978年6月の第280頁には、劣化
を招くことなくハードウエア・制御チエツク・ポ
インテイングを有するストア−エンド−キヤツシ
ユ・マイクロプロセツサにおいてキヤツシユのデ
ツドロツクの可能性を低減するメカニズムが開示
されている。 アイ・ビー・エム・テクニカル・デイスクロー
ジヤ・ブルテン(IBM Technical Dislosure
Bulletin)、Vol.18、No.8、1976年1月の第2643
頁には、データ処理装置のメモリ・サブシステム
部に通常記憶されているデータ・ベースの一部を
選択的にコピーする方法が開示されている。 アイ・ビー・エム・テクニカル・デイスクロー
ジヤ・ブルテン(IBM Technical Dislosure
Bulletin)、Vol.20、No.5、1977年10月の第1955
頁には、二段データ記憶装置のためのチエツク・
ポイント・コピー動作が開示されている。 C 発明が解決しようとする問題点 本発明の目的は、キヤツシユ記憶装置及びバツ
フア記憶装置を有し、あるレコードの1つのバー
ジヨンをバツク記憶装置に記憶し且つ上記レコー
ドの修正(modified)バージヨンをキヤツシユ
記憶装置に記憶する周辺サブシステムにおいて、
上記サブシステムに記憶された1つ以上のレコー
ドの最も新しい更新されたバージヨンを転送する
ためのアクセスを行うことにある。 D 問題点を解決するための手段 上記目的を達成するために、本発明は、キヤツ
シユに記憶された各レコードのデータがバツク記
憶装置に記憶された同じレコードのバージヨンに
対して修正されているか否かを、上記バツク記憶
装置中の各装置の各トラツクの各レコード毎に示
す指示手段(例えばテーブル・ルツクアツプ手
段)を具備する。後述の実施例においては、上記
指示手段に応答し所定基準に従つてあるレコード
の修正又はバツク記憶装置のバージヨンを転送す
る手段が設けられる。 また、後述の実施例では、バツク記憶装置中の
同じレコードのバージヨンに対して修正されたキ
ヤツシユ記憶装置中のレコードを識別する手段が
さらに設けられる。 さらに、後述の実施例では、バツク記憶装置に
記憶されたレコードの修正バージヨンであるキヤ
ツシユ記憶装置に記憶されたレコードを配置する
手段が設けられる。 E 実施例 (a) 構成 まず、第2図を参照して本発明を適用可能な情
報取扱装置について説明する。 情報取扱装置10は、単一プロセツサ又は多重
プロセツサ構成に接続された1つ又はそれ以上の
処理装置である。ホスト・プロセツサ12はチヤ
ネル14と通信する。チヤネル14は、ホストと
周辺サブシステムとの間の通信のために標準的イ
ンターフエース信号を発生する。複数の周辺サブ
システム制御装置16,18,20,22,24
等はチヤネル14に接続されている(後述の
GA26−1661及びGA22−6974参照)。チヤネル1
4は、ホスト・プロセツサ12に接続される多数
のチヤネルの1つである。制御装置16のような
各制御装置は、例えば直接アクセス記憶装置
(DASD)26,28,32,34,36及び3
8のような多数の周辺装置に接続されている。 本発明は、具体的に言えば、チヤネル14、制
御装置16及びDASD26乃至38の間のレコー
ド・データ転装の制御を目的としている。本発明
による装置は、制御装置16,18,20,2
2,24等中で具体化される。本発明による各制
御装置は、2つ又はそれ以上の部分30,40に
分割される。 次に、第1図、第3A図、第3B図、第4図及
び第5図並びに第1表乃至第6表を参照して本発
明の好ましい実施例について詳細に説明する。 まず、第1図を参照して制御装置16の構成に
ついて詳細に説明する。制御装置16は、2つの
部分30及び40を含み、各部分は、記憶デイレ
クタ130,140、及びサブシステム記憶装置
100の部分100a,100bを含む。サブシ
ステム記憶装置100は、それぞれ記憶デイレク
タ130及び140によつて制御されるキヤツシ
ユ区画102及び104、並びに記憶デイレクタ
130及び140によつて制御される制御データ
領域106及び108を含む。記憶デイレクタ1
30はDASD26,28,32……等と通信を行
い、記憶デイレクタ140はDASD34、36,
38……等と通信を行う(第2図参照)。 各記憶デイレクタ130,140の動作は、チ
ヤネル14を介して受取られるコマンドと当該記
憶デイレクタ内に常駐するマイクロコード制御プ
ログラムとによつて制御される。サブシステムの
92%乃至98%がデータの記憶に使用される。サブ
システム記憶装置の残りの部分が、制御データ領
域106,108である。制御データ領域106
に関する第3A図に最も良く示されているよう
に、対応する区画30,40中の各制御データ領
域106,108は、次のような多数のテーブル
保管域及びデイレクトリ・エントリ・アロケーシ
ヨン・ユニツトに分割される。 分散インデツクス・テーブル(SIT)110
(第1表参照) 修正ビツト・マツプ114(第3表参照) トラツク修正データ116(第4表参照) 非保持性内部コマンド・チエーン保管域118
(第5表参照) デイレクトリ・エントリ・アロケーシヨン・ユ
ニツト120(第2表参照)
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】 これらのデイレクトリ・エントリ・アロケーシ
ヨン・ユニツトは、キヤツシユに駐在するであろ
う異なるサイズのデータ・レコードに対する記憶
装置の使用を有効なものにする。アロケーシヨ
ン・ユニツトのサイズは、サブシステムの初期設
定の際にホスト12から供給されるコマンドによ
つて設定されるのが好ましい。 記録アクセス動作用サブシステム記憶装置を準
備又は初期設定するサブシステム初期設定処理に
は、サブシステム記憶装置の欠陥領域を位置決め
し、記録サクセス動作を支援するのに必要な制御
データ構造を決定し、欠陥のない完全なサブシス
テム記憶領域に重要データをアロケートし、サブ
システム記憶装置がホストによつて初期設定され
る前に制限された処理(例えば初期プログラム・
ロード読取(IPL)を許容し、記録スロツトが不
完全記憶装置によつて受ける影響が均等となるこ
とを保証するためにサブシステム記憶装置全体に
わたつて記録スロツトを均等に分布させ、不完全
領域の有無を調べるためにサブシステム記憶装置
を点検する必要なくサブシステム記憶装置を再初
期設定できるように中央情報を維持することが含
まれる。サブシステム記憶装置は、2つのステツ
プで準備される。まず、サブシステム記憶装置
は、初期マイクロプログラム・ロード(IML)
の間又はホストからのコマンドによつてサブシス
テムに利用可能なようにされ、次に、サブシステ
ム記憶装置は、ホスト12から受取つたコマンド
に応答するサブシステムによつて初期設定され
る。 IMLの間又はホスト12から受取つた“利用
可能”コマンドの結果、サブシステム記憶装置1
00の区画100a及び100bは記憶デイレク
タ130及び140にそれぞれアロケートされ、
欠陥領域の有無がチエツクされる。サブシステム
記憶装置は、1度に32K(K=1000)バイトがチ
エツクされる。チエツクは、上部132及び14
2を使用してキヤツシユ100a及び100bに
ビツト・パターンを書込み、次いで区画30及び
40のためにそれぞれ下部134及び144を使
用して当該パターンを読取ることによつて行われ
る。記憶装置の欠陥領域を発見するのに使用され
る処理は、周知でありここでは詳細に説明しな
い。欠陥ビツト・マツプ(DBM)154は、各
記憶デイレクタ1及び2の重要部分である制御記
憶装置220(第3A図)中に保持される。
DMB154中の各ビツトは、サブシステム記憶
装置の32Kバイトを示す。サブシステム記憶装置
100a及び100bの32Kバイト中に永久エラ
ーが検出されると、DBM154中の対応ビツト
が欠陥表示状態にセツトされる。 サブシステム記憶装置100a,100bの2
つの欠陥のない完全メガバイト(キヤツシユ10
2,104中)は、デイレクトリ領域160とな
るようにアロケートされる。このようなアロケー
シヨンが必要な理由は、サブシステム記憶装置の
エラーが検出されたアクセス危険領域は、データ
の保全性の問題を生じさせる可能性があるからで
ある。2つの欠陥のない完全なメガバイトが存在
しなければ、サブシステム記憶装置には利用不可
能とマークされる。サブシステム10の動作の
間、サブシステム記憶装置の重要領域中でエラー
が検出されると、サブシステム記憶装置は利用不
可能となる。 単一完全トラツク・バツフア112は、サブシ
ステム記憶装置が利用可能であるがいまだ完全に
初期設定されていないときに一時記憶(buffed)
動作を可能にするために、各デイレクトリ領域1
60にアロケートされる。キヤツシユは、ホスト
によつて特定され且つホストから受取られたパラ
メータに基いて初期設定される。デイレクトリ1
60のエントリは、サブシステム記憶装置の第2
の2つの欠陥のない完全メガバイトにアロケート
される。このメガバイトは、欠陥のない記憶領域
のスタート・アドレスから始まることが好まし
い。 サブシステムの初期設定の間、各デイレクト
リ・エントリ162nが書込みを受けなければな
らない。他の制御テーブル及び制御情報は当該キ
ヤツシユで部分的に完了する。初期設定処理(最
大サイズのサブシステム記憶装置に最小記録サイ
ズのみアロケートすること)には、15秒要する。
記録キヤツシユ動作(cachiny)を支援する接続
されたホスト・プロセツサ12中のトランザクシ
ヨン・フアシリテイ処理ソフトウエア(下記
GH20−6200)は、各制御ユニツトを直列に初期
設定する。このことは、60個の制御ユニツトを有
する装置を初期設定するのに15分必要とすること
を意味する。 初期設定時間を低減するために、記録スロツト
Snのアロケーシヨンを部分的にだけ完了させ、
残りはアイドル・ループの後に完了させる。ホス
ト・プロセツサ12から初期設定コマンドが受取
られると、パラメータが検査され、接続されたホ
スト・プロセツサ12にチヤネル終了
(CHANNEL END)信号が供給される。そし
て、分散インデツクス・テーブル(SIT)110
及び制御テーブル114,116,118が初期
設定され、制御データ領域区画106,108中
の全トラツク・バツフア112がサブシステム記
憶区画100a,100bからアロケートされ
る。接続されたホスト・プロセツサ12へ装置終
了(DEVIC EEND)を供給する前に、再スター
ト・テーブル210は、部分的に完了した記録ス
ロツト・アロケーシヨンを再び開始するために、
通常のアイドル・ループ(図示せず−米国特許第
4031521号の第1図ではアイドルスキヤンと指称)
から初期設定フアンクシヨンをデイスパツチする
のに必要な情報を含むように初期設定される。接
続されたホスト・プロセツサ12にチヤネル終了
(CHANNEL END)信号が供給された後であつ
て、装置終了(DEVICE END)信号が初期設定
チヤネル・コマンドのために供給される前に、記
録アクセス・モード動作が可能となる。所要の記
録スロツト・サイズが必要であるが利用不可能な
場合には、サブシステム10がある記録スロツト
162nを初期設定できるようにチヤネル・コマ
ンド再試行(CCR)状況信号が供給される。 チヤネル終了信号がホスト・プロセツサ12に
供給された後、初期設定マイクロコンドがアイド
ル・ループからデイスパツチされる毎に、所要数
の別の記録スロツト及びエントリがアロケートさ
れる。すべてのデイレクトリ・エントリ及び記録
スロツトがアロケートされると、初期設定コード
が、デイパツチ・フラグ(図示せず)をリセツト
し、CCR状況とともに供給されるCCW毎に装置
終了信号を供給する。これは、所要の記録スロツ
トが利用可能となつていなかつたからである。装
置終了信号を供給する前に制御ユニツト16が必
要とする時間は、現在アロケートされている記録
スロツトの数に依存する。この数は、初期設定の
ための時間(装置終了状況に到達するまでの時
間)が500ミリ秒より長くならないように設定さ
れる。 分散インデツクス・テーブル(SIT)110
は、キヤツシユ102中に維持されるレコードを
配置する。SIT110は、サブシステム記憶装置
100a,100b中のデータ記憶部の第1の2
つの識別された欠陥のないメガバイトの終点に配
置される。記憶デイレクタ130に割当てられた
サブシステム記憶装置が16メガバイト以下なら
ば、4096個のサブシステム記憶ワードがSIT11
0のためにアロケートされる。記憶デイレクタ1
30に割当てられたサブシステム記憶装置が16メ
ガバイトを越える場合には、8192個のワードがア
ロケートされる。各SIT110のワードは、第1
表に示されているように、7個のエントリとエラ
ー訂正コードを含む。SIT110中の各エントリ
は、キヤツシユ102中のデイレクトリ・エント
リ162nに対するポインタである。SITエント
リは、レコードの物理的アドレスを示し、次のハ
ツシング・アルゴリズムによつて計算される。 SITオフセツト=((15◆× CC)+HH)+((W/16)
◆× D) この式において、CC=シリンダの16進表現、
HH=ヘツドの16進表現、D=装置番号、W=
SITワードの総数。SITワード中のエントリ番号
は次のように計算される。 エントリ位置=R/7 ここでRはレコード番号である。SIT110は
キヤツシユ102のデータが空であることを示す
ために初期設定される。 次に説明するテーブル及び保管域は、デイレク
トリ領域160中のSIT110に先行する領域の
サブシステム初期設定の間アロケートされる。 (1) 修正ビツト・マツプ(MBM)114(第3
表) MBMは、各可能DASDの各トラツクについて
1つのビツトを含み、修正レコードが指示トラツ
クに対してサブシステム記憶装置中に存在するこ
とを指示するのに使用される。MBMは、キヤツ
シユ中に修正データが存在しないことを指示する
ように初期設定される。 (2) トラツク修正データ(TMD)テーブル保管
域116(第4表) 各DASDについて1つのTMD保管域が設けら
れ、各TMDは、バツフアド読取(多重レコード
読取)を処理するとき1つのトラツク上の修正レ
コードについての情報を保管するのに使用され
る。多重保管域が必要である。何故なら、異なる
DASDが接続されていないか又はDASDからキヤ
ツシユへのレコードを読取るシーク/セクタ・セ
ツト割込を持つている間、バツフアド読取コマン
ドが異なるDASDのために受取られることができ
るからである。 (3) 内部コマンド・チエイン保管域(第5表) 各装置について1つの保管域が設けられ、各保
管域はDASD中に修正レコードを書込むためにコ
マンド・チエインを保管する。多重保管域が必要
である。何故なら、異なるDASDがそれぞれ接続
を解除するか又はキヤツシユ102からDASDへ
レコードを書込むためのシーク/セクタ・セツト
割込を持つている間、内部コマンド・チエイン
(ICC)が異なる装置に対して確立され得るから
である。 各全トラツク・バツフア112は、保管域及び
制御テーブルのアドレスの前のアドレスを有する
サブシステム記憶領域にアロケートされる。バツ
フア112がキヤツシユ102中の低い制御テー
ブル及び保管域アドレスから制御テーブル及び保
管域アドレスより小さなアドレスを占めると、す
べてのバツフア112がアロケートされる前にキ
ヤツシユ100a中のアドレス0000に到達してし
まうので、バツフア112のアロケーシヨンは記
憶デイレクタ130にアロケートされたキヤツシ
ユ102の上半分170から再開される。バツフ
ア利用可能テーブル(BAT)152は、バツフ
ア112をCCWのそれに割当てるのに使用され
る情報を維持するのに制御記憶装置220に確立
される。 キヤツシユ102中にデータを記憶する記録ス
ロツトは、ホスト・プロセツサ12によつて決定
されるウエイト・フアクタを使用することによつ
てアロケートされる。アロケーシヨン及びウエイ
ト・フアクタの例は、次の通りである。 レコード・サイズ 割当 (バイト) ウエイト・フアクタ S1=381 1 S2=1055 3 S3=4096 5 S4=0 0 キヤツシユ中での記録スロツトのアロケーシヨ
ンは、第4図に示されているように、上述のウエ
イト・フアクタに従つて行われる。第1ウエイト
で特定される第1サイズS1のスロツトの番号が
まずアロケートされる。次に、第2ウエイトで特
定される第2サイズS2のスロツトの番号がアロ
ケートされる。この処理は、第3及び第4サイズ
S3及びS4に対しても続けられる。この処理は、
4つのサイズS1,S2,S3及びS4すべての1つの
アロケーシヨン・パスが実行されたとき繰返され
る。記憶デイレクタ130にアロケートされるキ
ヤツシユ102の最初のアドレスの領域が全トラ
ツク・バツフア112に使用されなければ、記録
スロツトのアロケーシヨンは、記憶デイレクタ1
30に割当てられたキヤツシユ・アドレス0000に
到達するとキヤツシユ102の上半部170が記
憶デイレクタ130にアロケートされるように継
続される。別の記録スロツトも、アロケートされ
る次のレコードが直前のデイレクトリ・エントリ
と重なるまでアロケートされ続ける(第3A図参
照)。記録スロツト・アロケーシヨンの間の時間
を節約するために、各エントリを記録サイズによ
つて二重にリンクされたLRUチエイン中に配道
する代りに、記録スロツトが記録サイズに対応す
る単一にリンクされたフリー・リストに付加され
る。エントリがデータの記憶のために最初に使用
されるとき、エントリはフリー・リストから適当
なLRCチエインへ動かされる。 利用可能実現処理の間に形成されるDBM15
4(第3B図)は、あるバツフア又は記録スロツ
トがサブシステム記憶装置の欠陥領域にアロケー
トされたか否かを判断するのに使用される。領域
に欠陥があると、バツフア又は記録スロツトが欠
陥ありとマークされ、アロケートされない。記録
スロツトがキヤツシユ全体にわたつて均等に分布
されるので、サブシステム記憶装置の領域に欠陥
があると各記録スロツト・サイズが同じインパク
トを受ける。記録サクセス動作の間、記録スロツ
ト又はバツフアに欠陥が生じると、DBM154
中のサブシステム記憶装置の32Kバイトに対応す
るビツトが欠陥領域指示状態にセツトされる。初
期設定の後にDBM154を維持することによ
り、ホスト12はキヤツシユ100a,100b
に欠陥があるか否かをチエツクする必要なく(初
期設定パラメータを変更するために)キヤツシユ
100a,100bを再初期設定することができ
る。 キヤツシユのサイズはサブシステムの性能に影
響を与える。キヤツシユのサイズを大きくすれば
するほど、より多くのデータを記憶できる。キヤ
ツシユの記憶されるデータが多くなければなるほ
ど、ホスト・プロセツサ12が要求したデータが
キヤツシユ中に記憶される確率が大きくなる。 (b) 動作の2つのモード 記録サクセス・モードは、サブシステム動作の
通常のキヤツシユイング・モードである。このモ
ードは、トランザンクシヨン処理フアシリテイ
(後述の情報マニユアルGH20−6200参照)の性
能を改良するようにされている。トランザンクシ
ヨン処理フアシリテイは、サブシステム中に記憶
されたデータに対するすべてのアクセスに記録ア
クセス・モードを使用する。サブシステムが記録
サクセス・モードで動作しているとき、チヤネル
14はキヤツシユ102,104へ又はこれらか
ら直接データを転送する。 直接モードにおいては、本発明を組込んだ制御
ユニツトは、S/370、並びにインターナシヨナ
ル・ビジネス・マシーズ・コーポレーシヨン(以
下、IBMと略称す)から販売されているソフト
ウエア・プロダクトの拡張アーキテクチヤ・バー
ジヨンである多重仮想記憶装置/シスエム・プロ
ダクト(MVS/SP)(上記IBM文書SR23−5470
参照)、及び仮想マシーン/高性能オプシヨン付
システム・プロダクト(上記IBM文書GC19−
6221参照)を使用することにより動作する。直接
モードでは、DASD上でデータが直接(キヤツシ
ユをバイパスして)アクセスされる。 本発明は、キヤツシユ及びDASD中に、ユーザ
の適用業務に必要なすべてのデータを保管する。
ただし、適用業務が必要としないときには、情報
を永久に保管することはない。例えば、リザベー
シヨン・トランザクシヨン(持久性データ)を含
むレコードは完全に保護されるが、同じリザベー
シヨン・トランザクシヨンについての問合せ(非
保持特性データ)を含むレコードは重要でない。
第1の型のデータは保持性(持久性)データと呼
ばれ、このデータの更新されたものがそれぞれキ
ヤツシユに保管され且つDASD中の記憶装置によ
つて保護される。第2の型のデータは非保持性デ
ータと呼ばれ、使用期間の間キヤツシユ中に保持
され、必要なときにDASDに転送される。1982年
9月29日の米国特許出願第426367号はデータ記憶
階層中への保持性及び非保持性データの記憶を開
示している。 (c) 動的に管理されたデータ サブシステムのワーク・ロード及びDASDアク
テイビテイが変化すると、本発明は、要求データ
を動的に管理する。本発明は、アクテイビテイの
高いレコードをアクテイビテイの低いレコードよ
りも長くキヤツシユに保持するように最も新しく
使用された(LRU)アルゴリズムを使用する。 本発明は、トランザクシヨン処理フアシリテ
イ・プログラムの性能を著しく改良するためにキ
ヤツシユ技術を使用する。本発明は、必要レコー
ドに対して迅速且つ信頼できるアクセスを実現す
る。キヤツシユを使用することにより、データは
動的に管理され、DASD記憶装置をより有効に使
用できる。サブシステムのキヤツシユ及びデータ
管理とトランザンクシヨン処理フアシリテイ・プ
ログラムとを組合せることにより、有効なハード
ウエア及びソフトウエア解決法を得ることができ
る。 装置は準備完了時にキヤツシユにレコードを転
送し、キヤツシユはチヤネルが利用可能なときに
チヤネルにレコードを転送するので、回転位置感
知(RPS)ミスが減少する。従つて、チヤネル
転送がDASDの予め知られた回転レーテンシイに
依存しないので、チヤネル利用を高めることがで
きる。 (d) トラツク・アロケーシヨンでないレコード・
アルケーシヨン DASDトラツク又はその一部に記憶されたすべ
てのデータではなく要求されたレコードだけがキ
ヤツシユに移動する。このアーキテクチヤはサブ
システムをトランザクシヨン処理フアシリテイに
最適なものにする。 レコード・アクセス・モードには、レコード・
キヤツシユ・サブモードとバツフア・モードとい
う2つの動作サブモードがある。レコード・キヤ
ツシユ・サブモードにおいては、キヤツシユ中の
異なるアロケーシヨン記録ユニツトに適合する単
一レコードがキヤツシユからチヤネルに転送され
る。バツフア・サブモードにおいては、キヤツシ
ユ中の最大レコード・アロケーシヨン・ユニツト
より大きな単一レコード又は複数のレコードが完
全に一時記憶され(buffered)、チヤネルに転送
され、トラツク・バツフア112に記憶される。 レコード・キヤツシユ・サブモードにおいてア
クセスされたレコードはキヤツシユ中に保持され
る。バツフア・サブモードにおいてアクセスされ
るレコードはキヤツシユに保持されない。 本発明を取り込んだ各制御ユニツトは、16,
32,48又は64マガバイトのランダム・アクセス電
子記憶装置を有する高密度電子サブシステム記憶
装置100を利用可能である。各記憶デイレクタ
130,140は、全利用可能サブシステム記憶
装置の半分を使用する。これらのサブシステム記
憶装置のサイズは、本発明の性能をユーザの要求
に一致させることができる。制御ユニツトは、キ
ヤツシユとDASDの間でレコードを転送すると同
時にキヤツシユとチヤネルとの間で他のレコード
を転送できる。 要求されたデータがキヤツシユに記憶されてい
ると、この動作は“読取ヒツト”と呼ばれ、要求
がすぐに満足される。要求されたデータがキヤツ
シユに記憶されていなければ、レコード配置
(LOCATE RECORD)コマンドの完了前にデー
タがDASDからキヤツシユに移動される。この種
の読取動作は“読取ミス”と呼ばれる。各読取ミ
スが生じる毎に、記憶デイレクタ130,140
はチヤネルとの接続を解除し、レコードを求めて
DASD26等をアクセスし、レコードをキヤツシ
ユ102,104に転送する。そして、記憶デイ
レクタ130,140はチヤネルを再接続し、キ
ヤツシユからチヤネルへデータを転送する。後に
チヤネルから受取つた要求は、キヤツシユ10
2,104からデータを直接に読取らせる。 すべての書込コマンドの前には、範囲決定
(DEFINE EXTENT)及びレコード配置
(LOCATE RECORD)コマンドが先行する。記
憶デイレクタ130,140は、書込コマンドを
受取ると、チヤネル14からのデータをキヤツシ
ユ102,104へ転送する。そして、記憶デイ
レクタ130,140は、チヤネルとの接続を解
除する一方、キヤツシユ102,104からのデ
ータをDASDへ転送する。キヤツシユからDASD
への転送の間、チヤネルは他のデータ処理アクテ
イビテイから自由となる。 直接モードの動作において、チヤネル14はキ
ヤツシユ102を介することなくDASD26等を
アクセスし、DASD26等とともに直接に作業を
行う。直接モードは、通常、保守及び個々の
DASDのフオーマツト化に使用されるが、データ
のアクセスにも使用できる。 トランザクシヨン処理フアシリテイ・プログラ
ム・バージヨン2,3は、記録アクセス・モード
又は直接モードで好ましい実施例を支援する。ト
ランザクシヨン処理フアシリテイは、記録アクセ
ス・モードが利用可能なときには常にこのモード
を使用する。 直接モードにおいては、本発明の実施例は、
S/370並びにIBMによつて販売されている次の
ソフトウエア・プロダクトの1つの拡張アーキテ
クチヤ・バージヨンの下で動作するように設計さ
れている。 (1) MVS/SPバージヨン1リリース3,3
(S/370)オペレーテイング・システム及びデ
ータ・フアシリテイ・プロダクト・リリース
1,1 (2) MVS/SPバージヨン2リリース1,2
(XA)オペレーテイング・システム及びデー
タ・フアシリテイ・プロダクト・リリース1,
2又は (3) 仮想マシン/高性能オプシヨン付きシステ
ム・プロダクト(VM/HPO付VM/SP) サブシステムのコマンド・セツトはIBMデイ
スク記憶装置の動作に使用される計数値、キー及
びデータ(CKD)アーキテクチヤを支援する。
両記憶デイレクタ130,140は、DASD26
又はキヤツシユ102,104へデータを記憶さ
せるか、又はこれらからデータを受取る。CKD
アーキテクチヤのサブセツトはキヤツシユ中に記
憶されたデータを支援する。 5つのチヤネル・コマンドすなわちサブシステ
ム・フアンクシヨン実行(PERFORM
SUBSYSTEM FUNCTION)、レコード排業
(DISCARD RECORD)、サブシステム・モード
設定(SET SOBSYSTEM NODE)、サブシス
テム状況感知(SENSE SUBSYSTEM
STATOS)及びサブシステム計数値感知
(SENSE SUBSYSTEM COUNTS)の各コマ
ンドがキヤツシユ102,104を制御する。 範囲決定コマンドは、特別のデータをデータ記
憶装置階層に送るチヤネル・コマンドである。こ
のコマンドは、異なるアクセス・パターンを有す
る適用業務の性能を改良するようにホスト・シス
テムがキヤツシユ管理アルゴリズムを変化させる
のを可能にする。範囲決定コマンドは、バツフ
ア・サブモードのため及びキヤツシユ・ローデイ
ングを禁止するために、非保持性データ及び保持
性データのためのレコード・キヤツシユ・サブモ
ードを付勢できる。 サブシステム16は、3031,3032,3033,3041
アタツチド・プロセツサ、3042アタツチド・プロ
セツサ・モデル2、3081,3083,3084,3090(モ
デル200及び400)、4341,4381及び9190を含む
IBMホスト・プロセツサ・システム・フアミリ
にアタツチされる。好ましい実施例は、2個の全
ストリングのDASDまで(各記憶デイレクタが
DASDに対して最大16個の独自のアドレスを使用
する32個の装置アドレスまでアタツチできる。読
取及び書込動作は、毎秒30メガバイトである。サ
ブシステムは、2つのチヤネルを各記憶デイレク
タにアタツチするのを許容する。 (e) 動作 次に、第5図を参照して、本発明に従つてトラ
ツクに修正レコードを配置する動作を説明する。 トラツク修正データ(TMD)テーブル(第4
表)中の256バイト・レコード番号記憶アレイが
ステツプ300でクリアされる。次に、ステツプ301
において、修正レコードが特定のDASDに書込ま
れたか否か、すなわちホスト・プロセツサ12に
よつて特定されたか又は通常の取替制御装置(図
示せず)を介して制御ユニツト16によつて内部
的に特定されたDASDに書込まれたか否かを判断
するためにキヤツシユ制御ブロツクCCB(図示せ
ず)がテストされる。修正レコードがDASDに書
込まれていなければ、処理が出口302から出
る。 次に、ステツプ303において、修正レコードが
特定されたトラツクに書込まれたか否かを判断す
るために修正ビツト・アツプ・テーブル(第3
表)が検査される。修正表示状態にセツトされた
ビツトが修正ビツト・マツプ・テーブル中で発見
されると、その特定されたトラツクの分散インデ
ツクス・テーブル(SIT)(第1表)のワードが
読取られる。特定されたトラツク用の修正ビツ
ト・マツプ・テーブルにビツトが検出されない
と、処理は出口302から出る。その特定された
トラツク用の修正ビツト・マツプ・テーブル・ビ
ツトが検出され且つステツプ304において分散イ
ンデツクス・ワードが読取られると、ステツプ
306において、キヤツシユ中に記憶されたデイレ
クトリ・エントリを指示しているエントリの有無
を調べるために、分散インデツクス・テーブル
(SIT)・ワードが検査される。分散インデツク
ス・テーブル・ワード中にそのようなデイレクト
リ・エントリ・ポインタが検出されないと、処理
はステツプ302から出る。 ステツプ306において、デイレクトリ・エント
リ・ポインタが検出されると、ステツプ307にお
いて、キヤツシユ中において指示されている特定
のデイレクトリ・エントリが読取られ、ステツプ
308において、当該デイレクトリ・エントリ(D.
E.)が、前に修正ビツト・アツプ・テーブル検査
によつて特定されたのと同じ物理的アドレス(す
なわち、同じDASD(装置)、シリンダ(CC)及
びヘツド(HH))であることを確認するために、
当該デイレクトリ・エントリがチエツクされる。
デイレクトリ・エントリが同じ物理的アドレスで
ないと、ステツプ310において、すべてのデイレ
クトリ・エントリが読取られたか判断するために
テストが行われる。すべてのデイレクトリ・エン
トリが読取られていれば、処理は出口302から
出る。読取るべきエントリがさらに存在すれば、
ステツプ307において、特定の分散インデツク
ス・テーブル・エントリによつて指示された次の
デイレクトリ・エントリが読取られ、上述の処理
が引き続き行われる。ステツプ308において、デ
イレクトリ・エントリがその特定の物理的アドレ
スであることが判明すると、ステツプ311におい
て、キヤツシユに記憶されたレコードが修正され
か否かを調べるためにテストが行われる。キヤツ
シユに記憶されているレコードが修正レコードで
ないと判断されると、再び、ステツプ310におい
て、すべてのデイレクトリ・エントリが上述のよ
うに読取られたか調べるためにテストが行なわれ
る。キヤツシユに記憶されたレコードが修正レコ
ードと判断されると、ステツプ312において、修
正レコードに属する情報がトラツク修正データ
(TMD)・テーブル(第4表)の100エントリ部
(HEX000からHEX037)中の8バイト・エント
リ(例えば、装置0の“TMD”エントリの場
合、TMD情報エントリ2であるバイト8−15)
中に記憶される。ステツプ313において、レコー
ド情報がTMDテーブル・アレイ中の8バイト・
エントリとして記憶された後、100エントリ部へ
のインデツクス(例えば、エントリ用の
HEX000)がステツプ300においてクリアされた
256バイト・アレイのレコード番号位置(エント
リ2用のHEX000)に記憶される。クリアされた
ばかりのアレイには、8ビツト・バイト中に存在
する可能性のある各レコード番号(すなわち、レ
コード番号0−255を含めて)に対応する1バイ
トが存在する。キヤツシユに記憶されちようど修
正されたばかりのレコードに関連する情報がトラ
ツク修正データ・テーブルにセツトされた後、分
散インデツクス・テーブル・ワード中の次のワー
ドが検査される。この処理は、特定されたトラツ
クのすべての修正レコードが検査され且つトラツ
ク修正データ・テーブル中で作られる対応エント
リによつて識別されるまで続けられる。上述の処
理は、サブシステム中の各DASDの各トラツクに
ついて繰返される。 (f) レコード・アクセス・モードの状況表現 ホスト・プロセツサ12にいつ状態情報を提供
するかということとそれか抑止可能か否か(上述
のIBM文書GA22−6974参照)ということを決定
するために、各インターフエース用に二重にリン
クされたリスト(1つが抑止可能状況、他が抑止
可能状況)が各DASDに保持される。従つて、合
計16個のリストが保持される。リストの1つにエ
ントリがあれば、そのチヤネル・インターフエー
ス用のリクエスト・イン(REQUEST IN)タグ
線が付勢される。 (g) レコード・アクセス・モード用チヤネル・コ
マンド再試行(CCR)(上述のGA22−6974参
照) 次のコマンドがチヤネル・コマンド再試行され
る。バツフアが現在アロケートされているときに
は初期設定コマンド(バツフアが自由なときには
装置終了(DEVICE END)コマンド)。キヤツ
シユへのデータのステージが失敗し且つ内部コマ
ンド・チエーン(Interval Command Chain=
ICC)がステージ動作(データをDASDからキヤ
ツシユへ動かすこと)の再試行のために要求され
たとき、CCRが一時記憶読取(BUFFERED
READ)コマンドのために送られる。内部コマ
ンド・ワード(ICW)を有する内部コマンド・
チエーン(ICC)は、米国特許第4533955号に説
明されている。 当該DASDのための非保持特性ICC領域が使用
中のときには、DASDによる非活動化
(DEACTIVATE)、廃棄(DISCARD)及び確
約(COMMIT)(上述の米国特許出願第426367
号参照)コマンドのためにCCRがホストに送ら
れる(アドレスされた装置のための非保持性ICC
が完了したときには装置終了(DEVICE END)
信号が提供される。)非保持性ICCとは、非保持
的にデータを記憶させるためにキヤツシユ100
とDASDとの間でデータを動かすようにICCを使
用することをいう。トラツク・バツフアが現在利
用可能でないときには、CCRは、シーク
(SEEK)及び一時記憶読取/書込
(BUFFERED READ/WRITE)コマンドのた
めにホスト・プロセツサへ送られる(装置終了
(DEVICE END)信号は、トラツク・バツフア
が利用可能になつたときに与えられる)。デイレ
クトリ・エントリが必要で、自由リストにデイレ
クトリ・エントリが無く、受取られたコマンド中
で特定されたレコード・サイズ用の活動リスト上
の最も古く使用された最低のエントリが使用中又
は修正されていれば、CCRは、キヤツシユ読
取/書込(CACHEDREAD/WRITE)コマン
ドのためにホスト・プロセツサへ送られる(装置
終了(DEVICE END)信号は、所要サイズのレ
コード・スロツトが状態を変化させたとき(例え
ば、修正ビツトがリセツトされているとき)に供
給される)。アドレスされた装置又はDASD用の
非保持性ICCがすでに同じトラツク用に設定され
且つレコードのキヤツシユ・コピーが修正されて
いれば、キヤツシユ書込(CACHED WRITE)
コマンドのためにコマンド供給ホストにCCRが
送られる(デステージが完了すると装置終了
(DEVICE END)信号が与えられる−非同期デ
ステージをデイスパツチする優先順位は非保持特
性ICCが完了するまでチヤネル動作の優先順位に
先行して動かされる)。アドレスされたDASD用
の非保持性ICCがアドレスされたトラツク用にす
でに設定されているときには、CCRが一時記憶
書込(BUFFERED WRITE)コマンドのために
ホスト12へ送られる(アドレスされたDASDの
ための非保持性ICCが完了したときに装置終了
(DEVICE END)信号が与えられる−非同期デ
ステージをデイスパツチする(データをキヤツシ
ユ100からDASDへ動かす)優先順位は、非保
持性ICCが完了するまでチヤネル動作の優先順位
に先行して動かされる)。アドレスされたトラツ
ク(CCC,HH)用に修正データが存在し且つア
ドレスされたDASD用の非保持特性ICC領域が現
在使用中であれば、CCRは、フオーマツト書込
(FORMAT WRITE)コマンドのためにホスト
12へ送られる(アドレスされた装置又はDASD
用の非保持特性ICCが完了したとき、装置終了
(DEVICE END)信号が与えられる−非同期デ
ステージのデイスパツチの優先順位は非保持性
ICCが完了するまでチヤネル動作の優先順位に先
行するように動かされる)。 (h) デステージされるべきLRU修正データの走
査 修正されたデータを含むキヤツシユ・エントリ
がLRUリストの最下部に到達すると(最古使用
(LRU)になると)、キヤツシユにより特定され
たデータはより多くのデータを記憶する空間を確
保できるようにDASDにデステージされる必要が
ある(交換)。この交換機能は、そのカウンタ
(図示せず)がゼロに到達したときにアイドル・
ループからデイスパツチされる。アイドル・ルー
プに入る毎に、アイドル・ループ・カウンタ(図
示せず)の値が1つ減少する。LRU走査機能が
制御をアイドル・ループに戻す毎に、アイドル・
ループ・カウンタは“初期値”にセツトされる。
“初期値”は、LRU走査機能が呼び出される頻度
を調節するために動的に増加又は減少させられ
る。サブシステム記憶装置が(再)初期設定され
ると、“初期値”は最初の初期値にリセツトされ
る。 LRU走査機能が呼び出されると、LRUリスト
はキヤツシユ100に記憶された修正データの表
示を検出するために行毎に走査される。1つの行
は、最も古く使用されたものの次に古いエントリ
から成る。修正されたトラツクが検出されたとき
に、そのトラツク用に非保持特性ICCがまだ確立
されておらず且つそのトラツクがLRUデステー
ジ待ち行列中に入つていないと、LRUデステー
ジ待ち行列(図示せず)中にエントリが確立され
る。走査は、8個のエントリが待ち行列に付加さ
れるか又は36個のエントリが走査されてしまうま
で、継続する。LRU走査機能が呼び出されたと
きに、6個より小さな個数のエントリしか待ち行
列に含まれていなければ、LRU待ち行列全体が
再構成される。 どのLRUリストにおいても修正をされたエン
トリが検出されないと、LRUデステージ機能が
非常に頻繁に呼び出されることとなる。そして、
“初期値”が256だけ増加される。非同期デステー
ジをデイスパツチすること及びLRUデステージ
のためのICCを確立することに優先順位が与えら
れていると、チヤネル動作の方の優先順位が高ま
る。LRUリストに修正されたリストが検出され
ないと、LRUデステージ機能は適当な回数だけ
呼び出される。従つて、“初期値”が調整される
ことはない。そして、修正されたエントリを含む
トラツクをデステージするように非保持性ICCを
確立するためにRDQ(読取待ち行列)及びLRU
デステージ待ち行列が確立される。 新たなデイレクトリ・エントリをアロケートす
るときに、修正されたデータを示す新たなLRU
エントリが検出されると、LRUデステージ機能
が十分な頻度で呼び出されない。“初期値”は最
初の初期値にリセツトされる。アイドル・ルー
プ・カウンタがリセツトされ、アイドル・ループ
はLRUデステージ機能をできるだけ早く呼び出
す。LRUデステージのためにICCを確立すること
及び非同期デステージのためのICC処理に優先順
位が与えられる。 (i) トラツクによる修正データのデステージ このアルゴリズムは、エクステント
(EXTENT)による確約(COMMIT)(非保持
性データを保持的に記憶されるデータにするこ
と、上述の米国特許第426367号参照)、スケジユ
ールDASD更新(SCHEDULE DASD
UPDATE)、トラツク上の修正データによるフ
オーマツト書込、又は装置動作による非活動化
(DEACTIVE)を行うとき、LRUで示され修正
されたデータをアイドル・ループからデステージ
するのに使用される。 SIT110は、トラツクすなわち現在処理中のト
ラツク上のすべての修正されたレコードを示すた
めにサーチされる。現在のトラツク上の修正され
たレコードはすべての1つのICC中にデステージ
される。各レコード用のICWを構成するのに必
要な中央情報は、TMDテーブル116中に確立
される。シーク(SEEK)及びセクタ・セツト
(SET SECTOR)ICWは、制御記憶装置中の装
置非保持性ICC領域中に構成される。TMDテー
ブル116は、デステージされるべき最初のレコ
ードのセクタ番号を得るようにレコード・スロツ
ト・ヘツダをアクセスするのに使用される。デス
テージされるべき各レコード用のレコード・サー
チ(SEARCH RECORD)、書込データ制御
(CONTROL WRITE DATA)、及びデータ書
込(WRITE DATA)のICWは、TMDテーブル
からの情報を使用してサブシステム記憶装置中の
アドレスされたDASDが割当てられる非保持特性
ICC区域中で構成される。TMDテーブル116
は各レコードの長さを決めるのに使用される。レ
コードの長さがそのレコード用のTMDエントリ
にないときには、レコード・スロツト・ヘツダが
アクセスされる。 ICCが開始されるべきときには、非保持性ICC
のシーク(SEEK)/セクタ・セツト(SET
SECTOR)部がスタートする。制御装置16が
セクタ・セツトからのDASD割込みを受取ると、
非保持性ICCのキヤツシユ部が活動非保持性ICC
区域にコピーされ、セクタ・セツト(SET
SECTOR)ICWに連鎖される。ICCが完了した
後、デステージされた各レコード用のデイレクト
リ・エントリは、修正されていないことがマーク
され、トラツク用のMBMエントリ中のビツトが
リセツトされる。並行動作が付勢されると、終結
処置機能がアイドル・ループからデイスパツチさ
れるように待機させられる。 (j) アイドル・ループからデイスパツチされるレ
コード・アクセス装置フアンクシヨン(RDQ) アイドル・ループ中の走査時、リセツト及び選
択が許容され、並行動作は進行しない。6つのフ
アンクシヨン(機能)のうちどれをデイスパツチ
すべきかを決めるのに使用され、且つデイスパツ
チ要求が受取られた順番を記録する6個のレコー
ド・アクセス装置デイスパツチ待ち行列(RDQ)
が存在する。所与のRDQ中にエントリが存在す
れば、その所与のRDQによつて示される機能が
アイドル・ループから呼び出される。呼び出され
た機能を実際にスタートさせる前にすべての条件
が満たされていることを確認するために、呼び出
された機能によつて別のチエツクが行われる。す
べての条件が満たされていなければ、その機能は
アイドル・ループに戻り、後述のアルゴリズムが
記憶デイレクタによつて行われる。次に、レコー
ド・アクセス・モードのための6個の機能、並び
にこれらがアイドル・ループから通常デイスパツ
チされる優先順位について説明する。 (i) 同期機能RDQリバイスパツチ この機能は、ICCが当該機能を完了した後、装
置終了(DEVICE END)信号がホスト・プロセ
ツサ12に送られる前に当該機能が別の作業(例
えば確約(COMMIT)記録動作のための)を行
う必要があるときに、アイドル・ループからデイ
スパツチされる。 (ii) チヤネル動作RDQのためのICC処理デイス
パツチ この機能は、チヤネル動作のためにICCを開始
させる。アドレスされた装置が使用中ならば、チ
ヤネル動作RDQの次のエントリがチエツクされ
る。要求された装置がすべて使用中であれば、こ
の機能はアイドル・ループへ戻る。この機能は、
次に続く3種の動作のためにデイスパツチされ
る。単一又は一時記憶読取動作のためにステージ
動作が開始される。ステージ動作は、データがホ
スト・プロセツサ12へ向けてチヤネル14を通
過する前であつてサブシステムがレコード配置
(LOCATE RECORD)又はシーク(SEEK)・
チヤネル・コマンドの実行の間サブシステムとホ
スト・プロセツサ12との接続が解除されている
ときに、アドレスされた装置(DASD)からキヤ
ツシユへデータを転送することから成る。ICCの
ためのチエーン(上述の米国特許第4533955号参
照)処理は、常に、ICCが完了したときに終了す
る。何故なら、読取コマンドが処理された後には
どのようなデイレクトリ保守も行うことができる
からである。レコード確約(COMMIT)、一時
記憶書込、又は保持性チヤネル書込コマンドによ
るサブシステムの動作のために、書戻し
(WRITEBACK)動作が行われる。書戻し動作
は、チヤネル14からデータが受取られた後、サ
ブシステムとチヤネル14及びホスト・プロセツ
サ12との接続が解除されている間、キヤツシユ
100からアドレスされたDASDへデータを転送
することから成る。レコード確約動作の場合、前
のチヤネル関連動作の間キヤツシユ100にデー
タが書込まれた。修正されたレコードのデステー
ジは、エクステントだけの確約(COMMIT)、
装置による非活動化(DEACTIVATE)又はフ
オーマツト書込動作のために行われる。修正され
たレコードのデステージ動作は、サブシステムと
チヤネル14との接続が解除されている間に、1
度に1トラツクずつ、キヤツシユに記憶されてい
るデータをアドレスされた装置へ転送することか
ら成る(上述の“トラツクによる修正されたデー
タのデステージ”参照)。前のチヤネル14の関
連動作の間データがキヤツシユに書込まれた。ア
ドレスされたDASDの非保持特性ICC区域は、こ
のデステージ動作の間、予約とマークされる。こ
れは、ホスト・プロセツサ12によつて供給され
たチヤネル・コマンドがサブシステム10によつ
て完了されるまで、他のサブシステム動作がこの
アドレスされたDASDの非保持性ICC区域を使用
するのを防ぐためである。 (iii) 非同期デステージRDQのためのICC処理デ
イスパツチ この機能は、並行動作が進行中だつたのですぐ
に行われなかつた終結処理又はICC処理をスター
トさせる。この機能は、LRU又はスケジユール
DASD更新動作のために修正されたデータをデイ
ステージすべく確立された非保持性ICCのために
デイスパツチされる。アドレスされたDASDが使
用中ならば、非同期デステージRDQの次のエン
トリがチエツクされる。このRDQ中にリスト・
アツプされたすべてのDASDが使用中ならば、こ
の機能はアイドル・ループへ戻る。 (iv) LRUデステージRDQのためのICC確立 この機能は、LRUリストの最古使用終端(最
下部)に論理的に近接したLRU識別子を有する
修正レコードをデステージするためにICCを確立
する(“デステージされるべきLRU修正データ用
走査”アルゴリズムを参照)。アドレスされた
DASD用の非保持特性ICC区域が使用中ならば、
LRUデステージRDQのために確立されたICCの
次のエントリがチエツクされる。このRDQにリ
スト・アツプされた項目を実行するのに必要なす
べての区域が現在使用中ならば、この機能はアイ
ドル・ループに戻る。 (v) スケジユールDASD更新DASDのためのICC
確立 この機能は、スケジユールDASD更新動作用に
修正レコードをデステージするためにICCを確立
する。内該装置の非保持性ICC区域が使用中なら
ば、スケジユールDASD更新RDQ用に確立され
たICCの次のエントリがチエツクされる。必要な
区域が現在すべて使用中だと、この機能はアイド
ル・ループに戻る。 (vi) デイレクトリ機能デイスパツチRDQ このデイレクトリ機能は、装置チヤネル・コマ
ンドによつて受取られた廃棄(DISCARD)コマ
ンドによるデイレクトリ・エントリの無効化、装
置チヤネル・コマンドによつて受取られた非活動
化(DEACTIVATE)コマンドに基くデイレク
トリ・エントリの無効化、及びDASDからのパツ
ク変更割込に従つてLRUリスト中の束縛された
(pinned)再試行可能エントリ標識をLRUリスト
の最上部(最新使用部すなわちMRU)へ動かす
ことを含む。 各DASDに対してどの機能をデイスパツチする
かを示すリストが各DASD毎にデイレクトリ16
0に維持される。すべてのエントリがゼロなら
ば、指定されたDASDに対して行う作業はなく、
デイレクトリ機能デイスパツチRDQ中のDASD
のエントリが除去される。非同期デステージをア
イドル・ループからデイスパツチすることの優先
順位及びLRUデステージのためにICCを確立する
優先順位は、次の2つの場合において、チヤネル
動作の優先順位に先行するように動かすことがで
きる。上記2つの場合とは、まず、キヤツシユ中
に記憶される修正レコードを指示するデイレクト
リ160のエントリがLRUリストの最下部に到
達した場合である(この場合、非同期デステージ
の優先順位及びLRUデステージのためにICCを確
立することの優先順位は、チヤネル動作を実行す
る優先順位に先行して動かされる)。第2の場合
は、CCRの書込動作のために非保持性ICC区域を
持つている場合である(この場合、非同期デステ
ージの優先順位のみ、チヤネル動作実行の優先順
位に先行するように動かされる)。 (k) 並行動作 データ転送の間、DASDとキヤツシユの間で選
択を許容する状況が発生すると、並行処理を開始
させるためにチヤネル14を介してホスト・プロ
セツサ12向けの要求入力(REQUESTIN)を
付勢するように装置“ミニ走査”に入る。データ
転送の間、チヤネル14とキヤツシユ100との
間の並行処理を開始させるために、DASDから与
えられた割込又はデイレクトリ動作を調査するよ
うにチヤネル・ミニ走査が行われる。 半同期動作は、次のような動作のことである。
すなわちアドレスされたDASDから全トラツク・
バツフア112へデータが転送され、バツフア1
12中に少なくとも1つのレコードが記憶されて
いると、記憶されているデータはホスト・プロセ
ツサ12のためのチヤネル14へ転送される動作
である。前に読取られたレコードがチヤネル14
へ同時に転送されている間、レコードはアドレス
されたDASDからトラツク・バツフア112へ読
取られ続ける。バツフア112にはチヤネル14
へ転送されるべきレコードがいつでも少くとも1
つ記憶されている。 半同期動作は、シーク(SEEK)又は一時記憶
読取動作のために実行される。半同期動作を開始
させる前に、キヤツシユ中に指示されたトラツク
のための修正されたレコードが存在するか否かを
調べるために修正ビツト・マツプ114がチエツ
クされる。修正されたレコードが存在するなら
ば、シーク(SEEK)又はレコード配置
(LOCATE RECORD)チヤネル・コマンドの実
行の間にTMD情報区域116が確立される。全
TMDは、最初に実行される読取チヤネル・コマ
ンドの間に制御記憶装置220中で再構成され、
バツフア112に記憶されたデータ又は記録スロ
ツトSnのデータがチヤネル14を介してホス
ト・プロセツサ12から受取られる次に続く各読
取コマンドに応じてチヤネルに転送されるべきか
否かを判断するのに使用される。 補助マイクロプロセツサ(AUX JIB)23
0,240は最初のレコードの番号Rを保管し、
これを次に続くレコードのレコード番号と比較す
る。これは、上記読取コマンドを含むコマンドの
連鎖の間1つより多くのトラツクがバツフア11
2へ読取られることがないようにするためであ
る。補助マイクロプロセツサ230,240は、
アドレスされたDASDのための直前のエクステン
ト決定(DEFINE EXTENT)チヤネル・コマ
ンドにおいて与えられたレコード長と一致するか
調べるためにレコード長をチエツクする。 アドレスされたDASDからセクタ・セツト
(SET SECTOR)割込を受けると、シーク又は
レコード配置(LOCATE RECORD)チヤネ
ル・コマンドのための装置終了タグ信号がチヤネ
ル14を介してホスト・プロセツサ12に提示す
るために記入される。すべてのレコードがアドレ
スされたDASDからバツフア112へステージさ
れる前にチヤネル14がホスト・プロセツサ12
に再接続されると、動作は半同期動作として継続
する。ミニ走査の間の他のチヤネル(図示せず)
が選択されていると、この動作は半同期動作にな
る前の終了する。 (l) 補助マイクロプロセツサ・アルゴリズム DASDから供給されたセクト・セツト割込によ
りチヤネル14がホスト・プロセツサ12に再接
続された後、補助マイクロプロセツサ230,2
40は受取られた読取又は書込チヤネル・コマン
ド従つて含まれているカウント・フイールドをサ
ーチする。カウント・フイールドを検出すると、
補助マイクロプロセツサ230,240はレコー
ド長RLをチエツクする。読取チヤネル動作の場
合、レコード長は、アドレスされたDASDのため
の直前のエクステンス決定(DEFINF
EXTENT)チヤネル・コマンド中に前に与えら
れた長さを越えることがあつてはならない。書込
動作の場合は、直前のエクステント決定チヤネ
ル・コマンドに与えられた長さに一致しなければ
ならない。 一時記憶読取(BUFFERED READ)動作が
チヤネル14を介して受取られると、アドレスさ
れたDASDに記憶されたレコードはバツフア11
2にステージされる。チエーン中に非常に多くの
読取コマンドが存在する場合にバツフア112が
重ね書きされないようにするメカニズムについて
は後述する。アドレスされたDASDからレコード
が読取られると、各カウント・フイールドが記憶
デイレクタのデータ転送回路だけでなく補助プロ
セツサに読込まれる(米国特許第4533995号参
照)。補助プロセツサ230,240は、最初の
カンウト・フイールドを保管し、その記憶された
DASDセル番号(DASD26中のデイスクの回転位
置外)と次に続くすべてのカウント・フイールド
中のセル番号とを比較する。補助プロセツサ23
0,240が一致を検出すると、アドレスされた
トラツク全体が読取られ、読取チヤネル・コマン
ド実行が停止する。補助マイクロプロセツサ23
0,240は、また、レコード長が直前のエクス
テント決定チヤネル・コマンド中に与えられたレ
コード長を越えないようにレコード長をチエツク
する。 一時記憶更新書込チヤネル・コマンド動作を実
行すべきときには、次に説明するメカニズムが使
用される。アドレスされたDASDに書込まれてい
るレコードが処理されると、データ・フイールド
がアドレスされたDASDに書込まれ、カウント・
フイールドもまた制御装置だけでなく補助マイク
ロプロセツサ230,240に読込まれる。補助
マイクロプロセツサ230,240は、それ自身
の制御記憶装置に配置されたレコード書込テーブ
ル(RWT)(図示せず)のアドレスされた
DASDエントリ中にレコード番号を保管する。 記憶デイレクタ130,140は、トラツク修
正データ(TMD)テーブルを確立するのに
RWTを使用する。そして、RWTは、キヤツシ
ユ100中に記憶され且つちようどDASDに書込
まれたレコードをすべて無効にするのに使用され
る。補助マイクロプロセツサ230,240は、
また、アドレスされたDASDのための直前のエク
ステント決定チヤネル・コマンド中に与えられた
レコード長と一致するか調べるためにレコード長
をチエツクする。 (m) 修正ビツト・マツプ(MBM)アルゴリズム サブシステム記憶装置中に配置されたMBM1
14は、キヤツシユ100に記憶される各トラツ
ク用の非保持特性データが存在したか否かを(各
DASDについて)トラツク・ベースで記憶する。
非保持特性書込コマンドが受取られ且つ修正され
たエントリがまだキヤツシユ100中に存在して
いなければレコードを記憶しているDASDトラツ
クに対応するビツトがセツトされる。フオーマツ
ト書込チヤネル・コマンドが受取られると、アド
レスされたトラツク用のMBM114中のビツト
がチエツクされる。アドレスされたトラツクに対
して修正されたレコードが存在すると、このよう
なレコードは、アドレスされたDASDとともにフ
オーマツト書込コマンド動作を行う前に、アドレ
スされたDASDにデステージされる。フオーマツ
ト書込動作が完了した後、キヤツシユ100中の
当該トラツク用のすべてのデイレクトリ・エント
リが無効にされる。シーク又は一時記憶読取チヤ
ネル・コマンドがチヤネル14から受取られる
か、又はエクステント(EXTENT)による確約
チヤネル・コマンド、スケジユールDASD更新チ
ヤネル・コマンド、又は装置による非活動化チヤ
ネル・コマンドを処理するとき、アドレスされた
トラツク用のMBM14中のビツトがチエツクさ
れる。ビツトがセツトされると、キヤツシユ10
0中に記憶されているがアドレスされたDASDに
はいまだ記録されていないアドレスされたトラツ
クのすべての修正されたレコードを指示するトラ
ツク修正データ(TMD)テーブルが確立され
る。所与のトラツクのためにキヤツシユ100中
に記憶されるデータがDASDにデステージされ
(書込れ)るとき、そのトラツク用にキヤツシユ
に記憶されたすべての修正レコードがデステージ
されていれば、すなわち当該トラツク用に束縛
(pinned)又は欠陥エントリが残つておらず且つ
デステージ動作が進行中に非保持特性書込を受け
なければ、そのトラツク用のMBM114中のビ
ツトがリセツトされる。キヤツシユ100中に記
憶された1つのトラツクのためのレコード用のデ
イレクトリ160のエントリが、装置による廃棄
(DISCARD)又は装置による非活動化コマンド
のために無効とされると、当該トラツク用の
MBM114のビツトもまたリセツトされる。廃
棄(DISCARD)レコード及び確約(COMMIT)
レコード・チヤネル・コマンドのために、アドレ
スされたトラツクに対してキヤツシユ100中に
修正レコードが無くても、1つのトラツク用の
MBM114のビツトをセツトすることができ
る。 (n) 欠陥ビツト・アツプ(DBM)アルゴリズム DBM154(第3B図)は、サブシステム記
憶装置の各32Kバイト区域毎に1ビツトを有す
る。これは、この区域が欠陥か否かを示すためで
ある。初期マイクロプログラム・ロード(IML)
動作若しくはサブシステム記憶装置利用可能化動
作の間32K区域が欠陥と判断されるか、32K区域
中のレコード・スロツトが欠陥区域となるか、又
は32K区域中のバツフア112が欠陥を有するよ
うになると、32K区域のDBMビツトがオンに切
換わる(すなわちセツトされる)。 (o) 診断モード・スイツチ・アルゴリズム 記憶デイレクタ130,140用の診断モー
ド・スイツチは、サブシステムの診断を行うとき
に保守すなわちカストマー・エンジニアによつて
セツトされる。記憶デイレクタ130,140の
マイクロコードは、アイドル・ループに入る毎に
該スイツチをチエツクする。スイツチがセツトさ
れると、キヤツシユが利用不可能となり、すべて
のICCが打ち切られる。 (p) デイレクトリ・アルゴリズム キヤツシユ100は、2つの記憶デイレクタ1
30,140の間で均等に分割される。記憶デイ
レクタ130はキヤツシユ100の下半分を獲得
し、記憶デイレクタ140はキヤツシユ100の
下半分を獲得する。各記憶デイレクタ130,1
40は、CASTT4共通レジスタ(両記憶デイレ
クタに共通−図示せず)中の“SD標識”を検査
することによつてキヤツシユ割当てを決める。キ
ヤツシユのサイズは、設備者によつて手動でセツ
トされGSSCIN汎用レジスタ(図示せず)中に記
録される。“記憶装置サイズ・スイツチ”によつ
て決められる。次に続く項目は、他の記憶デイレ
クタ及びキヤツシユのそれ自身の半部を考慮する
までもなく、各記憶デイレクタ及びキヤツシユの
それ自身の半部に属する。 キヤツシユは、記憶デイレクタによる利用が最
初に可能とされたときに、32K欠陥区域の有無を
点検される。キヤツシユが最初に利用可能とされ
たときには、2つの連続した欠陥のない1メガ・
バイト区域が“デイレクトリ区域”に割当てられ
る。そのような区域が検出されないときには、キ
ヤツシユは利用できない。各記憶デイレクタのた
めのサブシステムの最初及び最後のワードは、
RASと指称されるメンテナンス・プロシージヤ
のために予約される。分散インデツクス・テーブ
ル(SIT)110は、欠陥の無い一対のメガバイ
ト区域の第1の欠陥の無いメガバイト区域の終点
にアロケートされる。修正ビツト・マツプ114
はSIT110に先行してアロケートされる。各装
置のための非保持性ICC区域118は、修正ビツ
ト・アツプ114をアロケートするのに先行して
アロケートされる。各DASDのためのトラツク修
正(TMD)情報区域116は、非保持性ICC区
域118をアロケートするのに先行してアロケー
トされる。デイレクトリ160は、サブシステム
記憶装置100中の欠陥の無い一対のメガバイト
の第2メガバイトの最初の点から始まるように形
成される。 次に、バツフア112が、第1TMDテーブル
(第4表)の最初の点すなわち最上部から始まり、
キヤツシユ102のスタートすなわち最下位アド
レスに向けて延びるようにアロケートされる。最
初にアロケートされるバツフア112は、欠陥の
無い一対のメガバイトの第1メガバイト区域中に
常にアロケートされる。発生されたバツフア・ア
ロケーシヨン情報は、記憶デイレクタ130,1
40の制御記憶装置中のテーブルに維持される。 次に、レコード・スロツトSnが、バツフア1
12の最後にアロケートされたアドレスであるシ
ステム記憶装置100のアドレスから始まるよう
にアロケートされる。キヤツシユ102,104
の最初すなわち最も低いアドレスに到達すると、
キヤツシユの最下部すなわち最高アドレスヘアロ
ケーシヨンを折返し、デイレクト160の最高ア
ドレスへ向けて漸減するアドレスアロケートする
ことにより、アロケーシヨンが継続する。レコー
ド・スロツトが、サブシステム機能実行
(PERFORM SUBSYSTEM FUNCTION=
PSF)初期設定チヤネル・コマンド中に決められ
たレコード寸法比、すなわちそれだけの数の第1
サイズS1、これに続くそれだけの数の第2サイ
ズS2等に従つて与えられる。そして、このシー
ケンスはアロケーシヨンによつてデイレクトリの
最も高いアドレスに到達するまで行われる。各レ
コード・スロツトSnがアロケートされると、そ
の対応するデイレクトリ160のエントリがアロ
ケートされ初期設定される。従つて、レコード・
スロツトがデイレクトリの最も高いアドレスへ向
けて漸次低いアドレスにアロケートされるとき、
デイレクトリは割当てられたレコード・スロツト
Snへ向けて成長する。欠陥32K区域に入るすべて
のバツフア及びレコード・スロツトは欠陥とマー
クされる。すべての非欠陥レコード・スロツト
は、そのレコード・サイズの自由リストに配置さ
れる。 サブシステム機能実行(PSF)コマンド中で特
定された各レコード・サイズにそれぞれ別個にデ
イレクトリLRUリストが設けられる。デイレク
トリ・エントリは自由リストからレコードにアロ
ケートされ、次に続くデータ転送が完了したとき
に活動リスト上に最新使用(MRU)と記録され
る。自由デイレクトリ・エントリが無いときに
は、修正されておらず且つ使用中でない第1LRU
エントリが、キヤツシユされるべきレコードにア
ロケートされる。“キヤツシユ・ローデイング禁
止”が表示され且つ要求されたレコードがキヤツ
シユ100中に記憶されていないと、デイレクト
リ・エントリはMRUとされるかわりに、自由リ
ストに戻される。 廃棄(DISCARD)チヤネル・コマンド又は装
置による非活動化チヤネル・コマンドを処理する
とき、デイレクトリ160はアドレスされた
DASD用エントリをすべて無効にするために物理
的に走査される。デイレクトリの物理的走査によ
つて、最初のデイレクトリ・エントリから最後の
デイレクトリ・エントリへ向けて各エントリが検
査される。この走査は、アドレスされたDASDの
すべてのエントリが検出されるのを保証する。何
故なら、他のサブシステム動作が種々のハツシ
ユ・チエーン及びデイレクトリ・リストの順序を
変更する可能性があるからである。サブシステム
がチヤネルに接続されている間、現存のエントリ
が使用中にセツトされ且つ新たなエントリがアロ
ケートされ使用中にセツトされる。エントリに対
する使用中の標識は、キヤツシユ制御ブロツク
(CCB)中に保持される。所与時間においては1
つのエントリのみがDASDに対して使用中となり
得る。デイレクトリ・エントリは、もし可能なら
ば、データ転送と同時にMRUとされる。そうで
なければ、チエーン終結処理の間、処理終了
(DEVICE END)コマンドがホスト12に提供
された後、デイレクトリ・エントリがMRUとさ
れる。 分散インデツクス・テーブル(SIT)110
(第3A図)は、SITワードから成る。各SITワ
ードは、7個のSITエントリを含む。各SITワー
ドは、2個のデータ記憶バイトであり、エントリ
が有効ならば、デイレクトリ・エントリのアドレ
スを含む。0000のアドレスは、SITエントリのチ
エーンの終りを示す。 SITエントリに対してハツシユ(ハツシユイン
グによるアクセス)すると、記憶デイレクタ13
0は、シリンダ・アドレス(CC)に対して1シ
リンダ当りのヘツド数を乗算し、この積にヘツ
ド・アドレス(HH)を加算して第1の和を作り
出す。そして、装置オフセツト(装置オフセツト
は装置番号にSITワードの総数の1/16を乗じたも
の)が第1の和に加算され、第2の和が作り出さ
れる。第2の和は、SITワードの数で割られ、そ
の余りは、SITの開始点(最も低いアドレス)か
らSITワードと向い合つて並べられる。レコード
番号を7で割り、得られた結果を上記余りに加算
して、SITエントリ・アドレスを得る。 チヤネル・コマンド・セツトは、現在のチヤネ
ル・プログラムの性質並びに該チヤネル・プログ
ラムによつて参照されるデータ・ブロツクの将来
の使用の表示に関する情報をアタツチされたホス
ト12がサブシステム10へパスするのを可能に
するチヤネル・コマンド・ワード(CCW)を含
む。サブシステム10は、内部アルゴリズムを変
更するためにこれらの使用属性を使用できる。例
えば、エクステント決定コマンドのために一時記
憶サブモード属性を使用することは、この参照の
結果キヤツシユド・データ・アクセスではなく一
時記憶データ・アクセスとなることを示す。 (q) 入出力動作 ホスト・プロセツサ12のシステム制御プログ
ラム(SCP)中の入出力命令によつて開始される
入出力動作は、チヤネル14によつて、ホスト・
プロセツサ12の内部記憶装置から検索されたチ
ヤネル・コマンドによつて制御される。ホスト・
プロセツサ12が問題状態にある間、算術及び論
理動作(図示せず)が実行される。入出力動作の
場合、ホスト・プロセツサ12は監視状態になけ
ればならない。監視呼出命令が実行されるか又は
入出力割込が行われるとき、ホスト・プロセツサ
12は問題状態から監視状態に変更される。変更
時のシステムの状況がプログラム状況ワード
(PSW)中に記憶される。監視状態においては、
プロセツサ12は、システム・アーキテクチヤの
タイプに応じて異なつた態様で入出力命令を実行
する。フオーマツト及び得られる機能の詳細につ
いては、“IBMシステム/370動作原理(IBM
System/370 Principles of Operation=IBM
文書番号GA22−7000)”及び“IBMシステム/
370拡張アーキテクチヤ動作原理(IBM
System/370 Exteniled Architecture
Principles of Operation=IBM 文書番号SA22
−7085)”等のマニユアルを参照されたい。 ホスト・プロセツサ12中で入出力命令がうま
く実行された後、チヤネル14は命令によつてア
ドレスされた記憶デイレクタ130,140及び
DASD26,34を独立に選択し且つ管理する。
予約されたホスト・プロセツサ12の内部記憶位
置は、チヤネル14が動作を完了するのに必要な
これらの機能を行うことができるようにする命令
及び情報を含む。チヤネル・アドレス・ワード、
チヤネル・コマンド・ワード、チヤネル状況ワー
ド及びプログラム状況ワードについては、上記
IBM文書GA22−7000を参照されたい。動作要求
ブロツク及び命令応答ブロツクの詳細について
は、上記IBM文書SA22−7085を参照されたい。 データ、キー及びカウント読取チヤネル・コマ
ンドは、アドレスされた装置又はキヤツシユから
レコードのデータ、キー及びカウント区域をチヤ
ネルに転送させる。直接モードにおいては、コマ
ンド連鎖要求はない。レコード・アクセス・モー
ドにおいては、このチヤネル・コマンドは、シー
ク又はレコード配置チヤネル・コマンドに続く。
レコード・アクセス・モードにおいては、このコ
マンドはレコード・アクセス・モードのバツフ
ア・サブモードにおいて実行されなければならな
い。そうでなければ、終了状況中の装置チエツク
によつて拒絶される。 直接モードにおいて読取られるデータ、キー及
びカウント区域は、まるでキヤツシユが存在しな
いが如く次のレコードのそれである(ROは除
く)。 レコード・アクセス・モードにおいては、デー
タ、キー及びカウント読取コマンドは、レコー
ド・アクセス・モードのバツフア・サブモード中
で処理される。このコマンドが、バツフア・サブ
モード中で動作しないコマンド・チエーン中で受
取られると、終了状況中の装置チエツクで拒絶さ
れる。先行するエクステント決定コマンドからの
ブロツク・サイズは、アクセスされたレコードの
データ長及びキー長の和に8を加算した値に等し
いか又はこれをより大きくしなければならない。
そうでなければ、チヤネル・プログラムは、終了
状況中の装置チエツクで拒絶される。記憶デイレ
クタ130,140は、キヤツシユ中にアクセス
されたレコードに対する修正データ区域が存在す
るか否かを判断する。キヤツシユ中に修正データ
区域が存在すれば、カウント及びキー区域の内容
は、先行するレコード配置(LOCATE
RECORD)又はシーク・コマンドによつてアロ
ケートされたバツフアからチヤネルへ転送され、
データ区域の内容はキヤツシユ・スロツトからチ
ヤネルへ転送される。キヤツシユ中に修正データ
区域が存在しなければ、カウント、キー及びデー
タ区域の内容は、先行レコード配置又はシーク・
コマンドによつてアロケートされたバツフアから
チヤネルへ転送される。データ、キー及びカウン
ト読取コマンドのための処理が通常通り完了する
と、終了状況中でチヤネル終了及び装置終了が提
示される。 データ読取コマンドは、アドレスされたDASD
装置又はキヤツシユからチヤネルへレコードのデ
ータ区域の内容を転送させる。直接モードにおい
ては、コマンド連鎖要求は無い。レコード・アク
セス・モードにおいては、コマンドは、IPL読
取、レコード配置又はデータ読取コマンドから連
鎖していないと、終了状況中の装置チエツクによ
つて拒絶される。データ読取コマンドは、前のエ
クステント決定コマンドによつて決められ通り
に、レコード・キヤツシユ・サブモード又はバツ
フア・サブモードにおいて処理される。 直接モードにおいては、このコマンドによつて
読取られるデータ区域は、当該トラツクに存在す
る次のカウント区域に続くレコード(ROを除
く)のデータ区域、又は同じレコードのカウント
又はキー区域から連鎖されるレコードのデータ区
域である。例えば、データ読取コマンドが、カウ
ント・スペース、カウント読取、ID探索又はキ
ー種類探索コマンドから連鎖されると、データ区
域は前のコマンドによつてアクセスされたレコー
ドのそれである。 レコード・アクセス・モードにおいては、この
コマンドは、前のレコード配置コマンドによつて
決められたところに従つて、レコード・キヤツシ
ユ・サブモード又はバツフア・サブモードで処理
される。レコード・キヤツシユ・サブモードにお
いては、前のエクステント決定コマンドから与え
られるブロツク・サイズ値は、当該レコードのデ
ータ長に等しいか又はそれより大きくなければな
らない。そうでなければ、ブロツク・サイズは
DASD上のレコードのデータ長に等しいか又はそ
れより大きくなければならない。ブロツク・サイ
ズがアクセスされるべきレコードのデータ長に等
しいか又はこれより小さいと、チヤネル・プログ
ラムは終了状況中の装置チエツクで終了する。こ
のとき、データ区域の内容がキヤツシユ・レコー
ド・スロツトからチヤネルへ転送され、チヤネル
終了(CHANNEL END)及び装置終了
(DEVICE END)信号がチヤネル14に提示さ
れる。前のエクステント決定コマンドがキヤツシ
ユ・ローデイング禁止属性を示し且つ新たなレコ
ード・スロツトがこのアクセスのためにアロケー
トされると、当該レコード・スロツトはデアロケ
ートされる。前のエクステント決定コマンドがキ
ヤツシユ・ローデイング禁止属性を示し且つレコ
ードがキヤツシユ中に存在すると、最新使用
(LRU)アルゴリズム・リストのレコード・スロ
ツト位置が変更されずそのまま維持される。 バツフア・サブモードにおいては、前のエクス
テント決定コマンドから与えられるブロツク・サ
イズ値はアクセスされたレコードのデータ長に等
しいか又はこれより大きくなければならない。そ
うでなければ、チヤネル・プログラムは、終了状
況中の装置チエツクで終了する。記憶デイレクタ
130,140は、アクセスされたレコードのた
めの修正データ区域が存在するか否かを決定す
る。キヤツシユ中に修正データ区域が存在する
と、データ区域の内容はキヤツシユ・スロツトか
らチヤネルへ転送される。修正データ区域がキヤ
ツシユ中に存在しなければ、データ区域の内容は
前のレコード配置コマンドによつてアロケートさ
れたバツフアからチヤネル14へ転送される。 ホーム・アドレス読取コマンドは、ホーム・ア
ドレス区域の内容をアドレスされたDASDからホ
スト・プロセツサ12の主記憶装置へ転送する。
連鎖要求はない。直接モードにおいては、初期状
況信号を提示した後、ホーム・アドレスの5バイ
ト(FCCHH)がアドレスされたDASDからホス
ト・プロセツサ12へ転送される。動作の完了時
にはチヤネル終了及び装置終了信号がチヤネル1
4に与えられる。このコマンドの実行の間にデー
タ・オーバーラン又はデータ・チエツクが検出さ
れると、記憶デイレクタは、コマンド再試行によ
つて回復を図ろうとする。コマンド再試行がうま
くいかないと、チヤネル終了、装置終了及び装置
チエツク状況信号がチヤネル14に与えられる。
レコード・アクセス・モードにおいては、このコ
マンドは状況信号中の装置チエツク、チヤネル終
了及び装置信号によつて拒絶される。 IPL読取コマンドによつて、アドレスされた
DASDはシリンダ0及びヘツト0をシークし、レ
コード1のデータ区域を読取る。直接モードにお
いては、同じチエーン中でIPL読取コマンドの前
にカウント・スペース又はフアイル・マスク・セ
ツト・コマンドがくることはできない。レコー
ド・アクセス・モードにおいては、このコマンド
の後にはデータ読取コマンドが続かなければなら
ない。両コマンドが提示されなければならず、同
じコマンド・チエーン中に別のコマンドが入り込
むことは許されない。 コマンド・チエーンがレコード・アクセス・モ
ードで動作している時、このコマンドはレコー
ド・アクセス・モードのバツフア・サブモードで
実行される。初期状況信号を与える前に、記憶デ
イレクタはこのコマンド・チエーンの間バツフア
を使用にアロケートする。シリンダ0及びヘツド
0におけるレコード0に続く最初の2つのレコー
ドの内容が読取られてバツフアに与えられる。レ
コード0に続く最初のレコードのためのデータ区
域の内容は、チヤネルへ転送される。チヤネル・
プログラムの完了時に、チヤネル終了及び装置終
了信号がチヤネルに与えられる。 データ及びキー読取コマンドによつて、レコー
ドのデータ及びキー区域の内容が装置又はキヤツ
シユからチヤネルへ転送される。直接モードにお
いては、コマンド連鎖要求がある。レコード・ア
クセス・モードにおいては、このコマンドはレコ
ード・アクセス・モードのバツフア・サブモード
において実行され、レコード配置コマンドから
(これに続いて)連鎖される。そうでなければ、
このコマンドは終了状況中の装置チエツクで拒絶
される。直接モードにおいては、このコマンドに
よつて読取られるキー及びデータ区域は、該トラ
ツク上に存在する次のカウント区域に続くレコー
ド(ROを除く)のキー及びデータ区域か、又は
同じレコードのカウント区域から連鎖されたチヤ
ネル・コマンド・ワード(CCW)によつて特定
されたレコードのキー及びデータ区域である。例
えば、データ及びキー読取コマンドがカウント読
取、カウント・スペース、又はID種類探索コマ
ンドから連鎖されると、キー及びデータ区域は前
のコマンドによつてアクセスされたレコードのそ
れである。レコード・アクセス・モードにおいて
は、前のエクステント決定コマンドから与えられ
るブロツク・サイズは、アクセスされたレコード
のキー長及びデータ長の和に等しいか又はこれに
より大きくなければならない。そうでなければ、
チヤネル・プログラムは、終了状況中の装置チエ
ツクによつて拒絶される。カウント、キー及びデ
ータ・フイールドの内容は、アドレスされた
DASDからバツフア112へ転送される。記憶デ
イレクタ130,140は、アクセスされたレコ
ードのための修正データ区域がDASD中に存在す
るか否かを判断する。キヤツシユ中に修正データ
区域が存在すれば、キー区域の内容は、前のレコ
ード配置コマンドによつてアロケートされたバツ
フアからチヤネルへ転送され、データ区域の内容
はキヤツシユ・スロツトからチヤネルへ転送され
る。キヤツシユ中に修正データ区域が存在しなけ
れば、キー及びデータ区域の内容が、前のレコー
ド配置コマンドによつてアロケートされたバツフ
アからチヤネルへ転送される。データ及びキー読
取コマンドのための処理が通常通り完了すると、
終了状況においてチヤネル終了及び装置終了信号
が与えられる。 データ・キー及びカウント(CKD)多重読取
コマンドによつて、次のレコード(R0除外)及
び当該トラツクの残りのすべてのレコードが、ア
ドレスされた装置からチヤネルへ転送される。連
鎖要求は存在しない。初期状況は、通常ゼロであ
る。当該トラツクの最後のレコードの読取が完了
した後、チヤネル終了及び装置終了信号が与えら
れる。直接モードにおいては、このコマンドは、
デイスクの1回の回転の間に1つのトラツクのす
べてのレコードを読取る手段を与える。これは、
レコードを読取つて主記憶装置の隣接した記憶位
置へ与えるCKD読取コマンド・チエーンを実行
するのと似ている。トラツクの最後のレコードの
カウント・フイールドを通過した後、CKD多重
読取コマンドが発生すると、チヤネル終了及び装
置終了状況信号が与えられ、データは転送されな
い。読取られるべきバイトの実際の数はおそらく
知られていないので、バイト・カウントは装置の
トラツク容量より大きくなるであろう。チヤネル
状況ワード(CSW)残余カウントは、CCWカウ
ントとともに、いくつのバイトが実際に読取られ
たのかを判断するために使用できる。トラツクの
開始点では、CKD多重読取コマンドをスタート
させる必要はない。例えば、1個のトラツクが50
個のレコードを有し且つレコード26のキー・フイ
ールドを読取ることができないとすると、次のチ
エーンが最初の25個のレコードの読取を行わせ且
つレコード26のキー区域のエラーを検出させる。 ホーム・アドレス読取(READ
HOMEADDRESS) R0読取(READ R0) CKD多重読取(READ MULTIPLE CKD) 主記憶装置へ既に転送されたレコード、CCW
カウント、CSW残余カウント及び感知情報の分
析により、次のチエーンの構成が可能になる。 ID探索(レコード26) TIC*−8 データ読取 CKD多重読取 このコマンド・チエーンは、レコード26のデー
タ及び該トラツクの次に続くすべてのレコードの
回復を可能にする。唯一の非回復データは、レコ
ード26のキー区域のそれである。この動作の完了
後にチヤネル終了及び装置終了信号がチヤネルに
与えられる。コマンド再試行は単一レコードのみ
に働くので、最初のレコードが処理された後、特
定のエラーは多重レコード・モードで再試行され
ない。このコマンドの使用は、このコマンドを実
行することがエラー回復能力を低減させても価値
がある場合に限られる。レコード・アクセス・モ
ードにおいては、このコマンドは、状況信号中の
装置チエツク、チヤネル終了及び装置終了信号に
よつて拒絶される。 レコード・ゼロ(R0)読取コマンドは、レコ
ード0のカウント、キー及びデータ・バイトを装
置からチヤネルへ転送させる。直接モードにおい
ては、コマンド連鎖要求が存在する。レコード・
アクセス・モードにおいては、このコマンドはレ
コード・アクセス・モードのバツフア・サブモー
ドで実行されなければならず、またレコード配置
コマンドから連鎖されなければならない。そうで
なければ、該コマンドは終了状況において装置チ
エツクによつて拒絶される。直接モードにおいて
は、レコード0、トラツク記述子レコードは、通
常のカウント、キー及びデータ・フオーマツトを
有し、通常のデータ・レコードとして使用でき
る。しかし、レコード0は、通常、非使用機能
(フアンクシヨン)用にオペレーテイング・シス
テムによつて予約される。このコマンドの実行の
間、記憶デイレクタは、ギヤツプG1の初めから
終りまでのクロツク、インデツクス、ホーム・ア
ドレス及びギヤツプG2を探索し、R0のカウン
ト、キー及びデータ区域をチヤネルへ転送する。
ホーム・アドレス読取又はホーム・アドレス探索
コマンドから連鎖されたR0読取コマンドは、直
ちに実行され、インデツクスの探索が行われるこ
とはない。カウント、キー及びデータ区域のそれ
ぞれの妥当性は、各区域に続く訂正コード・バイ
トによつて検査される。このコマンドの実行の間
にデータ・オーバーラン又はデータ・チエツクが
検出されると、記憶デイレクタはコマンド再試行
によつて回復を行おうとする。コマンド再試行が
うまくいかないと、チヤネル終了、装置終了及び
装置チエツク信号がチヤネルに提供される。レコ
ード・アクセス・モードにおいては、レコード0
は8バイト・データ区域が次に続く8バイト・カ
ウント区域から成らなければならない。レコード
0の内容は、前のレコード配置コマンドによつて
アロケートされたバツフアからチヤネルへ転送さ
れる。データ転送の完了時に、チヤネル終了及び
装置終了信号がチヤネルへ提供される。レコード
0読取コマンドが8バイト・カウントと8バイ
ト・データ区域の組合せから成るときには、この
コマンドは終了状況における装置チエツクによつ
て拒絶される。 書込コマンドは、主記憶装置からデイスク記憶
装置へデータを転送させる。データは、ホスト・
プロセツサ12の主記憶装置から、チヤネル・コ
マンド・ワードのデータ・アドレス・フイールド
中に示されたアドレスから始まつて小さい順に取
り出される。直接モードにおいては、すべての標
識カウント、キー及びデータ・アーキテクチヤ書
込コマンドが受諾され、それらの通常のフアンク
シヨンが実行される。レコードがキヤツシユ中に
存在するか否かを判断するため試行は行われな
い。直接モードにおいては、レコードはキヤツシ
ユ100中に記憶されることはない。直接モード
動作においては、チヤネル14から装置26等へ
データが直接転送される。 レコード・アクセス・モードにおいては、レコ
ード0書込み、データ、キー及びカウント書込
み、更新データ書込み、並びに更新キー及びデー
タ書込みコマンドのみ受諾される。非フオーマツ
ト化書込コマンドは、現在のキー及びデータ区域
の内容を変更させるが、現在レコードの数又は長
さを変更させることはできない。フオーマツト化
書込コマンドは、レコードの長さを増加、削減又
は変更することによりトラツクのフオーマツトを
変更する。これらのコマンドは、特定のフアイ
ル・マスク設定を必要とする。カウント、キー及
びデータ(CKD)書込コマンドは、ホスト・プ
ロセツサ12の主記憶装置から完全なレコードの
転送を行わせ、アドレスされたDASDに書込ませ
る。直接モードにおいては、このコマンドは、カ
ウント、キー及びデータ書込コマンド若しくはレ
コード0書込コマンドから、又はすべてのバイト
が等しいことが検出されたキー同等探索又は、
ID同等探索コマンドから連鎖されなければなら
ない。そうでないと、このコマンドは、その状況
中の装置チエツクによつて拒絶される。データ読
取、キー及びデータ読取、データ書込、又はキー
及びデータ書込コマンドは、ID同等探索コマン
ドとCKD書込コマンドとの間に挿入できる。デ
ータ読取又はデータ書込コマンドは、キー同等探
索コマンドとCKD書込コマンドとの間に挿入で
きる。レコード・アクセス・モードにおいては、
このコマンドはチヤネルからの接続解除を行わせ
ることができるが、そうでないようにすることも
できる。このコマンドは、フオーマツト書込サブ
コマンド及び0という探索修飾子を特定したレコ
ード配置コマンドから、又は別のカウント、キー
及びデータ・書込コマンドから連鎖されなければ
ならず、レコード配置コマンドの定義域内で受取
られなければならない。これらの条件が満たされ
ないと、該コマンドは終了し、終了状況中で装置
チエツク信号が与えられる。 直接モードにおいては、レコードのカウント、
キー及びデータ区域の内容が、ホスト・プロセツ
サ12の内部主記憶装置から転送され、アドレス
された装置26外に書込まれる。転送されるデー
タの最初の8バイトは、カウント区域、すなわ
ち、シリンダ番号(2バイト)、ヘツド番号(2
バイト)、レコード番号(1バイト)、キー長(1
バイト)及びデータ長(2バイト)である。主記
憶装置から送られる残りのデータは、キー長
(KL)及びデータ長(DL)バイトにセツトされ
る値によつて特定されるキー及びデータ区域に書
込まれる。CCWのカウント・フイールドは、転
送されるべきバイトの総数(8+KL+DL)を特
定する。カウントが特定されたものより小さけれ
ば、レコードの剰余にゼロが書込まれる。訂正コ
ード・バイトは、カウント区域の終点、キー区域
の終点及びデータ区域の終了に書込まれる。
CKD書込コマンドが1つのチエーン中の最後の
フオーマツト書込コマンドならば、該トラツクの
残りの部分は消去される。別のフオーマツト書込
以外のコマンドがCKD書込コマンドから連鎖さ
れていると、該コマンドはトラツクが消去された
後に実行される。データ転送が完了した後、チヤ
ネル終了及び装置終了信号が供給される。 レコード・アクセス・モードにおいては、この
コマンドは、レコード・アクセス・モードのバツ
フア・サブモードで実行されなければならない。
更新されるべきレコードのカウント、キー及びデ
ータ区域の内容は、前のレコード配置コマンドに
よつてアロケートされたバツフアへチヤネルから
転送される。カウント・フイールドのキー長部及
びデータ長部中の値の和は、前のエクステント決
定コマンドから与えられるブロツクサイズ値と比
較される。データ長フイールドもまたゼロでない
値か否かチエツクされる。キー長及びデータ長の
和がブロツクサイズに等しくないか又はデータ長
が零に等しいと、チヤネル・プログラムは終了状
況中の装置チエツクによつて終了する。このコマ
ンドがレコード配置コマンドの定義域中の最後の
カウント、キー及びデータ書込コマンドでない
と、バツフアへのデータ転送の完了に続いてチヤ
ネル終了及び装置終了信号が供給される。このコ
マンドがレコード配置コマンドの定義域の最後の
カウント、キー及びデータ書込コマンドならば、
バツフアへのデータ転送の完了に続いてチヤネル
終了信号が提供される。このようにして、バツフ
ア中のすべてのレコードがDASDに転送される。
探索されたレコードのキー及びデータ区域は、書
込開始前にスキツプされる。そして、チヤネルに
装置終了信号が供給される。カウント、キー及び
データ書込コマンドによつて付勢されたトラツク
用のすべてのキヤツシユ・エントリーは無効にさ
れる。カウント、キー及びデータ書込コマンドに
よつて付勢されたトラツク用の修正レコードは、
前のレコード配置コマンド処理の間にデステージ
される。 レコード0書込コマンドにより、レコード0の
カウント、キー及びデータ区域の内容が主記憶装
置から転送され、装置に書込まれる。R0書込コ
マンドの前には、レコード0の書込みを許すフア
イル・マスク・セツト又はエクステント決定コマ
ンドがなければならない。直接モードにおいて
は、このコマンドは、4つのバイトについて等し
いことを検出したレコード配置コマンド又はホー
ム・アドレス書込コマンドから連鎖されなければ
ならない。レコード・アクセス・モードにおいて
は、このコマンドは、フオーマツト書込サブコマ
ンド及びホーム・アドレス探索動作を特定するレ
コード配置コマンドから連鎖されなければならな
い。 直接モードにおいては、レコード0、トラツク
記述子レコードは、常にホーム・アドレス区域に
続く該トラツク上の最初のレコードである。R0
は、通常のデータ・レコードとして使用できる
が、関連するトラツク情報を記憶するためにオペ
レーテイング・システムによつて常に予約されて
いる。転送されるデータの最初の8バイトは、カ
ウント区域である。すなわち、シリンダ番号(2
バイト)、ヘツド番号(2バイト)、レコード番号
(1バイト)、キー長(1バイト)及びデータ長
(2バイト)である。主記憶装置から送られる残
りのデータは、キー長(KL)及びデータ長
(DL)バイト中にセツトされる値によつて特定さ
れるキー及びデータ区域に書込まれる。CCWの
カウント・フイールドは、転送されるべきバイト
の総数を特定する。カウントが(8+KL+DL)
より小さければ、ゼロがレコードの残りの部分に
書込まれる。訂正コード・バイトは、カウント区
域の終りの部分、キー区域の終りの部分及びデー
タ区域の終りの部分に書込まれる。R0書込コマ
ンドが1つのチエーン中の最後のフオーマツト書
込コマンドであるときには、トラツクの残りの部
分が消去される。別のフオーマツト書込コマンド
以外のコマンドがR0書込から連鎖されると、こ
のコマンドはトラツクが消去された後に実行され
る。次のインデツクスを通過するある時点まで再
接続は行われないので、次のコマンドの方針は定
まらない。レコード0は、通常、デイスク製造者
によつてトラツク上に書込まれる。このコマンド
の使用は、欠陥トラツクを示し且つ別のトラツク
を割当てることに限定される。ユーテイリテイ
ー・プログラムは、これらのフアンクシヨンを実
行するのに利用可能である。IBMオペレーテイ
ング・システムによつて適切な動作を行うには、
キー長が0で、データフイールドが8バイトであ
る必要がある。 レコード・アクセス・モードにおいては、レコ
ード0書込コマンドはレコード・アクセス・モー
ドのバツフア・サブモードで実行されなければな
らない。更新されるべきレコード0のカウント及
びデータ区域は、前のレコード配置コマンドによ
つてアロケートされたバツフアへチヤネルから転
送される。レコード0カウントは、8バイト・カ
ウント区域及び8バイト・データ区域から成らな
ければならない。カウント・フイールドは、キー
区域の長さが0でデータ区域が8バイトであるこ
とを示さなければならない。これらの条件が満た
されないと、終了状況において装置チエツクによ
つてコマンドが拒絶される。バツフア112への
データ転送の完了に続いてチヤネル終了信号が供
給される。バツフア112に記憶されているレコ
ード0の記録は、次に、アドレスされたDASDへ
転送される。トラツクの残りの部分は消去され
る。レコード0書込コマンドによつて付勢された
トラツク用のすべてのキヤツシユ・エントリーは
無効とされ、装置終了信号がチヤネルに供給され
る。 ホスト・プロセツサ12の内部主記憶装置に記
憶されている特定のデータは、更新データ書込コ
マンドによつて、チヤネル14からレコードのデ
ータ区域へ転送される。更新データ書込コマンド
は、データ書込サブコメントを特定したレコード
配置コマンド又は別の更新データ書込コマンドか
ら連鎖されなければならず、該レコード配置コマ
ンドの定義域中になければならない。コマンド・
チエーンがレコード・キヤツシユ・サブモードで
動作するとともに、非保持性アクセスが事実上コ
マンド・チエーンへ向けられ且つ非保持特性デー
タがアドレスされた装置のために付勢されると、
キヤツシユへのデータ転送の完了に続いて、チヤ
ネル終了及び装置終了信号が供給される。コマン
ド・チエーンがレコード・キヤツシユ・サブモー
ドで動作しているとともに、非保持性データが事
実上コマンド・チエーンに向けられていないか又
は非保持性データがアドレスされた装置に対して
消勢されていれば、キヤツシユへのデータ転送の
完了に続いてチヤネル終了信号が供給される。
DASDへのデータ転送の完了に続いて装置終了信
号が供給される。コマンド・チエーンがバツフ
ア・サブモードで動作しているとともに、更新デ
ータ書込コマンドがレコード配置コマンドの定義
域中の最後のコマンドでなければ、キヤツシユへ
のデータ転送の完了に続いてチヤネル終了及び装
置終了信号が供給される。コマンド・チエーンが
バツフア・サブモードで動作しているとともに、
更新データ書込コマンドがレコード配置コマンド
の定義域中の最後のコマンドならば、キヤツシユ
へのデータ転送が完了した後、チヤネル終了信号
が供給される。当該定義域中のすべてのレコード
がDASDへ転送された後、装置終了信号が供給さ
れる。 直接モードにおいては、このコマンドは状況信
号中の装置チエツク、チヤネル終了及び装置終了
信号によつて拒絶される。レコード・アクセス・
モードにおいては、更新データ書込コマンドは前
のエクステント決定コマンドによつて決められた
ところに従つて、バツフア・サブモード又はレコ
ード・キヤツシユ・サブモードで実行される。レ
コード・キヤツシユ・サブモードにおいては、前
のエクステント決定コマンドから与えられたブロ
ツクサイズは更新されるべきレコードのデータ長
に等しくなければならない。レコードがキヤツシ
ユ中に存在すれば、ブロツクサイズは当該レコー
ドのデータ長に等しくなければならない。そうで
なければ、ブロツクサイズはDASDのレコードの
データ長に等しくなければならない。ブロツクサ
イズが更新されるべきレコードのデータ長に等し
くなければ、チヤネル・プログラムは終了状況中
の装置チエツクにより終了する。データはチヤネ
ル14からキヤツシユ・エントリへ転送される。
前のエクステント決定コマンドがキヤツシユ・ロ
ーデイング禁止属性を示し且つ新レコード・スロ
ツトがこのアクセスにアロケートされると、レコ
ード・スロツトがデアロケートされる。前のエク
ステント決定コマンドがキヤツシユ・ローデイン
グ禁止属性を示し且つ新たなレコード・スロツト
がこのアクセスにアロケートされていないと、
LRUのレコード・スロツト位置は変更されるこ
となくそのまま維持される。バツフア・サブモー
ドにおいては、前のレコード配置コマンドによつ
てアロケートされたバツフア112へチヤネルか
らデータが転送される。前のエクステント決定コ
マンドから与えられるブロツクサイズは、更新さ
れるべき各レコードのデータ長に等しくなければ
ならない。そうでないと、チヤネル・プログラム
は装置チエツクによつて終了し、装置終了信号が
チヤネルに供給される。レコード配置コマンドの
定義域中の更新データ書込コマンドによつてデー
タが転送されたすべてのキヤツシユ・エントリ
は、無効にされる。 更新キー及びデータ書込コマンドに従つて、ホ
スト・プロセツサ12中に記憶された特定のデー
タが、アドレスされた装置のレコードのキー及び
データ区域へチヤネル14を介して転送される。
更新キー及びデータ書込コマンドは、データ書込
サブコマンドを特定したレコード配置コマンド又
は別の更新キー及びデータ書込コマンドから連鎖
されなければならず、また当該レコード配置コマ
ンドの定義域中になければならない。 レコード・アクセス・モードにおいては、この
コマンドはレコード・アクセス・モードのバツフ
ア・サブモードで実行されなければならない。そ
うでなければ、当該コマンドは終了状況の装置チ
エツクで拒絶される。更新キー及びデータ書込コ
マンドがレコード配置コマンドの定義域中に存在
すれば、このコマンドのためにキー及びデータ・
フイールドの間にデータ連鎖は使用すべきでな
い。データがバツフア区域に書込まれるとき、キ
ー・フイールドとデータ・フイールドとの間の境
界は知られていない。従つて、サブシステム10
は、データ連鎖動作を実行する時間をチヤネル・
ハードウエアに与えることができるようにキー・
フイールドとデータ・フイールドとの間に間をお
くことはできない。これらの条件下でデータ連鎖
が行われると、データ・オーバーランが生じる。
レコード・アクセス・モードで動作しているとき
には、制御コマンドのパラメータのためにもデー
タ連鎖は使用できない。ある制御コマンドのため
の転送メカニズムとしてデータ・ストリーム・メ
カニズムを使用できる。このメカニズムを使用す
るとデータ連鎖が禁止される。 直接モードにおいては、このコマンドは、状況
中の装置チエツク、チヤネル終了及び装置終了に
よつて拒絶される。レコード・アクセス・モード
においては、更新キー及びデータ書込コマンドが
バツフア・サブモードで動作していないコマン
ド・チエーン中で受取られると、該コマンドは終
了状況の装置チエツクで拒絶される。更新される
べきレコードのキー及びデータ区域の内容は、前
のレコード配置コマンドによつてアロケートされ
たバツフアへチヤネルから転送される。このコマ
ンドが、レコード配置コマンドの定義域中の最後
の更新キー及びデータ書込コマンドでなければ、
バツフアへのデータ転送の完了に続いてチヤネル
終了及び装置終了信号が供給される。このコマン
ドが、レコード配置コマンドの定義域中の最後の
更新キー及びデータ書込コマンドだと、バツフア
へのデータ転送の完了に続いてチヤネル終了信号
が供給される。このようにして、バツフア中のす
べてのレコードがDASDに転送される。前のエク
ステント決定コマンドから与えられるブロツクサ
イズは、更新されるべき各レコードのキー長及び
データ長の和に等しくなければならない。そうで
なければ、チヤネル・プログラムは装置チエツク
によつて終了する。レコード配置コマンドの定義
域中の更新キー及びデータ書込コマンドによつて
データが転送されたすべてのキヤツシユ・エント
リーは無効とされ、装置終了信号がチヤネルに供
給される。 (r) 参考文献 上記説明により当業者は本発明を理解できると
考えられるが、理解をより一層深くするのに有益
と考えられる文献を以下に列記しておく。 (i) IBMシステム/370動作原理(IBM
System/370 Principles of Operation)、
IBM文書番号GA22−7000 (ii) IBMシステム/370拡張アーキテクチヤ動作
原理(IBM System/370 Extended
Architecture Principles of Operation)、
IBM文書番号SA22−7085 (iii) IBM3880記憶制御装置、モデル1,2,3
及び4(IBM3880 Storage Control Unit
Models1,2,3and4)、IBM参考マニユアル
GA26−1661 (iv) IBM3880ダイレクト記憶装置説明書及びユ
ーザーズ・ガイド(IBM3880 Direct Accesu
Storage Description and Usevs Guide)、
IBM文書番号GA26−1664 (v) トランザクシヨン処理フアシリテイ・バージ
ヨン2(Transaction Processing Facility
Version2=TPF−2)IBM一般情報マニユア
ルGH20−6200 (vi) IBMシステム/360及びシステム370制御装
置用I/Oインターフエース・チヤネルのオリ
ジナル製造者用情報(I/O Interface
Channel to Control Cluit Original
Equipment Manufacturers Intormation)、
IBM文書番号GA22−6974−4 (vii) 高性能オプシヨン付VM/SP一般情報マニ
ユアル(General Inforwation Manual,
VM/SP with High Performance Option)、
IBM文書番号GC19−6221 (viii) スチユーデイント・マニユアルS/370及び
拡張アーキテクチヤ;多重仮想記憶装置/シス
テム・プロダクト(Student Manual S/
370and Extended Architecture;Muliuple
Virtual Storage/Systems Product)、IBM
文書番号SR23−5470 F 発明の効果 以上の説明から明らかなように、本発明は、フ
ロント記憶装置に記憶されたレコードの第1バー
ジヨンがバツク記憶装置に記憶された上記レコー
ドの第2バージヨンに対して修正されているか否
かを、バツク記憶装置中の各装置の各トラツクの
各レコード毎に示す手段を有するものであるか
ら、レコードの最新更新バージヨンを転送するよ
うにレコード指示によるデータ・アクセスを行う
ことができる。
【図面の簡単な説明】
第1図は本発明の具体的実施例である周辺サブ
システムを示すブロツク図。第2図は本発明を適
用可能な情報取扱装置を示すブロツク図。第3A
図は本発明に従つて構成されたキヤツシユ記憶装
置のマツプを示す説明図。第3B図は本発明に従
つて構成された制御記憶装置のマツプを示す説明
図。第4図は本発明によるキヤツシユ中のレコー
ド・スロツト割当てのマツプを示す説明図。第5
図は本発明の実施例の動作を示すフローチヤート
である。 16……制御装置、26,28,32,34,
36,38……DASD、100……サブシステム
記憶装置、102,104……キヤツシユ区画、
106,108……制御データ区域、130,1
40……記憶デイレクタ。

Claims (1)

  1. 【特許請求の範囲】 1 フロント記憶装置と、バツク記憶装置と、前
    記フロント及びバツク記憶装置に接続されたプロ
    グラマブル処理装置と、この処理装置からのコマ
    ンドに応じて前記フロント記憶装置と前記バツク
    記憶装置との間のデータ転送を行わせるためにこ
    れらの記憶装置及び前記プログラマブル処理装置
    に接続されたデータ転送手段と、前記プログラマ
    ブル処理装置からのコマンドに応じて前記データ
    転送手段と自らとの間のデータ転送を行うために
    前記データ転送手段及び前記プログラマブル処理
    装置に接続されたアタツチメント手段と、前記プ
    ログラマブル処理装置にプログラミング標識信号
    を供給し前記プログラマブル処理装置によつて供
    給された制御信号を記憶しこのように記憶した制
    御信号を前記プログラマブル処理装置に供給する
    制御記憶手段とを備え、前記バツク記憶装置は1
    個又は複数個のデバイスを有し、各デバイスはそ
    れぞれ複数個のアドレス可能なトラツクを有し、
    これらのトラツクが種々のサイズのレコードに分
    割可能である階層記憶装置において、 各デバイス毎に少なくとも1つの保管領域を有
    しアドレス指定されたトラツク中の全ての修正さ
    れたレコードを指示する第1のテーブルと、各デ
    バイスの各トラツク毎に少なくとも1つの保管領
    域を有し修正されたレコードが前記フロント記憶
    装置に存在するか否かをトラツク毎に指示する第
    2のテーブルと、前記フロント記憶装置のレコー
    ド記憶位置を指示するエントリを複数個有する第
    3のテーブルとを含み、前記バツク記憶装置の各
    デバイスの各トラツクの各レコード毎に指示する
    指示手段と、 各デバイス毎に少なくとも1つの保管領域を有
    し前記第2のテーブルに保管された情報を使用し
    て作成されたアドレス指定されたデバイス中に修
    正されたレコードを書き込むための指令を保管す
    る第4のテーブルを含み、前記バツク記憶装置へ
    のレコードのデステージを制御する転送制御手段
    と、 を具備することを特徴とする階層記憶装置。
JP61110992A 1985-06-28 1986-05-16 階層記憶装置 Granted JPS626325A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/749,897 US4875155A (en) 1985-06-28 1985-06-28 Peripheral subsystem having read/write cache with record access
US749897 1991-08-26

Publications (2)

Publication Number Publication Date
JPS626325A JPS626325A (ja) 1987-01-13
JPH0575134B2 true JPH0575134B2 (ja) 1993-10-19

Family

ID=25015671

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61110992A Granted JPS626325A (ja) 1985-06-28 1986-05-16 階層記憶装置

Country Status (3)

Country Link
US (1) US4875155A (ja)
EP (1) EP0205965A3 (ja)
JP (1) JPS626325A (ja)

Families Citing this family (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4779189A (en) * 1985-06-28 1988-10-18 International Business Machines Corporation Peripheral subsystem initialization method and apparatus
US4972316A (en) * 1987-03-30 1990-11-20 International Business Machines Corporation Method of handling disk sector errors in DASD cache
JP2718031B2 (ja) * 1987-07-17 1998-02-25 株式会社日立製作所 履歴情報取得方法
JPS6458013A (en) * 1987-08-20 1989-03-06 Ibm Method and data processing system for guaranteeing large area identification and management of data memory
US5214769A (en) * 1987-12-24 1993-05-25 Fujitsu Limited Multiprocessor control system
US4974156A (en) * 1988-05-05 1990-11-27 International Business Machines Multi-level peripheral data storage hierarchy with independent access to all levels of the hierarchy
US5018063A (en) * 1988-12-05 1991-05-21 International Business Machines Corporation Method for reducing cross-interrogate delays in a multiprocessor system
US5359713A (en) * 1989-06-01 1994-10-25 Legato Systems, Inc. Method and apparatus for enhancing synchronous I/O in a computer system with a non-volatile memory and using an acceleration device driver in a computer operating system
US5072378A (en) 1989-12-18 1991-12-10 Storage Technology Corporation Direct access storage device with independently stored parity
US5276860A (en) * 1989-12-19 1994-01-04 Epoch Systems, Inc. Digital data processor with improved backup storage
US5276867A (en) * 1989-12-19 1994-01-04 Epoch Systems, Inc. Digital data storage system with improved data migration
US5218695A (en) * 1990-02-05 1993-06-08 Epoch Systems, Inc. File server system having high-speed write execution
US5404482A (en) * 1990-06-29 1995-04-04 Digital Equipment Corporation Processor and method for preventing access to a locked memory block by recording a lock in a content addressable memory with outstanding cache fills
US5404483A (en) * 1990-06-29 1995-04-04 Digital Equipment Corporation Processor and method for delaying the processing of cache coherency transactions during outstanding cache fills
US5146576A (en) * 1990-08-31 1992-09-08 International Business Machines Corporation Managing high speed slow access channel to slow speed cyclic system data transfer
US5235692A (en) * 1990-08-31 1993-08-10 International Business Machines Corporation Disk rotational position controls for channel operations in a cached peripheral subsystem
US5544347A (en) * 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US5208911A (en) * 1990-09-28 1993-05-04 Eastman Kodak Company Method and apparatus for storing and communicating a transform definition which includes sample values representing an input/output relation of an image transformation
US5644786A (en) * 1990-11-08 1997-07-01 At&T Global Information Solutions Company Method for scheduling the execution of disk I/O operations
US5341485A (en) * 1991-05-07 1994-08-23 International Business Machines Corporation Multiple virtual address translation per computer cycle
US5367698A (en) * 1991-10-31 1994-11-22 Epoch Systems, Inc. Network file migration system
JP3451099B2 (ja) * 1991-12-06 2003-09-29 株式会社日立製作所 外部記憶サブシステム
US5283884A (en) * 1991-12-30 1994-02-01 International Business Machines Corporation CKD channel with predictive track table
US5418921A (en) * 1992-05-05 1995-05-23 International Business Machines Corporation Method and means for fast writing data to LRU cached based DASD arrays under diverse fault tolerant modes
US5475834A (en) * 1992-10-26 1995-12-12 International Business Machines Corporation Integration of migration level two and backup tape processing using multiple inventory entries
JP3422370B2 (ja) * 1992-12-14 2003-06-30 株式会社日立製作所 ディスクキャッシュ制御装置
US5404500A (en) * 1992-12-17 1995-04-04 International Business Machines Corporation Storage control system with improved system and technique for destaging data from nonvolatile memory
US5530829A (en) * 1992-12-17 1996-06-25 International Business Machines Corporation Track and record mode caching scheme for a storage system employing a scatter index table with pointer and a track directory
JP3737528B2 (ja) * 1993-06-30 2006-01-18 インテル・コーポレーション フラッシュ・メモリ・デバイス、それのページ・バッファー資源の割り当てをする方法および回路
DE4423559A1 (de) * 1993-11-09 1995-05-11 Hewlett Packard Co Datenverbindungsverfahren und Vorrichtung für Multiprozessor-Computersysteme mit gemeinsamem Speicher
US5542066A (en) * 1993-12-23 1996-07-30 International Business Machines Corporation Destaging modified data blocks from cache memory
US5546575A (en) * 1994-05-23 1996-08-13 Basil E. Potter & Associates, Inc. Encoding method for compressing a tabular database by selecting effective compression routines for each field and structure of partitions of equal sized records
US5636359A (en) * 1994-06-20 1997-06-03 International Business Machines Corporation Performance enhancement system and method for a hierarchical data cache using a RAID parity scheme
JP2856386B2 (ja) * 1994-10-26 1999-02-10 松下電器産業株式会社 色彩調整装置及びその方法
US6009498A (en) * 1995-02-16 1999-12-28 Fujitsu Limited Disk control unit for holding track data in cache memory
US6101574A (en) * 1995-02-16 2000-08-08 Fujitsu Limited Disk control unit for holding track data in non-volatile cache memory
JPH08221445A (ja) * 1995-02-20 1996-08-30 Hitachi Ltd データ検索方法
US6578123B1 (en) * 1995-04-14 2003-06-10 Texas Instruments Incorporated Relocatable overland peripheral paging
US5867685A (en) * 1995-08-29 1999-02-02 Storage Technology Corporation System and method for sequential detection in a cache management system
US6122642A (en) * 1996-01-18 2000-09-19 Sabre Inc. System for propagating, retrieving and using transaction processing facility airline computerized reservation system data on a relational database processing platform
US6714945B1 (en) 1995-11-17 2004-03-30 Sabre Inc. System, method, and article of manufacture for propagating transaction processing facility based data and for providing the propagated data to a variety of clients
US5761677A (en) * 1996-01-03 1998-06-02 Sun Microsystems, Inc. Computer system method and apparatus providing for various versions of a file without requiring data copy or log operations
EP0832464A1 (en) * 1996-01-18 1998-04-01 The Sabre Group, Inc. System for propagating airline tpf data
US5905905A (en) * 1997-08-05 1999-05-18 Adaptec, Inc. System for copying IOBS from FIFO into I/O adapter, writing data completed IOB, and invalidating completed IOB in FIFO for reuse of FIFO
US6052760A (en) * 1997-11-05 2000-04-18 Unisys Corporation Computer system including plural caches and utilizing access history or patterns to determine data ownership for efficient handling of software locks
US6049845A (en) * 1997-11-05 2000-04-11 Unisys Corporation System and method for providing speculative arbitration for transferring data
US6092156A (en) * 1997-11-05 2000-07-18 Unisys Corporation System and method for avoiding deadlocks utilizing split lock operations to provide exclusive access to memory during non-atomic operations
US6014709A (en) * 1997-11-05 2000-01-11 Unisys Corporation Message flow protocol for avoiding deadlocks
JP3407628B2 (ja) * 1997-12-19 2003-05-19 株式会社日立製作所 計算機システム
US6704837B2 (en) 1998-06-29 2004-03-09 International Business Machines Corporation Method and apparatus for increasing RAID write performance by maintaining a full track write counter
US6314501B1 (en) 1998-07-23 2001-11-06 Unisys Corporation Computer system and method for operating multiple operating systems in different partitions of the computer system and for allowing the different partitions to communicate with one another through shared memory
US6327644B1 (en) 1998-08-18 2001-12-04 International Business Machines Corporation Method and system for managing data in cache
US6141731A (en) * 1998-08-19 2000-10-31 International Business Machines Corporation Method and system for managing data in cache using multiple data structures
US6381677B1 (en) 1998-08-19 2002-04-30 International Business Machines Corporation Method and system for staging data into cache
JP2000285022A (ja) * 1999-03-31 2000-10-13 Fujitsu Ltd ディスク制御装置
US6687818B1 (en) 1999-07-28 2004-02-03 Unisys Corporation Method and apparatus for initiating execution of an application processor in a clustered multiprocessor system
US6665761B1 (en) 1999-07-28 2003-12-16 Unisys Corporation Method and apparatus for routing interrupts in a clustered multiprocessor system
US6629168B1 (en) * 2000-06-15 2003-09-30 Hewlett-Packard Development Company, Lp. Byte-swapping for efficient use of memory
US6785771B2 (en) * 2001-12-04 2004-08-31 International Business Machines Corporation Method, system, and program for destaging data in cache
US6856479B2 (en) * 2002-01-29 2005-02-15 International Business Machines Corporation Writing synchronized data to magnetic tape
JP4854973B2 (ja) * 2005-03-09 2012-01-18 富士通株式会社 記憶制御プログラム、記憶制御方法、記憶制御装置および記憶制御システム
US20070118695A1 (en) * 2005-11-18 2007-05-24 International Business Machines Corporation Decoupling storage controller cache read replacement from write retirement
TW200729029A (en) * 2006-01-17 2007-08-01 Sunplus Technology Co Ltd Directory entry system without recycling and the method thereof
EP1903437A3 (en) * 2006-07-31 2008-10-22 Seiko Epson Corporation Update data transmission method, firmware writing system, and update data transmission program
US7577803B2 (en) * 2007-02-16 2009-08-18 Seagate Technology Llc Near instantaneous backup and restore of disc partitions
US8850114B2 (en) 2010-09-07 2014-09-30 Daniel L Rosenband Storage array controller for flash-based storage devices
US9239796B2 (en) * 2011-05-24 2016-01-19 Ixia Methods, systems, and computer readable media for caching and using scatter list metadata to control direct memory access (DMA) receiving of network protocol data
US9798623B2 (en) * 2012-05-11 2017-10-24 Seagate Technology Llc Using cache to manage errors in primary storage
US9336150B2 (en) 2012-06-08 2016-05-10 International Business Machines Corporation Performing asynchronous discard scans with staging and destaging operations
US9195598B2 (en) 2012-06-08 2015-11-24 International Business Machines Corporation Synchronous and asynchronous discard scans based on the type of cache memory
US9208099B2 (en) 2012-08-08 2015-12-08 International Business Machines Corporation Adjustment of the number of task control blocks allocated for discard scans
US8832379B2 (en) * 2012-09-14 2014-09-09 International Business Machines Corporation Efficient cache volume SIT scans
US9176892B2 (en) 2013-01-22 2015-11-03 International Business Machines Corporation Performing staging or destaging based on the number of waiting discard scans
US20140351532A1 (en) * 2013-05-23 2014-11-27 International Business Machines Corporation Minimizing destaging conflicts
US10902126B2 (en) * 2017-03-10 2021-01-26 International Business Machines Corporation Verification of a boot loader program at a control unit to be provided to a host system to load an operating system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55154650A (en) * 1979-05-22 1980-12-02 Nec Corp Disc cash control system

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3588839A (en) * 1969-01-15 1971-06-28 Ibm Hierarchical memory updating system
US3723976A (en) * 1972-01-20 1973-03-27 Ibm Memory system with logical and real addressing
US4020466A (en) * 1974-07-05 1977-04-26 Ibm Corporation Memory hierarchy system with journaling and copy back
US4077059A (en) * 1975-12-18 1978-02-28 Cordi Vincent A Multi-processing system with a hierarchial memory having journaling and copyback
US4070706A (en) * 1976-09-20 1978-01-24 Sperry Rand Corporation Parallel requestor priority determination and requestor address matching in a cache memory system
US4157586A (en) * 1977-05-05 1979-06-05 International Business Machines Corporation Technique for performing partial stores in store-thru memory configuration
US4092713A (en) * 1977-06-13 1978-05-30 Sperry Rand Corporation Post-write address word correction in cache memory system
US4156906A (en) * 1977-11-22 1979-05-29 Honeywell Information Systems Inc. Buffer store including control apparatus which facilitates the concurrent processing of a plurality of commands
US4168541A (en) * 1978-09-25 1979-09-18 Sperry Rand Corporation Paired least recently used block replacement system
US4228503A (en) * 1978-10-02 1980-10-14 Sperry Corporation Multiplexed directory for dedicated cache memory system
EP0019358B1 (en) * 1979-05-09 1984-07-11 International Computers Limited Hierarchical data storage system
US4322795A (en) * 1980-01-24 1982-03-30 Honeywell Information Systems Inc. Cache memory utilizing selective clearing and least recently used updating
US4419725A (en) * 1980-11-14 1983-12-06 Sperry Corporation Cache/disk subsystem with tagalong copy
US4437155A (en) * 1980-11-14 1984-03-13 Sperry Corporation Cache/disk subsystem with dual aging of cache entries
US4433374A (en) * 1980-11-14 1984-02-21 Sperry Corporation Cache/disk subsystem with cache bypass
US4394732A (en) * 1980-11-14 1983-07-19 Sperry Corporation Cache/disk subsystem trickle
US4415970A (en) * 1980-11-14 1983-11-15 Sperry Corporation Cache/disk subsystem with load equalization
US4394733A (en) * 1980-11-14 1983-07-19 Sperry Corporation Cache/disk subsystem
US4425615A (en) * 1980-11-14 1984-01-10 Sperry Corporation Hierarchical memory system having cache/disk subsystem with command queues for plural disks
US4413317A (en) * 1980-11-14 1983-11-01 Sperry Corporation Multiprocessor system with cache/disk subsystem with status routing for plural disk drives
US4423479A (en) * 1980-11-14 1983-12-27 Sperry Corporation Cache/disk subsystem with acquire write command
US4463424A (en) * 1981-02-19 1984-07-31 International Business Machines Corporation Method for dynamically allocating LRU/MRU managed memory among concurrent sequential processes
US4410942A (en) * 1981-03-06 1983-10-18 International Business Machines Corporation Synchronizing buffered peripheral subsystems to host operations
US4414644A (en) * 1981-04-03 1983-11-08 International Business Machines Corporation Method and apparatus for discarding data from a buffer after reading such data
US4490782A (en) * 1981-06-05 1984-12-25 International Business Machines Corporation I/O Storage controller cache system with prefetch determined by requested record's position within data block
US4466059A (en) * 1981-10-15 1984-08-14 International Business Machines Corporation Method and apparatus for limiting data occupancy in a cache
US4468730A (en) * 1981-11-27 1984-08-28 Storage Technology Corporation Detection of sequential data stream for improvements in cache data storage
US4476526A (en) * 1981-11-27 1984-10-09 Storage Technology Corporation Cache buffered memory subsystem
US4430712A (en) * 1981-11-27 1984-02-07 Storage Technology Corporation Adaptive domain partitioning of cache memory space
US4506323A (en) * 1982-03-03 1985-03-19 Sperry Corporation Cache/disk file status indicator with data protection feature
WO1984002409A1 (en) * 1982-12-09 1984-06-21 Sequoia Systems Inc Memory backup system
US4499539A (en) * 1982-12-20 1985-02-12 International Business Machines Corporation Method and apparatus for limiting allocated data-storage space in a data-storage unit
US4695943A (en) * 1984-09-27 1987-09-22 Honeywell Information Systems Inc. Multiprocessor shared pipeline cache memory with split cycle and concurrent utilization
US4779189A (en) * 1985-06-28 1988-10-18 International Business Machines Corporation Peripheral subsystem initialization method and apparatus

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55154650A (en) * 1979-05-22 1980-12-02 Nec Corp Disc cash control system

Also Published As

Publication number Publication date
JPS626325A (ja) 1987-01-13
EP0205965A2 (en) 1986-12-30
EP0205965A3 (en) 1990-04-04
US4875155A (en) 1989-10-17

Similar Documents

Publication Publication Date Title
JPH0575134B2 (ja)
US4779189A (en) Peripheral subsystem initialization method and apparatus
EP0077452B1 (en) Data promotion in storage subsystems
EP0077453B1 (en) Storage subsystems with arrangements for limiting data occupancy in caches thereof
US6877065B2 (en) Advanced read cache management
US5809560A (en) Adaptive read-ahead disk cache
EP0104588B1 (en) Peripheral storage system having multiple data transfer rates
US6119209A (en) Backup directory for a write cache
US6748501B2 (en) Microprocessor reservation mechanism for a hashed address system
CA1322058C (en) Multi-processor computer systems having shared memory and private cache memories
US5664148A (en) Cache arrangement including coalescing buffer queue for non-cacheable data
US6192458B1 (en) High performance cache directory addressing scheme for variable cache sizes utilizing associativity
JP4298800B2 (ja) キャッシュメモリにおけるプリフェッチ管理
US6286080B1 (en) Advanced read cache emulation
EP0777183B1 (en) Computer cache system
CA2127081A1 (en) Processor interface chip for dual-microprocessor processor system
AU1578092A (en) Cache memory system and method of operating the cache memory system
US5671231A (en) Method and apparatus for performing cache snoop testing on a cache system
JPS6238731B2 (ja)
JPH0458050B2 (ja)
US5694570A (en) Method and system of buffering data written to direct access storage devices in data processing systems
JPH11506850A (ja) 多重レベルキャッシュシステムにおけるキャッシュ・スヌーピング・オーバヘッドを減少するための方法および装置
US7464227B2 (en) Method and apparatus for supporting opportunistic sharing in coherent multiprocessors
Menon et al. The IBM 3990 disk cache
EP0156179A2 (en) Method for protecting volatile primary store in a staged storage system

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees