JP3812928B2 - 外部記憶装置及び情報処理システム - Google Patents

外部記憶装置及び情報処理システム Download PDF

Info

Publication number
JP3812928B2
JP3812928B2 JP19976299A JP19976299A JP3812928B2 JP 3812928 B2 JP3812928 B2 JP 3812928B2 JP 19976299 A JP19976299 A JP 19976299A JP 19976299 A JP19976299 A JP 19976299A JP 3812928 B2 JP3812928 B2 JP 3812928B2
Authority
JP
Japan
Prior art keywords
resident
cache
pointer
extent
information
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 - Fee Related
Application number
JP19976299A
Other languages
English (en)
Other versions
JP2001027967A (ja
Inventor
啓悦 鈴木
実 岩見
浩之 松村
大 谷中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Hitachi Information and Telecommunication Engineering Ltd
Original Assignee
Hitachi Computer Peripherals Co Ltd
Hitachi Ltd
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 Hitachi Computer Peripherals Co Ltd, Hitachi Ltd filed Critical Hitachi Computer Peripherals Co Ltd
Priority to JP19976299A priority Critical patent/JP3812928B2/ja
Priority to US09/591,104 priority patent/US6959359B1/en
Publication of JP2001027967A publication Critical patent/JP2001027967A/ja
Application granted granted Critical
Publication of JP3812928B2 publication Critical patent/JP3812928B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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

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)

Description

