JPH0458050B2 - - Google Patents

Info

Publication number
JPH0458050B2
JPH0458050B2 JP58228626A JP22862683A JPH0458050B2 JP H0458050 B2 JPH0458050 B2 JP H0458050B2 JP 58228626 A JP58228626 A JP 58228626A JP 22862683 A JP22862683 A JP 22862683A JP H0458050 B2 JPH0458050 B2 JP H0458050B2
Authority
JP
Japan
Prior art keywords
data
work
queue
address
control device
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 - Lifetime
Application number
JP58228626A
Other languages
English (en)
Other versions
JPS59158461A (ja
Inventor
Hawaado Haatangu Maikeru
Haabaato Noruta Aasaa
Goodon Riido Deebitsudo
Erusuwaasu Teiraa Jerarudo
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)

Description

【発明の詳細な説明】 [技術分野] 本発明は、DASD(直接アクセス記憶装置)の
如き支援記憶装置と、キヤツシユとして働く、好
ましくはランダム・アクセス・メモリより成る前
置記憶装置とを用いたページング・データ記憶シ
ステムに係る。 [従来技術] 従来、ページング及びスワツピング記憶装置は
幾つかの構成を有している。例えば、ページング
及びスワツピング・データを記憶するために、
種々のDASDが直接用いられている。その様な装
置を用いた場合には、記憶されたページング及び
スワツピング・データへのアクセス時間が比較的
長いという問題があり、これは全体的なCPU又
はデータ処理システムの性能に悪影響を与え得
る。IBM2305固定ヘツド記憶装置に関する。
IBM社発行の刊行物GA−26−1589は、ページン
グ及びスワツピング環境において用いられる記憶
ドラムについて記載している。記憶ドラムが
DASDよりも優れている点は、ページング及びス
ワツピング・データ信号へのアクセスが比較的速
いことである。記憶ドラムの不利な点は、所与の
容量の記憶ドラムのコストが比較的高いことであ
る。従つて、多くのページング及びスワツピング
の適用例においては、IBM2305固定ヘツド記憶
装置の如き記憶ドラムが活動ページのデータを記
憶し、比較的非活動状態のデータがDASD上に保
持されている。従つて、アクセスが高速で行なわ
れる前置記憶装置と、比較的大容量を有し、より
低コストであり、アクセスがより低速で行なわれ
る支援記憶装置との間で命令、ページング及びス
プーリング・データを自動的に転送する階層ペー
ジング記憶システムが望まれている。 更に、データへの多重アクセスが行なわれるべ
きである。即ち、所与のデータ単位にアクセスす
るために、2個以上のアドレスが使用可能である
べきである。この点に関して、IBM2305固定ヘ
ツド記憶装置は、アドレス0〜7が物理アドレス
0を有する磁気記憶ドラムへのアクセスを生じ、
アドレス8〜15が物理アドレス8を有するドラ
ムを選択するという、多重要求を可能にしてい
る。勿論、各ドラムは、所与の時間に1つのアク
セスのみを許す。従つて、アドレスの1つによる
所与のドラムへの所与のアクセスは、上記ドラム
への全てのアドレスを使用中即ちアクセス不能の
状態にする。プログラムの実行並びにページング
及びスワツピング・データ・セツトの転送を改善
するために、多重アドレス領域においてより大き
な柔軟性が望まれる。 従来、種々の支援記憶装置を有する、種々の適
用例のための階層データ記憶装置が用いられてお
り、それらの支援記憶装置は、例えば、磁気テー
プ記録装置、DASDの如き磁気デイスク記憶装
置、比較的遅い揮発性のRAM、磁気バルブ又は
シフト・レジスタ型のメモリ、テープ・ライブラ
リ・システム等である。支援記憶装置への比較的
長いアクセス時間を補う様に設計されている前置
記憶装置も、従来、種々の構成を有している。例
えば、IBM3850大容量記憶システムにおいては、
支援記憶装置は磁気テープ・ライブラリより成
り、前置記憶装置は複数のDASDより成つてい
る。そのDASDへのアクセスは、自動テープ・ラ
イブラリに含まれるデータ・カートリツジに記憶
されたデータへのアクセスの場合よりは、比較的
早く行なわれた。 更に、米国特許第3569938号明細書においては、
階層記憶装置が、データ処理システムへの見掛け
上の記憶装置として述べられている。この特許明
細書においては、比較的高速でアクセスの行なわ
れる記憶装置が比較的低速でアクセスの行なわれ
る記憶装置へのバツフアとして働くという、キヤ
ツシユ概念が示されている。この例においては、
RAMが前置記憶装置即ちキヤツシユとして働
き、支援記憶装置はテープ又はデイスク・データ
記憶装置である。見掛け上の記憶装置の大きさは
上記支援記憶装置の容量であり、そのアクセス時
間は前置記憶装置の迅速なアクセスに等しい見掛
け上のアクセスを与えている。もう1つの階層記
憶装置が米国特許第3839704号明細書に示されて
おり、この場合には、DASDが記録機構によりア
クセス可能なRAMによつてバツフアされてい
る。その記録機構は、支援記憶装置即ちDASDへ
のアドレスを解釈し、それらのアドレスをデータ
処理技術において周知のテーブル索引機構により
バツフア・アドレスへ変換する。この配置も、
DASDへの比較的長いアクセス時間を補うことを
目的としている。又、この配置は、その階層記憶
装置に接続されたデータ処理システムがデータを
必要とする前にそのデータをDASDからバツフア
へ転送して、そのデータへのアクセス時間を最小
限にしている。これらの2つの特許明細書は、
種々の周辺記憶装置にキヤツシユを設けるための
一般的配置を示している。ページング及びスワツ
ピング記憶装置に対する今日の要求を充すために
は、更に制御が必要とされている。 キヤツシユを設けることによつて性能が改善さ
れたもう1つの技術分野は、コンピユータ又は
CPUの主記憶装置領域である。即ち、各データ
処理システムが、キヤツシユ即ち高速記憶装置を
有するCPUを含む。このキヤツシユのための支
援記憶装置が通常の主記憶装置である。CPUの
命令実行及びオペランド・データの転送が最大限
になる様にキヤツシユ動作を改善するために種々
の技術が従来用いられている。CPU及び主記憶
装置に関してキヤツシユの動作を制御する1つの
例が、米国特許第4075686号明細書に示されてい
る。この米国特許明細書は、キヤツシユを用いる
ことが常に有利とはいえず、或る場合には、キヤ
ツシユをバイパスすることにより性能が改善され
ることを記載している。キヤツシユのバイパス
は、幾つかの方法で行なわれる。1つの例におい
ては、主記憶装置がセグメント状に構成される。
それらのセグメントの一部は入出力動作又は周辺
動作のために専ら使用され、それらのセグメント
へのアクセスは全て、主記憶装置のキヤツシユを
バイパスする。同様にDASDのためのキヤツシユ
が、或る状況の下では、選択された装置又は装置
部分へバイパスされることがある。この米国特許
明細書に記載されているもう1つの態様において
は、指令に基きキヤツシユを選択的にバイパスす
ることによつて性能が改善される。その例におい
ては、主記憶装置領域への指令がキヤツシユ・バ
イパス・ビツトを含んでいる。そのビツトが1に
セツトされているとき、キヤツシユは使用されな
い(主記憶装置が直接アクセスされる)。キヤツ
シユ・バイパス・ビツトが0にリセツトされてい
るとき、キヤツシユが使用される。キヤツシユの
選択的なバイパスは、多くの場合において、主記
憶装置キヤツシユ・システム又はDASD−キヤツ
シユ・システムの如きデータ記憶システムの性能
を最適化することが出来るが、今日のページング
及びスワツピング・データ転送に対する厳しい要
求を充たすためには、更に制御は必要とされる。 階層における装置間に複数の経路を有するデー
タ記憶階層においては、性能を改善するためにデ
ータの移動において負荷を平衡化することができ
る。また、階層の或るレベルに揮発性のデータ記
憶装置が用いられている場合にも、その様な負荷
の平衡化によつて記憶システム及びデータの利用
可能性を改善することができる。 複数の装置間におけるデータ処理の負荷の平衡
化は、通常、いわゆるタスク割当て時間に行なわ
れる。即ち、データ処理作業が続いて行なわれる
前に、どの装置がそのタスクを実行すべきかが制
御機構により決定され、そのタスクが或る装置に
割当てられると、その装置は、後にそのシステム
における他の装置よりも大きな負荷を加えられて
も、動作を続ける。その様なタスク割当ての平衡
化の1例がIBM Technical Disclosure
Bulletin、第20巻、第3号、1977年8月、第937
頁乃至第938頁におけるJ.F.Baker及びD.E.Holst
による“Load Balancing Control for a
Multi−processor”と題する論文に示されてい
る。この論文は、システムを制御する種々のプロ
セツサに負荷平衡化表を有している。柔軟結合さ
れた多重プロセツサ制御記憶システムについて記
載している。負荷の平衡化は割当て時間に行なわ
れシステムにおける他の装置よりも大きな負荷が
加えられても動作が行なわれる。負荷の平衡化
は、割当て時間において、作業待ち行列の深さを
示す負荷平衡化表に基いて行なわれる。負荷平衡
化の情報が記憶システムの種々のプロセツサの間
で交換される。調時されたプロセスのスケジユー
リングについても記載されている。タスク割当て
時間における負荷平衡化のもう1つの例が、
IBM Technical Disclosure Bulletin、第14巻、
第11号、1972年4月におけるL.A.Jaikes等による
“Input/Output Channel/Device Load
Balancing Algorithm”と題する論文に示され
ており、この場合には、周辺サブシステムの作業
が作業割当て時間に平衡化される。 多重処理の配置におけるCPU又はホストの負
荷も、作業割当て時間に平衡化されることが多
い。米国特許第3648253号明細書に示されている
その1例においては、タスクが、後に第15図に
関して述べるプログラム式スケジユーラにより、
現在のタスクへの移行時間に基いて、多重プロセ
ツサの配置に割当てられている。その作業負荷の
平衡化は、タスクが開始される前にタスクを割当
てることによつて行なわれる。米国特許第
4032899号明細書は、全体の処理の負荷に基いて
データ・トラフイツクを平衡化するデータ交換網
を示している。この平衡化は、個々のプロセツサ
によるポートへの出力トラフイツクを排他的割当
てベースでスケジユールすることにより達成さ
れ、即ち、この場合においても、負荷の平衡化
は、実行されるべきタスクが初めに割当てられる
ときに達成される。 又、負荷の平衡化は、エラー状態の検出に基い
て達成されている。例えば、米国特許第3787816
号明細書は、誤動作又はエラーの後にデータ処理
が続いて行なわれる様に、複数の特定の同様な装
置に割当てられている機能を再割当てするため
に、制御された方法で再構成し得る、多重処理シ
ステムを示している。 負荷を平衡化するために、活動モニタが従来用
いられている。米国特許第3588837号明細書は、
全ての主要データ経路の活動を、時間間隔による
サンプリング技術を用いてモニタするシステムを
示している。サンプルは、或る時間間隔における
サンプルの数と前の時間間隔におけるサンプルの
数との比を表わす様に動的に記録され、動的環境
内の全ての潜在的待ち合せ点の活動が、データ処
理及び通信装置の使用に関する統計的データを与
える様に記録される。この特許明細書は、モニタ
装置を示しているが、その様なモニタ装置により
駆動される負荷の平衡化については何ら示してい
ない。 作業負荷の平衡化が全て割当て時間に達成され
ている訳ではない。例えば、米国特許第4099235
号明細書は、2つの実時間データ・プロセツサを
有し、所与のタスクがそれらの一方のデータ・プ
ロセツサにおいて選択的に実行される、データ処
理システムの動作方法を示している。その様な選
択は、タスクの性質及びどのプロセツサがその様
なタスクに関して動作する様に選択されたかに依
存する。各データ・プロセツサは、その使用率を
連続的に決定するために連続的にモニタされる。
各プロセツサには、そのプロセツサの過負荷の限
界よりも低い、その様な使用率の所定の上限値が
割当てられている。その様な上限値を超えたと
き、一方の使用中のデータ・プロセツサにおいて
実行されているタスクが他方のデータ・プロセツ
サに割当てられ、その他方のプロセツサがそのタ
スクを実行する。この米国特許明細書は、デー
タ・プロセツサ間で活動タスクをシフトさせる方
法として、使用の閾値を用いている。その開示さ
れた方法は、好ましくは、使用率を示す、実行さ
れているタスクから生じる待ち時間と、自由時間
との比を用いている。この米国特許明細書は、デ
ータ・プロセツサ間に於る入出力負荷の平衡化に
関連して電気機械的スイツチにより周辺装置がそ
れらのデータ・プロセツサ間でスイツチングされ
る、米国特許第3665404号明細書に記載の方法に
も関連している。前述の米国特許第4099235号明
細書に記載の方法に於ては、多くの実時間動作が
バツチ処理と同様であり、従つて実行されていな
いタスクがプロセツサ間において容易に移転され
る。これは、負荷を平衡化する為に、非活動タス
クのみが移転される事を意味する。 活動が制御データ・プロセツサの制御範囲を超
えて変化する場合のある動的データ処理システム
においては、種々のデータ・プロセツサ/データ
処理経路間の負荷の平均化は、データ処理のスル
ープツトを最大限にするために負荷平衡化のため
のデータ転送が最小限になる様に、後の活動にお
ける未知の動的変化に充分適応すべきである。 ページング及びスワツピング環境においては、
記憶システムに対するホストの制御を最小限にし
て、多重タスク処理のページング・アクセスのた
めに、複数のアクセスが行なわれることが望まし
い。即ち、ページング及びスワツピング記憶シス
テムは、ページング及びスワツピング環境の完全
性を確保するために各々の独立した動作を維持し
て、ホスト又はCPUの動作を最大限にするため
の制御手段を有すべきである。ページング及びス
ワツピング環境における装置間の非同期的動作の
平衡化は、データ記憶システムの利用可能性を改
善することができる。 [発明の概要] 複数の装置を用いた環境において、実行される
べき作業を有していない或る装置が他の装置に照
会する。他の装置は、実行すべき動作を上記の或
る装置に移転させることができる。作業の有無の
評価は、種々の装置の作業待ち行列を調べること
により行なわれる。本発明の或る特定の態様にお
いては、複数の動作レベルを有するデータ記憶階
層の内部動作は該階層に関連する外部動作と実質
的に非同期的に実行される。該階層の或るレベル
における種々の装置は、より下位のレベルに関し
て実行すべき作業の待ち行列を有している。或る
レベルの或る装置が下位のレベルの作業を少しし
か又は全く有していないとき、その装置はそのレ
ベルにおける他の装置にその様な下位のレベルの
作業を自己に供給する様に要求し、他の装置に代
つてその作業を実行する。本発明のもう1つの態
様においては、或るレベルにおける各装置が、下
位のレベルに関して実行すべき作業(データ転送
の如き)を含む作業待ち行列を有している。上記
の或るレベルにおける或る装置の待ち行列が空に
なつたとき、その装置は他の装置に照会して、他
の装置の上記或るレベルの作業待ち行列から作業
を移転させることを要求する。 [実施例] 第1図乃至第4図は、本発明を用いた周辺デー
タ記憶階層を示している。第1図の全体的配置
は、データを記憶及び検索するためにデータ記憶
階層10に結合された、CPU、多重処理環境等
の如き、ホスト11を示している。データ記憶階
層10は、いずれかのメモリ制御装置17を経て
ホストに結合されている複数のDASD16を含
む。メモリ制御装置17は、半導体装置のランダ
ム・アクセス・データ記憶アレイより成り、通常
のアクセス回路26を有しているいわゆるシステ
ム記憶装置30中に埋め込まれたキヤツシユ40
を共用している。アクセス回路26は、各々メモ
リ制御装置17に結合された1対の入出力両方向
ポートP1及びP2を有するアクセス制御スイツ
チを含む。記憶装置30は更に、どのデータがキ
ヤツシユに記憶されているかを識別するための半
導体データ記憶アレイ中に記憶された記録装置4
3を含む。記録装置43は、ホスト11がDASD
16のアドレスを用いてキヤツシユ40に記憶さ
れているデータにアクセスできる様にキヤツシユ
に記憶されているその様なデータのアドレスを
DASD16のアドレスに関連付ける。DASD1
6、メモリ制御装置17及びホスト11に関する
キヤツシユ40の動作は、以下の説明から理解さ
れよう。 或るメモリ制御装置17がもう1つのメモリ制
御装置17に代つて作業を実行することにより作
業負荷を平衡化するために、両メモリ制御装置1
7に結合されているメツセージRAM18を経て
メモリ制御装置間で制御メツセージが交換され
る。その動作は、一方のメモリ制御装置17が軽
い負荷しか又は全く負荷を有していないとき、そ
のメモリ制御装置が作業の移転を要求する要求メ
ツセージを他方の作業移転側のメモリ制御装置1
7に供給する様に行なわれる。作業移転側のメモ
リ制御装置17は、その作業負荷を調べ、適当で
あれば、所定数の作業ジヨブを作業要求側のメモ
リ制御装置に供給する。作業要求側のメモリ制御
装置は、作業移転側のメモリ制御装置に代つてそ
れらのジヨブを実行する。本発明の1つの好まし
い形においては、或るDASD16に対する1つの
データ記憶アクセス要求(1つ又はそれ以上デー
タ・レコード)が代理作業単位を構成するが、本
発明がこれによつて限定されることはない。 データ記憶階層においてメモリ制御装置17と
DASD16との間で行なわれる重要な非同期的動
作の1つは、ホスト11から受取られてキヤツシ
ユ40に記憶されたデータをDASD16上に記録
することである。“書込”と呼ばれるその様な動
作は、書込待ち行列(WRQ)19に入れられ
る。それらの書込は代理作業の主要部分を構成す
るが、或る状況においては、DASD16からキヤ
ツシユ40へ“読取”られるべきデータが代理作
業として転送される。1つの実施例においては、
各メモリ制御装置17がそれ自身の独立した書込
待ち行列を有している。第1図に示されている第
2の実施例における共通の書込待ち行列において
は、WRQ19は両方のメモリ制御装置17に共
通である。この第2実施例の配置においては、
WRQ19は、両メモリ制御装置17から書込み
ジヨブを受取り、それらを単一の待行列に入れ
る。いずれのメモリ制御装置17がDASD16に
書込を行なう必要があるとき又はデータがDASD
16に書込まれるべきことを示す小さな負荷又は
他の作業状態を有するときには直ちに、そのメモ
リ制御装置17がWRQ19にアクセスして、デ
ータ記憶階層における全てのメモリ制御装置に関
連するデータをキヤツシユ40からDASD16へ
書込む。この第2実施例の配置は、暗黙の代理作
業の配置を与える。 第2図は、データ記憶階層において作業移転側
のメモリ制御装置17のために代理作業を実行す
る作業要求側のメモリ制御装置17の全体的機械
動作の流れを示している。代理作業の実行におい
ては、ホスト11により供給された指定及び他の
要求に対する各メモリ制御装置17の応答責任が
考慮される。ホスト11の指令及び要求を受取る
ために、各メモリ制御装置17は、複数のいわゆ
るチヤネル・アダプタ32によつてホスト11に
結合している。第2図に示されている如く、チヤ
ネル・アダプタ32は、メモリ制御装置17にお
ける後述するデイジタル・プロセツサがホスト1
1からの指令に応答することができる様に、ホス
トの要求を示す信号を供給する。機械動作のステ
ツプ320において、メモリ制御装置17は、チ
ヤネル・アダプタ32がホスト11により供給さ
れた指令を実際に受取つているか否かを調べる。
メモリ制御装置17は、ステツプ321において
受取られた指令に応答し、それから再びチヤネ
ル・アダプタ32がホスト11からの指令を受取
つているか否かを調べるためにアイドル・ループ
322に入る。この様にして、ホスト11からの
指令は、メモリ制御装置17により優先的に実行
される。いずれのチヤネル・アダプタ32からも
何ら指令が送られてこなければメモリ制御装置1
7は、メモリ制御装置17、キヤツシユ40及び
DASD16間における前述の非同期的動作を実行
するために、後述する作業待ち行列を調べる。非
同期的動作を開始するために、ステツプ323に
おいて、読取−書込(R−W)の優先順位が調べ
られて、データが初めにDASD16からキヤツシ
ユ40へ転送されるべきか(読取)又はキヤツシ
ユ40からDASD16は転送されるべきか(書
込)が決定される。その様な優先順位は、待ち行
列の長さ、キヤツシユの占有、キヤツシユの利用
可能なすなわち自由なスペース等に依存する。ス
テツプ323において読取が優先している場合に
は、メモリ制御装置17は、ステツプ324にお
いて、読取待ち行列(RQ)を調べる。実行され
るべき非同期的作業が読取待ち行列において識別
されると、ステツプ323に示されている優先順
位によつて、読取動作(DASD16からキヤツシ
ユ40へのデータの転送)がステツプ325にお
いて実行される。それから、メモリ制御装置17
は再びアイドル・ループ322に入つて、ホスト
11からの指令を探索する。この様にして、非同
期的動作と指令の実行(各ホスト11との同期的
動作)とが動的にインターリーブされる。ステツ
プ324において、実行されるべき作業が読取待
ち行列(RQ)において見出されない場合には、
メモリ制御装置17は、ステツプ326におい
て、書込待ち行列(WQ)を調べる。(この待ち
行列は、局所及び代理の両方における全ての書込
の活動を含むことができる。)WRQ19の如き、
その書込待ち行列にエントリが生じていれば、ス
テツプ327において書込が実行される。それか
ら、メモリ制御装置17はアイドル・ループ32
2に入つて、ホスト11からの指令を再び探索す
る。或る状況においては、受取られた指令は、上
記の非同期的動作に割込むことができる。即ち、
非同期的動作の実行の決定と実際のデータの転送
との間において、時間が経過する。その様な遅延
の間に、非同期的動作に何ら干渉せずに、指令が
実行される。 ステツプ323において、データがキヤツシユ
40からDASD16に書込まれるべきであること
を示す、非同期的動作の優先順位が見出された場
合には、メモリ制御装置17は、ステツプ330
において、初めに書込待ち行列(WQ)を調べ
る。書込待ち行列に何らかのエントリがあると、
ステツプ327において、書込が実行される。ス
テツプ330において、書込待ち行列が空であれ
ば、メモリ制御装置17は、ステツプ331に進
んで、読取待ち行列(RQ)を調べる。読取待ち
行列にエントリが見出されれば、そのエントリに
対応する読取動作がステツプ325において実行
される。 ステツプ320において、実行されるべき指令
がなく、又読取待ち行列及び書込待ち行列に示さ
れている如き実行されるべき非同期的作業もない
場合には、ステツプ332において、メモリ制御
装置17はステツプ326又は331から代理作
業を探索する。その様な代理作業は、読取待ち行
列又は書込待ち行列に加えられ、又は作業要求側
のメモリ制御装置により別個に実行されてもよ
い。代理作業の設定から実際のデータ転送の実行
迄の時間が経過した後、メモリ制御装置17は再
びアイドル・ループ322に入る。この様にし
て、代理作業も又、指令の実行及び他の非同期的
動作と動的にインターリーブされる。キヤツシユ
40とDASD16との間のデータの転送について
は周知であるので、特に記載しない。 第3図及び第4図は、本発明を用いた周辺シス
テム即ちデータ記憶階層10を示している。第3
図は該システムを論理の形で示し、第4図は該シ
ステムを電子回路又はハードウエアの形で示して
いる。第3図において、単一のホスト11は、ペ
ージング及びスワツピング・データのために、周
辺システム10と通信する。“ホスト”は、
CPU、データ処理システム、単一の装置として
働く多重処理の環境等を含む。複数の入出力接続
12,13,14及び15は、ホスト11をペー
ジング記憶装置である周辺システム10へ接続す
る。これらの入出力接続は、周知の如く、IBM
コンピユータと共に用いられているものでよい。 ページング及びスワツピング・データは、2レベ
ル階層記憶装置の下位レベルを構成する支援記憶
装置に記憶される。支援記憶装置は複数のDASD
16より成る。各メモリ制御装置17は、キヤツ
シユ40をDASD16に結合させる経路手段を構
成している。図示されている実施例においては、
単一のストリングのDASD16が示されている
が、そのストリングは、周知の技術を用いて、第
1図に示されている如く、複数のメモリ制御装置
17の間でスイツチング可能である。その動作に
おいて、4096バイトのデータ・ブロツクがホスト
11とDASD16との間を迅速に転送される。8
つのDASD16が各々、任意の入出力接続12乃
至15を経て独立にアクセスされる様に、アドレ
スD0〜D7を有している。即ち、ホスト11は
任意の入出力接続を経て任意のDASD16をアド
レスすることができる。各DASD16には、複数
のアクセス経路の他に、複数のアクセス・アドレ
スが与えられている。その様なアクセス・アドレ
スは、アドレス構造20を有している。制御装置
(システム10)アドレスは、典型的には3ビツ
トの部分CUにより示される。実際の物理的
DASDアドレスは、8つのDASD16に対して3
ビツトを有する部分DEVにより示される。
DASD16の実際のアドレスを修飾するアクセ
ス・アドレス修飾子の部分ACは、本実施例にお
いては、2ビツトより成る。装置D0をアドレス
する4つのアクセスのうち1つは、AC部分が全
てゼロである、直接アクセスである。装置D0へ
の他の3つのアクセスは、キヤツシユ40を経て
行なわれ、01,10及び11より成るACビツト・パ
ターン22によつて識別される。これらの3つの
アクセスのための装置アドレス部分DEVは全て
同じである。ホスト11が、キヤツシユ40を経
てデータにアクセスする場合を含む4つのアクセ
スの中の1つを用いて、DASD16のデータにア
クセスするとき、任意のDASD16に関して複数
の独立した入出力動作が実行され、各アクセスの
ために1つの独立した動作が実行される様に、各
アクセスが別個の論理装置として処理される。特
定の周辺システム10の電子回路構成に応じて、
DASD16は、キヤツシユに関連する3つの装置
アドレスによりキヤツシユ40がアクセスされる
と同時に、そのアクセスから独立して、アドレス
21によりアクセスされることができる。アドレ
ス21は、任意の論理装置のアクセスの場合と同
様に、ホスト11により、任意の入出力接続12
乃至15を経て供給されることができる。装置D
1は、AC部分が全てゼロであり、DEV部分が
001である、アドレス24によつて直接アクセス
される。論理装置(キヤツシユ)アクセス25
は、論理装置アクセス22及び23の場合と同様
なパターンを有し、他のDASD16についても同
様である。 フロント記憶装置即ち周辺システム10のペー
ジング記憶階層の上位レベルは、制御機構31に
よりアクセス及び制御される。システム記憶装置
30、制御装置31及びホスト11の間の信号転
送は、複数のチヤネル・アダプタ32を介して行
なわれる。それらのチヤネル・アダプタ32は
CAA,CAB,CAC,CADとして示されている。
それらのチヤネル・アダプタは、入出力接続12
〜15を介してコンピユータへ接続される制御装
置にある接続回路である。DASD16とシステム
記憶装置30との間の信号転送は、制御機構31
の指示の下に、データ・フロー回路33を介して
行なわれる。データ・フロー回路33は、データ
処理システム中の通常のデイジタル信号を、当技
術分野において周知の如き、デイスク記憶装置と
共に使用可能な直列形式及びプロトコルに変換す
る。データ・フロー回路33は、装置アダプタ
(DAA)34、及びデイスク制御アダプタ
(DCA)35を介して、信号を転送する。DASD
16はアドレスDCHRによつてアドレスされる。
アドレスDCHRのDは装置アドレスDEVに対応
し、Cはシリンダ・アドレスを示し、Hはヘツド
(記録表面)・アドレスを示し、Rはレコード番号
を示す。レコードは、周知の如く、デイスク記憶
装置上の回転位置によつて迅速に見出される。シ
ステム記憶装置30は3つの主要部分を有する。
第1の部分はキヤツシユ40である。キヤツシユ
40は、ホスト11によつて迅速にアクセスされ
るべきページング・データを記憶し、且つDASD
16に書こまれるべきページング・データを記憶
するためのものであつて、ホスト11がそのよう
なデータを受取るためにDASD16を待機する必
要がない様にする。キヤツシユを設ける原理は、
前述の参照文献中に説明されている。キヤツシユ
40に記憶されているデータへのアクセスは、複
数のレジスタより成るデイレクトリ(DIR)43
を介して行なわれる。それらのレジスタはDASD
16のアドレス(DCHR)、データが記憶されて
いるキヤツシユ40中のレジスタのアドレス、及
び他の制御情報を識別する信号を含む。これにつ
いては、後に第5図に関連して説明する。キヤツ
シユ40は比較的大きいので(数メガバイト)、
キヤツシユ40へのアクセスは、ハツシユ回路4
4において実行されるいわゆるハツシユ法によつ
て改善される。アドレスのハツシングは周知であ
り、本発明と直接の関連を有しないので、更に詳
述しない。ちらし回路44の出力は、散乱索引表
(SIT)45をアドレスする。表45は、記録装
置43をアドレスしてキヤツシユ40をアクセス
するために、記録装置43へのちらし演算された
アドレスをインデツクスする。各キヤツシユ・ア
クセスにおいて、1つ又はそれ以上の記録装置エ
ントリが含まれていてもよい。所与のちらし演算
出力に関連する複数のエントリはちらしクラスと
呼ばれ、単一又は二重にリンクされたリストを用
いて相互にリンクされている。それによつて、記
録装置43への単一のアクセスで、DASD16の
所与のアドレス範囲について、キヤツシユ40を
完全に走査出来る。キヤツシユ40は、内部バス
41を介してチヤネル・アダプタ32との間で信
号を転送し、内部バス42を介してデータ・フロ
ー回路33との間で信号を転送する。システム記
憶装置30のために使用されるRAMとDASD1
6との間のデータ信号の転送は周知であり、更に
詳述しない。 制御機構31は3つの主要部分を有する。第1
の部分即ちアドレス及び指令評価器50はバス接
続51,52,53及び54を介してチヤネル・
アダプタ32に接続される。評価器50は、チヤ
ネル・アダプタ32を介してホスト11から種々
の入出力指令を受取り、それを部分的にデコード
し、ホスト11から指令と共に受取られたDASD
のアドレスが、直接アクセスのアドレスか論理ア
クセスのアドレスかを決定する。アドレス21,
24等によつて直接アクセスが指定されると、評
価器50は、直接アクセス制御部56を活動化す
る。制御部56は、DASD16をホスト11へ接
続する制御装置の技術を用いて構成されている。
この様なアクセス制御は周知であるので、更に詳
述しない。ホスト11から制御部56を介して
DASD16迄の動作は、チヤネル・アダプタ32
の1つを介してDASD16をホスト11へ予約す
る能力を含む。これは、アドレスされたDASDへ
のアクセスが、特定のチヤネル・アダプタ32に
限定されることを意味する。コンピユータを用い
て実行される予約及び解放原理は周知であり、更
に詳述しない。 評価器50は、アドレスを伴う指令をホスト1
1から受取つて、ビツト・パターン22及び23
又は25により示されている如き、3つの論理ア
クセスの1つを検出することができる。その場
合、評価器50は、キヤツシユ40にアクセスし
て、そこへページング・データを記憶し又はそこ
からページング・データを検索するために、経路
60の1つを介してキヤツシユ・アクセス制御部
61と通信する。論理アクセスがホスト11から
の指令により指令された時、DASD16は予約さ
れ得ない。即ち、装置D0がホスト11によるア
クセスのためにチヤネル・アダプタCAAへ予約
されている場合、ホスト11は、更に、経路14
及び制御部61を介して、周辺システム(記憶シ
ステム)10へ独立したデータの要求を送ること
ができる。その要求されたデータがキヤツシユ4
0にない場合、制御部61は、経路66及び制御
部56を介してDASD16をアクセスする。それ
は、アドレスされたDASDがチヤネル・アダプタ
CAAへアクセスのために予約されている場合で
も行なわれる。この様にして、DASD16は、デ
ータ処理動作のために予約されるが、ページン
グ・データ動作のアクセスのためには完全に解放
されている。 制御部61は、複数の状況表示レジスタと共に
動作する。例えば、論理装置制御ブロツク・レジ
スタ(LDCB)62は、後に第5図に関連して説
明される如く、キヤツシユ40を介する論理装置
アクセスに関連した制御情報信号を含み、各々の
要求されたアクセスが独立的に処理される様にす
る。バス41を介するキヤツシユ40とチヤネ
ル・アダプタ32との間のデータ信号の転送は、
1組のチヤネル制御ブロツク・レジスタ(CCB)
63に記憶されている信号によつて示される。キ
ヤツシユ40へのアクセスは、バス64を介して
ちらし回路44へちらし動作を要求することによ
つて開始される。ちらし回路44が記録装置43
にある正しいエントリを識別すると、そのエント
リはシステム記憶装置30から1組のアクチブ・
デイレクトリ・エントリ・バツフア・レジスタ
(ADEB)76へ転送され、制御部61は、その
様な制御情報を得るために更にシステム記憶装置
30を参照しないで、キヤツシユ40と共に動作
することができるようになる。記録装置43が、
論理アクセスにより要求されたデータがキヤツシ
ユ40にないこと、即ち記録装置にエントリがな
いことを示すと、その要求されたデータはDASD
16からキヤツシユ40へ転送され、次いでホス
ト11へ中継されねばならない。この動作は、読
取要求を1組の待ち行列レジスタ69の読取待ち
行列RQに入れることによつて、極めて非同期的
に達成される。或る場合には、制御部61は、記
録装置43がちらし回路44又は散乱索引表45
に頼ることなくアクセスできるように、先行アド
レス情報を有する。このアクセスは、記録装置4
3に直接アクセスするバス43Aによつて示され
ている。キヤツシユ40にミスが生じた場合、制
御部61は、経路66を介してDASD16をアク
セスする。更に、他に通信が、両方向矢印68に
より示されている。制御部56がバス42を介し
てデータ信号をDASD16からキヤツシユ40へ
転送した時(バス42は、キヤツシユ40への転
送とキヤツシユ40からの転送とが同時に行なわ
れない時、バス41と結合することができる)、
制御部56は、制御部61に経路67を介して、
ページング・データがキヤツシユ40へステージ
ング即ちプロモーシヨンされたことを知らせる。
次に、制御部61は、適当な表示信号をホスト1
1に供給し、ホスト11がシステム10からデー
タを要求して、そのデータがキヤツシユ40から
ホスト11へ迅速に中継されるようにする。この
ような手順は従来技術において知られており、デ
ータ処理システムと関連して使用される場合に
は、チヤネル指令リトライと呼ばれる。 ホスト11によつて周辺システム10へ供給さ
れる入出力指令は、デイスク記憶装置を動作させ
ることに関連して使用される指令である。論理ア
クセスのための他の指令は、ページング・パラメ
ータ設定指令を含む。この指令は、後述する如
く、制御部61を起動させる。複数アクセスのた
めのアドレス構造20は、直接アクセス・アドレ
スのみを使用するデイスク記憶装置のためのアド
レス構造と同じである。従つて、本発明の実施に
おいては、制御部56を介して通常のDASDを使
用するホスト11の入出力配置に、最小限の変更
を加えるだけでよい。また、DASD16及びホス
ト11に関するキヤツシユ40の動作は、改善さ
れた同時的アクセスを可能にし、キヤツシユ原理
に基く見掛け上の記憶装置を実現する。この記憶
装置は、高い性能、しかも大きな容量を有してい
る。 メモリ制御装置17において代理作業を行なう
場合には、後述される如く、代理待ち行列84が
評価器50に加えられる。前述の如く、代理書込
動作には、書込待ち行列WQが、局所及び代理動
作の両方に用いられる。代理待ち行列84は、
DASDからキヤツシユへの代理読取動作にも有用
である。実ましい実施例においては、代理待ち行
列84は、1つのDASDに関して行われる1つの
書込又は読取動作の如き代理作業ジヨブをDASD
16毎に1つだけ含む。更に、読取代理ジヨブが
用いられる場合には、代理ビツト(P)97が
LDCB62に含まれている。更に、各記憶デイレ
クタ17の各々に設けられた作業待ち行列69
は、読取待ち行列RQ及び書込待ち行列WQを含
んでおり、又共通即ち共用の作業待ち行列を用い
ずに非同期的代理作業ジヨブが完了したときに、
他のメモリ制御装置17がその対応する記録を更
新することができる様に、その他のメモリ制御装
置17に応答が供給されねばならないことを示す
ために、代理ビツトPを含んでいてもよい。メツ
セージRAM18はアクセス及び通信回路335
を含み、アクセス及び通信回路335は、メモリ
制御装置17がRAMアレイ336をアクセス
し、他のメモリ制御装置17における対応するメ
ツセージ・アレイを経て通信を行なうための命令
を与えることを可能にする。即ち、第1図に示さ
れているメツセージRAM18は、1つの好まし
い実施例においては、各メモリ制御装置17に1
つ、即ち2つのアレイより成つている。他の実施
例においては、いずれかのメモリ制御装置17に
パツケージングを有する、単一のメツセージ
RAM18が設けられてもよい。メツセージ
RAM18において、アクセス及び通信回路33
5は、データ処理技術の分野において周知である
通常のアクセス及び通信制御回路337を含む。
評価器50により転送された代理データが代理待
ち行列84に供給されて、Pビツト97及び作業
待ち行列69を更新する様に、データ・フロー即
ちパラメータ・データがメツセージRAM18を
用いてバス338及び340を介して転送され
る。その様なパラメータ・データは、評価器50
が、ホスト11により供給された要求に応答して
指令を供給する場合と同様にして、制御部61及
び56に適当な指令を供給することを可能にす
る。通常のハンドシエーキング・タグ制御が、線
341により示されている如く制御回路337と
評価器50との間に、そして線342により示さ
れている如く他の記憶制御装置へ与えられてい
る。その様なタグ制御は周知であるので、更に詳
述しない。 第4図は第3図に示される実施例の変形であ
る。制御機構31がコンピユータ化された形態で
示されている。即ち、第4図のデイジタル・プロ
セツサ31Pは、経路51〜54を介してチヤネ
ル・アダプタ32と直接に通信する。ホスト11
とDASD16との間のデータ・フローは、チヤネ
ル・アダプタ32からデータ・フロー回路33へ
直接に延長されるバス70を介して行なわれる。
チヤネル・アダプタ32は、現今の制御装置によ
つて実施される如く、バス70との間の切換えを
実行する既知の切換回路を有する。プロセツサ3
1Pは、周知の如く、バス71を介してデータ・
フロー回路33を制御する。プロセツサ31P
は、バス72を介してシステム記憶装置30と通
信する。バス72は、典型的にはアドレス信号、
読取指令信号、書込指令信号などをシステム記憶
装置30へ送る。プロセツサ31Pは、制御記憶
装置73に記憶された1組のマイクロコード・プ
ログラムによつて制御される。プロセツサ31P
は、バス74を介してマイクロプロコード・プロ
グラムをフエツチして、第3図における制御機構
31について説明した制御機能の全てを実行す
る。例えば、評価器50は、その機能を、プログ
ラム(ACE)50Pを実行するプロセツサ31
Pによつて実行される。同様に、制御部56は、
その機能を、プログラム(DAC)56Pを実行
するプロセツサ31Pによつて実行される。同様
に、制御部61は、プログラム(CAC)61P
に対応する。勿論、記憶システムを動作させるた
めには、診断その他のために、プログラム(OP)
75によつて示される如き多くの他のプログラム
を必要とする。更に、制御記憶装置73は、論理
装置制御ブロツク・レジスタ62(代理ビツト9
7を含む)、アクチブ・デイレクトリ・エント
リ・バツフア・レジスタ76、待ち行列レジスタ
69(WR,RQ及びPを含む)、チヤネル制御ブ
ロツク・レジスタ63、及び本発明と関連を有し
ないがシステム10を動作させるためにプロセツ
サ31Pが使用する他のレジスタを含む。例え
ば、ちらし回路44は、その機能をプログラム7
5によつて実行される。プログラム75とシステ
ム記憶装置30にある散乱索引表45との通信
は、勿論プロセツサ31Pを介して行なわれる。
プロセツサ31Pは、プログラムを実行して、バ
ス72を介して、適当な出力制御信号をシステム
記憶装置30へ送る。表45が制御記憶装置73
に設けられれば、動作はスピード・アツプされ
る。 本発明の詳細な動作の説明を続ける前に、本発
明の実施を成功させるために必要な制御データを
含むレジスタについて、第5図を参照しながら説
明する。レジスタ62は、論理装置の各々に関し
て記憶システム10の全ての動作を効果的に処理
するために、プロセツサ31Pによつて使用され
る制御データを含む。従つて、DASD16の各々
のために、3つの論理装置制御ブロツクが存在す
る。8個の装置を有する記憶システム10におい
て、24個の論理装置制御ブロツクが存在する。制
御部56を介して処理されるDASD16への直接
アクセスは、論理装置制御ブロツクを必要としな
い。制御部56は、先行技術に基くデイスク記憶
装置と同じ様に処理するからである。 レジスタ62は、制御データを4つの主要部分
に配列することによつて最も良く理解できる。基
本部分(FOUND)80は、実施例の基本的構造
機能を説明する制御データに関連する。ページン
グ・パラメータ部分(PPARMS)81は、ホス
ト11から受取られたページング・パラメータ設
定指令に関連する制御データを含む。指令パラメ
ータ部分(CPARMS)82は、ホスト11から
受取らけたセクタ設定、シーク、及びID探索指
令に関連する制御データを含む。読取パラメータ
部分(RPARMS)83は、データ信号をキヤツ
シユ40へ転送するために、DASD16にアクセ
スする時に使用される制御データを含む。 基本部分80は、次の如き制御データ・フイー
ルドを含んでいる。装置フイールド(ODE)9
0は、現在の論理制御装置ブロツクに関連した論
理装置に関し、装置終了がホストのために生じた
ことを示す単一のビツトである。チヤネル・マス
ク・フイールド(CNL MASK)91は、キヤツ
シユ40を介して指定されたDASD16のデータ
へアクセスするために、ホスト11のどのチヤネ
ル・アダプタ32が(従つて、どのチヤネルが)
論理装置を能動化したかを示す。論理アドレス・
フイールド(LDADDR)92は、論理アドレス
のいずれが論理装置制御ブロツクに関連している
かを示す。例えば、DASD16のフイールド92
は、DASD16に基く3つの論理装置の第1のも
のに対してビツト・パターン01000を含む。実際
問題として、論理装置制御ブロツクのアドレシン
グは、ベース・アドレスからのオフセツト値とし
て使用される論理装置アドレスによる。論理装置
アドレス・フイールド92はレジスタ62の検査
及びシーク指定機能を含む。指令フイールド
(CMD)93には、指定された論理装置に対して
システム10で現在活動状態になつているホスト
11から受取られた指令が記憶される。シーケン
ス・フイールド(SEQ)94は、順次的アクセ
スがホスト11によつて指定されたかどうかを表
示する単一のビツトである。このビツトが活動状
態であれば、ホスト11はデータの一連のページ
ング・ブロツクを所定のシーケンスで読取ること
を意味する。チヤネル指令リトライ・フイールド
(CCR)95は、チヤネル指令リトライが進行中
であること(即ち、チヤネル指令リトライがホス
ト11へ送られたこと)を示すビツトである。チ
ヤネル指令リトライは、既知の入出力システム動
作の一部であり、キヤツシユ40のミスが生じた
時に使用される。ミス・フイールド(MISS)9
6にあるビツトは、記録装置43の走査がミス条
件を示したことを表示する。即ち、この場合、所
望されたデータがキヤツシユ40になかつたか、
ホスト11によつて書込まれるべきデータについ
て、キヤツシユ40の中でスペースが割当てられ
なかつたことを示す。代理ビツト(P)97が、
基本部分80に存在している。他の制御フイール
ドもあるが、それらは本発明と関連を有しないの
で説明を省略する。 ページング・パラメータ部分81はシーケン
ス・フイールド(SEQ)100を含む。フイー
ルド100は、多数の連続したブロツク・アドレ
スがホスト11によつて参照されることを示す。
フイールド100は、シーケンス・フイールド
(SEQ)94と同じ情報を含む。読出フイールド
(RO)101は、ホスト11からの読取指令の
結果として、キヤツシ40からチヤネル・アダプ
タ32を介してホスト11へ転送されたページン
グ・ブロツクが、データ転送に続いて無効にされ
てよいことを示す。カウント・フイールド(B
COUNT)102は、処理されるべきページン
グ・ブロツクの現在の数を示す。ベース・シリン
ダ・フイールド(BASE CYL)103は、ペー
ジング・パラメータ設定指令の実行中に受取られ
たベース・シリンダ・アドレスを示す。本発明に
関係のない他のフイールドもページング・パラメ
ータ部分81に含まれている。 指令パラメータ部分82は、デイスク記憶装置
のシークを実行するために、シリンダ及びトラツ
ク・アドレスと共にDASD16のアドレスを含ん
でいるシーク・アドレス・フイールド(SEEK
ADDR)104を含む。探索フイールド(SID)
105は、探索識別引数を含む。セクタ・フイー
ルド(SECT)106は現在セツトされているセ
クタ値を含む。セクタ値は、ページング・ブロツ
クにアクセスするためのデイスク記憶装置の回転
位置を示す。 読取パラメータ部分83は、ホストの要求を満
足させるため、DASD16へのアクセスが必要で
あることを示す要求フイールド110(REQD)
を含む。この場合、データはDASD16からキヤ
ツシユ40へ転送され、ホスト11へ中継されね
ばならない。進行フイールド(RIP)111は、
DASD16からキヤツシユ40への転送が現在進
行中であることを示す。後処理フイールド
(RA)112は、DASD16からキヤツシユ4
0への転送の後処理が進行中であることを示す。
読取パラメータ部分には、DASD16とキヤツシ
ユ40との間の関係状態を示す他の制御フラグを
含ませることができる。装置アドレス・フイール
ド(DADDR)113は、読取動作と関連した
DASD16のアドレスを含む。記録装置インデツ
クス・フイールド(DIR INDEX)114は記録
装置43に対するインデツクスを含む。このイン
デツクスは、装置アドレスによつて指定された記
録装置中の対応するエントリのアドレス、及び対
応するシリンダ・ヘツド及びレコード番号を計算
するために使用される。記憶アドレス・レジス
タ・フイールド(SSAR)115は、システム記
憶装置30の記憶アドレス・レジスタ(図示せ
ず)の指定情報を含む。この指定情報は、ページ
ング・ブロツクをDASD16からシステム記憶装
置30へ読出す時に使用される。この点に関して
説明すると、システム記憶装置30は複数の(例
えば、8個又は16個)アドレス・レジスタ(図示
せず)を含み、これらのアドレス・レジスタは、
ホスト11とキヤツシユ40との間、及びDASD
16とキヤツシユ40との間で迅速なデータ転送
を実行するためにアドレス可能である単一の記憶
アドレス・レジスタ・フイールドでもよい。現ア
ドレス・フイールド118(CADDR)は、キヤ
ツシユ40とDASD16との間で信号を転送する
ために、キヤツシユ・ブロツクの現アドレスを含
む。保存フイールド(SAVE)119は、データ
処理において通常の如く実行される様に(特に周
辺装置の制御において)、切離された動作のパラ
メータを一時的に保存する領域である。 チヤネル制御ブロツク・レジスタ63はページ
ング・パラメータ設定フイールド(SPP)120
を含む。フイールド120は、ページング・パラ
メータ設定指令が受取られたかどうかを示す。ペ
ージング・パラメータ設定指令は、ページング・
モードにおける動作のために、システム記憶装置
30へのアクセスを能動化する。指令チエイニン
グ・フイールド(CC)121は、指令のチエイ
ニングがホスト11によつて設定されたことを示
す。指令チエイニングは、データ処理技術分野で
広く行なわれている如く、1組の指令を結合する
動作である。読出リトライ・フイールド(RR)
122は、システム記憶装置30で読出リトライ
が活動状態であることを示す。例えば、エラー状
態が発生した時、そのエラー状態からの回復は読
出リトライを必要とするかも知れない。指令フイ
ールド(CMD)123は、ホスト11から受取
られた現在又は最後の指令を含む。この指令は、
記憶システム10で現在処理されている。チヤネ
ル・マスク(CNL MASK)124は、どのチヤ
ネル・アダプタ32がフイールド123の内容を
制御機構31へ転送したかを示す。論理アドレ
ス・フイールド(LDADDR)125は、ホスト
11によつて現在選択されている論理装置のアド
レスを含む。ポインタ・フイールド(LDCBP)
126は、現在の論理装置に関連した論理装置制
御ブロツク・レジスタ62を指定するポインタ又
はアドレス値を含む。速度フイールド(SPEED)
127は接続されたチヤネルのデータ速度を示
す。カウント・フイールド(RWR)128は、
リトライが無効にされる前のオーバラン・カウン
トを含む。リトライの閾値は周知であるので、更
に詳述しない。チヤネル制御ブロツク・レジスタ
63は、必要に応じて他の制御ビツト及び制御フ
イールドを含んでよい。 アクチブ・デイレクトリ・エントリ・バツフ
ア・レジスタ76は、記録装置43の1つのエン
トリを含む。従つて、レジスタ76の説明は、記
録装置43をも説明することになる。インデツク
ス・フイールド(INDEX)107は、その時の
記録装置エントリの論理アドレスである。このフ
イールドは、各エントリにおける自己識別データ
を与える。フイールド107は読取パラメータ部
分83の記録装置インデツクス・フイールド11
4に含まれる情報と同じものを含む。フイールド
108は、データを含むDASD16のアドレスを
含む。このデータはキヤツシユ40に転送されて
いるか、又はこれから転送されてよい。CCPフ
イールドは物理装置のシリンダ・アドレスを含
み、CCLフイールドは物理装置の論理シリン
ダ・アドレスを含む。Hフイールドはヘツド・ア
ドレスを含み(即ち、DASD16のどの表面がア
クセスされるべきかを示し)、Dフイールドは装
置アドレスを含み、Rフイールドはレコード番号
を含み、SECTORフイールドはセクタ・アドレ
ス(即ち、回転的位置)を含む。Dフイールドは
装置アドレス113に対応する。上記の説明か
ら、レジスタ62は論理装置の全ての制御情報を
含み、記録装置43及びレジスタ76は、論理装
置とは独立したDASD16の制御情報を含むこと
が分る。即ち、DASD16とシステム記憶装置3
0との間における記憶システム10の動作は、全
ての論理装置について同じである。記憶機構31
は、DASD16への複数アクセスを与えるため、
ホスト11とシステム記録装置30との間に存在
する論理装置の分離状態及び連続状態を発生す
る。レジスタ76のリンク・フイールド
(LINK)109は各ちらしクラスの記録装置4
3のエントリをリンクする。換言すれば、ちらし
回路44は、表45を介して、記録装置43の最
初のエントリにアクセスる。もしこのエントリが
一致しなければ、記録装置43から第2のエント
リをフエツチするために、リンク・フイールド1
09が使用される。この第2のエントリは、同一
のちらしクラスにあり、従つて記録装置43のた
めに、表45の表示によつて指定される。ちらしク
ラスの終りに、リンク・フイールド109はオー
ル・ゼロとなり、これはちらし演算の終り又は記
録装置43におけるエントリの連鎖の終りを示
す。もし表45でオール・ゼロが出てくれば、ミス
が生じたのである。勿論、記録装置43は、各エ
ントリのために他のフイールドを含むことが出来
る。この様なフイールドは、本発明の範囲外に属
する。 システム記憶装置30及びDASD16の間のデ
ータ転送動作は、ホスト11及びDASD16の間
の動作及びホスト11及びシステム記憶装置30
の間の動作に対して非同期的であり、且つ実質的
に独立している。この独立性を達成するために、
1組の読取待ち行列(RQ)及び書込待ち行列
(WQ)が1組の待ち行列レジスタ69に設定さ
れる。待ち行列レジスタ69は、書込待ち行列8
5を含む。書込待ち行列85は、D0〜D4のラ
ベルを有するDASDの各々のために別個の書込待
ち行列を有する。各々の書込待ち行列は、記録装
置43のインデツクス・フイールド107に対応
するインデツクスを含む。更に、この待ち行列
は、DASD16にアクセスするために必要なアド
レスを記憶する。このアドレスは、シーク引数、
検索引数、セクタ、装置書込及び読取マスク、並
びにキヤツシユ40にアクセスするためのアドレ
ス部分を含む。その様なアドレス部分としては、
例えばキヤツシユ・ブロツク・アドレス及びシス
テム記憶装置30をアドレスするためのSSAR
(図示せず)等がある。代理書込ジヨブがもう1
つのメモリ制御装置17に送られるとき、重複書
込が生じない様に、書込待ち行列85を消去する
ことが出来る。しかしながら、非同期的書込が生
じる様にすることが重要である。従つて、代理書
込が他のメモリ制御装置へ出力されたことを、書
込待ち行列85において示すことが望ましい。そ
の様な表示は、各装置に関連する書込待ち行列に
おける単一のビツトPWOによつて示されル。ビ
ツトPWOは、代理書込ジヨブを他のメモリ制御
装置へ送つているメモリ制御装置に、所与の
DASD16への代理書込が開始されたことを示
す。本発明の1実施例においては、代理書込ジヨ
ブは、DASD16のための単一の代理待ち行列8
4中に受取られる。両方のメモリ制御装置からの
書込を混合するために、入力代理書込ビツト
PWIが書込待ち行列85に含まれており、ビツ
トPWIは、メモリ制御装置17が書込待ち行列
85を走査するときに、対応するDASD16に更
に行なわれる書込動作に関して代理待ち行列84
を調べる様に、メモリ制御装置17に指示する。
ID361は、後述するビツト350乃至360
に記憶された信号により表わされる代理作業ジヨ
ブの識別を記憶する。その様なIDは、作業要求
側のメモリ制御装置17のカウンタ即ち代理識別
カウンタ(PIDK)363によつて発生される
PIDK363は、代理要求がもう1つのメモリ制
御装置17へ送られる毎に増分される。その様な
IDは、静的フイールド(SD)364におけるメ
モリ制御装置の識別を含む。WQ85において、
書込待ち行列85の次のエントリを含ませるため
に、リンク・フイールドを設けることが出来る。
又、次の装置書込動作(即ち、キヤツシユ40中
のどのページがDASD16へ次に書込まれるべき
か)を指定するためにも、リンク・フイールドを
設けることができる。従つて、書込待ち行列85
は、所与のDASD16のための1つ又は複数の書
込情報を含むことができる。 更に、待ち行列レジスタ69は、読取待ち行列
を含む。その各々は、ラウンドロビン待ち行列を
構成する部分86及び87を含む。部分86は、
どの論理装置が対応するDASD16からキヤツシ
ユ40へのデータ転送を必要とするかを示す論理
装置制御ブロツク(LDCB)レジスタ62のアド
レスを含む。部分87は、各待ち行列にある3つ
の可能なエントリの1つを指定するポインタを含
む。このエントリは、どの論理装置が次にサービ
スを受けるべきかを示す。例えば、アドレスD0
に対応する部分87は数字2を含む。これは、
LDCB2が次にサービスを受け、それに続いて
LDCB3がサービスを受け、次にLDCB1がサー
ビスを受けることを意味する。アドレスD0は、
関連する全ての論理装置について、完全な読取待
ち行列を有する。アドレスD1は2つのエントリ
を有する。この読取待ち行列においては、LDCB
1及びLDCB3が部分87におけるポインタ番号
3と共に指定され、LDCB3が次にサービスを受
けるべきことを示す。読取待ち行列の部分86,
87にアクセスすることによつて、プロセツサ3
1Pは正しいLDCBレジスタ62へアクセスする
ように能動化される。それは、データがホスト1
1によつて要求されたシーケンスに対して適当な
シーケンスで、DASD16からキヤツシユ40へ
データを転送するためである。代理読取要求をよ
り良好にトラツキングするために、RQ部分86
は、各LDCBエントリに対して、2ビツトの位置
PRO及びPRIを含むことができる。PROは、代
理読取が他のメモリ制御装置17に出力されたこ
とを示し、PRIは、代理読取が他のメモリ制御装
置17からに入力されたことを意味する。代理ビ
ツト97は、PRO及びPRIビツトの両方を含む
ことができる。読取代理ビツトは、WQ85に関
して述べた場合と同一である。 所与の時間に単一の代理作業ジヨブしか実行さ
れることができない実施例における代理待ち行列
84は、代理作業ジヨブが待ち行列に入れられる
1組のレジスタを含む。対応する複数のレジスタ
が多重代理ジヨブ待ち行列を処理することがで
き、各組のレジスタは、同一の情報及びレジスタ
を相互にリンクするためのリンク・フイールド
(図示せず)並びにどの代理ジヨブが初めに行な
われるべきかを示す優先順位標識を含む。第5図
に示されている如く、代理待ち行列84は、代理
デステージが受取られたことを示すビツトPDR
350を含む。“デステージ”は、キヤツシユ4
0から示されたDASD16へデータを転送するた
めの書込動作に対応する。同様に、PSR351
は、代理ステージが受取られたことを示す単一の
ビツトである。“ステージ”は、データがDASD
16からキヤツシユ40へ転送される読取動作に
対応する。レジスタ352はDASD16のアドレ
スを含み、装置の表示DO等並びにシリンダ、ヘ
ツド及びレコード番号の内部アドレス表示
(CCHHR)を含む。また、このアドレスは、ビ
ツト350及び351により表わされるデータ転
送のための適当なキヤツシユ40の領域をアクセ
スするための記録装置43への入力を供給する。
キヤツシユ40におけるデータ記憶スペースの割
振り及び割振り解除は通常の手順に従う。ビツト
353には、ブロツク又はレコード・カウント
(BCOUNT)が記憶される。これは、非同期的
データ転送をより効率的に行なうために、単一の
代理要求が複数のレコードを処理することを可能
にする。ビツト354は、状況照会が行なわれた
こと、即ち作業要求側のメモリ制御装置17が代
理作業を探索するために別のメモリ制御装置17
に照会を行なつたことを示す単一のビツトであ
る。メモリ制御装置17が、他のメモリ制御装置
にQSを送つて、ホスト11から更に作業を受取
ることによつて、代理動作が禁止されることはな
い。PS355は、他の作業移転側のメモリ制御
装置17に代つて、代理ステージが開始されたこ
とを示す。これに対応して、PD356は、代理
デステージが開始されたことを示す。同様に、
CPD358は、PD356により示された代理デ
ステージの完了を示す。PE359は、代理動作
中にエラーが生じたことを示す。その様なエラー
は、他のメモリ制御装置に送られるものとして供
給されることになる。ビツト354乃至359
は、メモリ制御装置17に代理作業ジヨブの状況
を示すメツセージ状況ビツトを構成する。PA3
60は、代理動作のための肯定応答が送られ又は
受取られたことを示す。QS354及びPA360
の両方が1に設定されたときは、代理照会が行な
われ、受取られた代理ジヨブが作業移転側のメモ
リ制御装置17から独立して行なわれる様に、該
メモリ制御装置17がその要求に対して肯定応答
している。第5図に示されているレジスタの他
に、他のレジスタを記憶システム10を構成する
ために使用することができる。 第6図はプログラム50Pとそのチヤネル・ア
ダプタ32に対する接続を示すが、これらは、制
御機構31の該当する部分に関して、本発明がど
のように実施されるかを示す。本発明に直接の関
係を有しない他の指令及び機能もプログラム50
Pで実行されることを理解されたい。ホスト11
からの指令は、入出力接続12〜15を介してチ
ヤネル・アダプタ32へ供給される。チヤネル・
アダプタ32は、通常の指令の前処理を行なう。
それは、指令コード及び論理装置コードをレジス
タ130へ供給することを含む。バス131は、
レジスタ130にあるアドレスの1部を搬送する
が、それは第3図に関して説明した如く制御装置
CUを識別する。バス132は、DASD16のア
ドレスを搬送する。これは、アドレス構造20
(第3図)のDEVに対応する。バス133は、ア
ドレス構造20のAC部分を搬送するが、AC部分
は、アドレスされたDASD16への直接アクセス
が行なわれるべきか、又は論理装置のいずれが現
在アドレスされつつあるかを識別する。バス13
4は、受取らけた指令のコードを制御機構31へ
搬送する。更に、チヤネル・アダプタ32は、プ
ログラム50Pを活動化するために、プロセツサ
31Pへ割込信号を供給する。プロセツサ31P
は、チヤネル・アダプタ32からの割込信号によ
つて活動化されると、受取られた指令を処理する
準備として、ステツプ135において、本発明と
直接の関連を有しない機能を実行する。ステツプ
136において、アドレス部分ACが分析され、
DASD16への直接アクセスが望まれているの
か、又は装置へのアクセスがキヤツシユ40を介
して行なわれるのかが決定される。直接モードの
アクセスは、プログラム56Pへの論理経路13
7を経てプロセツサ31Pによつて行なわれる。
プログラム56Pが活動化されたとき、アドレス
されたDASD16が使用中になつてキヤツシユ4
0に関しデータ信号を転送するために使用できな
いかどうか調べられる。ステツプ136において
直接モードが示されないとき、ページング・モー
ド(即ち、キヤツシユ40を介して、DASD16
のデータへアクセスする動作モード)が示され
る。論理ステツプ140において、プロセツサ3
1Pにある内部レジスタのページ・ビツトが、活
動状態にセツトされる。このビツトは、プログラ
ム50Pがページング・モードで指令を処理して
いることを記憶するために、プログラム50Pに
よつてのみ使用される。プログラム50Pの動作
が完了すると、ページ・ビツトはリセツトされ
る。このため、内部レジスタのビツト位置は示さ
れていない。ステツプ140に続いて、本発明と
直接の関連を有しないステツプが141において実
行される。ステツプ142において、受取られた
指令がアドレスされた論理装置に対する感知指令
であるかどうか(ホスト11は記憶システム10
から感知情報又は状況情報を要求したかどうか)
が決定される。感知指令の場合、論理経路143
を経て、ステツプ144においてページ・ビツト
が0にリセツトされる。即ち、状況情報がホスト
11に供給され、それ以上のページング機能は実
行されない。 非感知型の指令であれば、論理ステツプ145
が実行される。ステツプ145の準備動作とし
て、エラー・チエツク状態が存在するかどうかが
調べられ、また本発明の実施に必要でない他の内
部ハウスキーピング機能(例えば、アドレス設
定)が実行される。次いで、ステツプ145におい
て、プログラム50Pは、ページング・パラメー
タ設定指令(SPP)を検出する。この指令が検出
されると、論理経路146を経て、第9図に設定
されたステツプへ行く。そうでなければ、本発明
と直接の関連を有しない機能がステツプ147に
おいて実行され、次いでステツプ148におい
て、NO−OP(ノー・ポペレーシヨン)が検出さ
れたかどうかが決定される。NO−OPが検出さ
れると、論理経路149を経て、本発明と無関係
の機能が実行される。NO−OPが検出されない
と、ステツプ138において、ページング・ビツ
トがゼロにリセツトされ、次いでステツプ139
において、本発明と無関係の機能が実行される。
次いで、第7図に示されている如く、プログラム
61Pが活動化される。 第7図は、本発明の理解に必要なプログラム5
6Pの論理ステツプを示す。プログラム56Pの
活動化は、プログラム50P又は61Pによつて
行なわれる。DASD16への直接アクセスについ
ては、プログラム50Pが55(第3図参照)で
入ると、ステツプ150において、アドレスされ
たDASD16が選択される。また、直接アクセ
ス・モードがステツプ150に続くことを示すた
め、フリツプ・フロツプ153(プロセツサ31
Pの内部にある)がセツトされる。ステツプ15
1においては、アドレスされた装置が、指令を受
取つたチヤネル・アダプタではない他のチヤネ
ル・アダプタ32へ予約されているかどうかを、
プロセツサ31Pが決定する。もし予約されてい
れば、論理経路152はプロセツサ32Pを通常
の予約侵害コードへ導く。これは、要求中のチヤ
ネル・アダプタ32へ、使用状況を表示する。も
し装置が他のチヤネル・アダプタへ予約されてい
なければ、装置の選択はプログラム56Pにおい
て継続される。 プログラム56Pを介して要求されたDASD1
6へのアクセスは、論理経路66を介してプログ
ラム61Pからも生じる。そのような要求は、フ
リツプ・フロツプ153を設定し、ページング・
アクセスが行なわれていることを示す。プログラ
ム61Pからの要求は、予約評価ステツプ151
の後に論理経路66を経て与えられるので、装置
の予約は、DASD16へのページング・アクセス
に何の影響も及ぼさない。ステツプ151又は経
路66のいずれからであつても、論理ステツプ
154は、ホスト11又はプログラム61Pのいず
れかによつてアドレスされたDASD16が使用中
であるかどうか(即ち、現在データ処理機能を実
行しているのか、又はトラツクの回転方向の探索
の如く独立した機能を実行しているのか)を調べ
る。もし装置が使用中でなければ、ステツプ15
5において装置使用中フリツプ・フロツプ(図示
せず)が活動状態にセツトされる。この様なフリ
ツプ・フロツプは、装置が使用中であるかどうか
を調べるため、チヤネル・アダプタ32又はプロ
セツサ31Pによつて感知されることができる。
ステツプ156において、アドレスされたDASD
16の選択が完了して、データ転送が可能にな
る。ステツプ157において、動作が実行され
る。即ち、制御装置からアドレスされたDASDへ
の指令がシリンダのシークであれば、ステツプ1
57において、シリンダ・シーク指令が、目標の
シリンダ・アドレスと共に、アドレスされた
DASD16へ転送され、読取指令については、
DASD16からホスト11へバス70(第4図)
を介して、又はキヤツシユ40へバス42を介し
て、データ信号が読取られる。 他方、アドレスされたDASDが使用中であれ
ば、ステツプ160において、装置使用中信号が
要求を出したチヤネル・アダプタ32又はプログ
ラム61Pへ転送される。装置を動作させるため
の制御データを含む装置制御ブロツクDCB(図示
せず)は、ステツプ161において、装置終了フ
ラグ(ODE)が1にセツトされる。プログラム
61Pの場合、DASD16への試みられたアクセ
スは、レジスタ62(第5図)の装置フイールド
90を活動状態にセツトする。ステツプ162に
おいて、プロセツサ31Pは、実行されたばかり
の動作が直接アクセスのためであるかページン
グ・アクセスのためであるかを決定する。フリツ
プ・フロツプ153は線163を介してこの表示
信号を供給する。即ち、フリツプ・フロツプ15
3が「61」状態にあるとき、プログラム61Pへ
の論理経路68がとられ、「50」状態の直接アク
セス・モードにあるとき、プログラム50Pへ戻
つて、状況が報告されるとともに、チヤネル・ア
ダプタ32の終了動作がとられる。このような状
況報告動作及び終了動作は、コンピユータに関し
て通常実行される動作であるので、更に詳述しな
い。 第8図は、システム10の動作の全体的論理フ
ローを示す。ステツプ170において、後に第9
図を参照して説明する如く、プログラム50Pか
らページング・モードがセツトされる。本発明と
無関係の機能がステツプ171において実行さ
れ、セツトされたページング・モードの完了が、
プログラム50Pを介してステツプ172におい
て報告される。次いで、ホスト11は他の指令を
送り、この指令はステツプ173においてデコー
ドされる。指令の実行はステツプ174において
開始される。記録装置43の探索はステツプ17
5において成される。それは、キヤツシユ40中
の記憶スペースが、要求されたページング・ブロ
ツクへ正しく割振られたかどうかを調べるためで
ある。ステツプ176においてヒツトが検出され
ると、データ転送(ホスト11への読取、又はホ
スト11からの書込)がステツプ177において
実行される。次いで、データ転送のためにアドレ
スされたキヤツシユ40の領域が、LRUリスト
更新ステツプ178において、最近時に使用され
たものとして示される。次いで、プロセツサ31
Pは、指令の完了を報告するために、プログラム
50Pへ戻る。受取られた読取指令により生じた
キヤツシユのミスについては、ステツプ180に
おいて、読取要求が成され、ステツプ181にお
いて、チヤネル指令リトライ信号がプログラム5
0Pを介してホスト11へ送られる。書込指令に
ついては、キヤツシユ40のセグメントが割振ら
れ、次いで論理経路182がとられてステツプ1
77のデータ転送が実行される。注意すべきは、
キヤツシユへの書込みは、キヤツシユ40中にス
ペースを割振るために必要な僅かな時間を除い
て、指令の実行を遅らせないことである。ステツ
プ173〜180は、指令の各連鎖の間、数回実
行されることができるが、ページング・モードは
指令の連鎖当り1回だけセツトされることを理解
されたい。 DASD16からの非同期的データ転送は、プセ
ツサ31Pによつて活動化されることを要する。
プロセツサ31Pは周知の作業探索走査(アイド
ル走査)を実行する。論理経路183がとられる
と、待ち行列レジスタ69がステツプ184にお
いて検査される。待ち行列レジスタ69により、
データ転送を実行すべきことが示されると、その
ジヨブが送られる。ステツプ185においてキヤ
ツシユ・スペースが割振られ、ステツプ186に
おいて内部指令ワードの連鎖が形成される。内部
指令ワードは、チヤネル・アダプタ32を介して
ホスト11から受取られたCCWと同じである。
こうして、キヤツシユ40とDASD16との間の
非同期データ転送の動作は、プログラム56Pを
介して実行される。これは、非同期動作が直接ア
クセス動作と同じレベルであることを意味する。
即ち、非同期的動作は、ホスト11からの直接ア
クセス要求に優先順位を与えるのではなく、同一
の優先順位を有することを意味する。DASD16
からキヤツシユ40へデータを自動的に転送する
ために、処理はステツプ187においてプログラ
ム56Pへ戻される。その転送が終ると、ステツ
プ188において、プロセツサ31Pは、デイレ
クトリ43等を更新するために、ハウスキーピン
グ機能を実行する。ステツプ189において、作
業は待ち行列69からはずされる。読取動作につ
いては、装置終了信号がプログラム50Pを介し
てホスト11へ送られる。ホスト11からのペー
ジング・パラメータ設定指令は、記憶システム1
0へ、後続する指令の連鎖において、3つの論理
アドレスの1つを介してDASD16をアクセスす
るためにキヤツシユ40を用いるデータ転送が行
なわれることを知らせる。 第9図に示されている如く、ページング・パラ
メータ設定論理ステツプの活動化は、論理経路1
46を介して行なわれる。ステツプ190におい
て、チヤネル制御ブロツク(CCB)レジスタ6
3がアクセスされ、ページング・パラメータ設定
(SPP)フイールド120が1にセツトされ、指
令連鎖(CC)フイールド121が0にセツトさ
れ、読取リトライ(RR)フイールドが0にセツ
トされる。これは、ページング・パラメータ設定
指令の実行のために、レジスタ63を初期設定す
る。次に、ステツプ191において、レジスタ6
3が再びアクセスされ、指令(CMD)フイール
ド123がSPPを表わすコードと同じに設定され
る。ステツプ192において、レジスタ63が再
びアクセスされ、チヤネル・マスクが第5図のレ
ジスタ124へ転送される。次に、ステツプ19
3において、論理装置制御ブロツク・レジスタ6
2のポインタが発生され、レジスタ63のポイン
タ・・フイールド126へ転送される。レジスタ
62のポインタは、レジスタ62のベース・アド
レスを論理装置アドレスで修正したものである。
次に、ステツプ193において発生されたポイン
タに対応するレジスタ62において、論理ステツ
プ194は、スタート入出力(SIO)ホスト選択
信号が受取られたことを示し(これは基本部分8
0に示されていない)、装置(ODE)フイールド
90がゼロにリセツトされ、チヤネル指令リトラ
イ(CCR)フイールドがゼロにリセツトされ、
シーケンス(SEQ)フイールド94がページン
グ・パラメータ設定指令から受取られた値にセツ
トされる。この値は、シーケンシヤル動作が実行
されるべきか否かを示す。同様に、ページング・
パラメータ設定指令によつて選択されたページン
グ・パラメータである「読取放棄」ビツトが、ペ
ージング・パラメータ部分81の読取(RO)フ
イールド101に挿入される。ステツプ195に
おいては本発明と無関係の論理ステツプがプロセ
ツサ31Pによつて実行される。次に、ステツプ
196において、レジスタ62が論理アドレスに
おいて検査され、シーケンス(SEQ)フイール
ド94が活動状態にセツトされているかどうかが
決定される。もしセツトされていなければ、プロ
グラム50Pへの戻りが生じ、ページング・パラ
メータ設定指令が実行されたことを示す。シーケ
ンシヤル・モードについては、ステツプ197に
おいて、ブロツク・カウントがページング・パラ
メータ部分81のカウント・フイールド102に
セツトされる。シーケンス・フイールド94が活
動状態であるとき、ページング・パラメータ設定
指令は修飾バイトを有し、このバイトは、指令の
現在の連鎖中で転送されるべきブロツクの数を示
す。ステツプ198において、ブロツク・カウン
トが検査される。もしそれがゼロであれば、エラ
ーが生じている。即ち、ホスト11がゼロ・ブロ
ツクの転送を示すのは正しくない。もしブロツ
ク・カウントがゼロでなければ、プログラム50
Pへの戻りが生じ、ページング・パラメータ設定
指令が成功裡に完了したことが報告される。 単にプログラム50Pが指令をデコードできる
だけでなく、プログラム61Pもページング動作
に関連する指令をデコードできなければならな
い。第10図は、そのようなデコーデイングに関
連した論理モジユールを示す。ページング・モー
ド論理アドレスの連鎖された再選択の間に、プロ
グラム50Pからのエントリがなされ、プログラ
ム61Pはレジスタ130(第6図)にある指令
をデコードし、適当な動作を開始する。エラー状
態も報告される。いくつかの内部レジスタ(IR)
がこのプログラム61Pの実行中に使用される。
これらの内部レジスタは、図を簡略にするために
図示されていない。マイクロコードにおける内部
レジスタの使用及び他の型のプロセツサ31Pの
機能は、周知である。レジスタ130(第6図)
にある指令と関連して、論理装置アドレスが与え
られる。処理速度を高めるために、レジスタ62
の選択された部分がプロセツサ31Pの内部レジ
スタ(図示せず)へ転送される。次に、ステツプ
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のSIOフ
ラグ(図示せず)がゼロにリセツトされる。即
ち、現在、指令の実行へ進んでおり、SIOはもは
や新しいものとは考えられない。ステツプ206
においては、レジスタ62の基本部分80にある
フイールド95が検査される。もしそれがゼロを
含めば、ステツプ207において本発明と無関係
のステツプが実行され、次にステツプ208にお
いて、レジスタ130に受取られ、且つ201で
内部レジスタに記憶された指令が、レジスタ62
のフイールド93に記憶される。フイールド10
0,101等にあるフラグがプロセツサ31Pの
内部レジスタ(図示せず)へ転送される。次い
で、ステツプ209において受取られた指令を実
行するためのコードが活動化される。指令が完了
した後、マイクロコードはプロセツサ31Pをプ
ログラム50Pへ戻す。指令としては、セクタ設
定、シリンダ・シーク、読取、書込等がある。そ
のような指令のコードは既知である。 もし206において、チヤネル指令リトライ
(CCR)が示されると、ステツプ212において
プロセツサ31Pは、チヤネル・アダプタ32か
ら受取られた指令が、レジスタ62のフイールド
93に記憶された指令に対応するかどうかを調べ
る。もしそれらが等しければ、ステツプ214に
おいてフイールド95がゼロにリセツトされる。
次いで、ステツプ208及び209が実行され
る。もし指令が正しくなければ、ステツプ213
においてエラー状態が示され、直ちにプログラム
50Pへの戻りが生じ、ホスト11にエラー状況
が報告される。 ステツプ209において活動化される如き指令
の実行において、先ずなされるべきことは、要求
されたページング・ブロツクに対応して、キヤツ
シユ40に割振られたスペースを求めて、デイレ
クトリ43を検索することである。第11図は、
論理装置アドレスを有するデータ読取及びデータ
書込の指令のための制御を実行する論理ステツプ
を示す。先ず、記録装置43が探索される。もし
要求されたページング・ブロツクがキヤツシユ4
0になければ、ミスが生じる。次いで、第13図
に示されている如く、或る機能が実行される。他
方、要求されたページング・ブロツクがキヤツシ
ユ40にあることが識別されれば、キヤツシユの
ヒツトが生じ、データの転送が行なわれる。読取
指令又は書込指令の実行は継続する。詳細に説明
すると、ステツプ221において、本発明と無関
連の論理ステツプがエラー状況に関して実行され
る。例えば、受取られた指令が読取指令又は書込
指令でなければ、記録装置の探索は適当でなく、
エラー状態が示されねばならない。ステツプ22
2において、装置アドレスD、シリンダ・アドレ
スC、ヘツド・アドレスH、及びレコードRから
ブロツク識別情報が形成される。本実施例では、
トラツクごとに4つのレコードが存在する。従つ
てレコード番号は4つの値の1つである。ブロツ
ク識別情報の形成は、単にアドレスを取出しそれ
を2バイトの内部レジスタに置くことである。ス
テツプ223において、ちらし回路44が実行さ
れる。ちらし回路の動作がどの様なものであれ、
その様な動作は、テーブル45に対してアドレス
変位に対応するアドレス信号を発生する。テーブ
ル45は記録装置43のインデツクスを含む。次
に、ステツプ224において、そのポインタがテ
ーブル45からフエツチされる。次に、ループ2
05において、記録装置43がちらしクラス内で
走査される。テーブル45がステツプ224にお
いて読取られたとき、ちらしクラスの最初のエン
トリを構成する記録装置43からのエントリがシ
ステム記憶装置30からプロセツサ31Pの内部
レジスタ(図示せず)へ読取られる。これは、割
込みが生じたとき、システム記憶装置30を他の
動作へ解放する。いずれにせよ、記録装置の探索
は、ステツプ227において、レジスタ76を、
アドレスされた記録装置エントリに等しくするこ
とを含む。この動作は、記録装置43の適当なエ
ントリを読取つてそのエントリをレジスタ76へ
転送することを含む。ステツプ228において、
本発明と無関連の論理ステツプが実行される。ス
テツプ229において、ブロツク識別情報の内要
が、レジスタ76に含まれるフイールド108と
比較される。もし2つの値が等しければ、ヒツト
が生じ、論理経路230がとられる。もし2つの
値が等しくなければ、デイレクトリ43の探索が
実行される。ステツプ231において、リンク・
フイールド109の内要が適当な内部レジスタ
(図示せず)へ送られる。ステツプ226におい
ては、リンク・フイールドが調べられて、ちらし
連鎖の終り(EOC)かどうかが調べられる。も
しエントリがハツシユ・リンク・チエインの最後
のエントリであれば、キヤツシユのミスが生じて
おり、キヤツシユのミスを表わすリターン・コー
ドRCがステツプ233においてセツトされる。
他方、走査は、連続して記録装置のエントリをレ
ジスタ76へ転送することによつて、キヤツシユ
のヒツトを探索しつつ、ステツプ227及び22
9を反復しながら継続する。 ステツプ229において、キヤツシユのヒツト
が生じると、240において、プロセツサ31P
は、レジスタ76のフイールド108のCCLを
シリンダ値Cと比較する。もし所望のレコードに
対応するレコードがキヤツシユ40になければ、
ステツプ241において、リターン・コードRC
が「レコード無し」のコードにセツトされる。ス
テツプ240における比較で一致が生じれば、ス
テツプ242において、レコードの発見又はヒツ
トが示され、ステツプ243において、内部レジ
スタ(図示せず)がレジスタ76(第5図)のイ
ンデツクス・フイールド107と等しくセツトさ
れる。ステツプ250において、本発明と無関係
の機能を実行するために、論理経路234がとら
れる。次いで、ステツプ251において、キヤツ
シユのミスが示されたかどうかが検査される。キ
ヤツシユのミスが示されなかつた場合(ヒツトの
場合)、ステツプ254において、レコードが発
見されたかどうかが検査される。即ち、ステツプ
241における「レコード無し」のリターン・コ
ード、又はステツプ242における「レコード発
見」のリターン・コードが調べられる。「レコー
ド無し」の場合、ステツプ255において、エラ
ーが示され、プロセツサ31Pはプログラム50
Pへ戻つて、エラー状態が報告される。レコード
が発見された場合、読取指令が実行され、データ
がキヤツシユ40からホスト11へ(又はその逆
方向に)転送される。これについては、後に第1
2図を参照して説明する。他方、ステツプ251
におけるキヤツシユのミスの場合、ステツプ25
2において、プロセツサ31Pはアドレスされた
論理装置を求めてレジスタ62をアクセスし、基
本部分80にあるミス・フイールド96を1にセ
ツトする。次いで、ステツプ253において、プ
ロセツサ31Pは指令実行のためにキヤツシユ4
0を準備する様に進行する。これについては、後
に第13図を参照して説明する。 キヤツシユ40のヒツトの場合、読取指令であ
れ、書込指令であれ、第12図の論理ステツプは
論理経路256をとり、ステツプ260におい
て、本発明と無関係のエラー検出論理ステツプを
実行する。ステツプ261において、読取モード
又は書込モードが検査される。モードのチエツク
は、レジスタ62の基本部分80にある指令フイ
ールド93に記憶された指令コードを検査するこ
とによつて行なわれる。読取指令の場合、論理経
路262がとられ、書込指令の場合、論理経路2
63がとられる。 読取指令のヒツトの場合、データはキヤツシユ
40からホスト11へ転送される。ステツプ27
0において、データをホスト11へ中継するため
に、データをキヤツシユ40からバス41(第3
図)を介してチヤネル・アダプタ32へ転送する
ことによつて、データ転送が実際に生じる。その
データ転送が完了すると(この動作は、データ処
理技術分野において広く実施されている既知の自
動的データ転送回路(図示せず)によつて達成さ
れる)、記憶システム10の制御は、現在の指令
を処理するために戻される。ここで理解すべき
は、キヤツシユ・ミスを処理している間の制御機
能は、チヤネル・アダプタ32のデータ転送機能
とインタリーブされてよいことである。いずれに
せよ、ステツプ271において、プロセツサ31
Pはレジスタ62の読取フイールド101を検査
する。もしフイールド101がゼロに等しけれ
ば、読取の後の放棄は生じない。ステツプ272
において、ブロツク識別情報は、最近時に使用さ
れた(MRU)キヤツシユ・セグメントとして、
LRUリスト中にセツトされる。LRUリストは周
知であるので、更に詳述しない。プロセツサ31
Pは、ステツプ272から、詳述するステツプ2
77に進む。ステツプ271におして、もしフイ
ールド101が1に等しければ、ステツプ273
において、プロセツサ31Pはレジスタ76のフ
イールド269を調べる。それは、キヤツシユ4
0中の指定されたページング・ブロツクがDASD
16中のデータのコピーから変更されたがどうか
を決定するためである。フイールド269は、所
与のレコードについて、書込指令がキヤツシユ4
0に対して実行されたときにセツトされる。もし
キヤツシユ40に記憶されたページング・ブロツ
クに変更が生じていないことが、記録装置によつ
て示されると、ステツプ274において、ページ
ング・ブロツクを記憶するキヤツシユ40の領域
が解放され、レジスタ76の内容及び記録装置4
3中の対応するエントリが消去される。この動作
は、キヤツシユ40からページング・ブロツクを
効果的に消去する。論理経路275で示される様
に、或る種のエラー状態が検査される。ステツプ
276において、プロセツサ31Pは本発明と無
関係の論理ステツプを実行し続ける。 変更されたデータ・ブロツクを記憶するキヤツ
シユ40の部分が解放される前に、そのページン
グ・ブロツクはキヤツシユ40から対応する
DASD16へ移動されねばならない。本発明の一
実施例において、そのような変更されたページン
グ・ブロツクは、指令連鎖中の最後の指令の直後
であつて、その連鎖が完了される前にDASD16
へ転送される。本発明と無関係のステツプ276
には、バツフアからバツキング記憶装置へデータ
を直接にデステージするために使用される制御ブ
ロツク(図示せず)へ、DASD16へ転送される
ことに備えて、ページング・ブロツクをリストす
ることが含まれる。そのような機構は周知であ
り、詳細に説明しない。次いで、ステツプ277
において、プロセツサ31Pは、シーケンシヤ
ル・データが処理されているかどうかを調べるた
めに、レジスタ62のシーケンス・フイールド9
4を検査する。もし順次的データが処理されてい
なければ、ページング・データの1ブロツクのみ
がホストへ送られ、指令の完了がプログラム50
Pによつて報告される。もし順次的データが処理
されていれば、プロセツサ31Pは、ステツプ2
78において、ページング・パラメータ部分81
(第5図)のカウント・フイールド102に示さ
れたブロツク・カウントを検査する。もしブロツ
ク・カウントがゼロでなければ、ステツプ279
において、ブロツク・カウントから1が減算さ
れ、指令の完了がプログラム50Pを介してホス
ト11に報告される。もしブロツク・カウントが
ゼロであれば、ステツプ279において、順次的
データの全てはホスト11へ転送されており、指
令の完了が直ちにプロセツサ50Pを介してホス
ト11に示される。 書込指令については、プロセツサ31Pは論理
経路263から入り、先ずステツプ289におい
て、本発明と無関係の機能を実行する。その様な
無関係の機能は、ホスト11から適当なチヤネ
ル・アダプタ32及びバス41を介して、キヤツ
シユ40へデータを転送するために、自動的デー
タ転送回路(図示せず)を設定することを含む。
データ転送は、ステツプ290において生じる。
データ転送の間、プロセツサ31Pは、制御機能
領域で、他のチヤネル・アダプタ32と動作を継
続することができる。同時に、データ信号を転送
するために、DASD16への直接アクセスが生じ
る。即ち、チヤネル・アダプタCAAが入出力接
続12を介してキヤツシユ40とホスト11との
間で信号を転送している間、チヤネル・アダプタ
CADは、入出力接続15を介してホスト11と
DASD16との間でデータ信号を転送することが
できる。その様な重複動作は、記憶システム10
の効率を高める。データ転送に続いて、プロセツ
サ31Pは、ステツプ291において、エラーに
関連した機能を実行する。次にステツプ292に
おいて、転送されたデータ信号のブロツク識別情
報が能動状態であるかどうかがテストされる。も
し能動状態であれば、これは、ブロツクがキヤツ
シユへ監禁されない(即ち、置換されたよい)こ
とを意味する。その場合、ステツプ293におい
て、変更フイールド269が1にセツトされ、ス
テツプ294において、ブロツク識別情報が
LRUリスト(図示せず)中で最近時に使用され
たもの(MRU)として示さる。次に、ステツプ
295において、本発明と無関係の機能が実行さ
れる。最後に、書込指令について状況を報告する
ために、プロセツサ31Pの制御はプログラム5
0Pへ戻る。 第11図においてキヤツシユ・ミスの場合、プ
ロセツサ31Pは第13図のステツプへの論理経
路253をとる。ステツプ300において、プロ
セツサ31Pは、指令が読取指令か書込指令かを
検査する。読取指令の場合、後に第14図を参照
して説明され又第5図に示されている如く、ステ
ツプ301において、読取要求が待ち行列に入れ
られる。次に、ステツプ302において、本発明
と無関連の機能が実行され、且つチヤネル指令リ
トライ信号がプログラム50Pを通してホスト1
1へ送られる。チヤネル指令リトライ信号は、装
置終了信号が記憶システム10によつて送られた
後に、ホスト11へ指令の再転送を求めるもので
ある。装置終了信号は、データが今やキヤツシユ
40にあることを示す。 ステツプ300における書込指令については、
プロセツサ31Pは、キヤツシユ・ブロツクを割
振るために、ステツプ303へ行く。エラー状態
は、論理経路304を介して報告されるエラーで
見出される。ステツプ305において、第5図の
レジスタ76で示されるフオーマツトを使用し
て、新しいエントリが記録装置43へ加えられ
る。次に、ステツプ306において、実際のデー
タ転送が生じ、ホスト11からの信号がチヤネ
ル・アダプタ32およびバス41を介して、キヤ
ツシユ40へ転送される。次に、ステツプ307
において、第12図のステツプ291〜295が
実行される。 読取待ち行列は、第14図に示されている如
く、形成される。第14図において、プロセツサ
31Pは、内部レジスタの内容を論理アドレス・
フイールド125の内容と等しくセツトするため
に、ステツプ310において、チヤネル制御ブロ
ツク・レジスタ63をアクセスする。ステツプ3
11において、フイールド125の内容はAC部
分を削除することによつて、物理装置アドレスへ
変換される。ステツプ312において、装置に対
応する読取待ち行列が1に等しくセツトされる。
即ち、論理装置に対応する第5図の部分86が1
にセツトされる。次いで、この単一ビツトは論理
装置制御ブロツク・レジスタ62のアドレスに変
換される。何故ならば、論理装置制御ブロツクの
ベース・アドレスは、論理アドレスであるオフセ
ツト値によつて知られるからである。レジスタ6
2にあるその部分の位置は論理アドレスであるか
ら、論理装置制御ブロツクのオフセツト値も知ら
れる。次いで、ステツプ314において、プロセ
ツサ31Pは、第5図の部分87がゼロであるか
どうか(即ち、読取待ち行列があるかどうか)を
決定する。もし部分87が空であれば、ステツプ
320において、読取待ち行列に対するポインタ
が論理装置(即ち、どの論理装置がフイールド1
25にあるかどうかに従つて、1,2又は3)に
セツトされる。ステツプ321において、レジス
タ62がアクセスされ、読取リトライ・フイール
ド122及びカウント・フイールド128が1に
セツトされる。もし部分86に読取待ち行列のエ
ントリがあれば(即ち、読取待ち行列が既に挿入
されていれば)、ステツプ315において、待ち
行列ポインタが1だけインデツクスされる。ステ
ツプ316において、待ち行列ポインタが再び検
査される。もしポインタが3より少なければ、プ
ロセツサ31Pは、論理経路318をとり、部分
86中の次の位置が空であるかどうかを再検査す
る。もしそれが空でなければ、サイクルが反復さ
れる。その反復は、空の待ち行列位置が発見され
るか、又はステツプ317において、エラー状態
が示されるまで継続する。このエラー状態は、読
取待ち行列が一杯であるとき(即ち、ポインタが
3に等しいとき)、待ち行列読取要求が与えられ
たことを示す。 第15図は、負荷の平衡化を達成しそしてデー
タ記憶階層10の性能を改善するために、代理作
業を移転及び受取るための両メモリ制御装置17
における論理フローを示している。論理は両メモ
リ制御装置において同一であるので、2つのメモ
リ制御装置における対応する論理部分が同一番号
で示されている。メモリ制御装置17Aは作業要
求側のメモリ制御装置であり、メモリ制御装置1
7Bは代理作業要求に応答する、作業移転側のメ
モリ制御装置である。メモリ制御装置17A及び
17Bの間で交換されるメツセージの形式が3種
類示されているが、特に状況を要求するために、
即ち作業トランスフア側のメモリ制御装置17A
が作業要求側のメモリ制御装置17Aにより実行
されている代理作業の状況を要求したい場合のた
めに、更に他のメツセージが用いられることを理
解されたい。 初めに、代理に関連する機械動作を統括するた
めに、メツセージ構成について述べる。各代理動
作は、代理識別ID385を含む代理要求メツセ
ージにより開始され、その様な識別は好ましく
は、どのメモリ制御装置17がその初めの要求及
びその要求の通し番号を送つたかを含む。この様
にして、各々のメモリ制御装置17における最も
高い通し番号を単に比較することによつて、どの
様に良好に作業がメモリ制御装置間で平衡化され
ているかを評価するために、ホスト11は周期的
にメモリ制御装置に照会を行うことができる。キ
ヤツシユ40の状況(自由空間の量が最小)のた
めに、作業要求側のメモリ制御装置17Aは、
PWビツト386を1にセツトすることにより、
代理書込が優先されることを示してもよい。同様
に、RRビツト387を1にセツトすることによ
り、代理読取動作が優先されることを示してもよ
い(キヤツシユ40は、最大の自由なスペースを
有する)。PAビツト388は、如何なる形の代理
動作でもよい(キヤツシユ40の自由なスペース
が所定の平均値である)ことを意味する。状況要
求ビツトSR389は、応答側の記憶デイレクタ
17Bが作業要求側の記憶デイレクタ17Aに
ID385に関連する代理作業の状況を要求する
ために用いられる。状況の報告は周知であるの
で、状況の要求及び供給については詳述しない。 応答側のメモリ制御装置17Bにより要求側の
メモリ制御装置17Aに供給される代理応答メツ
セージはID375を含み、ID375は、要求側
のメモリ制御装置が応答を要求に結びつけること
ができる様に、ID385に等しいコードを有し
ている。PSV376は、応答側即ち作業転移側
のメモリ制御装置17Bの状態ベクトルを意味す
る1組のビツトを含む。これは、何ら代理作業が
行われないこと等を含む。フラツグ(FLG)3
77は、代理作業が実行されるべきホスト11の
処理の識別、代理作業の優先順位状況等の如き、
雑多な情報ビツトを含む。代理フラツグ(FLG)
378は、代理応答の性質、即ち読取、書込等を
示す。代理ステージ・パラメータ(PARMS)3
79は、読取動作のための代理待ち行列84のフ
イールド352及び353に含まれている情報を
含み、代理ステージ・パラメータ(PARMS)3
80は、デステージ代理のための同一の情報を含
む。代理動作状況381は、代理動作の現在の状
況を示すための代理要求メツセージ中の状況要求
に応答して用いられる。状況の報告については詳
述していないので、そのフイールドについても更
に詳述しない。参照番号382は、代理応答メツ
セージに更にフイールドが加えられ得ることを示
す。代理状況メツセージは、要求側のメモリ制御
装置17Aによる代理動作の完了時に供給され
る。その状況メツセージは、代理要求メツセージ
及び代理応答メツセージと同じコードを有する識
別(ID)390を含む。戻りコード(RC)39
1は、エラーのない代理動作が生じたか否かを示
す。エラーが生じた場合には、RC391がゼロ
でなく、参照番号392により示されている如
く、更にエラー・パラメータが供給される。更
に、代理読取動作については、ホスト11のため
の終了状況が代理状況メツセージ内に供給され
る。その様な終了状況は、ホスト11のアーキテ
クチヤに依存し、その理由で省かれ得る。 第15図に示されている機械動作の順序は、プ
ロセツサ31Pのいわゆるアイドル・ループで開
始される。ステツプ400において、アイドル・
ループは割当て作業機能を探索する。データ転
送、指令実行、チヤネル指令リトライ・チエツク
等を含む、その様な作業機能は周知であるので、
更に詳述しない。割当て作業機能のアイドル走査
は、行われるべき割当て作業を何ら見出さない場
合がある。それから、要求側のメモリ制御装置1
7Aは、ステツプ402への論理経路401をと
る。ステツプ402において、要求側のメモリ制
御装置17Aは、待ち行列69を調べることによ
り、その非同期的作業レベルを調べる。待ち行列
69が比較的高い作業レベルを示した場合には、
論理経路408を介して割当て作業機能400に
戻り、待ち行列69を走査して、該待ち行列中に
示されている作業を実行する。1例において、読
取待ち行列RQは2つの閾値404及び405を
有する閾値404は、未処理又は現在のホスト1
1の要求に直接関連していない読取を行うための
低い方の閾値である。閾値405は、要求側のメ
モリ制御装置17Aにより行われねばならない余
分な数の読取を示す。読取待ち行列がその長さを
有する場合には、代理作業を要求することはでき
ない。1実施例においては、閾値404は未処理
でない読取要求に等しい。同様に、WQは閾値4
06を有する。閾値406は、DASD16をより
効率的にアクセスするために書込条件がバツチ化
又はグループ化される様に選択されることができ
る。いずれにしても、待ち行列69のRQ及び
WQの内容が、1対の線407により示されてい
る如く、作業レベルの評価において考慮される。
RQおよびWQが比較的低い作業レベルを有して
いる場合には(好実施例においては、ゼロのレベ
ルが用いられる)、代理作業要求が作業移転側即
ち応答側のメモリ制御装置17Bに移転される。
初めに、タイム・アウト410(2秒間の如き)
がセツトされ、その間の応答側のメモリ制御装置
17Bは即時代理作業要求に応答することができ
る。ステツプ411における代理要求メツセージ
の形式化において、PIDK363(第5図)が初
めに増分され、それからフイールド363及び3
64の内容がID385として形成されて、代理
待ち行列84のID361中に記憶される。ステ
ツプ411において形式化されている要求は、キ
ヤツシユ40において用いられる割振り可能な自
由なスペースを示す入力をLRU(図示せず)41
2から受取る。LRUリストの知られている技術
を用いたLRUにより示されている如く、割振り
可能なスペースに基いて、各々ビツトPW386
及びPR387により示されている代理書込又は
代理読取のいずれかが、応答側のメモリ制御装置
17Bに対して要求される。LRUは、キヤツシ
ユ40のデータ内容によつて両メモリ制御装置1
7の動作に影響を与えるので、最も暇なメモリ制
御装置は、キヤツシユ40のスペース管理への入
力を更に有している。例えば、割振り可能なキヤ
ツシユ・データ記憶スペースが比較的少ない場合
には、キヤツシユ40中の割振り可能なスペース
を増すために、代理書込が要求される。一方、キ
ヤツシユ40の大部分が割振り可能である場合に
は、ホスト11に関するデータ記憶階層の性能を
改善するために代理読取が要求される。LRU4
12により示される割振り可能なスペースが割振
り可能なスペースの2つの閾値の中間である場合
には、PA388は、応答側の記憶デイレクタ1
7Bが、要求側のメモリ制御装置17Aに移転さ
れるべき代理動作の型を選択できることを示す。 次に、ステツプ411において設定されている
代理要求が、タグ線342を経てパラメータ・デ
ータ交換を適切にセツト・アツプした後に、デー
タ・バス340を介してメツセージRAM18を
経て応答側のメモリ制御装置17Bに供給され
る。応答側のメモリ制御装置17Bは、要求側の
メモリ制御装置17Aにより供給された代理要求
メツセージが処理される様に、インターリーブさ
れた機械動作の間にアイドル時間を有している。
ステツプ422において、応答側のメモリ制御装
置17Bは、各々の長さについてその待ち行列6
9を調べることを含めて、その作業状況を調べ
る。それは、要求側のメモリ制御装置17Aが既
に同じことを考慮した場合でも、キヤツシユ40
の割振り可能な自由なスペースの検査を含むこと
ができる。ステツプ422における作業状況が比
較的少ない場合には、効率のために、代理作業は
行われない方がよい。従つて、ステツプ
(HOLD)425において、応答側の記憶デイレ
クタ17Bは、作業を移転せずに、それ自身の作
業を保持する。代理応答メツセージにおいて、
PSV376は、PSV状態ベクトルが比較的少な
い作業状況を示しているために何ら作業が移転さ
れないことを示す。その様な閾値は、待ち行列6
9の閾値404及び406に良好に対応する。一
方、応答側のメモリ制御装置17Bは、ステツプ
422において、その作業レベルが比較的高く、即
ち例えば閾値406又は405よりも高いことを
見出すことがある。その場合には、代理作業が選
択されて、機械動作ステツプ(SEND)426に
より示されている如く移転される。機械動作ステ
ツプ426は、RQ又はWQからのデータ転送動
作を選択すること、及び前述の如く要求側のメモ
リ制御装置17Aに送られている代理応答メツセ
ージ内に制御パラメータをそれとともに挿入する
ことを含む。HOLD又はSENDのいずれかのメ
ツセージが各々ステツプ425及び426におい
て発生されると、ステツプ427において、応答
側のメモリ制御装置17Bは、メツセージRAM
18を経て要求側のメモリ制御装置17Aへ、代
理応答メツセージを転送する。更に、応答側のメ
モリ制御装置は、要求側のメモリ制御装置に移転
された代理作業の重複を防ぐための動作インター
ロツクとして、待ち行列レジスタ69(第5図)
のエントリPWI,PWO,PRI及びPROを用いて
もよい。移転されている代理作業は、代理応答メ
ツセージを代理待ち行列84に割当て作業機能と
して転送することによつて、要求側のメモリ制御
装置17Aにより処理される。それから、要求さ
れたデータの転送がセツト・アツプされ、あたか
もホスト11により割当てられた作業であるかの
如く、要求側のメモリ制御装置17Aによつて実
行される。代理作業が実行されている間、他の作
業がホスト11から受取られて、代理作業とイン
ターリーブされてもよいことを理解されたい。 キヤツシユ40と代理応答メツセージにおいて
要求されたDASD16との間のデータ転送が完了
すると、要求側のメモリ制御装置17Aは、割当
て作業機能から代理状況ステツプ433へ延びて
いる論理経路432により示される如く、代理状
況メツセージを供給する。代理状況メツセージの
組立ては、メモリ制御装置が完了した機械動作を
ホスト11に報告するための終了状況を組立体て
る場合と同じである。その手順は周知であるの
で、詳述しないが、戻りコードRC391はエラ
ーのない状況の場合にはゼロであり、代理データ
転送中にエラーが発生した場合にはゼロでなくな
る。 代理状況メツセージは、線434により示されて
いる如く、応答側のメモリ制御装置17Bに転送
されて、応答側のメモリ制御装置17Bにおける
レコードを更新するために、割当て作業機能40
0に代理作業のいわゆる後処理を行わせる。その
様な活動は、あたかも応答側のメモリ制御装置1
7Bが要求されたデータをDASD16からキヤツ
シユ40へ実際にステージしたかの如く、要求さ
れたデータがキヤツシユ40中に存在して、ホス
ト11に転送される様に準備されていることをホ
スト11に示すために、代理読取データ転送の後
に、ホスト11に装置終了を送ることを含んでも
よい。 要求側のメモリ制御装置17内の代理待ち行列
は、次の様にして更新される。ステツプ411に
おける要求が送られるとき、QS354が活動状
態にセツトされる。同様に、割当て作業機能40
0が、作業の完了時に、CPS357又はCPD3
58を更新する。エラー状態は、PR359にお
いて、割当て作業機能400により示される。ス
テツプ433における代理状況メツセージが応答
側のメモリ制御装置17Bに送られると、要求側
のメモリ制御装置17Aは、代理待ち行列84の
内容を消去し、又メモリ制御装置内に含まれる
ID361に関連する、全ての他の代理を示すビ
ツトを消去する。応答側のメモリ制御装置17B
も、同様にして、そのレコードを更新する。 第16図は、特にキヤツシユ40からDASD1
6にデータを書込む(デステージする)ための代
理作業の代替方法を示す。作業要求側のメモリ制
御装置17Aにおける作業レベル・ステツプ40
2は、主に読取待ち行列RQによつて影響される
が、それに限定されることはない。読取待ち行列
の作業レベル低い場合に、ステツプ450におい
て、WRQ19がチエツクされる。WRQ19が、
線451により示されている如く、閾値406を
超える数のエントリを有していれば、ステツプ4
52において、DASD16への書込が行われる。
0でない閾値406を与えることにより、キヤツ
シユ40からDASD16へデータをより効率的に
転送するために、種々のレコードをグループ化す
ることができる。WRQ19が何らエントリを有
していない場合(閾値406は0にされ得る)に
は、作業要求側のメモリ制御装置17Aは経路4
53をとつて、行われるべき他の作業を探索して
走査を行う。そうでない場合には、ステツプ45
2から、ホスト処理動作のための割当作業機能4
00への経路がとられる。先に、第15図に関し
て述べた如く、共用の書込待ち行列WOQ19を
用いた場合には、書込が局所動作として処理され
て、WRQ19及び記録装置43における共用デ
ータ・ベースが、同期化及びデータの完全性のた
めに2つのメモリ制御装置17間で通信を行う。
この代理的実施例における読取待ち行列の代理動
作は、第15図において示された手順に従つて行
われる。 第17図は、第2図の流れ図に対応する機械動
作を詳細に示す流れ図である。アイドル走査ルー
チンの一部として、メモリ制御装置17は、ステ
ツプ460において、LRUリストを調べて、キ
ヤツシユ40において使用され得る割当て可能な
スペースを量を決定する。LRUリストは、一般
に、キヤツシユ40における割振り可能な対応す
るデータ記憶スペースが割振りのために使用可能
が否かを示す標識を有している。一般に、データ
記憶スペースは、LRUリストが所与の閾値より
も少ない場合、及びデータ記憶領域におけるキヤ
ツシユの内容がDASD16におけるデータのコピ
ーと同一である場合に、割振り可能である。いず
れにしても、ステツプ460において、キヤツシ
ユ40における割振り可能なデータ記憶スペース
の量が低ければ、即ち所与の閾値以下であれば、
ステツプ461において、メモリ制御装置17は
待ち行列69のWQ部分を調べる。これは、割振
り可能なデータ記憶スペースの量を増すために
DASD16へのデステージング又は書込動作を行
うことができる様に、最初に行われる。従つて、
メモリ制御装置17は、後に詳述するデータ転送
ステツプ463への論理経路462をとつて、待
ち行列69のWQにおけるエントリにより識別さ
れたキヤツシユ40に記憶されているデータのコ
ピーをDASDへ転送する。データ転送ステツプ4
63の後、メモリ制御装置17は、第18図に示
されている如き、ステツプ464における後処理
に進む。 待ち行列69のWQが何らエントリを有してい
ないとき、メモリ制御装置17は、ステツプ46
5において、待ち行列69のRQ部分を調べる。
この第2優先順位の非同期的データ転送動作は、
DASD16からキヤツシユ40へのデータを転送
する。メモリ制御装置17は、データ転送ステツ
プ463への論理経路466をとる。待ち行列6
9のRQ及びWQ部の両方が空の場合には、ステ
ツプ470において、前述の代理動作が開始され
る。それと同時に前述の如く、矢印471により
示されている如く、応答側のメモリ制御装置17
Bに、作業状況の照合が行われる。タイマ410
は、例えば2又は3秒後のタイム・アウトにおい
て、論理経路475を介してエラーが示される様
にセツトされる。ステツプ470において、作業
状況の照合が成された後、作業要求側のメモリ制
御装置17Aは、そのアイドル・ループに行き、
そこでホスト11から他の指令を受取り又は任意
のDASD16からアテンシヨン信号を受取る。そ
の様なアテンシヨン信号は周知であり、詳述しな
い。ステツプ472においては、応答側のメモリ
制御装置17Bが代理作業要求メツセージに応答
する前であつても、他の割当て作業が行われても
よい。応答側のメモリ制御装置17Bは線474
により示されているその代理応答メツセージを供
給し、その代理応答メツセージは、参照番号33
2により示されている如く、肯定応答ステツプ4
73を次のステツプ480へ進ませる。応答側の
メモリ制御装置17Bから代理応答メツセージが
受取られる迄、作業要求側のメモリ制御装置17
Aは、アイドル・ループ472によりタイマ41
0を活動状態に保つて、行われるべき作業を探索
し続ける。 作業要求側のメモリ制御装置17Aが代理応答
メツセージを受取つたとき、ステツプ480にお
いて、メモリ制御装置17Aは、読取データの転
送が行われるべきか又は書込データの転送が行わ
れるべきかを選択する。ステツプ473におい
て、メモリ制御装置17Aは、メツセージ(図示
せす)により代理応答メツセージが実際に受取ら
れたことを肯定応答する。この肯定応答は、メツ
セージRAM18を介して応答側のメモリ制御装
置17Bへ延びているタグ線342の中の1本の
タグ線を活動化することによつて、簡単に行われ
ことができる。ステツプ480は、第15図にお
いて参照番号411により示されている、代理要
求メツセージを送るステツプに対応する。次に、
作業要求側のメモリ制御装置17Aは、そのアイ
ドル・ループ481に戻つて、サービスを必要と
するDASDを探索し、そしてホスト11から指令
を受取る。それから、ステツプ482において、
代理応答メツセージが受取られ、このステツプは
第15図のステツプ427に対応する。次に、ス
テツプ483において、作業要求側のメモリ制御
装置17Aは、アドレスされるべきDASD16の
状況を調べる。DASDが使用中であれば、代理要
求されたデータ転送が、第5図に示されている如
く、RQ又はWQのいずれかにおいて、代理ビツ
トと共に、装置の待ち行列に入れられる。代理待
ち行列84の内容は変更されないことに注目され
たい。アドレスされたDASDが解放されてアクセ
ス可能になるとすぐに、作業要求側のメモリ制御
装置17Aは、待ち行列を調べ、ステツプ463
において、既知のデータ処理技術を用いて、デー
タ転送を開始する。ステツプ483において、ア
ドレスされたDASD16が使用中でないならば、
ステツプ485において、その装置の待ち行列が
WQ85又はRQ86から除かれる。ステツプ4
86において、作業要求側のメモリ制御装置17
Aは、ビツト350及び351を調べることによ
り、代理作業が読取動作又は書込動作のいずれで
あるかを調べる。代理読取(PR)の場合には、
ステツプ463において、読取データの転送が開
示され、代理書込(PW)の場合には、ステツプ
463において、書込データの転送動作が開始さ
れる。 第18図において、第17図のステツプ463
におけるデータ転送に続く、作業要求側のメモリ
制御装置17Aによる後処理は、ステツプ500
において、完了したばかりのデータ転送が代理デ
ータ転送であるか否かを調べることにより行われ
る。代理データ転送でない場合には、ステツプ5
01において、通常の後処理動作が行われ、作業
要求側の記憶デイレクタ17Aはステツプ501
からアイドル走査へ進む。ステツプ463におい
て、代理データ転送が行われた場合には、ステツ
プ502において、作業要求側のメモリ制御装置
17Aは、記録装置43を更新する。記録装置4
3は作業要求側及び応答側の両方のメモリ制御装
置17に共通であるので、作業要求側のより暇な
メモリ制御装置が、応答側のより多忙なメモリ制
御装置に代つて、ハウスキーピングを行つてい
る。次に、ステツプ503において、作業要求側
のメモリ制御装置17Aが、読取又は書込のいず
れの動作が生じたかを調べる。これは、応答側の
メモリ制御装置17Bに供給される情報の型に影
響を与える。ホスト11から完全に独立している
書込動作の場合には、ステツプ504において、
状況が設定される。この様な状況は、第15図に
示されている代理状況メツセージを介して、応答
側のメモリ制御装置17Bに供給される。読取動
作の場合には、ステツプ505において、作業要
求側のメモリ制御装置17Aは、応答側のメモリ
制御装置17Bのための終了状況を設定し、代理
状況メツセージの一部としてその状況を送る。ス
テツプ504又は505に続いて、ステツプ50
6は、実際においてメツセージRAM18を介し
て状況メツセージを送る。代理待ち行列84は、
ゼロにリセツトされて、新しい代理動作の実行を
可能にする。次に、ステツプ507において、ア
イドル走査に戻される。 第19図は、応答側のメモリ制御装置17Bの
動作を示している。応答側のメモリ制御装置17
Bは、その動作のアイドル走査部分に達する迄、
即ち代理要求に対する応答が他のデータ処理動作
との間でインターリーブされる迄、代理状況メツ
セージに応答しない。ステツプ510において、
要求を受取つた後、応答側のメモリ制御装置17
Bは、ステツプ511において、LPUスペース
を調べ、即ちキヤツシユ40が多くの割振り可能
なスペースを有しているか否かを調べる。キヤツ
シユ40における割振り可能なデータ記憶スペー
スの量が少ない場合には、応答側のメモリ制御装
置17Bは、ステツプ512において、初めに書
込待ち行列(WQ)85を調べる。その待ち行列
がゼロに等しい、即ち何らエントリを有しない場
合には、読取待ち行列(RQ)86がステツプ5
13において調べられる。RQ86又はWQ85
のいずれかがエントリを有していれば(全てがゼ
ロでないならば)、ステツプ514において、作
業が作業要求側のメモリ制御装置17Aに移転さ
れる。ステツプ514は、第15図におけるステ
ツプ422の作業状況分析に続く応答ステツプ4
27に対応するが、それらは第19図においては
説明を簡潔にするために示されていない。それか
ら、ステツプ515において、アイドル走査に戻
されて、より忙しいメモリ制御装置17内で割当
てられた作業が実行される。ステツプ511にお
いて、LRUスペースが充分であると思われる場
合には、データ記憶階層10の性能を改善するた
めに、データをDASD16からキヤツシユ40中
に転送することが望ましい。従つて、ステツプ5
16において、RQ86が初めに調べられ、RQ
86が幾つかのエントリを有していれば、ステツ
プ514において、待ち行列中の読取が作業要求
側のメモリ制御装置17Aに代理作業として供給
される。ステツプ516において、RQ86が空
であれば、ステツプ512において、WQ85が
前述の順序のステツプに従つて調べられる。この
例においては、RQ85は2回調べられる場合が
ある。RQ86及びWQ85の両方が空である場
合には、ステツプ517において、応答側のメモ
リ制御装置17Bは、PSV376中に任意に4
3として選択されたコードを示すことにより、第
15図の代理応答メツセージ中に、代理のために
転送されるべき作業がないという表示を供給す
る。 第15図の代理要求メツセージに示されている
如く、作業要求側のメモリ制御装置17Aは読取
又は書込動作のいずれかを要求することができ
る。その場合には、書込代理要求に対しては、応
答側のメモリ制御装置17Bが、ステツプ510
から直接ステツプ512へと論理経路520をと
り、LRUスペース分析ステツプ511が省かれ
る。他方、読取代理要求に対しては、応答側のメ
モリ制御装置17Bが、直接ステツプ516へ論
理経路521をとつて、初めにRQ86を調べ、
ステツプ511が省かれる。従つて、作業要求側
のメモリ制御装置17Aは読取又は要込代理動作
に対する優先性を示すことができるにも拘らず、
応答側のメモリ制御装置17Bは要求された動作
の代りにもう1つのデータ処理動作を行うことが
できる。その状態がこの場合に最も適していると
き、2つのメモリ制御装置17の間の共同作用
は、最小限の制御で、改善された動作を与える。
【図面の簡単な説明】
第1図は本発明を用いた複数装置のシステムを
示す図、第2図は本発明を実施するための第1図
に示されているシステムの機械動作を簡単に示す
流れ図、第3図は本発明の原理を使用した階層ペ
ージング及びスワツピング記憶システムの論理
図、第4図は第3図に示されているシステムの代
替的実施図、第5図は第1図乃至第4図に示され
ているシステムと共に使用可能な制御レジスタを
示す図、第6図は第3図のアドレス及び指令評価
器を示す論理及びフローの結合図、第7図は第3
図の直接アクセス制御部を示す論理フロー図、第
8図は第3図のシステムで使用可能なキヤツシ
ユ・アクセス制御部を示す図、第9図は第3図の
システムで実行されるページング・パラメータ設
定指令の論理フローを示す図、第10図は第3図
のアドレス及び指令評価器で指令が受取られた時
に実行される動作の論理フローを示す図、第11
図は第8図に示されているキヤツシユ・アクセス
制御部の記録装置探索に関連した動作の論理フロ
ーを示す図、第12図は第8図に示されているキ
ヤツシユ・アクセス制御部の読取指令又は書込指
令に関連した動作を示す図、第13図はキヤツシ
ユへのアクセスがミスを生じたときの第8図に示
されているキヤツシユ・アクセス制御部の動作に
関連する論理フロー図、第14図は要求されたデ
ータがキヤツシユ中になく読取要求をバツキング
記憶装置で待機させる場合の第8図に示されてい
るキヤツシユ・アクセス制御部の動作に関連した
論理フロー図、第15図及び第16図は各々別個
の及び共用の書込待ち行列を用いている第1図乃
至第4図に示されているシステムの動作を示す流
れ図、第17図乃至第19図は第1図乃至第14
図に示されているシステムにおいて本発明を実施
するための機械動作を詳細に示す流れ図である。 10……周辺(記憶)システム、11……ホス
ト、16……直接アクセス記憶装置(DASD)、
17……メモリ制御装置、18……メツセージ
RAM、19……書込待ち行列、30……システ
ム記憶装置、31……制御機構、32……チヤネ
ル・アダプタ、40……キヤツシユ、43……記
録装置、45……スキヤツタ・インデツクス・テ
ーブル、50……アドレス及び指令評価器、56
……直接アクセス制御部、61……キヤツシユ・
アクセス制御部、62……論理装置制御ブロツ
ク・レジスタ、69……待ち行列レジスタ、73
……制御記憶装置、84……代理待ち行列、97
……代理ビツト。

