JPS59158461A - デ−タ転送制御装置 - Google Patents

デ−タ転送制御装置

Info

Publication number
JPS59158461A
JPS59158461A JP58228626A JP22862683A JPS59158461A JP S59158461 A JPS59158461 A JP S59158461A JP 58228626 A JP58228626 A JP 58228626A JP 22862683 A JP22862683 A JP 22862683A JP S59158461 A JPS59158461 A JP S59158461A
Authority
JP
Japan
Prior art keywords
data
cache
proxy
work
queue
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.)
Granted
Application number
JP58228626A
Other languages
English (en)
Other versions
JPH0458050B2 (ja
Inventor
マイケル・ハワ−ド・ハ−タング
ア−サ−・ハ−バ−ト・ノルタ
デ−ビツド・ゴ−ドン・リ−ド
ジエラルド・エルスワ−ス・テイラ−
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 JPS59158461A publication Critical patent/JPS59158461A/ja
Publication of JPH0458050B2 publication Critical patent/JPH0458050B2/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/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)
  • Multi Processors (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [技術分野] 本発明は、DASD (直接アクセス記憶装置)の如き
支援記憶装置と、キャッシュとして働く、好ましくはラ
ンダム・アクセス・メモリより成る前置記憶装置とを用
いたページング・データ記憶システムに係る。
[従来技術] 従来、ページング及びスワツピング記憶装置は幾つかの
構成を有している。例えば、ページング及びスワツピン
グ・データを記憶するために、種々のDASDが直接用
いられている。その様な装置を用いた場合には、記憶さ
れたページング及びスワツピング・データへのアクセス
時間が比較的長いという問題があり、これは全体的なC
PU又はデータ処理システムの性能に悪影響を与え得る
I 8M2305固定ヘツド記憶装置に関する、■BM
社発行の刊行物GA−2e−1589は、ページング及
びスワツピング環境において用いられる記憶ドラムにつ
いて記載している。記憶ドラムがDASDよりも優れて
いる点は、ページング及びスワツピング・データ信号へ
のアクセスが比較的速いことである。記憶ドラムの不利
な点は、所与の容量の記憶ドラムのコストが比較的高い
ことである。従って、多くのページング及びスワツピン
グの適用例においては、I 8M2305固定ヘツド記
憶装置の如き記憶ドラムが活動ページのデータを記憶し
、比較的非活動状態のデータがDASD上に保持されて
いる。従って、アクセスが高速で行なわれる前置記憶装
置と、比較的大容量を有し、より低コストであり、アク
セスがより低速で行なわれる支援記憶装置との間で命令
、ページング及びスプーリング・データを自動的に転送
する階層ページング記憶システムが望まれている。
更に、データへの多重アクセスが行なわれるべきである
。即ち、所与のデータ単位にアクセスするだめに、2個
以上のアドレスが使用可能であるべきである。この点に
関して、I 8M2305固定ヘツド記憶装置は、アド
レス0〜7が物理アドレス0を有する磁気記憶ドラムへ
のアクセスを生じ、アドレス8〜15が物理アドレス8
を有するドラムを選択するという、多重要求を可能にし
ている。勿論、各ドラムは、所与の時間に1つのアクセ
スのみを許す。従って、アドレスの1つによる所Uのド
ラムへの所q、のアクセスは、」二記ドラムへの全ての
アドレスを使用中即ちアクセス不能の状態にする。プロ
グラムの実行並びにページング及びスワツピング・デー
タ・セットの転送を改善するために、多重アドレス領域
においてより大きな柔軟性が望まれる。
従来、種々の支援記憶装置を有する、種々の適用例のた
めの階層データ記憶装置が用いられており、それらの支
援記憶装置は、例えば、磁気テープ記録装置、DASD
の如き磁気ディスク記憶装置、比較的遅い揮発性のRA
M、磁気バブル又はシフト・レジスタ型のメモリ、テー
プ・ライブラ3− リ・システム等である。支援記憶装置への比較的長いア
クセス時間を補う様に設計されている前置記憶装置も、
従来、種々の構成を有している。例えば、I BM38
50大容量記憶システムにおいては、支援記憶装置は磁
気テープ・ライブラリより成り、前置記憶装置は複数の
DASDより成っている。そのD A、 S Dへのア
クセスは、自動テープ・ライブラリに含まれるデータ・
カートリッジに記憶されたデータへのアクセスの場合よ
りは、比較的早く行なわれた。
更に、米国特許第3569938号明細書においては、
階層記憶装置が、データ処理システムへの見掛は上の記
憶装置として述べられている。この特許明細書において
は、比較的高速でアクセスの行なわれる記憶装置が比較
的低速でアクセスの行なわれる記憶装置へのバッファと
して働くという、キャッシュ概念が示されている。この
例においては、RAMが前置記憶装置即ちキャッシュと
して働き、支援記憶装置はテープ又はディスク・データ
記憶装置である。見掛は上の記憶装置の大4− ささば」―記支援記憶装置の容量であり、そのアクセス
時間は前置記憶装置の迅速なアクセスに等しい見掛は上
のアクセスを与えている。もう1つの階層記憶装置が米
国特許第3839704号明細書に示されており、この
場合には、DASDが記録機構によりアクセス可能なR
AMによってバッファされている。その記録機構は、支
援記憶装置即ちDASDへのアドレスを解釈し、それら
のアドレスをデータ処理技術において周知のテーブル索
引機構によりバッファ・アドレスへ変換する。
この配置も、DASDへの比較的長いアクセス時間を補
うことを目的としている。又、この配置は、その階層記
憶装置に接続されたデータ処理システムがデータを必要
とする前にそのデータをDASDからバッファへ転送し
て、そのデータへのアクセス時間を最小限にしている。
これらの2つの特許明細書は、種々の周辺記憶装置にキ
ャッシュを設けるための一般的配置を示している。ペー
ジング及びスワツピング記憶装置に対する今日の要求を
充すためには、更に制御が必要とされている。
キャッシュを設けることによって性能が改善されたもう
1つの技術分野は、コンピュータ又はCP Uの主記憶
装置領域である。即ち、各データ処理システムが、キャ
ッシュ即ち高速記憶装置を有するCPUを含む。このキ
ャッシュのための支援記憶装置が通常の主記憶装置であ
る。CP Uの命令実行及びオペランド・データの転送
が最大限になる様にキャッシュ動作を改善するために種
々の技術が従来用いられている。CPU及び主記憶装置
に関してキャッシュの動作を制御する1つの例が、米国
特許第4075686号明細書に示されている。この米
国特許明細書は、キャッシュを用いることが常に有利と
はいえず、成る場合には、キャッシュをバイパスするこ
とにより性能が改善されることを記載している。キャッ
シュのバイパスは、幾つかの方法で行なわれる。1つの
例においては、主記憶装置がセグメント状に構成される
ぞ、ftらのセグメンl−の一部は入出力動作又は周辺
動作のために専ら使用され、それらのセグメン+−への
アクセスは全て、主記憶装置のキャッシュをバイパスす
る。同様にDASDのためのキャッシュが、成る状況の
下では、選択された装置又は装置部分へバイパスされる
ことがある。この米国特許明細書に記載されているもう
1つの態様においては、指令に基きキャッシュを選択的
にバイパスすることによって性能が改善される。その例
においては、主記憶装置領域への指令がキャッシュ・バ
イパス・ビットを含んでいる。そのビットが1にセット
されているとき、キャッシュは使用されない(主記憶装
置が直接アクセスされる)。キャッシュ・バイパス・ビ
ットが0にリセツ1〜されているとき、キャッシュが使
用される。キャッシュの選択的なバイパスは、多くの場
合において、主記憶装置キャッシュ・システム又はDA
SD−キャッシュ・システムの如きデータ記憶システム
の性能を最適化することが出来るが、今日のページング
及びスワツピング・データ転送に対する厳しい要求を充
たす、ためには、更に制御は必要とされる。
階層における装置間に複数の経路を有するデー7− タ記憶階層においては、性能を改善するためにデータの
移動において負荷を平衡化することができる。また、階
層の成るレベルに揮発性のデータ記憶装置が用いられて
いる場合にも、その様な負荷の平衡化によって記憶シス
テム及びデータの利用可能性を改善することができる。
複数の装置間におけるデータ処理の負荷の平衡化は1通
常、いわゆるタスク割当て時間に行なわれる。即ち、デ
ータ処理作業が続いて行なわれる前に、どの装置がその
タスクを実行すべきかが制御機構により決定され、その
タスクが成る装置に割当てられると、その装置は、後に
そのシステムにおける他の装置よりも大きな負荷を加え
られても、動作を続ける。その様なタスク割当ての平衡
化の1例がIBM Technical Disclo
sure Bu…貝几、第20巻、第3号、1977年
8月、第937頁乃至第938頁におけるJ、 F、 
Baker及びり、 E。
Ho1stによる”Load Balancjng C
ontrol for aMulti−process
or”と題する論文に示されている。
この論文は、システムを制御する種々のプロセラ8− サに負荷平衡比表を有している、柔軟結合された多重プ
ロセッサ制御記憶システムについて記載している。負荷
の平衡化は割当て時間に行なわれシステムにおける他の
装置よりも大きな負荷が加えられても動作が行なわれる
。負荷の平衡化は、割当て時間において、作業待ち行列
の深さを示す負荷平衡比表に基いて行なわれる。負荷平
衡化の情報が記憶システムの種々のプロセッサの間で交
換される。調時されたプロセスのスケジューリングにつ
いても記載されている。タスク割当て時間における負荷
平衡化のもう1つの例が、IBMTechnical 
Disclosure Bulletjn、第14巻、
第11号、1972年4月におけるり、 A、 Jai
kes等による”Tnputloutput Chan
nel/Device LoadBalancj、ng
 Algorithm”と題する論文に示されており、
この場合には、周辺サブシステムの作業が作業割当て時
間に平衡化される。
多重処理の配置におけるCPU又はホストの負荷も、作
業割当て時間に平衡化されることが多い。
米国特許第3648253号明細書に示されているその
1例においては、タスクが、後に第15図に関して述べ
るプログラム式スケジューラにより、現在のタスクへの
移行時間に基いて、多重プロセッサの配置に割当てられ
ている。その作業負荷の平衡化は、タスクが開始される
前にタスクを割当てることによって行なわれる。米国特
許第4032899号明細書は、全体の処理の負荷に基
いてデータ・トラフィックを平衡化するデータ交換網を
示している。この平衡化は、個々のプロセッサによるボ
ートへの出力ドラフィックを排他的割当てベースでスケ
ジュールすることにより達成され、即ち、この場合にお
いても、負荷の平衡化は、実行されるべきタスクが初め
に割当てられるときに達成される。
又、負荷の平衡化は、エラー状態の検出に基いて達成さ
れている。例えば、米国特許第3787816号明細書
は、誤動作又はエラーの後にデータ処理が続いて行なわ
れる様に、複数の特定の同様な装置に割当てられている
機能を再割当てするために、制御された方法で再構成し
得る、多重処理システムを示している。
負荷を平衡化するために、活動モニタが従来用いられて
いる。米国特許第3588837号明細書は、全ての主
要データ経路の活動を、時間間隔によるサンプリング技
術を用いてモニタするシステムを示している。サンプル
は、成る時間間隔におけるサンプルの数と前の時間間隔
におけるサンプルの数との比を表わす様に動的に記録さ
れ、動的環境内の全ての潜在的待ち合せ点の活動が、デ
ータ処理及び通信装置の使用に関する統計的データを与
える様に記録される。この特許明細書は、モニタ装置を
示しているが、その様なモニタ装置により駆動される負
荷の平衡化については何ら示していない。
作業負荷の平衡化が全て割当て時間に達成されている訳
ではない。例えば、米国特許第4099235号明細書
は、2つの実時間データ・プロセッサを有し、所与のタ
スクがそれらの一方のデータ・プロセッサにおいて選択
的に実行される、データ処理システムの動作方法を示し
ている。その11一 様な選択は、タスクの性質及びどのプロセッサがその様
なタスクに関して動作する様に選択されたかに依存する
。各データ・プロセッサは、その使用率を連続的に決定
するために連続的にモニタされる。各プロセッサには、
そのプロセッサの過負荷の限界よりも低い、その様な使
用率の所定の上限値が割当てられている。その様な上限
値を超えたとき、一方の使用中のデータ・プロセッサに
おいて実行されているタスクが他方のデータ・プロセッ
サに割当てられ、その他方のプロセッサがそのタスクを
実行する。この米国特許明細書は、データ・プロセッサ
間で活動タスクをシフトさせる方法として、使用の閾値
を用いている。その開示された方法は、好ましくは、使
用率を示す、実行されているタスクから生じる待ち時間
と、自由時間との比を用いている。この米国特許明細書
は、データ・プロセッサ間に於る入出力負荷の平衡化に
関連して電気機械的スイッチにより周辺装置がそれらの
データ・プロセッサ間でスイッチングされる、米国特許
第3665404号明細書に記載=12− の方法にも関連している。前述の米国特許第40992
35号明細書に記載の方法に於ては、多くの実時間動作
がバッチ処理と同様であり、従って実行されていないタ
スクがプロセッサ間において容易に移転される。これは
、負荷を平衡化する為に、非活動タスクのみが移転され
る事を意味する。
活動が制御データ・プロセッサの制御範囲を超えて変化
する場合のある動的データ処理システムにおいては1種
々のデータ・プロセッサ/データ処理経路間の負荷の平
均化は、データ処理のスループットを最大限にするため
に負荷平衡化のためのデータ転送が最小限になる様に、
後の活動における未知の動的変化に充分適応すべきであ
る・ページング及びスワツピング環境においては、記憶
システムに対するホストの制御を最小限にして、多重タ
スク処理のページング・アクセスのために、複数のアク
セスが行なわれることが望ましい。即ち、ページング及
びスワツピング記憶システムは、ページング及びスワツ
ピング環境の完全性を確保するために各々の独立した動
作を維持しで、ホスト又はCPUの動作を最大限にする
ための制御手段を有すべきである。ページング及びスワ
ツピング環境における装置間の非同期的動作の平衡化は
、データ記憶システムの利用可能性を改善することがで
きる。
[発明の概要] 複数の装置を用いた環境において、実行されるべき作業
を有していない成る装置が他の装置に照会する。他の装
置は、実行すべき動作を上記の成る装置に移転させるこ
とができる。作業の有無の評価は、種々の装置の作業待
ち行列を調べることにより行なわれる。本発明の成る特
定の態様においては、複数の動作レベルを有するデータ
記憶階層の内部動作は該階層に関連する外部動作と実質
的に非同期的に実行される。該階層の成るレベルにおけ
る種々の装置は、より下位のレベルに関して実行すべき
作業の待ち行列を有している。成るレベルの成る装置が
下位のレベルの作業を少ししか又は全く有していないと
き、その装置はそのレベルにおける他の装置にその様な
下位のレベルの作業を自己に供給する様に要求し、他の
装置に代ってその作業を実行する。本発明のもう1つの
態様においては、成るレベルにおける各装置が、下位の
レベルに関して実行すべき作業(データ転送の如き)を
含む作業待ち行列を有している。上記の成るレベルにお
ける成る装置の待ち行列が空になったとき、その装置は
他の装置に照会して、他の装置の作業待ち行列から作業
を移転させることを要求する。
[実施例] 第1図乃至第4図は、本発明を用いた周辺データ記憶階
層を示している。第1図の全体的配置は、データを記憶
及び検索するためにデータ記憶階層10に結合された、
CPU、多重処理環境等の如き、ホスト11を示してい
る。データ記憶階層10は、いずれかのメモリ制御装置
17を経てホストに結合されている複数のDASDl6
を含む。
メモリ制御装置17は、半導体装置のランダム・アクセ
ス・データ記憶アレイより成り、通常のアクセス回路2
6を有しているいわゆるシステム記−15= 憶装置30中に埋め込まれたキャッシュ40を共用して
いる。アクセス回路26は、各々メモリ制御装置17に
結合された1対の入出力両方向ポートP1及びP2を有
するアクセス制御スイッチを含む。記憶装置30は更に
、どのデータがキャッシュに記憶されているかを識別す
るための半導体データ記憶アレイ中に記憶された記録装
置43を含む。記録装置43は、ホスト11がDASD
l6のアドレスを用いてキャッシュ40に記憶されてい
るデータにアクセスできる様にキャッシュに記憶されて
いるその様なデータのアドレスをDAS D 1.6の
アドレスに関連付ける。DASDl6、メモリ制御装置
17及びホスト11に関するキャッシュ40の動作は、
以下の説明から理解されよう。
成るメモリ制御装置17がもう1つのメモリ制御装置1
7に代って作業を実行することにより作業負荷を平衡化
するために、両メモリ制御装W17に結合されているメ
ツセージRAM18を経てメモリ制御装置間で制御メツ
セージが交換される。
16− その動作は、一方のメモリ制御装置17が軽い負荷しか
又は全く負荷を有していないとき、そのメモリ制御装置
が作業の移転を要求する要求メツセージを他方の作業移
転側のメモリ制御装置17に供給する様に行なわれる。
作業移転側のメモリ制御装置17は、その作業負荷を調
べ、適当であれば、所定数の作業ジョブを作業要求側の
メモリ制御装置に供給する。作業要求側のメモリ制御装
置は、作業移転側のメモリ制御装置に代ってそれらのジ
ョブを実行する。本発明の1つの好ましい形においては
、成るDASDl、6に対する1つのデータ記憶アクセ
ス要求(1つ又はそれ以上データ・レコード)が代理作
業単位を構成するが、本発明がこれによって限定される
ことはない。
データ記憶階層においてメモリ制御装置17とDASD
l6との間で行なわれる重要な非同期的動作の1つは、
ホス1〜11から受取られてキャッシュ40に記憶され
たデータをDASDl 6上に記録することである。″
書込″と呼ばれるその様な動作は、書込待ち行列(WR
Q)19に入れられる。それらの書込は代理作業の主要
部分を構成するが、成る状況においては、DASD]6
からキャッシュ40へ″読取″られるべきデータが代理
作業として転送される。1つの実施例においては、各メ
モリ制御装置17がそれ自身の独立した書込待ち行列を
有している。第1図に示されている第2の実施例におけ
る共通の書込待ち行列においては、WRQ19は両方の
メモリ制御装置17に共通である。この第2実施例の配
置においては、WRQ19は、両メモリ制御装置17か
ら書込みジョブを受取り、それらを単一の待行列に入れ
る。
いずれのメモリ制御装置17がDA、5DI6に書込を
行なう必要があるとき又はデータがDASD16に書込
まれるべきことを示す小さな負荷又は他の作業状態を有
するときには直ちに、そのメモリ制御装置17がWRQ
19にアクセスして、データ記憶階層における全てのメ
モリ制御装置に関連するデータをキャッシュ40からD
A、SDl、6へ書込む。この第2実施例の配置は、暗
黙の代理作業の配置を与える。
第2図は、データ記憶階層において作業移転側のメモリ
制御装置17のために代理作業を実行する作業要求側の
メモリ制御装置17の全体的機械動作の流れを示してい
る。代理作業の実行においては、ホス1へ11により供
給された指令及び他の要求に対する各メモリ制御装置1
7の応答責任が考慮される。ホス1〜11の指令及び要
求を受取るために、各メモリ制御装置17は、複数のい
わゆるチャネル・アダプタ32によってホスト1】に結
合している。第2図に示されている如く、チャネル・ア
ダプタ32は、メモリ制御装置17における後述するデ
ィジタル・プロセッサがホスト11からの指令に応答す
ることができる様に、ホストの要求を示す信号を供給す
る。機械動作のステップ320において、メモリ制御装
置17は、チャネル・アダプタ32がホス1−11によ
り供給された指令を実際に受取っているか否かを調べる
メモリ制御装置17は、ステップ321において受取ら
れた指令に応答し、それから再びチャネル・アダプタ3
2がボス1−11からの指令を受取って19− いるか否かを調べるためにアイドル・ループ322に入
る。この様にして、ホスト11からの指令は、メモリ制
御装置17により優先的に実行される。いずれのチャネ
ル・アダプタ32からも何ら指令が送られてこなければ
メモリ制御装置17は、メモ1り制御装置17、キャッ
シュ40及びDASD 1.6間における前述の非同期
的動作を実行するために、後述する作業待ち行列を調べ
る。非同期的動作を開始するために、ステップ323に
おいて、読取−書込(R−W)の優先順位が調べられて
、データが初めにDASD16からキャッシュ40へ転
送されるべきか(読取)又はキャッシュ40からDAS
D16へ転送されるべきか(書込)が決定される。その
様な優先順位は、待ち行列の長さ、キャッシュの占有、
キャッシュの利用可能なすなわち自由なスペース等に依
存する。ステップ323において読取が優先している場
合には、メモリ制御装置17は、ステップ324におい
て、読取待ち行列(RQ)を調べる。実行されるべき非
同期的作業が読取待ち行列において識別されると、20
− ステップ323に示されている優先順位によって、読取
動作(DASD16からキャッシュ/IOへのデータの
転送)がステップ325において実行される。それから
、メモリ制御装置17は再びアイドル・ループ322に
入って、ホスト11からの指令を探索する。この様にし
て、非同期的動作と指令の実行(各ホス1〜11との同
期的動作)とが動的にインターリーブされる。ステップ
324において、実行されるべき作業が読取待ち行列(
RQ)において見出されない場合には、メモリ制御装置
17は、ステップ326において、書込待ち行列(WQ
)を調べる。(この待ち行列は、局所及び代理の両方に
おける全ての書込の活動を含むことができる。)WRQ
]、9の如き、その書込待ち行列にエントリが生じてい
れば、ステップ327において書込が実行される。それ
から、メモリ制御装置17はアイドル・ループ322に
入って、ホスト11からの指令を再び探索する。成る状
況においては、受取られた指令は、上記の非同期的動作
に割込むことができる。即ち、非同期的動作の実行の決
定と実際のデータの転送との間において、時間が経過す
る。その様な遅延の間に、非同期的動作に何ら干渉せず
に、指令が実行される。
ステップ323において、データがキャッシュ40から
DASDl6に書込まれるへきであることを示す、非同
期的動作の優先順位が見出された場合には、メモリ制御
装置17は、ステップ330において、初めに書込待ち
行列(WQ)を調べる。書込待ち行列に何らかのエント
リがあると、ステップ327において、書込が実行され
る。ステップ330において、書込待ち行列が空であれ
ば、メモリ制御装置17は、ステップ331に進んで、
読取待ち行列(RQ)を調べる。読取待ち行列にエン1
〜りが見出されれば、そのエントリに対応する読取動作
がステップ325において実行される。
ステップ320において、実行されるべき指令がなく、
又読取待ち行列及び書込待ち行列に示されている如き実
行されるべき非同期的作業もない場合には、ステップ3
32において、メモリ制御装置17はステップ326又
は331から代理作業を探索する。その様な代理作業は
、読取待ち行列又は書込待ち行列に加えられ、又は作業
要求側のメモリ制御装置により別個に実行されてもよい
代理作業の設定から実際のデータ転送の実行迄の時間が
経過した後、メモリ制御装置17は再びアイドル・ルー
プ322に入る。この様にして、代理作業も又、指令の
実行及び他の非同期的動作と動的にインターリーブされ
る。キャッシュ40とDASDl6との間のデータの転
送については周知であるので、特に記載しない。
第3図及び第4図は、本発明を用いた周辺システム即ち
データ記憶階層10を示している。第3図は該システム
を論理の形で示し、第4図は該システムを電子回路又は
ハードウェアの形で示している。第3図において、m−
のホスト11は、ページング及びスワツピング・データ
のために、周辺システム10と通信する。″ホスト″は
、CPU、データ処理システム、単一の装置として働く
多重処理の環境等を含む。複数の入出力接続12、J2
3− 3.14及び15は、ホスト11をページング記憶装置
である周辺システム10へ接続する。これらの入出力接
続は、周知の如く、ll3Mコンピュータと共に用いら
れているものでよい。ページング及びスワツピング・デ
ータは、2レベル階層記憶装置の下位レベルを構成する
支援記憶装置に記憶される。支援記憶装置は複数のDA
SDl6より成る。各メモリ制御装置17は、キャッシ
ュ40をDASDl、6に結合させる経路手段を構成し
ている。図示されている実施例においては、m−のスト
リングのDASD 16が示されているが、そのストリ
ングは、周知の技術を用いて、第1図に示されている如
く、複数のメモリ制御装置17の間でスイッチング可能
である。その動作において、4096バイトのデータ・
ブロックがホスト】IとDA、5Di6との間を迅速に
転送される。
8つのDASDl6が各々、任意の入出力接続12乃至
15を経て独立にアクセスされる様に、アドレスDO〜
D7を有している。即ち、ホスト11は任意の入出力接
続を経て任意のDA、SD]、624− をアドレスすることができる。各DASD]、6には、
複数のアクセス経路の他に、複数のアクセス・アドレス
が与えられている。その様なアクセス・アドレスは、ア
ドレス構造20を有している。制御装置(システム10
)アドレスは、典型的には3ピツ1への部分CUにより
示される。実際の物理的D A、 S Dアドレスは、
8つのI)ASDl、6に対して3ピツ1〜を有する部
分DEVにより示される。
DASDl6の実際のアドレスを修飾するアクセス・ア
ドレス修飾子の部分A、Cは、本実施例においては、2
ビツトより成る。装置DOをアドレスする4つのアクセ
スのうち1つは、AC部分が全てゼロである、直接アク
セスである。装置DOへの他の3つのアクセスは、キャ
ッシュ40を経て行なわれ、01.10及び11より成
るA、Cビット・パターン22によって識別される。こ
れらの3つのアクセスのための装置アドレス部分DEV
は全て同じである。ホスト11が、キャッシュ40を経
てデータにアクセスする場合を含む4つのアクセスの中
の1つを用いて、DASDl6のデ−夕にアクセスする
とき、任意のDASD16に関して複数の独立した入出
力動作が実行され、各アクセスのために1つの独立した
動作が実行される様に、各アクセスが別個の論理装置と
して処理される。特定の周辺システム10の電子回路構
成に応じて、DASD16は、キャッシュに関連する3
つの装置アドレスによりキャッシュ40がアクセスされ
ると同時に、そのアクセスから独立して、アドレス21
によりアクセスされることができる。アドレス21は、
任意の論理装置のアクセスの場合と同様に、ホス1へ1
1により、任意の入出力接続12乃至J5を経て供給さ
れることができる。装置DIは、AC部分が全てゼロで
あり。
DEV部分が001である、アドレス24によって直接
アクセスされる。論理装置(キャッシュ)アクセス25
は、論理装置アクセス22及び23の場合と同様なパタ
ーンを有し、他のDASDI6についても同様である。
フロント記憶装置即ち周辺システム10のページング記
憶階層の上位レベルは、制御機構31によりアクセス及
び制御される。システム記憶装置30、制御機構31及
びホスI〜11の間の信号転送は、複数のチャネル・ア
ダプタ32を介して行なわれる。それらのチャネル・ア
ダプタ32はCAA、cAB、cAC,CADとして示
されている。それらのチャネル・アダプタは、入出力接
続12〜15を介してコンピュータへ接続される制御装
置にある接続回路である。DASD16とシステム記憶
装置30との間の信号転送は、制御機構31の指示の下
に、データ・フロー回路33を介して行なわれる。デー
タ・フロー回路33は、データ処理システム中の通常の
ディジタル信号を、当技術分野において周知の如き、デ
ィスク記憶装置と共に使用可能な直列形式及びプロ1〜
フルに変換する。データ・フロー回路33は、装置アダ
プタ(DAA)34、及びディスク制御アダプタ(DC
A)35を介して、信号を転送する。DASD16はア
ドレスDCHRによってアドレスされる。アドレスD 
CHRのDは装置アドレスDEVに対応し、Cはシリン
ダ・アドレスを示し、H27− はヘッド(記録表面)・アドレスを示し、Rはレコード
番号を示す。レコードは、周知の如く、ディスク記憶装
置上の回転位置によって迅速に見出される。システム記
憶装置30は3つの主要部分を有する。第1の部分はキ
ャッシュ40である。
キャッシュ40は、ホスト11によって迅速にアクセス
されるべきページング・データを記憶し。
且つDASD16に書込まれるべきページング・データ
を記憶するためのものであって、ホスト11がそのよう
なデータを受取るためにDASDI6を待機する必要が
ない様にする。キャッシュを設ける原理は、前述の参照
文献中に説明されている。キャッシュ40に記憶されて
いるデータへのアクセスは、複数のレジスタより成るデ
ィレクトリ(DIR)43を介して行なわれる。それら
のレジスタはDASD16のアドレス(DCHR)、デ
ータが記憶されているキャッシュ40中のレジスタのア
ドレス、及び他の制御情報を識別する信号を含む。これ
については、後に第5回に関連して説明する。キャッシ
ュ40は比較的大きいので28− (数メガバイト)、キャッシュ40へのアクセスは、ハ
ツシュ回路44において実行されるいわゆるハツシュ法
によって改善される。アドレスのハツシングは周知であ
り、本発明と直接の関連を有しないので、更に詳述しな
い。ちらし回路44の出力は、散乱索引表(SIT)4
5をアドレスする。表45は、記録装置43をアドレス
してキャッシュ40をアクセスするために、記録装置4
3へのちらし演算されたアドレスをインデックスする。
各キャッシュ・アクセスにおいて、1つ又はそれ以上の
記録装置エントリが含まれていてもよい。所与のちらし
演算出力に関連する複数のエン1〜りはちらしクラスと
呼ばれ、単−又は二重にリンクされたリス1−を用いて
相互にリンクされている。それによって、記録装置43
への単一のアクセスで、DASD16の所与のアドレス
範囲について、キャッシュ40を完全に走査出来る。キ
ャッシュ40は、内部バス41を介してチャネル・アダ
プタ32との間で信号を転送し、内部バス42を介して
データ・フロー回路33との間で信号を転送する。シス
テム記憶装置30のために使用されるRAMとDASD
16との間のデータ信号の転送は周知であり、更に詳述
しない。
制御機構31は3つの主要部分を有する。第1の部分即
ちアドレス及び指令評価器50はバス接続51.52.
53、及び54を介してチャネルアダプタ32に接続さ
れる。評価器50は、チャネル・アダプタ32を介して
ホス1へ11から種々の入出力指令を受取り、それを部
分的にデコードし、ホスト11から指令と共に受取られ
たDASDのアドレスが、直接アクセスのアドレスか論
理アクセスのアドレスかを決定する。アドレス2I、2
4等によって直接アクセスが指定されると、評価器50
は、直接アクセス制御部56を活動化する。制御部56
は、DASD16をホスト11へ接続する制御装置の技
術を用いて構成されている。
この様なアクセス制御は周知であるので、更に詳述しな
い。ホスト11から制御部56を介してDASD]6迄
の動作は、チャネル・アダプタ32の1つを介してDA
SD16をホス1−11へ予約する能力を含む。これは
、アドレスされたDASDへのアクセスが、特定のチャ
ネル・アダプタ32に限定されることを意味する。コン
ピュータを用いて実行される予約及び解放原理は周知で
あり、更に詳述しない。
評価器50は、アドレスを伴う指令をホスト11から受
取って、ピッ1〜・パターン22及び23又は25によ
り示されている如き、3つの論理アクセスの1つを検出
することができる。その場合、評価器50は、キャッシ
ュ40にアクセスして、そこへページング・データを記
憶し又はそこからページング・データを検索するために
、経路60の1つを介してキャッシュ・アクセス制御部
61と通信する。論理アクセスがホスト11からの指令
により指定された時、DASD16は予約され得ない。
即ち、装置DOがホスト11によるアクセスのためにチ
ャネル・アダプタCAAへ予約されている場合、ホスト
11は、更に、経路14及び制御部61を介して、周辺
システム(記憶システム)10へ独立したデータの要求
を送ることが31− できる。その要求されたデータがキャッシュ40にない
場合、制御部6】は、経路66及び制御部56を介して
DA、5D16をアクセスする。それは、アドレスされ
たDASDがチャネル・アダプタCA、 Aヘアクセス
のために予約されている場合でも行なわれる。この様に
して、DASD16は、データ処理動作のために予約さ
れるが、ページング・データ動作のアクセスのためには
完全に解放されている。
制御部61は、複数の状況表示レジスタと共に動作する
。例えば、論理装置制御ブロック・レジスタ(LDCB
)62は、後に第5図に関連して説明される如く、キャ
ッシュ40を介する論理装置アクセスに関連した制御情
報信号を含み、各々の要求されたアクセスが独立的に処
理される様にする。バス41を介するキャッシュ40と
チャネル・アダプタ32との間のデータ信号の転送は、
1組のチャネル制御ブロック・レジスタ(CCB)63
に記憶されている信号によって示される。キャッシュ4
0へのアクセスは、バス64を介して=32− ちらし回路44へちらし動作を要求することによって開
始される。ちらし回路44が記録装置43にある正しい
エン1−りを識別すると、そのエントリはシステム記憶
装置30から1組のアクチブ・ディレクトリ・エントリ
・バッファ・レジスタ(ADEB)76へ転送され、Φ
す御部61は、その様な制御情報を得るために更にシス
テム記憶装置30を参照しないで、キャッシュ4oと共
に動作することができるようになる。記録装置43が、
論理アクセスにより要求されたデータがキャッシュ40
にないこと、即ち記録装置にエントリがないことを示す
と、その要求されたデータはDASD 1.6からキャ
ッシュ40へ転送され、次いでホスト11へ中継されね
ばならない。この動作は、読取要求を1組の待ち行列レ
ジスタ69の読取待ち行列RQに入れることによって、
極めて非同期的に達成される。成る場合には、制御部6
1は、記録装置43がちらし回路44又は散乱索引表4
5に頼ることなくアクセスできるように、先行アドレス
情報を有する。このアクセスは、記録装置43に直接ア
クセスするバス43Aによって示さ扛ている。キャッシ
ュ40にミスが生じた場合、制御部61は、経路66を
介してDASDl6をアクセスする。更に、他の通信が
、両方向矢印68により示されている。制御部56がバ
ス42を介してデータ信号をDASDl、6からキャッ
シュ40へ転送した時(バス42は、キャッシュ40へ
の転送とキャッシュ40からの転送とが同時に行なわれ
ない時、バス41と結合することができる)、制御部5
6は、制御部61に経路67を介して、ページング・デ
ータがキャッシュ40ヘステージング即ちプロモーショ
ンされたことを知らせる。次に、制御部61は、適当な
表示信号をホスト11に供給し、ホスト11がシステム
10からデータを要求して、そのデータがキャッシュ4
0からホスト11へ迅速に中継されるようにする。
このような手順は従来技術において知られており、デー
タ処理システムと関連して使用される場合には、チャネ
ル指令リトライと呼ばれる。
ホスト11によって周辺システム10へ供給される入出
力指令は、ディスク記憶装置を動作させることに関連し
て使用される指令である。論理アクセスのための他の指
令は、ページング・パラメータ設定指令を含む。この指
令は、後述する如く、制御部61を起動させる。複数ア
クセスのためのアドレス構造20は、直接アクセス・ア
ドレスのみを使用するディスク記憶装置のためのアドレ
ス構造と同じである。従って、本発明の実施においては
、制御部56を介して通常のDASDを使用するホス1
−11の入出力配置に、最小限の変更を加えるだけでよ
い。また、L)ASD]、6及びホス1−11に関する
キャッシュ40の動作は、改善された同時的アクセスを
可能にし、キャッシュ原理に基く見掛は上の記憶装置を
実現する。この記憶装置は、高い性能、しかも大きな容
量を有している。
メモリ制御装置17において代理作業を行なう場合には
、後述される如く、代理待ち行列84が評価器50に加
えられる。前述の如く、代理書込動作には、書込待ち行
列WQが、局所及び代理動35− 作の両方に用いられる。代理待ち行列84は、DASD
からキャッシュへの代理読取動作にも有用である。実ま
しい実施例においては、代理待ち行列84は、1つのD
ASDに関して行われる1つの書込又は読取動作の如き
代理作業ジョブをDASDl6毎に1つだけ含む。更に
、読取代理ジョブが用いられる場合には、代理ピッh(
P)97がLDCB62に含まれている。更に、各記憶
ディレクタ17の各々に設けられた作業待ち行列69は
、読取待ち行列RQ及び書込待ち行列WQを含んでおり
、又共通即ち共用の作業待ち行列を用いずに非同期的代
理作業ジョブが完了したときに他のメモリ制御装置17
がその対応する記録を更新することができる様に、その
他のメモリ制御装置17に応答が供給されねばならない
ことを示すために、代理ビットPを含んでいてもよい。
メツセージRAM18はアクセス及び通信回路335を
含み、アクセス及び通信回路335は、メモリ制御部[
17がRA、Mアレイ336をアクセスし他のメモリ制
御部[17における対応するメッセ−36〜 −ジ・アレイを経て通信を行なうための命令を与えるこ
とを可能にする。即ち、第1図に示されているメツセー
ジRAM1.8は、1つの好ましい実施例においては、
各メモリ制御装置17に1つ、即ち2つのアレイより成
っている。他の実施例においては、いずれかのメモリ制
御装置17にパッケージングを有する、単一のメツセー
ジRAMl8が設けられてもよい。メツセージRAM1
8において、アクセス及び通信回路335は、データ処
理技術の分野において周知である通常のアクセス及び通
信制御回路337を含む。評価器50により転送された
代理データが代理待ち行列84に供給されて、Pビット
97及び作業待ち行列69を更新する様に、データ・フ
ロー即ちパラメータ・データがメツセージRAM18を
用いてバス338及び340を介して転送される。その
様なパラメータ・データは、評価器50が、ホスト11
により供給された要求に応答して指令を供給する場合と
同様にして、制御部61及び56に適当な指令を供給す
ることを可能にする。通常のハンドシニーキング・タグ
制御が、線341により示されている如く制御回路33
7と評価器50との間に、そして4!342により示さ
れている如く他の記憶制御装置へ与えられている。その
様なタグ制御は周知であるので、更に詳述しない。
第4図は第3図に示される実施例の変形である。
制御機構31がコンピユータ化された形態で示されてい
る。即ち、第4図のディジタル・プロセッサ3]Pは、
経路51〜54を介してチャネル・アダプタ32と直接
に通信する。ホスト11とDA S D ] 6との間
のデータ・フローは、チャネル・アダプタ32からデー
タ・フロー回路33へ直接に延長されるバス70を介し
て行なわれる。チャネル・アダプタ32は、現今の制御
装置によって実施される如く、バス70との間の切換え
を実行する既知の切換回路を有する。プロセッサ31.
 Pは、周知の如く、バス71を介してデータ・フロー
