JPH0944314A - ディスク駆動制御方法及び装置 - Google Patents
ディスク駆動制御方法及び装置Info
- Publication number
- JPH0944314A JPH0944314A JP7185771A JP18577195A JPH0944314A JP H0944314 A JPH0944314 A JP H0944314A JP 7185771 A JP7185771 A JP 7185771A JP 18577195 A JP18577195 A JP 18577195A JP H0944314 A JPH0944314 A JP H0944314A
- Authority
- JP
- Japan
- Prior art keywords
- disk
- access
- cache
- flash
- flushing
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing 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)
- Human Computer Interaction (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Power Sources (AREA)
Abstract
(57)【要約】 (修正有)
【課題】 ハード・ディスクの省電力化、装着したコン
ピュータのパフォーマンス、及びデータの保全性の要求
を満たすディスク駆動制御方法及び装置の提供。 【解決手段】 ディスク・キャッシュを持つコンピュー
タ・システムに装着されたディスクを駆動制御するため
の方法において、ディスクへのアクセスが生じたことを
検知して通知するアクセス検知段階と、前回のフラッシ
ュから所定時間T2を経過したときのみディスク・キャ
ッシュをフラッシュする第1のフラッシュ段階と、ディ
スク・アクセスの通知を受けて、前回から所定時間(T
3又はT4)を経過したときのみディスク・キャッシュ
をフラッシュする第2のフラッシュ段階と、ディスク・
アクセスの通知を受けて、前回から所定時間を経過する
前であってもその間のディスク・アクセス回数が所定値
(I又はJ)に達したときはディスク・キャッシュをフ
ラッシュする第3の段階と、を含むことを特徴とする。
ピュータのパフォーマンス、及びデータの保全性の要求
を満たすディスク駆動制御方法及び装置の提供。 【解決手段】 ディスク・キャッシュを持つコンピュー
タ・システムに装着されたディスクを駆動制御するため
の方法において、ディスクへのアクセスが生じたことを
検知して通知するアクセス検知段階と、前回のフラッシ
ュから所定時間T2を経過したときのみディスク・キャ
ッシュをフラッシュする第1のフラッシュ段階と、ディ
スク・アクセスの通知を受けて、前回から所定時間(T
3又はT4)を経過したときのみディスク・キャッシュ
をフラッシュする第2のフラッシュ段階と、ディスク・
アクセスの通知を受けて、前回から所定時間を経過する
前であってもその間のディスク・アクセス回数が所定値
(I又はJ)に達したときはディスク・キャッシュをフ
ラッシュする第3の段階と、を含むことを特徴とする。
Description
【0001】
【発明の属する技術分野】本発明は、ディスク・キャッ
シュを持つコンピュータ・システムに装着されたディス
クを駆動制御するためのディスク駆動制御方法及び装置
に係り、特に、ハード・ディスク・ドライブ(HDD)
のモータを好適に停止することによって省電力化を実現
するタイプのディスク駆動制御方法及び装置に関する。
更に詳しくは、本発明は、ハード・ディスクの省電力
化、ハード・ディスクを含むコンピュータ・システムの
パフォーマンス、及びデータの保全性の各々の要求を満
たすことができるディスク駆動制御方法及び装置に関す
る。
シュを持つコンピュータ・システムに装着されたディス
クを駆動制御するためのディスク駆動制御方法及び装置
に係り、特に、ハード・ディスク・ドライブ(HDD)
のモータを好適に停止することによって省電力化を実現
するタイプのディスク駆動制御方法及び装置に関する。
更に詳しくは、本発明は、ハード・ディスクの省電力
化、ハード・ディスクを含むコンピュータ・システムの
パフォーマンス、及びデータの保全性の各々の要求を満
たすことができるディスク駆動制御方法及び装置に関す
る。
【0002】
【従来の技術】昨今の技術革新に伴い、デスクトップ
型、ノートブック型など各種パソナル・コンピュータ
(PC)が開発され市販されている。
型、ノートブック型など各種パソナル・コンピュータ
(PC)が開発され市販されている。
【0003】コンピュータの基本構造は、CPU(Cetr
al Processing Unit)とメモリである。すなわち、CP
Uがメモリとやり取りして、ユーザが要求するタスクを
実現する訳である。メモリは、通常、アプリケーション
・プログラム(AP)やオペレーティング・システム
(OS)など、CPUが実行する各種プログラムをロー
ドするとともに、CPUの作業データを格納するのに用
いられる。ところが、メモリは、DRAMなどの揮発性
の半導体記憶素子が用いられ、且つ比較的高価なため記
憶容量にも実質上の上限がある(数MB〜数十MB)。
そこで、通常、コンピュータ・システムには、メモリを
補助すべく、不揮発性で大容量の外部記憶装置(DAS
Dともいう)が設けられている。ハード・ディスク(若
しくはハード・ディスク・ドライブ(HDD))は、現
在最もポピュラーになっている外部記憶装置の1つであ
る。1993年から1994年にかけて高密度化と高速
化が一段と進み、1GBクラスの大容量のものも安価に
入手できるようになってきた。
al Processing Unit)とメモリである。すなわち、CP
Uがメモリとやり取りして、ユーザが要求するタスクを
実現する訳である。メモリは、通常、アプリケーション
・プログラム(AP)やオペレーティング・システム
(OS)など、CPUが実行する各種プログラムをロー
ドするとともに、CPUの作業データを格納するのに用
いられる。ところが、メモリは、DRAMなどの揮発性
の半導体記憶素子が用いられ、且つ比較的高価なため記
憶容量にも実質上の上限がある(数MB〜数十MB)。
そこで、通常、コンピュータ・システムには、メモリを
補助すべく、不揮発性で大容量の外部記憶装置(DAS
Dともいう)が設けられている。ハード・ディスク(若
しくはハード・ディスク・ドライブ(HDD))は、現
在最もポピュラーになっている外部記憶装置の1つであ
る。1993年から1994年にかけて高密度化と高速
化が一段と進み、1GBクラスの大容量のものも安価に
入手できるようになってきた。
【0004】コンピュータ・システム内におけるハード
・ディスクへのアクセス(すなわちデータやプログラム
の入出力)は、通常、オペレーティング・システムのカ
ーネル(Kernel)領域に常駐するファイル・シス
テムの制御下にある。また、コンピュータ・システムが
利用可能なハード・ディスクは、一般には、システム自
身に標準装備若しくはオプション的に装着された「ロー
カル・ディスク」と、ネットワークを介してアクセス可
能な他のコンピュータ・システム内に置かれた「リモー
ト・ディスク」とに大別される(リモート・ディスクは
他のコンピュータ・システムのローカル・ディスクであ
る)。
・ディスクへのアクセス(すなわちデータやプログラム
の入出力)は、通常、オペレーティング・システムのカ
ーネル(Kernel)領域に常駐するファイル・シス
テムの制御下にある。また、コンピュータ・システムが
利用可能なハード・ディスクは、一般には、システム自
身に標準装備若しくはオプション的に装着された「ロー
カル・ディスク」と、ネットワークを介してアクセス可
能な他のコンピュータ・システム内に置かれた「リモー
ト・ディスク」とに大別される(リモート・ディスクは
他のコンピュータ・システムのローカル・ディスクであ
る)。
【0005】コンピュータのファイル・システム:ここ
で、コンピュータ内で情報(ファイル)の入出力の管理
を行うファイル・システムについて、簡単に説明してお
く。図3には、コンピュータ・システム10のアーキテ
クチャを、ファイル・システムに着目して図解してい
る。
で、コンピュータ内で情報(ファイル)の入出力の管理
を行うファイル・システムについて、簡単に説明してお
く。図3には、コンピュータ・システム10のアーキテ
クチャを、ファイル・システムに着目して図解してい
る。
【0006】図3において、稼働中のアプリケーション
41又は42がハード・ディスク18,28にアクセス
したいときには、ファイル・システム11をシステム・
コールする。ここで、アプリケーション自身は、アクセ
ス要求先がローカル・ディスク18又はリモート・ディ
スク28のいずれであるかを意識する必要はない。もし
アクセス要求先がローカル・ディスク18であれば、フ
ァイル・システム11は、さらに下位のサブ・ファイル
・システムA12にシステム・コールをリダイレクトす
る。サブ・ファイル・システムA12は、システム10
内のローカル・ディスク18へのアクセスを管理するた
めのファイル・システムであり、HDD用デバイス・ド
ライバ(D/D)16を介してハード・ディスク18を
ハードウェア操作する。サブ・ファイル・システムA1
2の具体例は"JFS(ジャーナル・ファイル・システ
ム)"である。一方、アクセス要求先がネットワーク
(例えばLAN)を介して接続された他のシステム20
上のハード・ディスク(すなわちリモート・ディスク)
28である場合、ファイル・システム11は、サブ・フ
ァイル・システムB13にシステム・コールをリダイレ
クトする。サブ・ファイル・システムB13は、上位の
ソフトウェアに対してリモート・ディスク28があたか
もローカル・ディスクの1つであるかのごとくに見せか
けるためのファイル・システムであり、ネットワークで
接続された他のシステム20上のサブ・ファイル・シス
テムB23とはトランスペアレント(すなわちアプリケ
ーションやデータを共有できる)状態にある。サブ・フ
ァイル・システムBの具体例は、米サン・マイクロシス
テムズ社が提供する"NFS(ネットワーク・ファイル
・システム)"である。サブ・ファイル・システムB1
3は、ネットワーク接続のためのカード用・デバイス・
ドライバ17を介してネットワーク・カード19をハー
ドウェア操作して、他のシステム20側のネットワーク
・カード29,ネットワーク・カード用デバイス・ドラ
イバ27などを経てリモート・ディスク28にアクセス
する。なお、サブ・ファイル・システムBとネットワー
ク・カード用デバイス・ドライバとの間に"TCP/I
P(Transmission Control Protocol/Internet Protoco
l)"のようなプロトコルが介在する場合もある。
41又は42がハード・ディスク18,28にアクセス
したいときには、ファイル・システム11をシステム・
コールする。ここで、アプリケーション自身は、アクセ
ス要求先がローカル・ディスク18又はリモート・ディ
スク28のいずれであるかを意識する必要はない。もし
アクセス要求先がローカル・ディスク18であれば、フ
ァイル・システム11は、さらに下位のサブ・ファイル
・システムA12にシステム・コールをリダイレクトす
る。サブ・ファイル・システムA12は、システム10
内のローカル・ディスク18へのアクセスを管理するた
めのファイル・システムであり、HDD用デバイス・ド
ライバ(D/D)16を介してハード・ディスク18を
ハードウェア操作する。サブ・ファイル・システムA1
2の具体例は"JFS(ジャーナル・ファイル・システ
ム)"である。一方、アクセス要求先がネットワーク
(例えばLAN)を介して接続された他のシステム20
上のハード・ディスク(すなわちリモート・ディスク)
28である場合、ファイル・システム11は、サブ・フ
ァイル・システムB13にシステム・コールをリダイレ
クトする。サブ・ファイル・システムB13は、上位の
ソフトウェアに対してリモート・ディスク28があたか
もローカル・ディスクの1つであるかのごとくに見せか
けるためのファイル・システムであり、ネットワークで
接続された他のシステム20上のサブ・ファイル・シス
テムB23とはトランスペアレント(すなわちアプリケ
ーションやデータを共有できる)状態にある。サブ・フ
ァイル・システムBの具体例は、米サン・マイクロシス
テムズ社が提供する"NFS(ネットワーク・ファイル
・システム)"である。サブ・ファイル・システムB1
3は、ネットワーク接続のためのカード用・デバイス・
ドライバ17を介してネットワーク・カード19をハー
ドウェア操作して、他のシステム20側のネットワーク
・カード29,ネットワーク・カード用デバイス・ドラ
イバ27などを経てリモート・ディスク28にアクセス
する。なお、サブ・ファイル・システムBとネットワー
ク・カード用デバイス・ドライバとの間に"TCP/I
P(Transmission Control Protocol/Internet Protoco
l)"のようなプロトコルが介在する場合もある。
【0007】図3において、参照番号14や15で示さ
れるブロックは、いわゆるディスク・キャッシュ*であ
る。ディスク・キャッシュは、メモリへのアクセスとハ
ード・ディスクへのアクセスとの速度差を吸収し、結果
としてコンピュータ本体とハード・ディスクとの間での
データ交換を高速化するものである。CPUがますます
パワー・アップされている反面、ディスク・アクセスは
シーク・オペレーションなどの機械的制御を含むがゆえ
に高速化に限界がある。このため、ディスク・キャッシ
ュは多くのコンピュータ・システムに取り入れられてい
る。
れるブロックは、いわゆるディスク・キャッシュ*であ
る。ディスク・キャッシュは、メモリへのアクセスとハ
ード・ディスクへのアクセスとの速度差を吸収し、結果
としてコンピュータ本体とハード・ディスクとの間での
データ交換を高速化するものである。CPUがますます
パワー・アップされている反面、ディスク・アクセスは
シーク・オペレーションなどの機械的制御を含むがゆえ
に高速化に限界がある。このため、ディスク・キャッシ
ュは多くのコンピュータ・システムに取り入れられてい
る。
【0008】ディスク・キャッシュ:ここで、ディスク
・キャッシュについて簡単に説明しておく。
・キャッシュについて簡単に説明しておく。
【0009】ディスク・キャッシュは、物理的にはメモ
リの一部を割り当てられたものであり、通常、ファイル
・システムの作業エリア内に置かれている。ディスク・
キャッシュの基本原理は、CPUとメモリの間に置かれ
るキャッシュ・メモリと略同一である。キャッシュ・ヒ
ットしている限りは、アプリケーションはディスク・キ
ャッシュ(実際にはメモリ)をアクセスするだけでよ
い。したがって、ディスク自体へのアクセスの機会はか
なり低減されることになる。
リの一部を割り当てられたものであり、通常、ファイル
・システムの作業エリア内に置かれている。ディスク・
キャッシュの基本原理は、CPUとメモリの間に置かれ
るキャッシュ・メモリと略同一である。キャッシュ・ヒ
ットしている限りは、アプリケーションはディスク・キ
ャッシュ(実際にはメモリ)をアクセスするだけでよ
い。したがって、ディスク自体へのアクセスの機会はか
なり低減されることになる。
【0010】データの読み出し(リード:READ)ア
クセスの場合、ハード・ディスクから一旦読み出したデ
ータをディスク・キャッシュ上に蓄えておき、再度同じ
データを読み出すときにハード・ディスク自体から読み
出さなくても済むようになっている。
クセスの場合、ハード・ディスクから一旦読み出したデ
ータをディスク・キャッシュ上に蓄えておき、再度同じ
データを読み出すときにハード・ディスク自体から読み
出さなくても済むようになっている。
【0011】一方、データの書き込み(ライト:WRI
TE)アクセスには、新しいデータをディスク・キャッ
シュに上書きするだけでいちいちハード・ディスクまで
書き戻さない「ライト・バック」方式と、ディスク・キ
ャッシュとハード・ディスク双方を更新する「ライト・
スルー」方式の2通りがある。ライト・バックによれ
ば、ディスク・キャッシュ(実際にはメモリ)に新しい
データを書き込むだけでライト・オペレーションが完了
し、アプリケーションはすぐさま次のジョブにとりかか
る(例えばユーザにダアログ・ボックスを提示する)こ
とができる。これに対して、ライト・スルーによれば、
データ更新の度に逐一ディスク・アクセスが起こるの
で、システム10のパフォーマンスがよくない。したが
って、ディスク・キャッシュにおいては、多くの場合、
ライト・バック方式が採用されている(例えばUNIX
やOS/2("OS/2"は米IBM社の商標)などのオ
ペレーティング・システムではライト・バックを採用し
ている)。ライト・バックによればデータ・ライト時の
ディスク・アクセスを要しない。
TE)アクセスには、新しいデータをディスク・キャッ
シュに上書きするだけでいちいちハード・ディスクまで
書き戻さない「ライト・バック」方式と、ディスク・キ
ャッシュとハード・ディスク双方を更新する「ライト・
スルー」方式の2通りがある。ライト・バックによれ
ば、ディスク・キャッシュ(実際にはメモリ)に新しい
データを書き込むだけでライト・オペレーションが完了
し、アプリケーションはすぐさま次のジョブにとりかか
る(例えばユーザにダアログ・ボックスを提示する)こ
とができる。これに対して、ライト・スルーによれば、
データ更新の度に逐一ディスク・アクセスが起こるの
で、システム10のパフォーマンスがよくない。したが
って、ディスク・キャッシュにおいては、多くの場合、
ライト・バック方式が採用されている(例えばUNIX
やOS/2("OS/2"は米IBM社の商標)などのオ
ペレーティング・システムではライト・バックを採用し
ている)。ライト・バックによればデータ・ライト時の
ディスク・アクセスを要しない。
【0012】なお、アプリケーション・プログラムは、
データをリード及びライトするときは、該当データがデ
ィスク・キャッシュ上にあるか否かを意識する必要はな
い。ただファイル・システムをシステム・コールするだ
けでよい。
データをリード及びライトするときは、該当データがデ
ィスク・キャッシュ上にあるか否かを意識する必要はな
い。ただファイル・システムをシステム・コールするだ
けでよい。
【0013】キャッシュ・フラッシュ:ライト・バック
方式を採用した場合、データはディスク・キャッシュに
は書き込まれるが、ハード・ディスクまでは書き戻され
ない。このため、ディスク・キャッシュとハード・ディ
スクとの間でデータ・コヒーレンシーが保たれない。こ
のため、インコヒーレントなデータの保全(すなわち不
測の事態に伴うデータの消失)を未然に防ぐべく、適宜
ディスク・キャッシュ上の更新データをハード・ディス
ク上に書き戻す作業が必要となる。この作業のことを
「キャッシュ・フラッシュ」(又は単に「フラッシ
ュ」)という。
方式を採用した場合、データはディスク・キャッシュに
は書き込まれるが、ハード・ディスクまでは書き戻され
ない。このため、ディスク・キャッシュとハード・ディ
スクとの間でデータ・コヒーレンシーが保たれない。こ
のため、インコヒーレントなデータの保全(すなわち不
測の事態に伴うデータの消失)を未然に防ぐべく、適宜
ディスク・キャッシュ上の更新データをハード・ディス
ク上に書き戻す作業が必要となる。この作業のことを
「キャッシュ・フラッシュ」(又は単に「フラッシ
ュ」)という。
【0014】図4には、キャッシュ・フラッシュを実行
するメカニズムを図解している。同図において、「シン
ク(Sync)」51は、ファイル・システムに代わっ
てディスク・キャッシュを行うプログラムである。シン
ク51は、カーネル領域に常駐するラン・タイム・ライ
ブラリ(シェアド・ライブラリ、又はダイナミック・リ
ンク・ライブラリ(DLL)ともいう)の1つであり、
キャッシュ・フラッシュ用のファンクションからなる。
するメカニズムを図解している。同図において、「シン
ク(Sync)」51は、ファイル・システムに代わっ
てディスク・キャッシュを行うプログラムである。シン
ク51は、カーネル領域に常駐するラン・タイム・ライ
ブラリ(シェアド・ライブラリ、又はダイナミック・リ
ンク・ライブラリ(DLL)ともいう)の1つであり、
キャッシュ・フラッシュ用のファンクションからなる。
【0015】また、図4において、「シンク・デーモン
(Daemon)**」と呼ばれるプログラム52は、ユ
ーザ領域に常駐して、所定時間(例えば1分あるいは3
0秒)間隔でシンクをコールするプログラムである。
(Daemon)**」と呼ばれるプログラム52は、ユ
ーザ領域に常駐して、所定時間(例えば1分あるいは3
0秒)間隔でシンクをコールするプログラムである。
【0016】シンク・デーモン52は、定期的にシンク
・ルーチンを呼び出す。そして、シンク・ルーチン51
は、ディスク・キャッシュ14,15中の書き替えられ
たキャッシュ・ラインを、各ハード・ディスク18−1
…にフラッシュする。書き替えられた(すなわちハード
・ディスク上のデータとインコヒーレントであること。
「ダーティ」ともいう)か否かは各キャッシュ・ライン
のTAGメモリを参照することによって判別される(周
知)。キャッシュ・フラッシュの実行は、特に変更デー
タが多いときに行う方がより効率的である。なお、フラ
ッシュのためのハード・ディスク18,28の実際のハ
ードウェア操作は各ハード・ディスク18−1…のデバ
イス・ドライバ16,17が行う。
・ルーチンを呼び出す。そして、シンク・ルーチン51
は、ディスク・キャッシュ14,15中の書き替えられ
たキャッシュ・ラインを、各ハード・ディスク18−1
…にフラッシュする。書き替えられた(すなわちハード
・ディスク上のデータとインコヒーレントであること。
「ダーティ」ともいう)か否かは各キャッシュ・ライン
のTAGメモリを参照することによって判別される(周
知)。キャッシュ・フラッシュの実行は、特に変更デー
タが多いときに行う方がより効率的である。なお、フラ
ッシュのためのハード・ディスク18,28の実際のハ
ードウェア操作は各ハード・ディスク18−1…のデバ
イス・ドライバ16,17が行う。
【0017】データの保全性(security):U
NIXなどの最近の高機能なオペレーティング・システ
ムの世界では、高いデータの保全性(securit
y)を実現するために、種々の工夫が凝らされている。
NIXなどの最近の高機能なオペレーティング・システ
ムの世界では、高いデータの保全性(securit
y)を実現するために、種々の工夫が凝らされている。
【0018】例えば、ファイル・システムは、アプリケ
ーションなどからディスク・データへのアクセスが起こ
る度にそのトランザクション・データを記録(ログ)す
るようになっている。このトランザクション・データの
中身はアクセス時刻などであり、1セクタ上の1バイト
分程度のサイズである。トランザクション・データのロ
グは、ディスク・キャッシュ上に一旦書き込み、キャッ
シュ・フラッシュ時にハード・ディスク側に反映させ
る、というフローで行われるようになっている。トラン
ザクション・データは、例えば不測の電源停止などで失
われた際に、アクセスの履歴に基づいてリカバーしたり
するのに有用である。
ーションなどからディスク・データへのアクセスが起こ
る度にそのトランザクション・データを記録(ログ)す
るようになっている。このトランザクション・データの
中身はアクセス時刻などであり、1セクタ上の1バイト
分程度のサイズである。トランザクション・データのロ
グは、ディスク・キャッシュ上に一旦書き込み、キャッ
シュ・フラッシュ時にハード・ディスク側に反映させ
る、というフローで行われるようになっている。トラン
ザクション・データは、例えば不測の電源停止などで失
われた際に、アクセスの履歴に基づいてリカバーしたり
するのに有用である。
【0019】保全性という本来の目的からすれば、アプ
リケーションなどによる実体的なディスク・データのア
クセスが起こった時のみトランザクション・データをロ
グすればよいことになる。しかしながら、ファイル・シ
ステムからはデータ・アクセスが実体的なものかどうか
は見えないので、どんな場合であってもデータ・アクセ
スが起こる度にトランザクション・データをログしてい
るのが実情である。したがって、単にラン・タイム・ラ
イブラリをコールするだけのようなデータの保全性に影
響を及ぼさないようなデータ・アクセスであっても、ト
ランザクション・データがログされてしまう。
リケーションなどによる実体的なディスク・データのア
クセスが起こった時のみトランザクション・データをロ
グすればよいことになる。しかしながら、ファイル・シ
ステムからはデータ・アクセスが実体的なものかどうか
は見えないので、どんな場合であってもデータ・アクセ
スが起こる度にトランザクション・データをログしてい
るのが実情である。したがって、単にラン・タイム・ラ
イブラリをコールするだけのようなデータの保全性に影
響を及ぼさないようなデータ・アクセスであっても、ト
ランザクション・データがログされてしまう。
【0020】前述したシンク・デーモン52によるシン
ク・ルーチン51の定期的なコールは、ライブラリのコ
ールの一種である。シンク・ルーチン51自体は、小さ
いプログラムであり、ディスク・キャッシュ上に存在し
続ける場合も多い。すなわちシンク・デーモン52によ
るシンク・ルーチン51のコールは、実体を伴わない形
式的なディスク・アクセスなのであるが、トランザクシ
ョン・データがログされてしまうのである。トランザク
ション・データは、まずディスク・キャッシュに書き込
むという形でログされるので、ログ自体によってもディ
スク・キャッシュは書き替えられダーティになる。そも
そもシンク・ルーチン51はダーティなディスク・キャ
ッシュをフラッシュするためにコールされるものである
が、キャッシュがダーティでないときでも、単にシンク
・デーモン52からコールされるだけで自らダーティに
してしまい、不必要にキャッシュ・フラッシュする機会
を作ってしまうこともある。キャッシュ・フラッシュは
ダーティなデータが多いときに行う方が効率的である、
ということは言うまでもない。このように微小なサイズ
で且つ意味のないのトランザクション・データのための
キャッシュ・フラッシュは、コンピュータ・システムの
パフォーマンスを徒に低下させていることに他ならな
い。
ク・ルーチン51の定期的なコールは、ライブラリのコ
ールの一種である。シンク・ルーチン51自体は、小さ
いプログラムであり、ディスク・キャッシュ上に存在し
続ける場合も多い。すなわちシンク・デーモン52によ
るシンク・ルーチン51のコールは、実体を伴わない形
式的なディスク・アクセスなのであるが、トランザクシ
ョン・データがログされてしまうのである。トランザク
ション・データは、まずディスク・キャッシュに書き込
むという形でログされるので、ログ自体によってもディ
スク・キャッシュは書き替えられダーティになる。そも
そもシンク・ルーチン51はダーティなディスク・キャ
ッシュをフラッシュするためにコールされるものである
が、キャッシュがダーティでないときでも、単にシンク
・デーモン52からコールされるだけで自らダーティに
してしまい、不必要にキャッシュ・フラッシュする機会
を作ってしまうこともある。キャッシュ・フラッシュは
ダーティなデータが多いときに行う方が効率的である、
ということは言うまでもない。このように微小なサイズ
で且つ意味のないのトランザクション・データのための
キャッシュ・フラッシュは、コンピュータ・システムの
パフォーマンスを徒に低下させていることに他ならな
い。
【0021】[注釈] *ディスク・キャッシュ:当該技術分野においては、
「ディスク・キャッシュ」とは、ファイル・システムが
自己の作業エリアで管理するという物理的にはメモリ内
にあるもの(上述)以外に、ハード・ディスク・ドライ
ブのユニット内に装備されたバッファ・メモリを指す場
合もある。但し、本明細書における「ディスク・キャッ
シュ」は前者のみと把握されたい。 **Daemon:デーモンとは、ユーザ領域にロード
され、常にアプリケーションのバックグラウンドで動作
するプログラムの一般名称である。本明細書中のデーモ
ンは、所定時間間隔で特定のジョブをコールするプログ
ラムであると把握されたい。
「ディスク・キャッシュ」とは、ファイル・システムが
自己の作業エリアで管理するという物理的にはメモリ内
にあるもの(上述)以外に、ハード・ディスク・ドライ
ブのユニット内に装備されたバッファ・メモリを指す場
合もある。但し、本明細書における「ディスク・キャッ
シュ」は前者のみと把握されたい。 **Daemon:デーモンとは、ユーザ領域にロード
され、常にアプリケーションのバックグラウンドで動作
するプログラムの一般名称である。本明細書中のデーモ
ンは、所定時間間隔で特定のジョブをコールするプログ
ラムであると把握されたい。
【0022】
【発明が解決しようとする課題】ところで、昨今、パー
ソナル・コンピュータに対する省電力化の要求はますま
す高まってきている。ノートブックPCの場合、内蔵バ
ッテリ・パックによる駆動時間を伸ばすためであり、デ
スクトップPCの場合、資源有限というエコロジー的な
観点に因るものである。例えば米国環境保護庁(EP
A)は、"Energy Star"と呼ばれる省エネル
ギのための自主規制プログラムを発表して、デスクトッ
プPCへの節電機能の装備を推奨している。
ソナル・コンピュータに対する省電力化の要求はますま
す高まってきている。ノートブックPCの場合、内蔵バ
ッテリ・パックによる駆動時間を伸ばすためであり、デ
スクトップPCの場合、資源有限というエコロジー的な
観点に因るものである。例えば米国環境保護庁(EP
A)は、"Energy Star"と呼ばれる省エネル
ギのための自主規制プログラムを発表して、デスクトッ
プPCへの節電機能の装備を推奨している。
【0023】PCの省電力化は、内部の各電気回路の週
費電力自体を低減させる以外に、使用状況が低下した電
気回路や周辺デバイスに対する電力供給を適宜低下若し
くは遮断することによっても実現される。後者のこと
を、特に「パワー・マネージメント(Power ma
nagement)」と呼ぶこともある。ハード・ディ
スクへのアクセスが所定時間以上なかった、すなわちH
DDアイドル状態が所定時間継続した場合にディスク・
ドライブのモータを停止させるという「HDDオフ」
は、パワー・マネージメントの代表例である。(但し、
ここでいう「モータ」とは、ディスク・ドライブ内のデ
ィスクの回転モータ、及び磁気ヘッドのスライダ・モー
タという2つのモータのうち特に前者を指す。以下同
様。)
費電力自体を低減させる以外に、使用状況が低下した電
気回路や周辺デバイスに対する電力供給を適宜低下若し
くは遮断することによっても実現される。後者のこと
を、特に「パワー・マネージメント(Power ma
nagement)」と呼ぶこともある。ハード・ディ
スクへのアクセスが所定時間以上なかった、すなわちH
DDアイドル状態が所定時間継続した場合にディスク・
ドライブのモータを停止させるという「HDDオフ」
は、パワー・マネージメントの代表例である。(但し、
ここでいう「モータ」とは、ディスク・ドライブ内のデ
ィスクの回転モータ、及び磁気ヘッドのスライダ・モー
タという2つのモータのうち特に前者を指す。以下同
様。)
【0024】ところが、UNIXなどの最近の高機能な
オペレーティング・システムの世界では、アプリケーシ
ョンなどから実体的なディスク・アクセス要求が所定時
間以上起こらなかった場合でもハード・ディスクを止め
ることができない、という奇異な現象が生じている。な
ぜならば、シンク・ルーチン51がシンク・デーモン5
2によって短い時間間隔(例えば1分又は30秒)でコ
ールされる度にトランザクション・データがログされ、
この結果、実体的なデータの書き替えがなくてもディス
ク・キャッシュはダーティになってしまうからである
(前述)。ハード・ディスクが実質上アイドル状態にな
っても、シンク・デーモン52は定期的にシンク・ルー
チン51を呼び出し、これに伴ってハード・ディスクは
起こされてしまう、という訳である。
オペレーティング・システムの世界では、アプリケーシ
ョンなどから実体的なディスク・アクセス要求が所定時
間以上起こらなかった場合でもハード・ディスクを止め
ることができない、という奇異な現象が生じている。な
ぜならば、シンク・ルーチン51がシンク・デーモン5
2によって短い時間間隔(例えば1分又は30秒)でコ
ールされる度にトランザクション・データがログされ、
この結果、実体的なデータの書き替えがなくてもディス
ク・キャッシュはダーティになってしまうからである
(前述)。ハード・ディスクが実質上アイドル状態にな
っても、シンク・デーモン52は定期的にシンク・ルー
チン51を呼び出し、これに伴ってハード・ディスクは
起こされてしまう、という訳である。
【0025】また、キャッシュ・フラッシュは、ダーテ
ィなデータが多くなったタイミングで行う方が効率的で
あるが、微小サイズで且つ意味のないのトランザクショ
ン・データのための行うのではタイムリーとは言えず、
コンピュータ・システムのパフォーマンスを徒に低下さ
せていることに他ならない。
ィなデータが多くなったタイミングで行う方が効率的で
あるが、微小サイズで且つ意味のないのトランザクショ
ン・データのための行うのではタイムリーとは言えず、
コンピュータ・システムのパフォーマンスを徒に低下さ
せていることに他ならない。
【0026】このような問題の容易且つ直感的なソリュ
ーションの1つは、シンク・デーモンがコールする時間
間隔を長くする、ということである。しかし、キャッシ
ュ・フラッシュの間隔を単純に長くしただけでは、ディ
スク・キャッシュ上のダーティなデータが長い間ハード
・ディスクに反映されないことになり、データの保全性
が脅かされる結果となる。特に、不測の事態で電源が遮
断された場合のダメージは非常に大きい。また、トラン
ザクション・データのログ機能をドロップさせるという
ことも考えられよう。しかしながら、現在及び将来にお
けるコンピュータ・システムに期待されている保全性と
を比較考量すると、これらのソリューションは安直なも
のに過ぎない。
ーションの1つは、シンク・デーモンがコールする時間
間隔を長くする、ということである。しかし、キャッシ
ュ・フラッシュの間隔を単純に長くしただけでは、ディ
スク・キャッシュ上のダーティなデータが長い間ハード
・ディスクに反映されないことになり、データの保全性
が脅かされる結果となる。特に、不測の事態で電源が遮
断された場合のダメージは非常に大きい。また、トラン
ザクション・データのログ機能をドロップさせるという
ことも考えられよう。しかしながら、現在及び将来にお
けるコンピュータ・システムに期待されている保全性と
を比較考量すると、これらのソリューションは安直なも
のに過ぎない。
【0027】なお、ハード・ディスクの省電力化に関す
る類似の問題は、例えば日経エレクトロニクス,199
4年7月4日号(no.612),98頁にも言及され
ている。
る類似の問題は、例えば日経エレクトロニクス,199
4年7月4日号(no.612),98頁にも言及され
ている。
【0028】本発明の目的は、ディスク・キャッシュを
持つコンピュータ・システムに装着されたディスクを駆
動制御するための、優れたディスク駆動制御方法及び装
置を提供することにある。
持つコンピュータ・システムに装着されたディスクを駆
動制御するための、優れたディスク駆動制御方法及び装
置を提供することにある。
【0029】本発明の更なる目的は、ハード・ディスク
・ドライブのモータを好適に停止することによって省電
力化を実現する、優れたディスク駆動制御方法及び装置
を提供することにある。
・ドライブのモータを好適に停止することによって省電
力化を実現する、優れたディスク駆動制御方法及び装置
を提供することにある。
【0030】本発明の更なる目的は、ハード・ディスク
の省電力化とデータの保全性の双方の要求を満たすこと
ができるディスク駆動制御方法及び装置を提供すること
にある。
の省電力化とデータの保全性の双方の要求を満たすこと
ができるディスク駆動制御方法及び装置を提供すること
にある。
【0031】本発明の更なる目的は、ディスク・キャッ
シュを最適なタイミングでフラッシュさせることができ
るディスク駆動制御方法及び装置を提供することにあ
る。
シュを最適なタイミングでフラッシュさせることができ
るディスク駆動制御方法及び装置を提供することにあ
る。
【0032】
【課題を解決するための手段及び作用】本発明は、上記
課題を参酌してなされたものであり、その第1の側面
は、ディスク・キャッシュを持つコンピュータ・システ
ムに装着されたディスクを駆動制御するためのディスク
駆動制御方法において、(a) 前記ディスクへのアクセス
が生じたことを検知して通知するアクセス検知段階と、
(b) 前回のフラッシュから所定時間(T2)を経過した
ときのみ前記ディスク・キャッシュをフラッシュする第
1のフラッシュ段階と、(c) ディスク・アクセスの通知
を受けて、前回のディスク・アクセスから所定時間(T
3又はT4)を経過したときのみ前記ディスク・キャッ
シュをフラッシュする第2のフラッシュ段階と、(d) デ
ィスク・アクセスの通知を受けて、前回のディスク・ア
クセスから所定時間(T3又はT4)を経過する前であ
ってもその間のディスク・アクセス回数が所定値(I又
はJ)に達したときは前記ディスク・キャッシュをフラ
ッシュする第3のフラッシュ段階と、を含むことを特徴
とするディスク駆動制御方法である。
課題を参酌してなされたものであり、その第1の側面
は、ディスク・キャッシュを持つコンピュータ・システ
ムに装着されたディスクを駆動制御するためのディスク
駆動制御方法において、(a) 前記ディスクへのアクセス
が生じたことを検知して通知するアクセス検知段階と、
(b) 前回のフラッシュから所定時間(T2)を経過した
ときのみ前記ディスク・キャッシュをフラッシュする第
1のフラッシュ段階と、(c) ディスク・アクセスの通知
を受けて、前回のディスク・アクセスから所定時間(T
3又はT4)を経過したときのみ前記ディスク・キャッ
シュをフラッシュする第2のフラッシュ段階と、(d) デ
ィスク・アクセスの通知を受けて、前回のディスク・ア
クセスから所定時間(T3又はT4)を経過する前であ
ってもその間のディスク・アクセス回数が所定値(I又
はJ)に達したときは前記ディスク・キャッシュをフラ
ッシュする第3のフラッシュ段階と、を含むことを特徴
とするディスク駆動制御方法である。
【0033】また、本発明の第2の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御方法に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知段階と、(b) 前記アクセ
ス検知手段から通知を受けて、前回のディスク・アクセ
スから所定時間(T3又はT4)を経過したときのみ前
記ディスク・キャッシュをフラッシュする第2のフラッ
シュ段階と、(c) 前記アクセス検知手段から通知を受け
て、前回のディスク・アクセスから所定時間(T3又は
T4)を経過する前であってもその間のディスク・アク
セス回数が所定値(I又はJ)に達したときは前記ディ
スク・キャッシュをフラッシュする第3のフラッシュ段
階と、を含むことを特徴とするディスク駆動制御方法で
ある。
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御方法に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知段階と、(b) 前記アクセ
ス検知手段から通知を受けて、前回のディスク・アクセ
スから所定時間(T3又はT4)を経過したときのみ前
記ディスク・キャッシュをフラッシュする第2のフラッ
シュ段階と、(c) 前記アクセス検知手段から通知を受け
て、前回のディスク・アクセスから所定時間(T3又は
T4)を経過する前であってもその間のディスク・アク
セス回数が所定値(I又はJ)に達したときは前記ディ
スク・キャッシュをフラッシュする第3のフラッシュ段
階と、を含むことを特徴とするディスク駆動制御方法で
ある。
【0034】また、本発明の第3の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御方法に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知段階と、(b) 前記アクセ
ス検知手段から通知を受けて、前回のディスク・アクセ
スから所定時間(T3又はT4)を経過したときのみ前
記ディスク・キャッシュをフラッシュする第2のフラッ
シュ段階と、を含むことを特徴とするディスク駆動制御
方法である。
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御方法に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知段階と、(b) 前記アクセ
ス検知手段から通知を受けて、前回のディスク・アクセ
スから所定時間(T3又はT4)を経過したときのみ前
記ディスク・キャッシュをフラッシュする第2のフラッ
シュ段階と、を含むことを特徴とするディスク駆動制御
方法である。
【0035】また、本発明の第4の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御方法に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知段階と、(b) 前記アクセ
ス検知手段から通知を受けて、ディスク・アクセス回数
が所定値(I又はJ)に達したときは前記ディスク・キ
ャッシュをフラッシュする第3のフラッシュ段階と、を
含むことを特徴とするディスク駆動制御方法である。
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御方法に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知段階と、(b) 前記アクセ
ス検知手段から通知を受けて、ディスク・アクセス回数
が所定値(I又はJ)に達したときは前記ディスク・キ
ャッシュをフラッシュする第3のフラッシュ段階と、を
含むことを特徴とするディスク駆動制御方法である。
【0036】また、本発明の第5の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御方法に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知段階と、(b) 前回のフラ
ッシュから所定時間(T2)を経過したときのみ前記デ
ィスク・キャッシュをフラッシュする第1のフラッシュ
段階と、を含むことを特徴とするディスク駆動制御方法
である。
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御方法に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知段階と、(b) 前回のフラ
ッシュから所定時間(T2)を経過したときのみ前記デ
ィスク・キャッシュをフラッシュする第1のフラッシュ
段階と、を含むことを特徴とするディスク駆動制御方法
である。
【0037】また、本発明の第6の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知手段と、(b) 前記ディス
ク・キャッシュをフラッシュするフラッシュ手段と、
(c) 前回のフラッシュから所定時間(T2)を経過した
ときのみ前記フラッシュ手段に前記ディスク・キャッシ
ュをフラッシュさせる第1のフラッシュ付勢手段と、
(d) 前記アクセス検知手段から通知を受けて、前回のデ
ィスク・アクセスから所定時間(T3又はT4)を経過
したときのみ前記フラッシュ手段に前記ディスク・キャ
ッシュをフラッシュさせる第2のフラッシュ付勢手段
と、(e) 前記アクセス検知手段から通知を受けて、前回
のディスク・アクセスから所定時間(T3又はT4)を
経過する前であってもその間のディスク・アクセス回数
が所定値(I又はJ)に達したときは前記フラッシュ手
段に前記ディスク・キャッシュをフラッシュさせる第3
のフラッシュ付勢手段と、を含むことを特徴とするディ
スク駆動制御装置である。
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知手段と、(b) 前記ディス
ク・キャッシュをフラッシュするフラッシュ手段と、
(c) 前回のフラッシュから所定時間(T2)を経過した
ときのみ前記フラッシュ手段に前記ディスク・キャッシ
ュをフラッシュさせる第1のフラッシュ付勢手段と、
(d) 前記アクセス検知手段から通知を受けて、前回のデ
ィスク・アクセスから所定時間(T3又はT4)を経過
したときのみ前記フラッシュ手段に前記ディスク・キャ
ッシュをフラッシュさせる第2のフラッシュ付勢手段
と、(e) 前記アクセス検知手段から通知を受けて、前回
のディスク・アクセスから所定時間(T3又はT4)を
経過する前であってもその間のディスク・アクセス回数
が所定値(I又はJ)に達したときは前記フラッシュ手
段に前記ディスク・キャッシュをフラッシュさせる第3
のフラッシュ付勢手段と、を含むことを特徴とするディ
スク駆動制御装置である。
【0038】また、本発明の第7の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知手段と、(b) 前記ディス
ク・キャッシュをフラッシュするフラッシュ手段と、
(c) 前記アクセス検知手段から通知を受けて、前回のデ
ィスク・アクセスから所定時間(T3又はT4)を経過
したときのみ前記フラッシュ手段に前記ディスク・キャ
ッシュをフラッシュさせる第2のフラッシュ付勢手段
と、(d) 前記アクセス検知手段から通知を受けて、前回
のディスク・アクセスから所定時間(T3又はT4)を
経過する前であってもその間のディスク・アクセス回数
が所定値(I又はJ)に達したときは前記フラッシュ手
段に前記ディスク・キャッシュをフラッシュさせる第3
のフラッシュ付勢手段と、を含むことを特徴とするディ
スク駆動制御装置である。
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知手段と、(b) 前記ディス
ク・キャッシュをフラッシュするフラッシュ手段と、
(c) 前記アクセス検知手段から通知を受けて、前回のデ
ィスク・アクセスから所定時間(T3又はT4)を経過
したときのみ前記フラッシュ手段に前記ディスク・キャ
ッシュをフラッシュさせる第2のフラッシュ付勢手段
と、(d) 前記アクセス検知手段から通知を受けて、前回
のディスク・アクセスから所定時間(T3又はT4)を
経過する前であってもその間のディスク・アクセス回数
が所定値(I又はJ)に達したときは前記フラッシュ手
段に前記ディスク・キャッシュをフラッシュさせる第3
のフラッシュ付勢手段と、を含むことを特徴とするディ
スク駆動制御装置である。
【0039】また、本発明の第8の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知手段と、(b) 前記ディス
ク・キャッシュをフラッシュするフラッシュ手段と、
(c) 前記アクセス検知手段から通知を受けて、前回のデ
ィスク・アクセスから所定時間(T3又はT4)を経過
したときのみ前記フラッシュ手段に前記ディスク・キャ
ッシュをフラッシュさせる第2のフラッシュ付勢手段
と、を含むことを特徴とするディスク駆動制御装置であ
る。
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知手段と、(b) 前記ディス
ク・キャッシュをフラッシュするフラッシュ手段と、
(c) 前記アクセス検知手段から通知を受けて、前回のデ
ィスク・アクセスから所定時間(T3又はT4)を経過
したときのみ前記フラッシュ手段に前記ディスク・キャ
ッシュをフラッシュさせる第2のフラッシュ付勢手段
と、を含むことを特徴とするディスク駆動制御装置であ
る。
【0040】また、本発明の第9の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知手段と、(b) 前記ディス
ク・キャッシュをフラッシュするフラッシュ手段と、
(c) 前記アクセス検知手段から通知を受けて、ディスク
・アクセス回数が所定値(I又はJ)に達したときは前
記フラッシュ手段に前記ディスク・キャッシュをフラッ
シュさせる第3のフラッシュ付勢手段と、を含むことを
特徴とするディスク駆動制御装置である。
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知手段と、(b) 前記ディス
ク・キャッシュをフラッシュするフラッシュ手段と、
(c) 前記アクセス検知手段から通知を受けて、ディスク
・アクセス回数が所定値(I又はJ)に達したときは前
記フラッシュ手段に前記ディスク・キャッシュをフラッ
シュさせる第3のフラッシュ付勢手段と、を含むことを
特徴とするディスク駆動制御装置である。
【0041】また、本発明の第10の側面は、ディスク
・キャッシュを持つコンピュータ・システムに装着され
たディスクを駆動制御するためのディスク駆動制御装置
において、(a) 前記ディスクへのアクセスが生じたこと
を検知して通知するアクセス検知手段と、(b) 前記ディ
スク・キャッシュをフラッシュするフラッシュ手段と、
(c) 前回のフラッシュから所定時間(T2)を経過した
ときのみ前記フラッシュ手段に前記ディスク・キャッシ
ュをフラッシュさせる第1のフラッシュ付勢手段と、を
含むことを特徴とするディスク駆動制御装置である。
・キャッシュを持つコンピュータ・システムに装着され
たディスクを駆動制御するためのディスク駆動制御装置
において、(a) 前記ディスクへのアクセスが生じたこと
を検知して通知するアクセス検知手段と、(b) 前記ディ
スク・キャッシュをフラッシュするフラッシュ手段と、
(c) 前回のフラッシュから所定時間(T2)を経過した
ときのみ前記フラッシュ手段に前記ディスク・キャッシ
ュをフラッシュさせる第1のフラッシュ付勢手段と、を
含むことを特徴とするディスク駆動制御装置である。
【0042】また、本発明の第1乃至第10の各側面に
係るディスク駆動制御方法及び装置おいて、最後のディ
スク・アクセスから所定時間(T1)以上を経過すると
前記ディスクの回転モータを停止させるようにしてもよ
い。
係るディスク駆動制御方法及び装置おいて、最後のディ
スク・アクセスから所定時間(T1)以上を経過すると
前記ディスクの回転モータを停止させるようにしてもよ
い。
【0043】しかして、本発明によれば、所定時間(T
2)を適当な長さに設定することにより、短い間隔での
キャッシュ・フラッシュを避けることができる。
2)を適当な長さに設定することにより、短い間隔での
キャッシュ・フラッシュを避けることができる。
【0044】また、最後のディスク・アクセスから所定
時間(T3又はT4)を経過するまでは、キャッシュ・
フラッシュを行わないようにして、余分なディスク・ア
クセスを行わないようにしている。
時間(T3又はT4)を経過するまでは、キャッシュ・
フラッシュを行わないようにして、余分なディスク・ア
クセスを行わないようにしている。
【0045】一方で、最後のディスク・アクセスから所
定時間(T3又はT4)を経過したときや、所定時間
(T3又はT4)以内であっても、ディスク・アクセス
が所定回数(I又はJ)を越えて、その結果としてディ
スク・キャッシュのデータ・インコヒーレンシーが高く
なった(すなわちダーティ・データが増大した)ときに
は、適宜キャッシュ・フラッシュを敢行して、データの
保全性を維持している。
定時間(T3又はT4)を経過したときや、所定時間
(T3又はT4)以内であっても、ディスク・アクセス
が所定回数(I又はJ)を越えて、その結果としてディ
スク・キャッシュのデータ・インコヒーレンシーが高く
なった(すなわちダーティ・データが増大した)ときに
は、適宜キャッシュ・フラッシュを敢行して、データの
保全性を維持している。
【0046】よって、本発明に係るディスク駆動制御方
法及び装置によれば、余分若しくは無駄なキャッシュ・
フラッシュに伴うディスク・アクセスを省略することが
できる。また、最適なタイミングでキャッシュ・フラッ
シュを行っているとも言える。この結果、HDDオフ・
モード(すなわち最後のディスク・アクセスから所定時
間経過(T1)後に回転モータを停止させる動作モー
ド)を好適に実行させることが可能になり、ハード・デ
ィスクの省電力化を実現することができる。また、トー
タルのディスク・アクセス回数が低減されるので、当
然、ディスクを装着したコンピュータ・システム側のパ
フォーマンスも向上することになる。
法及び装置によれば、余分若しくは無駄なキャッシュ・
フラッシュに伴うディスク・アクセスを省略することが
できる。また、最適なタイミングでキャッシュ・フラッ
シュを行っているとも言える。この結果、HDDオフ・
モード(すなわち最後のディスク・アクセスから所定時
間経過(T1)後に回転モータを停止させる動作モー
ド)を好適に実行させることが可能になり、ハード・デ
ィスクの省電力化を実現することができる。また、トー
タルのディスク・アクセス回数が低減されるので、当
然、ディスクを装着したコンピュータ・システム側のパ
フォーマンスも向上することになる。
【0047】要約すれば、本発明によれば、ハード・デ
ィスクの省電力化、ハード・ディスクを装着したコンピ
ュータ・システムのパフォーマンス、及びデータの保全
性の各々の要求を満たすことができるディスク駆動制御
方法及び装置を提供することができる。
ィスクの省電力化、ハード・ディスクを装着したコンピ
ュータ・システムのパフォーマンス、及びデータの保全
性の各々の要求を満たすことができるディスク駆動制御
方法及び装置を提供することができる。
【0048】本発明は、「キャッシュ・フラッシュしな
いことで増大するデータの消失というリスクはディスク
・アクセス頻度に比例する」という相関関係に着目した
ものである。本発明は、メモリの容量が大きく且つハー
ド・ディスクを止める必要性があまりないサーバ型マシ
ンよりも、むしろ、メモリの容量が比較的小さく、した
がってディスク・キャッシュの容量も比較的小さいロー
エンド型のPCに対して特に存在意義が大きい。
いことで増大するデータの消失というリスクはディスク
・アクセス頻度に比例する」という相関関係に着目した
ものである。本発明は、メモリの容量が大きく且つハー
ド・ディスクを止める必要性があまりないサーバ型マシ
ンよりも、むしろ、メモリの容量が比較的小さく、した
がってディスク・キャッシュの容量も比較的小さいロー
エンド型のPCに対して特に存在意義が大きい。
【0049】本発明のさらに他の目的、特徴や利点は、
後述する本発明の実施例や添付する図面に基づくより詳
細な説明によって明らかになるであろう。
後述する本発明の実施例や添付する図面に基づくより詳
細な説明によって明らかになるであろう。
【0050】
【発明の実施の形態】以下、図面を参照しながら本発明
の実施例を詳解する。
の実施例を詳解する。
【0051】A.コンピュータ・システム10の構成 図1は、本発明の実施に供されるコンピュータ・システ
ム10の構成を、ファイル・システムに関連付けて図解
している。但し、図3の同一の構成要素については同一
の参照番号を付すか、又は簡略化のため省略してある。
ム10の構成を、ファイル・システムに関連付けて図解
している。但し、図3の同一の構成要素については同一
の参照番号を付すか、又は簡略化のため省略してある。
【0052】本実施例では、パワー・マネージャ(P
M)・サーバ62がシンク・デーモンを不能化(ディセ
ーブル)するとともに、システム10のパワー・マネー
ジメント動作を実行するためのパワー・マネージャ(P
M)61がディスク・キャッシュ14,15のフラッシ
ュ動作も併せて統制するようになっている。図示の通
り、PMサーバ62はオペレーティング・システムのユ
ーザ領域に常駐し、パワー・マネージャ61はカーネル
領域に常駐する。これらの詳細は、以下に説明する。
M)・サーバ62がシンク・デーモンを不能化(ディセ
ーブル)するとともに、システム10のパワー・マネー
ジメント動作を実行するためのパワー・マネージャ(P
M)61がディスク・キャッシュ14,15のフラッシ
ュ動作も併せて統制するようになっている。図示の通
り、PMサーバ62はオペレーティング・システムのユ
ーザ領域に常駐し、パワー・マネージャ61はカーネル
領域に常駐する。これらの詳細は、以下に説明する。
【0053】PMサーバ62は、ユーザのパワー・マネ
ージメント要求(ユーザ・ポリシー)に対してはサーバ
的な役割を果たす。すなわち、PM_GUI(PMアイ
コンのダブル・クリック)やPM_コマンド(キー入力
によるパワー・マネージメント要求)を、API(アプ
リケーション・プログラム・インターフェース)を通じ
て受け取ると、パワー・マネージャ61のイネーブルの
ためにシステム・コールする。また、最後のユーザ入力
から所定時間経過した(システム・アイドル・タイマー
が消滅した)、あるいは内蔵バッテリの残存容量が所定
値を下回ったなどの外部事象が発生したことをPMイベ
ント・ハンドラ63から通知されると、同様にパワー・
マネージャ61のイネーブルのためにシステム・コール
する。また、PMサーバ62は、パワー・マネージャ6
1のイネーブルのためにシステム・コールしてからディ
セーブルのためにシステム・コールするまでの間は、シ
ンク・デーモン52を不能化するようになっている。
ージメント要求(ユーザ・ポリシー)に対してはサーバ
的な役割を果たす。すなわち、PM_GUI(PMアイ
コンのダブル・クリック)やPM_コマンド(キー入力
によるパワー・マネージメント要求)を、API(アプ
リケーション・プログラム・インターフェース)を通じ
て受け取ると、パワー・マネージャ61のイネーブルの
ためにシステム・コールする。また、最後のユーザ入力
から所定時間経過した(システム・アイドル・タイマー
が消滅した)、あるいは内蔵バッテリの残存容量が所定
値を下回ったなどの外部事象が発生したことをPMイベ
ント・ハンドラ63から通知されると、同様にパワー・
マネージャ61のイネーブルのためにシステム・コール
する。また、PMサーバ62は、パワー・マネージャ6
1のイネーブルのためにシステム・コールしてからディ
セーブルのためにシステム・コールするまでの間は、シ
ンク・デーモン52を不能化するようになっている。
【0054】パワー・マネージャ61は、コンピュータ
・システム10のパワー・マネージメント・オペレーシ
ョンを実行するためのプログラムであり、PMサーバ6
2からシステム・コールを受けることによってシステム
10の制御権を渡される。本実施例のパワー・マネージ
ャ61は、とりわけハード・ディスク18−1…のモー
タ(図示しない)を停止する「HDDオフ」モードを好
適に実現する目的で、ハード・ディスク操作用の各デバ
イス・ドライバ16,17からディスク・アクセスが発
生した旨の通知を受ける機能(図1中の破線)と、各デ
バイス・ドライバ16に対してハード・ディスク18−
1…のモータを停止する旨を要求する機能(図2中の一
点鎖線)と、キャッシュ・フラッシュのためのシンク・
ルーチン51をコールする機能とを含んでいる。但し、
パワー・マネージャ61は自システム10内のローカル
・ディスク18−1…に対してのみモータの停止を要求
でき、リモート・ディスク28のそれを止めることはで
きない(なぜならディスク28は他のシステム20の制
御下にある!)。パワー・マネージャ61によるHDD
オフ・オペレーションの詳細については次のB項及び図
2を参照されたい。
・システム10のパワー・マネージメント・オペレーシ
ョンを実行するためのプログラムであり、PMサーバ6
2からシステム・コールを受けることによってシステム
10の制御権を渡される。本実施例のパワー・マネージ
ャ61は、とりわけハード・ディスク18−1…のモー
タ(図示しない)を停止する「HDDオフ」モードを好
適に実現する目的で、ハード・ディスク操作用の各デバ
イス・ドライバ16,17からディスク・アクセスが発
生した旨の通知を受ける機能(図1中の破線)と、各デ
バイス・ドライバ16に対してハード・ディスク18−
1…のモータを停止する旨を要求する機能(図2中の一
点鎖線)と、キャッシュ・フラッシュのためのシンク・
ルーチン51をコールする機能とを含んでいる。但し、
パワー・マネージャ61は自システム10内のローカル
・ディスク18−1…に対してのみモータの停止を要求
でき、リモート・ディスク28のそれを止めることはで
きない(なぜならディスク28は他のシステム20の制
御下にある!)。パワー・マネージャ61によるHDD
オフ・オペレーションの詳細については次のB項及び図
2を参照されたい。
【0055】なお、PMサーバ62がパワー・マネージ
ャ61をイネーブルしてからディセーブルするまでの間
は、コンピュータ・システム10はパワー・マネージメ
ント・モード下にある。システム10が通常のオペレー
ション・モードの間はシンク・デーモン52がシンク・
ルーチン52を定期的にコールすることによってディス
ク・キャッシュのデータ・コヒーレンシーが保たれる
が、パワー・マネージメント・モードの間はパワー・マ
ネージャ61がシンク・ルーチン51をコールすること
になる。
ャ61をイネーブルしてからディセーブルするまでの間
は、コンピュータ・システム10はパワー・マネージメ
ント・モード下にある。システム10が通常のオペレー
ション・モードの間はシンク・デーモン52がシンク・
ルーチン52を定期的にコールすることによってディス
ク・キャッシュのデータ・コヒーレンシーが保たれる
が、パワー・マネージメント・モードの間はパワー・マ
ネージャ61がシンク・ルーチン51をコールすること
になる。
【0056】B.ハード・ディスクの省電力制御ルーチ
ン 図2には、パワー・マネージャ61によって実現され
る、ハード・ディスクの省電力制御ルーチンを、フロー
チャート化して示している。但し、図2では、システム
10が持っている外部記憶装置は1つのローカル・ディ
スク18と1つのリモート・ディスク28であることを
前提にしている点に注意されたい。
ン 図2には、パワー・マネージャ61によって実現され
る、ハード・ディスクの省電力制御ルーチンを、フロー
チャート化して示している。但し、図2では、システム
10が持っている外部記憶装置は1つのローカル・ディ
スク18と1つのリモート・ディスク28であることを
前提にしている点に注意されたい。
【0057】ローカル・ディスク及びリモート・ディス
クのアクティビティがないとき:まずステップS10で
は、ローカル・ディスク18への最後のアクセスから所
定時間T1が経過したかどうかを判別する。該判別が肯
定的であれば、ステップS11を経由してローカル・デ
ィスク18のモータを停止してから、次ステップS12
に進む。モータの停止により消費電力が低減されるのは
言うまでもない。一方、判別結果が否定的であれば、直
接ステップS12に進む。なお、ローカル・ディスク1
8にアクセスしたか否かは、ハード・ディスク用デバイ
ス・ドライバ16から通知を受けるようになっている
(前述)。また、ハード・ディスク18のモータの停止
は該デバイス・ドライバ16に要求することによってな
される。
クのアクティビティがないとき:まずステップS10で
は、ローカル・ディスク18への最後のアクセスから所
定時間T1が経過したかどうかを判別する。該判別が肯
定的であれば、ステップS11を経由してローカル・デ
ィスク18のモータを停止してから、次ステップS12
に進む。モータの停止により消費電力が低減されるのは
言うまでもない。一方、判別結果が否定的であれば、直
接ステップS12に進む。なお、ローカル・ディスク1
8にアクセスしたか否かは、ハード・ディスク用デバイ
ス・ドライバ16から通知を受けるようになっている
(前述)。また、ハード・ディスク18のモータの停止
は該デバイス・ドライバ16に要求することによってな
される。
【0058】次いでステップS12では、現在ローカル
・ディスク18のアクティビティ(すなわちローカル・
ディスク18へのアクセス)があるか否かを判別する。
該判別は、ハード・ディスク用デバイス・ドライバ16
を通じてなされる(前述)。判別結果が肯定的であれ
ば、ステップS20にジャンプする(後述)。逆に、否
定的であれば、次ステップS14に進む。
・ディスク18のアクティビティ(すなわちローカル・
ディスク18へのアクセス)があるか否かを判別する。
該判別は、ハード・ディスク用デバイス・ドライバ16
を通じてなされる(前述)。判別結果が肯定的であれ
ば、ステップS20にジャンプする(後述)。逆に、否
定的であれば、次ステップS14に進む。
【0059】ステップS14では、現在ネットワーク・
カード19のアクティビティ(すなわちリモート・ディ
スク28へのアクセス)があるか否かを判別する。該判
別は、ネットワーク・カード用デバイス・ドライバ17
を通じてなされる(前述)。判別結果が肯定的であれ
ば、ステップS30にジャンプする(後述)。逆に、否
定的であれば、次ステップS16に進む。
カード19のアクティビティ(すなわちリモート・ディ
スク28へのアクセス)があるか否かを判別する。該判
別は、ネットワーク・カード用デバイス・ドライバ17
を通じてなされる(前述)。判別結果が肯定的であれ
ば、ステップS30にジャンプする(後述)。逆に、否
定的であれば、次ステップS16に進む。
【0060】ステップS16では、ディスク・キャッシ
ュ14,15を最後にフラッシュした時から所定時間T
2が経過したかどうかを判別する。判別結果が否定的で
あれば、ディスク・キャッシュ14,15をフラッシュ
するには時期尚早であり、システム10のパフォーマン
スを低下させかねないので、何もせずに、本ルーチンの
先頭(すなわちステップS10)にそのままリターンす
る。
ュ14,15を最後にフラッシュした時から所定時間T
2が経過したかどうかを判別する。判別結果が否定的で
あれば、ディスク・キャッシュ14,15をフラッシュ
するには時期尚早であり、システム10のパフォーマン
スを低下させかねないので、何もせずに、本ルーチンの
先頭(すなわちステップS10)にそのままリターンす
る。
【0061】逆に、ステップS16における肯定的な判
別結果は、ディスク・キャッシュ14,15上の変更内
容が長時間ハード・ディスクに反映されていないままで
あるを意味する。アプリケーションは、データのリード
又はライト先がディスク・キャッシュかハード・ディス
クかを意識せずにタスクを実行する。また、ファイル・
システムは、アプリケーションによる書き込みデータを
ハード・ディスクにライト・スルーしない(前述)。し
たがって、長時間キャッシュ・フラッシュしていない
と、その間に実行されたタスクによって、ディスク・キ
ャッシュのデータ・コヒーレンシーが大幅に失われてい
る可能性が高い。そこで、次ステップS18に進んでデ
ィスク・キャッシュ14,15のフラッシュを行う。こ
こでのキャッシュ・フラッシュは、パワー・マネージャ
61がシンク・ルーチン51をコールする、という形態
で行われる。フラッシュが完了すると、本ルーチンの先
頭であるステップS10にリターンして、上述の処理
(ステップS10〜S18)を繰り返す。
別結果は、ディスク・キャッシュ14,15上の変更内
容が長時間ハード・ディスクに反映されていないままで
あるを意味する。アプリケーションは、データのリード
又はライト先がディスク・キャッシュかハード・ディス
クかを意識せずにタスクを実行する。また、ファイル・
システムは、アプリケーションによる書き込みデータを
ハード・ディスクにライト・スルーしない(前述)。し
たがって、長時間キャッシュ・フラッシュしていない
と、その間に実行されたタスクによって、ディスク・キ
ャッシュのデータ・コヒーレンシーが大幅に失われてい
る可能性が高い。そこで、次ステップS18に進んでデ
ィスク・キャッシュ14,15のフラッシュを行う。こ
こでのキャッシュ・フラッシュは、パワー・マネージャ
61がシンク・ルーチン51をコールする、という形態
で行われる。フラッシュが完了すると、本ルーチンの先
頭であるステップS10にリターンして、上述の処理
(ステップS10〜S18)を繰り返す。
【0062】なお、所定時間T2をいかなる値に設定す
るかはシステム10の設計者の任意である。但し、ステ
ップS16におけるT2の経過は、ステップS11で折
角停止させたディスク・モータの再始動を伴う場合もあ
る。したがって、T2を充分長めに設定しておいた方
が、ハード・ディスクの省電力効果、及びシステム10
のパフォーマンスが高まるのは言うまでもない。
るかはシステム10の設計者の任意である。但し、ステ
ップS16におけるT2の経過は、ステップS11で折
角停止させたディスク・モータの再始動を伴う場合もあ
る。したがって、T2を充分長めに設定しておいた方
が、ハード・ディスクの省電力効果、及びシステム10
のパフォーマンスが高まるのは言うまでもない。
【0063】ローカル・ディスクのアクティビティがあ
るとき:ステップS12においてローカル・ディスク1
8のアクティビティが検出されたときは、メイン・ルー
チンを抜けて、ステップS20にジャンプする。
るとき:ステップS12においてローカル・ディスク1
8のアクティビティが検出されたときは、メイン・ルー
チンを抜けて、ステップS20にジャンプする。
【0064】ステップS20では、ローカル・ディスク
18に前回アクセスしてからの経過時間が所定時間T3
以内か否かを判別する。該判別結果が肯定的であればカ
ウンタ値iを1だけインクリメントして(ステップS2
2)、iが所定値Iに達したか否かを判別する(ステッ
プS24)。そして、iがI以下であれば本サブ・ルー
チンを抜けて、メイン・ルーチンのステップS14にジ
ャンプする。逆に、iがIを越えていれば、iを0にク
リアしてから(ステップS26)、ステップS18にジ
ャンプして、ディスク・キャッシュS14,15をフラ
ッシュする。該フラッシュはシンク・ルーチン51をコ
ールすることによってなされる。
18に前回アクセスしてからの経過時間が所定時間T3
以内か否かを判別する。該判別結果が肯定的であればカ
ウンタ値iを1だけインクリメントして(ステップS2
2)、iが所定値Iに達したか否かを判別する(ステッ
プS24)。そして、iがI以下であれば本サブ・ルー
チンを抜けて、メイン・ルーチンのステップS14にジ
ャンプする。逆に、iがIを越えていれば、iを0にク
リアしてから(ステップS26)、ステップS18にジ
ャンプして、ディスク・キャッシュS14,15をフラ
ッシュする。該フラッシュはシンク・ルーチン51をコ
ールすることによってなされる。
【0065】一方、ステップS20において、ローカル
・ディスク18への前回のアクセスから所定時間T3が
経過していることが判れば、ステップS26にジャンプ
して、iを0にクリアして、さらにステップS18にジ
ャンプしてディスク・キャッシュ14,15をフラッシ
ュする。
・ディスク18への前回のアクセスから所定時間T3が
経過していることが判れば、ステップS26にジャンプ
して、iを0にクリアして、さらにステップS18にジ
ャンプしてディスク・キャッシュ14,15をフラッシ
ュする。
【0066】ファイル・システムはハード・ディスクに
ライト・スルーしない。したがって、ローカル・ディス
ク18へのディスク・アクセスが起こった回数に応じ
て、ディスク・キャッシュ14のダーティ・データが増
大して、データの保全性が危険にさらされる可能性が高
くなる。一方において、ディスク・アクセスが起こる度
にキャッシュ・フラッシュしたのでは、ライト・スルー
方式と同様にパフォーマンスが低くなってしまう。本サ
ブ・ルーチン(ステップS20〜S26)によれば、ロ
ーカル・ディスク18へのアクセスが立て続けに起こっ
ても、所定回数I以内であればデータの保全性に対する
危険は未だ小さいと考えられるので、キャッシュ・フラ
ッシュは行わないようになっている。逆に、前回のキャ
ッシュ・フラッシュ後のディスク・アクセスが所定回数
Iを越えると、通算のデータ・インコヒーレンシーは無
視し難くなってくるので、キャッシュ・フラッシュを行
うようになっている。要するに、本サブ・ルーチンは、
「キャッシュ・フラッシュしないことで増大するデータ
の消失というリスクはディスク・アクセス頻度に比例す
る」という相関関係に着目したものであり、システム1
0のパフォーマンスとデータの保全性の双方の要求が満
たされていると言えよう。
ライト・スルーしない。したがって、ローカル・ディス
ク18へのディスク・アクセスが起こった回数に応じ
て、ディスク・キャッシュ14のダーティ・データが増
大して、データの保全性が危険にさらされる可能性が高
くなる。一方において、ディスク・アクセスが起こる度
にキャッシュ・フラッシュしたのでは、ライト・スルー
方式と同様にパフォーマンスが低くなってしまう。本サ
ブ・ルーチン(ステップS20〜S26)によれば、ロ
ーカル・ディスク18へのアクセスが立て続けに起こっ
ても、所定回数I以内であればデータの保全性に対する
危険は未だ小さいと考えられるので、キャッシュ・フラ
ッシュは行わないようになっている。逆に、前回のキャ
ッシュ・フラッシュ後のディスク・アクセスが所定回数
Iを越えると、通算のデータ・インコヒーレンシーは無
視し難くなってくるので、キャッシュ・フラッシュを行
うようになっている。要するに、本サブ・ルーチンは、
「キャッシュ・フラッシュしないことで増大するデータ
の消失というリスクはディスク・アクセス頻度に比例す
る」という相関関係に着目したものであり、システム1
0のパフォーマンスとデータの保全性の双方の要求が満
たされていると言えよう。
【0067】リモート・ディスクのアクティビティがあ
るとき:ステップS14においてネットワーク・カード
のアクティビティが検出されたときは、メイン・ルーチ
ンを抜けて、ステップS30にジャンプする。
るとき:ステップS14においてネットワーク・カード
のアクティビティが検出されたときは、メイン・ルーチ
ンを抜けて、ステップS30にジャンプする。
【0068】ステップS30では、リモート・ディスク
28に前回アクセスしてからの経過時間が所定時間T4
以内か否かを判別する。該判別結果が肯定的であればカ
ウンタ値jを1だけインクリメントして(ステップS3
2)、jが所定値Jに達したか否かを判別する(ステッ
プS34)。そして、jがJ以下であれば本サブ・ルー
チンを抜けて、メイン・ルーチンのステップS14にジ
ャンプする。逆に、jがJを越えていれば、jを0にク
リアしてから(ステップS36)、ステップS18にジ
ャンプして、ディスク・キャッシュS14,15をフラ
ッシュする。該フラッシュはシンク・ルーチン51をコ
ールすることによってなされる。
28に前回アクセスしてからの経過時間が所定時間T4
以内か否かを判別する。該判別結果が肯定的であればカ
ウンタ値jを1だけインクリメントして(ステップS3
2)、jが所定値Jに達したか否かを判別する(ステッ
プS34)。そして、jがJ以下であれば本サブ・ルー
チンを抜けて、メイン・ルーチンのステップS14にジ
ャンプする。逆に、jがJを越えていれば、jを0にク
リアしてから(ステップS36)、ステップS18にジ
ャンプして、ディスク・キャッシュS14,15をフラ
ッシュする。該フラッシュはシンク・ルーチン51をコ
ールすることによってなされる。
【0069】一方、ステップS30において、リモート
・ディスク28への前回のアクセスから所定時間T4が
経過していることが判れば、ステップS36にジャンプ
して、jを0にクリアして、さらにステップS18にジ
ャンプしてディスク・キャッシュ14,15をフラッシ
ュする。
・ディスク28への前回のアクセスから所定時間T4が
経過していることが判れば、ステップS36にジャンプ
して、jを0にクリアして、さらにステップS18にジ
ャンプしてディスク・キャッシュ14,15をフラッシ
ュする。
【0070】リモート・ディスク28へのディスク・ア
クセスが起こった回数に応じて、ディスク・キャッシュ
14のデータ・コヒーレンシー(すなわちデータの保全
性)が失われるが、ディスク・アクセスの度毎にキャッ
シュ・フラッシュしたのでは、パフォーマンスが低くな
ってしまう。本サブ・ルーチン(ステップS30〜S3
6)では、前述のサブ・ルーチン(S20〜S26)と
同様に、リモート・ディスク28へのアクセスが立て続
けに起こっても、所定回数J以内であればパフォーマン
スを優先させて、キャッシュ・フラッシュは行わない。
逆に、前回のキャッシュ・フラッシュ後のディスク・ア
クセスが所定回数Jを越えると、データの保全性を優先
させて、キャッシュ・フラッシュを行うようになってい
る。要するに、本サブ・ルーチンは、「キャッシュ・フ
ラッシュしないことで増大するデータの消失というリス
クはディスク・アクセス頻度に比例する」という相関関
係に着目したものであり、システム10のパフォーマン
スとデータの保全性の双方の要求が満たされていると言
えよう。
クセスが起こった回数に応じて、ディスク・キャッシュ
14のデータ・コヒーレンシー(すなわちデータの保全
性)が失われるが、ディスク・アクセスの度毎にキャッ
シュ・フラッシュしたのでは、パフォーマンスが低くな
ってしまう。本サブ・ルーチン(ステップS30〜S3
6)では、前述のサブ・ルーチン(S20〜S26)と
同様に、リモート・ディスク28へのアクセスが立て続
けに起こっても、所定回数J以内であればパフォーマン
スを優先させて、キャッシュ・フラッシュは行わない。
逆に、前回のキャッシュ・フラッシュ後のディスク・ア
クセスが所定回数Jを越えると、データの保全性を優先
させて、キャッシュ・フラッシュを行うようになってい
る。要するに、本サブ・ルーチンは、「キャッシュ・フ
ラッシュしないことで増大するデータの消失というリス
クはディスク・アクセス頻度に比例する」という相関関
係に着目したものであり、システム10のパフォーマン
スとデータの保全性の双方の要求が満たされていると言
えよう。
【0071】本実施例のパワー・マネージャ61によれ
ば所定の条件下でハード・ディスクのモータを確実に停
止させることができる、ということは図2のステップS
11により一目瞭然であろう。すなわち、図2に示すよ
うな省電力制御ルーチンに従えば、シンク・デーモン5
2を用いたときのように非常に短い時間間隔でシンク・
ルーチン51がコールされることはない。したがって、
該コールに伴うトランザクション・ログだけのためにH
DDが起こされ続けることなく、適宜HDDモータを停
止させることができるのである。また、パワー・マネー
ジャ61によって適当なタイミングでシンク・ルーチン
51がコールされるので、データの保全を維持すること
も可能である。なお、T1,T2,T3,T4,I,J
の各値は、デフォルト値であってもユーザ・プログラマ
ブルであってもよい。
ば所定の条件下でハード・ディスクのモータを確実に停
止させることができる、ということは図2のステップS
11により一目瞭然であろう。すなわち、図2に示すよ
うな省電力制御ルーチンに従えば、シンク・デーモン5
2を用いたときのように非常に短い時間間隔でシンク・
ルーチン51がコールされることはない。したがって、
該コールに伴うトランザクション・ログだけのためにH
DDが起こされ続けることなく、適宜HDDモータを停
止させることができるのである。また、パワー・マネー
ジャ61によって適当なタイミングでシンク・ルーチン
51がコールされるので、データの保全を維持すること
も可能である。なお、T1,T2,T3,T4,I,J
の各値は、デフォルト値であってもユーザ・プログラマ
ブルであってもよい。
【0072】なお、図2の例は1つのローカル・ディス
クと1つのリモート・ディスクを持っている場合である
が、ローカル及びリモート各側のハード・ディスクの個
数が変動しても、当業者であれば適宜変更又は修正を加
えることによって応用することが可能であろう。
クと1つのリモート・ディスクを持っている場合である
が、ローカル及びリモート各側のハード・ディスクの個
数が変動しても、当業者であれば適宜変更又は修正を加
えることによって応用することが可能であろう。
【0073】E.追補 以上、特定の実施例を参照しながら、本発明について詳
解してきた。しかしながら、本発明の要旨を逸脱しない
範囲で当業者が該実施例の修正や代用を成し得ることは
自明である。要するに、例示という形態で本発明を開示
してきたのであり、限定的に解釈されるべきではない。
本発明の要旨を判断するためには、冒頭に記載した特許
請求の範囲の欄を参酌すべきである。
解してきた。しかしながら、本発明の要旨を逸脱しない
範囲で当業者が該実施例の修正や代用を成し得ることは
自明である。要するに、例示という形態で本発明を開示
してきたのであり、限定的に解釈されるべきではない。
本発明の要旨を判断するためには、冒頭に記載した特許
請求の範囲の欄を参酌すべきである。
【0074】
【発明の効果】以上詳記したように、本発明によれば、
ハード・ディスクの省電力化、ハード・ディスクを装着
したコンピュータ・システムのパフォーマンス、及びデ
ータの保全性の各々の要求を満たすことができる、優れ
たディスク駆動制御方法及び装置を提供することができ
る。
ハード・ディスクの省電力化、ハード・ディスクを装着
したコンピュータ・システムのパフォーマンス、及びデ
ータの保全性の各々の要求を満たすことができる、優れ
たディスク駆動制御方法及び装置を提供することができ
る。
【0075】より具体的には、本発明に係るディスク駆
動制御方法及び装置によれば、余分若しくは無駄なキャ
ッシュ・フラッシュに伴うディスク・アクセスを省略す
ることができる。この結果、HDDオフ・モード(すな
わち最後のディスク・アクセスから所定時間経過(T
1)後に回転モータを停止させる動作モード)を好適に
実行させることが可能になり、ハード・ディスクの省電
力化を実現することができる。また、トータルのディス
ク・アクセス回数が低減されるので、当然、ディスクを
装着したコンピュータ・システム側のパフォーマンスも
向上することになる。
動制御方法及び装置によれば、余分若しくは無駄なキャ
ッシュ・フラッシュに伴うディスク・アクセスを省略す
ることができる。この結果、HDDオフ・モード(すな
わち最後のディスク・アクセスから所定時間経過(T
1)後に回転モータを停止させる動作モード)を好適に
実行させることが可能になり、ハード・ディスクの省電
力化を実現することができる。また、トータルのディス
ク・アクセス回数が低減されるので、当然、ディスクを
装着したコンピュータ・システム側のパフォーマンスも
向上することになる。
【0076】本発明は、「キャッシュ・フラッシュしな
いことで増大するデータの消失というリスクはディスク
・アクセス頻度に比例する」という相関関係に着目した
ものである。本発明は、メモリの容量が大きく且つハー
ド・ディスクを止める必要性があまりないサーバ型マシ
ンよりも、むしろ、メモリの容量が比較的小さく、した
がってディスク・キャッシュの容量も比較的小さいロー
エンド型のPCに対して特に存在意義が大きい。
いことで増大するデータの消失というリスクはディスク
・アクセス頻度に比例する」という相関関係に着目した
ものである。本発明は、メモリの容量が大きく且つハー
ド・ディスクを止める必要性があまりないサーバ型マシ
ンよりも、むしろ、メモリの容量が比較的小さく、した
がってディスク・キャッシュの容量も比較的小さいロー
エンド型のPCに対して特に存在意義が大きい。
【図1】図1は、本発明の実施に供されるコンピュータ
のファイル構造を図解したものである。
のファイル構造を図解したものである。
【図2】図2は、パワー・マネージャ61によって実現
される、ハード・ディスクの省電力制御ルーチンを、フ
ローチャート化して示した図である。
される、ハード・ディスクの省電力制御ルーチンを、フ
ローチャート化して示した図である。
【図3】図3は、ファイル・システムに着目して図解し
たコンピュータ・システムのアーキテクチャである。
たコンピュータ・システムのアーキテクチャである。
【図4】図4は、ディスク・キャッシュを実行するため
のメカニズムを図解したものである。
のメカニズムを図解したものである。
【符号の説明】 10…コンピュータ・システム、11,21…ファイル
・システム、12,22…サブ・ファイル・システム
A、13,23…サブ・ファイル・システムB、14,
15…ディスク・キャッシュ、16,26…ハード・デ
ィスク用デバイス・ドライバ、17,27…ネットワー
ク・カード用デバイス・ドライバ、17'…TCP/I
P、18…ハード・ディスク(ローカル・ディスク)、
19,29…ネットワーク・カード、20…他のコンピ
ュータ・システム、28…ハード・ディスク(リモート
・ディスク)、30…ネットワーク、41,42…アプ
リケーション・プログラム、51…シンク(Syn
c)、52…シンク・デーモン(Daemon)、61
…パワー・マネージャ、62…PMサーバ、63…PM
イベント・ハンドラ。
・システム、12,22…サブ・ファイル・システム
A、13,23…サブ・ファイル・システムB、14,
15…ディスク・キャッシュ、16,26…ハード・デ
ィスク用デバイス・ドライバ、17,27…ネットワー
ク・カード用デバイス・ドライバ、17'…TCP/I
P、18…ハード・ディスク(ローカル・ディスク)、
19,29…ネットワーク・カード、20…他のコンピ
ュータ・システム、28…ハード・ディスク(リモート
・ディスク)、30…ネットワーク、41,42…アプ
リケーション・プログラム、51…シンク(Syn
c)、52…シンク・デーモン(Daemon)、61
…パワー・マネージャ、62…PMサーバ、63…PM
イベント・ハンドラ。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 宮 平 知 博 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内 (72)発明者 中 尾 彰 宏 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内
Claims (12)
- 【請求項1】ディスク・キャッシュを持つコンピュータ
・システムに装着されたディスクを駆動制御するための
ディスク駆動制御方法において、(a) 前記ディスクへの
アクセスが生じたことを検知して通知するアクセス検知
段階と、(b) 前回のフラッシュから所定時間(T2)を
経過したときのみ前記ディスク・キャッシュをフラッシ
ュする第1のフラッシュ段階と、(c) ディスク・アクセ
スの通知を受けて、前回のディスク・アクセスから所定
時間(T3又はT4)を経過したときのみ前記ディスク
・キャッシュをフラッシュする第2のフラッシュ段階
と、(d) ディスク・アクセスの通知を受けて、前回のデ
ィスク・アクセスから所定時間(T3又はT4)を経過
する前であってもその間のディスク・アクセス回数が所
定値(I又はJ)に達したときは前記ディスク・キャッ
シュをフラッシュする第3のフラッシュ段階と、を含む
ことを特徴とするディスク駆動制御方法 - 【請求項2】ディスク・キャッシュを持つコンピュータ
・システムに装着されたディスクを駆動制御するための
ディスク駆動制御方法において、(a) 前記ディスクへの
アクセスが生じたことを検知して通知するアクセス検知
段階と、(b) 前記アクセス検知手段から通知を受けて、
前回のディスク・アクセスから所定時間(T3又はT
4)を経過したときのみ前記ディスク・キャッシュをフ
ラッシュする第2のフラッシュ段階と、(c) 前記アクセ
ス検知手段から通知を受けて、前回のディスク・アクセ
スから所定時間(T3又はT4)を経過する前であって
もその間のディスク・アクセス回数が所定値(I又は
J)に達したときは前記ディスク・キャッシュをフラッ
シュする第3のフラッシュ段階と、を含むことを特徴と
するディスク駆動制御方法 - 【請求項3】ディスク・キャッシュを持つコンピュータ
・システムに装着されたディスクを駆動制御するための
ディスク駆動制御方法において、(a) 前記ディスクへの
アクセスが生じたことを検知して通知するアクセス検知
段階と、(b) 前記アクセス検知手段から通知を受けて、
前回のディスク・アクセスから所定時間(T3又はT
4)を経過したときのみ前記ディスク・キャッシュをフ
ラッシュする第2のフラッシュ段階と、を含むことを特
徴とするディスク駆動制御方法 - 【請求項4】ディスク・キャッシュを持つコンピュータ
・システムに装着されたディスクを駆動制御するための
ディスク駆動制御方法において、(a) 前記ディスクへの
アクセスが生じたことを検知して通知するアクセス検知
段階と、(b) 前記アクセス検知手段から通知を受けて、
ディスク・アクセス回数が所定値(I又はJ)に達した
ときは前記ディスク・キャッシュをフラッシュする第3
のフラッシュ段階と、を含むことを特徴とするディスク
駆動制御方法 - 【請求項5】ディスク・キャッシュを持つコンピュータ
・システムに装着されたディスクを駆動制御するための
ディスク駆動制御方法において、(a) 前記ディスクへの
アクセスが生じたことを検知して通知するアクセス検知
段階と、(b) 前回のフラッシュから所定時間(T2)を
経過したときのみ前記ディスク・キャッシュをフラッシ
ュする第1のフラッシュ段階と、を含むことを特徴とす
るディスク駆動制御方法 - 【請求項6】最後のディスク・アクセスから所定時間
(T1)以上を経過すると前記ディスクの回転モータを
停止させることを特徴とする請求項1、2、3、4、又
は5のいずれかに記載のディスク駆動制御方法 - 【請求項7】ディスク・キャッシュを持つコンピュータ
・システムに装着されたディスクを駆動制御するための
ディスク駆動制御装置において、(a) 前記ディスクへの
アクセスが生じたことを検知して通知するアクセス検知
手段と、(b) 前記ディスク・キャッシュをフラッシュす
るフラッシュ手段と、(c) 前回のフラッシュから所定時
間(T2)を経過したときのみ前記フラッシュ手段に前
記ディスク・キャッシュをフラッシュさせる第1のフラ
ッシュ付勢手段と、(d) 前記アクセス検知手段から通知
を受けて、前回のディスク・アクセスから所定時間(T
3又はT4)を経過したときのみ前記フラッシュ手段に
前記ディスク・キャッシュをフラッシュさせる第2のフ
ラッシュ付勢手段と、(e) 前記アクセス検知手段から通
知を受けて、前回のディスク・アクセスから所定時間
(T3又はT4)を経過する前であってもその間のディ
スク・アクセス回数が所定値(I又はJ)に達したとき
は前記フラッシュ手段に前記ディスク・キャッシュをフ
ラッシュさせる第3のフラッシュ付勢手段と、を含むこ
とを特徴とするディスク駆動制御装置 - 【請求項8】ディスク・キャッシュを持つコンピュータ
・システムに装着されたディスクを駆動制御するための
ディスク駆動制御装置において、(a) 前記ディスクへの
アクセスが生じたことを検知して通知するアクセス検知
手段と、(b) 前記ディスク・キャッシュをフラッシュす
るフラッシュ手段と、(c) 前記アクセス検知手段から通
知を受けて、前回のディスク・アクセスから所定時間
(T3又はT4)を経過したときのみ前記フラッシュ手
段に前記ディスク・キャッシュをフラッシュさせる第2
のフラッシュ付勢手段と、(d) 前記アクセス検知手段か
ら通知を受けて、前回のディスク・アクセスから所定時
間(T3又はT4)を経過する前であってもその間のデ
ィスク・アクセス回数が所定値(I又はJ)に達したと
きは前記フラッシュ手段に前記ディスク・キャッシュを
フラッシュさせる第3のフラッシュ付勢手段と、を含む
ことを特徴とするディスク駆動制御装置 - 【請求項9】ディスク・キャッシュを持つコンピュータ
・システムに装着されたディスクを駆動制御するための
ディスク駆動制御装置において、(a) 前記ディスクへの
アクセスが生じたことを検知して通知するアクセス検知
手段と、(b) 前記ディスク・キャッシュをフラッシュす
るフラッシュ手段と、(c) 前記アクセス検知手段から通
知を受けて、前回のディスク・アクセスから所定時間
(T3又はT4)を経過したときのみ前記フラッシュ手
段に前記ディスク・キャッシュをフラッシュさせる第2
のフラッシュ付勢手段と、を含むことを特徴とするディ
スク駆動制御装置 - 【請求項10】ディスク・キャッシュを持つコンピュー
タ・システムに装着されたディスクを駆動制御するため
のディスク駆動制御装置において、(a) 前記ディスクへ
のアクセスが生じたことを検知して通知するアクセス検
知手段と、(b) 前記ディスク・キャッシュをフラッシュ
するフラッシュ手段と、(c) 前記アクセス検知手段から
通知を受けて、ディスク・アクセス回数が所定値(I又
はJ)に達したときは前記フラッシュ手段に前記ディス
ク・キャッシュをフラッシュさせる第3のフラッシュ付
勢手段と、を含むことを特徴とするディスク駆動制御装
置 - 【請求項11】ディスク・キャッシュを持つコンピュー
タ・システムに装着されたディスクを駆動制御するため
のディスク駆動制御装置において、(a) 前記ディスクへ
のアクセスが生じたことを検知して通知するアクセス検
知手段と、(b) 前記ディスク・キャッシュをフラッシュ
するフラッシュ手段と、(c) 前回のフラッシュから所定
時間(T2)を経過したときのみ前記フラッシュ手段に
前記ディスク・キャッシュをフラッシュさせる第1のフ
ラッシュ付勢手段と、を含むことを特徴とするディスク
駆動制御装置 - 【請求項12】最後のディスク・アクセスから所定時間
(T1)以上を経過すると前記ディスクの回転モータを
停止させることを特徴とする請求項7、8、9、10、
又は11のいずれかに記載のディスク駆動制御装置
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7185771A JP3062050B2 (ja) | 1995-07-21 | 1995-07-21 | ディスク駆動制御方法及び装置 |
KR1019960027411A KR100246870B1 (ko) | 1995-07-21 | 1996-07-08 | 디스크 구동 제어 방법 및 장치 |
US08/684,026 US5797022A (en) | 1995-07-21 | 1996-07-19 | Disk control method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7185771A JP3062050B2 (ja) | 1995-07-21 | 1995-07-21 | ディスク駆動制御方法及び装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0944314A true JPH0944314A (ja) | 1997-02-14 |
JP3062050B2 JP3062050B2 (ja) | 2000-07-10 |
Family
ID=16176606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7185771A Expired - Lifetime JP3062050B2 (ja) | 1995-07-21 | 1995-07-21 | ディスク駆動制御方法及び装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5797022A (ja) |
JP (1) | JP3062050B2 (ja) |
KR (1) | KR100246870B1 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007257577A (ja) * | 2006-03-27 | 2007-10-04 | Nec Corp | Raid制御装置、方法及びプログラム並びにディスクアレイ装置 |
JP2013232216A (ja) * | 2011-03-24 | 2013-11-14 | Toshiba Corp | 情報処理装置およびプログラム |
US8929018B2 (en) | 1999-04-05 | 2015-01-06 | Hitachi, Ltd. | Disk array unit |
JP2016131037A (ja) * | 2010-09-15 | 2016-07-21 | ピュア・ストレージ・インコーポレイテッド | ソリッドステートドライブ(ssd)環境におけるi/oのスケジューリング |
US10452289B1 (en) | 2010-09-28 | 2019-10-22 | Pure Storage, Inc. | Dynamically adjusting an amount of protection data stored in a storage system |
US11614893B2 (en) | 2010-09-15 | 2023-03-28 | Pure Storage, Inc. | Optimizing storage device access based on latency |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6378038B1 (en) * | 1999-03-31 | 2002-04-23 | International Business Machines Corporation | Method and system for caching data using raid level selection |
KR20010038434A (ko) * | 1999-10-25 | 2001-05-15 | 윤종용 | 컴퓨터 시스템의 전력 소모를 줄이기 위한 하드 디스크 파워 다운 방법 |
US7032119B2 (en) | 2000-09-27 | 2006-04-18 | Amphus, Inc. | Dynamic power and workload management for multi-server system |
US20070245165A1 (en) | 2000-09-27 | 2007-10-18 | Amphus, Inc. | System and method for activity or event based dynamic energy conserving server reconfiguration |
US20030196126A1 (en) | 2002-04-11 | 2003-10-16 | Fung Henry T. | System, method, and architecture for dynamic server power management and dynamic workload management for multi-server environment |
US20060248360A1 (en) * | 2001-05-18 | 2006-11-02 | Fung Henry T | Multi-server and multi-CPU power management system and method |
US7039780B2 (en) * | 2001-06-05 | 2006-05-02 | Hewlett-Packard Development Company, L.P. | Digital camera memory system |
EP2257037A3 (en) | 2003-07-29 | 2011-06-15 | Ricoh Company, Ltd. | Image forming apparatus as client of a distributed file system, image processing method, image processing program and recording medium |
CN101197900B (zh) * | 2003-07-29 | 2010-11-03 | 株式会社理光 | 图像形成装置、图像处理方法、图像处理程序和记录介质 |
JP2005135126A (ja) * | 2003-10-30 | 2005-05-26 | Hitachi Ltd | フラグメント防止ファイルシステム |
US7765361B2 (en) * | 2006-11-21 | 2010-07-27 | Microsoft Corporation | Enforced transaction system recoverability on media without write-through |
KR101490327B1 (ko) | 2006-12-06 | 2015-02-05 | 퓨전-아이오, 인크. | 뱅크 인터리브를 이용한 솔리드-스테이트 스토리지의 명령 관리 장치, 시스템 및 방법 |
US8489817B2 (en) | 2007-12-06 | 2013-07-16 | Fusion-Io, Inc. | Apparatus, system, and method for caching data |
US8443134B2 (en) * | 2006-12-06 | 2013-05-14 | Fusion-Io, Inc. | Apparatus, system, and method for graceful cache device degradation |
US9104599B2 (en) | 2007-12-06 | 2015-08-11 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for destaging cached data |
US8706968B2 (en) * | 2007-12-06 | 2014-04-22 | Fusion-Io, Inc. | Apparatus, system, and method for redundant write caching |
JP2008257773A (ja) * | 2007-04-02 | 2008-10-23 | Toshiba Corp | 不揮発性半導体記憶装置、不揮発性半導体記憶装置の制御方法、不揮発性半導体記憶システム、及びメモリカード |
WO2009025684A1 (en) * | 2007-08-21 | 2009-02-26 | Thomson Licensing | Method and system for preventing corruption of hard disk drive file system |
US9519540B2 (en) | 2007-12-06 | 2016-12-13 | Sandisk Technologies Llc | Apparatus, system, and method for destaging cached data |
US8312204B2 (en) * | 2009-01-23 | 2012-11-13 | Seagate Technology Llc | System and method for wear leveling in a data storage device |
JP5209591B2 (ja) * | 2009-11-16 | 2013-06-12 | 株式会社日立製作所 | 省電力機能を有するストレージシステム |
US12008266B2 (en) | 2010-09-15 | 2024-06-11 | Pure Storage, Inc. | Efficient read by reconstruction |
US9026829B2 (en) * | 2010-09-25 | 2015-05-05 | Intel Corporation | Package level power state optimization |
US8661193B1 (en) | 2010-10-29 | 2014-02-25 | Western Digital Technologies, Inc. | Disk drive with partial sector management |
US8578100B1 (en) | 2010-11-08 | 2013-11-05 | Western Digital Technologies, Inc. | Disk drive flushing write data in response to computed flush time |
US8966184B2 (en) | 2011-01-31 | 2015-02-24 | Intelligent Intellectual Property Holdings 2, LLC. | Apparatus, system, and method for managing eviction of data |
WO2012116369A2 (en) | 2011-02-25 | 2012-08-30 | Fusion-Io, Inc. | Apparatus, system, and method for managing contents of a cache |
US8654619B1 (en) | 2011-09-29 | 2014-02-18 | Western Digital Technologies, Inc. | Method and apparatus for operating a disk drive |
US9767032B2 (en) | 2012-01-12 | 2017-09-19 | Sandisk Technologies Llc | Systems and methods for cache endurance |
US9251086B2 (en) | 2012-01-24 | 2016-02-02 | SanDisk Technologies, Inc. | Apparatus, system, and method for managing a cache |
US10162873B2 (en) * | 2012-12-21 | 2018-12-25 | Red Hat, Inc. | Synchronization of physical disks |
CN106533281A (zh) * | 2015-09-11 | 2017-03-22 | 德昌电机(深圳)有限公司 | 电动工具及其电机驱动电路 |
US10262138B2 (en) * | 2016-09-15 | 2019-04-16 | Paypal, Inc. | Techniques for ransomware detection and mitigation |
FR3092677B1 (fr) * | 2019-02-11 | 2021-01-22 | Commissariat Energie Atomique | Procédé de gestion d’une mémoire cache d’un calculateur électronique |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01154261A (ja) * | 1987-12-11 | 1989-06-16 | Toshiba Corp | 情報処理装置 |
US5504907A (en) * | 1991-02-14 | 1996-04-02 | Dell Usa, L.P. | Power management system with adaptive control parameters for portable computer |
GB2260631B (en) * | 1991-10-17 | 1995-06-28 | Intel Corp | Microprocessor 2X core design |
US5381539A (en) * | 1992-06-04 | 1995-01-10 | Emc Corporation | System and method for dynamically controlling cache management |
US5437022A (en) * | 1992-12-17 | 1995-07-25 | International Business Machines Corporation | Storage controller having additional cache memory and a means for recovering from failure and reconfiguring a control unit thereof in response thereto |
US5446906A (en) * | 1993-06-30 | 1995-08-29 | Intel Corporation | Method and apparatus for suspending and resuming a keyboard controller |
US5513359A (en) * | 1993-07-23 | 1996-04-30 | International Business Machines Corporation | Desktop computer having a single-switch suspend/resume function |
US5497494A (en) * | 1993-07-23 | 1996-03-05 | International Business Machines Corporation | Method for saving and restoring the state of a CPU executing code in protected mode |
US5452277A (en) * | 1993-12-30 | 1995-09-19 | International Business Machines Corporation | Adaptive system for optimizing disk drive power consumption |
WO1995031782A1 (en) * | 1994-05-12 | 1995-11-23 | Ast Research, Inc. | Cpu activity monitoring through cache watching |
US5481733A (en) * | 1994-06-15 | 1996-01-02 | Panasonic Technologies, Inc. | Method for managing the power distributed to a disk drive in a laptop computer |
US5666538A (en) * | 1995-06-07 | 1997-09-09 | Ast Research, Inc. | Disk power manager for network servers |
-
1995
- 1995-07-21 JP JP7185771A patent/JP3062050B2/ja not_active Expired - Lifetime
-
1996
- 1996-07-08 KR KR1019960027411A patent/KR100246870B1/ko not_active IP Right Cessation
- 1996-07-19 US US08/684,026 patent/US5797022A/en not_active Expired - Fee Related
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8929018B2 (en) | 1999-04-05 | 2015-01-06 | Hitachi, Ltd. | Disk array unit |
JP2007257577A (ja) * | 2006-03-27 | 2007-10-04 | Nec Corp | Raid制御装置、方法及びプログラム並びにディスクアレイ装置 |
JP2016131037A (ja) * | 2010-09-15 | 2016-07-21 | ピュア・ストレージ・インコーポレイテッド | ソリッドステートドライブ(ssd)環境におけるi/oのスケジューリング |
US10126982B1 (en) | 2010-09-15 | 2018-11-13 | Pure Storage, Inc. | Adjusting a number of storage devices in a storage system that may be utilized to simultaneously service high latency operations |
US10353630B1 (en) | 2010-09-15 | 2019-07-16 | Pure Storage, Inc. | Simultaneously servicing high latency operations in a storage system |
US11614893B2 (en) | 2010-09-15 | 2023-03-28 | Pure Storage, Inc. | Optimizing storage device access based on latency |
US10452289B1 (en) | 2010-09-28 | 2019-10-22 | Pure Storage, Inc. | Dynamically adjusting an amount of protection data stored in a storage system |
US11435904B1 (en) | 2010-09-28 | 2022-09-06 | Pure Storage, Inc. | Dynamic protection data in a storage system |
US11797386B2 (en) | 2010-09-28 | 2023-10-24 | Pure Storage, Inc. | Flexible RAID layouts in a storage system |
JP2013232216A (ja) * | 2011-03-24 | 2013-11-14 | Toshiba Corp | 情報処理装置およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
KR100246870B1 (ko) | 2000-03-15 |
KR970007642A (ko) | 1997-02-21 |
US5797022A (en) | 1998-08-18 |
JP3062050B2 (ja) | 2000-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3062050B2 (ja) | ディスク駆動制御方法及び装置 | |
Douglis et al. | Adaptive disk spin-down policies for mobile computers | |
US7174471B2 (en) | System and method for adjusting I/O processor frequency in response to determining that a power set point for a storage device has not been reached | |
CA2523761C (en) | Using external memory devices to improve system performance | |
US20060075185A1 (en) | Method for caching data and power conservation in an information handling system | |
US7472222B2 (en) | HDD having both DRAM and flash memory | |
US5632038A (en) | Secondary cache system for portable computer | |
JP3045981B2 (ja) | コンピュータ及びパラメータ設定方法 | |
US7809884B1 (en) | Data storage system power management | |
JP5623284B2 (ja) | 逆データ・バックアップのための方法、コンピュータ・プログラム及びシステム | |
US8196034B2 (en) | Computer system and method for reducing power consumption of storage system | |
JPH07219848A (ja) | キャッシュ制御システム | |
US7093149B2 (en) | Tiered secondary memory architecture to reduce power consumption in a portable computer system | |
US8392655B2 (en) | Apparatus for reducing accesses to levels of a storage hierarchy in a computing system | |
US7047356B2 (en) | Storage controller with the disk drive and the RAM in a hybrid architecture | |
JP2016133847A (ja) | ストレージ制御装置およびストレージ制御プログラム | |
US7370217B2 (en) | Regulating file system device access | |
JPH09330277A (ja) | ディスクキャッシュシステムにおける停電処理方式及び停電処理方法 | |
JP2000330729A (ja) | オンラインバックアップ機能を持つディスクアレイシステム | |
JPH11161527A (ja) | データ記憶システム | |
JPH10254780A (ja) | ディスクキャッシュ制御方式 | |
WO2007085978A2 (en) | A method of controlling a page cache memory in real time stream and best effort applications |