【0001】
【発明の属する技術分野】
本発明は、キャッシュを具備した外部記憶装置のキャッシュ制御技術に関し、特に複数の上位装置によって共有される外部記憶装置或いは上位装置を含めた情報記憶システムにおけるキャッシュの制御技術に関する。
【0002】
【従来の技術】
近年、情報処理システムの高性能・大規模化に伴い、外部記憶装置においても、より一層の高性能化が求められている。特に外部記憶装置においては、制御装置に大容量キャッシュメモリを搭載したアレイ形式の外部記憶装置が主流となってきており、高性能化を図るには、大容量キャッシュメモリの効率の良い制御方法が重要となってきている。このため、大容量キャッシュメモリの制御に関する方式が、以下のように種々考案されている。
【0003】
例えば、特開平6−124239号公報には、ファイルシステムにおけるデータ管理情報のアクセス頻度を計算して保持し、所定時間内のアクセス頻度が高いデータ管理情報は、キャッシュメモリ上に常駐化し、一方所定時間内のアクセス頻度が低いデータ管理情報は、キャッシュメモリの常駐状態から解除する方法が開示されている。
【0004】
また、特開平5−189307号公報では、キャッシング方法自体は一般にリースト・リーセント・ユーズド(LRU)法と呼ばれている方法を基本とするが、一般のLRU法に加えてプログラム毎にキャッシュのミスヒット率を調べ、一定以上のミスヒット率であれば、以降のプログラムの実行には、キャッシングを実施しない事により、その分のキャッシング頻度を低下させるとともに、プログラムの実行で消費されるはずであったキャッシュメモリ上の領域をある一定以上のキャッシュヒット率を有するであろう他のプログラム用に使用することにより、システム全体のCPUの性能を向上する方法が開示されている。
【0005】
また、特開平7−287669号公報には、キャッシュメモリ上に配置すべき主記憶上のデータをプログラムが明示的に指定可能な命令と、指定に従って主記憶上のデータをキャッシュメモリに転送する制御回路と、転送されたデータをキャッシュメモリ上に常駐化させる回路と、常駐化されたデータの常駐化を無効にする回路とを設け、処理を優先したい特定のプログラムが、その処理手順の特性に合わせてキャッシングを制御する方法が開示されている。
【0006】
【発明が解決しようとする課題】
特開平6−124239号公報の技術では、ファイルシステムにおけるデータ管理情報を所定時間内のアクセス頻度に応じてキャッシュメモリ上に常駐化させるデータを決定する。そのため、アクセス頻度の低いデータ管理情報にアクセスした場合には、キャッシュメモリ上に該当するユーザデータがなく、目的のユーザデータにアクセスするまでに多大な時間を有してしまう。
【0007】
また、特開平5−189307号公報の技術では、キャッシュミス率の所定値によって平均アクセス時間が左右されてしまう。そして、最適な所定値を決めるのは非常に困難であった。
【0008】
また、特開平7−287669号公報の技術では、キャッシュメモリの常駐化のためにユーザプログラムがキャッシュ常駐/常駐解除命令を実行するための種々のハードウェアが必要であった。また、ユーザプログラムがキャッシュメモリ上のデータの常駐を常に意識しなければならなかった。
【0009】
また、従来のキャッシュメモリ上への常駐化/常駐化解除の機能は、サービスプロセッサ或いはリモートコンソールにより行われていたため、常駐化/常駐化解除の設定が可能な場合であってもオペレータが行うしかなく、ユーザが簡単には行う事が出来なかった。また、常駐化/常駐化解除するデータのアドレスを入力する事が必要であった。
【0010】
さらに、記憶制御装置におけるキャッシング方法は、トラック単位で行われるのが一般的である。そして通常LRUアルゴリズムによってトラック単位のキャッシュ常駐化が行われるため、複数トラックにわたるデータの場合にまとめてランダムアクセスを行うとデータの中抜け等の理由からスラッシング(キャッシュミス状態)が生じてしまい、情報処理システムの性能劣化が生じてしまう。
【0011】
本発明の目的は、ユーザが常駐化/常駐化解除の設定を行うキャッシュ制御技術を提供することにある。
【0012】
本発明の他の目的は、データセット名の入力によるユーティリティプログラムを用いて、キャッシュメモリ上に常駐化/常駐化解除を行うキャッシュ制御技術を提供することにある。
【0013】
また、本発明の他の目的は、外部記憶装置が稼動情報を採取することにより、上位装置の稼動状況に応じて、キャッシュメモリ上に常駐化/常駐化解除を行い、情報処理システムの性能向上を行うキャッシュ制御技術を提供することにある。
【0014】
更に本発明の目的は、複数トラックのユーザデータをまとめてキャッシュメモリ上に常駐化/常駐化解除するキャッシュ制御技術を提供することにある。
【0016】
【課題を解決するための手段】
前記課題を解決するために、データを一時格納するキャッシュを備えた外部記憶装置であって、前記キャッシュに常駐化するデータセット名を含むユーザデータが定義されたユーザ定義情報、或いは前記外部記憶装置のデータセット名を含む稼動情報に基づきユーザデータをデータセット領域単位で前記キャッシュ上に常駐化或いは前記キャッシュ上からの常駐化解除を行うものとする。
【0018】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照しながら詳細に説明する。
【0019】
図1は、本発明の一実施の形態である動的キャッシュ常駐化外部記憶装置を含む情報処理システムのハードウェア構成の一例を示すブロック図である。
【0020】
本実施の形態における外部記憶装置の一例として、ディスクアレイサブシステムを用いた場合を示したが、本発明に適する外部記憶装置として、キャッシュ付き磁気ディスクサブシステム、キャッシュあるいはデータバッファを備えた光ディスク装置サブシステム等がある。
【0021】
本実施の形態のディスクアレイサブシステム20は、ケーブル10〜13を通じて、中央処理装置(上位装置、ホストとも言う)1,2のチャネル6〜9に接続されている。
【0022】
ディスクアレイサブシステム20に設けられたサービスプロセッサ21は、外部記憶装置の制御部であるディスクアレイサブシステム20の構成情報の設定及びバス41を通じて当該情報を共用メモリ50に書き込む機能、ディスクアレイサブシステム20の稼動情報、障害情報採取機能及び保守機能を持つ。ディスクアレイサブシステム20の稼動情報の具体例としては、時刻、物理シリンダ及びヘッドアドレス、アクセス頻度、デバイスアドレス、リード/サーチバイト数、データオーバランの発生回数、CRCエラー等のエラー発生回数等々がある。
【0023】
チャネルインタフェース制御部31〜35は、ケーブル10〜13を通じ、中央処理装置1,2のチャネル6〜9からのコマンド処理、バス42を使用した中央処理装置1,2のチャネル6〜9とキャッシュ60との間のデータ転送処理、ディスクアレイサブシステム20の稼動情報採取を行う機能を持っている。また、これらの機能を実現するため、チャネルインタフェース制御部31〜35はバス41を通じて、共用メモリ50上の情報を参照/更新、ドライブインタフェース制御部71〜74及びサービスプロセッサ21との通信を行う。
【0024】
バス41は、チャネルインタフェース制御部31〜35、共用メモリ50、ドライブインタフェース制御部71〜74及びサービスプロセッサ21を結ぶ通信制御線である。つまり、チャネルインタフェース制御部31〜35、ドライブインタフェース制御部71〜74及びサービスプロセッサ21との間の通信、チャネルインタフェース制御部31〜35、ドライブインタフェース制御部71〜74及びサービスプロセッサ21と共用メモリ50との間の参照/更新を行うためにバス41は使用される。
【0025】
バス42は、中央処理装置1,2からチャネル6〜9、ケーブル10〜13、チャネルインタフェース制御部31〜35を介して行われるキャッシュ60へのデータ転送、キャッシュ60からチャネルインタフェース制御部31〜35、ケーブル10〜13、チャネル6〜9を介して行われる中央処理装置1,2へのデータ転送、キャッシュ60からドライブインタフェース制御部71〜74を介して行われる複数の磁気ディスク装置からなるディスク群81〜82へのデータ転送、ディスク群81〜82からドライブインタフェース制御部71〜74を介して行われるキャッシュ60へのデータ転送に使用される。
【0026】
共用メモリ50は、チャネルインタフェース制御部31〜35及びドライブインタフェース制御部71〜74等が動作するのに必要な情報及び本実施の形態の動作を行うための情報(後述)、サービスプロセッサ21からの構成情報、ディスクアレイサブシステム20の稼動情報等々が入っている不揮発性のメモリである。
【0027】
キャッシュ60は、中央処理装置1,2からのライトデータ及びディスク群31〜35からのリードデータを一時格納しておくメモリである。
【0028】
ドライブインタフェース制御部71〜74はチャネルインタフェース制御部31〜35の要求によりバス41を使用して共用メモリ50上の情報を参照/更新することにより、ディスク群81〜82からキャッシュ60へのデータの読み込み及びキャッシュ60からディスク群81〜82へのデータ書き込みを行う。
【0029】
ディスク群81〜82は、アレイディスクであり、中央処理装置1,2からキャッシュ60上へ書かれたデータを保持するものである。
【0030】
ホストユーティリティプログラム4は、ユーザが端末装置3を使用して入力・作成したユーザ定義情報91に基づいて、中央処理装置1上で動作する。ホストユーティリティプログラム5は、中央処理装置2のオペレーティングシステム等が作成、使用している稼動情報92に基づいて、中央処理装置2上で動作する。具体的には、ユーザ定義情報91或いは稼動情報92に基づいて、ホストユーティリティプログラム4またはホストユーティリティプログラム5は、チャネル6〜9、ケーブル10〜13を通じて、ディスクアレイサブシステム20に対して、コマンド及びコマンドパラメータを発行し、ディスクアレイサブシステム20内のキャッシュ60上のユーザデータの常駐化及び常駐化解除の指示を行う。
【0031】
ユーザ定義情報91に入力する詳細情報の具体例としては、時刻、常駐化/常駐化解除の指示、データセット名、物理シリンダ及びヘッドアドレス、後述するボリューム目録、ボリューム名等々がある。但し、これら全ての情報が必要な訳ではなく、例えば、常駐化/常駐化解除するデータセット名のみを端末装置3から入力する様な設定としておくこと等が考えられる。
【0032】
ユーザ定義情報91は、中央処理装置1の主記憶装置(図示せず)上に存在しても良いし、一時的データセットあるいは外部記憶装置上の恒久データセットに格納されていても良い。
【0033】
また、稼動情報92の詳細情報の具体例としては、時刻、データセット名、物理シリンダ及びヘッドアドレス、ボリューム名、アクセス頻度、デバイスアドレス、平均応答時間、平均切り離し時間、平均接続時間等々がある。
【0034】
稼動情報92は、オペレーティングシステム等が作成、使用しており、主として中央処理装置2の外部記憶装置上の恒久データセットに格納されている。尚、チャネルインタフェース制御部31〜35が過去の履歴情報を見てその情報をサービスプロセッサ21に送る事により、常駐させるデータを選択することにより稼動情報92の代わりとしても良いし、サービスプロセッサ21の稼動情報の詳細情報を格納する容量が稼動情報92と同程度ある場合は、こちらの稼動情報を使用しても良い。
【0035】
次に図2について説明する。図2は、本実施の形態の動的キャッシュ常駐化を実現するための手段であるホストユーティリティプログラム4,5からチャネル6〜9経由でディスクアレイサブシステム20が受領するコマンドパラメータの一例を示す概念図である。具体的には、ホストユーティリティプログラム4或いは5から受領する常駐化エクステントパラメータ200の構造の一例を示す概念図である。受領した常駐化エクステントパラメータ200は、チャネルインタフェース制御部31〜35内で保持する。本実施の形態において、動的キャッシュ常駐化及び常駐化解除を行うコマンドは、中央処理装置1,2、チャネル6〜9、ディスクアレイサブシステム20間で動作が規定されている定義コマンドであってもよいし、未定義コマンドであってもよい。
【0036】
次に常駐化エクステントパラメータ200の構造の一例についてさらに詳細に説明する。常駐化エクステントパラメータ200は、常駐化モード指定201、常駐化先頭位置情報202、常駐化最終位置情報203から構成される。常駐化モード指定201は、ユーザデータをディスクアレイサブシステム20内のキャッシュ60上に常駐化及び常駐化解除を指示するパラメータである。常駐化先頭位置情報202は、ディスクアレイサブシステム20内のキャッシュ60に常駐させるディスク上の物理的な先頭位置、すなわちディスクアレイサブシステム20上のキャッシュ60に常駐させるディスク上の先頭シリンダ番号、ヘッド番号の位置を示す。常駐化最終位置情報203は、ディスクアレイサブシステム20内のキャッシュ60に常駐させるディスク上の物理的な最終位置、すなわち、ディスクアレイサブシステム20上のキャッシュ60に常駐させるディスク上の最終シリンダ番号、ヘッド番号の位置を示す。
【0037】
通常、ユーザデータは、オペレーティングシステム下においてデータセットに格納されており、オペレーティングシステムでは、これらのデータセットをボリューム目録(Volume table of contents:VTOC)で管理している。ボリューム目録(VTOC)内に書かれている情報のうち、データセットの領域に関するものにBOE(begin of extent)、EOE(end of extent)がある。BOEはエクステント(領域)の始まりを直接アクセスボリュームのシリンダ番号、トラック番号、セクタ番号などで表す。EOEはエクステントの終わりをBOEと同じ形式で記録する。BOEとEOEとで囲まれた領域が1つのデータセット領域である。ホストユーティリティプログラム4はユーザ定義情報91より、ホストユーティリティプログラム5は稼動情報92よりディスクアレイサブシステム20内のキャッシュ60上に常駐化または常駐化解除させるデータセット名を読み取りボリューム目録(VTOC)内に書かれている情報から該当するデータセットのBOE、EOEを求め、BOEを常駐化エクステントパラメータ200の常駐化先頭位置情報202として、EOEを常駐化エクステントパラメータ200の常駐化最終位置情報203として、ホストユーティリティプログラム4,5は常駐化エクステントパラメータ200をディスクアレイサブシステム20に指示する。
【0038】
次に図3について説明する。図3は、本実施の形態の動的キャッシュ常駐化を実現するための制御情報の1つである常駐化エクステントテーブル300の構造の一例を示す概念図である。常駐化エクステントテーブル300は、各チャネルインタフェース制御部31〜35内または共用メモリ50上に存在する。常駐化エクステントテーブル300は、先頭ポインタ301、最終ポインタ302、常駐化エリア各エクステント情報303より構成される。常駐化エリア各エクステント情報303は、フロントポインタ1(304)、バックポインタ1(305)、常駐化先頭位置情報1(306)、常駐化最終位置情報1(307)を1エントリとし、常駐化エリア分だけ存在する。
【0039】
すなわち、図3に示すように、フロントポインタ1(304)、バックポインタ1(305)、常駐化先頭位置情報1(306)、常駐化最終位置情報1(307)を1つのかたまりとし、フロントポインタ2(308)、バックポインタ2(309)、常駐化先頭位置情報2(310)、常駐化最終位置情報2(311)、・・・、フロントポインタn(312)、バックポインタn(313)、常駐化先頭位置情報n(314)、常駐化最終位置情報n(315)というように常駐化エリアのn個分のエントリが存在する。また、常駐化エリア各エクステント情報303は、ホストユーティリティプログラム4,5から常駐化エリアを指示されると1エントリを固まりとしたキュー構造の形をとることになる。
【0040】
以下、説明を簡単にするために、ホストユーティリティプログラム4または5より、1つ目のユーザデータセットの常駐化を指示された場合と2つ目のユーザデータセットの常駐化を指示された場合の常駐化エクステントテーブル300の先頭ポインタ301、最終ポインタ302、常駐化エリア各エクステント情報303の内容がどのように推移するかについて説明する。先頭ポインタ301、最終ポインタ302、常駐化エリア各エクステント303中のフロントポインタ1(304)、フロントポインタ2(308)、・・・、フロントポインタn(312)及び常駐化エリア各エクステント情報303中のバックポインタ1(305)、バックポインタ2(309)、・・・、バックポインタn(313)の各ポインタの具体的な値は、メモリアドレス、先頭と起点とした変位アドレス、先頭からのエントリ数の何れであってもよい。また、前記各ポインタの初期値は、すべてありえない値(たとえば、x’FFFF’)となっている。
【0041】
まず、1つ目のユーザデータセットの常駐化がホストユーティリティプログラム4または5より指示された場合の常駐化エクステントテーブル300の先頭ポインタ301、最終ポインタ302、常駐化エリア各エクステント情報303の内容がどのように推移するかについて説明する。1つ目のユーザデータセットの常駐化がホストユーティリティプログラム4または5から指示されると常駐化エクステントテーブル300中の先頭ポインタ301と最終ポインタ302をフロントポインタ1(304)を示すように値を更新する。この時、フロントポインタ1(304)とバックポインタ1(305)は、初期値のままとする。
【0042】
また、常駐化先頭位置情報1(306)を常駐化エクステントパラメータ200の常駐化先頭位置情報202とし、常駐化最終位置情報1(307)を常駐化パラメータ200の常駐化最終位置情報203とする。
【0043】
次に、2つ目のユーザデータセットの常駐化がホストユーティリティプログラム4または5より指示された場合の常駐化エクステントテーブル300の先頭ポインタ301、最終ポインタ302、常駐化エリア各エクステント情報303の内容がどのように推移するかについて説明する。前提条件として、前記1つ目のユーザデータセットの常駐化がホストユーティリティプログラム4または5から指示された後に2つ目のユーザデータセットの常駐化がホストユーティリティプログラム4または5から指示されるものとする。
【0044】
すなわち、常駐化エクステントテーブル300の内容が前述のような状態のまま、2つ目のユーザデータセットの常駐化がホストユーティリティプログラム4または5より指示されたものとする。2つ目のユーザデータセットの常駐化がホストユーティリティプログラム4または5より指示されると常駐化エリア各エクステント情報303中の空きエントリをサーチを行い、空きエントリを確保する。
【0045】
本ケースの場合、フロントポインタ2(308)、バックポインタ2(309)、常駐化先頭位置情報2(310)、常駐化最終位置情報2(311)が空きエントリになっているとすると、現在の常駐化エクステントテーブル300の最終ポインタ302が示しているエントリのフロントポインタの値をフロントポインタ2(308)を示すように値を更新する。すなわち、フロントポインタ1(304)の値をフロントポインタ2(308)を示すように値を更新する。
【0046】
この後、確保した空きエントリのバックポインタを現在の常駐化エクステントテーブル300の最終ポインタ302の値とする。すなわち、バックポインタ2(309)の値をフロントポインタ1(304)を示す値に更新する。また、常駐化先頭位置情報2(310)を常駐化エクステントパラメータ200の常駐化先頭位置情報202とし、常駐化最終位置情報2(311)を常駐化エクステントパラメータ200の常駐化最終位置情報203とする。
【0047】
この後、常駐化エクステントテーブル300の最終ポインタ302の値を確保した空きエントリのフロントポインタを示す値とする。すなわち、常駐化エクステントテーブル300の最終ポインタ302の値をフロントポインタ2(308)を示す値に更新する。この時、バックポインタ1(305)とフロントポインタ2(308)の値は、初期値のままとなっている。
【0048】
次に図4について説明する。図4は、本実施の形態の動的キャッシュ常駐化を実施するための制御情報の1つであるデバイス固有テーブル400の構造の一例を示す概念図である。デバイス固有テーブル400は、各チャネルインタフェース制御部31〜35内または共用メモリ50内に存在する。
【0049】
デバイス固有情報テーブル400は、アドレス#0用常駐化エクステント数(401)、アドレス#0用常駐化先頭エクステントポインタ(402)、アドレス#0用常駐化最終エクステントポインタ(403)を1エントリとし、ディスクアレイサブシステム20で制御するボリュームアドレス分だけ存在する。すなわち、図4に示すようにアドレス#0用常駐化エクステント数(401)、アドレス#0用常駐化先頭エクステントポインタ(402)、アドレス#0用常駐化最終エクステントポインタ(403)を1つのかたまりとし、アドレス#1用常駐化エクステント数(404)、アドレス#1用常駐化先頭エクステントポインタ(405)、アドレス#1用常駐化最終エクステントポインタ(406)、・・・、アドレス#n用常駐化エクステント数(407)、アドレス#n用常駐化先頭エクステントポインタ(408)、アドレス#n用常駐化最終エクステントポインタ(409)というようにディスクアレイサブシステム20で制御するボリュームアドレスn個分だけ存在する。
【0050】
アドレス#m(m=0、1、・・、n)用常駐化エクステント数は、当該ボリュームアドレスの常駐化エクステントテーブル300内の常駐化エリア各エクステント情報303のエントリ数を示す。アドレスm(m=0、1、・・・、n)用常駐化先頭エクステントポインタは、当該ボリュームアドレスの常駐化エクステントテーブル300内の常駐化エリア各エクステント情報303の最初のエントリを示すポインタである。また、アドレスm(m=0、1、・・・、n)用常駐化最終エクステントポインタは、当該ボリュームアドレスの常駐化エクステントテーブル300内の常駐化エリア各エクステント情報303の最終エントリを示すポインタである。
【0051】
アドレスm(m=0、1、・・・、n)用常駐化先頭エクステントポインタ及びアドレスm(m=0、1、・・・、n)用常駐化最終エクステントポインタの具体的な値は、メモリアドレス、先頭を基点とした変位アドレス、先頭からのエントリ数のいずれであってもよい。また、前記各ポインタの初期値はすべてありえない値(たとえば、x’FFFF’)となっている。
【0052】
具体的に前述の2つのユーザデータセットの常駐化を行った例でデバイス固有情報テーブル400の内容の推移について説明する。ここでは、説明を簡単にするためにボリュームアドレス#0で、2つのデータセットの常駐化を行った場合について説明する。常駐化エクステントテーブル300の推移については、すでに記述済みのため、あえて説明をしない。この場合のデバイス固有テーブル400の内容は、アドレス#0用常駐化エクステント数(401)は2となり、アドレス#0用常駐化先頭エクステントポインタ(402)は常駐化エクステントテーブル300の常駐化エリア各エクステント情報303中のフロントポインタ1(304)を指し示す値となり、アドレス#0用常駐化最終エクステントポインタ(403)は常駐化エクステントテーブル300の常駐化エリア各エクステント情報303中のフロントポインタ2(308)を指し示す値となる。
【0053】
次に、図1〜図4を用いて、図5〜図11のフローチャートに示されるチャネルインタフェース制御部31〜35の処理の一例について説明する。
【0054】
チャネルインタフェース制御部31〜35は、前述したような3つの処理機能を持っているが、ここでは本実施の形態に関係する動的キャッシュ常駐化処理に絞り込んで説明する。
【0055】
まず、図5のフローチャートについて説明する。ステップ501で、常駐化エクステントテーブル300に登録された位置情報内にアクセスが有るか否かのチェックを行う。すなわち、デバイス固有テーブル400の該当アドレスの常駐化エクステント数及び該当アドレスの常駐化先頭エクステントポインタより、常駐化エクステントテーブル300の常駐化エリア各エクステント情報303内の常駐化先頭位置情報1(306)から常駐化最終位置情報1(307)の範囲、常駐化先頭位置情報2(310)から常駐化最終位置情報2(311)の範囲、・・・、常駐化先頭位置情報n(314)から常駐化最終位置情報n(315)の範囲のいずれかにアクセスが有るかチェックを行う。ステップ501で常駐化エクステントテーブル300に登録された位置情報内にアクセスがあれば、ステップ601(図6)へ進む。常駐化エクステントテーブル300に登録された位置情報内にアクセスがなければ、ステップ502へ進む。
【0056】
ステップ502で、ホストユーティリティプログラム4または5からの常駐化設定命令か否かのチェックを行う。すなわち、常駐化エクステントパラメータ200の常駐化モード指定201をチェックする。常駐化エクステントパラメータ200の常駐化モード指定201が常駐化設定であればステップ507へ進み、常駐化エクステントパラメータ200の常駐化モード指定201が常駐化設定でなければ、ステップ503へ進む。
【0057】
ステップ503でホストユーティリティプログラム4または5からの常駐化解除命令か否かのチェックを行う。すなわち、ステップ502と同様に常駐化エクステントパラメータ200の常駐化モード指定201をチェックする。常駐化エクステントパラメータ200の常駐化モード201が常駐化解除設定でなければステップ501へ戻り、常駐化エクステントパラメータ200の常駐化モード201が常駐化解除設定であれば、ステップ504へ進む。
【0058】
ステップ504でホストユーティリティプログラム4または5より受け取った常駐化エクステントパラメータ200のチェックを行う。具体的には、常駐化エクステントパラメータ200中の常駐化モード指定201、常駐化先頭位置情報202、常駐化最終位置情報203の妥当性チェックを行う。
【0059】
ステップ505で、ステップ504でチェックを行った常駐化エクステントパラメータのチェック結果がOKか否かのチェックを行う。チェックOKであれば、ステップ901(図9)へ進む。チェックNGであれば、ステップ506へ進む。
【0060】
ステップ506でチャネル6〜9に対し、エラー報告を行う。
【0061】
ステップ507では、ステップ504と同様のチェックを行う。
【0062】
ステップ508で、ステップ505と同様の処理を行う。チェックOKであれば、ステップ701(図7)へ進む。チェックNGであれば、ステップ506へ進む。
【0063】
次に図6のフローチャートについて、説明する。図6は、常駐化エクステントテーブル300に登録された位置情報内にアクセスがあった場合の処理フローの一例である。
【0064】
ステップ601で、データはキャッシュ60に常駐化済か否かのチェックをする。具体的にはユーザデータセットがキャッシュ60上に常駐化されているかをチェックする。データがキャッシュ60に常駐化されていれば、ステップ501(図5)に戻る。データがキャッシュ60に常駐化されていなければ、ステップ602へ進む。
【0065】
ステップ602で、常駐化エクステントテーブル300の常駐化エリア各エクステント情報303により指定された常駐化情報の範囲(常駐化先頭位置情報1(306)から常駐化最終位置情報1(307)の範囲、常駐化先頭位置情報2(310)から常駐化最終位置情報2(311)の範囲、・・・、常駐化先頭位置情報n(314)から常駐化最終位置情報n(315)の範囲のいずれか)をキャッシュ60に常駐化する。この後、ステップ501(図5)に戻る。
【0066】
次に図7のフローチャートについて、説明する。図7は、ホストユーティリティプログラム4または5から常駐化設定命令が発行された時の処理を行う処理フローの一例である。
【0067】
ステップ701で、常駐化エクステントテーブル300の先頭ポインタ301は有効か否かをチェックする。すなわち、常駐化エクステントテーブル300の先頭ポインタ301が初期値か否かをチェックする。つまり、このステップは、常駐化エクステントテーブル300に登録されているエントリがあるかということである。常駐化エクステントテーブル300の先頭ポインタ301が有効(初期値ではない)であれば、ステップ705へ進む。常駐化エクステントテーブル300の先頭ポインタ301が有効(初期値である)でなければ、ステップ702へ進む。
【0068】
ステップ702で、常駐化エクステントテーブル300の先頭ポインタ301と最終ポインタ302とをフロントポインタ1(304)を示す値とし、ステップ703へ進む。
【0069】
ステップ703で、デバイス固有テーブル400の当該アドレス用常駐化エクステント数を更新し(1とする)、ステップ704へ進む。
【0070】
ステップ704で、デバイス固有テーブル400の当該アドレス用常駐化先頭エクステントポインタと当該アドレス用常駐化最終エクステントポインタを常駐化エクステントテーブル300の常駐化エリア各エクステント情報303のフロントポインタ1(304)を示す値とする。この後、ステップ802(図8)へ進む。
【0071】
ステップ705で、常駐化エクステントテーブル300の常駐化エリア各エクステント情報303内の空きエントリをサーチし、ステップ706へ進む。
【0072】
ステップ706で、ステップ705でサーチした空きエントリの位置(ポインタ)の値を記憶し、ステップ707へ進む。
【0073】
ステップ707で、常駐化エクステントテーブル300の現在の最終ポインタ302が指している該当エントリのフロントポインタの値をステップ706で記憶したエントリの位置(ポインタ)の値とし、ステップ708へ進む。
【0074】
ステップ708で、ステップ705でサーチした空きエントリのバックポインタの値を常駐化エクステントテーブル300の現在の最終ポインタ302の値とし、ステップ801(図8)へ進む。
【0075】
次に図8について、説明する。図8は、ホストユーティリティプログラム4または5からの常駐化設定命令が発行された時の処理を行う処理フローの一例である。
【0076】
ステップ801で、常駐化エクステントテーブル300の最終ポインタ302の値をステップ706で記憶したエントリの位置(ポインタ)の値とし、ステップ802へ進む。
【0077】
ステップ802で、デバイス固有情報テーブル400中の該当アドレスの常駐化エクステント数は0か否かのチェックを行う。つまり、該当アドレスの常駐エクステントが存在するか否かのチェックである。デバイス固有情報テーブル400中の該当アドレスの常駐化エクステント数が0であれば、ステップ803へ進む。デバイス固有テーブル400中の該当アドレスの常駐化エクステント数が0でなければ、ステップ806へ進む。
【0078】
ステップ803で、デバイス固有情報テーブル400中の該当アドレスの常駐化先頭エクステントポインタの値と常駐化最終エクステントポインタの値をステップ706で記憶したエントリの位置(ポインタ)の値とし、ステップ804へ進む。
【0079】
ステップ804で、デバイス固有情報テーブル400中の該当アドレスの常駐化エクステント数を更新し、ステップ805へ進む。
【0080】
ステップ805で、チャネル6〜9に対し、正常終了報告を行い、ステップ501(図5)へ戻る。
【0081】
ステップ806で、デバイス固有情報テーブル400中の該当アドレスの常駐化最終エクステントポインタの値をステップ706で記憶したエントリの位置(ポインタ)の値とし、ステップ804へ進む。
【0082】
次に図9について、説明する。図9は、ホストユーティリティプログラム4または5から常駐化解除命令が発行された時の処理を行う処理フローの一例である。
【0083】
ステップ901で、デバイス固有情報テーブル400中の該当アドレスの常駐化先頭エクステントポインタを利用し、常駐化エクステントテーブル300の常駐化エリア各エクステント情報303中で常駐化エクステントパラメータ200の常駐化先頭位置情報202と常駐化最終位置情報203が一致するエントリをサーチし、ステップ902へ進む。
【0084】
ステップ902で、ステップ901でサーチしたエントリの位置(ポインタ)の値を記憶し、ステップ903へ進む。
【0085】
ステップ903で、ステップ901でサーチしたエントリのフロントポインタとバックポインタを記憶し、ステップ904へ進む。
【0086】
ステップ904で、ステップ902で記憶した位置(ポインタ)の値は、常駐化エクステントテーブル300の先頭ポインタ301の値と一致するか否かのチェックをする。ステップ904で、ステップ902で記憶した位置(ポインタ)の値が常駐化エクステントテーブル300の先頭ポインタ301の値と一致しないならば、ステップ1001(図10)へ進む。ステップ904で、ステップ902で記憶した位置(ポインタ)の値が常駐化エクステントテーブル300の先頭ポインタ301の値と一致すれば、ステップ905へ進む。
【0087】
ステップ905で、常駐化エクステントテーブル300の先頭ポインタ301の値をステップ903で記憶したエントリのフロントポインタの値とし、ステップ1003(図10)へ進む。
【0088】
次に図10について、説明する。図10は、ホストユーティリティプログラム4または5から常駐化解除命令の処理を行う処理フローの一例である。
【0089】
ステップ1001で、ステップ902で記憶した位置(ポインタ)の値は、常駐化エクステントテーブル300の最終ポインタ302の値と一致するか否かのチェックをする。ステップ1001で、ステップ902で記憶した位置(ポインタ)の値が常駐化エクステントテーブル300の最終ポインタ302の値と一致しなければ、ステップ1005へ進む。ステップ1001で、ステップ902で記憶した位置(ポインタ)の値が常駐化エクステントテーブル300の最終ポインタ302の値と一致すれば、ステップ1002へ進む。
【0090】
ステップ1002で、常駐化エクステントテーブル300の最終ポインタ302の値をステップ903で記憶したバックポインタの値とし、ステップ1003へ進む。
【0091】
ステップ1003で、ステップ901でサーチしたエントリの常駐化先頭位置情報、常駐化最終位置情報の範囲をキャッシュ60から常駐化解除し、ステップ1004へ進む。
【0092】
ステップ1004、ステップ901でサーチした常駐化エリア各エクステント情報303中のエントリのフロントポインタ、バックポインタ、常駐化先頭位置情報、常駐化最終位置情報を初期化し、ステップ1101(図11)へ進む。
【0093】
ステップ1005で、ステップ903で記憶したバックポインタで示されるエントリのフロントポインタの値をステップ901でサーチした常駐化エリア各エクステント情報303中のエントリのフロントポインタの値とし、ステップ1006へ進む。
【0094】
ステップ1006で、ステップ903で記憶したフロントポインタで示されるエントリのバックポインタの値をステップ901でサーチした常駐化エリア各エクステント情報303中のエントリのバックポインタの値とする。
【0095】
次に図11について、説明する。図11は、ホストユーティリティプログラム4または5からの常駐化解除命令の処理を行う処理フローの一例である。
【0096】
ステップ1101で、デバイス固有情報テーブル400中の該当アドレスの常駐化エクステント数が1か否かのチェックをする。ステップ1101で、デバイス固有情報テーブル400中の該当アドレスの常駐化エクステント数が1であれば、ステップ1105へ進む。ステップ1101で、デバイス固有情報テーブル400中の該当アドレスの常駐化エクステント数が1でなければ、ステップ1102へ進む。
【0097】
ステップ1102で、ステップ902で記憶したエントリの位置(ポインタ)の値は、該当アドレスの常駐化先頭エクステントポインタの値と一致するか否かのチェックを行う。ステップ1102で、ステップ902で記憶したエントリの位置(ポインタ)の値が該当アドレスの常駐化先頭エクステントポインタの値と一致すれば、ステップ1106へ進む。ステップ1102で、ステップ902で記憶したエントリの位置(ポインタ)の値が該当アドレスの常駐化先頭エクステントポインタの値と一致しなければ、ステップ1103へ進む。
【0098】
ステップ1103で、ステップ902で記憶したエントリの位置(ポインタ)の値は、該当アドレスの常駐化最終エクステントポインタの値と一致するか否かのチェックを行う。ステップ1103で、ステップ902で記憶したエントリの位置(ポインタ)の値が、該当アドレスの常駐化最終エクステントポインタの値と一致すれば、ステップ1107へ進む。ステップ1103で、ステップ902で記憶したエントリの位置(ポインタ)の値が該当アドレスの常駐化最終エクステントポインタの値と一致しなければ、ステップ1104へ進む。
【0099】
ステップ1104で、デバイス固有情報テーブル400中の該当アドレスの常駐化エクステント数を更新し、ステップ805(図8)へ進む。
【0100】
ステップ1105で、デバイス固有情報テーブル400中の該当アドレスの常駐化エクステント数を0に、常駐化先頭エクステントポインタ、常駐化最終エクステントポインタを初期化し、ステップ805(図8)へ進む。
【0101】
ステップ1106で、デバイス固有情報テーブル400中の該当アドレスの常駐化先頭エクステントポインタの値をステップ903で記憶したフロントポインタの値とし、ステップ1104へ進む。
【0102】
ステップ1107で、デバイス固有情報テーブル400中の該当アドレスの常駐化最終エクステントポインタの値をステップ903で記憶したバックポインタの値とし、ステップ1104へ進む。
【0103】
本実施の形態によれば、ホストユーティリティプログラム4または5を用いて、複数トラックのユーザデータをまとめて、ディスクアレイサブシステム20のキャッシュ60に常駐化できるので、キャッシュヒット率が向上し、上位装置を含めた情報処理システムの性能向上を図ることができる。
【0104】
本実施の形態においては、常駐化エクステントテーブル300の常駐化エリア各エクステント情報303中の空きエントリのサーチを行っていたが、前記空きエントリを、空きエントリポインタ、空きエントリ数等の情報を用いて管理する方法を用いても、本発明が適用可能であることはいうまでもない。
【0105】
また、本実施の形態において、中央処理装置1,2上でホストユーティリティプログラム4または5を常時起動しておき、ユーザが端末装置3を使用して作成したユーザ情報91及びオペレーティングシステム等が作成、使用している稼動情報92に基づいてディスクアレイサブシステム20のキャッシュ60上に任意のデータセットの常駐化及び常駐化解除を行うことができるので、情報処理システムの稼動状況に応じたきめこまやかな動的キャッシュ常駐化を行うことができることはいうまでもない。
【0106】
本実施の形態においては、中央処理装置1,2上のホストユーティリティ4または5より、キャッシュ常駐化及びキャッシュ常駐化解除のコマンド等を受領し、ユーザデータをディスクアレイサブシステム20のキャッシュ60上に任意のデータセットの常駐化及び常駐化解除を行うケースであったが、後述する方法でもキャッシュ常駐化及びキャッシュ常駐化解除を行うことが可能である。
【0107】
具体的には、サービスプロセッサ21はディスクアレイサブシステム20の稼動情報の格納ファイルを持っており、ディスクアレイサブシステム20の稼動情報をチャネルインタフェース制御部31〜35で採取し、チャネルインタフェース制御部31〜35が共有メモリ50に一旦格納した後、一定時間毎にチャネルインタフェース制御部31〜35がバス41を通じて、共有メモリ50上に存在するディスクアレイサブシステム20の稼動情報をサービスプロセッサ21に報告する。
【0108】
サービスプロセッサ21は、チャネルインタフェース制御部31〜35から報告されたディスクアレイサブシステム20の稼動情報を格納ファイルに格納する。そしてサービスプロセッサ21は、一定時間毎にディスクアレイサブシステム20の稼動情報の格納ファイルを解析して、常駐化及び常駐化解除の指示、物理シリンダ及びヘッドアドレス、デバイスアドレス等々の情報をチャネルインタフェース制御部31〜35に対し、バス41を通じて指示する。チャネルインタフェース制御部31〜35は、サービスプロセッサ21からの前記情報の指示に基づき、ユーザデータをディスクアレイサブシステム20のキャッシュ50上に任意のデータセットの常駐化及び常駐化解除を行う。
【0109】
本実施の形態においては、中央処理装置が2台のケースであったが、中央処理装置が1台或いは3台以上であっても本発明が適用可能である。また、本実施の形態においては、処理装置は中央処理装置のみ接続構成であったが、パソコンと外部記憶装置とを用いた接続構成あるいは中央処理装置とパソコンのシェア接続構成でも本発明が適用可能である。つまり、パソコンのインタフェースは、現在SCSIインタフェース主流であるが、パソコンとディスクアレイサブシステム20間のインタフェースプロトコルを問わず、パソコンとディスクアレイサブシステム20間のインタフェースで本実施の形態の様にキャッシュ常駐化あるいはキャッシュ常駐化解除のコマンド等が定義でき、パソコン上でホストユーティリティ4または5を実行させて、パソコン上のホストユーティリティ4または5からディスクアレイサブシステム20に対し、キャッシュ常駐化あるいはキャッシュ常駐化解除指示が可能であれば、本発明が適用可能である。
【0110】
また、上位装置とディスクアレイサブシステム20間のインタフェースプロトコルを問わず、上位装置とディスクアレイサブシステム20間のインタフェースで本実施形態の様にキャッシュ常駐化あるいはキャッシュ常駐化解除のコマンド等が定義でき、上位装置上でホストユーティリティ4または5を実行させて、上位装置上のホストユーティリティ4または5からディスクアレイサブシステム20に対し、キャッシュ常駐化あるいはキャッシュ常駐化解除指示が可能であれば、本発明が適用可能であることはいうまでもない。
【0111】
本実施の形態では、外部記憶装置の例であったが、本発明が外部記憶制御装置にも適用可能であることはいうまでない。
【0112】
【発明の効果】
本発明の動的キャッシュ常駐化方法によれば、複数トラックのユーザデータをキャッシュに常駐化させることにより、キャッシュヒット率が向上するため、情報処理システム全体の性能向上を図ることができる。
【0113】
また、本発明の動的キャッシュ常駐化方法によれば、複数トラックのユーザデータをきめこまかくキャッシュに常駐化及び常駐化解除を行うことにより、キャッシュヒット率が向上するため、情報処理システム全体の性能向上を図ることができる。
【図面の簡単な説明】
【図1】本発明の一実施例である情報処理システムの概要を示すブロック図である。
【図2】本発明の一実施例である動的キャッシュ常駐化を適用するのに必要な常駐化エクステントパラメータの構造の一例を示す説明図である。
【図3】本発明の一実施例である動的キャッシュ常駐化を適用するのに必要な常駐化エクステントテーブルの構造の一例を示す説明図である。
【図4】本発明の一実施例である動的キャッシュ常駐化を適用するのに必要なデバイス固有情報テーブルの構造の一例を示す説明図である。
【図5】本発明の一実施例である動的キャッシュ常駐化の作用の一例を示す流れ図である。
【図6】本発明の一実施例である動的キャッシュ常駐化の作用の一例を示す流れ図である。
【図7】本発明の一実施例である動的キャッシュ常駐化の作用の一例を示す流れ図である。
【図8】本発明の一実施例である動的キャッシュ常駐化の作用の一例を示す流れ図である。
【図9】本発明の一実施例である動的キャッシュ常駐化の作用の一例を示す流れ図である。
【図10】本発明の一実施例である動的キャッシュ常駐化の作用の一例を示す流れ図である。
【図11】本発明の一実施例である動的キャッシュ常駐化の作用の一例を示す流れ図である。
【符号の説明】
1,2…中央処理装置、3…端末装置、4,5…ホストユーティリティプログラム、6〜9…チャネル、10〜13…ケーブル、20…ディスクアレイサブシステム、21…サービスプロセッサ、31〜35…チャネルインタフェース制御部、41,42…バス、50…共用メモリ、60…キャッシュ、71〜74…ドライブインタフェース制御部、81,82…ディスク群、200…常駐化エクステントパラメータ、201…常駐化モード指定、202…常駐化先頭位置情報、203…常駐化最終位置情報、300…常駐化エクステントテーブル、301…先頭ポインタ、302…最終ポインタ、303…常駐化エリア各エクステント情報、304,308,312…フロントポインタ、305,309,313…バックポインタ、306,310,314…常駐化先頭位置情報、307,311,315…常駐化最終位置情報、400…デバイス固有情報テーブル、401,404,407…常駐化エクステント数、402,405,408…常駐化先頭エクステントポインタ、403,406,409…常駐化最終エクステントポインタ。