回路33を制御する。プロセッサ31Pは、バス72を
介してシステム記憶装置30と通信する。
バス72は、典型的にはアドレス信号、読取指令へ送る
。プロセッサ31Pは、制御記憶装置73に記憶された
1組のマイクロコード・プログラムによって制御される
。プロセッサ3 ]、 Pは、バス74を介してマイク
ロプロコード・プログラムをフェッチして、第3図にお
ける制御機構31について説明した制御機能の全てを実
行する。例えば、評価器50は、その機能を、プログラ
ム(ACE)50Pを実行するプロセッサ31. Pに
よって実行される。同様に、制御部56は、その機能を
、プログラム(DAC)56.Pを実行するプロセッサ
31Pによって実行される。同様に、制御部61は、プ
ログラム(CAC)6 ]、Pに対応する。勿論、記憶
システムを動作させるためには、診断その他のために、
プログラム(OP)75によって示される如き多くの他
のプログラムを必要とする。
更に、制御記憶装置73は、論理装置制御ブロック・レ
ジスタ62 (代理ビット97を含む)、アクチブ・デ
ィレクトリ・エン1〜す・バッファ・レジスタ76、待
ち行列レジスタ69 (WR,RQ39− 及びPを含む)、チャネル制御ブロック・レジスタ63
、及び本発明と関連を有しないがシステム10を動作さ
せるためにプロセッサ3IPが使用する他のレジスタを
含む。例えば、ちらし回路44は、その機能をプログラ
ム75によって実行される。プログラム75とシステム
記憶装置30にある散乱索引表45との通信は、勿論プ
ロセッサ3 ]、 Pを介して行なわれる。プロセッサ
31Pは、プログラムを実行して、バス72を介して、
適当な出力制御信号をシステム記憶装置30へ送る。
表45が制御記憶装置73に設けられれば、動作はスピ
ード・アップされる。
本発明の詳細な動作の説明を続ける前に、本発明の実施
を成功させるために必要な制御データを含むレジスタに
ついて、第5図を参照しながら説明する。レジスタ62
は、論理装置の各々に関して記憶システム10の全ての
動作を効果的に処理するために、プロセッサ31Pによ
って使用される制御データを含む。従って、DASDl
6の各4のために、3つの論理装置制御ブロックが存在
す40− る。8個の装置を有する記憶システム10において、2
4個の論理装置制御ブロックが存在する。
制御部56を介して処理されるDASDl、6への直接
アクセスは、論理装置制御ブロックを必要としない。制
御部56は、先行技術に基くディスク記憶装置と同じ様
に処理するからである。
レジスタ62は、制御データを4つの主要部分に配列す
ることによって最も良く理解できる。基本部分(FOU
ND)80は、実施例の基本的構造機能を説明する制御
データに関連する。ページング・パラメータ部分(PP
ARMS)81は、ホス1〜IIから受取られたページ
ング・パラメータ設定指令に関連する制御データを含む
。指令パラメータ部分(CPARMS)82は、ホスト
11から受取らけたセクタ設定、シーク、及びID探索
指令に関連する制御データを含む。読取パラメータ部分
(RPARMS)83は、データ信号をキャッシュ40
へ転送するために、DASDl6にアクセスする時に使
用される制御データを含む。
基本部分80は、次の如き制御データ・フィールドを含
んでいる。装置フィールド(ODE)90は、現在の論
理制御装置ブロックに関連した論理装置に関し、装置終
了がホストのために生じたことを示す単一のビットであ
る。チャネル・マスク・フィールド(CNL  MAS
K)91は、キャッシュ40を介して指定されたDAS
D 16のデータへアクセスするために、ホスト11の
どのチャネル・アダプタ32が(従って、どのチャネル
が)論理装置を能動化したかを示す。論理アドレス・フ
ィールド(LDADDR)92は、論理アドレスのいず
れが論理装置制御ブロックに関連しているかを示す。例
えば、DASD16のフィールド92は、DASD16
に基く3つの論理装置の第1のものに対してビット・パ
ターン01000を含む。実際問題として、論理装置制
御ブロックのアドレシングは、ベース・アドレスからの
オフセット値として使用される論理装置アドレスによる
。論理装置アドレス・フィールド92はレジスタ62の
検査及びシーク指定機能を含む。指令フィールド(CM
D)93には、指定された論理装置に対してシステム1
0で現在活動状態になっているホス1〜11から受取ら
れた指令が記憶される。シーケンス・フィールド(SE
Q)94は、順次的アクセスがホスト11によって指定
されたかどうかを表示する単一のビットである。このピ
ッ1〜が活動状態であれば、ホス1〜11はデータの一
連のページング・ブロックを所定のシーケンスで読取る
ことを意味する。チャネル指令リトライ・フィールド(
OCR)95は、チャネル指令リトライが進行中である
こと(即ち、チャネル指令リトライがホスト11へ送ら
れたこと)を示すビットである。チャネル指令リトライ
は、既知の入出カシステム動作の一部であり、キャッシ
ュ40のミスが生じた時に使用される。ミス・フィール
ド(MISS)96にあるビットは、記録装置43の走
査がミス条件を示したことを表示する。即ち、この場合
、所望されたデータがキャッシュ4oになかったか、ホ
スト11によって書込まれるべきデータについて、キャ
ッシュ4oの中でスペース43− が割当てられなかったことを示す。代理ピッ]〜(P)
97が、基本部分80に存在している。他の制御フィー
ルドもあるが、それらは本発明と関連を有しないので説
明を省略する。
ページング・パラメータ部分8】はシーケンス・フィー
ルド(SEQ)100を含む。フィールド100は、多
数の連続したブロック・アドレスがホスト11によって
参照されることを示す。フィールド100は、シーケン
ス・フィールド(SEQ)94と同じ情報を含む。読出
フィールド(RO)101は、ホスト11からの読取指
令の結果として、キャッジ40からチャネル・アダプタ
32を介してホスト11へ転送されたページング・ブロ
ックが、データ転送に続いて無効にされてよいことを示
す。カウント・フィールド(B  C0UNT)102
は、処理されるべきページング・ブロックの現在の数を
示す。ベース・シリンダ・フィールド(BASE  C
YL)103は、ページング・パラメータ設定指令の実
行中に受取られたベース・シリンダ・アドレスを示す。
本発明に44− 関係のない他のフィールドもページング・パラメータ部
分81に含まれている。
指命パラメータ部分82は、ディスク記憶装置のシーク
を実行するために、シリンダ及びトラック・アドレスと
共にDASD16のアドレスを含んでいるシーク・アド
レス・フィールド(SEEK  ADDR)104を含
む。探索フィールド(SID)105は、探索識別引数
を含む。セクタ・フィールド(SECT)106は現在
セットされているセクタ値を含む。セクタ値は、ページ
ング・ブロックにアクセスするためのディスク記憶装置
の回転位置を示す。
読取パラメータ部分83は、ホストの要求を満足させる
ため、DASD16へのアクセスが必要であることを示
す要求フィールド1.10(REQD)を含む。この場
合、データはDASD16からキャッシュ40へ転送さ
れ、ホスト11へ中継されねばならない。進行フィール
ド(RIP)111は、DASD16からキャッシュ4
0への転送が現在進行中であることを示す。後処理フィ
ールド(RA)11.2は、DASDl、6からキャッ
シュ40への転送の後処理が進行中であることを示す。
読取パラメータ部分には、DASDl6とキャッシュ4
0との間の関係状態に示す他の制御フラグを含ませるこ
とができる。装置アドレス・フィールド(DADDR)
113は、読取動作と関連したDASDl6のアドレス
を含む。記録装置インデックス・フィールド(D I 
RI NDEX)114は記録装置43に対するインデ
ックスを含む。このインデックスは、装置アドレスによ
って指定された記録装置中の対応するエントリのアドレ
ス、及び対応するシリンダ・ヘッド及びレコード番号を
計算するために使用される。記憶アドレス・レジスタ・
フィールド(SSAR)1.15は、システム記憶装置
30の記憶アドレス・レジスタ(図示せず)の指定情報
を含む。この指定情報は、ページング・ブロックをDA
SDl6からシステム記憶装置30へ読出す時に使用さ
れる。
この点に関して説明すると、システム記憶装置30は複
数の(例えば、8個又は16個)アドレス・レジスタ(
図示せず)を含み、これらのアドレス・レジスタは、ホ
スト11とキャッシュ40との間、及びDASDl6と
キャッシュ40との間で迅速なデータ転送を実行するた
めにアドレス可能であるtlj−の記憶アドレス・レジ
スタ・フィールドでもよい。現アドレス・フィールド1
18(CADDR)は、キャッシュ40とDASDl6
との間で信号を転送するために、キャッシュ・ブロック
の現アドレスを含む。保存フィールド(SAVE)11
9は、データ処理において通常の如く実行される様に(
特に周辺装置の制御において)、切離された動作のパラ
メータを一時的に保存する領域である。
チャネル制御ブロック・レジスタ63はページング・パ
ラメータ設定フィールド(SPP)120を含む。フィ
ールド120は、ページング・パラメータ設定指令が受
取られたかどうかを示す。
ページング・パラメータ設定指令は、ページング・モー
ドにおける動作のために、システム記憶装置30へのア
クセスを能動化する。指令チェイニン−47= グ・フィールド(CC)121は、指令のチェイニング
がホストIIによって設定されたことを示す。指令チェ
イニングは、データ処理技術分野で広く行なわれている
如く、1組の指令を結合する動作である。読出り1〜ラ
イ・フィールド(RR)122は、システム記憶装置3
0で読出リトライが活動状態であることを示す。例えば
、エラー状態が発生した時、そのエラー状態からの回復
は読出リトライを必要とするかも知れない。指令フィー
ルド(CMD)123は、ホスト11から受取られた現
在又は最後の指令を含む。この指令は、記憶システム1
0で現在処理されている。チャネル・マスク(CNL 
 MASK)124は、どのチャネル・アダプタ32が
