JPH03164840A - ディスクベースコンピュータシステムにおけるデータキャッシングを最適化する方法及びシステム - Google Patents

ディスクベースコンピュータシステムにおけるデータキャッシングを最適化する方法及びシステム

Info

Publication number
JPH03164840A
JPH03164840A JP2227907A JP22790790A JPH03164840A JP H03164840 A JPH03164840 A JP H03164840A JP 2227907 A JP2227907 A JP 2227907A JP 22790790 A JP22790790 A JP 22790790A JP H03164840 A JPH03164840 A JP H03164840A
Authority
JP
Japan
Prior art keywords
file
data
access
sequential
read
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2227907A
Other languages
English (en)
Other versions
JPH0687224B2 (ja
Inventor
James G Letwin
ジェイムズ ジー レツウィン
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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of JPH03164840A publication Critical patent/JPH03164840A/ja
Publication of JPH0687224B2 publication Critical patent/JPH0687224B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • 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/311In host system
    • 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/6024History based prefetching
    • 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

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 〔発明の分野〕 本発明はベースドコンピュータシステムの分野に関し、
特定的には不揮発性メモリからランダムアクセスメモリ
へのデータ転送を最適化する方法及び手段に関する。
〔発明の背景〕 コンピュータシステムは典型的に、プログラム並びにデ
ータを長期に亘って記憶するために、フロッピディスク
またはハードディスクのようなある型の不揮発性データ
記憶装置を使用する。これらの装置はコンピュータシス
テムには不可欠成分であるが、それぞれの記憶装置とコ
ンピュータシステムとの間のデータ転送は比較的遅い。
従って、コンピュータシステムは実行しながら、ディス
クに記憶されているデータの選択された部分を、システ
ムがより速くアクセスできるランダムメモリ内へ読み込
む。しかし、殆んどのコンピュータシステムのランダム
アクセスメモリはディスク装置に包含されている全ての
データを記憶する程充分に大きくなく、従ってデータは
特定のプログラムによって要求されると片としてディス
クから検索される。
ディスクに記憶されているデータへのアクセスを早める
ために使用される一技術は、プログラムがデータを要求
する前にランダムアクセスメモリ内に使用可能なデータ
が存在しているように、データを先行読取りし、キャッ
シュすることである。
これは“先取り読込み”と呼ばれることもある。
従来、データキャッシングは2つの方法の一方で遂行さ
れた。第1の技術によれば、固定量のデータが先取り読
込みされ、ディスクにアクセスする度にキャッシュされ
る。例えばもし応用が特定量のデータを要求すれば、要
求されたデータ及び固定の付加的な量のデータ(例えば
512バイト)がメモリ内に読込まれる。従って、次に
応用がディスクからのデータを要求した時、データは既
にメモリ内に存在しディスクアクセスに消費される時間
を回避することができる。この技術はコンピュータシス
テムの速さを改善するが、多くの場合非効率的である。
例えば、多くの場合応用はディスクから少量のデータ(
例えば64バイト)しか要求しないであろう。もしコン
ピュータシステムが常に512バイトを先取り読込みし
ていれば、システムはシステムが必要としないデータを
捜査し読取るために要する付加的な時間によって性能が
劣化する。別の場合において、もし応用が大量のデータ
(例えば1024バイト)を要求し、システムが512
バイトだけを先取り読込みを行っていれば、データがラ
ンダムアクセスメモリ内で使用可能ではないから、シス
テムは付加的なディスクアクセスを遂行す必要がある。
データの先取り読込みに使用される別の技術は、コンピ
ュータシステムの挙動を監視してディスクアクセスの特
徴を決定することである。例えば、応用が一貫して比較
的大量のデータまたは少量のデータを要求しているもの
と決定する。この決定がなされると、キャッシュの大き
さを相応して調整することができる。この技術も多くの
場合に非効率である。例えば、コンピュータゲームが最
初にターンオンする時には過去の挙動記録は存在しない
ので、過去の挙動記録を確立できるまでにある遅れを生
ずる。更に遅れが大きい程過去の挙動ログが正確になる
。従ってこの技術は利用者に、データのキャッシュに対
する逸機と挙動記録の正確さとの取引きを要求する。こ
の技術に伴う更に別の問題は、システムが使用挙動の迅
速な変化に対して調整不可能なことである。これもメモ
リシステムの非効率的使用を招来する。
本発明は、あるファイルが開かれる時までに過去のアク
セス挙動を決定し、それにより過去の挙動ログを作成す
るために典型的に必要な遅れを排除する方法及び手段を
提供することによって上述の諸問題を解消する。次で、
データキャッシュの大きさが確立されるとヒユーリステ
ィックスを瞬時に適用することができる。
〔発明の概要及び目的〕
要約すれば、本発明はディスクベースコンピュータシス
テムにおいてデータキャッシングする改良された方法及
び手段を提供する。動作中にあるファイルが開かれると
、アクセスログが作成される。本発明は、そのファイル
のためのファイルアクセス挙動を監視し、そのファイル
アクセスログ内にアクセス挙動を記録し、一方フアイル
アクセス挙動が順次であったかまたは順次で高速であっ
たかを決定する。ファイルアクセス挙動が決定されると
、本発明はもしそのアクセス挙動が順次で高速であった
ならば比較的大量のデータをキャッシュし、またもしそ
のアクセス挙動が順次であったならば比較的少量のデー
タをキャッシュする。
アクセス挙動はそのファイルが閉じられる時、そのファ
イルに対応付けられた領域内に記録される。
アクセスログが作成されると、そのアクセスログはファ
イルが開かれる時に読出され、ファイルが開かれる時に
読出されたアクセス挙動に基いてキャッシングが遂行さ
れる。
従って本発明の目的は、あるファイルが開かれると即座
にそのファイルの過去の挙動を決定する方法及び手段を
提供することである。
本発明の別の目的は、コンピュータシステムの速度及び
性能を改善するために、データキャッシングにヒユーリ
スティックスを適用する方法及び手段を提供することで
ある。
本発明の更に別の目的は、ファイルの挙動に基いてデー
タキャッシュの大きさを自動的に調整する方法及び手段
を提供することである。
〔実施例〕
本発明はディスク使用を監視し、現行使用に基いてキャ
ッシュの大きさを自動的に変更するようになっている。
更に、ファイルが閉じられると、本発明は使用レベル即
ちアクセス挙動を表わす値またはフラグをそのボリュー
ム内に記憶する。そのファイルが再開されると使用値ま
たはフラグが読取られ、使用記録に基ついてキャッシュ
の大きさが確立される。従ってキャッシュの大きさはフ
ァイルが開かれると直ちに確立され、従ってキャッシュ
に対する逸機は最適に排除される。
第1A図は典型的なキャッシング動作の図である。プロ
セス100は、オペレーティングシステム核からの読取
り要求をメモリ制御システムまたはファイルシステムド
ライバが受けると呼び出される。判定段階102は要求
されたデータがRAMキャッシュ内に記憶されるか否か
を判定する。もし否であれば、段階104はディスク装
置からの要求されたデータをRAM内にコピーする。デ
ィスクベース読取り動作はディスクヘッドの移動のよう
な機械的段階を必要とするから段階104によって表わ
される動作は、キャッシュバッファから直接データを読
取るのに比して極めて時間を消費する。
このプロセスは第1B図によって更に理解できる。シス
テム150においては、コンピュータシステム152は
ディスクドライブ156上に存在するデータのセクタを
読取るための要求を生成する。システム150は先ずそ
のデータがキャッシュ154内に存在するか否かを決定
する。例えばもしセクタ2がキャッシュ内に存在すれば
、それは直ちにコンピュータシステム152に戻される
対照的に、もし要求されたセクタがキャッシュ内に存在
しなければ、データに対する要求はメモリ制御装置(図
示せず)を通るように経路指定され、要求されたデータ
はディスク156からセクタ3によって表わされている
ように取込まれる。このデータはキャッシュ内に配置さ
れ、そこから引続いてコンピュータシステム152へ向
う。以上の如くディスク装置156の機械的動作による
プロセス遅れだけではなく、キャッシュ動作が単一の段
階を必要とするのに対して、非キャッシュ動作は2段階
を必要とする。従って可能な場合にはキャッシュ動作を
遂行することが高度に望ましい。
本発明の動作には2つのタスク、即ち挙動ログまたはプ
ロファイルを確立して維持すること、及びデータキャッ
シュの大きさを動的に変更するためにヒユーリスティッ
クスを使用することが組合わされている。
第2A図に示すプロセス200は挙動ログを更新し、維
持するために使用される。プロセス200はメモリ制御
機構がコンピュータシステムから開指令を受けると開始
される。次にアクセスログが段階202によって開かれ
る。読取り要求を受けるとデータ読取りの範囲及びアク
セス時間が監視される。各アクセスは判定段階204に
よって読取り動作が完了したことが検出されるまで記録
される。アクセスログを読むために閉ファイル指令を受
けると段階208が呼出され、アクセスが順次であった
か、順次で高速であったか、またはランダムであったか
が計算される。ランダム、順次で高速、または順次読取
りの概念は後述する。もしランダムであれば本発明は何
等の動作も遂行しない。判定段階210はアクセスが順
次であったか否かを判定する。もし順次であれば段階2
12は順次動作を表わすフラグをセットする。もし順次
でなければ、判定段階214はアクセスが順次で高速で
あったか否かを判定する。もしそうであれば段階216
は順次で高速動作を表わすフラグをセットする。それぞ
れのフラグがセットされると段階218は挙動ログを記
録し、制御は段階220へ渡されて挙動をクリアする。
挙動ログはアクセスされたファイルと共に、またはファ
イルをディスク上に位置決めするために使用されるブタ
構造内に記憶させることが好ましい。
順次アクセスが記録されのか、または順次で高速アクセ
スが記録されたのかを決定する方法は以下のように説明
することができる。ディスクは典型的には一連の隣接セ
クタ内に編成される。しかしディスク上の順次データは
、当業者ならば容易に理解できる理由から隣接セクタ内
に記憶されているとは限らない。ディスク上のセクタの
隣接レイアウトを第2B図に示す。例えば、セクタ25
0はセクタ252に隣接し、セクタ252はセクタ25
4に隣接し、セクタ254はセクタ256に隣接する等
々である。もしセクタ250.252.254及び25
6が直列に読取られれば、即ち隣接するセクタが次から
次へと読取られれば、ディスクアクセスは順次と考えら
れる。しかしもしディスクアクセスパターンがセクタ2
50の次に256を読取ったのであれば、このアクセス
パターンは非順次またはランダムであると考えられる。
高速順次アクセスは、応用プログラムがロードされる時
のように、多数のセクタが急速に読取られる時に発生す
るアクセスである。正規順次アクセスは比較的少量のデ
ータを読取るまたは書込む時の応用プログラムの通常動
作中に発生する。あるファイルの履歴を監視する時、デ
ィスクアクセス情報を R+(t、a、b) R,(t、a、b) Rz(t、a、b) R,(t、a、b) の形で記録することができる。但しtは時間の尺度、及
びa、bは第2B図に示すようにファイル内の走行の範
囲である。
本発明の原理によれば、順次読取りは以下のように定義
することができる。
R+(a+、b+  ):但し R+−+(a +−+、 b t−+)が先行する。こ
こに a 、: S ucc(b +−+) ;及びS uc
c(b ) = a十△ oくΔ〈δ δ=ディスクI10のユニットサイズによって決定され
る局所性係数 である。
上記関係を与えると順次動作は以下の関係によって識別
される。
但しR,=0.80  である。
順次読取りが高速であるか否かを決定するために、 1、=最初の読取りが発生した時刻、 t、:最後の読取りが発生した時刻、 TR=t a−t l として、もし 及び ならば読出しは高速であると考える。
本発明が読取り動作が順次であるか、または順次で高速
であるかを決定すると、この情報は第3図乃至第5図に
基いて説明するように、キャッシングプロセスにヒユー
リスティックスを適用するために使用される。第3図に
示すプロセス300は開ファイル指令をコンピュータシ
ステムから受けると呼出される。段階302は開動作を
遂行する。次で制御は段階304に渡され、段階304
はアクセス履歴に基いてディスクデータのデータをキャ
ッシュするために先行読取りをスケジュールし、また同
時に新プロセスに指示されたデータを読取るように命令
するために新プロセスを作成する。もとのプロセスは段
階306に戻る。段階304によって作成された新プロ
セスは段階308から開始される。段階308はディス
クからアクセス履歴と、読取られているファイル内の関
心部分内のデータの最初の1.5 Kとを読取る。次で
段階310はアクセス履歴を調べる。判定段階312は
高速読取りが表示されているか否かを判定する。
もし高速読取りであれば、段階314が高速読取りフラ
グをセットする。次で制御は段階316に渡され、段階
316は大量のデータをキャッシュ内に読込ませてルー
チンを戻す。もし判定段階312が高速読取りを表示し
ていなければ、制御は判定段階318に移り、順次読取
りが表示されているか否かを判定する。もし順次読取り
が表示されていなければルーチンは戻される。もし順次
読取りが表示されていれば、段階320は順次読取りフ
ラグをセットして比較的少量のデータをキャッシュ内へ
読込む。次でルーチンは戻される。
第4図においてファイルシステム読取り指令を受けると
、ルーチン400が呼出される。判定段階402は要求
されたデータがキャッシュ内にあるか否かを判定する。
もし存在していなければ、段階404はIloをスケジ
ュールし、段階406は読取り動作が完了するまでそれ
以上の動作を阻止する。もし要求されたデータがキャッ
シュ内にあるか、または段階404が完了した時には、
判定段階408はアクセス履歴が高速順次読取りを表示
しているか否かを判定する。もし表示していれば、制御
は段階4!4へ渡され、段階414は大量の先取り読取
りスケジュールしてルーチンを戻す。もしアクセス履歴
が高速順次読取りを表示していなければ、判定段階42
0はアクセス履歴が順次読取りを表示しているか否かを
判定する。
もし表示していなければルーチンは戻される。もし表示
していれば段階412は少量の先取り読取りをスケジュ
ールしてルーチンを戻す。
第5図に示すルーチン500はデータを先取りして読取
るために呼出される。呼出されると判定段階502は自
由キャッシュブロックが使用可能であるか否かを判定す
る。もし使用可能であれば段階510が呼出されIlo
をディスク装置でスケジュールし、制御を戻す。使用で
きなければ判定段階504はキャッシュブロックを自由
にすることが可能か否かを判定する。もしできなければ
制御は段階506に移り、キャッシュブロックを自由に
できるまで待機する。キャッシュを自由にすることが可
能になれば、制御は判定段階504に戻される。キャッ
シュブロックを自由にすることができる場合には制御は
判定段階504から段階508へ移り、高速順次読取り
動作に対して大きいブロックを、また順次読取り動作に
対して小さいキャッシュブロックを割当てるキャッシュ
ブロックの割当てが行われる。キャッシュブロックが割
当てられると制御は段階510へ渡されディスクI10
がディスク装置でスケジュールされる。
次でルーチンは戻される。
要約すれば、データをキャッシングするための改良され
た方法及び手段を説明した。動作中、本発明はアクセス
挙動を決定し、このアクセス挙動をファイルに対応付け
られた領域内に記録する。
ファイルが開かれ読取られる時、アクセス挙動はアクセ
ス挙動に基いて比較的大きいキャッシュまたは比較的小
さいキャッシュを割当てるために使用される。アクセス
挙動表示器は、アクセス挙動の変化につれて動的に変更
することができる。当業者ならば本発明の範囲から逸脱
することのない本発明の他の使用及び変更が明白であろ
う。これらの全て使用及び変更は特許請求の範囲内にあ
ることを企図するものである。
【図面の簡単な説明】
第1A図は従来のキャッシングシステムに使用されるプ
ロセスの流れ図、 第1B図は従来のデータキャッシング技術の別の図、 第2A図は本発明の技術により使用挙動を決定するプロ
セスの図、 第2B図は順次ディスク読取り動作の図、第3図は開フ
ァイル指令受信時の本発明の動作の図、 第4図はファイル読取り指令受信時の本発明の動作の図
、 第5図は大発明の関係において遂行されるキャッシュ機
能の図。 152・・・コンピュータシステム、!54・・・キャ
ッシュ、156デイスク装置、252〜256・・・セ
クタ。 図面の浄IF(内容に変更なし] Figure IA Figure 4 手 続 補 正・書(方式) %式% ■、事件の表示 平成2年特許願第227907号 3、補正をする者 事件との関係

Claims (1)

  1. 【特許請求の範囲】 1、ディスクベースオペレーティングシステムにおいて
    データをキャッシングするための改良された方法であっ
    て: ファイルを開く要求を受けた時にファイルアクセスログ
    を開き; 前記ファイルのためのファイルアクセス挙動を監視し、
    このアクセス挙動を前記ファイルアクセスログ内に記録
    し; 前記ファイルアクセス挙動が順次であったか、または順
    次で高速であったかを決定し; もし前記アクセス挙動が順次で高速であったならば比較
    的大量のデータをキャッシングし、もし前記アクセス挙
    動が順次であったならば少量のデータをキャッシングし
    ; 前記ファイルを閉じる時に前記アクセス挙動を前記ファ
    イルに対応付けられた領域内に記録する諸段階を具備す
    る方法。 2、ファイルを開く時にアクセス挙動を読取り;前記フ
    ァイルを開く時に読取られたアクセス挙動に基いてキャ
    ッシングする 諸段階をも含む請求項1記載の方法。 3、ディスクベースオペレーティングシステムにおいて
    データをキャッシングするための改良されたシステムで
    あって: ファイルを開く要求を受けた時にファイルアクセスログ
    を開く手段; 前記ファイルのためのファイルアクセス挙動を監視し、
    このアクセス挙動を前記ファイルアクセスログ内に記録
    する手段; 前記アクセス挙動が順次であったか、または順次で高速
    であったかを決定する手段; もし前記アクセス挙動が順次で高速であったならば比較
    的大量のデータをキャッシングし、前記アクセス挙動が
    順次であったならば少量のデータをキャッシングする手
    段;及び 前記ファイルを閉じる時に前記アクセス挙動を前記ファ
    イルに対応付けられた領域内に記録する手段 を具備するシステム。 4、ファイルを開く時にアクセス挙動を読取る手段;及
    び 前記ファイルを開く時に読取られたアクセス挙動に基い
    てキャッシングする手段をも含む請求項1記載のシステ
    ム。
JP2227907A 1989-08-29 1990-08-29 ディスクベースコンピュータシステムにおけるデータキャッシングを最適化する方法及びシステム Expired - Lifetime JPH0687224B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/401,315 US5257370A (en) 1989-08-29 1989-08-29 Method and system for optimizing data caching in a disk-based computer system
US401315 1989-08-29

Publications (2)

Publication Number Publication Date
JPH03164840A true JPH03164840A (ja) 1991-07-16
JPH0687224B2 JPH0687224B2 (ja) 1994-11-02

Family

ID=23587238

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2227907A Expired - Lifetime JPH0687224B2 (ja) 1989-08-29 1990-08-29 ディスクベースコンピュータシステムにおけるデータキャッシングを最適化する方法及びシステム

Country Status (6)

Country Link
US (1) US5257370A (ja)
EP (1) EP0415352B1 (ja)
JP (1) JPH0687224B2 (ja)
AU (1) AU641933B2 (ja)
CA (1) CA2024109C (ja)
DE (1) DE69032781T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0863395A (ja) * 1994-08-19 1996-03-08 Nippon Telegr & Teleph Corp <Ntt> データアクセス方法

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2641819B2 (ja) * 1990-11-05 1997-08-20 三菱電機株式会社 キャッシュ・コントローラ並びにフォールト・トレラント・コンピュータ及びそのデータ転送方式
US5659713A (en) * 1992-04-24 1997-08-19 Digital Equipment Corporation Memory stream buffer with variable-size prefetch depending on memory interleaving configuration
US5410653A (en) * 1992-06-16 1995-04-25 International Business Machines Corporation Asynchronous read-ahead disk caching using multiple disk I/O processes and dynamically variable prefetch length
JPH0659952A (ja) * 1992-08-07 1994-03-04 Toshiba Corp 磁気ディスク装置
WO1994019748A2 (en) * 1993-01-11 1994-09-01 Central Point Software, Inc. Method of transferring data using dynamic data block sizing
US5426736A (en) * 1993-05-26 1995-06-20 Digital Equipment Corporation Method and apparatus for processing input/output commands in a storage system having a command queue
WO1995001600A1 (en) * 1993-07-02 1995-01-12 Oakleigh Systems, Inc. Predictive disk cache system
US5452440A (en) * 1993-07-16 1995-09-19 Zitel Corporation Method and structure for evaluating and enhancing the performance of cache memory systems
US5430858A (en) * 1993-11-24 1995-07-04 Northrop Grumman Corporation Method for RAM conservation employing a RAM disk area non-sequential addresses on arranged order basis to access executable procedures
US5588129A (en) * 1994-02-09 1996-12-24 Ballard; Clinton L. Cache for optical storage device and method for implementing same
US5584007A (en) * 1994-02-09 1996-12-10 Ballard Synergy Corporation Apparatus and method for discriminating among data to be stored in cache
JP3030229B2 (ja) * 1994-06-20 2000-04-10 インターナショナル・ビジネス・マシーンズ・コーポレイション データを転送する方法及びデータ記憶システム
US5594863A (en) * 1995-06-26 1997-01-14 Novell, Inc. Method and apparatus for network file recovery
US5829023A (en) * 1995-07-17 1998-10-27 Cirrus Logic, Inc. Method and apparatus for encoding history of file access to support automatic file caching on portable and desktop computers
JPH0944315A (ja) * 1995-07-25 1997-02-14 Canon Inc 記憶装置及びその方法
JPH09259576A (ja) * 1996-03-25 1997-10-03 Toshiba Corp 複数管理領域を持つ情報記録ディスク
KR0174711B1 (ko) * 1996-04-24 1999-04-15 김광호 하드디스크 캐시의 제어방법
US5987245A (en) * 1996-07-01 1999-11-16 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture (#12) for a client-server state machine framework
US5999972A (en) * 1996-07-01 1999-12-07 Sun Microsystems, Inc. System, method and article of manufacture for a distributed computer system framework
US6434598B1 (en) 1996-07-01 2002-08-13 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server graphical user interface (#9) framework in an interprise computing framework system
US6424991B1 (en) 1996-07-01 2002-07-23 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server communication framework
US6272555B1 (en) 1996-07-01 2001-08-07 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server-centric interprise computing framework system
US6304893B1 (en) 1996-07-01 2001-10-16 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server event driven message framework in an interprise computing framework system
US6038590A (en) * 1996-07-01 2000-03-14 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server state machine in an interprise computing framework system
US5848246A (en) * 1996-07-01 1998-12-08 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server session manager in an interprise computing framework system
US6266709B1 (en) 1996-07-01 2001-07-24 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server failure reporting process
US5862337A (en) * 1996-07-12 1999-01-19 Microsoft Corporation Determining throughput dynamically
US6434663B1 (en) 1996-09-06 2002-08-13 Intel Corporation Disk block allocation optimization methodology with accommodation for file system cluster size greater than operating system memory page size
US6253296B1 (en) * 1996-09-06 2001-06-26 Intel Corporation Disk block allocation optimization methodology and applications
US6742080B1 (en) * 1996-09-06 2004-05-25 Intel Corporation Disk block allocation optimization methodology and application
US6065100A (en) * 1996-11-12 2000-05-16 Micro-Design International Caching apparatus and method for enhancing retrieval of data from an optical storage device
US6715056B1 (en) 1998-04-30 2004-03-30 International Business Machines Corporation Network document transmission to receiving display stations with automatic sizing of received document caches based upon user activity in prior browsing sessions
US6684294B1 (en) * 2000-03-31 2004-01-27 Intel Corporation Using an access log for disk drive transactions
US7257620B2 (en) * 2001-09-24 2007-08-14 Siemens Energy & Automation, Inc. Method for providing engineering tool services
US7036147B1 (en) * 2001-12-20 2006-04-25 Mcafee, Inc. System, method and computer program product for eliminating disk read time during virus scanning
EP1345113A3 (en) * 2002-03-13 2008-02-06 Hitachi, Ltd. Management server
US6981112B2 (en) * 2002-08-26 2005-12-27 International Business Machines Corporation Dynamic cache disable
US7089394B2 (en) * 2003-04-22 2006-08-08 Intel Corporation Optimally mapping a memory device
JP4117656B2 (ja) * 2003-11-26 2008-07-16 株式会社日立製作所 アクセスパターンを学習する記憶装置
US8019790B2 (en) 2006-07-11 2011-09-13 Dell Products, Lp System and method of dynamically changing file representations
US8171219B2 (en) * 2009-03-31 2012-05-01 Intel Corporation Method and system to perform caching based on file-level heuristics
US8458399B2 (en) * 2010-11-17 2013-06-04 Lsi Corporation Methods and structure for determining cache size in a storage system
EP2807583B1 (en) * 2012-01-24 2018-07-25 Varonis Systems, Inc. A method and apparatus for authentication of file read events
US20160062997A1 (en) * 2014-08-28 2016-03-03 Weebly, Inc. Serialized Child Associations in Parent Record
CN113268201A (zh) 2021-05-13 2021-08-17 三星(中国)半导体有限公司 基于文件属性的缓存管理方法和装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57172457A (en) * 1981-04-17 1982-10-23 Hitachi Ltd Secondary storage controller
JPS58155464A (ja) * 1981-11-27 1983-09-16 ストレ−ジ・テクノロジ−・コ−ポレ−シヨン 順次デ−タ・ストリ−ムの検出方法
JPS6045855A (ja) * 1983-08-22 1985-03-12 Fujitsu Ltd 磁気ディスク装置の順次アクセス検出方法
JPS61235957A (ja) * 1985-04-11 1986-10-21 Nec Corp デ−タ制御方式
JPS6331808A (ja) * 1986-07-25 1988-02-10 Mazda Motor Corp 自動車のサスペンシヨン装置
JPS63273147A (ja) * 1987-04-30 1988-11-10 Fujitsu Ltd フアイル入力処理方式
JPS6423355A (en) * 1987-07-02 1989-01-26 Ibm Cache memory management

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4489378A (en) * 1981-06-05 1984-12-18 International Business Machines Corporation Automatic adjustment of the quantity of prefetch data in a disk cache operation
US4533995A (en) * 1981-08-03 1985-08-06 International Business Machines Corporation Method and system for handling sequential data in a hierarchical store
US4536836A (en) * 1981-11-27 1985-08-20 Storage Technology Corporation Detection of sequential data stream

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57172457A (en) * 1981-04-17 1982-10-23 Hitachi Ltd Secondary storage controller
JPS58155464A (ja) * 1981-11-27 1983-09-16 ストレ−ジ・テクノロジ−・コ−ポレ−シヨン 順次デ−タ・ストリ−ムの検出方法
JPS6045855A (ja) * 1983-08-22 1985-03-12 Fujitsu Ltd 磁気ディスク装置の順次アクセス検出方法
JPS61235957A (ja) * 1985-04-11 1986-10-21 Nec Corp デ−タ制御方式
JPS6331808A (ja) * 1986-07-25 1988-02-10 Mazda Motor Corp 自動車のサスペンシヨン装置
JPS63273147A (ja) * 1987-04-30 1988-11-10 Fujitsu Ltd フアイル入力処理方式
JPS6423355A (en) * 1987-07-02 1989-01-26 Ibm Cache memory management

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0863395A (ja) * 1994-08-19 1996-03-08 Nippon Telegr & Teleph Corp <Ntt> データアクセス方法

Also Published As

Publication number Publication date
AU641933B2 (en) 1993-10-07
CA2024109A1 (en) 1991-03-01
DE69032781T2 (de) 1999-04-22
DE69032781D1 (de) 1999-01-07
EP0415352B1 (en) 1998-11-25
AU6191190A (en) 1991-03-07
JPH0687224B2 (ja) 1994-11-02
CA2024109C (en) 1996-01-02
US5257370A (en) 1993-10-26
EP0415352A3 (en) 1991-10-02
EP0415352A2 (en) 1991-03-06

Similar Documents

Publication Publication Date Title
JPH03164840A (ja) ディスクベースコンピュータシステムにおけるデータキャッシングを最適化する方法及びシステム
EP0080875B1 (en) Data storage system for a host computer
US5226141A (en) Variable capacity cache memory
US5513336A (en) System and method for determining when and what position in cache memory to store data elements utilizing least and last accessed data replacement method
EP0301211B1 (en) Cache management for a peripheral data storage subsystem
US5809560A (en) Adaptive read-ahead disk cache
EP0077453B1 (en) Storage subsystems with arrangements for limiting data occupancy in caches thereof
JP3183993B2 (ja) ディスク制御システム
US4974197A (en) Batching data objects for recording on optical disks with maximum object count
JP3254429B2 (ja) データ転送/管理システム及び方法
JPS58155464A (ja) 順次デ−タ・ストリ−ムの検出方法
JPH02281350A (ja) キヤツシユ・メモリ管理
US7000077B2 (en) Device/host coordinated prefetching storage system
JP4104283B2 (ja) 記憶サブシステム及び情報処理システム
JPH1011337A (ja) 記憶装置におけるデータ制御方法
JP2001350669A (ja) 先読み予測装置
US20060149892A1 (en) Adaptive disk layout techniques and tools
JP2001117818A (ja) メモリ管理装置及び管理方法並びに管理プログラムを記録した記録媒体
JP3707890B2 (ja) 外部記憶装置のデータ出力方法
JPH0415493B2 (ja)
EP0341036B1 (en) A method of operating an information handling system
JPS603224B2 (ja) ペ−ジ・バツフア・メモリにおけるペ−ジ格納域数調整用デ−タ作成方式
JPH05342152A (ja) バッファ制御方式
JPH07134634A (ja) ディスク装置
JP2000347810A (ja) ファイル装置