Claims (1)

  1. 【特許請求の範囲】 1 複数の第1装置と第2装置との間に介在する
    複数の制御装置を有し、任意の制御装置を介して
    任意の第1装置と第2装置との間のデータ転送を
    制御するデータ転送制御装置において、各制御装
    置に、 上記データ転送に関して実行すべき作業の待ち
    行列を維持する手段と、 上記待ち行列における作業の量を検出し、該作
    業の量が所定の低レベルにあるとき、そのことを
    示す検出手段と、 上記待ち行列における作業の量が所定の低レベ
    ルにあることを上記検出手段が示すとき、要求側
    制御装置としての当該制御装置から応答側制御装
    置としての他の制御装置に対して、応答側制御装
    置における作業を要求側制御装置へ移転するよう
    要求する要求メツセージを送る手段と、 当該制御装置が応答側制御装置として要求メツ
    セージを受け取ることに応じて、上記待ち行列を
    調べて、その中の作業の量が上記所定の低レベル
    より高い所定のレベル以上のとき、上記待ち行列
    における1つの作業を要求側制御装置へ移転する
    手段と、 要求メツセージに応じて応答側制御装置から移
    転された作業を実行する手段と を備え、上記複数の制御装置におけるデータ転送
    を含む作業負荷を平衡化することを特徴とするデ
    ータ転送制御装置。 2 上記複数の第1装置が複数の直接アクセス記
    憶装置であり、上記第2装置がキヤツシユ・メモ
    リ装置であり、上記待ち行列がキヤツシユ・メモ
    リ装置から直接アクセス記憶装置へのデータ転送
    に関する作業のための書込待ち行列と直接アクセ
    ス記憶装置からキヤツシユ・メモリ装置へのデー
    タ転送に関する作業のための読取待ち行列とを有
    する特許請求の範囲第1項記載のデータ転送制御
    装置。