フィールド123の内容を制御機構31へ転送したかを
示す。論理アドレス・フィールド(LDADDR)12
5は、ホスト11によって現在選択されている論理装置
のアドレスを含む。ポインタ・フィールド(L D C
BP)126は、現在の論理装置に関連した論理装置制
御ブロック・レジスタ62を指定するポイ=48− ンタ又はアドレス値を含む。速度フィールド(SPEE
D)127は接続されたチャネルのデータ速度を示す。
カウント・フィールド(RWR)128は、リトライが
無効にされる前のオーバラン・カウントを含む。リトラ
イの閾値は周知であるので、更に詳述しない。チャネル
制御ブロック・レジスタ63は、必要に応じて他の制御
ビット及び制御フィールドを含んでよい。
アクチブ・ディレクトリ・エントリ・バッファ・レジス
タ76は、記録装置43の1つのエントリを含む。従っ
て、レジスタ76の説明は、記録装置43をも説明する
ことになる。インデックス・フィールド(INDEX)
1.07は、その時の記録装置エントリの論理アドレス
である。このフィールドは、各エントリにおける自己識
別データを与える。フィールド107は読取パラメータ
部分83の記録装置インデックス・フィールド114に
含まれる情報と同じものを含む。フィールド108は、
データを含むDASDl6のアドレスを含む。このデー
タはキャッシュ40に転送されているか、又はこれから
転送されてよい。CCPフィールドは物理装置のシリン
ダ・アドレスを含み、CCLフィールドは物理装置の論
理シリンダ・アドレスを含む。Hフィールドはヘッド・
71−レスを含み(即ち、DASDl6のどの表面がア
クセスされるべきかを示し)、Dフィールドは装置アド
レスを含み、Rフィールドはレコード番号を含み、5E
CTORフイールドはセクタ・アドレス(即ち、回転的
位置)を含む。Dフィールドは装置アドレス113に対
応する。上記のd(と明から、レジスタ62は論理装置
の全ての制御情報を含み、記録装置43及びレジスタ7
6は、論理装置とは独立したDASDl、6の制御情報
を含むことが分る。即ち、DASDl6とシステム記憶
装置30との間における記憶システムIOの動作は、全
ての論理装置について同じである。記憶機構31は、D
ASDl、6への複数アクセスを与えるため、ホスト1
]とシステム記録袋[30との間に存在する論理装置の
分離状態及び連続状態を発生する。
レジスタ76のリンク・フィールド(LINK)109
は各ちらしクラスの記録装置43のエンI−りをリンク
する。換言すれば、ちらし回路44は、表/I5を介し
て、記録装置/13の最初のエントリにアクセスする。
もしこのエントリが一致しなければ、記録装置43から
第2のエントりをフェッチするために、リンク・フィー
ルド109が使用される。この第2のエントリは、同一
のちらしクラスにあり、従って記録装置43のために、
表45の表示によって指定される。ちらしクラスの終り
に、リンク・フィールl;’ + 09はオール・ゼロ
となり、これはちらし演算の終り又は記録装置43にお
けるエントリの連鎖の終りを示す。もし表45でオール
・ゼロが出てくれば、ミスが生じたのである。勿論、記
録装置43は、各エントリのために他のフィールドを含
むことが出来る。この様なフィールドは、本発明の範囲
外に属する。
システム記憶装Fi30及びDASDl6の間のデータ
転送動作は、ホスト11及びDASDl6の間の動作及
びホスト11及びシステム記憶装置30の間の動作に対
して非同期的であり、且つ実−51= 質的に独立している。この独立性を達成するために、1
組の読取待ち行列(RQ)及び書込待ち行列(WQ)が
1組の待ち行列レジスタ69に設定される。待ち行列レ
ジスタ69は、書込待ち行列85を含む。書込待ち行列
85は、DO−D4のラベルを有するDASDの各々の
ために別個の書込待ち行列を有する。各々の書込待ち行
列は、記録装置43のインデックス・フィールド107
に対応するインデックスを含む。更に、この待ち行列は
、DASDl6にアクセスするために必要なアドレスを
記憶する。このアドレスは、シーク引数、検索引数、セ
クタ、装置書込及び読取マスク、並びにキャッシュ40
にアクセスするためのアドレス部分を含む。その様なア
ドレス部分としては、例えばキャッシュ・ブロック・ア
ドレス及びシステム記憶装置30をアドレスするための
S 5AR(図示せず)等がある。代理書込ジョブがも
う1つのメモリ制御装置17に送られるとき、重複書込
が生じない様に、書込待ち行列85を消去することが出
来る。しかしながら、非同期的書込が生52− しる様にすることが重要である。従って、代理書込が他
のメモリ制御装置へ出力されたことを、書込待ち行列8
5において示すことが望ましい。その様な表示は、各装
置に関連する書込待ち行列における単一のビットPWO
によって示される。ビットPWOは、代理書込ジョブを
他のメモリ制御装置へ送っているメモリ制御装置に、所
与のDASDl6への代理書込が開始されたことを示す
本発明の1実施例においては、代理書込ジョブは、DA
SDl、6のための単一の代理待ち行列84中に受取ら
れる。両方のメモリ制御装置からの書込を混合するため
に、入力代理書込ピッl−P、W 丁が書込待ち行列8
5に含まれており、ビットPWIは、メモリ制御装置】
7が書込待ち行列85を走査するときに、対応するDA
SDl6に更に行なわれる書込動作に関して代理待ち行
列84を調べる様に、メモリ制御装置17に指示する。
ID361は、後述するビット350乃至360に記憶
された信号により表わされる代理作業ジョブの識別を記
憶する。その様なIDは、作業要求側のメモリ制御装置
17のカウンタ即ち代理識別カウンタ(PIDK)36
3によって発生されるPTDK363は、代理要求がも
う1つのメモリ制御装置17へ送られる毎に増分される
。その様なTDは、静的フィールド(SD)364にお
けるメモリ制御装置の識別を含む。WQ85において、
書込待ち行列85の次のエントリを含ませるために、リ
ンク・フィールドを設けることが出来る。又、次の装置
書込動作(即ち、キャッシュ40中のどのページがDA
SDl6へ次に書込まれるべきか)を指定するためにも
、リンク・フィールドを設りることができる。従って、
書込待ち行列85は、所与のDASDl6のための1つ
又は複数の書込情報を含むことができる。
更に、待ち行列レジスタ69は、読取待ち行列を含む。
その各々は、ラウントロピン待ち行列を構成する部分8
6及び87を含む。部分86は、どの論理装置が対応す
るDASDl6からキャッシュ40へのデータ転送を必
要とするかを示す論理装置制御ブロック(L D CB
 )レジスタ62のアドレスを含む。部分87は、各待
ち行列にある3つの可能なエントリの1つを指定するポ
インタを含む。このエン1へりは、どの論理装置が次に
サービスを受けるべきかを示す。例えば、アドレスDO
に対応する部分87は数字2を含む。これは、L D 
CB 2が次にサービスを受け、それに続いてL D 
CI33がサービスを受け、次にLDCBIがサービス
を受けることを意味する。アドレスD。
は、関連する全ての論理装置について、完全な読取待ち
行列を有する。アドレスD1は2つのエントリを有する
。この読取待ち行列においては、Lr)CB 1及びL
 D CB 3が部分87におけるポインタ番号3と共
