JPH07225715A - キャッシュ内のデータにアクセスする方法およびシステム - Google Patents

キャッシュ内のデータにアクセスする方法およびシステム

Info

Publication number
JPH07225715A
JPH07225715A JP5264440A JP26444093A JPH07225715A JP H07225715 A JPH07225715 A JP H07225715A JP 5264440 A JP5264440 A JP 5264440A JP 26444093 A JP26444093 A JP 26444093A JP H07225715 A JPH07225715 A JP H07225715A
Authority
JP
Japan
Prior art keywords
cache
track
response
data
determining whether
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.)
Pending
Application number
JP5264440A
Other languages
English (en)
Inventor
Susan K Candelaria
スーザン・ケイ・キャンデラリア
Harvey Cord Joel
ジョエル・ハーベイ・コード
Joseph S Hyde
ジョセフ・スミス・ハイド
Larry R Perry
ラリー・リチャード・ペリー
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 JPH07225715A publication Critical patent/JPH07225715A/ja
Pending 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/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • 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

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)

Abstract

(57)【要約】 【目的】 本発明は、キャッシュ内のレコードにアクセ
スするために従来知られている装置より大幅に改善され
た性能を有するDASDキャッシュ内のデータにアクセ
スするためのシステムを提供する。 【構成】 トラックをキャッシュ内にプリステージする
のに多重トラック読み取り動作を使用する。これにより
あるトラックから他のトラックへの処理に関連するオー
バヘッドが軽減される。本システムは1プリステージ当
たり1シリンダ分のトラックまでプリステージ出来る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はデータ処理システム用の
データ貯蔵システムに関し、特に複数個のホスト・メイ
ンフレーム・コンピュータに対するディスク・ドライブ
のためのコントローラ・ユニットに関する。
【0002】
【従来の技術】メインフレーム・コンピュータ・システ
ムは一般にデータの大量貯蔵用に補助貯蔵デバイスを使
用する。補助貯蔵デバイスでは、データは媒体に物理的
な変化を施すことにより貯蔵される。媒体上へのデータ
の物理的な貯蔵の例は、アルミニュームにレーザでピッ
トを形成すること、プラスチック・ディスクに針で溝を
形成すること、および磁気表面に電磁石で磁気ドメイン
を形成することである。媒体の物理量を感知し、その物
理量に応じて変化する電気信号を発生するのに変換器が
使用される。データ処理システムまたはコンパクト・デ
ィスク・プレーヤにおいては、この電気信号は2進デー
タを再生するように解読される。
【0003】直接アクセス型貯蔵装置(以下DASDと
いう。)は補助貯蔵デバイスの1つである。DASDで
はデータに対するアクセス時間が貯蔵デバイス内のデー
タの位置に依存しない。現在ではディスク・ドライブ・
ユニットはもっとも一般的なDASDである。ディスク
・ドライブ・ユニットは回転ディスク上にデータを記録
する。読み取り・書き込みヘッドがディスクに対して半
径方向内側および外側に移動され、ディスクはディスク
の任意の位置を変換器に近接した位置にもたらすように
回転される。トラックはディスク上の360度の範囲を
いう。シリンダはトラックの垂直方向のバンドをいう。
典型的には、1シリンダに15のトラックがある。DA
SDは、データのアクセスが位置に依存するテープ・ド
ライブの如き間接アクセス型貯蔵デバイスと対照的であ
る。
【0004】ディスク上のある位置へのアクセス時間が
多かれ少なかれランダムであるという事実はそれが瞬時
的であることを意味するものではない。変換器がディス
ク上の位置をアクセスするために回転ディスクが適切な
位置に移動するのをDASDが待機している間、DAS
Dに対する貯蔵装置コントローラは他の機能を行うこと
が出来る。待機時間中に行われる機能の例はバッファ・
メモリからチャンネルを介してホスト・コンピュータへ
のデータのダウンロードである。航空予約システム用の
ごとき大型の多重コンピュータ・データ処理システムで
は、多数のDASDが数台のコンピュータに対して用い
られる。貯蔵装置コントローラはDASDとホスト・コ
ンピュータの間に論理的に配置される。貯蔵装置コント
ローラはデータの転送のために特定のコンピュータと磁
気ディスク・ユニット装置の接続および切り離しを行
う。
【0005】IBM3990貯蔵装置コントローラは磁
気ディスク・ユニットとホスト・コンピュータとの接続
を制御する貯蔵装置コントローラの1例である。IBM
社のIBM3990モデル3コントローラはホスト・コ
ンピュータからの最大16のチャンネルと最大64の磁
気貯蔵ユニットを扱うことが出来る。貯蔵装置コントロ
ーラ内には2つの多重パス貯蔵装置ディレクタと4つの
貯蔵パスが存在し、そのうちの2つは各々多重パス貯蔵
装置ディレクタに関連づけられている。各多重パス貯蔵
装置ディレクタはホスト・コンピュータからの最大8個
の入力チャンネルに接続されてもよい。従って、全体と
して貯蔵装置コントローラに対して16のチャンネルが
存在する。各多重パス貯蔵装置ディレクタは2つの貯蔵
パスにつながれ、従って8x2スイッチとして働く。
【0006】チャンネルは貯蔵装置コントローラとホス
ト・コンピュータの間の物理的なリンクである。通常、
ホスト・コンピュータは2つまたは4つのチャンネルを
有し、その半分は1つの多重パス貯蔵装置ディレクタに
物理的につながれ、他の半分は他方の多重パス貯蔵装置
ディレクタにつながれている。ディスクが準備完了であ
ることが知らされると、コントローラは複数のチャンネ
ルの任意の1つおよびホストへ至る貯蔵パスを確保して
データ・パスを確立する。IBM3990貯蔵装置コン
トローラでは、ホスト・コンピュータと磁気ディスク・
ユニットの間の入出力トランザクションは2つの別個の
接続に分けることが出来、これらは別個のチャンネルと
貯蔵パスに沿って処理される。リクエストは必ずしもそ
れを受け取ったチャンネルと同じチャンネル上で応答さ
れなくてもよい。これにより貯蔵装置コントローラを通
してのスループットが改善される。何故なら、切り離し
期間中貯蔵装置コントローラは他のタスク、例えば他の
コンピュータと他のDASDとの接続を行うことが出来
るからである。
【0007】各パスはそれ自身のマイクロプロセッサに
基づいた事実上スタンド・アロンの制御ユニットである
が、各貯蔵パスはトランザクションに関する接続、切り
離しおよび再接続に関連する同期機能のための共通メモ
リ・スペースを介して制御情報を共有する。貯蔵コント
ローラ内の各貯蔵パスは貯蔵装置コントローラの動作を
支援するために用いられる3つのアドレス可能なメモリ
・デバイスに対してアクセスできる。3つのアクセス可
能なメモリ・デバイスとは、共用制御アレイ(SC
A)、キャッシュ、不揮発性貯蔵装置である。本発明は
主としてデータ検索の速度を増すためにDASDのトラ
ックをキャッシュ内にプリステージすることに関する。
【0008】キャッシュはコンピュータ・メモリに対す
る付属物としての応用が広く知られており、その場合キ
ャッシュは屡々アクセスされる命令およびデータに対す
る高速貯蔵装置として用いられる。レコードの前回の使
用時からの経過時間が使用頻度の指示子として用いられ
る。キャッシュはその内容が前回使用時点から古くなっ
ているという点でシステム・メモリと区別される。コン
ピュータ・メモリのアドレス・スペースでは、アドレス
・スペース内のスペースを競うデータがアクセスを許さ
れる前にプログラム・データが解放されなければならな
い。キャッシュ内でスペースの競合が起こると、最も古
く使用されたデータはキャッシュから追い出される・頻
繁に使用されないデータがキャッシュに入れられると、
それらは古いデータになってキャッシュから追い出され
る。キャッシュのデータはシステム・メモリに重複して
存在する。
【0009】貯蔵装置コントローラ・キャッシュはDA
SDおよび貯蔵装置コントローラに対して類似の機能を
行う。DASDの磁気媒体からの読み取り(および書き
込み)はかなり時間のかかるものである。読み取りおよ
び書き込み動作を遅くする要因としては、磁気ディスク
が適切な位置に来るに要する時間、およびデータを読み
書きするのに用いられる磁気変換器の狭いバンド幅が挙
げられる。頻繁に使用されるデータをキャッシュ内に複
製することにより、データの読み取り時間が短縮され、
データ貯蔵システムのスループットが大幅に改善され
る。高速動作素子は特に磁気媒体と比較した場合貯蔵装
置のバイト当たりのコストの点で高価であり、このため
キャッシュのサイズはバッファとして働くメモリ・デバ
イスに比べて極めて小さい。
【0010】IBM社の3990モデル3貯蔵装置コン
トローラでは、貯蔵装置コントローラ・キャッシュはD
ASDに書き込まれつつあるあるデータに対してバッフ
ァ機能を与えるために用いられている。そして、データ
はトラック・イメージとして貯蔵装置コントローラ・キ
ャッシュに貯蔵される。
【0011】不揮発性貯蔵装置(NVS)がキャッシュ
のバッファ機能に対するバックアップとして貯蔵装置コ
ントローラに付加されている。不揮発性貯蔵装置は特殊
なメモリ回路により、またはバックアップ電源を有する
メモリにより与えられる。NVSへのアクセスはDAS
Dへのアクセスより高速であるが、一般にキャッシュよ
り低速である。データはDASDへの転送速度のために
キャッシュに分岐され、また停電時のキャッシュのバッ
クアップのためにNVSに分岐される。NVSに書き込
まれたデータは磁気媒体に書き込まれたデータと同じよ
うに安全であると考えられ、データが成功裡に貯蔵され
たことを示す表示がホスト・コンピュータに送られる。
【0012】DASDからのデータ検索の速度を上げる
ために、貯蔵装置コントローラは順次的に並べられたデ
ータ・セットまたはファイルに対してトラックをキャッ
シュ内にプリステージする。トラックのキャッシュ内へ
のプレステージは、順次処理を表す範囲定義CCWが発
生したチャンネル・プログラムによりトリガされる。本
発明の環境では、プリステージングとは処理チャンネル
・プログラムが1つまたは複数のトラックに到達する前
にこれらトラックを読み取ることをいう。
【0013】従来技術のシステムでは、固定数、代表的
には2つのトラックがプリステージされる。少数の固定
プリステージ・トラックをプリステージする場合の問題
は、チャンネル・プログラムがこの少数のプリステージ
・トラックをすぐに使い尽くすことである。代表的に
は、プリステージはチャンネル・プログラムの終わりに
スケジュールされている。従って、トラック0を処理し
ている場合、トラック1および2がプリステージング用
にスケジュールされる。トラック1を処理している場
合、トラック2および3がプリステージングのためにス
ケジュールされる。この構成では、プリステージされつ
つあるれトラックの1つが既にキャッシュ内に存在する
ことが屡々ある。従って、1トラックだけをプリステー
ジする場合には相当のオーバヘッドが発生する。
【0014】更に、この種の固定トラック・プリステー
ジングは単一のトラックがキャッシュにロール・インさ
れる場合に用いられる。通常は2番目のトラックがアク
セスされるまでに長い潜伏期間が存在する。従って、固
定プリステージ・アルゴリズムには非効率性が存在す
る。その1つは、単一トラック・ロール・モードに関連
する潜伏期間によるものである。第2の非効率性は4つ
以上のトラックがチャンネル・プログラムによりアクセ
スされる場合に内部プリステージングを発行しキャッシ
ュにアクセスするためのオーバヘッドによるものであ
る。従って、少数のプリステージされたトラックはチャ
ンネルによりすぐに使い尽くされ、単一トラック・ロー
ル・モードに関連して相当のオーバヘッドが存在する。
【0015】
【発明が解決しようとする課題】本発明の目的は上述の
問題を解決することである。
【0016】本発明の他の目的は、キャッシュ内のレコ
ードにアクセスするために従来知られている装置より大
幅に改善された性能を有するDASDキャッシュ内のデ
ータにアクセスするためのシステムを提供するにある。
【0017】
【課題を解決するための手段】本発明はキャッシュ内の
可変数のトラックをプリステージに使用する。これによ
り本発明は静的プリステージ・プロセスにみられるオー
バヘッドの問題を軽減する。本発明は、先行技術の2ト
ラックの如き固定トラックに比べてステージ当たり1シ
リンダ分のトラックまでプリステージすることが出来
る。本発明の1実施例では3トラックをプリステージ
し、システム内の他の条件に依存してキャッシュ内の1
シリンダ分のトラックまでプリステージすることが出来
る。
【0018】最初のトラック群がプリステージされた
後、プリステージ中にデバイスに対する特定のリクエス
トが順番待ちしていると、システムはプリステージング
を中断する。システムはまた、十分に多くのリクエスト
が他の物理的デバイスのために順番待ちしている場合、
プリステージングを中断する。
【0019】これにより、サブシステムにより遂行され
るべき動作は中断されず、他のトラックのプリステージ
ングはシステム内のホストおよび信号プロセッサによる
アクセスに対してブロックとならない。更に本システム
によればアクセス前に一層多くのトラックをプリステー
ジすることが出来、従来の静的プリステージング・シス
テムに比べ性能ゲインが大幅に改善される。
【0020】
【実施例】図1はデータ処理システム10の高レベル・
ブロック図を示す。データ処理システムは貯蔵装置コン
トローラ12、複数個のホスト・コンピュータ14、1
6、18、20および複数個の直接アクセス型貯蔵装置
(DASD)22ー32を有する。DASD22ー32
は一般には磁気貯蔵装置、例えばディスク・ドライブで
ある。DASD22ー32はホスト・コンピュータと通
信するための選択的な接続のために貯蔵装置コントロー
ラ12につながれている。貯蔵装置コントローラは好ま
しくはIBM社の3990モデル3コントローラであ
る。
【0021】ホスト・コンピュータ14ー20は代表的
にはメインフレーム・システム、例えばIBM社の30
90またはES9000コンピュータ、または同等のも
のである。ホスト・コンピュータ14ー20は少なくと
も1つ、最大4つのチャンネルで貯蔵装置コントローラ
12につながれている。例えば、ホスト・コンピュータ
20はチャンネルチャンネル34(a)、34(b),
34(c)、34(d)により貯蔵装置コントローラ1
2につながれている。チャンネルは2種類ある。即ち、
並列データ・チャンネルと直列データ・チャンネルであ
る。15kmまでのデータ送信に対してある種の光直列
チャンネルが用いられる。並列チャンネルは電気信号を
用い、一般には約125m以上の距離には使用されな
い。
【0022】図2は貯蔵装置コントローラ12を詳細に
示す。貯蔵装置コントローラは2つの貯蔵装置クラスタ
36および38を有し、その各々はホスト・コンピュー
タとDASDとの間に選択的な接続を与える。4台のホ
スト・コンピュータと6個のDASDが図1に示される
が、貯蔵装置コントローラ12は更に他のチャンネルや
DASDを処理することが出来る。
【0023】所与のホスト・コンピュータ・システムか
らのデータは所与のホスト・コンピュータに対するいず
れかのDASDに貯蔵される。ホスト・コンピュータが
少なくとも2つのチャンネルで接続される場合、その各
々が貯蔵装置クララスタ36、38につながれる。同様
に、4つのチャンネルが設けられる場合、その2つが貯
蔵装置クラスタ36につながれ、他の2つが第2の貯蔵
装置クラスタ38につながれる。貯蔵装置コントローラ
12はチャンネルを介してホスト・コンピュータからリ
クエストを受け取り、同じホスト・コンピュータにつな
がれたチャンネルのいずれかを介してリクエストに応答
する。1つのホスト・コンピュータに関連するチャンネ
ルはパス群として知られている。貯蔵装置コントローラ
12はパス群に関する知識を各ホスト・コンピュータか
ら受け取って持っている。
【0024】貯蔵装置コントローラ12はDASDへ至
る4つのパス40、42、44、46を有する。各デー
タパス40ー46は貯蔵装置パス・プロセッサ48ー5
4の1つに関連づけられている。各データ・パスは全て
のDASDに至っている。しかし1時に1つのデータ・
パスのみがDASDに対してアクセスできる。貯蔵装置
コントローラ12はDASD内のディスクの回転位置に
基づいてDASDとホスト・コンピュータ間の切り放し
および再接続を同期させようと試みるので、貯蔵装置コ
ントローラ12は実質上データ転送マネジャとして作動
するとみることが出来る。トラフィック・マネージメン
ト体系の目的はチャンネルを介してホスト・コンピュー
タに受け取られたリクエストに出来るだけ早く応答する
ことである。この目的を達成する1つの方法はデータが
ホスト・コンピュータとDASDの間を移動している状
態で貯蔵装置パス・プロセッサを占有状態に維持してお
くことである。
【0025】貯蔵装置コントローラ12は独立した電源
に対応するセクションに内部で分割されている。2つの
セクションはそれぞれ貯蔵装置クラスタ36、38であ
る。第3のセクションはメモリ・キャッシュ58を含
む。第4のセクションは不揮発性貯蔵装置60を含む。
キャッシュ58は頻繁にアクセスされるデータおよび本
発明の方法のバッファ機能に対する貯蔵装置を提供す
る。不揮発性貯蔵装置60はキャッシュの書き込みおよ
びキャッシュの読み取りに対して同様なレスポンスを与
えるために貯蔵デバイスに書き込まれつつあるデータの
1時的貯蔵装置として用いられる。このような状況で不
揮発性貯蔵装置にデータを貯蔵することにより、DAS
Dへのデータの実際の転送が完了していないにも拘わら
ず貯蔵動作が論理的に完了したことをホストに知らせる
ことが出来る。
【0026】貯蔵装置クラスタ36、38は機能的特徴
面で互いに鏡像的である。従って、貯蔵装置クラスタ3
6のみを以下に説明する。貯蔵装置クラスタ36は、ホ
スト・コンピュータ・システムからのチャンネルと信号
パス・プロセッサ48、50の間の4対2または8対2
スイッチとして働く多重パス貯蔵装置ディレクタ62を
有する。貯蔵装置クラスタ36はまた共用制御アレイ6
4を有し、これは貯蔵装置クラスタ38内の共用制御ア
レイ38の内容と同一である。共用制御アレイ64、6
6はパス群情報およびDASD用の制御ブロックを貯蔵
している。後述するように、共用制御アレイは、キャッ
シュ58を制御する際におよび本発明の方法を実施する
際に使用されるデータ構造のいくらかを貯蔵するために
も用いられる。データ構造はキャッシュ58にも貯蔵さ
れてもよい。
【0027】図3は信号パス・プロセッサ48をブロッ
ク図で示す。信号パス・プロセッサ48は上ポートによ
り多重パス貯蔵装置ディレクタにつながれ、下ポートに
より複数個のDASDにつながれている。同期動作期間
中多重パス貯蔵装置ディレクタ62とDASDの1つと
の間のデータ転送は必要なら速度変更バッファ76によ
り支援された自動データ転送回路74を介してなされ
る。速度変更バッファ76は、ディスク・ドライブ型D
ASDによるデータ転送速度とホスト・コンピュータへ
のチャンネルの動作速度との差違を補償する。チャンネ
ルは典型的にはDASDより速い速度でデータを処理す
る。ポート・アダプタ72はキャッシュ58、不揮発性
貯蔵装置60および上ポート間のデータの転送を制御す
る。ポート・アダプタ72はまたキャッシュ58と上ポ
ート間のデータの転送を制御する。前述の如く、キャッ
シュ58および不揮発性貯蔵装置60の存在によりある
データの転送の論理的完了がディスクとチャンネル接続
の物理的同期を待つことなく与えられる。信号パス48
の全ての動作はマイクロコンピュータ70の制御下にあ
る。データ転送が開始されるためには、DASDの制御
が正しく向けられなければならない。これはインデック
ス点またはレコード0以外の計数開始領域を検出するこ
とによりなされる。計数領域またはインデックスが検出
されると、デバイス制御がトラックに沿って進みチャン
ネル・プログラムにより指令された動作が遂行される。
レコード・ロケート・パラメータを認証した後、制御ユ
ニットは第1の指定されたトラックをシークすべくデバ
イスを方向付け、デバイスを指定セクタに位置づけ、ト
ラック上の特定のレコード領域に位置付けるべくサーチ
動作を開始する。
【0028】拡張カウント・キー・データ・アーキテク
チャ(ECKD)を用いたチャンネル・コマンド・ワー
ド・プログラムの構成のためのチャンネル・コマンド・
ワード言語はこの分野で知られている。ECKD言語は
どのデータをホスト・コンピュータ・プロセスが必要と
するか、そのデータがどこにあるかを貯蔵装置コントロ
ーラに知らせるためにホスト・コンピュータにより貯蔵
装置コントローラとの通信において用いられる。ECK
Dは、チャンネル・プログラムの書き込みおよび読み取
りコマンドに用いるためのグローバル属性バイトおよび
拡張定義(DX)グローバル属性バイトを有するチャン
ネルコマンドを提供する。良好な実施例ではプリステー
ジ・プロセスに対するトリガとして順次アクセス・モー
ドおよび拡張順次アクセス・モードを使用している。
【0029】このようなシステムでは、以前にアクセス
されたトラックに基づいて順次アクセスされるべきトラ
ックをプリステージする、即ち与えることが屡々重要で
ある。サブシステムおよびチャンネルの処理速度が極め
て速く、もしプリステージングが行われなければシステ
ムはかなりの時間に亙ってアイドル状態になるので、プ
リステージングは重要である。この種のシステムでは、
アルゴリズムは代表的には後続トラックをプリステージ
するために貯蔵装置プロセッサ内で用いられ、このアル
ゴリズムはホスト・システムからチャンネル・プログラ
ム内に現れるいくつかのコマンドをインタープリートす
る。
【0030】先行技術のシステムはDASDキャッシュ
内の静的プリステージングを開示しており、即ち固定数
のトラックがプリステージされる。先行技術のシステム
はキャッシュ内のデータのトラックをアクセスする際の
コンピュータの効率をある程度改善するが、固定数のト
ラックのプリステージングは最大パフォーマンスを維持
する際には非効率的である。
【0031】本発明は多重トラック(MT)プリステー
ジング・システムを使用することにより先行技術システ
ムの上述の問題点を解決している。本システムはあるト
ラックから次のトラックに進む場合の余分なオーバヘッ
ドをなくす。また、先行技術と違って1シリンダ分のト
ラックまでプリステージ出来る。典型的なキャッシュ式
システムでは、1シリンダ当たり最大15のトラックが
存在する。
【0032】図4は本発明による順次プリステージング
・プロセスのセット・アップを示す。本システムでは例
示のために1シリンダ当たり15のトラックが存在する
が、1シリンダ当たり任意の数のトラックが存在してよ
い。
【0033】ステップ100はチャンネル・プログラム
およびチェインの終了時の実行を示す。チェインの終了
後、ステップ101でチェインがDASDデバイスとと
もに作動していたか否かが判定される。ノーであれば、
キャッシュ・ヒット(後述)であり、イエスであれば、
キャッシュ・ミスである。ステップ105で、データが
キャッシュにブランチされつつあるか否かが判定され
る。データがキャッシュにブランチされていなければ、
ステップ106でリターンする。データがキャッシュに
ブランチされていれば、トラックの終点(インデックス
点)までデータのステージングが続く。ステップ108
で拡張定義データ・バイトに順次アクセス・モードが設
定されているか否かが判定される。換言すれば、順次チ
ャンネル・プログラムか否かが判定される。ノーであれ
ば、ステップ109でリターンする。イエスであれば、
プリステージングがコンネクタBを介して開始される。
【0034】キャッシュ・ヒットの場合について説明す
るに、ステップ101でチェインがDASDとともに動
作していなかった場合、ステップ102が実行され、順
次アクセス・モードが拡張定義データ・バイト内にセッ
トされたか否かが判定される。ノーであれば、ステップ
106でリターンする。イエスであれば、ステップ10
3に進み、参照されたシリンダ内のトラック12がアク
セスされたか否かが判定される。トラック12が参照さ
れていなければ、ステップ106でリターンする。トラ
ック12が参照されていれば、ステップ104に進む。
ステップ104では、次のシリンダのトラック0が拡張
定義コマンドにより与えられる拡張範囲内にあるか否か
が判定される。ノーであれば、リターンする。イエスで
あれば、次のシリンダをプリステージするための内部コ
マンド・チェイン(ICC)が生成され、ICCがスケ
ジュールされる。
【0035】従って図4は順次多重トラック・プリステ
ージ・ルーチンを示す。
【0036】図5および図6は本発明による順次プリス
テージ・ルーチンのフロー図を示す。再スケジュールさ
れたプリステージ動作の故に、または接続点Aを介して
(キャッシュ・ヒットの場合)次のシリンダの新しいプ
リステージを遂行するためにステップ200で処理が始
まる。ステップ200で、DASDが多重トラック・プ
リステージのために向きを正される。本質的には、DA
SDはトラックの始点に向けられる。次いでステップ2
01で、現行トラックがキャッシュ内にステージされ
る。次にステップ202(接続点Bを介して)に進む。
これはキャッシュ・ミスの場合である。キャッシュ・ミ
スはオリエンテーション損失または余分のDASD回転
なしにDASDのステージング動作を続行することを可
能にする。
【0037】ステップ202で、トラック上にステージ
された最後のレコードがファイル終点レコードであった
か否かが判定される。本発明でファイル終点レコードと
は計数フィールド内のキー長およびデータ長がともにゼ
ロであることを意味する。ファイル終点レコードであれ
ば、ステップ216でリターンする。そうでなければ、
ステップ203で、ステージされたトラックがシリンダ
内の最後のトラックか否かが判定される。最後のトラッ
クであれば、ステップ216でリターンする。そうでな
ければ、ステップ204で、シリンダ内の次のトラック
がDXデータ・バイト内に与えられた拡張範囲内にある
か否かが判定される。
【0038】ノーであれば、ステップ216でリターン
する。イエスであれば、ステップ205で次のトラック
が既にキャッシュ内にあるか否かが判定される。トラッ
クがキャッシュ内にあれば、ステップ216でリターン
する。そうでなければ、ステップ206に進む。ステッ
プ206で、プリステージすべき次のトラックを貯蔵す
るに十分なスペースがキャッシュ内にあるか否かが判定
される。キャッシュ内に十分なスペースがなければ、ス
テップ216でリターンする。十分なスペースがあれ
ば、ステップ207に進む。
【0039】ステップ207で、拡張順次アクセス・モ
ードがセットされたか否かが判定される。このステップ
は、プリステージ・プロセスが中断されるためには最小
3トラックプリステージされるべきかまたは5トラック
がプリステージされるべきかを判断する。ノーであれ
ば、3トラック、プリステージすることを試みる。イエ
スであれば、5トラック、プリステージすることを試み
る。
【0040】ステップ208は現行プリステージ動作で
3以上のトラックがプリステージされたか否かが判定さ
れる。ノーであれば、ステップ217に進み、次のトラ
ックにヘッドが切り替えられる。次にステップ201で
このトラックがキャッシュにステージされる。ステップ
208でイエスであれば、ステップ210に進む(接続
点Cを経て)。ステップ209で、5以上のトラックが
現行プリステージ動作でプリステージされたか否かが判
定される。ノーであれば、ステップ217に進み、ヘッ
ドが次のトラックに切り替えられる。ステップ201
で、このトラックがキャッシュにステージされる。イエ
スであれば、ステップ210に進む。
【0041】ステップ210、211、212、214
は他の仕事が未処理の場合に順次プリステージ動作がD
ASDまたは貯蔵装置パスを過当に使うのを防ぐための
ものである。ステップ210は現在プリステージを実行
しているDASDに対して仕事が順番待ちしているか否
かを判定する。イエスであれば、後述するステップ21
3に進む。ノーであれば、ステップ211に進む。ステ
ップ211は2以上のプリステージ動作が進行中か否か
を判定する。2以上が進行中でなければ、コンネクタD
を介してステップ217へ進み、次のトラックがキャッ
シュにステージされる。イエスであれば、ステップ21
2に進む。
【0042】ステップ212では、4以上のDASDリ
クエスト型の物理的デバイスに対して順番待ちしている
か否かが判定される。イエスであれば、接続点Eを介し
てステップ213に進む。ノーであれば、接続点Dを介
してステップ217に進み、次のトラックがキャッシュ
にステージされる。ステップ213では、プリステージ
動作がシリンダの終端から3トラックより少ないか否か
が判定される。イエスであれば、接続点Dを介してステ
ップ217に進みキャッシュへのデータのステージング
を続ける。ノーであれば、ステップ214に進み、プリ
ステージ・プロセスを中断し、次のトラックで開始する
ICCプリステージを再スケジュールする。次いでステ
ップ215でリターンする。
【0043】
【発明の効果】先行技術が固定数(2個)のトラックを
プリステージするのの対し、本発明はn(本実施例では
3乃至15)サイズの群にトラックを動的にプリステー
ジする点で先行技術のプリステージング・システムに対
する改良である。プリステージ当たりのトラック数の観
点からプリステージ・サイクルを長くすることにより、
プロセスの効率が改善される。従って、プロセスのセッ
ト・アップの時間を含めてより短い時間でより多くのデ
ータをプリステージ出来る。更に、所定数のトラックを
プリステージする場合システム・インターフェースの拘
束時間が短くなる。また、本システムは適応性であり、
物理的デバイスに対するチャンネルI/Oまたは内部リ
クエストがサブシステムの性能を改善するためにプリス
テージングを中断することが出来る。
【図面の簡単な説明】
【図1】本発明のシステムおよび方法を実施する際に用
いられるデータ処理装置のブロック図である。
【図2】図1のデータ処理装置の貯蔵装置制御装置のブ
ロック図である。
【図3】貯蔵装置パス・プロセッサのブロック図であ
る。
【図4】本発明に従いプリステージングするためシステ
ムを設定するフロー・チャートである。
【図5】本発明によるプリステージング・システムのフ
ロー・チャートの1部分であり、図6と一体で1つのフ
ロー・チャートを構成する。
【図6】本発明によるプリステージング・システムのフ
ロー・チャートの他の部分であり、図5と一体で1つの
フロー・チャートを構成する。
【符号の説明】
12 貯蔵装置コン
トローラ 14、16、18、20 ホスト・コン
ピュータ 22、24、26、28、30、32 DASD
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジョエル・ハーベイ・コード アメリカ合衆国アリゾナ州、ツーソン イ ースト・フォアシル 7901番地 (72)発明者 ジョセフ・スミス・ハイド アメリカ合衆国アリゾナ州、ツーソン イ ースト・ミラマー・ドライブ 6230番地 (72)発明者 ラリー・リチャード・ペリー アメリカ合衆国カリフォルニア州、ギルロ イ デイ・ロード 1180−ビー番地

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】複数個のホスト・プロセッサ、キャッシュ
    を有し前記複数個のホスト・プロセッサにつながれた貯
    蔵装置コントローラ、および前記貯蔵装置コントローラ
    につながれた複数個の直接アクセス型貯蔵装置デバイス
    (DASD)よりなるデータ・プロセッシング・システ
    ムにおいて、前記キャッシュ内のデータにアクセスする
    方法であって、(a)トラックの順次アクセスを実行す
    べきか否かを判定し、(b)順次アクセスの実行であれ
    ばトラックを前記キャッシュ内へステージし、(c)前
    記複数個のDASDから次のトラックが得られるか否か
    を判定し、(d)次のトラックが得られる場合該トラッ
    クを貯蔵するに十分なスペースが前記キャッシュ内にあ
    るか否かを判定し、(e)前記キャッシュ内に十分なス
    ペースがある場合所定数のトラックがプリステージされ
    たか否かを判定し、(f)所定数のトラックがプリステ
    ージされた場合他の指定アクティビティがシステム内に
    あるか否かを判定し、(g)システム内に他の指定アク
    ティビティがある場合プリステージ動作を中断する、ス
    テップよりなるキャッシュ内のデータにアクセスする方
    法。
  2. 【請求項2】前記ステップ(c)は、(c−1)トラッ
    クが読み出すべき最後のレコードか否かを判定し、(c
    −2)トラックが読み出すべき最後のレコードでない場
    合該トラックがシリンダ内の最後のトラックか否かを判
    定し、(c−3)トラックがシリンダ内の最後のトラッ
    クでない場合次のトラックがデータ・バイトの拡張定義
    範囲内にあるか否かを判定し、(c−4)次のトラック
    が拡張定義範囲内にある場合該次のトラックが既に前記
    キャッシュ内にあるか否かを判定し、(c−5)次のト
    ラックが前記キャッシュ内にない場合前記キャッシュ内
    に十分なスペースがあるか否かを判定する、ステップを
    含む、請求項1のキャッシュ内のデータにアクセスする
    方法。
  3. 【請求項3】前記ステップ(f)は、(f−1)前記D
    ASDに対して他の仕事が順番待ちしているか否かを判
    定し、(f−2)他の仕事が順番待ちしていない場合2
    以上のプリステージ動作が進行中か否かを判定し、(f
    −3)2以上のプリステージ動作が進行中でない場合少
    なくとも3個のDASDが他の物理的デバイスに対して
    順番待ちであるか否かを判定し、(f−4)3個のDA
    SDが他のデバイスに対して順番待ちしていない場合シ
    リンダの終りまでに3を越えないトラックがあるか否か
    を判定し、(f−5)前記ステップ(f−1),(f−
    2)および(f−3)に対する判定がイエスで前記ステ
    ップ(f−4)に対する判定がノーの場合プリステージ
    動作を中断する、ステップを含む、請求項1のキャッシ
    ュ内のデータにアクセスする方法。
  4. 【請求項4】複数個のホスト・プロセッサ、キャッシュ
    を有し前記複数個のホスト・プロセッサにつながれた貯
    蔵装置コントローラ、および前記貯蔵装置コントローラ
    につながれた複数個の直接アクセス型貯蔵装置デバイス
    (DASD)よりなるデータ・プロセッシング・システ
    ムにおいて前記キャッシュ内のデータにアクセスするシ
    ステムであって、(a)トラックの順次アクセスを実行
    すべきか否かを判定する手段と、(b)前記手段(a)
    に応答して前記キャッシュ内にトラックをステージする
    手段と、(c)前記手段(b)に応答して次のトラック
    が前記複数個のDASDの1つから得られるか否かを判
    定する手段と、(d)前記手段(c)に応答して前記キ
    ャッシュ内にトラックを貯蔵するに十分なスペースがあ
    るか否かを判定する手段と、(e)前記手段(d)に応
    答して所定数のトラックがプリステージされたか否かを
    判定する手段と、(f)前記手段(e)に応答してシス
    テム内に他の指定アクティビティがあるか否かを判定す
    る手段と、(g)前記手段(f)に応答してプリステー
    ジ動作を中断する手段と、よりなるキャッシュ内のデー
    タにアクセスするシステム。
  5. 【請求項5】前記手段(c)は、(c−1)トラックが
    読み出すべき最後のトラックか否かを判定する手段と、
    (c−2)前記手段(c−1)に応答してトラックがシ
    リンダ内の最後のトラックか否かを判定する手段と、
    (c−3)前記手段(c−2)に応答して次のトラック
    がデータ・バイトの拡張定義範囲内にあるか否かを判定
    する手段と、(c−4)前記手段(c−3)に応答して
    次のトラックが前記キャッシュ内に既に存在するか否か
    を判定する手段と、(c−5)前記手段(c−4)に応
    答して前記キャッシュ内に十分なスペースがあるか否か
    を判定する手段と、を含む、請求項4のキャッシュ内の
    データにアクセスするシステム。
  6. 【請求項6】前記手段(f)が、(f−1)他の仕事が
    1つのDASDに対して順番待ちしているか否かを判定
    する手段と、(f−2)前記手段(f−1)に応答して
    2以上のプリステージ動作が進行中か否かを判定する手
    段と、(f−3)前記手段(f−2)に応答して少なく
    との3つのDASD動作が他の物理的デバイスに対して
    順番待ちか否かを判定する手段と、(f−4)前記手段
    (f−3)に応答してシリンダの終りまでに3を越えな
    いトラックがあるか否かを判定する手段と、(f−5)
    前記手段(f−1),(f−2),(f−3)および
    (f−4)に応答してプリステージ動作を中断する手段
    と、を含む、請求項5のキャッシュ内のデータにアクセ
    スするシステム。