JP58228626A 1983-02-25 1983-12-05 デ−タ転送制御装置 Granted JPS59158461A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US06/469,680 US4633387A (en) 1983-02-25 1983-02-25 Load balancing in a multiunit system
US469680 1983-02-25
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 JPS59158461A (ja) 1984-09-07
JPH0458050B2 true 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)

Families Citing this family (135)

* 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 分散処理システムのプログラムローデイング方式
US5050070A (en) * 1988-02-29 1991-09-17 Convex Computer Corporation Multi-processor computer system having self-allocating processors
US5159686A (en) * 1988-02-29 1992-10-27 Convex Computer Corporation Multi-processor computer system having process-independent communication register addressing
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
US5131087A (en) * 1988-12-29 1992-07-14 Storage Technology Corporation Computer system having apparatus for automatically redistributing data records stored therein
EP0451196A4 (en) * 1988-12-29 1992-12-23 Storage Technology Corp Computer system memory performance improvement apparatus
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
ES2149794T3 (es) * 1993-09-24 2000-11-16 Siemens Ag Procedimiento para compensar la carga en un sistema multiprocesador.
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
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
US6405282B1 (en) 1997-10-06 2002-06-11 Emc Corporation Method for analyzine disk seek times 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
US6711649B1 (en) 1997-10-06 2004-03-23 Emc Corporation Load balancing on 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
US6917569B1 (en) * 1997-10-06 2005-07-12 Emc Corporation Method for determining seek times in a disk array storage device
US6442650B1 (en) 1997-10-06 2002-08-27 Emc Corporation Maximizing sequential output 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
US6633922B1 (en) * 1997-12-15 2003-10-14 International Business Machines Corporation Object access mechanism that dynamically switches between multiple distributed access models
US6601138B2 (en) * 1998-06-05 2003-07-29 International Business Machines Corporation Apparatus system and method for N-way RAID controller having improved performance and fault tolerance
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
US6754897B1 (en) * 1999-11-12 2004-06-22 Emc Corporation Operation prioritization and selection in a probability-based job scheduler
US6665740B1 (en) * 1999-11-12 2003-12-16 Emc Corporation Logical volume selection in a probability-based job scheduler
DE60044179D1 (de) 1999-12-28 2010-05-27 Sony Corp System und Verfahren für den kommerziellen Verkehr von Bildern
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
US7007194B1 (en) 2000-06-29 2006-02-28 Emc Corporation Data storage system having point-to-point configuration
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
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
US7437729B2 (en) * 2003-04-23 2008-10-14 Micron Technology, Inc. Method for load balancing a loop 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
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
US7472392B2 (en) * 2003-04-23 2008-12-30 Micron Technology, Inc. Method for load balancing an n-dimensional array of parallel processing elements
US20050034130A1 (en) * 2003-08-05 2005-02-10 International Business Machines Corporation Balancing workload of a grid computing environment
ATE345532T1 (de) * 2003-09-19 2006-12-15 Harman Becker Automotive Sys Datenübertragungsschnittstelle
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
US20100169673A1 (en) * 2008-12-31 2010-07-01 Ramakrishna Saripalli Efficient remapping engine utilization
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 富士通株式会社 ストレージ仮想化装置、ストレージ仮想化装置の制御方法及び制御プログラム
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
US10038640B2 (en) * 2015-04-30 2018-07-31 Amazon Technologies, Inc. Managing state for updates to 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
US4318174A (en) * 1975-12-04 1982-03-02 Tokyo Shibaura Electric Co., Ltd. Multi-processor system employing job-swapping between different priority processors
JPS5841538B2 (ja) * 1975-12-04 1983-09-13 株式会社東芝 マルチプロセツサシステム ノ ユウセンセイギヨホウシキ
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
US4467411A (en) * 1981-03-06 1984-08-21 International Business Machines Corporation Scheduling device operations in a buffered peripheral subsystem
US4458316A (en) * 1981-03-06 1984-07-03 International Business Machines Corporation Queuing commands in a peripheral data storage system
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