に指定され、LDCB3が次にサービスを受けるべきこ
とを示す。読取待ち行列の部分86.87にアクセスす
ることによって、プロセッサ31Pは正しいT−D C
Bレジスタ62へアクセスするように能動化される。そ
れは、データがホスト11によって要求されたシーケン
スに対して適当なシーケンスで、DASDl6からキャ
ッシュ40ヘデータを転送するためである。代55− 理読取要求をより良好にトラッキングするために、RQ
部分86は、各LDCBエン1−りに対して、2ビツト
の位置PRO及びPRIを含むことができる。PR,O
は1代理読取が他のメモリ制御装置I7に出力されたこ
とを示し、PRTは、代理読取が他のメモリ制御装置1
7からに入力されたことを意味する。代理ピッ1〜97
は、PR○及びPRIビットの両方を含むことができる
。読取代理ビットは、WQ85に関して述べた場合と同
一である。
所与の時間に単一の代理作業ジョブしか実行されること
ができない実施例における代理待ち行列84は、代理作
業ジョブが待ち行列に入れられる1組のレジスタを含む
。対応する複数のレジスタが多重代理ジョブ待ち行列を
処理することができ、各組のレジスタは、同一の情報及
びレジスタを相互にリンクするためのリンク・フィール
ド(図示せず)並びにどの代理ジョブが初めに行なわれ
るべきかを示す優先順位標識を含む。第5図に示されて
いる如く、代理待ち行列84は、代理デステ56− −ジが受取られたことを示すピッ1〜PDR350を含
む。″デステージ″は、キャッシュ40から示されたD
ASDl、6ヘデータを転送するための書込動作に対応
する。同様に、PSR351は、代理ステージが受取ら
れたことを示す単一のビットである。″ステージ′″は
、データがDASDl6からキャッシュ40へ転送され
る読取動作に対応する。レジスタ352は、DASDl
、6のアドレスを含み、装置の表示DO等並びにシリン
ダ、ヘッド及びレコード番号の内部アドレス表示(CC
Hl−[R)を含む。また、このアドレスは、ビット3
50及び351により表わされるデータ転送のための適
当なキャッシュ40の領域をアクセスするための記録装
置43への入力を供給する。キャッシュ40におけるデ
ータ記憶スペースの割振り及び割振り解除は通常の手順
に従う。ビット353には、ブロック又はレコード・カ
ウント(BCOUNT)が記憶される。これは、非同期
的データ転送をより効率的に行なうために、単一の代理
要求が複数のレコードを処理することを可能にする。
ビット354は、状況照会が行なわれたこと、即ち作業
要求側のメモリ制御装置17が代理作業を探索するため
に別のメモリ制御装置17に照会を行なったことを示す
単一のビットである。メモリ制御装置17が、他のメモ
リ制御装置にQSを送って、ホス1〜11から更に作業
を受取ることによって、代理動作が禁止されることはな
い。PS355は、他の作業移転側のメモリ制御装置J
7に代って、代理ステージが開始されたことを示す。
これに対応して、PD356は1代理デステージが開始
されたことを示す。同様に、CPD358は、PD35
6により示された代理デステージの完了を示す。PE3
59は、代理動作中にエラーが生じたことを示す。その
様なエラーは、他のメモリ制御装置に送られるものとし
て供給されることになる。ビット354乃至359は、
メモリ制御装置17に代理作業ジョブの状況を示すメツ
セージ状況ビットを構成する。pA360は、代理動作
のための肯定応答が送られ又は受取られたことを示す。
QS354及びPA360の両方が1に設定されたとき
は、代理照会が行なわれ、受取られた代理ジョブが作業
移転側のメモリ制御装置17から独立して行なわれる様
に、該メモリ制御装置17がその要求に対して肯定応答
している。
第5図に示されているレジスタの他に、他のレジスタを
記憶システム10を構成するために使用することができ
る。
第6図はプログラム50Pとそのチャネル・アダプタ3
2に対する接続を示すが、これらは、制御機構31の該
当する部分に関して、本発明がどのように実施されるか
を示す。本発明に直接の関係を有しない他の指令及び機
能もプログラム50Pで実行されることを理解されたい
。ホスト1Jからの指令は、入出力接続12〜15を介
してチャネル・アダプタ32へ供給される。チャネル・
アダプタ32は、通常の指令の前処理を行なう。
それは、指令コード及び論理装置コードをレジスタ13
0へ供給することを含む。バス131は、レジスタ13
0にあるアドレスの1部を搬送するが、それは第3図に
関して説明した如く制御装置59− CUを識別する。バス132は、DASDl6のアドレ
スを搬送する。これは、アドレス構造20(第3図)の
DEVに対応する。バス133は、アドレス構造20の
AC部分を搬送するが、AC部分は、アドレスされたD
ASDl6への直接アクセスが行なわれるべきか、又は
論理装置のいずれが現在アドレスされつつあるかを識別
する。バス134は、受取らけた指令のコードを制御機
構31へ搬送する。更に、チャネル・アダプタ32は、
プログラム50Pを活動化するために、プロセッサ31
Pへ割込信号を供給する。プロセッサ3 ]、 Pは、
チャネル・アダプタ32からの割込信号によって活動化
されると、受取られた指令を処理する準備として、ステ
ップ135において、本発明と直接の関連を有しない機
能を実行する。ステップ136において、アドレス部分
ACが分析され、DASDl6への直接アクセスが望ま
れているのか、又は装置へのアクセスがキャッシュ40
を介して行なわれるのかが決定される。直接モードのア
クセスは、プログラム56Pへの論理径60− 路137を経てプロセッサ3LPによって行なわれる。
プログラム56Pが活動化されたとき、アドレスされた
DASDl6が使用中になってキャッシュ40に関しデ
ータ信号を転送するために使用できないかどうかが調べ
られる。ステップ136において直接モードが示されな
いとき、ページング・モード(即ち、キャッシュ40を
介して、DASDl、6のデータへアクセスする動作モ
ード)が示される。論理ステップ140において、プロ
セッサ31Pにある内部レジスタのページ・ピッ1−が
、活動状態にセラ1〜される。このビットは、プログラ
ム50Pがページング・モードで指令を処理しているこ
とを記憶するために、プログラム50Pによってのみ使
用される。プログラム50Pの動作が完了すると、ペー
ジ・ピッ(〜はリセットされる。このため、内部レジス
タのビット位置は示されていない。ステップ140に続
いて、本発明と直接の関連を有しないステップが141
において実行される。ステップ142において、受取ら
れた指令がアドレスされた論理装置に対する感知指令で
あるかどうか(ホスト1]は記憶システム10から感知
情報又は状況情報を要求したかどうか)が決定される。
感知指令の場合、論理経路】43を経て、ステップ14
4においてページ・ビットが0にリセットされる。即ち
、状況情報がホスト11に供給され、それ以上のページ
ンク機能は実行されない。
非感知型の指令であれば、論理ステップ145が実行さ
れる。ステップ145の準備動作として、エラー・チェ
ック状態が存在するかどうかが調べられ、また本発明の
実施に必要でない他の内部ハウスキーピング機能(例え
ば、アドレス設定)が実行される。次いで、ステップ1
45において、プログラム50Pは、ページング・パラ
メータ設定指令(spp)を検出する。この指令が検出
されると、論理経路146を経て、第9図に設定された
ステップへ行く。そうでなければ、本発明と直接の関連
を有しない機能がステップ147において実行され、次
いでステップ148において、No−0P (ノー・オ
ペレーション)が検出されたかどうかが決定される。N
O−〇Pが検出されると、論理経′Rr14.9を経て
、本発明と無関係の機能が実行される。No−〇Pが検
出されないと、ステップ138において、ページング・
ビットがゼロにリセツ1〜され、次いでステップ139
において、本発明と無関係の機能が実行される。次いで
、第7図に示されている如く、プログラム61Pが活動
化される。
第7図は、本発明の理解に必要なプログラム56Pの論
理ステップを示す。プログラム56Pの活動化は、プロ
グラム50P又は61Pによって行なわれる。DASD
I6への直接アクセスについては、プログラム50Pが
55(第3図参照)で入ると、ステップ150において
、アドレスされたDASD16が選択される。また、直
接アクセス・モードがステップ150に続くことを示す
ため、フリップ・フロップ153(プロセッサ31Pの
内部にある)がセットされる。ステップ】51において
は、アドレスされた装置が、指令を受取ったチャネル・
アダプタではない他のチャネ63− ル・アダプタ32へ予約されているかどうかを、プロセ
ッサ31 Pが決定する。もし予約されていれば、論理
経路152はプロセッサ32Pを通常の予約侵害コード
へ導く。これは、要求中のチャネル・アダプタ32へ、
使用中状況を表示する。
もし装置が他のチャネル・アダプタへ予約されていなけ
れば、装置の選択はプログラム56Pにおいて継続され
る。
プログラム56Pを介して要求されたDASD16への
アクセスは、論理経路66を介してプログラム61Pか
らも生じる。そのような要求は、フリップ・フロップ1
53を設定し、ページング・アクセスが行なわれている
ことを示す。プログラム61Pからの要求は、予約評価
ステップ151の後に論理経路66を経て与えられるの
で、装置の予約は、DASD16へのページング・アク
セスに何の影響も及ぼさない。ステップ151又は経路
66のいずれからであっても、論理ステップ154は、
ホスト11又はプログラム61Pのいずれかによってア
ドレスされたDASD16が使64− 用中であるかどうか(即ち、現在データ処理機能を実行
しているのか、又は1−ラックの回転方向の探索の如く
独立した機能を実行しているのカリを調べる。もし装置
が使用中でなければ、ステップ155において装置使用
中フリップ・フロップ(図示せず)が活動状態にセット
される。この様なフリップ・フロップは、装置が使用中
であるかどうかを調べるため、チャネル・アダプタ32
又はプロセッサ31Pによって感知されることができる
。ステップ156において、アドレスされたDASD1
6の選択が完了して、データ転送が可能になる。ステッ
プ157において、動作が実行される。即ち、制御装置
からアドレスされたDASDへの指令がシリンダのシー
クであれば、ステップ157において、シリンダ・シー
ク指令が、目標のシリンダ・アドレスと共に、アドレス
されたDASD16へ転送され、読取指令については、
DASD]6からホスI−]1ヘパスフo(第4図)を
介して、又はキャッシュ40ヘバス42を介して、デー
タ信号が読取られる。
他方、アドレスされたDASDが使用中であれば、ステ
ップ160において、装置使用中信号が要求を出したチ
ャネル・アダプタ32又はプロゲラA 61 Pへ転送
される。装置を動作させるための制御データを含む装置
制御ブロックDCB (図示せず)は、ステップ161
において、装置終了フラグ(ODE)が1にセラ1〜さ
れる。プログラム61Pの場合、DASD]、6への試
みられたアクセスは、レジスタ62(第5図)の装置フ
ィールド90を活動状態にセットする。ステップ162
において、プロセッサ31Pは、実行されたばかりの動
作が直接アクセスのためであるかページング・アクセス
のためであるかを決定する。フリップ・フロップ153
は線163を介してこの表示信号を供給する。即ち、フ
リップ・フロップ153が「61」状態にあるとき、プ
ログラム61Pへの論理経路68がとられ、「50」状
態の直接アクセス・モードにあるとき、プログラム50
Pへ戻って、状況が報告されるとともに、チャネル・ア
ダプタ32の終了動作がとられる。このような状況報告
動作及び終了動作は、コンピュータに関して通fit実
行される動作であるので、更に詳述しない。
第8図は、システ、4% 10の動作の全体的論理フロ
ーを示す。ステップ170において、後に第9図を参照
して説明する如く、プログラム50Pからページング・
モードがセラ1へされる。本発明と無関係の機能がステ
ップ171において実行され、セラ1〜されたページン
グ・モードの完了が、プログラム50Pを介してステッ
プ1.72において報告される。次いで、ホスト11は
他の指令を送り、この指令はステップ173においてデ
コードされる。指令の実行はステップ174において開
始される。記録装置43の探索はステップ175におい
て成される。それは、キャッシュ4o中の記憶スペース
が、要求されたページング・ブロックへ正しく割振られ
たかどうかを調べるためである。
ステップ176においてヒラ1へが検出されると、デー
タ転送(ホス]−11への読取、又はホスト11からの
書込)がステップ177において実行さ=67− れる。次いで、データ転送のためにアドレスされたキャ
ッシュ40の領域が、LRUリス1−更新ステップ17
8において、最近時に使用されたものとして示される。
次いで、プロセッサ3 +、 Pは、指令の完了を報告
するために、プログラム50Pへ戻る。受取られた読取
指令により生じたキャッシュのミスについては、ステッ
プ180において、読取要求が成され、ステップ181
において、チャネル指令リトライ信号がプログラム50
Pを介してホス1〜11へ送られる。書込指令について
は、キャッシュ40のセグメントが割振られ、次いで論
理経路182がとられてステップ177のデータ転送が
実行される。注意すべきは、キャッシュへの書込みは、
キャッシュ40中にスペースを割振るために必要な僅か
な時間を除いて、指令の実行を遅らせないことである。
ステップ173〜180は、指令の各連鎖の間、数回実
行されることができるが、ページング・モードは指令の
連鎖当り1回だけセットされることを理解されたい。
DASD]6からの非同期的データ転送は、プロ8− セッサ3 ]、 Pによって活動化されることを要する
プロセッサ31Pは周知の作業探索走査(アイドル走査
)を実行する。論理経路183がとられると、待ち行列
レジスタ69がステップ1.84において検査される。
待ち行列レジスタ69により、データ転送を実行すべき
ことが示されると、そのジョブが送られる。ステップ1
85においてキャッシュ・スペースが割振られ、ステッ
プ186において内部指令ワードの連鎖が形成される。
内部指令ワードは、チャネル・アダプタ32を介してホ
ストIJから受取られたCCWと同じである。
こうして、キャッシュ40とDA、5D16との間の非
同期データ転送の動作ば、プログラム56Pを介して実
行される。これは、非同期動作が直接アクセス動作と同
じレベルであることを意味する。
即ち、非同期的動作は、ホス1−11からの直接アクセ
ス要求に優先順位を与えるのではなく、同一の優先順位
を有することを意味する。DASDI6からキャッシュ
40ヘデータを自動的に転送するために、処理はステッ
プ187においてプログラA 56 Pへ戻される。そ
の転送が終ると、ステップ188において、プロセッサ
31Pは、ディレクトリ43等を更新するために、ハウ
スキーピング機能を実行する。ステップ189において
、作業は待ち行列レジスタ69からはずされる。読取動
作については、装置終了信号がプログラム501)を介
してホスト11へ送られる。ホスト11からのページン
グ・パラメータ設定指令は、記憶システム10へ、後続
する指令の連鎖において、3つの論理アドレスの1つを
介してDASD]、6をアクセスするためにキャッシュ
40を用いるデータ転送が行なわれることを知らせる。
第9図に示されている如く、ページング・パラメータ設
定論理ステップの活動化は、論理経路146を介して行
なわれる。ステップ190において、チャネル制御ブロ
ック(CCB)レジスタ63がアクセスされ、ページン
グ・パラメータ設定(s p p)フィールド120が
1にセットされ、指令連鎖(CC)フィールド】21が
Oにセラ1〜され、読取りトライ(R,R)フィールド
が0にセラ1へされる。これは、ページング・パラメー
タ設定指令の実行のために、レジスタ63を初期設定す
る。次に、ステップ191において、レジスタ63が再
びアクセスされ、指令(CMD)フィールド123がS
 I” Pを表わすコードと同じに設定される。ステッ