JP5264440A 1992-12-22 1993-10-22 キャッシュ内のデータにアクセスする方法およびシステム Pending JPH07225715A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US995276 1992-12-22
US07/995,276 US5426761A (en) 1992-12-22 1992-12-22 Cache DASD sequential staging and method

Publications (1)

Publication Number Publication Date
JPH07225715A true JPH07225715A (ja) 1995-08-22

Family

ID=25541608

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5264440A Pending JPH07225715A (ja) 1992-12-22 1993-10-22 キャッシュ内のデータにアクセスする方法およびシステム

Country Status (2)

Country Link
US (1) US5426761A (ja)
JP (1) JPH07225715A (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3183719B2 (ja) * 1992-08-26 2001-07-09 三菱電機株式会社 アレイ型記録装置
US5867685A (en) * 1995-08-29 1999-02-02 Storage Technology Corporation System and method for sequential detection in a cache management system
US6865642B2 (en) 1998-06-24 2005-03-08 International Business Machines Corporation Method and apparatus for disk caching for an intermediary controller
US6327644B1 (en) 1998-08-18 2001-12-04 International Business Machines Corporation Method and system for managing data in cache
US6381677B1 (en) 1998-08-19 2002-04-30 International Business Machines Corporation Method and system for staging data into cache
US6141731A (en) * 1998-08-19 2000-10-31 International Business Machines Corporation Method and system for managing data in cache using multiple data structures
US6449697B1 (en) 1999-04-23 2002-09-10 International Business Machines Corporation Prestaging data into cache in preparation for data transfer operations
US6944702B1 (en) * 2002-06-26 2005-09-13 Emc Corporation Data storage system
US6914784B1 (en) 2002-06-26 2005-07-05 Emc Corporation Data storage system cabinet
US7120759B2 (en) * 2003-08-29 2006-10-10 International Business Machines Corporation Storage system and method for prestaging data in a cache for improved performance
US7277991B2 (en) * 2004-04-12 2007-10-02 International Business Machines Corporation Method, system, and program for prefetching data into cache
US8856278B2 (en) * 2005-11-16 2014-10-07 Netapp, Inc. Storage system for pervasive and mobile content
CN100507818C (zh) * 2006-04-30 2009-07-01 国际商业机器公司 使用户能够在一个文档中选择多个对象的方法及装置
US8095750B2 (en) * 2007-05-14 2012-01-10 International Business Machines Corporation Transactional memory system with fast processing of common conflicts
US9141525B2 (en) * 2011-01-31 2015-09-22 International Business Machines Corporation Adaptive prestaging in a storage controller
US9509617B1 (en) * 2016-02-09 2016-11-29 Grubhub Holdings Inc. Auto load transfer in geographically distributed systems
US10996967B1 (en) * 2016-06-24 2021-05-04 EMC IP Holding Company LLC Presenting virtual disks as dual ported drives to a virtual storage system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01314327A (ja) * 1988-06-14 1989-12-19 Fujitsu Ltd データ先読み制御方式
JPH0477942A (ja) * 1990-07-19 1992-03-12 Fujitsu Ltd キャッシュメモリに対する前取出し機能停止方式

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59100964A (ja) * 1982-12-01 1984-06-11 Hitachi Ltd ディスク制御システム及びその並列データ転送方法
US4603380A (en) * 1983-07-01 1986-07-29 International Business Machines Corporation DASD cache block staging
US4882642A (en) * 1987-07-02 1989-11-21 International Business Machines Corporation Sequentially processing data in a cached data storage system
US5253351A (en) * 1988-08-11 1993-10-12 Hitachi, Ltd. Memory controller with a cache memory and control method of cache memory including steps of determining memory access threshold values

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01314327A (ja) * 1988-06-14 1989-12-19 Fujitsu Ltd データ先読み制御方式
JPH0477942A (ja) * 1990-07-19 1992-03-12 Fujitsu Ltd キャッシュメモリに対する前取出し機能停止方式

Also Published As

Publication number Publication date
US5426761A (en) 1995-06-20

Similar Documents

Publication Publication Date Title
US6230239B1 (en) Method of data migration
US6272571B1 (en) System for improving the performance of a disk storage device by reconfiguring a logical volume of data in response to the type of operations being performed
US6381677B1 (en) Method and system for staging data into cache
US5771367A (en) Storage controller and method for improved failure recovery using cross-coupled cache memories and nonvolatile stores
US5404500A (en) Storage control system with improved system and technique for destaging data from nonvolatile memory
US4468730A (en) Detection of sequential data stream for improvements in cache data storage
JPH07225715A (ja) キャッシュ内のデータにアクセスする方法およびシステム
JP3254429B2 (ja) データ転送/管理システム及び方法
JPH05307440A (ja) データ記憶フォーマット変換方式及びその変換方法及びアクセス制御装置及びデータアクセス方法
US5694570A (en) Method and system of buffering data written to direct access storage devices in data processing systems
JPH10105344A (ja) データ記録装置システム及びそのデータ書込方法
JPH04288615A (ja) ディスク回転位置制御を行うキャッシュ付きdasdサブシステム及びその実行方法
JPH07281840A (ja) 2重化ディスク記録装置
JP2759920B2 (ja) Dasd周辺データ記憶サブシステムの作動方法及び装置
JPH10149260A (ja) ディスクドライブにおける読出キャッシュ方式
US6223251B1 (en) Disk processing apparatus and a recording medium for recording a disk control program
JPH0863394A (ja) 記憶装置システムおよび記憶装置の制御方法
JP3122702B2 (ja) ディスク装置のライトバック制御方法
US5893918A (en) System and method for rotational position sensing miss avoidance in direct access storage devices
JPH06332622A (ja) 情報処理装置
US6957302B2 (en) System and method for performing write operations in a disk drive using a write stack drive
JPH04311216A (ja) 外部記憶制御装置
JP2973474B2 (ja) 光磁気ディスク装置
JP2569773B2 (ja) 記憶サブシステム
JP2001209577A (ja) 情報記録再生装置