Claims (3)

  1. データを一時格納するキャッシュを備えた外部記憶装置であって、
    前記キャッシュに常駐化するユーザデータが定義されたデータセット名を含むユーザ定義情報、或いは前記外部記憶装置のデータセット名を含む稼動情報に基づきユーザデータをデータセット領域単位で前記キャッシュ上に常駐化或いは前記キャッシュ上からの常駐化解除を行う外部記憶装置。
  2. キャッシュを具備した外部記憶装置と、この外部記憶装置に接続されこの外部記憶装置に対するデータの書き込み及び読み出しを行う上位装置と備えた情報処理システムであって、
    前記上位装置は、前記キャッシュ上のデータを管理するホストユーティリティプログラムと、このホストユーティリティプログラムが動作するために必要なデータセット名を含むユーザ定義情報或いは前記外部記憶装置のデータセット名を含む稼動情報とを備え、前記外部記憶装置は、前記ユーザ定義情報或いは前記稼動情報に基づいたコマンドを受領し、ユーザデータをデータセット領域単位で前記キャッシュ上に常駐化或いは前記キャッシュ上からの常駐化解除を行う情報処理システム。
  3. キャッシュを具備した外部記憶装置と、この外部記憶装置に接続されこの外部記憶装置に対するデータの書き込み及び読み出しを行う上位装置と備えた情報処理システムであって、
    前記上位装置は、前記キャッシュ上のデータを管理するホストユーティリティプログラムと、このホストユーティリティプログラムが動作するために必要なデータセット名を含むユーザ定義情報を備え、
    前記上位装置は、前記ユーザ定義情報に基づいて、前記キャッシュ上への常駐化に関する複数のユーザデータを指定するコマンドを送信し、
    前記外部記憶装置は、前記コマンドに基づいて、前記複数のユーザデータをデータセット領域単位で管理し、
    前記複数のユーザデータのそれぞれについて、アクセスの有無を判別し、前記判別によりアクセスがあったと判断されたユーザデータについて前記キャッシュ上に常駐化を行う情報処理システム。