プ192において、レジスタ63が再びアクセスされ、
チャネル・マスクが第5図のレジスタ124へ転送され
る。次に、ステップ193において、論理装置制御ブロ
ック・レジスタ62のポインタが発生され、レジスタ6
3のポインタ・フィールド126へ転送される。レジス
タ62のポインタは、レジスタ62のベース・アドレス
を論理装置アドレスで修正したものである。
次に、ステップ193において発生されたポインタに対
応するレジスタ62において、論理ステップ194は、
スター1〜入出力(SI○)ホスト選択信号が受取られ
たことを示しくこれは基本部分80に示さ、ftでいな
い)、装置(○DE)フィールド90がゼロにリセット
され、チャネル指令リトライ(CCR)フィールドがゼ
ロにリセッ1−さ71− れ、シーケンス(S E Q)フィールド9/lがペー
ジング・パラメータ設定指令から受取られた値にセット
される。この値は、シーケンシャル動作が実行されるべ
きか否かを示す。同様に、ページング・パラメータ設定
指令によって選択されたページング・パラメータである
「読取放棄」ビットが、ページング・パラメータ部分8
1の読取(RO)フィールド101に挿入される。ステ
ップ195においては本発明と無関係の論理ステップが
プロセッサ3IPによって実行される。次に、ステップ
196において、レジスタ62が論理アドレスにおいて
検査され、シーケンス(SEQ)フィールド94が活動
状態にセットされているかどうかが決定される。もしセ
ラ1−されていなければ、プログラム50Pへの戻りが
生じ、ページング・パラメータ設定指令が実行されたこ
とを示す。シーケンシャル・モードについては、ステッ
プ】97において、ブロック・カウントがページング・
パラメータ部分81のカウント・フィールド102にセ
ラ1〜される。シーケンス・フィールド94が72− 活動状態であるとき、ページング・パラメータ設定指令
は修飾パイ1〜を有し、このバイlへは、指令の現在の
連鎖中で転送されるべきブロックの数を示す。ステップ
198において、ブロック・カラン1〜が検査される。
もしそれがゼロであれば、エラーが生じている。即ち、
ホスト11がゼロ・ブロックの転送を示すのは正しくな
い。もしブロック・カラン1−がゼロでなければ、プロ
グラム50Pへの戻りが生じ、ページング・パラメータ
設定指令が成功裡に完了したことが報告される。
単にプログラム50Pが指令をデコードできるだけでな
く、プログラム61Pもページング動作に関連する指令
をデコードできなければならない。
第10図は、そのようなデコーディングに関連した論理
モジュールを示す。ページング・モード論理アドレスの
連鎖された再選択の間に、プログラム50Pからのエン
トリがなされ、プログラム61Pはレジスタ130 (
第6図)にある指令をデコードし、適当な動作を開始す
る。エラー状態も報告される。いくつかの内部レジスタ
(IR)がこのプログラム6 ]、 Pの実行中に使用
される。これらの内部レジスタは、図を簡略にするため
に図示されていない。マイクロコードにおける内部レジ
スタの使用及び他の型のプロセッサ31Pの機能は、周
知である。レジスタ130(第6図)にある指令と関連
して、論理装置アドレスが与えられる。処理速度を高め
るために、レジスタ62の選択された部分がプロセッサ
3]Pの内部レジスタ(図示せず)へ転送される。次に
、ステップ200において、基本部分80にあるフィー
ルド91のチャネル・マスク及びフィールド92の論理
アドレスがプロセッサ31Pの他の内部レジスタ(図示
せず)へ転送される。ステップ201においては、レジ
スタ130からの指令が内部レジスタ(図示せず)へ転
送される。ステップ202において、レジスタ63がア
クセスされ、フィールド125 (第5図)にある論理
アドレスと、レジスタ130(第6図)から受取られた
論理アドレスとが比較される。もしアドレスの変更がな
ければ、ステップ203と204が省略される。そうで
なければ、レジスタ63がステップ203において初期
設定される。即ち、チャネル・アダプタ32とレジスタ
130から取られた現在の制御データの全てが、レジス
タ63へ転送される。
ステップ204においては、前述の如く、レジスタ62
に対する新しいポインタが計算され、レジスタ63のフ
ィールド126へ転送される。ステップ205において
は、レジスタ62のSI○フラグ(図示せず)がゼロに
リセッj〜される。即ち、現在、指令の実行へ進んでお
り、SI○はもはや新しいものとは考えられない。ステ
ップ206において、レジスタ62の基本部分80にあ
るフィールド95が検査される。もしそれがゼロを含め
ば、ステップ207において本発明と無関係のステップ
が実行され、次にステップ208において、レジスタ】
30に受取られ、且っ201で内部レジスタに記憶され
た指令が、レジスタ62のフィールド93に記憶される
。フィールド100.101等にあるフラグがプロセッ
サ31Pの内部レジスタ(図示せず)へ転送される。次
いで、75− ステップ209において受取られた指令を実行するため
のコードが活動化される。指令が完了した後、マイクロ
コードはプロセッサ31. Pをプログラム50Pへ戻
す。指令としては、セクタ設定、シリンダ・シーク、読
取、書込等がある。そのような指令のコードは既知であ
る。
もし206において、チャネル指令リトライ(CCR)
が示されると、ステップ212においてプロセッサ31
Pは、チャネル・アダプタ32から受取られた指令が、
レジスタ62のフィールド93に記憶された指令に対応
するかどうかを調べる。もしそれらが等しければ、ステ
ップ214においてフィールド95がゼロにリセツ1〜
される。
次いで、ステップ208及び209が実行される。
もし指令が正しくなければ、ステップ213においてエ
ラー状態が示され、直ちにプログラム50Pへの戻りが
生じ、ホスト11にエラー状況が報告される。
ステップ209において活動化される如き指令の実行に
おいて、先ずなされるべきことは、要求76− されたページング・ブロックに対応して、キャッシュ4
0に割振られたスペースを求めて、ディレクトリ43を
検索することである。第11図は、論理装置アドレスを
有するデータ読取及びデータ書込の指令のための制御を
実行する論理ステップを示す。先ず、記録装置43が探
索される。もし要求されたページング・ブロックがキャ
ッシュ40になければ、ミスが生じる。次いで、第13
図に示されている如く、成る機能が実行される。他方、
要求されたページング・ブロックがキャッシュ40にあ
ることが識別されれば、キャッシュのヒラ1〜が生じ、
データの転送が行なわれる。読取指令又は書込指令の実
行は継続する。詳細に説明すると、ステップ22]にお
いて、本発明と無関連の論理ステップがエラー状況に関
して実行される。例えば、受取られた指令が読取指令又
は書込指令でなければ、記録装置の探索は適当でなく、
エラー状態が示されねばならない。ステップ222にお
いて、装置アドレスD、シリンダ・アドレスC、ヘッド
・アドレス11、及びレコードRからブロック識別情報
が形成される。本実施例では、トラックごとに4つのレ
コードが存在する。従ってレコード番号は4つの値の1
つである。ブロック識別情報の形成は、単にアドレスを
取出しそれを2パイ1〜の内部レジスタに置くことであ
る。ステップ223において、ちらし回路44が実行さ
れる。ちらし回路の動作がどの様なものであれ、その様
な動作は、テーブル45に対してアドレス変位に対応す
るアドレス信号を発生する。テーブル45は記録装置4
3のインデックスを含む。次に、ステップ224におい
て、そのポインタがテーブル45からフェッチされる。
次に、ループ205において、記録装置43がちらしク
ラス内で走査される。テーブル45がステップ224に
おいて読取られたとき、ちらしクラスの最初のエントリ
を構成する記録装置43からのエン1へりがシステム記
憶装置30からプロセッサ31Pの内部レジスタ(図示
せず)へ読取られる。これは、割込みが生じたとき、シ
ステム記憶装置30を他の動作へ解放する。いずれにせ
よ、記録装置の探索は、ステップ227において、レジ
スタ76を、アドレスされた記録装置エントリに等しく
することを含む。この動作は、記録装置43の適当なエ
ントリを読取ってそのエントリをレジスタ76へ転送す
ることを含む。ステップ228において、本発明と無関
連の論理ステップが実行される。ステップ229におい
て、ブロック識別情報の内部が、レジスタ76に含まれ
るフィールド108と比較される。もし2つの値が等し
ければ、ヒツトが生じ、論理経路230がとられる。も
し2つの値が等しくなければ、ディレクトリ43の探索
が実行される。ステップ231において、リンク・フィ
ールド109の内部が適当な内部レジスタ(図示せず)
へ送られる。ステップ226においては、リンク・フィ
ールドが調べられて、ちらし連鎖の終り(EOC)かど
うかが調べられる。もしエントリがハツシュ・リンク・
チェインの最後のエン1へりであれば、キャッシュのミ
スが生じており、キャッシュのミスを表わすリターン・
コードRCがステップ233においてセットされる。
79− 他方、走査は、連続して記録装置のエントリをレジスタ
76へ転送することによって、キャッシュのヒツトを探
索しつつ、ステップ227及ヒ229を反復しながら継
続する。
ステップ229において、キャッシュのヒツトが生じる
と、240において、プロセッサ31Pは、レジスタ7
6のフィールド108のCCLをシリンダ値Cと比較す
る。もし所望のレコードに対応するレコードがキャッシ
ュ40になければ、ステップ241において、リターン
・コードRCが「レコード無しJのコードにセットされ
る。ステップ240における比較で一致が生じれば、ス
テップ242において、レコードの発見又はヒツトが示
され、ステップ243において、内部レジスタ(図示せ
ず)がレジスタ76(第5図)のインデックス・フィー
ルド107と等しくセットされる。ステップ250にお
いて、本発明と無関係の機能を実行するために、論理経
路234がとられる。次いで、ステップ251において
、キャッシュのミスが示されたかどうかが検査される。
キ80− ヤツシュのミスが示されなかった場合(ヒツトの場合)
、ステップ254において、レコードが発見されたかど
うかが検査される。即ち、ステップ241における「レ
コード無し」のリターン・コード、又はステップ242
における「レコード発見」のリターン・コードが調べら
れる。「レコード無し」の場合、ステップ255におい
て、エラーが示され、プロセッサ31Pはプログラム5
0Pへ戻って、エラー状態が報告される。レコードが発
見された場合、読取指令が実行され、データがキャッシ
ュ40からホスト11へ(又はその逆方向に)転送され
る。これについては、後に第12@を参照して説明する
。他方、ステップ251におけるキャッシュのミスの場
合、ステップ252において、プロセッサ31Pはアド
レスされた論理装置を求めてレジスタ62をアクセスし
、基本部分80にあるミス・フィールド96を1にセッ
トする。次いで、ステップ253において、プロセッサ
31. Pは指令実行のためにキャッシュ40を準備す
る様に進行する。これについては、後に第13図を参照
して説明する。
キャッシュ40のヒツトの場合、読取指令であれ、書込
指令であれ、第12図の論理ステップは論理経路256
をとり、ステップ260において、本発明と無関係のエ
ラー検出論理ステップを実行する。ステップ261にお
いて、読取モード又は書込モードが検査される。モード
のチェックは、レジスタ62の基本部分80にある指令
フィールド93に記憶された指令コードを検査すること
によって行なわれる。読取指令の場合、論理経路262
がとられ、書込指令の場合、論理経路263がとられる
読取指令のヒツトの場合、データはキャッシュ40から
ホスト11へ転送される。ステップ270において、デ
ータをホス1−11へ中継するために、データをキャッ
シュ40からバス41 (第3図)を介してチャネル・
アダプタ32へ転送することによって、データ転送が実
際に生じる。そのデータ転送が完了すると(この動作は
、データ処理技術分野において広〈実施されている既知
の自動的データ転送回路(図示せず)によって達成され
る)、記憶システム10の制御は、現在の指令に処理す
るために戻される。ここで理解すべきは、キャッシュ・
ミスを処理している間の制御機能は、チャネル・アダプ
タ32のデータ転送機能とインタリーブされてよいこと
である。いずれにせよ、ステップ271において、プロ
セッサ3LPはレジスタ62の読取フィールド10】を
検査する。
もしフィールド10】がゼロに等しければ、読取の後の
放棄は生じない。ステップ272において、ブロック識
別情報は、最近時に使用された(MRU)キャッシュ・
セグメントとして、LRUリスト中にセットされる。L
RUリストは周知であるので、更に詳述しない。プロセ
ッサ31Pは、ステップ272から、詳述するステップ
277に進む。ステップ271において、もしフィール
ド101が1に等しければ、ステップ273において、
プロセッサ31Pはレジスタ76のフィールド269を
調べる。それは、キャッシュ40中の指定されたページ
ング・ブロックがDASD16中の83− データのコピーから変更されたがどうかを決定するため
である。フィールド269は、所与のレコードについて
、書込指令がキャッシュ40に対して実行されたときに
セットされる。もしキャッシュ40に記憶されたページ
ング・ブロックに変更が生じていないことが、記録装置
によって示されると、ステップ274において、ページ
ング・ブロックを記憶するキャッシュ40の領域が解放
され、レジスタ76の内容及び記録装置43中の対応す
るエントリが消去される。この動作は、キャッシュ4o
からページング・ブロックを効果的に消去する。論理経
路275で示される様に、成る種のエラー状態が検査さ
れる。ステップ276において、プロセッサ31. P
は本発明と無関係の論理ステップを実行し続ける。
変更されたデータ・ブロックを記憶するキャッシュ40
の部分が解放される前に、そのページング・ブロックは
キャッシュ40から対応するDASD]6へ移動されね
ばならない。本発明の一実施例において、そのような変
更されたページング・84− ブロックは、指令連鎖中の最後の指令の直後であって、
その連鎖が完了さ」する前にDASD16へ転送される
。本発明と無関係のステップ276には、バッファから
バッキング記憶装置へデータを直接にデステージするた
めに使用される制御ブロック(図示せず)へ、DASD
16へ転送されることに備えて、ページング・ブロック
をリス1〜することが含まれる。そのような機構は周知
であり、詳細に説明しない。次いで、ステップ277に
おいて、プロセッサ3IPは、シーケンシャル・データ
が処理されているかどうかを調べるために、レジスタ6
2のシーケンス・フィールド94を検査する。もし順次
的データが処理されていなければ、ページング・データ
の1ブロツクのみがホス1〜へ送られ、指令の完了がプ
ログラム50Pによって報告される。もし順次的データ
が処理されていれば、プロセッサ31Pは、ステップ2
78において、ページング・パラメータ部分81 (第
5図)のカウント・フィールド]、 02に示されたブ
ロック・カラン1〜を検査する。もしブロック・カラン
I〜がゼロでなければ、ステップ279において、ブロ
ック・カラン1−から1が減算され、指令の完了がプロ
グラム50Pを介してホスト11に報告される。もしブ
ロック・カラン1〜がゼロであれば、ステップ279に
おいて、順次的データの全てはホスト11へ転送されて
おり、指令の完了が直ちにプログラム50Pを介してホ
スト]1に示される。
書込指令については、プロセッサ3]Pは論理経路26
3から入り、先ずステップ289において、本発明と無
関係の機能を実行する。その様な無関係の機能は、ホス
トIIから適当なチャネル・アダプタ32及びバス4J
を介して、キャッシュ40ヘデータを転送するために、
自動的データ転送回路(図示せず)を設定することを含
む。データ転送は、ステップ290において生じる。デ
ータ転送の間、プロセッサ3IPは、制御機能領域で、
他のチャネル・アダプタ32と動作を継続することがで
きる。同時に、データ信号を転送するために、DASD
16への直接アクセスが生じる。
即ち、チャネル・アダプタCAAが入出力接続12を介
してキャッシュ40とホスト11との間で信号を転送し
ている間、チャネル・アダプタCADは、入出力接続1
5を介してホスト11゛とDASD16との間でデータ
信号を転送することができる。その様な重複動作は、記
憶システム10の効率を高める。データ転送に続いて、
プロセッサ31Pは、ステップ291において、エラー
に関連した機能を実行する。次にステップ292におい
て、転送されたデータ信号のブロック識別情報が能動状
態であるかどうかがテストされる。もし能動状態であれ
ば、これは、ブロックがキャッシュへ監禁されない(即
ち、置換されてよい)ことを意味する。その場合、ステ
ップ293において、変更フィールド269が1にセッ
トされ、ステップ29/Iにおいて、ブロック識別情報
がT、RUリスト(図示せず)中で最近時に使用された
もの(MRU)として示さる。次に、ステップ295に
おいて、本発明と無関係の機能が実行される。
最後に、書込指令について状況を報告するために、87
− プロセッサ3 ]、 Pの制御はプログラム50Pへ戻
る。
第11図においてキャッシュ・ミスの場合、プロセッサ
3 L Pは第13図のステップへの論理経路253を
とる。ステップ300において、プロセッサ31Pは、
指令が読取指令か書込指令かを検査する。読取指令の場
合、後に第14図を参照して説明され又第5図に示され
ている如く、ステップ301において、読取要求が待ち
行列に入れられる。次に、ステップ302において、本
発明と無関連の機能が実行され、且つチャネル指令り1
ヘライ信号がプログラム50Pを通してホスト1】へ送
られる。チャネル指令リトライ信号は、装置終了信号が
記憶システム】0によって送られた後に、ホスト11へ
指令の再転送を求めるものである。装置終了信号は、デ
ータが今やキャッシュ40にあることを示す。
ステップ300における書込指令については、プロセッ
サ31Pは、キャッシュ・ブロックを割振るために、ス
テップ303へ行(。エラー状態88− は、論理経路304を介して報告されるエラーで見出さ
れる。ステップ305において、第5図のレジスタ76
で示されるフォーマットを使用して、新しいエン1−り
が記録装置43へ加えられる。次に、ステップ306に
おいて、実際のデータ転送が生じ、ホス1−11からの
信号がチャネル・アダプタ32およびバス41を介して
、キャッシュ40へ転送される。次に、ステップ307
において、第12図のステップ291〜295が実行さ
れる。
読取待ち行列は、第14図に示さ九ている如く、形成さ
れる。第14図において、プロセッサ31Pは、内部レ
ジスタの内容を論理アドレス・フィールド125の内容
と等しくセットするために、ステップ310において、
チャネル制御ブロック・レジスタ63をアクセスする。
ステップ311において、フィールド125の内容はA
C部分を削除することによって、物理装置アドレスへ変
換される。ステップ312において、装置に対応する読
取待ち行列が1しこ等しくセットされる。即ち、論理装
置に対応する第5図の部分86が1にセットされる。次
いで、この単一ピッ1〜は論理装置制御ブロック・レジ
スタ62のアドレスに変換される。何故ならば、論理装
置制御ブロックのベース・アドレスは、論理アドレスで
あるオフセット値によって知られるからである。レジス
タ62にあるその部分の位置は論理アドレスであるから
、論理装置制御ブロックのオフセラ1へ値も知られる。
次いで、ステップ314において、プロセッサ31Pは
、第5図の部分87がゼロであるかどうか(即ち、読取
待ち行列があるかどうか)を決定する。もし部分87が
空であれば、ステップ320において、読取待ち行列に
対するポインタが論理装置(即ち、どの論理装置がフィ
ールド125にあるかどうかに従って、1.2又は3)
にセットされる。ステップ321において、レジスタ6
2がアクセスされ、読取りトライ・フィールド122及
びカウント・フィールド128が1にセットされる。も
し部分86に読取待ち行列のエントリがあれば(即ち、
読取待ち行列が既に挿入されていれば)、ステップ31
5において、待ち行列ポインタが1だけインデックスさ
れる。ステップ316において、待ち行列ポインタが再
び検査される。もしポインタが3より少なければ、プロ
セッサ31. Pは、論理経路318をとり、部分86
中の次の位置が空であるかどうかを再検査する。もしそ
れが空でなければ、サイクルが反復される。
その反復は、空の待ち行列位置が発見されるか、又はス
テップ317において、エラー状態が示されるまで継続
する。このエラー状態は、読取待ち行列が一杯であると
き(即ち、ポインタが3に等しいとき)、待ち行列読取
要求が与えられたことを示す。
第15図は、負荷の平衡化を達成しそしてデータ記憶階
層10の性能を改善するために、代理作業を移転及び受
取るための両メモリ制御装置17における論理フローを
示している。論理は両メモリ制御装置において同一であ
るので、2つのメモリ制御装置における対応する論理部
分が同一番号で示されている。メモリ制御装置17Aは
作業要91− 求側のメモリ制御装置であり、メモリ制御装置17Bは
代理作業要求に応答する、作業移転側のメモリ制御装置
である。メモリ制御装置17A及び17Bの間で交換さ
れるメツセージの形式が3種顕示されているが、特に状
況を要求するために。
即ち作業トランスファ側のメモリ制御装置17Aが作業
要求側のメモリ制御装置17Aにより実行されている代
理作業の状況を要求したい場合のために、更に他のメツ
セージが用いられることを理解されたい。
初めに、代理に関連する機械動作を統括するために、メ
ツセージ構成について述べる。各代理動作は、代理識別
ID385を含む代理要求メツセージにより開始され、
その様な識別は好ましくは、どのメモリ制御装置17が
その初めの要求及びその要求の通し番号を送ったかを含
む。この様にして、各々のメモリ制御装置17における
最も高い通し番号を単に比較することによって、どの様
に良好に作業がメモリ制御装置間で平衡化されているか
を評価するために、ホスト11は周期的にメ92− モリ制御装置に照会を行うことができる。キャッシュ4
0の状況(自由空間の量が最小)のために、作業要求側
のメモリ制御装置17Aは、PWピッ1〜386を1に
セラ1へすることにより、代理書込が優先されることを
示してもよい。同様に、RRビット387を1にセット
することにより、代理読取動作が優先されることを示し
てもよい(キャッシュ40は、最大の自由なスペースを
有する)。
PAビット388は、如何なる形の代理動作でもよい(
キャッシュ40の自由なスペースが所定の平均値である
)ことを意味する。状況要求ビットSR389は、応答
側の記憶ディレクタ17Bが作業要求側の記憶ディレク
タ]、7AにID385に関連する代理作業の状況を要
求するために用いられる。状況の報告は周知であるので
、状況の要求及び供給については詳述しない。
応答側のメモリ制御装置17Bにより要求側のメモリ制
御装置1.7Aに供給される代理応答メツセージはID
375を含み、ID375は、要求側のメモリ制御装置
が応答を要求に結びつけることができる様に、ID38
5に等しいコードを有している。PSV376は、応答
側即ち作業移転側のメモリ制御装置17Bの状態ベクト
ルを意味する1組のビットを含む。これは、何ら代理作
業が行われないこと等を含む。フラッグ(FLG)37
7は、代理作業が実行されるべきホスト11の処理の識
別、代理作業の優先順位状況等の如き、雑多な情報ビッ
トを含む。代理フラッグ(FLG)378は、代理応答
の性質、即ち読取、書込等を示す。代理ステージ・パラ
メータ(PARMS)379は、読取動作のための代理
待ち行列84のフィールド352及び353に含まれて
いる情報を含み、代理デステージ・パラメータ(PAR
MS)380は、デステージ代理のための同一の情報を
含む。代理動作状況381は、代理動作の現在の状況を
示すための代理要求メツセージ中の状況要求に応答して
用いられる。状況の報告については詳述していないので
、そのフィールドについても更に詳述しない。参照番号
382は、代理応答メツセージに更にフィールドが加え
られ得ることを示す。代理状況メツセージは、要求側の
メモリ制御装置]、7Aによる代理動作の完了時に供給
される。その状況メツセージは、代理要求メツセージ及
び代理応答メツセージと同じコードを有する識別(ID
)390を含む。戻りコード(RC)391は、エラー
のない代理動作が生じたか否かを示す。エラーが生じた
場合には、RC391がゼロでなく、参照番号392に
より示されている如く、更にエラー・パラメータが供給
される。更に、代理読取動作については、ホスト11の
ための終了状況が代理状況メツセージ内に供給される6
その様な終了状況は、ホス1−11のアーキテクチャに
依存し、その理由で省かれ得る。
第15図に示されている機械動作の順序は、プロセッサ
31Pのいわゆるアイドル・ループで開始される。ステ
ップ400において、アイドル・ループは割当て作業機
能を探索する。データ転送、指令実行、チャネル指令リ
トライ・チェック等を含む、その様な作業機能は周知で
あるので、更に詳述しない。割当て作業機能のアイドル
走査は、=95− 行われるべき割当て作業を何ら見出さない場合がある。
それから、要求側のメモリ制御装置17Aは、ステップ
402への論理経i!6401をとる。
ステップ402において、要求側のメモリ制御装置1.
7Aは、待ち行列69を調べることにより、その非同期
的作業レベルを調べる。待ち行列69が比較的高い作業
レベルを示した場合には、論理経路408を介して割当
て作業機能400に戻り、待ち行列69を走査して、該
待ち行列中に示されている作業を実行する。1例におい
て、読取待ち行列RQは2つの閾値404及び405を
有する閾値404は、未処理又は現在のホスト11の要
求に直接関連していない読取を行うための低い方の閾値
である。閾値405は、要求側のメモリ制御装置1.7
Aにより行われねばならない余分な数の読取を示す。読
取待ち行列がその長さを有する場合には、代理作業を要
求することはできない。
1実施例においては、閾値404は未処理でない読取要
求に等しい。同様に、WQは閾値406を有する。閾値
406は、DASD16をより効率96− 的にアクセスするために書込条件がバッチ化又はグルー
プ化される様に選択されることができる。
いずれにしても、待ち行列69のRQ及びWQの内容が
、1対の線407により示されている如く、作業レベル
の評価において考慮される。RQおよびWQが比較的低
い作業レベルを有している場合には(好実施例において
は、ゼロのレベルが用いられる)、代理作業要求が作業
移転側即ち応答側のメモリ制御装置17Bに移転される
。初めに、タイム・アウト410(2秒間の如き)がセ
ットされ、その間の応答側のメモリ制御装置17Bは即
時代理作業要求に応答することができる。ステップ41
1における代理要求メツセージの形式化において、PI
DK363 (第5図)が初めに増分され、それからフ
ィールド363及び364の内容がID385として形
成されて、代理待ち行列84のID361中に記憶され
る。ステップ411において形式化されている要求は、
キャッシュ40において用いられる割振り可能な自由な
スペースを示す入力をLRU(図示せず)412から受
取る。LRUリストの知られている技術を用いたL R
Uにより示されている如く、割振り可能なスペースに基
いて、各々ビットPW38B及びPR387により示さ
れている代理書込又は代理読取のいずれかが、応答側の
メモリ制御装置17Bに対して要求される。L RUは
、キャッシュ40のデータ内容によって両メモリ制御装
置17の動作に影響を与えるので、最も暇なメモリ制御
装置は、キャッシュ40のスペース管理への入力を更に
有している。例えば、割振り可能なキャッシュ・データ
記憶スペースが比較的少ない場合には、キャッシュ40
中の割振り可能なスペースを増すために、代理書込が要
求される。一方、キャッシュ40の大部分が割振り可能
である場合には、ホスト1】に関するデータ記憶階層の
性能を改善するために代理読取が要求される。LRU4
12により示される割振り可能なスペースが割振り可能
なスペースの2つの閾値の中間である場合には、PA3
88は、応答側の記憶ディレクタ17Bが、要求側のメ
モリ制御装置1.7 Aに移転されるべき代理動作の型
を選択できることを示す。
次に、ステップ411において設定されている代理要求
が、タグ線342を経てパラメータ・データ交換を適切
にセラ1〜・アップした後に、データ・バス340を介
してメツセージRAM18を経て応答側のメモリ制御装
置17Bに供給される。
応答側のメモリ1.IJ御装置17Bは、要求側のメモ
リ制御装置17Aにより供給された代理要求メツセージ
が処理される様に、インターリーブされた機械動作の間
にアイドル時間を有している。ステップ422において
、応答側のメモリ制御装置17Bは、各々の長さについ
てその待ち行列69を調べることを含めて、その作業状
況を調べる。それは、要求側のメモリ制御装置1.7A
が既に同じことを考慮した場合でも、キャッシュ40の
割振り可能な自由なスペースの検査を含むことができる
。ステップ/I22における作業状況が比較的少ない場
合には、効率のために、代理作業は行われない方がよい
。従って、ステップ(T−10L D) 425におい
て、応答側の記憶ディレクタ17Bは、 99一 作業を移転せずに、それ自身の作業を保持する。
代理応答メツセージにおいて、PSV376は、PSv
状態ベクトルが比較的少ない作業状況を示しているため
に何ら作業が移転されないことを示す。その様な閾値は
、待ち行列69の閾値404及び406に良好に対応す
る。一方、応答側のメモリ制御装置17Bは、ステップ
422において、その作業レベルが比較的高く、即ち例
えば閾値406又は405よりも高いことを見出すこと
がある。その場合には、代理作業が選択されて、機械動
作ステップ(SEND)426により示されている如く
移転される。機械動作ステップ426は、RQ又はWQ
からのデータ転送動作を選択すること、及び前述の如く
要求側のメモリ1;1J御装置17Aに送られている代
理応答メツセージ内に制御パラメータをそれとともに挿
入することを含む。I40LD又は5ENDのいずれか
のメツセージが各々ステップ425及び426において
発生されると、ステップ427において、応答側のメモ
リ制御装置17Bは、メツセージRAM18を経て要求
側−4,00− のメモリ制御装置1.7Aへ、代理応答メツセージを転
送する。更に、応答側のメモリ制御装置は、要求側のメ
モリ制御装置に移転された代理作業の重複を防ぐための
動作インターロックとして、待ち行列レジスタ69 (
第5図)のエントリPWI、PWO,PRI及びPRO
を用いてもよい。移転されている代理作業は、代理応答
メツセージを代理待ち行列84に割当て作業機能として
転送することによって、要求側のメモリ制御装[17A
により処理される。それから、要求されたデータの転送
がセット・アップされ、あたかもホスト11により割当
てられた作業であるかの如く、要求側のメモリ制御装置
17Aによって実行される。代理作業が実行されている
間、他の作業がホスト11から受取られて、代理作業と
インターリ一ブされてもよいことを理解されたい。
キャッシュ40と代理応答メツセージにおいて要求され
たDASD16との間のデータ転送が完了すると、要求
側のメモリ制御装置17Aは、割当て作業機能から代理
状況ステップ433へ延びている論理経路432により
示される如く、代理状況メツセージを供給する。代理状
況メツセージの組立ては、メモリ制御装置が完了した機
械動作をホスト11に報告するための終了状況を組立体
でる場合と同じである。その手順は周知であるので、詳
述しないが、戻りコードRC391はエラーのない状況
の場合にはゼロであり、代理データ転送中にエラーが発
生した場合にはゼロでなくなる。代理状況メツセージは
、線434により示されている如く、応答側のメモリ制
御装置17Bに転送されて、応答側のメモリ制御装置1
7Bにおけるレコードを更新するために、割当て作業機
能400に代理作業のいわゆる後処理を行わせる。
その様な活動は、あたかも応答側のメモリ制御装置17
Bが要求されたデータをDASD+、6からキャッシュ
40へ実際にステージしたかの如く、要求されたデータ
がキャッシュ40中に存在して、ホスト11に転送され
る様に準備されていることをホスト11に示すために、
代理読取データ転送の後に、ホスト11に装置終了を送
ることを含んでもよい。
要求側のメモリ制御装置]、7A内の代理待ち行列は、
次の様にして更新される。ステップ4111こおける要
求が送られるとき、QS354が活動状態にセットされ
る。同様に、割当て作業機能400が、作業の完了時に
、CPS 357又はcpD358を更新する。エラー
状態は、PR359において、割当て作業機能400に
より示される。
ステップ433における代理状況メツセージが応答側の
メモリ制御装置17Bに送られると、要求側のメモリ制
御装置17Aは、代理待ち行列84の内容を消去し、又
メモリ制御装置内に含まれるID361に関連する、全
ての他の代理を示すビットを消去する。応答側のメモリ
制御装置17Bも、同様にして、そのレコードを更新す
る。
第16図は、特にキャッシュ40からDAS D16に
データを書込む(デステージする)ための代理作業の代
替方法を示す。作業要求側のメモリ制御装置17Aにお
ける作業レベル・ステップ402は、主に読取待ち行列
RQによって影響され403− るが、それに限定されることはない。読取待ち行列の作
業レベル低い場合に、ステップ/I50において、WR
Ql、9がチェックされる。 WRQ ] 9が、線4
51により示されている如く、閾値406を超える数の
エントリを有していれば、ステップ452において、D
ASD16への書込が行われる。0でない閾値406を
与えることにより、キャッシュ40からDASD]6ヘ
データをより効率的に転送するために、種々のレコード
をグループ化することができる。WRQl9が何らエン
トリを有していない場合(閾値406は0にされ得る)
には、作業要求側のメモリ制御装置17Aは経路453
をとって、行われるべき他の作業を探索して走査を行う
。そうでない場合には、ステップ452から、ホスト処
理動作のための割当作業機能400への経路がとられる
。先に、第15図に関して述べた如く、共用の書込待ち
行列W○Q 1.9を用いた場合には、書込が局所動作
として処理されて、WRQl9及び記録装置43におけ
る共用データ・ベースが、同期化及びデータの完−10
・1− 全性のために2つのメモリ制御装置17間で通信を行う
。この代理的実施例における読取待ち行列の代理動作は
、第15図において示された手順に従って行われる。
第17図は、第2図の流れ図に対応する機械動作を詳細
に示す流れ図である。アイドル走査ルーチンの一部とし
て、メモリ制御装置17は、ステップ460において、
L RUリス1へを調べて、キャッシュ40において使
用され得る割当て可能なスペースを量を決定する。L 
RUリストは、一般に、キャッシュ40における割振り
可能な対応するデータ記憶スペースが割振りのために使
用可能が否かを示す標識を有している。一般に、データ
記憶スペースは、LRUリストが所与の閾値よりも少な
い場合、及びデータ記憶領域におけるキャッシュの内容
がDASD16におけるデータのコピーと同一である場
合に、割振り可能である。いずれにしても、ステップ4
60において、キャッシュ40における割振り可能なデ
ータ記憶スペースの2が低ければ、即ち所与の閾値以下
であれば、ステップ46】において、メモリ制御装置1
7は待ち行列69のWQ部分を調べる。これは、割振り
可能なデータ記憶スペースの量を増すためにDASD1
6へのデステージング又は書込動作を行うことができる
様に、最初に行われる。従って、メモリ制御装置17は
、後に詳述するデータ転送ステップ463への論理経路
462をとって、待ぢ行列69のWQにおけるエントリ
により識別されたキャッシュ40に記憶されているデー
タのコピーをDASDへ転送する。データ転送ステップ
463の後、メモリ制御装置17は、第18図に示され
ている如き、ステップ464における後処理に進む。
待ち行列69のWQが何らエントリを有していないとき
、メモリ制御装置17は、ステップ465において、待
ち行列69のRQ部分を調べる。
この第2優先順位の非同期的データ転送動作は、DAS
D16からキャッシュ40へのデータを転送する。メモ
リ制御装置17は、データ転送ステップ463への論理
経路466をとる。待ち行列69のRQ及びWQ部の両
方が空の場合には、ステップ470において、前述の代
理動作が開始される。それと同時に前述の如く、矢印4
71により示されている如く、応答側のメモリ制御装置
17Bに、作業状況の照合が行われる。タイマ410は
、例えば2又は3秒後のタイム・アラ1−において、論
理経路475を介してエラーが示される様にセットされ
る。ステップ470において、作業状況の照合が成され
た後、作業要求側のメモリ制御装置17Aは、そのアイ
ドル・ループに行き、そこでホスト11から他の指令を
受取り又は任意のDASD16からアテンション信号を
受取る。
その様なアテンション信号は周知であり、詳述しない。
ステップ472においては、応答側のメモリ制御装置1
.7 Bが代理作業要求メツセージに応答する前であっ
ても、他の割当て作業が行われてもよい。応答側のメモ
リ制御装置17Bは線474により示されているその代
理応答メツセージを供給し、その代理応答メツセージは
、参照番号332により示されている如く、肯定応答ス
テップ107− 473を次のステップ480へ進ませる。応答側のメモ
リ制御袋[]7Bから代理応答メツセージが受取られる
迄、作業要求側のメモリ制御装置17Aは、アイドル・
ループ472によりタイマ4IOを活動状態に保って、
行われるべき作業を探索し続ける。
作業要求側のメモリ制御袋[17Aが代理応答メツセー
ジを受取ったとき、ステップ480において、メモリ制
御装置1.7Aは、読取データの転送が行われるべきか
又は書込データの転送が行われるべきかを選択する。ス
テップ473において、メモリ制御袋[17Aは、メツ
セージ(図示せず)により代理応答メツセージが実際に
受取られたことを肯定応答する。この肯定応答は、メツ
セージRAM18を介して応答側のメモリ制御装置17
Bへ延びているタグ線342の中の1本のタグ線を活動
化することによって、簡単に行われることができる。ス
テップ480は、第15図において参照番号411によ
り示されている、代理要求メツセージを送るステップに
対応する。次に、作業1013− 要求側のメモリ制御装置17Aは、そのアイドル・ルー
プ481に戻って、サービスを必要とするDASDを探
索し、そしてホスト11から指令を受取る。それから、
ステップ482において、代理応答メツセージが受取ら
れ、このステップは第15図のステップ427に対応す
る。次に、ステップ483において、作業要求側のメモ
リ制御装置17Aは、アドレスされるべきDASD16
の状況を調べる。DASDが使用中であれば、代理要求
されたデータ転送が、第5図に示されている如く、RQ
又はWQのいずれかにおいて、代理ビットと共に、装置
の待ち行列に入れられる。代理待ち行列84の内容は変
更されないことに注目されたい。アドレスされたDAS
Dが解放されてアクセス可能になるとすぐに、作業要求
側のメモリ制御装置1.7Aは、待ち行列を調べ、ステ
ップ463において、既知のデータ処理技術を用いて、
データ転送を開始する。ステップ483において、アド
レスされたDASD16が使用中でないならば、ステッ
プ485において、その装置の待ち行列がWQ85又は
R,Q86から除かれる。ステップ486において、作
業要求側のメモリ制御装置1.7Aは、ピッ1〜350
及び351を調べることにより、代理作業が読取動作又
は書込動作のいずれであるかを調べる。代理読取(PR
)の場合には、ステップ463において、読取データの
転送が開示され、代理書込(pw)の場合には、ステッ
プ463において、書込データの転送動作が開始される
第18図において、第17図のステップ463における
データ転送に続く、作業要求側のメモリ制御装置17A
による後処理は、ステップ500において、完了したば
かりのデータ転送が代理データ転送であるか否かを調べ
ることにより行われる。代理データ転送でない場合には
、ステップ501において、通常の後処理動作が行われ
、作業要求側の記憶ディレクタ17Aはステップ501
からアイドル走査へ進む。ステップ463において、代
理データ転送が行われた場合には、ステップ502にお
いて、作業要求側のメモリ制御装置1.7Aは、記録装
置43を更新する。記録装置43は作業要求側および応
答側の両方のメモリ制御装置I7に共通であるので、作
業要求側のより暇なメモリ制御装置が、応答側のより多
忙なメモリ制御装置に代って、ハウスキーピングを行っ
ている。次に、ステップ503において、作業要求側の
メモリ制御装置17Aが、読取又は書込のいずれの動作
が生じたかを調べる。これは、応答側のメモリ制御装置
17Bに供給される情報の型に影響を与える。ホスト1
1から完全に独立している書込動作の場合には、ステッ
プ504において、状況が設定される。この様な状況は
、第15図に示されている代理状況メツセージを介して
、応答側のメモリ制御装置1.7 Bに供給される。読
取動作の場合には、ステップ505において、作業要求
側のメモリ制御装置1.7Aは、応答側のメモリ制御装
置17Bのための終了状況を設定し、代理状況メツセー
ジの一部としてその状況を送る。ステップ504又は5
05に続いて、ステップ506は、実際においてメツセ
ージRAM18を介し−11,1− て状況メツセージを送る。代理待ち行列84は、ゼロに
リセットされて、新して代理動作の実行を可能にする。
次に、ステップ507において、アイドル走査に戻され
る。
第19図は、応答側のメモリ制御装置17Bの動作を示
している。応答側のメモリ制御装置17・  Bは、そ
の動作のアイドル走査部分に達する迄、即ち代理要求に
対する応答が他のデータ処理動作との間でインターリー
ブされる迄、代理状況メツセージに応答しない。ステッ
プ510において、要求を受取った後、応答側のメモリ
制御装置17Bは、ステップ511において、LRUス
ペースを調べ、即ちキャッシュ40が多くの割振り可能
なスペースを有しているか否かを調べる。キャッシュ4
0における割振り可能なデータ記憶スペースの量が少な
い場合には、応答側のメモリ制御装置1.7 Bは、ス
テップ512において、初めに書込待ち行列(WQ)8
5を調べる。その待ち行列がゼロに等しい、即ち何らエ
ントリを有しない場合には、読取待ち行列(RQ)86
がステップ5F2− 13において調べられる。RQ86又はWQ85のいず
れかがエントりを有していれば(全てがゼロでないなら
ば)、ステップ514において、作業が作業要求側のメ
モリ制御装置17Aに移転される。ステップ514は、
第15図におけるステップ422の作業状況分析に続く
応答ステップ427に対応するが、それらは第19図に
おいては説明を簡潔にするために示されていない。それ
から、ステップ515において、アイドル走査に戻され
て、より忙しいメモリ制御装置17内で割当てられた作
業が実行される。ステップ511において、LRUスペ
ースが充分であると思われる場合には、データ記憶階層
10の性能を改善するために、データをDASD16か
らキャッシュ40中に転送することが望ましい。従って
、ステップ516において、RQ86が初めに調べられ
、RQ86が幾つかのエントリを有していれば、ステッ
プ514において、待ち行列中の読取が作業要求側のメ
モリ制御装[17Aに代理作業として供給される。ステ
ップ516において、RQ86が空であれば、ステップ
512において、WQ85が前述の順序のステップに従
って調べられる。この例においては、RQ85は2回調
べられる場合がある。RQ86及びWQ85の両方が空
である場合には、ステップ517において、応答側のメ
モリ制御装置1.7 Bは、PSV376中に任意に4
3として選択されたコードを示すことにより、第15図
の代理応答メツセージ中に、代理のために転送されるべ
き作業がないという表示を供給する。
第15図の代理要求メツセージに示されている如く、作
業要求側のメモリ制御装置17Aは読取又は書込動作の
いずれかを要求することができる。
その場合には、書込代理要求に対しては、応答側のメモ
リ制御装置]、 7 Bが、ステップ510から直接ス
テップ512へと論理経路520をとり、LRUスペー
ス分析ステップ511が省かれる。
他方、読取代理要求に対しては、応答側のメモリ制御装
置t 7 Bが、直接ステップ516へと論理経路52
1をとって、初めにRQ86を調べ、ステップ511が
省かれる。従って、作業要求側のメモリ制御装置17A
は読取又は要込代理動作に対する優先性を示すことがで
きるにも拘らず、応答側のメモリ制御装置1.7 Bは
要求された動作の代りにもう]つのデータ処理動作を行
うことができる。その状態がこの場合に最も適している
とき、2つのメモリ制御装置]7の間の共同作用は、最
小限の制御で、改善された動作を与える。
【図面の簡単な説明】
第1図は本発明を用いた複数装置のシステムを示す図、
第2図は本発明を実施するための第1図に示されている
システムの機械動作を簡単に示す流れ図、第3図は本発
明の原理を使用した階層ページング及びスワツピング記
憶システムの論理図、第4図は第3図に示されているシ
ステムの代替的実施図、第5図は第1図乃至第4図に示
されているシステムと共に使用可能な制御レジスタを示
す図、第6図は第3図のアドレス及び指令評価器を示す
論理及びフローの結合図、第7図は第3図の直接アクセ
ス制御部を示す論理フロー図、第8図−11,5− は第3図のシステムで使用可能なキャッシュ・アクセス
制御部を示す図、第9図は第3図のシステムで実行され
るページング・パラメータ設定指令の論理フローを示す
図、第10図は第3図のアドレス及び指令評価器で指令
が受取られた時に実行される動作の論理フローを示す図
、第1】図は第8図に示されているキャッシュ・アクセ
ス制御部の記録装置探索に関連した動作の論理フローを
示す図、第12図は第8図に示さねているキャッシュ・
アクセス制御部の読取指令又は書込指令に関連した動作
を示す図、第13図はキャッシュへのアクセスがミスを
生じたときの第8図に示されているキャッシュ・アクセ
ス制御部の動作に関連する論理フロー図、第14図は要
求されたデータがキャッシュ中になく読取要求をバッキ
ング記憶装置で待機させる場合の第8図に示されている
キャッシュ・アクセス制御部の動作に関連した論理フロ
ー図、第15図及び第16図は各々別個の及び共用の書
込待ち行列を用いている第1図乃至第4図に示されてい
るシステムの動作を示す流れ図、1j6− 第17図乃至第19図は第1図乃至第14図に示されて
いるシステムにおいて本発明を実施するための機械動作
を詳細に示す流れ図である。 10・・・・周辺(記憶)システム、11・・・・ホス
1へ、16・・・・直接アクセス記憶装置(DASD)
、17・・・・メモリ制御装置、18・・・・メツセー
ジRAM、】9・・・・書込待ち行列、30・・・・シ
ステム記憶装置、31・・・・制御機構、32・・・・
チャネル・アダプタ、40・・・・キャッシュ、43・
・・・記録装置、45・・・・スキャッタ・インデック
ス・テーブル、50・・・・アドレス及び指令評価器、
56・・・・直接アクセスli!I 4部、61・・・
・キャッシュ・アクセス制御部、62・・・・論理装置
制御ブロック・レジスタ、69・・・・待ち行列レジス
タ、73・・・・制御記憶装置、84・・・・代理待ち
行列、97・・・・代理ビット。 第1頁の続き 0発 明 者 ジエラルド・エルスヮース・ティラー アメリカ合衆国アリシナ用ツー ソン・チュツクワゴン・サーク ル11373番地 361−

