JPS58155464A - 順次デ−タ・ストリ−ムの検出方法 - Google Patents

順次デ−タ・ストリ−ムの検出方法

Info

Publication number
JPS58155464A
JPS58155464A JP57208376A JP20837682A JPS58155464A JP S58155464 A JPS58155464 A JP S58155464A JP 57208376 A JP57208376 A JP 57208376A JP 20837682 A JP20837682 A JP 20837682A JP S58155464 A JPS58155464 A JP S58155464A
Authority
JP
Japan
Prior art keywords
data
host computer
storage device
long
record
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
JP57208376A
Other languages
English (en)
Inventor
ピ−・デ−ビツド・ドツド
ロナルド・エル・ブリツケンスタツフ
リチヤ−ド・エル・ク−ルソン
ロバ−ト・ジエイ・モレノ
ブライアン・イ−・トレ−ド
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Storage Technology Corp
Original Assignee
Storage Technology 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 Storage Technology Corp filed Critical Storage Technology Corp
Publication of JPS58155464A publication Critical patent/JPS58155464A/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/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
    • 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
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/6026Prefetching based on access pattern detection, e.g. stride based prefetch
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/6028Prefetching based on hints or prefetch instructions

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)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔発明の属する技術分野の説明〕 本発明は、データの記憶および管理の分野に関する。特
に、本発明は、上位コンピュータによる長期の記憶から
要求された特定のデータ・セットが呼出されるべき一連
のこのようなセットの一部となるかどうかを検出するた
めの方法に関する。
〔従来技術の説明および発明の詳細な説明〕最近のデー
タ処理システムは一般に、演算論理装置およびこの時処
理中のデータおよび命令の拘束のための主記憶装置を含
む上位コンピュータと、他の場合のデータおよび処理命
令の記憶のための長期記憶装置とを含む。この長期記憶
装置は一般にチャネルにより上位コンピュータと接続さ
れている。上位コンピュータは、特定のデータ・セット
即ちレコードを要求する時、長期記憶装置に対するチャ
ネル上に指令を発し、この記憶装置は次に、これが格納
されているどんな媒体からでも、例えば磁気ディスクま
たはテープ状の記憶媒体からでも上位コンピュータの主
記憶装置に対するチャネルを介してデータの読出を行な
う。長期記憶装置からのデータの検索のため必要な時間
の実質長さが上位コンピュータのスルーブツト即ち使用
量を制約する。この上位コンピュータの使用における損
失を最小限度に抑えるため、上位コンピュータは一般に
データに対する一連の要求を発し、次いでこのデータが
長期ディスクまたはテープ・メーモリーから検索されつ
つある間他のタスクを実施する。し力・し、このような
「待機」が実施されつつある時でさえ、データのアクセ
スのため必要な時間のため上位コンピュータの演算時間
のかなりの時間的損失が存在する。従って、当技術にお
いては未解決の問題を擁し、本発明の目的は待合せ時間
を短縮することにより上位コンピュータのスループット
を改善することにある。
従来技術においては、上位コンピュータにより発される
「シーク」指令の目的である全てのデータを取巻くデー
タの、ディスクまたはテープ記憶テート・メモリーに対
する「ステージング(sta−ging) Jによって
このような待合せ時間を短縮することが提起されてきた
。このソリッド9・ステート・メモリーは上位コンピュ
ータに対して外部に、即ち上位コンピュータからのチャ
ネルの外側に配置されている。このように、上位コンピ
ュータがその後の「読出し」指令を発すると、求めたデ
ータは既に高速のソリッド9・ステート・メモリー内に
保有され、上位コンピュータに対し略々即時に供給する
ことができる。しかし、もし上位コンピュータによりア
クセスされたレコードを取巻く全てのデータ・セットが
前述の如き上位コンピュータに対して外部のソリッド9
・ステート・メモリーに読込まれるならば、データがキ
ャッシュ・メモリーに読込まれる開裂するチャネルおよ
びディレクタの使用時間がディスクがらキャッシュ・メ
モリーに対して読込まれるべきデータ・セットに対して
必要とさ−れる実際の待ち時間に加えられるため、待合
せの問題は完全には排除されないのである。
更に、データが上位コンピュータによりアクセススされ
る方法には一般に2通りある。あるデータ・セットにお
ける全てのデータは一時に上位コンピュータにより呼出
すことができ、あるいはこの上位コンピュータはデータ
・セットの各々が要求されろ時その各部分の個別の呼出
しを開始することもできる。第一の場合は、入力および
出力要求をそれぞれ満足゛するために単独の待時間(l
atencytime)を必要とするので、システムに
対するキャッシュメモリ付加は性能改善とならない。第
二の場合は、各個の上位コンピュータの命令がテープま
たはディスク・ドライブの如き、物理レコードの一部を
連続してアクセスする典型的な命令の連続する一部のと
きは、データセットの一部をアクセスするための各呼び
の待時間がある。この場合は、その後の要求がある時第
2の連続する物理アクセス操作を含むことな(ソリッド
・ステート・メモリーから直接溝たすことができるため
、もし一連のデータ部分がキャッシュ・メモリーに読込
まれるならば、待ち時間は1つの待ち時間を含む1回の
アクセス操作の待ち時間まで短縮することができる。、
即ち、もしデータがその後の「シーク」指令を予期して
一時保管されるならば、このデータは「読出し」指令の
発生と同時に即時使用可能となる。従って、入出力要求
に応答して上位コンピュータに対し供給されたデータが
、そのような要求シーケンスの一部であるかを判定する
ための装置が設けられ、その要求により求められる規則
的な系列をなすデータのみがキャッシュされていること
が望ましい。このように、キャッシュの使用状態は無順
序操作の犠牲によることなく最適化されることになる。
無論、上位コンピュータにとっては、特定の呼出された
データ・セットがかかる一連のセットの一部をなすかど
うかを示す信号を発することは不可能ではない。このこ
とは、長期データ記憶装置からキャッシュ・メモリーに
対してその後レコードを「ステージング」するかどうか
についての判定を簡単にすることは勿論である。しかし
、今日の商業用計算システム(IBM社のコンピュータ
群の如き)はこのような信号は生じない。これらのコン
ピュータの改修は望ましくな(、また特にこのような変
更の如き信号を提供するためこれらのオペレーティング
・システムの改修は構築ヲ正確に行なうことが難しく、
コンピュータのユーザにとっては一般的ではない。
従って、効率的な一時保管操作のためこれに従わな(・
データが従来技術における同じ方法で処理される間、上
位コンピュータにより求められる特定のデータ・セット
がかかる一連のセットの一部をなすかどうかについて判
定を行なう改善された装置および方法を用いることによ
りデータ機能の一時保管をより効率的にすることが望ま
しい。
本発明の別の目的は、上位コンピュータの改修を必要と
せずに上位コンピュータ・システムのスループットを改
善するように順次のデータ・セットを一時保管すること
ができるシステムの提供にある。
本発明の更に別の目的は、あるデータ・レコーを検出す
るための装置および方法の提供にあって、これら装置お
よび方法がデータ・レコード自体に保有される情報を用
いて作動し、以て本発明の方法の構成が簡単になり比較
的安価となる装置の提供にある。
〔本発明の要点〕
本発明は、上位コンピュータにより長期データ記憶装置
から読出される各データ記録を試験することにより前述
の如き技術上の要求および本発明の諸口的を満たすもの
である。データに含まれる制御信号および(従来の)チ
ャネル・プログラムを用いて、このデータ記録が長期記
憶装置において一緒に記憶された一連のレコードの1つ
でないことの表示を行なう。もしこれらの表示が長期記
憶装置から上位コンピュータへのあるレコードの「検索
」の間に見出されなげれば、連続するレコードはこの時
一時保管される。711次の各「読出し要求」を上位コ
ンピュータから受取ると同時に、上位コンピュータの要
求が可能ならばキャッシュから満たされるようKどのレ
コード9が一時保管されたかを追跡するディレクトリと
比較される。ある特定の望ましい実施態様においては、
もしあるディスクのトラックにおける最初のレコード9
がディスク記憶装置から上位コンピュータへ読込まれる
ならば、このトラックにおけるデータの残りはこの時一
時保管される。もしこのトラックの残りにおけるデータ
が次いで上位コンピュータにより呼出されるならば、前
記のトラックに続くトラックがこの時上位コンピュータ
の干渉なくして一時保管され14、というように作動す
るのである。
〔実施例による説明〕
本発明については図面を照合することにより更によ(理
解されよう。
前述の如く、本発明の順次のデータ・ストリームの検出
方法は、1981年11月27日出願の係属中の米国特
許出願第325,346号の主題であるキャッシュ・メ
モリー・バッファド・サブシステム内において作動する
ように特に構成されている。前述の係属中の米国特許出
願の主題であり。
かつ本発明の一部を構成このキャッシュ・メモリー・バ
ッファド9・システムの主たる目的は、実際にデータを
要求中の上位コンピュータに先立って速度が比較的遅い
長期磁気記憶装置から典型的にはソリッド・ステート・
メモリーである速度の速いアクセス・メモリーにデータ
を読込むことにより上位コンピュータにより与えられた
「シーク」命令を完了するに要する待ち時間の節減にあ
る。
このように、もし一時保管されたレコード9がこの時呼
出されるならば、物理的な遅れは遭遇する必要がない、
明らかに、実際に順次アクセスされる一連のレコーPの
一部をなすレコード9のみがソリッドトステート・メモ
リー即ち「キャッシュ」に対してステージングされるこ
とが望ましい。さもなければ、データの一時保管は、シ
ークされるほとんど全て、例えば90%に上るレコード
が実際に逐次のものである時にのみ有効な効果を有する
このことは市販の典型的なシステムの場合には妥当しな
い。従って、どのレコード9が一連のレコーPの各部を
なすかを検出してこれらのみを一時保管するためのある
装置が設けられることが望ましい。本発明はこの判断を
行なうための装置に関するものである。
これもまた前に述べたように、本発明は、典型的なIB
M社のオはレーティング宅システムの下で作動するIB
M370シリーズ装置による望ましい実施態様において
上位コンピュータとブラフ・コンパチブルである既に存
在する記憶システムに対する付加設備として作動するキ
ャッシュにより干渉された記憶サブシステム内で作動す
るように構成されている。前述の米国特許出願のシステ
ムの全体的な構成については第1図に示されている。
同図においては、上位コンピュータ10は、全体的に番
号12で示されたチャネル・インターフェース上で指令
およびデータを送出しかつこれからデータを受取る。ア
クセスされるデータが番号14で示される如きディスク
・ドライブにおいて記憶される場合には、アクセス指令
が記憶ディレクタ16に対して送られ、これがこの指令
を実際にディスク・ビライブ14の運動、例えばディス
運動を制御する制御モジュール1Bを制御するために適
当な形態に変換する。以上述べた如とシステムは従来周
知のものである。前述の係属中の米国特許出願の本発明
により付加されるものは番号20により全体的に示され
るキャッシュ・メモリー・サブシステムであり、これは
ソリッド・ステート・キャッシュ・メモリー22と、デ
ィスク・ビライブ14からキャッシュ・メモリー22に
対してどのデータがステージングされるかを判定するた
めのキャッシュ管理装置24からなっている。
このため、本発明の方法を実施するのはこのキャッシュ
管理装置24であり、これについては以下に詳細に説明
することにする。
上位コンピュータ10がディスク記憶システム14から
データを取得するためシーク操作を行なう時、この上位
コンピューオはチャネル12上に充分に定義された「シ
ーク」指令を発し、この指令は記憶管理装置により操作
されて制御モジュール18をしてシークすべきデータを
アクセスさせる。このデータは次に、制御モジュール1
8および記憶ディレクタ18を介してチャネル・インタ
ーフェース12上を上位コンピュータ10に対して返送
される。データの実際の読出しおよび書込みは、これも
またIBM社の出版物番号GA22−6974−4 r
制御装置に対する入出力インターフェース・チャネル」
なる文献においてそれ自体チャネル・インターフェース
である如(IBM社により定義されたチャネル・プログ
ラムの下に実施される。当技術に習熟する者にとっては
明らかなように、この光分に定義されたプロトコル(p
rotocol)はデータ自体がこれ以上のデータ読出
しおよび書込みのための別の命令を含むことを可能にす
る。例えば、もしあるデータ・セットがディスク上のい
くつかの異なる場所、例えばディスク・スタックの中心
軸から様々な距離だけ離れたデータ記憶領域であるい(
つかの異なる「シリンダ」上に記憶されるならば、デー
タの読出しの間「シリンダ・シーク」指令を見出すこと
ができる。この時、制御モジュールおよび記憶ディレク
タはヘット9をしてシークすべき新たなシリンダをアク
セスさせ、かつこの読出し操作を継続させる。
同様な命令がヘット9のシーク指令を含んでいる。
このように、従来技術において一般的であるが、記憶デ
ィレクタは上位コンピュータから受取るものに加えてこ
のような「組合された」指令に従う。
同様に、この記憶ディレクタ自体により保持されたチャ
ネル・プログラムはこのような指令を保有することがで
きる。本発明のシステムは上位コンピュータに対して「
ソフトウ゛エア透過性(softwaretransp
arent月であること、即ちその改修を必要としない
ことが望ましい限り、これはこれらの命令を遵守し続け
る。しかし、この本発明に係るシステムは、ディスクか
ら上位コンピュータに対してデータが読込まれる時この
データを検査するための装置を更に含み、また上位コン
ピュータにより命令された実際の操作の完了後に別のデ
ータがディスクからキャッシュに対してステージングさ
れるべきかどうかKついて判断するためのチャネル・プ
ログラム性能を含んでいる。特に、キャツ/ユ管理装置
24は、データが前述の如き指令に対して記憶ディレク
タ16を通過する時このデータを試験する。もしこのデ
ータが順次性を持たないことの表示を受取らなければ(
以下に更に詳細に説明する)、あるトラック(即ち、あ
るディスクの1つの面における完全な1回転長さにおけ
るデータ記憶領域)に記憶された全てのデータのキャッ
シュに対する読込みを続行する。もしこの時上位コンピ
ュータがこのトラックの残りについて呼出しを行なうな
らば、キャッシュ管理装置はこれを検出して、次のトラ
ックを上位コンピュータの干渉なしにキャッシュに対し
て同様にステージングさせる151等である。この点に
関して、前記の「次のトラック」が同じディスク面上の
最後のトラックと物理的に隣接していないことに注意さ
れたい。ディスク装置の構成に従って、通常はシークお
よび待ち遅延時間の両方の節減のため1つのスタックの
ディスクにおける最後のトラックの上下に配される「次
のトラック」は完全に異なるディスク面上にある。
データの試験が全ての記録について行なわれるが、以降
のトラックがステージングされるべきかどうかについて
の実際の判断はこの要求の終り、即ち従来周知の「チャ
ネル・プログラム」の実施の終りにおいてなされる。こ
のため、本発明は、キャッシュ管理装置24により上位
コンピュータとは独立的に実施される別の判断操作に関
するものである。特に、記憶ディレクタ16はキャッシ
ュ制御装置即ち管理装置24に対して、連続するトラッ
クのステージングの必要性に関する判断をこのキャッシ
ュ管理装置24が行なうことを可能にするある情報即ち
「統計情報」を通知する。現在望ましい実施態様につい
ては、このような統計情報とは下記のものを含んでいる
。即ち、 1、処理されたレコード9の・内トラック上の最初のレ
コードであったか? 2、処理されたレコード9の内トラック上の最後のレコ
ードであったか? 3、処理されたレコード9の内ファイル・レコード9終
りであったか? 4、チャネル・プログラムがキャッシュに対して処理さ
れたか、あるいはディスク配憶装置に対して直接のもの
であったか? 5、キャッシュまたはディスク読出しエラーが存在した
か? 6 チャネル・プログラムにおいて組合せヘッドまたは
シリンダのシーク指令が存在したか?7、(削除) 8、チャネル・、プログラムにおいて書込み指令が生じ
たか? 9、チャネル・プログラムにおいていくつのレコードが
トラックにおいて処理されたか?10、  レコードは
どれだけの間処理されたか?前述の如く、チャネル・プ
ログラムの実行に続いてなされるステージングに関する
判定には2つの基本的な形式がある。最初に、もしこの
チャネル・プログラムが記憶ディレクタからディスク・
ドライブに対して直接処理された、即ち一時保管されな
いレコードが読出されたならば、トラックの残りがキャ
ッシュに対してステージングされるべきかどうかについ
ての疑問が生じる。即ち、上位コンピュータによりシー
クされたレコード9が前に一時保管されたかどうかを調
べるためキャッシュ管理装置によるその後のシークが考
えられる。
何時チャネル・プログラムがキャッシュに対して処理さ
れた時、即ち、このチャネル・プログラムによりシーク
されたデータがキャッシュにおいて見出された時第2の
疑問が生じ、次のディスク・トラック全体をキャッシュ
に対して「予めステージング」することが望ましいかど
うかに関する。
前述の統計情報の内、下記のものがデータが一時保管さ
れることを禁止する。即ち、エラー、書込み指令、組合
せシーク指令、または「ファイルの終り」のレコード9
である。これらはディスク上の次のレコードが必ずしも
読出されたプログラムと同じものの一部で、はないこと
を表示するため、これらは全てキャッシュ操作の必要の
反対表示である。
第2図はフローチャートの形態において判断プロセスを
示している。この示されたプロセスは各読出し操作の完
了時に行なわれる。「非ステージング操作」の標識が索
引されるブロック30において示される如く、この統計
情報のどれかがレコードのステージングを不適格とする
かについての判定を行なうため記憶ディレクタにより保
持された統計情報の試験が最初に実施される。もしこの
ような標識が行なわれるならば、データは62において
示すようにステージングされない。もしこのような標識
がなければ、前のアクセスがディスクから直接上位コン
ピュータに対するものであるか、またこの操作がキャッ
シュから上位コンピュータに対するものであったかどう
かについての次の質疑が判断ブロック34で示される如
く行なわれる。もし操作がディスクから上位コンピュー
タに対するものであれば(ブロック34に対する答えが
「否」)、トラックにおける最初のレコードが読出され
たかどうか、またこのトラックの半分以上がブロック3
6に示される如く読出された状tを維持することについ
てのデータが探索される。
38において示されるようにトラックの残りがステージ
ングされる。問題を転じて、トラックの半分以上が考え
られる理由は、単にこの特定の時点においてステージン
グを行なう意義がある(即ち、トラックの残りのキャッ
シュに対する読込み)ことを確認するためである。書び
ブロック64に戻って、もし前の操作がキャッシュから
上位コンピュータに対するものであったならば、問題は
次のトラックの予備ステージングが必要であるかどうか
である。ブロック40においては、問題は特定のディス
ク・ト9ライブにお〜・て記憶されたレコードに対して
予備ステージングが許されるがどうかについてである。
これにより、システム・デザイナがあるディスク装置に
記憶されたデータを一時保管することを阻止することを
可能にし、即ち、このデザイナが自分の知っているデー
タに対するあるディスクの無作為の節減を可能にする。
例えば、可動ヘット9型デイスク・ドライブよりも一般
に短い待ち時間を有する所謂[固定ヘッド型ディスク」
は通常1t’1次のデータ・セットの場合には使用され
ない。もし予備ステージングが許されなげれば、判断は
単にステージングさせないように行なわれる。もし予備
ステージングが許されるならば、キャッシュ管理装置2
4(第1図)は予備ステージングが必要であるかどうか
について判定する。例えば、判定はトラックの最後のト
ラックが読出されたか、また42で示゛される如くトラ
ックに対して少なくとも6つのアクセス指令が行なわれ
たかどうかの双方について行なわれる。これら両方の考
察は予備ステージングが実施される前に満たされるべき
である。もしそうであれば、予備ステージングは44に
おいてキャッシュに対する次のトラックの読込みにより
実施される。もしトラックの最後のレコーPが読出され
なければ、明らかに予備ステージングは不適当である。
仮にもしこの記述が満たされたとして、もし1トラック
当り6つ以下のアクセス指令しかない場合は、レコー白
家明らかに非常に長く待ち時間に対して失われた作動時
間を可能な限り短くするために予備ステージングは必要
でない。同様に、管理者はある要求において要求された
レコードの長さを調べて、1つ以上のその後の同様な要
求がキャッシュに対してステージングされたデータによ
り他の方法では満たされないようであれば、トラックの
残り以上、または1つの後続のトラック以上にステージ
ングを行なう。
前述のフローチャートについては、これがキャッシュ管
理装置プログラム内のサブプログラムとして作動するよ
うに構成されて(・るため、当業者には理解されよう。
特に、前述の如く本発明の方法は、本発明)譲受人であ
ルStorage Techno−1ogy社から市販
されるモデル8880デイスク・コントローラの内部で
作動するように構成されている。実際に、本発明は、参
考のため本文に引用する前掲の係属中の米国特許出願に
おいて記述した発明と共に、妥当な時間および比較的穏
当なコストでこのディスク・ドライブ・コントローラに
現場において組込み可能である。従って、第2図に示さ
れた判断シーケンスは、あるチャネル・プログラムが実
行される毎に遭遇するサブプログラムとして構成されて
いる。本発明の方法を構成することができる方法が他に
数多くある。例えば、最も後で読込まれたレコードがト
ラックを開始する場合にのみステージングが実施可能で
あり、かつ予備ステージングはトラックの終りにおいて
のみ実施可能である。当業者は数多くの他の手法が可能
であることが判るであろう。
現在望ましい実施特機においては、本発明の判断実施能
力は、記憶ディレクタのコンテナ内に物理的に支持され
たフロッピー・ディスクに恒久的に書込まれ、かつ記憶
ディレクタがONの状態になる毎にソリッド・ステート
のランダム・アクセス・メモリーに対して書込まれたマ
イクロコート9において実施されている。これは、キャ
ッシュ管理機能を実施するための前置記憶ディレクタ・
プロセッサに対して作用的に接続されている。これもま
た当業者にとっては他の多くの方法があることが明らか
であろうが、更新された記憶ディレクタにおける可能な
代替物として、例えば、ZilOg新された記憶ディレ
クタにおける可能な代替物として考えられる。
本発明の方法の完全な「疑似コード」版を本文に付属衣
として添付し参考のため本文に引用する。
この疑似コートゝは、元のプログラマ以外の者にもこの
プログラムを理解することができるように実際のマイク
ロコート9命令と記事を含んでいる。
1”C:hinook Pseudocode Con
ventionsJ  と題された文書を付属書A−i
として添付され、この疑似コード言語について説明する
。付属書Aは「最終チャネル・プログラムの処理法」と
題されたマイクロコート9・モジュールについて説明す
る。これは、プログラムの機能の全般的な説明および記
憶ディレクタの操作のためこれから要求されたビットを
含む作用説明から始めて、種々のサメルーチンおよび必
要とされる種々のレジスタの定義を行なう。大部のプロ
グラムは行01770  (’I)p2.163)  
から始まり、行02730乃至02840として実際の
マイクロコード命令を構成し、これに先立って、例えば
行02630乃至02720  において以下のマイク
ロコードによりなされる判断の主題の英語の説明がある
。第2図に示された判断ノロツクは付属書Aのマイクロ
コードのモジュ5−ルに含まれている0例えば、第2図
に関して本文に説明したステージング決定フローチャー
トは付属書AのI)p 2.169乃至2.178に示
される。
その内、例えば、第2図のブロック60に示されろ判断
内容は行02060乃至02150において英語で、ま
た行02160乃至02390においてマイクロコート
9で示されている。
このマイクロコートおよびこれに添付された機能説明の
残りの部分は、キャッシュの他の様々な機能の理解のた
め用いられるもので、例えば、不活動状態のフレームの
割当て解除については、今述べた許りのステージング決
定に関するものに続くサブモジュールにおいて述べられ
ている。「割当て解除」とは、これによりキャッシュの
ソリッド・ステート・メモリーの領域が再使用のため選
択されるプロセスについて述べ、即ち、キャッシュの一
部に記憶されたデータがもはや上位コンピュータにより
シークされないことがこのサブモジュールによって判断
される。例えば、その内容が前に一時保管されたあるデ
ィスクにおけるある領域に対する上位コンピュータの書
込みと同時に、このキャッシュに記憶されたデータは明
らかにもはや無効であり、従って前記キャッシュのこの
領域は割当てを解除されて空の記憶場所のプールに戻さ
れ、ここでキャッシュ管理装置がステージングされるべ
きデータの割当て″のため選択する。
当業者にとっては、本文に添付された最終チャネル・プ
ログラムの文書は本発明のプロセスの実施において問題
はないであろう。
本発明の理解に関連して本文に参考のため引用する他の
係属中の米国特許出願は下記の如くである。即ち、ソリ
ッド・ステート・キャッシュ・メモリー22に含まれる
記憶空間の構成について論述した1981年11月27
日出願の係属中の米国特許第325,351号を含む。
キャッシュ管理装置により実施されるエラー管理および
回収機能については参考のため本文に引用される198
1年11月27日出願の米国特許第325,287号に
おいて論述されている。また関連しているのは。
参考のため本文に引用されたディスク装置およびキャッ
シュにおける記憶場所間の正確な対応、の維持について
論述する1981年11月27日出願の係属中の米国特
許第325,288号である。
当業者は、本文に述べた当技術の課題および本発明の諸
口的を満たすディスク・レコードの順次性の決定方法に
ついて記述したものであることが認識されよう。更に、
本発明の方法が実施できかつ改善され得る種々の方法が
あること、従って前述の開示内容は本発明の限定と見做
すべきものではなく単なるその例示と考えられるべきも
のであることが判るであろう。本発明は頭書の特許請求
の範囲によって更に適正に規定されるものである。
【図面の簡単な説明】
第1図は本発明が、その一部を構成するシステムを示す
簡単な構成図、および第2図は本発明による判断実施プ
ロセスを示すフローチャートである。 10・・・上位コンピュータ、12・・・チャネル・イ
ンターフェース、14・・・ディスク・ト9ライノ、1
6・・・記憶ディレクタ、18・・・制御モジュール、
2゜・・・キャッシュ・メモリー・サブシステム、22
・・・キャッシュ・メモリー、24・・・キャッシュ管
理装置。 特許出願人 ストレージ・テクノロジー・コーポレーシ
ョン (外4名) −jr々、l F〜、2 第1頁の続き 0発 明 者 ロパート・ジエイ・モレノアメリカ合衆
国コロラド州8030 3ボールダー・ホルメス・ブレ イス5169 0発 明 者 ブライアン・イー・トレードアメリカ合
衆国コロラド用8002 6ラフアイエツト・デルフイ・ ドライブ1215

Claims (1)

  1. 【特許請求の範囲】 1、演算論理装置および主記憶装置を含む上位コンピュ
    ータと、長期記憶装置とからなるクラスのコンピュータ
    ・システムの作動効率を増進させる方法において、 ステージング操作が増進された効率を提供することの標
    識と同時に、前記長期記憶装置から該長期記憶装置と前
    記上位コンピュータ間に挿置されたソリッド・ステート
    ・メモリー装置に対して前記上位コンピュータにより呼
    出されなかったデータのステージング操作を行ない、前
    記標識は前記の前に呼出されたデータが順次のデータ・
    ストリームの一部ではないことの標識についての前に呼
    出されたデータの検査により得られ、前記ステージング
    操作は前記標識が存在しない時にのみ実施されることを
    特徴とする方法。 2、前記標識が連続する記憶場所以外から読出されるよ
    う別Ωデータを送る前記の前に呼出されたデータ内に含
    まれた指令を含むことを特徴とする特許請求の範囲第1
    項記載の方法。 3、前記データが論理トラックに構成されたディスク・
    ドライブ媒体上に記憶され、前記ステージング操作は、
    前記標識が存在しない時および前記の前に読出されたデ
    ータが前記論理トラックの1つの開始部分を含む時にの
    み実施されることを特徴とする特許請求の範囲第1項記
    載の方法。 4、前記長期データ記憶装置はデータがディスク上の同
    、[/状トラックに記憶されるディスク・ドライブ装置
    を含み、前記ステージ操作は一時に1つのトラック全体
    に対して実施され、前記上位コンピュータにより前にス
    テージング操作されたトラックが呼出される時、連続す
    るトラックが前記ンツシュに対してステージング操作さ
    れることを特徴とする特許請求の範囲第1項記載の製油
    −05、チャネル装置を介して長期データ記憶装置と接
    続された上位コンピュータを含み、前記上位コンピュー
    タが前記長期記憶装置に記憶された特定のデータ・レコ
    ー゛ドを呼出丁指令を発するようになされた形式のデー
    タ処理システムの効率を増進させる方法において、 ある特定のデータ・レコードをシークする個々のコンピ
    ュータが発した指令を調べて、このよう((呼出された
    データが前記チャネルに対して外部であるソリッド・ス
    テート・メモリー装置に記憶されるかどうかを判定し、
    もし前記データが前記ソリッド・ステート・メモリー装
    置に記憶されるならば、該データを前記上位コンピュー
    タに対して送出し、 もし前記データが前記ソリッド9・ステート・メモリー
    装置に記憶されていなければ、前記長期データ記憶装置
    における前記データをアクセスしてこれをMff記チャ
    ネル装置を経て前記上位コンピュータニ送り、前記レコ
    ードがかかる一連のレコードゝの1.つであるかどうか
    を判定するため前記長期データ記憶装置から前記上位コ
    ンピュータに対して送られた前記データを検査し、 もし前記判定結果が、前り己レコードがかかるば、これ
    が前記上位コンピュータにより呼出されることを予期し
    て前記の一連のレコードにおける次のレコード9を前記
    長期記憶装置から前記ソリッド9・ステート・メモリー
    装置に対して読込む工程からなることを特徴とする方法
    。 6、あるレコードゝが一連のレコードの1つであること
    の表示が標識に対する前記レコード9の試験によって得
    られ、前記データがかかる一連のレコード9の一部では
    ないことを信号することを特徴とする特許請求の範囲第
    5項記載の方法。 7、 前記データが磁気ディスク・ドライブ装置におい
    て記憶され、前記ディスクはトラックに構成され、前記
    標識は、あるレコード9が同じディスクの同じトラック
    には存在しないレコードを前記上位コンピュータに対し
    て供給することを命令する指令を構成するかがる一連の
    レコードの一部ではないことを信号することを特徴とす
    る特許請求の範囲第6項記載の方法。 8、前記レコードが長期記憶装置に記憶され、前記長期
    記憶装置はトラックに構成されたデータを記憶するため
    のディスク・ドライブ装置を構成し、前記データは前記
    長期記憶装置から前記ソリッド・ステート・メモリー装
    置に対してトラック毎に読込まれることを特徴とする特
    許請求の範囲第5項記載の方法。 9、長期記憶装置と速度が比較的速いソリッド・ステー
    ト・メモリー装置を含み、前記データが上位コンピュー
    タ装置により呼出されることを予期されることの表示と
    同時に1前記ソリツド・ステート・メモ、り一装置が前
    記長期記憶装置において記憶されたデータを含むよう罠
    なされた、ディジタル・データの記憶装置における記憶
    を制御する方法において、前記表示が前記長期記憶装置
    において記憶され前記上位コンピュータ装置に対して前
    に呼出されたデータの検査から得られることを特徴とす
    る方法。 10、前記検査が、前に呼出されたデータの呼出しが前
    記長期記憶装置において順次配憶されなかった他のデー
    タを読出す命令を含むかどうかの検査であることを特徴
    とする特許請求の範囲第9項記載の方法。
JP57208376A 1981-11-27 1982-11-27 順次デ−タ・ストリ−ムの検出方法 Pending JPS58155464A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/325,350 US4468730A (en) 1981-11-27 1981-11-27 Detection of sequential data stream for improvements in cache data storage
US325350 2002-12-19

Publications (1)

Publication Number Publication Date
JPS58155464A true JPS58155464A (ja) 1983-09-16

Family

ID=23267525

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57208376A Pending JPS58155464A (ja) 1981-11-27 1982-11-27 順次デ−タ・ストリ−ムの検出方法

Country Status (5)

Country Link
US (1) US4468730A (ja)
EP (1) EP0080876B1 (ja)
JP (1) JPS58155464A (ja)
CA (1) CA1180466A (ja)
DE (1) DE3279426D1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59502044A (ja) * 1982-11-15 1984-12-06 ストレ−ジ・テクノロジ−・コ−ポレ−ション 逐次デ−タ流の検出
JPS6045855A (ja) * 1983-08-22 1985-03-12 Fujitsu Ltd 磁気ディスク装置の順次アクセス検出方法
JPS61187060A (ja) * 1985-02-15 1986-08-20 Fujitsu Ltd 入出力制御装置
JPS6423355A (en) * 1987-07-02 1989-01-26 Ibm Cache memory management
JPH03164840A (ja) * 1989-08-29 1991-07-16 Microsoft Corp ディスクベースコンピュータシステムにおけるデータキャッシングを最適化する方法及びシステム

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4536836A (en) * 1981-11-27 1985-08-20 Storage Technology Corporation Detection of sequential data stream
US4503501A (en) * 1981-11-27 1985-03-05 Storage Technology Corporation Adaptive domain partitioning of cache memory space
US4724518A (en) * 1983-07-29 1988-02-09 Hewlett-Packard Company Odd/even storage in cache memory
US4604687A (en) * 1983-08-11 1986-08-05 Lucasfilm Ltd. Method and system for storing and retrieving multiple channel sampled data
US4875155A (en) * 1985-06-28 1989-10-17 International Business Machines Corporation Peripheral subsystem having read/write cache with record access
JPS63121179A (ja) * 1986-11-10 1988-05-25 Hitachi Ltd ステ−ジング方法
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
US5218689A (en) * 1988-08-16 1993-06-08 Cray Research, Inc. Single disk emulation interface for an array of asynchronously operating disk drives
US5341479A (en) * 1989-01-31 1994-08-23 Storage Technology Corporation Address mark triggered read/write head buffer
EP0406189B1 (en) * 1989-06-28 1995-07-26 International Business Machines Corporation A method for efficient utilization of removable data recording media
JP2826857B2 (ja) * 1989-12-13 1998-11-18 株式会社日立製作所 キャッシュ制御方法および制御装置
JPH03216751A (ja) * 1990-01-05 1991-09-24 Internatl Business Mach Corp <Ibm> フアイル転送方法
US5325509A (en) * 1991-03-05 1994-06-28 Zitel Corporation Method of operating a cache memory including determining desirability of cache ahead or cache behind based on a number of available I/O operations
US5590300A (en) * 1991-03-05 1996-12-31 Zitel Corporation Cache memory utilizing address translation table
WO1992015933A1 (en) * 1991-03-05 1992-09-17 Zitel Corporation Cache memory system and method of operating the cache memory system
US5594885A (en) * 1991-03-05 1997-01-14 Zitel Corporation Method for operating a cache memory system using a recycled register for identifying a reuse status of a corresponding cache entry
SE469402B (sv) * 1991-05-02 1993-06-28 Swedish Inst Of Computer Scien Foerfarande foer att haemta data till ett cache-minne
CA2074769C (en) * 1991-08-09 2001-03-20 International Business Machines Corporation Formula processor
US5588140A (en) * 1993-03-15 1996-12-24 Computer Network Technology Corporation Transparent extension of peripheral from host
US5586288A (en) * 1993-09-22 1996-12-17 Hilevel Technology, Inc. Memory interface chip with rapid search capability
US5627994A (en) * 1994-07-29 1997-05-06 International Business Machines Corporation Method for the assignment of request streams to cache memories
US6728851B1 (en) 1995-07-31 2004-04-27 Lexar Media, Inc. Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US6978342B1 (en) 1995-07-31 2005-12-20 Lexar Media, Inc. Moving sectors within a block of information in a flash memory mass storage architecture
US5845313A (en) 1995-07-31 1998-12-01 Lexar Direct logical block addressing flash memory mass storage architecture
US8171203B2 (en) 1995-07-31 2012-05-01 Micron Technology, Inc. Faster write operations to nonvolatile memory using FSInfo sector manipulation
US6167496A (en) * 1998-02-18 2000-12-26 Storage Technology Corporation Data stream optimization system for video on demand
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
JP2001101842A (ja) * 1999-09-30 2001-04-13 Fujitsu Ltd ディスク装置
US7102671B1 (en) 2000-02-08 2006-09-05 Lexar Media, Inc. Enhanced compact flash memory card
US7167944B1 (en) 2000-07-21 2007-01-23 Lexar Media, Inc. Block management for mass storage
US7275135B2 (en) * 2001-08-31 2007-09-25 Intel Corporation Hardware updated metadata for non-volatile mass storage cache
GB0123419D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Data handling system
GB0123416D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Non-volatile memory control
GB0123417D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Improved data processing
GB0123415D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Method of writing data to non-volatile memory
GB0123410D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Memory system for data storage and retrieval
GB0123421D0 (en) * 2001-09-28 2001-11-21 Memquest Ltd Power management system
US20030074524A1 (en) 2001-10-16 2003-04-17 Intel Corporation Mass storage caching processes for power reduction
US6950918B1 (en) 2002-01-18 2005-09-27 Lexar Media, Inc. File management of one-time-programmable nonvolatile memory devices
US6957295B1 (en) 2002-01-18 2005-10-18 Lexar Media, Inc. File management of one-time-programmable nonvolatile memory devices
US7231643B1 (en) 2002-02-22 2007-06-12 Lexar Media, Inc. Image rescue system including direct communication between an application program and a device driver
US6973519B1 (en) 2003-06-03 2005-12-06 Lexar Media, Inc. Card identification compatibility
EP1695304A4 (en) 2003-12-17 2011-09-28 Lexar Media Inc POINT-OF-SALE ACTIVATION OF ELECTRONIC DEVICES TO AVOID THEFT
US20050138296A1 (en) * 2003-12-18 2005-06-23 Coulson Richard L. Method and system to alter a cache policy
US7725628B1 (en) 2004-04-20 2010-05-25 Lexar Media, Inc. Direct secondary device interface by a host
US7370166B1 (en) 2004-04-30 2008-05-06 Lexar Media, Inc. Secure portable storage device
US7877546B2 (en) * 2004-08-09 2011-01-25 International Business Machines Corporation System, method, and circuit for retrieving data in data blocks into a cache memory from a mass data storage device based on a triggering event
US7594063B1 (en) 2004-08-27 2009-09-22 Lexar Media, Inc. Storage capacity status
US7464306B1 (en) 2004-08-27 2008-12-09 Lexar Media, Inc. Status of overall health of nonvolatile memory

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5515756A (en) * 1978-07-21 1980-02-04 Tokyo Menki Kk Noodle band forming and rolling apparatus in noodle making machine
JPS5528197A (en) * 1978-06-30 1980-02-28 Bunker Ramo Device for combining data processing system with magnetic data memory subsystem
JPS5616257A (en) * 1979-07-19 1981-02-17 Fujitsu Ltd Disc cash control system
JPS57111757A (en) * 1980-12-29 1982-07-12 Fujitsu Ltd Track buffer memory system
JPS57152028A (en) * 1981-03-06 1982-09-20 Ibm Peripheral subsystem
JPS57152060A (en) * 1981-03-06 1982-09-20 Ibm Operation of buffer type data recorder
JPS57211657A (en) * 1981-06-05 1982-12-25 Ibm Data processing system
US4458316A (en) * 1981-03-06 1984-07-03 International Business Machines Corporation Queuing commands in a peripheral data storage system

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3566358A (en) * 1968-03-19 1971-02-23 Bevier Hasbrouck Integrated multi-computer system
US3898624A (en) * 1973-06-14 1975-08-05 Amdahl Corp Data processing system with variable prefetch and replacement algorithms
GB1515376A (en) * 1975-07-09 1978-06-21 Int Computers Ltd Data storage systems
US4084231A (en) * 1975-12-18 1978-04-11 International Business Machines Corporation System for facilitating the copying back of data in disc and tape units of a memory hierarchial system
US4296465A (en) * 1977-11-03 1981-10-20 Honeywell Information Systems Inc. Data mover
US4371927A (en) * 1977-11-22 1983-02-01 Honeywell Information Systems Inc. Data processing system programmable pre-read capability
GB2052118A (en) * 1979-06-04 1981-01-21 Memorex Corp Disc Cache Subsystem
US4371929A (en) * 1980-05-05 1983-02-01 Ibm Corporation Multiprocessor system with high density memory set architecture including partitionable cache store interface to shared disk drive memory
US4394732A (en) * 1980-11-14 1983-07-19 Sperry Corporation Cache/disk subsystem trickle

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5528197A (en) * 1978-06-30 1980-02-28 Bunker Ramo Device for combining data processing system with magnetic data memory subsystem
US4399503A (en) * 1978-06-30 1983-08-16 Bunker Ramo Corporation Dynamic disk buffer control unit
JPS5515756A (en) * 1978-07-21 1980-02-04 Tokyo Menki Kk Noodle band forming and rolling apparatus in noodle making machine
JPS5616257A (en) * 1979-07-19 1981-02-17 Fujitsu Ltd Disc cash control system
JPS57111757A (en) * 1980-12-29 1982-07-12 Fujitsu Ltd Track buffer memory system
JPS57152028A (en) * 1981-03-06 1982-09-20 Ibm Peripheral subsystem
JPS57152060A (en) * 1981-03-06 1982-09-20 Ibm Operation of buffer type data recorder
US4428064A (en) * 1981-03-06 1984-01-24 International Business Machines Corporation Controlling buffered peripheral subsystems
US4458316A (en) * 1981-03-06 1984-07-03 International Business Machines Corporation Queuing commands in a peripheral data storage system
JPS57211657A (en) * 1981-06-05 1982-12-25 Ibm Data processing system
US4490782A (en) * 1981-06-05 1984-12-25 International Business Machines Corporation I/O Storage controller cache system with prefetch determined by requested record's position within data block

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59502044A (ja) * 1982-11-15 1984-12-06 ストレ−ジ・テクノロジ−・コ−ポレ−ション 逐次デ−タ流の検出
JPS6045855A (ja) * 1983-08-22 1985-03-12 Fujitsu Ltd 磁気ディスク装置の順次アクセス検出方法
JPS6351297B2 (ja) * 1983-08-22 1988-10-13 Fujitsu Ltd
JPS61187060A (ja) * 1985-02-15 1986-08-20 Fujitsu Ltd 入出力制御装置
JPS6423355A (en) * 1987-07-02 1989-01-26 Ibm Cache memory management
JPH0574102B2 (ja) * 1987-07-02 1993-10-15 Ibm
JPH03164840A (ja) * 1989-08-29 1991-07-16 Microsoft Corp ディスクベースコンピュータシステムにおけるデータキャッシングを最適化する方法及びシステム

Also Published As

Publication number Publication date
EP0080876A3 (en) 1985-07-10
CA1180466A (en) 1985-01-02
DE3279426D1 (en) 1989-03-09
EP0080876A2 (en) 1983-06-08
EP0080876B1 (en) 1989-02-01
US4468730A (en) 1984-08-28

Similar Documents

Publication Publication Date Title
JPS58155464A (ja) 順次デ−タ・ストリ−ムの検出方法
US4536836A (en) Detection of sequential data stream
KR940005775B1 (ko) 디스크 파일 개방 방법
US8327076B2 (en) Systems and methods of tiered caching
US7383392B2 (en) Performing read-ahead operation for a direct input/output request
US6842801B2 (en) System and method of implementing a buffer memory and hard disk drive write controller
US5987479A (en) Large block allocation for disk-based file systems
US5140683A (en) Method for dispatching work requests in a data storage hierarchy
US6691136B2 (en) Fast data retrieval based upon contiguous consolidation of records according to frequency of access
US6205529B1 (en) Method and apparatus for defragmenting a storage device using a copy function in the device control logic
JPH05307440A (ja) データ記憶フォーマット変換方式及びその変換方法及びアクセス制御装置及びデータアクセス方法
US6842824B2 (en) Cache control program and computer for performing cache processes utilizing cache blocks ranked according to their order of reuse
CN108628542B (zh) 一种文件合并方法及控制器
JPH03164840A (ja) ディスクベースコンピュータシステムにおけるデータキャッシングを最適化する方法及びシステム
JPH06289999A (ja) ディスク制御システム
US5293618A (en) Method for controlling access to a shared file and apparatus therefor
US7139874B1 (en) System and method for providing client-directed staging to improve non-sequential access performance in a caching disk storage system
US5872955A (en) Method and apparatus for reading and writing data in a disk drive system
US11474750B2 (en) Storage control apparatus and storage medium
US6393524B1 (en) Method and driver for sequential operation caching
JP3200252B2 (ja) ディスクキャッシュ制御方法
US20060020751A1 (en) Medium storage device, cache segment switching method for medium storage device, and medium storage system
CN113934371B (zh) 一种存储器及其数据管理方法和计算机存储介质
JP2634867B2 (ja) デイスクキヤツシユデータ転送制御方式
JP2973474B2 (ja) 光磁気ディスク装置