[go: up one dir, main page]

JP3062050B2 - ディスク駆動制御方法及び装置 - Google Patents

ディスク駆動制御方法及び装置

Info

Publication number
JP3062050B2
JP3062050B2 JP7185771A JP18577195A JP3062050B2 JP 3062050 B2 JP3062050 B2 JP 3062050B2 JP 7185771 A JP7185771 A JP 7185771A JP 18577195 A JP18577195 A JP 18577195A JP 3062050 B2 JP3062050 B2 JP 3062050B2
Authority
JP
Japan
Prior art keywords
disk
access
cache
flush
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.)
Expired - Lifetime
Application number
JP7185771A
Other languages
English (en)
Other versions
JPH0944314A (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP7185771A priority Critical patent/JP3062050B2/ja
Priority to KR1019960027411A priority patent/KR100246870B1/ko
Priority to US08/684,026 priority patent/US5797022A/en
Publication of JPH0944314A publication Critical patent/JPH0944314A/ja
Application granted granted Critical
Publication of JP3062050B2 publication Critical patent/JP3062050B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0804Addressing 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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)
  • Human Computer Interaction (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Power Sources (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ディスク・キャッ
シュを持つコンピュータ・システムに装着されたディス
クを駆動制御するためのディスク駆動制御方法及び装置
に係り、特に、ハード・ディスク・ドライブ(HDD)
のモータを好適に停止することによって省電力化を実現
するタイプのディスク駆動制御方法及び装置に関する。
更に詳しくは、本発明は、ハード・ディスクの省電力
化、ハード・ディスクを含むコンピュータ・システムの
パフォーマンス、及びデータの保全性の各々の要求を満
たすことができるディスク駆動制御方法及び装置に関す
る。
【0002】
【従来の技術】昨今の技術革新に伴い、デスクトップ
型、ノートブック型など各種パソナル・コンピュータ
(PC)が開発され市販されている。
【0003】コンピュータの基本構造は、CPUとメモ
リである。すなわち、CPUがメモリとやり取りして、
ユーザが要求するタスクを実現する訳である。メモリ
は、通常、アプリケーション・プログラム(AP)やオ
ペレーティング・システム(OS)など、CPUが実行
する各種プログラムをロードするとともに、CPUの作
業データを格納するのに用いられる。ところが、メモリ
は、DRAMなどの揮発性の半導体記憶素子が用いら
れ、且つ比較的高価なため記憶容量にも実質上の上限が
ある(数MB〜数十MB)。そこで、通常、コンピュー
タ・システムには、メモリを補助すべく、不揮発性で大
容量の外部記憶装置(DASDともいう)が設けられて
いる。ハード・ディスク(若しくはハード・ディスク・
ドライブ(HDD))は、現在最もポピュラーになって
いる外部記憶装置の1つである。1993年から199
4年にかけて高密度化と高速化が一段と進み、1GBク
ラスの大容量のものも安価に入手できるようになってき
た。
【0004】コンピュータ・システム内におけるハード
・ディスクへのアクセス(すなわちデータやプログラム
の入出力)は、通常、オペレーティング・システムのカ
ーネル(Kernel)領域に常駐するファイル・シス
テムの制御下にある。また、コンピュータ・システムが
利用可能なハード・ディスクは、一般には、システム自
身に標準装備若しくはオプション的に装着された「ロー
カル・ディスク」と、ネットワークを介してアクセス可
能な他のコンピュータ・システム内に置かれた「リモー
ト・ディスク」とに大別される(リモート・ディスクは
他のコンピュータ・システムのローカル・ディスクであ
る)。
【0005】コンピュータのファイル・システム: ここで、コンピュータ内で情報(ファイル)の入出力の
管理を行うファイル・システムについて、簡単に説明し
ておく。図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」のようなプロトコルが介在する場合もある。
【0007】図3において、参照番号14や15で示さ
れるブロックは、いわゆるディスク・キャッシュ*であ
る。ディスク・キャッシュは、メモリへのアクセスとハ
ード・ディスクへのアクセスとの速度差を吸収し、結果
としてコンピュータ本体とハード・ディスクとの間での
データ交換を高速化するものである。CPUがますます
パワー・アップされている反面、ディスク・アクセスは
シーク・オペレーションなどの機械的制御を含むがゆえ
に高速化に限界がある。このため、ディスク・キャッシ
ュは多くのコンピュータ・システムに取り入れられてい
る。
【0008】ディスク・キャッシュ: ここで、ディスク・キャッシュについて簡単に説明して
おく。
【0009】ディスク・キャッシュは、物理的にはメモ
リの一部を割り当てられたものであり、通常、ファイル
・システムの作業エリア内に置かれている。ディスク・
キャッシュの基本原理は、CPUとメモリの間に置かれ
るキャッシュ・メモリと略同一である。キャッシュ・ヒ
ットしている限りは、アプリケーションはディスク・キ
ャッシュ(実際にはメモリ)をアクセスするだけでよ
い。したがって、ディスク自体へのアクセスの機会はか
なり低減されることになる。
【0010】データの読み出し(リード:READ)ア
クセスの場合、ハード・ディスクから一旦読み出したデ
ータをディスク・キャッシュ上に蓄えておき、再度同じ
データを読み出すときにハード・ディスク自体から読み
出さなくても済むようになっている。
【0011】一方、データの書き込み(ライト:WRI
TE)アクセスには、新しいデータをディスク・キャッ
シュに上書きするだけでいちいちハード・ディスクまで
書き戻さない「ライト・バック」方式と、ディスク・キ
ャッシュとハード・ディスク双方を更新する「ライト・
スルー」方式の2通りがある。ライト・バックによれ
ば、ディスク・キャッシュ(実際にはメモリ)に新しい
データを書き込むだけでライト・オペレーションが完了
し、アプリケーションはすぐさま次のジョブにとりかか
る(例えばユーザにダアログ・ボックスを提示する)
ことができる。これに対して、ライト・スルーによれ
ば、データ更新の度に逐一ディスク・アクセスが起こる
ので、システム10のパフォーマンスがよくない。した
がって、ディスク・キャッシュにおいては、多くの場
合、ライト・バック方式が採用されている(例えばUN
IXやOS/2(OS/2は米IBM社の商標)な
どのオペレーティング・システムではライト・バックを
採用している)。ライト・バックによればデータ・ライ
ト時のディスク・アクセスを要しない。
【0012】なお、アプリケーション・プログラムは、
データをリード及びライトするときは、該当データがデ
ィスク・キャッシュ上にあるか否かを意識する必要はな
い。ただファイル・システムをシステム・コールするだ
けでよい。
【0013】キャッシュ・フラッシュ: ライト・バック方式を採用した場合、データはディスク
・キャッシュには書き込まれるが、ハード・ディスクま
では書き戻されない。このため、ディスク・キャッシュ
とハード・ディスクとの間でデータ・コヒーレンシーが
保たれない。このため、インコヒーレントなデータの保
全(すなわち不測の事態に伴うデータの消失)を未然に
防ぐべく、適宜ディスク・キャッシュ上の更新データを
ハード・ディスク上に書き戻す作業が必要となる。この
作業のことを「キャッシュ・フラッシュ」(又は単に
「フラッシュ」)という。
【0014】図4には、キャッシュ・フラッシュを実行
するメカニズムを図解している。同図において、「シン
ク(Sync)」51は、ファイル・システムに代わっ
てキャッシュ・フラッシュを行うプログラムである。シ
ンク51は、カーネル領域に常駐するラン・タイム・ラ
イブラリ(シェアド・ライブラリ、又はダイナミック・
リンク・ライブラリ(DLL)ともいう)の1つであ
り、キャッシュ・フラッシュ用のファンクションからな
る。
【0015】また、図4において、「シンク・デーモン
(Daemon)**」と呼ばれるプログラム52は、ユ
ーザ領域に常駐して、所定時間(例えば1分あるいは3
0秒)間隔でシンクをコールするプログラムである。
【0016】シンク・デーモン52は、定期的にシンク
・ルーチンを呼び出す。そして、シンク・ルーチン51
は、ディスク・キャッシュ14,15中の書き替えられ
たキャッシュ・ラインを、各ハード・ディスク18−1
…にフラッシュする。書き替えられた(すなわちハード
・ディスク上のデータとインコヒーレントであること。
「ダーティ」ともいう)か否かは各キャッシュ・ライン
のTAGメモリを参照することによって判別される(周
知)。キャッシュ・フラッシュの実行は、特に変更デー
タが多いときに行う方がより効率的である。なお、フラ
ッシュのためのハード・ディスク18,28の実際のハ
ードウェア操作は各ハード・ディスク18−1…のデバ
イス・ドライバ16,17が行う。
【0017】データの保全性(security): UNIXなどの最近の高機能なオペレーティング・シス
テムの世界では、高いデータの保全性を実現するため
に、種々の工夫が凝らされている。
【0018】例えば、ファイル・システムは、アプリケ
ーションなどからディスク・データへのアクセスが起こ
る度にそのトランザクション・データを記録(ログ)す
るようになっている。このトランザクション・データの
中身はアクセス時刻などであり、1セクタ上の1バイト
分程度のサイズである。トランザクション・データのロ
グは、ディスク・キャッシュ上に一旦書き込み、キャッ
シュ・フラッシュ時にハード・ディスク側に反映させ
る、というフローで行われるようになっている。トラン
ザクション・データは、例えば不測の電源停止などで失
われた際に、アクセスの履歴に基づいてリカバーしたり
するのに有用である。
【0019】保全性という本来の目的からすれば、アプ
リケーションなどによる実体的なディスク・データのア
クセスが起こった時のみトランザクション・データをロ
グすればよいことになる。しかしながら、ファイル・シ
ステムからはデータ・アクセスが実体的なものかどうか
は見えないので、どんな場合であってもデータ・アクセ
スが起こる度にトランザクション・データをログしてい
るのが実情である。したがって、単にラン・タイム・ラ
イブラリをコールするだけのようなデータの保全性に影
響を及ぼさないようなデータ・アクセスであっても、ト
ランザクション・データがログされてしまう。
【0020】前述したシンク・デーモン52によるシン
ク・ルーチン51の定期的なコールは、ライブラリのコ
ールの一種である。シンク・ルーチン51自体は、小さ
いプログラムであり、ディスク・キャッシュ上に存在し
続ける場合も多い。すなわちシンク・デーモン52によ
るシンク・ルーチン51のコールは、実体を伴わない形
式的なディスク・アクセスなのであるが、トランザクシ
ョン・データがログされてしまうのである。トランザク
ション・データは、まずディスク・キャッシュに書き込
むという形でログされるので、ログ自体によってもディ
スク・キャッシュは書き替えられダーティになる。そも
そもシンク・ルーチン51はダーティなディスク・キャ
ッシュをフラッシュするためにコールされるものである
が、キャッシュがダーティでないときでも、単にシンク
・デーモン52からコールされるだけで自らダーティに
してしまい、不必要にキャッシュ・フラッシュする機会
を作ってしまうこともある。キャッシュ・フラッシュは
ダーティなデータが多いときに行う方が効率的である。
このように微小なサイズで且つ意味のないトランザクシ
ョン・データのためのキャッシュ・フラッシュは、コン
ピュータ・システムのパフォーマンスを徒に低下させて
る。
【0021】[注釈] *ディスク・キャッシュ:当該技術分野において、「デ
ィスク・キャッシュ」とは、ファイル・システムが自己
の作業エリアで管理するという物理的にはメモリ内にあ
るもの(上述)以外に、ハード・ディスク・ドライブの
ユニット内に装備されたバッファ・メモリを指す場合も
ある。但し、本明細書における「ディスク・キャッシ
ュ」は前者のみと把握されたい。 **デーモン当該技術分野において、「デーモン
は、ユーザ領域にロードされ、常にアプリケーションの
バックグラウンドで動作するプログラムの一般名称であ
る。本明細書中のデーモンは、所定時間間隔で特定のジ
ョブをコールするプログラムであると把握されたい。
【0022】
【発明が解決しようとする課題】ところで、昨今、パー
ソナル・コンピュータに対する省電力化の要求はますま
す高まってきている。ノートブックPCの場合、内蔵バ
ッテリ・パックによる駆動時間を伸ばすためであり、デ
スクトップPCの場合、資源有限というエコロジー的な
観点に因るものである。例えば米国環境保護庁(EP
A)は、Energy Starと呼ばれる省エネルギのため
の自主規制プログラムを発表して、デスクトップPCへ
の節電機能の装備を推奨している。
【0023】PCの省電力化は、内部の各電気回路の週
費電力自体を低減させる以外に、使用状況が低下した電
気回路や周辺デバイスに対する電力供給を適宜低下若し
くは遮断することによっても実現される。後者のこと
を、特に「パワー・マネージメント(Power Managemen
t)」と呼ぶこともある。ハード・ディスクへのアクセ
スが所定時間以上なかった、すなわちHDDアイドル状
態が所定時間継続した場合にディスク・ドライブのモー
タを停止させるという「HDDオフ」は、パワー・マネ
ージメントの代表例である。(但し、ここでいう「モー
タ」とは、ディスク・ドライブ内のディスクの回転モー
タ、及び磁気ヘッドのスライダ・モータという2つのモ
ータのうち特に前者を指す。以下同様。)
【0024】ところが、UNIXなどの最近の高機能な
オペレーティング・システムの世界では、アプリケーシ
ョンなどから実体的なディスク・アクセス要求が所定時
間以上起こらなかった場合でもハード・ディスクを止め
ることができない、という奇異な現象が生じている。な
ぜならば、シンク・ルーチン51がシンク・デーモン5
2によって短い時間間隔(例えば1分又は30秒)でコ
ールされる度にトランザクション・データがログされ、
この結果、実体的なデータの書き替えがなくてもディス
ク・キャッシュはダーティになってしまうからである
(前述)。ハード・ディスクが実質上アイドル状態にな
っても、シンク・デーモン52は定期的にシンク・ルー
チン51を呼び出し、これに伴ってハード・ディスクは
起こされてしまう、という訳である。
【0025】また、キャッシュ・フラッシュは、ダーテ
ィなデータが多くなったタイミングで行う方が効率的で
あるが、微小サイズで且つ意味のないトランザクション
・データのため行うのではタイムリーとは言えず、コ
ンピュータ・システムのパフォーマンスを徒に低下させ
ている。
【0026】このような問題の容易且つ直感的なソリュ
ーションの1つは、シンク・デーモンがコールする時間
間隔を長くする、ということである。しかし、キャッシ
ュ・フラッシュの間隔を単純に長くしただけでは、ディ
スク・キャッシュ上のダーティなデータが長い間ハード
・ディスクに反映されないことになり、データの保全性
が脅かされる結果となる。特に、不測の事態で電源が遮
断された場合のダメージは非常に大きい。また、トラン
ザクション・データのログ機能をドロップさせるという
ことも考えられよう。しかしながら、現在及び将来にお
けるコンピュータ・システムに期待されている保全性と
を比較考量すると、これらのソリューションは安直なも
のに過ぎない。
【0027】なお、ハード・ディスクの省電力化に関す
る類似の問題は、例えば日経エレクトロニクス,199
4年7月4日号(no.612),98頁にも言及され
ている。
【0028】本発明の目的は、ディスク・キャッシュを
持つコンピュータ・システムに装着されたディスクを駆
動制御するための、優れたディスク駆動制御方法及び装
置を提供することにある。
【0029】本発明の更なる目的は、ハード・ディスク
・ドライブのモータを好適に停止することによって省電
力化を実現する、優れたディスク駆動制御方法及び装置
を提供することにある。
【0030】本発明の更なる目的は、ハード・ディスク
の省電力化とデータの保全性の双方の要求を満たすこと
ができるディスク駆動制御方法及び装置を提供すること
にある。
【0031】本発明の更なる目的は、ディスク・キャッ
シュを最適なタイミングでフラッシュさせることができ
るディスク駆動制御方法及び装置を提供することにあ
る。
【0032】
【課題を解決するための手段及び作用】本発明は、上記
課題を参酌してなされたものであり、その第1の側面
は、ディスク・キャッシュを持つコンピュータ・システ
ムに装着されたディスクを駆動制御するためのディスク
駆動制御方法において、(a)前記ディスクへのアクセ
スが生じたことを検知して通知するアクセス検知段階
と、(b)前回のフラッシュから所定時間(T2)を経
過したときのみ前記ディスク・キャッシュをフラッシュ
する第1のフラッシュ段階と、(c)ディスク・アクセ
スの通知を受けて、前回のディスク・アクセスから所定
時間(T3又はT4)を経過したときのみ前記ディスク
・キャッシュをフラッシュする第2のフラッシュ段階
と、(d)ディスク・アクセスの通知を受けて、前回の
ディスク・アクセスから所定時間(T3又はT4)を経
過する前であってもその間のディスク・アクセス回数が
所定値(I又はJ)に達したときは前記ディスク・キャ
ッシュをフラッシュする第3のフラッシュ段階と、を含
むことを特徴とするディスク駆動制御方法である。
【0033】また、本発明の第2の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御方法に
おいて、(a)前記ディスクへのアクセスが生じたこと
を検知して通知するアクセス検知段階と、(b)ディス
ク・アクセスの通知を受けて、前回のディスク・アクセ
スから所定時間(T3又はT4)を経過したときのみ前
記ディスク・キャッシュをフラッシュする第2のフラッ
シュ段階と、(c)ディスク・アクセスの通知を受け
て、前回のディスク・アクセスから所定時間(T3又は
T4)を経過する前であってもその間のディスク・アク
セス回数が所定値(I又はJ)に達したときは前記ディ
スク・キャッシュをフラッシュする第3のフラッシュ段
階と、を含むことを特徴とするディスク駆動制御方法で
ある。
【0034】また、本発明の第3の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御方法に
おいて、(a)前記ディスクへのアクセスが生じたこと
を検知して通知するアクセス検知段階と、(b)ディス
ク・アクセスの通知を受けて、前回のディスク・アクセ
スから所定時間(T3又はT4)を経過したときのみ前
記ディスク・キャッシュをフラッシュする第2のフラッ
シュ段階と、を含むことを特徴とするディスク駆動制御
方法である。
【0035】また、本発明の第4の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御方法に
おいて、(a)前記ディスクへのアクセスが生じたこと
を検知して通知するアクセス検知段階と、(b)ディス
ク・アクセスの通知を受けて、ディスク・アクセス回数
が所定値(I又はJ)に達したときは前記ディスク・キ
ャッシュをフラッシュする第3のフラッシュ段階と、を
含むことを特徴とするディスク駆動制御方法である。
【0036】また、本発明の第の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a)前記ディスクへのアクセスが生じたこと
を検知して通知するアクセス検知手段と、(b)前記デ
ィスク・キャッシュをフラッシュするフラッシュ手段
と、(c)前回のフラッシュから所定時間(T2)を経
過したときのみ前記フラッシュ手段に前記ディスク・キ
ャッシュをフラッシュさせる第1のフラッシュ付勢手段
と、(d)前記アクセス検知手段から通知を受けて、前
回のディスク・アクセスから所定時間(T3又はT4)
を経過したときのみ前記フラッシュ手段に前記ディスク
・キャッシュをフラッシュさせる第2のフラッシュ付勢
手段と、(e)前記アクセス検知手段から通知を受け
て、前回のディスク・アクセスから所定時間(T3又は
T4)を経過する前であってもその間のディスク・アク
セス回数が所定値(I又はJ)に達したときは前記フラ
ッシュ手段に前記ディスク・キャッシュをフラッシュさ
せる第3のフラッシュ付勢手段と、を含むことを特徴と
するディスク駆動制御装置である。
【0037】また、本発明の第の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a)前記ディスクへのアクセスが生じたこと
を検知して通知するアクセス検知手段と、(b)前記デ
ィスク・キャッシュをフラッシュするフラッシュ手段
と、(c)前記アクセス検知手段から通知を受けて、前
回のディスク・アクセスから所定時間(T3又はT4)
を経過したときのみ前記フラッシュ手段に前記ディスク
・キャッシュをフラッシュさせる第2のフラッシュ付勢
手段と、(d)前記アクセス検知手段から通知を受け
て、前回のディスク・アクセスから所定時間(T3又は
T4)を経過する前であってもその間のディスク・アク
セス回数が所定値(I又はJ)に達したときは前記フラ
ッシュ手段に前記ディスク・キャッシュをフラッシュさ
せる第3のフラッシュ付勢手段と、を含むことを特徴と
するディスク駆動制御装置である。
【0038】また、本発明の第の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a)前記ディスクへのアクセスが生じたこと
を検知して通知するアクセス検知手段と、(b)前記デ
ィスク・キャッシュをフラッシュするフラッシュ手段
と、(c)前記アクセス検知手段から通知を受けて、前
回のディスク・アクセスから所定時間(T3又はT4)
を経過したときのみ前記フラッシュ手段に前記ディスク
・キャッシュをフラッシュさせる第2のフラッシュ付勢
手段と、を含むことを特徴とするディスク駆動制御装置
である。
【0039】また、本発明の第の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a)前記ディスクへのアクセスが生じたこと
を検知して通知するアクセス検知手段と、(b)前記デ
ィスク・キャッシュをフラッシュするフラッシュ手段
と、(c)前記アクセス検知手段から通知を受けて、デ
ィスク・アクセス回数が所定値(I又はJ)に達したと
きは前記フラッシュ手段に前記ディスク・キャッシュを
フラッシュさせる第3のフラッシュ付勢手段と、を含む
ことを特徴とするディスク駆動制御装置である。
【0040】また、本発明の第1乃至第の各側面に係
るディスク駆動制御方法及び装置おいて、最後のディス
ク・アクセスから所定時間(T1)以上を経過すると前
記ディスクの回転モータを停止させるようにしてもよ
い。
【0041】しかして、本発明によれば、所定時間(T
2)を適当な長さに設定することにより、短い間隔での
キャッシュ・フラッシュを避けることができる。
【0042】また、最後のディスク・アクセスから所定
時間(T3又はT4)を経過するまでは、キャッシュ・
フラッシュを行わないようにして、余分なディスク・ア
クセスを行わないようにしている。
【0043】一方で、最後のディスク・アクセスから所
定時間(T3又はT4)を経過したときや、所定時間
(T3又はT4)以内であっても、ディスク・アクセス
が所定回数(I又はJ)を越えて、その結果としてディ
スク・キャッシュのデータ・インコヒーレンシーが高く
なった(すなわちダーティ・データが増大した)ときに
は、適宜キャッシュ・フラッシュを敢行して、データの
保全性を維持している。
【0044】よって、本発明に係るディスク駆動制御方
法及び装置によれば、余分若しくは無駄なキャッシュ・
フラッシュに伴うディスク・アクセスを省略することが
できる。また、最適なタイミングでキャッシュ・フラッ
シュを行っているとも言える。この結果、HDDオフ・
モード(すなわち最後のディスク・アクセスから所定時
間経過(T1)後に回転モータを停止させる動作モー
ド)を好適に実行させることが可能になり、ハード・デ
ィスクの省電力化を実現することができる。また、トー
タルのディスク・アクセス回数が低減されるので、当
然、ディスクを装着したコンピュータ・システム側のパ
フォーマンスも向上することになる。
【0045】要約すれば、本発明によれば、ハード・デ
ィスクの省電力化、ハード・ディスクを装着したコンピ
ュータ・システムのパフォーマンス、及びデータの保全
性の各々の要求を満たすことができるディスク駆動制御
方法及び装置を提供することができる。
【0046】本発明は、「キャッシュ・フラッシュしな
いことで増大するデータの消失というリスクはディスク
・アクセス頻度に比例する」という相関関係に着目した
ものである。本発明は、メモリの容量が大きく且つハー
ド・ディスクを止める必要性があまりないサーバ型マシ
ンよりも、むしろ、メモリの容量が比較的小さく、した
がってディスク・キャッシュの容量も比較的小さいロー
エンド型のPCに対して特に存在意義が大きい。
【0047】
【発明の実施の形態】以下、図面を参照しながら本発明
の実施例を詳解する。
【0048】A.コンピュータ・システム10の構成 図1は、本発明の実施に供されるコンピュータ・システ
ム10の構成を、ファイル・システムに関連付けて図解
している。但し、図3の同一の構成要素については同一
の参照番号を付すか、又は簡略化のため省略してある。
【0049】本実施例では、パワー・マネージャ(P
M)・サーバ62がシンク・デーモンを不能化(ディセ
ーブル)するとともに、システム10のパワー・マネー
ジメント動作を実行するためのパワー・マネージャ(P
M)61がディスク・キャッシュ14,15のフラッシ
ュ動作も併せて統制するようになっている。図示の通
り、PMサーバ62はオペレーティング・システムのユ
ーザ領域に常駐し、パワー・マネージャ61はカーネル
領域に常駐する。これらの詳細は、以下に説明する。
【0050】PMサーバ62は、ユーザのパワー・マネ
ージメント要求(ユーザ・ポリシー)に対してはサーバ
的な役割を果たす。すなわち、PM_GUI(PMアイ
コンのダブル・クリック)やPM_コマンド(キー入力
によるパワー・マネージメント要求)を、API(アプ
リケーション・プログラム・インターフェース)を通じ
て受け取ると、パワー・マネージャ61のイネーブルの
ためにシステム・コールする。また、最後のユーザ入力
から所定時間経過した(システム・アイドル・タイマー
が消滅した)、あるいは内蔵バッテリの残存容量が所定
値を下回ったなどの外部事象が発生したことをPMイベ
ント・ハンドラ63から通知されると、同様にパワー・
マネージャ61のイネーブルのためにシステム・コール
する。また、PMサーバ62は、パワー・マネージャ6
1のイネーブルのためにシステム・コールしてからディ
セーブルのためにシステム・コールするまでの間は、シ
ンク・デーモン52を不能化するようになっている。
【0051】パワー・マネージャ61は、コンピュータ
・システム10のパワー・マネージメント・オペレーシ
ョンを実行するためのプログラムであり、PMサーバ6
2からシステム・コールを受けることによってシステム
10の制御権を渡される。本実施例のパワー・マネージ
ャ61は、とりわけハード・ディスク18−1…のモー
タ(図示しない)を停止する「HDDオフ」モードを好
適に実現する目的で、ハード・ディスク操作用の各デバ
イス・ドライバ16,17からディスク・アクセスが発
生した旨の通知を受ける機能(図1中の破線)と、各デ
バイス・ドライバ16に対してハード・ディスク18−
1…のモータを停止する旨を要求する機能(図中の一
点鎖線)と、キャッシュ・フラッシュのためのシンク・
ルーチン51をコールする機能とを含んでいる。但し、
パワー・マネージャ61は自システム10内のローカル
・ディスク18−1…に対してのみモータの停止を要求
でき、リモート・ディスク28のそれを止めることはで
きない(なぜならディスク28は他のシステム20の制
御下にある!)。パワー・マネージャ61によるHDD
オフ・オペレーションの詳細については次のB項及び図
2を参照されたい。
【0052】なお、PMサーバ62がパワー・マネージ
ャ61をイネーブルしてからディセーブルするまでの間
は、コンピュータ・システム10はパワー・マネージメ
ント・モード下にある。システム10が通常のオペレー
ション・モードの間はシンク・デーモン52がシンク・
ルーチン52を定期的にコールすることによってディス
ク・キャッシュのデータ・コヒーレンシーが保たれる
が、パワー・マネージメント・モードの間はパワー・マ
ネージャ61がシンク・ルーチン51をコールすること
になる。
【0053】B.ハード・ディスクの省電力制御ルーチ
図2には、パワー・マネージャ61によって実現され
る、ハード・ディスクの省電力制御ルーチンを、フロー
チャート化して示している。但し、図2では、システム
10が持っている外部記憶装置は1つのローカル・ディ
スク18と1つのリモート・ディスク28であることを
前提にしている点に注意されたい。
【0054】ローカル・ディスク及びリモート・ディス
クのアクティビティがないとき: まずステップS10では、ローカル・ディスク18への
最後のアクセスから所定時間T1が経過したかどうかを
判別する。該判別が肯定的であれば、ステップS11を
経由してローカル・ディスク18のモータを停止してか
ら、次ステップS12に進む。モータの停止により消費
電力が低減されるのは言うまでもない。一方、判別結果
が否定的であれば、直接ステップS12に進む。なお、
ローカル・ディスク18にアクセスしたか否かは、ハー
ド・ディスク用デバイス・ドライバ16から通知を受け
るようになっている(前述)。また、ハード・ディスク
18のモータの停止は該デバイス・ドライバ16に要求
することによってなされる。
【0055】次いでステップS12では、現在ローカル
・ディスク18のアクティビティ(すなわちローカル・
ディスク18へのアクセス)があるか否かを判別する。
該判別は、ハード・ディスク用デバイス・ドライバ16
を通じてなされる(前述)。判別結果が肯定的であれ
ば、ステップS20にジャンプする(後述)。逆に、否
定的であれば、次ステップS14に進む。
【0056】ステップS14では、現在ネットワーク・
カード19のアクティビティ(すなわちリモート・ディ
スク28へのアクセス)があるか否かを判別する。該判
別は、ネットワーク・カード用デバイス・ドライバ17
を通じてなされる(前述)。判別結果が肯定的であれ
ば、ステップS30にジャンプする(後述)。逆に、否
定的であれば、次ステップS16に進む。
【0057】ステップS16では、ディスク・キャッシ
ュ14,15を最後にフラッシュした時から所定時間T
2が経過したかどうかを判別する。判別結果が否定的で
あれば、ディスク・キャッシュ14,15をフラッシュ
するには時期尚早であり、システム10のパフォーマン
スを低下させかねないので、何もせずに、本ルーチンの
先頭(すなわちステップS10)にそのままリターンす
る。
【0058】逆に、ステップS16における肯定的な判
別結果は、ディスク・キャッシュ14,15上の変更内
容が長時間ハード・ディスクに反映されていないままで
あることを意味する。アプリケーションは、データのリ
ード又はライト先がディスク・キャッシュかハード・デ
ィスクかを意識せずにタスクを実行する。また、ファイ
ル・システムは、アプリケーションによる書き込みデー
タをハード・ディスクにライト・スルーしない(前
述)。したがって、長時間キャッシュ・フラッシュして
いないと、その間に実行されたタスクによって、ディス
ク・キャッシュのデータ・コヒーレンシーが大幅に失わ
れている可能性が高い。そこで、次ステップS18に進
んでディスク・キャッシュ14,15のフラッシュを行
う。ここでのキャッシュ・フラッシュは、パワー・マネ
ージャ61がシンク・ルーチン51をコールする、とい
う形態で行われる。フラッシュが完了すると、本ルーチ
ンの先頭であるステップS10にリターンして、上述の
処理(ステップS10〜S18)を繰り返す。
【0059】なお、所定時間T2をいかなる値に設定す
るかはシステム10の設計者の任意である。但し、ステ
ップS16におけるT2の経過は、ステップS11で折
角停止させたディスク・モータの再始動を伴う場合もあ
る。したがって、T2を充分長めに設定しておいた方
が、ハード・ディスクの省電力効果、及びシステム10
のパフォーマンスが高まるのは言うまでもない。
【0060】ローカル・ディスクのアクティビティがあ
るとき: ステップS12においてローカル・ディスク18のアク
ティビティが検出されたときは、メイン・ルーチンを抜
けて、ステップS20にジャンプする。
【0061】ステップS20では、ローカル・ディスク
18に前回アクセスしてからの経過時間が所定時間T3
以内か否かを判別する。該判別結果が肯定的であればカ
ウンタ値iを1だけインクリメントして(ステップS2
2)、iが所定値Iに達したか否かを判別する(ステッ
プS24)。そして、iがI以下であれば本サブ・ルー
チンを抜けて、メイン・ルーチンのステップS14にジ
ャンプする。逆に、iがIを越えていれば、iを0にク
リアしてから(ステップS26)、ステップS18にジ
ャンプして、ディスク・キャッシュS14,15をフラ
ッシュする。該フラッシュはシンク・ルーチン51をコ
ールすることによってなされる。
【0062】一方、ステップS20において、ローカル
・ディスク18への前回のアクセスから所定時間T3が
経過していることが判れば、ステップS26にジャンプ
して、iを0にクリアして、さらにステップS18にジ
ャンプしてディスク・キャッシュ14,15をフラッシ
ュする。
【0063】ファイル・システムはハード・ディスクに
ライト・スルーしない。したがって、ローカル・ディス
ク18へのディスク・アクセスが起こった回数に応じ
て、ディスク・キャッシュ14のダーティ・データが増
大して、データの保全性が危険にさらされる可能性が高
くなる。一方において、ディスク・アクセスが起こる度
にキャッシュ・フラッシュしたのでは、ライト・スルー
方式と同様にパフォーマンスが低くなってしまう。本サ
ブ・ルーチン(ステップS20〜S26)によれば、ロ
ーカル・ディスク18へのアクセスが立て続けに起こっ
ても、所定回数I以内であればデータの保全性に対する
危険は未だ小さいと考えられるので、キャッシュ・フラ
ッシュは行わないようになっている。逆に、前回のキャ
ッシュ・フラッシュ後のディスク・アクセスが所定回数
Iを越えると、通算のデータ・インコヒーレンシーは無
視し難くなってくるので、キャッシュ・フラッシュを行
うようになっている。要するに、本サブ・ルーチンは、
「キャッシュ・フラッシュしないことで増大するデータ
の消失というリスクはディスク・アクセス頻度に比例す
る」という相関関係に着目したものであり、システム1
0のパフォーマンスとデータの保全性の双方の要求が満
たされていると言えよう。
【0064】リモート・ディスクのアクティビティがあ
るとき: ステップS14においてネットワーク・カードのアクテ
ィビティが検出されたときは、メイン・ルーチンを抜け
て、ステップS30にジャンプする。
【0065】ステップS30では、リモート・ディスク
28に前回アクセスしてからの経過時間が所定時間T4
以内か否かを判別する。該判別結果が肯定的であればカ
ウンタ値jを1だけインクリメントして(ステップS3
2)、jが所定値Jに達したか否かを判別する(ステッ
プS34)。そして、jがJ以下であれば本サブ・ルー
チンを抜けて、メイン・ルーチンのステップS14にジ
ャンプする。逆に、jがJを越えていれば、jを0にク
リアしてから(ステップS36)、ステップS18にジ
ャンプして、ディスク・キャッシュS14,15をフラ
ッシュする。該フラッシュはシンク・ルーチン51をコ
ールすることによってなされる。
【0066】一方、ステップS30において、リモート
・ディスク28への前回のアクセスから所定時間T4が
経過していることが判れば、ステップS36にジャンプ
して、jを0にクリアして、さらにステップS18にジ
ャンプしてディスク・キャッシュ14,15をフラッシ
ュする。
【0067】リモート・ディスク28へのディスク・ア
クセスが起こった回数に応じて、ディスク・キャッシュ
14のデータ・コヒーレンシー(すなわちデータの保全
性)が失われるが、ディスク・アクセスの度毎にキャッ
シュ・フラッシュしたのでは、パフォーマンスが低くな
ってしまう。本サブ・ルーチン(ステップS30〜S3
6)では、前述のサブ・ルーチン(S20〜S26)と
同様に、リモート・ディスク28へのアクセスが立て続
けに起こっても、所定回数J以内であればパフォーマン
スを優先させて、キャッシュ・フラッシュは行わない。
逆に、前回のキャッシュ・フラッシュ後のディスク・ア
クセスが所定回数Jを越えると、データの保全性を優先
させて、キャッシュ・フラッシュを行うようになってい
る。要するに、本サブ・ルーチンは、「キャッシュ・フ
ラッシュしないことで増大するデータの消失というリス
クはディスク・アクセス頻度に比例する」という相関関
係に着目したものであり、システム10のパフォーマン
スとデータの保全性の双方の要求が満たされていると言
えよう。
【0068】本実施例のパワー・マネージャ61によれ
ば所定の条件下でハード・ディスクのモータを確実に停
止させることができる、ということは図2のステップS
11により一目瞭然であろう。すなわち、図2に示すよ
うな省電力制御ルーチンに従えば、シンク・デーモン5
2を用いたときのように非常に短い時間間隔でシンク・
ルーチン51がコールされることはない。したがって、
該コールに伴うトランザクション・ログだけのためにH
DDが起こされ続けることなく、適宜HDDモータを停
止させることができるのである。また、パワー・マネー
ジャ61によって適当なタイミングでシンク・ルーチン
51がコールされるので、データの保全を維持すること
も可能である。なお、T1,T2,T3,T4,I,J
の各値は、デフォルト値であってもユーザ・プログラマ
ブルであってもよい。
【0069】なお、図2の例は1つのローカル・ディス
クと1つのリモート・ディスクを持っている場合である
が、ローカル及びリモート各側のハード・ディスクの個
数が変動しても、当業者であれば適宜変更又は修正を加
えることによって応用することが可能であろう。
【0070】
【発明の効果】以上詳記したように、本発明によれば、
ハード・ディスクの省電力化、ハード・ディスクを装着
したコンピュータ・システムのパフォーマンス、及びデ
ータの保全性の各々の要求を満たすことができる、優れ
たディスク駆動制御方法及び装置を提供することができ
る。
【0071】より具体的には、本発明に係るディスク駆
動制御方法及び装置によれば、余分若しくは無駄なキャ
ッシュ・フラッシュに伴うディスク・アクセスを省略す
ることができる。この結果、HDDオフ・モード(すな
わち最後のディスク・アクセスから所定時間経過(T
1)後に回転モータを停止させる動作モード)を好適に
実行させることが可能になり、ハード・ディスクの省電
力化を実現することができる。また、トータルのディス
ク・アクセス回数が低減されるので、当然、ディスクを
装着したコンピュータ・システム側のパフォーマンスも
向上することになる。
【0072】本発明は、「キャッシュ・フラッシュしな
いことで増大するデータの消失というリスクはディスク
・アクセス頻度に比例する」という相関関係に着目した
ものである。本発明は、メモリの容量が大きく且つハー
ド・ディスクを止める必要性があまりないサーバ型マシ
ンよりも、むしろ、メモリの容量が比較的小さく、した
がってディスク・キャッシュの容量も比較的小さいロー
エンド型のPCに対して特に存在意義が大きい。
【図面の簡単な説明】
【図1】図1は、本発明の実施に供されるコンピュータ
のファイル構造を図解したものである。
【図2】図2は、パワー・マネージャ61によって実現
される、ハード・ディスクの省電力制御ルーチンを、フ
ローチャート化して示した図である。
【図3】図3は、ファイル・システムに着目して図解し
たコンピュータ・システムのアーキテクチャである。
【図4】図4は、キャッシュ・フラッシュを実行するた
めのメカニズムを図解したものである。
【符号の説明】
14,15…ディスク・キャッシュ、 16,26…ハード・ディスク用デバイス・ドライバ、 17,27…ネットワーク・カード用デバイス・ドライ
バ、 18…ハード・ディスク(ローカル・ディスク)、 28…ハード・ディスク(リモート・ディスク)、 51…シンク(Sync)、 52…シンク・デーモン、 61…パワー・マネージャ、 62…PMサーバ、 63…PMイベント・ハンドラ。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 宮 平 知 博 神奈川県大和市下鶴間1623番地14 日本 アイ・ビー・エム株式会社 大和事業所 内 (72)発明者 中 尾 彰 宏 神奈川県大和市下鶴間1623番地14 日本 アイ・ビー・エム株式会社 大和事業所 内 (56)参考文献 特開 平4−307645(JP,A) 特開 平2−19941(JP,A) 特開 平4−114228(JP,A) 特開 平4−155427(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 3/06 G06F 1/32 G06F 12/08

Claims (10)

    (57)【特許請求の範囲】
  1. 【請求項1】ディスク・キャッシュを持つコンピュータ
    ・システムに装着されたディスクを駆動制御するための
    ディスク駆動制御方法において、 (a)前記ディスクへのアクセスが生じたことを検知し
    て通知するアクセス検知段階と、 (b)前回のフラッシュから所定時間(T2)を経過し
    たときのみ前記ディスク・キャッシュをフラッシュする
    第1のフラッシュ段階と、 (c)ディスク・アクセスの通知を受けて、前回のディ
    スク・アクセスから所定時間(T3又はT4)を経過し
    たときのみ前記ディスク・キャッシュをフラッシュする
    第2のフラッシュ段階と、 (d)ディスク・アクセスの通知を受けて、前回のディ
    スク・アクセスから所定時間(T3又はT4)を経過す
    る前であってもその間のディスク・アクセス回数が所定
    値(I又はJ)に達したときは前記ディスク・キャッシ
    ュをフラッシュする第3のフラッシュ段階と、 を含むことを特徴とするディスク駆動制御方法
  2. 【請求項2】ディスク・キャッシュを持つコンピュータ
    ・システムに装着されたディスクを駆動制御するための
    ディスク駆動制御方法において、 (a)前記ディスクへのアクセスが生じたことを検知し
    て通知するアクセス検知段階と、 (b)ディスク・アクセスの通知を受けて、前回のディ
    スク・アクセスから所定時間(T3又はT4)を経過し
    たときのみ前記ディスク・キャッシュをフラッシュする
    第2のフラッシュ段階と、 (c)ディスク・アクセスの通知を受けて、前回のディ
    スク・アクセスから所定時間(T3又はT4)を経過す
    る前であってもその間のディスク・アクセス回数が所定
    値(I又はJ)に達したときは前記ディスク・キャッシ
    ュをフラッシュする第3のフラッシュ段階と、 を含むことを特徴とするディスク駆動制御方法
  3. 【請求項3】ディスク・キャッシュを持つコンピュータ
    ・システムに装着されたディスクを駆動制御するための
    ディスク駆動制御方法において、 (a)前記ディスクへのアクセスが生じたことを検知し
    て通知するアクセス検知段階と、 (b)ディスク・アクセスの通知を受けて、前回のディ
    スク・アクセスから所定時間(T3又はT4)を経過し
    たときのみ前記ディスク・キャッシュをフラッシュする
    第2のフラッシュ段階と、 を含むことを特徴とするディスク駆動制御方法
  4. 【請求項4】ディスク・キャッシュを持つコンピュータ
    ・システムに装着されたディスクを駆動制御するための
    ディスク駆動制御方法において、 (a)前記ディスクへのアクセスが生じたことを検知し
    て通知するアクセス検知段階と、 (b)ディスク・アクセスの通知を受けて、ディスク・
    アクセス回数が所定値(I又はJ)に達したときは前記
    ディスク・キャッシュをフラッシュする第3のフラッシ
    ュ段階と、 を含むことを特徴とするディスク駆動制御方法
  5. 【請求項5】最後のディスク・アクセスから所定時間
    (T1)以上を経過すると前記ディスクの回転モータを
    停止させることを特徴とする請求項1、2、3、又
    のいずれかに記載のディスク駆動制御方法
  6. 【請求項6】ディスク・キャッシュを持つコンピュータ
    ・システムに装着されたディスクを駆動制御するための
    ディスク駆動制御装置において、 (a)前記ディスクへのアクセスが生じたことを検知し
    て通知するアクセス検知手段と、 (b)前記ディスク・キャッシュをフラッシュするフラ
    ッシュ手段と、 (c)前回のフラッシュから所定時間(T2)を経過し
    たときのみ前記フラッシュ手段に前記ディスク・キャッ
    シュをフラッシュさせる第1のフラッシュ付勢手段と、 (d)前記アクセス検知手段から通知を受けて、前回の
    ディスク・アクセスから所定時間(T3又はT4)を経
    過したときのみ前記フラッシュ手段に前記ディスク・キ
    ャッシュをフラッシュさせる第2のフラッシュ付勢手段
    と、 (e)前記アクセス検知手段から通知を受けて、前回の
    ディスク・アクセスから所定時間(T3又はT4)を経
    過する前であってもその間のディスク・アクセス回数が
    所定値(I又はJ)に達したときは前記フラッシュ手段
    に前記ディスク・キャッシュをフラッシュさせる第3の
    フラッシュ付勢手段と、 を含むことを特徴とするディスク駆動制御装置
  7. 【請求項7】ディスク・キャッシュを持つコンピュータ
    ・システムに装着されたディスクを駆動制御するための
    ディスク駆動制御装置において、 (a)前記ディスクへのアクセスが生じたことを検知し
    て通知するアクセス検知手段と、 (b)前記ディスク・キャッシュをフラッシュするフラ
    ッシュ手段と、 (c)前記アクセス検知手段から通知を受けて、前回の
    ディスク・アクセスから所定時間(T3又はT4)を経
    過したときのみ前記フラッシュ手段に前記ディスク・キ
    ャッシュをフラッシュさせる第2のフラッシュ付勢手段
    と、 (d)前記アクセス検知手段から通知を受けて、前回の
    ディスク・アクセスから所定時間(T3又はT4)を経
    過する前であってもその間のディスク・アクセス回数が
    所定値(I又はJ)に達したときは前記フラッシュ手段
    に前記ディスク・キャッシュをフラッシュさせる第3の
    フラッシュ付勢手段と、 を含むことを特徴とするディスク駆動制御装置
  8. 【請求項8】ディスク・キャッシュを持つコンピュータ
    ・システムに装着されたディスクを駆動制御するための
    ディスク駆動制御装置において、 (a)前記ディスクへのアクセスが生じたことを検知し
    て通知するアクセス検知手段と、 (b)前記ディスク・キャッシュをフラッシュするフラ
    ッシュ手段と、 (c)前記アクセス検知手段から通知を受けて、前回の
    ディスク・アクセスから所定時間(T3又はT4)を経
    過したときのみ前記フラッシュ手段に前記ディスク・キ
    ャッシュをフラッシュさせる第2のフラッシュ付勢手段
    と、 を含むことを特徴とするディスク駆動制御装置
  9. 【請求項9】ディスク・キャッシュを持つコンピュータ
    ・システムに装着されたディスクを駆動制御するための
    ディスク駆動制御装置において、 (a)前記ディスクへのアクセスが生じたことを検知し
    て通知するアクセス検知手段と、 (b)前記ディスク・キャッシュをフラッシュするフラ
    ッシュ手段と、 (c)前記アクセス検知手段から通知を受けて、ディス
    ク・アクセス回数が所定値(I又はJ)に達したときは
    前記フラッシュ手段に前記ディスク・キャッシュをフラ
    ッシュさせる第3のフラッシュ付勢手段と、 を含むことを特徴とするディスク駆動制御装置
  10. 【請求項10】最後のディスク・アクセスから所定時間
    (T1)以上を経過すると前記ディスクの回転モータを
    停止させることを特徴とする請求項6、7、8又は
    のいずれかに記載のディスク駆動制御装置
JP7185771A 1995-07-21 1995-07-21 ディスク駆動制御方法及び装置 Expired - Lifetime JP3062050B2 (ja)

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 JPH0944314A (ja) 1997-02-14
JP3062050B2 true 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)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
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
JP4325817B2 (ja) 1999-04-05 2009-09-02 株式会社日立製作所 ディスクアレイ装置
KR20010038434A (ko) * 1999-10-25 2001-05-15 윤종용 컴퓨터 시스템의 전력 소모를 줄이기 위한 하드 디스크 파워 다운 방법
US20070245165A1 (en) 2000-09-27 2007-10-18 Amphus, Inc. System and method for activity or event based dynamic energy conserving server reconfiguration
US7032119B2 (en) 2000-09-27 2006-04-18 Amphus, Inc. Dynamic power and workload management for multi-server system
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
CN101197901B (zh) * 2003-07-29 2011-09-07 株式会社理光 图像形成装置和图像处理方法
US7933033B2 (en) 2003-07-29 2011-04-26 Ricoh Company, Ltd. Image forming apparatus, image processing method, image processing program and recording medium
JP2005135126A (ja) * 2003-10-30 2005-05-26 Hitachi Ltd フラグメント防止ファイルシステム
JP2007257577A (ja) * 2006-03-27 2007-10-04 Nec Corp Raid制御装置、方法及びプログラム並びにディスクアレイ装置
US7765361B2 (en) * 2006-11-21 2010-07-27 Microsoft Corporation Enforced transaction system recoverability on media without write-through
US8706968B2 (en) * 2007-12-06 2014-04-22 Fusion-Io, Inc. Apparatus, system, and method for redundant write caching
US9104599B2 (en) 2007-12-06 2015-08-11 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for destaging cached data
US8443134B2 (en) * 2006-12-06 2013-05-14 Fusion-Io, Inc. Apparatus, system, and method for graceful cache device degradation
CN101715575A (zh) 2006-12-06 2010-05-26 弗森多系统公司(dba弗森-艾奥) 采用数据管道管理数据的装置、系统和方法
US8489817B2 (en) 2007-12-06 2013-07-16 Fusion-Io, Inc. Apparatus, system, and method for caching data
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 株式会社日立製作所 省電力機能を有するストレージシステム
US11614893B2 (en) 2010-09-15 2023-03-28 Pure Storage, Inc. Optimizing storage device access based on latency
US8589655B2 (en) * 2010-09-15 2013-11-19 Pure Storage, Inc. Scheduling of I/O in an SSD environment
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
US8775868B2 (en) 2010-09-28 2014-07-08 Pure Storage, Inc. Adaptive RAID for an SSD environment
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
JP2012203583A (ja) * 2011-03-24 2012-10-22 Toshiba Corp 情報処理装置およびプログラム
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
CN106533274A (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)