Claims (3)

    【特許請求の範囲】
  1. (1)複数の第1装置と第2装置との間のデータ転送を
    複数の制御装置で行なうことのできる装置において、上
    記制御装置は、 上記データ転送に関連し実行すべき作業の待ち行列を維
    持する手段と、 上記待ち行列に応答し自己の実行すべき作業が少量であ
    るとき他の制御装置に作業の移転を要求するメツセージ
    を送る手段と、 上記要求メツセージの受信に応答して要求先の制御装置
    に作業を移転する応答手段とを備えることを特徴とする
    データ転送制御装置。
  2. (2)上記制御装置はホスト・データ処理装置と上記第
    1又は第2装置との間のデータ転送を制御する装置であ
    り、上記第1装置と第2装置との間のデータ転送は上記
    ホスト・データ処理装置との間のデータ転送とは非同期
    で行なう特許請求の範囲第(1)項の装置。
  3. (3)上記第1装置は支援記憶装置であり、上記第2装
    置は前置記憶装置である特許請求の範囲第(2)項の装
    置。
JP58228626A 1983-02-25 1983-12-05 デ−タ転送制御装置 Granted JPS59158461A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US469680 1983-02-25
US06/469,680 US4633387A (en) 1983-02-25 1983-02-25 Load balancing in a multiunit system
SG150494A SG150494G (en) 1983-02-25 1994-10-17 Method and mechanism for load balancing in a nultiunit system