Also Published As

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

Similar Documents

Publication Publication Date Title
JPH0458050B2 (ja)
EP0071719B1 (en) Data processing apparatus including a paging storage subsystem
US5530897A (en) System for dynamic association of a variable number of device addresses with input/output devices to allow increased concurrent requests for access to the input/output devices
US5247648A (en) Maintaining data coherency between a central cache, an I/O cache and a memory
US4779189A (en) Peripheral subsystem initialization method and apparatus
EP0104588B1 (en) Peripheral storage system having multiple data transfer rates
US4875155A (en) Peripheral subsystem having read/write cache with record access
KR100754300B1 (ko) Numa 컴퓨터 시스템에서 작업을 디스패칭하기 위한방법 및 장치
US6055603A (en) Method and apparatus for performing pre-request operations in a cached disk array storage system
EP0283628B1 (en) Bus interface circuit for digital data processor
US6662253B1 (en) Shared peripheral architecture
US4533995A (en) Method and system for handling sequential data in a hierarchical store
US5481707A (en) Dedicated processor for task I/O and memory management
JPS6143742B2 (ja)
EP0886225A1 (en) Microprocessor architecture capable of supporting multiple heterogenous processors
JPH076115A (ja) データ処理システムのソフトウェアユーザによるハードウェアデータ移動機能の制御方法、プロセッサ間の操作の同期化方法、及び複数の装置制御ブロックの付与方法
JPS5966755A (ja) 記憶システム
JPS6149709B2 (ja)
US6662216B1 (en) Fixed bus tags for SMP buses
US5146605A (en) Direct control facility for multiprocessor network
JPH02288927A (ja) 共有メモリ管理方式
JP2002123424A (ja) コンピュータ・システムにおいてメモリを動的に再割当てするシステムおよび方法
JP2769429B2 (ja) 読み取り要求サービス方法及びデ−タ処理システム
JP4053208B2 (ja) ディスクアレイ制御装置
US20040133748A1 (en) Unbalanced inclusive tags