* Cited by examiner, † Cited by third party
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
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
US5513359A (en) * 1993-07-23 1996-04-30 International Business Machines Corporation Desktop computer having a single-switch suspend/resume function
US5452277A (en) * 1993-12-30 1995-09-19 International Business Machines Corporation Adaptive system for optimizing disk drive power consumption
CA2186349C (en) * 1994-05-12 2008-09-23 James C. Bunnell 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

Also Published As

Publication number Publication date
KR100246870B1 (ko) 2000-03-15
US5797022A (en) 1998-08-18
KR970007642A (ko) 1997-02-21
JPH0944314A (ja) 1997-02-14

Similar Documents

Publication Publication Date Title
JP3062050B2 (ja) ディスク駆動制御方法及び装置
US7472222B2 (en) HDD having both DRAM and flash memory
US20060075185A1 (en) Method for caching data and power conservation in an information handling system
CA2523761C (en) Using external memory devices to improve system performance
CN1707400B (zh) 具有高功率和低功率处理器的处理设备
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
US7454653B2 (en) Reliability of diskless network-bootable computers using non-volatile memory cache
US8196034B2 (en) Computer system and method for reducing power consumption of storage system
US7809884B1 (en) Data storage system power management
JP5623284B2 (ja) 逆データ・バックアップのための方法、コンピュータ・プログラム及びシステム
JPH0887383A (ja) ディスクを有するコンピュータの節電方法
US7093149B2 (en) Tiered secondary memory architecture to reduce power consumption in a portable computer system
JPH07219848A (ja) キャッシュ制御システム
US7047356B2 (en) Storage controller with the disk drive and the RAM in a hybrid architecture
JP2016133847A (ja) ストレージ制御装置およびストレージ制御プログラム
US7370217B2 (en) Regulating file system device access
JPH11161527A (ja) データ記憶システム
TWI501588B (zh) 使用輔助處理器存取本地儲存裝置之技術
JPH10254780A (ja) ディスクキャッシュ制御方式
Weiner et al. TMO: Transparent Memory Offloading in Datacenters
WO2007085978A2 (en) A method of controlling a page cache memory in real time stream and best effort applications
JP2003345517A (ja) ストレージシステム