Publications (2)

Publication Number Publication Date
JPS59158461A true JPS59158461A (ja) 1984-09-07
JPH0458050B2 JPH0458050B2 (ja) 1992-09-16

Family

ID=26664432

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58228626A Granted JPS59158461A (ja) 1983-02-25 1983-12-05 デ−タ転送制御装置

Country Status (5)

Country Link
US (1) US4633387A (ja)
EP (1) EP0117408B1 (ja)
JP (1) JPS59158461A (ja)
HK (1) HK138394A (ja)
SG (1) SG150494G (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005092884A (ja) * 2003-09-19 2005-04-07 Harman Becker Automotive Systems Gmbh データ転送インターフェース
JP2010157234A (ja) * 2008-12-31 2010-07-15 Intel Corp 効率的なリマッピング・エンジンの利用

Families Citing this family (133)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4638424A (en) * 1984-01-12 1987-01-20 International Business Machines Corporation Managing data storage devices connected to a digital computer
JPS61114363A (ja) * 1984-11-07 1986-06-02 Hitachi Ltd 計算機システム間ジヨブ転送方式
US4736318A (en) * 1985-03-01 1988-04-05 Wang Laboratories, Inc. Data processing system having tunable operating system means
US5157595A (en) * 1985-07-19 1992-10-20 El Paso Technologies, Company Distributed logic control system and method
US5241677A (en) * 1986-12-19 1993-08-31 Nippon Telepgraph and Telehone Corporation Multiprocessor system and a method of load balancing thereof
DE3741953A1 (de) * 1986-12-19 1988-06-30 Nippon Telegraph & Telephone Multiprozessorsystem und verfahren zur arbeitslastverteilung bei einem solchen
JPH0221342A (ja) * 1987-02-27 1990-01-24 Hitachi Ltd マルチプロセッサシステム及びマルチプロセッサシステムにおける論理キャッシュメモリのアクセス方法
US4967288A (en) * 1987-05-01 1990-10-30 Kabushiki Kaisha Toshiba Facsimile storage and exchange system
US4954983A (en) * 1987-10-13 1990-09-04 Tektronix, Inc. Data driver for multiple mode buffered processor-peripheral data transfer with selective return of data to processor
JPH01194054A (ja) * 1988-01-29 1989-08-04 Hitachi Ltd 分散処理システムのプログラムローデイング方式
US5159686A (en) * 1988-02-29 1992-10-27 Convex Computer Corporation Multi-processor computer system having process-independent communication register addressing
US5050070A (en) * 1988-02-29 1991-09-17 Convex Computer Corporation Multi-processor computer system having self-allocating processors
JPH0293836A (ja) * 1988-09-30 1990-04-04 Toshiba Corp 分散型データベース管理装置
US4920487A (en) * 1988-12-12 1990-04-24 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Method of up-front load balancing for local memory parallel processors
WO1990007746A1 (en) * 1988-12-29 1990-07-12 Storage Technology Corporation Computer system memory performance improvement apparatus
US5131087A (en) * 1988-12-29 1992-07-14 Storage Technology Corporation Computer system having apparatus for automatically redistributing data records stored therein
EP0384635B1 (en) * 1989-02-24 1997-08-13 AT&T Corp. Adaptive job scheduling for multiprocessing systems
JPH02236668A (ja) * 1989-03-10 1990-09-19 Hitachi Ltd 入出力処理方法
US5155831A (en) * 1989-04-24 1992-10-13 International Business Machines Corporation Data processing system with fast queue store interposed between store-through caches and a main memory
JPH0388019A (ja) * 1989-08-31 1991-04-12 Toshiba Corp データ処理装置
US5239649A (en) * 1989-10-30 1993-08-24 International Business Machines Corporation Channel path load balancing, through selection of storage volumes to be processed, for long running applications
US5179702A (en) 1989-12-29 1993-01-12 Supercomputer Systems Limited Partnership System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling
US5450564A (en) * 1990-05-04 1995-09-12 Unisys Corporation Method and apparatus for cache memory access with separate fetch and store queues
US5564021A (en) * 1994-05-31 1996-10-08 Us West Technologies, Inc. Method for assigning inter-nodal traffic loads to channels in sonet rings
US5291442A (en) * 1990-10-31 1994-03-01 International Business Machines Corporation Method and apparatus for dynamic cache line sectoring in multiprocessor systems
US5379438A (en) * 1990-12-14 1995-01-03 Xerox Corporation Transferring a processing unit's data between substrates in a parallel processor
US5269013A (en) * 1991-03-20 1993-12-07 Digital Equipment Corporation Adaptive memory management method for coupled memory multiprocessor systems
US5333315A (en) * 1991-06-27 1994-07-26 Digital Equipment Corporation System of device independent file directories using a tag between the directories and file descriptors that migrate with the files
CA2067576C (en) * 1991-07-10 1998-04-14 Jimmie D. Edrington Dynamic load balancing for a multiprocessor pipeline
IL99923A0 (en) * 1991-10-31 1992-08-18 Ibm Israel Method of operating a computer in a network
JP3451099B2 (ja) 1991-12-06 2003-09-29 株式会社日立製作所 外部記憶サブシステム
US5379398A (en) * 1992-04-20 1995-01-03 International Business Machines Corporation Method and system for concurrent access during backup copying of data
FR2691559B1 (fr) * 1992-05-25 1997-01-03 Cegelec Systeme logiciel a objets repliques exploitant une messagerie dynamique, notamment pour installation de controle/commande a architecture redondante.
FR2692058B1 (fr) * 1992-06-09 1994-07-29 Bull Sa Systeme de traitement transactionnel entre un serveur informatique et une pluralite de stations de travail.
US5506986A (en) * 1992-07-14 1996-04-09 Electronic Data Systems Corporation Media management system using historical data to access data sets from a plurality of data storage devices
US5991775A (en) * 1992-09-23 1999-11-23 International Business Machines Corporation Method and system for dynamic cache allocation between record and track entries
GB2273179A (en) * 1992-12-02 1994-06-08 Ibm Cache indexing in interative processes.
US5375223A (en) * 1993-01-07 1994-12-20 International Business Machines Corporation Single register arbiter circuit
US5459864A (en) * 1993-02-02 1995-10-17 International Business Machines Corporation Load balancing, error recovery, and reconfiguration control in a data movement subsystem with cooperating plural queue processors
US5548724A (en) * 1993-03-22 1996-08-20 Hitachi, Ltd. File server system and file access control method of the same
US5535364A (en) * 1993-04-12 1996-07-09 Hewlett-Packard Company Adaptive method for dynamic allocation of random access memory to procedures having differing priorities based on first and second threshold levels of free RAM
DE59310083D1 (de) * 1993-09-24 2000-09-07 Siemens Ag Verfahren zum Lastausgleich in einem Multiprozessorsystem
US5592672A (en) * 1993-11-02 1997-01-07 Bell Communications Research, Inc. System for load balancing between message processors by routing all queued messages to a particular processor selected by a deterministic rule
US5437032A (en) * 1993-11-04 1995-07-25 International Business Machines Corporation Task scheduler for a miltiprocessor system
US5584039A (en) * 1993-11-08 1996-12-10 International Business Machines Corporation System for coordinating execution of multiple concurrent channel programs without host processor involvement using suspend and resume commands to control data transfer between I/O devices
JP3528094B2 (ja) * 1994-02-09 2004-05-17 株式会社日立製作所 バス利用方法および記憶制御装置
EP0668564A1 (en) * 1994-02-22 1995-08-23 International Business Machines Corporation Resource measurement facility in a multiple operating system complex
US5537542A (en) * 1994-04-04 1996-07-16 International Business Machines Corporation Apparatus and method for managing a server workload according to client performance goals in a client/server data processing system
US5473773A (en) * 1994-04-04 1995-12-05 International Business Machines Corporation Apparatus and method for managing a data processing system workload according to two or more distinct processing goals
US6327607B1 (en) 1994-08-26 2001-12-04 Theseus Research, Inc. Invocation architecture for generally concurrent process resolution
US5740437A (en) * 1994-09-13 1998-04-14 International Business Machines Corporation Separating work unit priority and accountability from address spaces
US5625811A (en) * 1994-10-31 1997-04-29 International Business Machines Corporation Method and system for database load balancing
US5758074A (en) * 1994-11-04 1998-05-26 International Business Machines Corporation System for extending the desktop management interface at one node to a network by using pseudo management interface, pseudo component interface and network server interface
US5923875A (en) * 1995-08-28 1999-07-13 Nec Corporation Load distributing job processing system
US5692174A (en) * 1995-10-05 1997-11-25 International Business Machines Corporation Query parallelism in a shared data DBMS system
US5715457A (en) * 1995-10-06 1998-02-03 Matsushita Electtic Industrial Multiprocessor system for determining assignment of task in view of access time to storage resource
US5875329A (en) * 1995-12-22 1999-02-23 International Business Machines Corp. Intelligent batching of distributed messages
JPH09190465A (ja) * 1996-01-11 1997-07-22 Yamaha Corp 分類格納された情報の参照方法
US5892945A (en) * 1996-03-21 1999-04-06 Oracle Corporation Method and apparatus for distributing work granules among processes based on the location of data accessed in the work granules
US5907849A (en) * 1997-05-29 1999-05-25 International Business Machines Corporation Method and system for recovery in a partitioned shared nothing database system using virtual share disks
US5937428A (en) * 1997-08-06 1999-08-10 Lsi Logic Corporation Method for host-based I/O workload balancing on redundant array controllers
US6055604A (en) * 1997-08-26 2000-04-25 Hewlett-Packard Company Forced transaction log posting using a least busy storage media without maintaining redundancy of the transaction log
US6112257A (en) * 1997-09-24 2000-08-29 Emc Corporation Dynamic adjustment of mirror service policy for logical volumes in a disk drive system based on collected statistics
US6917569B1 (en) * 1997-10-06 2005-07-12 Emc Corporation Method for determining seek times in a disk array storage device
US6237063B1 (en) 1997-10-06 2001-05-22 Emc Corporation Load balancing method for exchanging data in different physical disk storage devices in a disk array storage device independently of data processing system operation
US6061761A (en) 1997-10-06 2000-05-09 Emc Corporation Method for exchanging logical volumes in a disk array storage device in response to statistical analyses and preliminary testing
US6341333B1 (en) 1997-10-06 2002-01-22 Emc Corporation Method for transparent exchange of logical volumes in a disk array storage device
US6088766A (en) * 1997-10-06 2000-07-11 Emc Corporation Method for exchanging data blocks on disk storage devices utilizing disk access statistics and testing for the effect of a change
US6442650B1 (en) 1997-10-06 2002-08-27 Emc Corporation Maximizing sequential output in a disk array storage device
US6711649B1 (en) 1997-10-06 2004-03-23 Emc Corporation Load balancing on disk array storage device
US6405282B1 (en) 1997-10-06 2002-06-11 Emc Corporation Method for analyzine disk seek times in a disk array storage device
US6189071B1 (en) 1997-10-06 2001-02-13 Emc Corporation Method for maximizing sequential output in a disk array storage device
US6633922B1 (en) * 1997-12-15 2003-10-14 International Business Machines Corporation Object access mechanism that dynamically switches between multiple distributed access models
AU4334099A (en) * 1998-06-05 1999-12-20 Mylex Corporation Apparatus, system and method for n-way raid controller
US6189015B1 (en) * 1998-09-25 2001-02-13 International Business Machines Corporation System and method for updating non-VSAM data set control information for data transferred from a source to a target
US6389494B1 (en) * 1998-12-30 2002-05-14 Emc Corporation System for interfacing a data storage system to a host utilizing a plurality of busses for carrying end-user data and a separate bus for carrying interface state data
US7117275B1 (en) 1999-01-04 2006-10-03 Emc Corporation Data storage system having separate data transfer section and message network
US6434596B1 (en) * 1999-01-29 2002-08-13 Sony Corporation Method and system for distributed queues in a multimedia network with proxies
US7296265B1 (en) * 1999-03-09 2007-11-13 Hewlett-Packard Development Company, L.P. Class loading in a virtual machine for a platform having minimal resources
US6965896B1 (en) * 1999-04-20 2005-11-15 International Business Machines Corporation Active log read I/O balancing for log duplexing
US6549931B1 (en) 1999-09-27 2003-04-15 Oracle Corporation Distributing workload between resources used to access data
US6609131B1 (en) 1999-09-27 2003-08-19 Oracle International Corporation Parallel partition-wise joins
JP4119582B2 (ja) * 1999-09-28 2008-07-16 富士通株式会社 転送制御方法及び情報処理装置
US6694345B1 (en) 1999-10-05 2004-02-17 International Business Machines Corporatioin External job scheduling within a distributed processing system having a local job control system
US6665740B1 (en) * 1999-11-12 2003-12-16 Emc Corporation Logical volume selection in a probability-based job scheduler
US6754897B1 (en) * 1999-11-12 2004-06-22 Emc Corporation Operation prioritization and selection in a probability-based job scheduler
ES2339914T3 (es) 1999-12-28 2010-05-27 Sony Corporation Sistema y metodo de transacciones comerciales de imagenes.
US6993621B1 (en) * 2000-03-31 2006-01-31 Emc Corporation Data storage system having separate data transfer section and message network with plural directors on a common printed circuit board and redundant switching networks
US7010575B1 (en) * 2000-03-31 2006-03-07 Emc Corporation Data storage system having separate data transfer section and message network having bus arbitration
US7003601B1 (en) 2000-03-31 2006-02-21 Emc Corporation Data storage system having separate data transfer section and message network with plural directions on a common printed circuit board
US7007194B1 (en) 2000-06-29 2006-02-28 Emc Corporation Data storage system having point-to-point configuration
US7006505B1 (en) * 2000-10-23 2006-02-28 Bay Microsystems, Inc. Memory management system and algorithm for network processor architecture
US6687787B1 (en) * 2001-03-05 2004-02-03 Emc Corporation Configuration of a data storage system
US7062592B2 (en) * 2002-03-25 2006-06-13 Intel Corporation Selecting a queue for service in a queuing system
US7346690B1 (en) 2002-05-07 2008-03-18 Oracle International Corporation Deferred piggybacked messaging mechanism for session reuse
US8150951B2 (en) * 2002-07-10 2012-04-03 Cisco Technology, Inc. System and method for communicating in a loadbalancing environment
US7797450B2 (en) * 2002-10-04 2010-09-14 Oracle International Corporation Techniques for managing interaction of web services and applications
US7448038B2 (en) * 2003-04-23 2008-11-04 Micron Technology, Inc. Method for using filtering to load balance a loop of parallel processing elements
US7437726B2 (en) * 2003-04-23 2008-10-14 Micron Technology, Inc. Method for rounding values for a plurality of parallel processing elements
US7430742B2 (en) * 2003-04-23 2008-09-30 Micron Technology, Inc. Method for load balancing a line of parallel processing elements
US7472392B2 (en) * 2003-04-23 2008-12-30 Micron Technology, Inc. Method for load balancing an n-dimensional array of parallel processing elements
US7437729B2 (en) * 2003-04-23 2008-10-14 Micron Technology, Inc. Method for load balancing a loop of parallel processing elements
US20050034130A1 (en) * 2003-08-05 2005-02-10 International Business Machines Corporation Balancing workload of a grid computing environment
US20050071596A1 (en) * 2003-09-26 2005-03-31 International Business Machines Corporation Method, apparatus and program storage device for providing automatic performance optimization of virtualized storage allocation within a network of storage elements
JP4266786B2 (ja) * 2003-11-19 2009-05-20 株式会社日立製作所 情報処理システム及び情報処理装置
US7584476B2 (en) * 2004-03-04 2009-09-01 International Business Machines Corporation Mechanism for reducing remote memory accesses to shared data in a multi-nodal computer system
US20050198642A1 (en) * 2004-03-04 2005-09-08 International Business Machines Corporation Mechanism for assigning home nodes to newly created threads
US7257684B1 (en) 2004-05-25 2007-08-14 Storage Technology Corporation Method and apparatus for dynamically altering accessing of storage drives based on the technology limits of the drives
JP4643198B2 (ja) * 2004-07-28 2011-03-02 株式会社日立製作所 負荷分散コンピュータシステム、経路設定プログラム及びその方法
JP5038589B2 (ja) * 2004-10-04 2012-10-03 株式会社日立製作所 ディスクアレイ装置及びその負荷分散方法
US20060112208A1 (en) * 2004-11-22 2006-05-25 International Business Machines Corporation Interrupt thresholding for SMT and multi processor systems
US7945756B1 (en) * 2005-03-30 2011-05-17 Emc Corporation System and method for managing a data storage system by contacting a single processor in a data storage system having more than one processor
JP4609848B2 (ja) * 2005-04-06 2011-01-12 株式会社日立製作所 負荷分散コンピュータシステム、経路設定プログラム及びその方法
US8037169B2 (en) * 2005-05-18 2011-10-11 Oracle International Corporation Determining affinity in a cluster
US7493400B2 (en) 2005-05-18 2009-02-17 Oracle International Corporation Creating and dissolving affinity relationships in a cluster
US7437490B2 (en) * 2005-05-27 2008-10-14 International Business Machines Corporation Channel communication array queues in hardware system area
US7814065B2 (en) 2005-08-16 2010-10-12 Oracle International Corporation Affinity-based recovery/failover in a cluster environment
US8099548B2 (en) * 2006-03-23 2012-01-17 Microsoft Corporation Power efficient media playback on general purpose portable devices
US8131580B2 (en) * 2006-10-04 2012-03-06 Salesforce.Com, Inc. Method and system for load balancing a sales forecast system by selecting a synchronous or asynchronous process based on a type of an event affecting the sales forecast
US20080244181A1 (en) * 2007-03-30 2008-10-02 Michael Walz Dynamic run-time cache size management
US8117619B2 (en) * 2007-08-31 2012-02-14 International Business Machines Corporation System and method for identifying least busy resources in a storage system using values assigned in a hierarchical tree structure
JP2011059777A (ja) * 2009-09-07 2011-03-24 Toshiba Corp タスクスケジューリング方法及びマルチコアシステム
US9171044B2 (en) * 2010-02-16 2015-10-27 Oracle International Corporation Method and system for parallelizing database requests
JP6336813B2 (ja) * 2014-04-16 2018-06-06 富士通株式会社 ストレージ仮想化装置、ストレージ仮想化装置の制御方法及び制御プログラム
US10038640B2 (en) * 2015-04-30 2018-07-31 Amazon Technologies, Inc. Managing state for updates to load balancers of an auto scaling group
US10341426B2 (en) 2015-04-30 2019-07-02 Amazon Technologies, Inc. Managing load balancers associated with auto-scaling groups
US10412020B2 (en) 2015-04-30 2019-09-10 Amazon Technologies, Inc. Background processes in update load balancers of an auto scaling group
US9841905B2 (en) 2015-12-29 2017-12-12 Pknoa S.A. File system having a database management system using file pre-allocation in mass storage devices
CN107133086B (zh) * 2016-02-29 2020-09-04 阿里巴巴集团控股有限公司 基于分布式系统的任务处理方法、装置和系统
US10592280B2 (en) 2016-11-23 2020-03-17 Amazon Technologies, Inc. Resource allocation and scheduling for batch jobs
US10642739B2 (en) 2017-09-11 2020-05-05 Cisco Technology, Inc. Distributed coordination of caching and processing by networking devices
JP2021170289A (ja) * 2020-04-17 2021-10-28 富士通株式会社 情報処理システム、情報処理装置およびプログラム
US20220107738A1 (en) * 2020-10-06 2022-04-07 Kioxia Corporation Read controller and input/output controller

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5776646A (en) * 1980-10-31 1982-05-13 Fujitsu Ltd Load sharing system
JPS57157368A (en) * 1981-03-06 1982-09-28 Ibm Data processing unit

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3665404A (en) * 1970-04-09 1972-05-23 Burroughs Corp Multi-processor processing system having interprocessor interrupt apparatus
US4099235A (en) * 1972-02-08 1978-07-04 Siemens Aktiengesellschaft Method of operating a data processing system
US4183083A (en) * 1972-04-14 1980-01-08 Duquesne Systems, Inc. Method of operating a multiprogrammed computing system
IT1002275B (it) * 1973-12-27 1976-05-20 Honeywell Inf Systems Sistema di elaborazione dati a piu canali di ingresso uscita a risorse orientate per livelli di servizio distinti e interrompi bili
US3964056A (en) * 1974-04-08 1976-06-15 International Standard Electric Corporation System for transferring data between central units and controlled units
JPS5841538B2 (ja) * 1975-12-04 1983-09-13 株式会社東芝 マルチプロセツサシステム ノ ユウセンセイギヨホウシキ
US4318174A (en) * 1975-12-04 1982-03-02 Tokyo Shibaura Electric Co., Ltd. Multi-processor system employing job-swapping between different priority processors
US4080649A (en) * 1976-12-16 1978-03-21 Honeywell Information Systems Inc. Balancing the utilization of I/O system processors
US4317168A (en) * 1979-11-23 1982-02-23 International Business Machines Corporation Cache organization enabling concurrent line castout and line fetch transfers with main storage
US4333144A (en) * 1980-02-05 1982-06-01 The Bendix Corporation Task communicator for multiple computer system
JPS57757A (en) * 1980-06-04 1982-01-05 Hitachi Ltd Job execution schedule system
US4415970A (en) * 1980-11-14 1983-11-15 Sperry Corporation Cache/disk subsystem with load equalization
US4458316A (en) * 1981-03-06 1984-07-03 International Business Machines Corporation Queuing commands in a peripheral data storage system
US4467411A (en) * 1981-03-06 1984-08-21 International Business Machines Corporation Scheduling device operations in a buffered peripheral subsystem
JPS57153359A (en) * 1981-03-18 1982-09-21 Ibm Data processing system with common memory
US4481583A (en) * 1981-10-30 1984-11-06 At&T Bell Laboratories Method for distributing resources in a time-shared system
US4539637A (en) * 1982-08-26 1985-09-03 At&T Bell Laboratories Method and apparatus for handling interprocessor calls in a multiprocessor system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5776646A (en) * 1980-10-31 1982-05-13 Fujitsu Ltd Load sharing system
JPS57157368A (en) * 1981-03-06 1982-09-28 Ibm Data processing unit

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005092884A (ja) * 2003-09-19 2005-04-07 Harman Becker Automotive Systems Gmbh データ転送インターフェース
JP2010157234A (ja) * 2008-12-31 2010-07-15 Intel Corp 効率的なリマッピング・エンジンの利用

Also Published As

Publication number Publication date
US4633387A (en) 1986-12-30
SG150494G (en) 1995-03-17
EP0117408A3 (en) 1988-06-22
JPH0458050B2 (ja) 1992-09-16
EP0117408B1 (en) 1992-07-22
EP0117408A2 (en) 1984-09-05
HK138394A (en) 1994-12-16

Similar Documents

Publication Publication Date Title
JPS59158461A (ja) デ−タ転送制御装置
EP0071719B1 (en) Data processing apparatus including a paging storage subsystem
EP0104588B1 (en) Peripheral storage system having multiple data transfer rates
EP0075688B1 (en) Data processing apparatus including a selectively resettable peripheral system
EP0072108B1 (en) A multiple operating mode storage subsystem
US4779189A (en) Peripheral subsystem initialization method and apparatus
US4636946A (en) Method and apparatus for grouping asynchronous recording operations
US5247648A (en) Maintaining data coherency between a central cache, an I/O cache and a memory
US7249221B2 (en) Storage system having network channels connecting shared cache memories to disk drives
JPH0532764B2 (ja)
US6662253B1 (en) Shared peripheral architecture
JPH034940B2 (ja)
EP0978044A2 (en) Method and apparatus for reordering commands and restoring data to original command order
JPH10320282A (ja) 仮想キャッシュ・コントロール方法及び装置
US5446844A (en) Peripheral memory interface controller as a cache for a large data processing system
JP2004355307A (ja) 通信方法および情報処理装置
JP4053208B2 (ja) ディスクアレイ制御装置
JP2769429B2 (ja) 読み取り要求サービス方法及びデ−タ処理システム
US7136972B2 (en) Apparatus, system, and method for distributed management in a storage system
JPH10254775A (ja) 共有キャッシュメモリを有するメモリコントローラ
JPH0519179B2 (ja)