JP19976299A 1999-07-14 1999-07-14 外部記憶装置及び情報処理システム Expired - Fee Related JP3812928B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP19976299A JP3812928B2 (ja) 1999-07-14 1999-07-14 外部記憶装置及び情報処理システム
US09/591,104 US6959359B1 (en) 1999-07-14 2000-06-09 Software prefetch system and method for concurrently overriding data prefetched into multiple levels of cache

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19976299A JP3812928B2 (ja) 1999-07-14 1999-07-14 外部記憶装置及び情報処理システム

Publications (2)

Publication Number Publication Date
JP2001027967A JP2001027967A (ja) 2001-01-30
JP3812928B2 true JP3812928B2 (ja) 2006-08-23

Family

ID=16413207

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19976299A Expired - Fee Related JP3812928B2 (ja) 1999-07-14 1999-07-14 外部記憶装置及び情報処理システム

Country Status (2)

Country Link
US (1) US6959359B1 (ja)
JP (1) JP3812928B2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6624761B2 (en) 1998-12-11 2003-09-23 Realtime Data, Llc Content independent data compression method and system
US6604158B1 (en) 1999-03-11 2003-08-05 Realtime Data, Llc System and methods for accelerated data storage and retrieval
US6601104B1 (en) 1999-03-11 2003-07-29 Realtime Data Llc System and methods for accelerated data storage and retrieval
US20010047473A1 (en) 2000-02-03 2001-11-29 Realtime Data, Llc Systems and methods for computer initialization
US9143546B2 (en) 2000-10-03 2015-09-22 Realtime Data Llc System and method for data feed acceleration and encryption
US8692695B2 (en) 2000-10-03 2014-04-08 Realtime Data, Llc Methods for encoding and decoding data
US7417568B2 (en) 2000-10-03 2008-08-26 Realtime Data Llc System and method for data feed acceleration and encryption
US7386046B2 (en) 2001-02-13 2008-06-10 Realtime Data Llc Bandwidth sensitive data compression and decompression
JP3787785B2 (ja) * 2003-12-25 2006-06-21 日本テキサス・インスツルメンツ株式会社 Dc−dcコンバータ
JP4189342B2 (ja) * 2004-03-11 2008-12-03 東芝ソリューション株式会社 ストレージ装置、ストレージコントローラ及びライトバックキャッシュ制御方法
US7644239B2 (en) 2004-05-03 2010-01-05 Microsoft Corporation Non-volatile memory cache performance improvement
US7490197B2 (en) 2004-10-21 2009-02-10 Microsoft Corporation Using external memory devices to improve system performance
JP2006163801A (ja) * 2004-12-07 2006-06-22 Canon Inc 情報記録再生装置
US8914557B2 (en) 2005-12-16 2014-12-16 Microsoft Corporation Optimizing write and wear performance for a memory
US8631203B2 (en) 2007-12-10 2014-01-14 Microsoft Corporation Management of external memory functioning as virtual cache
US8032707B2 (en) 2008-09-15 2011-10-04 Microsoft Corporation Managing cache data and metadata
US9032151B2 (en) 2008-09-15 2015-05-12 Microsoft Technology Licensing, Llc Method and system for ensuring reliability of cache data and metadata subsequent to a reboot
US7953774B2 (en) 2008-09-19 2011-05-31 Microsoft Corporation Aggregation of write traffic to a data store

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0814805B2 (ja) * 1986-11-19 1996-02-14 日本電気株式会社 キヤツシユメモリ制御方式
US5257367A (en) * 1987-06-02 1993-10-26 Cab-Tek, Inc. Data storage system with asynchronous host operating system communication link
JPH07101402B2 (ja) * 1987-08-13 1995-11-01 横河電機株式会社 ディスク・キャッシュ制御装置
DE69032614T2 (de) * 1989-11-03 1999-04-15 Compaq Computer Corp Verfahren zur Datenverteilung in einer Speicherplattenanordnung
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
JPH04336340A (ja) * 1991-05-14 1992-11-24 Nec Corp ディスクキャッシュアクセス制御方式
JP3076115B2 (ja) * 1991-11-20 2000-08-14 四国日本電気ソフトウェア株式会社 大型磁気ディスク装置
JP2777301B2 (ja) * 1992-01-07 1998-07-16 三菱電機株式会社 記録装置
JPH05189307A (ja) 1992-01-16 1993-07-30 Fujitsu Ltd 計算機システム
JP3194201B2 (ja) * 1992-02-24 2001-07-30 株式会社日立製作所 キャッシュモード選択方法
US5394532A (en) * 1992-04-15 1995-02-28 Storage Technology Corporation Disk drive array memory system having instant format capability
JPH06124239A (ja) 1992-10-13 1994-05-06 Kawasaki Steel Corp キャッシュメモリの常駐データ制御装置
US5465343A (en) * 1993-04-30 1995-11-07 Quantum Corporation Shared memory array for data block and control program storage in disk drive
JPH06348597A (ja) * 1993-06-08 1994-12-22 Hitachi Ltd キャッシュ制御方法および回転形記憶装置
JP3205171B2 (ja) 1994-04-18 2001-09-04 株式会社日立製作所 データ送信処理プログラム実行方法
JPH08263380A (ja) * 1995-03-22 1996-10-11 Mitsubishi Electric Corp ディスクキャッシュ制御方式
US6393492B1 (en) * 1995-11-03 2002-05-21 Texas Instruments Incorporated Method and arrangement for operating a mass memory storage peripheral computer device connected to a host computer
US5774682A (en) * 1995-12-11 1998-06-30 International Business Machines Corporation System for concurrent cache data access by maintaining and selectively merging multiple ranked part copies
JPH09198314A (ja) * 1996-01-23 1997-07-31 Matsushita Electric Ind Co Ltd ディスクキャッシュの制御方法およびディスクキャッシュ装置
JPH10154101A (ja) * 1996-11-26 1998-06-09 Toshiba Corp データ記憶システム及び同システムに適用するキャッシュ制御方法
JP3111912B2 (ja) 1996-11-29 2000-11-27 日本電気株式会社 ディスクキャッシュ制御方式
US5875349A (en) * 1996-12-04 1999-02-23 Intersect Technologies, Inc. Method and arrangement for allowing a computer to communicate with a data storage device
US6408369B1 (en) * 1998-03-12 2002-06-18 Emc Corporation Internal copy for a storage controller
JP4400895B2 (ja) * 1999-01-07 2010-01-20 株式会社日立製作所 ディスクアレイ制御装置
US6389432B1 (en) * 1999-04-05 2002-05-14 Auspex Systems, Inc. Intelligent virtual volume access
US6449697B1 (en) * 1999-04-23 2002-09-10 International Business Machines Corporation Prestaging data into cache in preparation for data transfer operations
US6473829B1 (en) * 1999-05-28 2002-10-29 International Business Machines Corporation Data storage device providing communication between processing units
JP2001034427A (ja) * 1999-07-23 2001-02-09 Fujitsu Ltd デバイス制御装置及び制御方法
EP1236106A4 (en) * 1999-09-22 2002-10-30 Netcell Corp RAID CONTROL SYSTEM AND METHOD WITH HOST ATA EMULATION INTERFACE
US20010047473A1 (en) * 2000-02-03 2001-11-29 Realtime Data, Llc Systems and methods for computer initialization

Also Published As

Publication number Publication date
JP2001027967A (ja) 2001-01-30
US6959359B1 (en) 2005-10-25

Similar Documents

Publication Publication Date Title
JP3812928B2 (ja) 外部記憶装置及び情報処理システム
US7930474B2 (en) Automated on-line capacity expansion method for storage device
EP0848321B1 (en) Method of data migration
EP1769329B1 (en) Dynamic loading of virtual volume data in a virtual tape server
US7130961B2 (en) Disk controller and method of controlling the cache
US8214606B2 (en) Storage system and control method thereof
US7536592B2 (en) Storage system and snapshot data preparation method in storage system
US6449696B2 (en) Device and method for input/output control of a computer system for efficient prefetching of data based on lists of data read requests for different computers and time between access requests
JP4862006B2 (ja) 計算機システム
US7380090B2 (en) Storage device and control method for the same
US20030212865A1 (en) Method and apparatus for flushing write cache data
US6954839B2 (en) Computer system
US7849258B2 (en) Storage apparatus and data verification method for the same
US20060155939A1 (en) Data processing system and method
JP2004185349A (ja) ジャーナルログを利用した更新データ書込方法
US20040123026A1 (en) Control method for storage device controller system, and storage device controller system
JP2008234056A (ja) ストレージシステム及びストレージシステムにおけるキャッシュ常駐化の制御方法
KR100663827B1 (ko) 스토리지 제어 장치 및 스토리지 제어 방법
JP2008152695A (ja) 電子的な保護対象に要求される保護能力で該保護対象を保護する記憶制御装置
JP2006031446A (ja) データ記憶装置、データ記憶方法およびデータ記憶プログラム
US6594726B1 (en) Digital data storage subsystem including arrangement for efficiently controlling fast write storage operation
JP2000057026A (ja) ファイル制御装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051024

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051228

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20051228

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060324

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060515

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060525

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060529

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090609

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100609

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100609

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110609

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110609

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120609

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120609

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130609

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees