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
Application number
JP7185771A
Other languages
English (en)
Other versions
JP3062050B2 (ja
Inventor
Susumu Shimotono
遠 野 享 下
Tomohiro Miyahira
平 知 博 宮
Teruhiro Nakao
尾 彰 宏 中
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; CALCULATING OR 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; 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/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; CALCULATING OR 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; 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)
  • 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の段階と、を含むことを特徴とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ディスク・キャッ
シュを持つコンピュータ・システムに装着されたディス
クを駆動制御するためのディスク駆動制御方法及び装置
に係り、特に、ハード・ディスク・ドライブ(HDD)
のモータを好適に停止することによって省電力化を実現
するタイプのディスク駆動制御方法及び装置に関する。
更に詳しくは、本発明は、ハード・ディスクの省電力
化、ハード・ディスクを含むコンピュータ・システムの
パフォーマンス、及びデータの保全性の各々の要求を満
たすことができるディスク駆動制御方法及び装置に関す
る。
【0002】
【従来の技術】昨今の技術革新に伴い、デスクトップ
型、ノートブック型など各種パソナル・コンピュータ
(PC)が開発され市販されている。
【0003】コンピュータの基本構造は、CPU(Cetr
al Processing Unit)とメモリである。すなわち、CP
Uがメモリとやり取りして、ユーザが要求するタスクを
実現する訳である。メモリは、通常、アプリケーション
・プログラム(AP)やオペレーティング・システム
(OS)など、CPUが実行する各種プログラムをロー
ドするとともに、CPUの作業データを格納するのに用
いられる。ところが、メモリは、DRAMなどの揮発性
の半導体記憶素子が用いられ、且つ比較的高価なため記
憶容量にも実質上の上限がある(数MB〜数十MB)。
そこで、通常、コンピュータ・システムには、メモリを
補助すべく、不揮発性で大容量の外部記憶装置(DAS
Dともいう)が設けられている。ハード・ディスク(若
しくはハード・ディスク・ドライブ(HDD))は、現
在最もポピュラーになっている外部記憶装置の1つであ
る。1993年から1994年にかけて高密度化と高速
化が一段と進み、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(Transmission Control Protocol/Internet Protoco
l)"のようなプロトコルが介在する場合もある。
【0007】図3において、参照番号14や15で示さ
れるブロックは、いわゆるディスク・キャッシュ*であ
る。ディスク・キャッシュは、メモリへのアクセスとハ
ード・ディスクへのアクセスとの速度差を吸収し、結果
としてコンピュータ本体とハード・ディスクとの間での
データ交換を高速化するものである。CPUがますます
パワー・アップされている反面、ディスク・アクセスは
シーク・オペレーションなどの機械的制御を含むがゆえ
に高速化に限界がある。このため、ディスク・キャッシ
ュは多くのコンピュータ・システムに取り入れられてい
る。
【0008】ディスク・キャッシュ:ここで、ディスク
・キャッシュについて簡単に説明しておく。
【0009】ディスク・キャッシュは、物理的にはメモ
リの一部を割り当てられたものであり、通常、ファイル
・システムの作業エリア内に置かれている。ディスク・
キャッシュの基本原理は、CPUとメモリの間に置かれ
るキャッシュ・メモリと略同一である。キャッシュ・ヒ
ットしている限りは、アプリケーションはディスク・キ
ャッシュ(実際にはメモリ)をアクセスするだけでよ
い。したがって、ディスク自体へのアクセスの機会はか
なり低減されることになる。
【0010】データの読み出し(リード:READ)ア
クセスの場合、ハード・ディスクから一旦読み出したデ
ータをディスク・キャッシュ上に蓄えておき、再度同じ
データを読み出すときにハード・ディスク自体から読み
出さなくても済むようになっている。
【0011】一方、データの書き込み(ライト:WRI
TE)アクセスには、新しいデータをディスク・キャッ
シュに上書きするだけでいちいちハード・ディスクまで
書き戻さない「ライト・バック」方式と、ディスク・キ
ャッシュとハード・ディスク双方を更新する「ライト・
スルー」方式の2通りがある。ライト・バックによれ
ば、ディスク・キャッシュ(実際にはメモリ)に新しい
データを書き込むだけでライト・オペレーションが完了
し、アプリケーションはすぐさま次のジョブにとりかか
る(例えばユーザにダアログ・ボックスを提示する)こ
とができる。これに対して、ライト・スルーによれば、
データ更新の度に逐一ディスク・アクセスが起こるの
で、システム10のパフォーマンスがよくない。したが
って、ディスク・キャッシュにおいては、多くの場合、
ライト・バック方式が採用されている(例えばUNIX
や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):
NIXなどの最近の高機能なオペレーティング・システ
ムの世界では、高いデータの保全性(securit
y)を実現するために、種々の工夫が凝らされている。
【0018】例えば、ファイル・システムは、アプリケ
ーションなどからディスク・データへのアクセスが起こ
る度にそのトランザクション・データを記録(ログ)す
るようになっている。このトランザクション・データの
中身はアクセス時刻などであり、1セクタ上の1バイト
分程度のサイズである。トランザクション・データのロ
グは、ディスク・キャッシュ上に一旦書き込み、キャッ
シュ・フラッシュ時にハード・ディスク側に反映させ
る、というフローで行われるようになっている。トラン
ザクション・データは、例えば不測の電源停止などで失
われた際に、アクセスの履歴に基づいてリカバーしたり
するのに有用である。
【0019】保全性という本来の目的からすれば、アプ
リケーションなどによる実体的なディスク・データのア
クセスが起こった時のみトランザクション・データをロ
グすればよいことになる。しかしながら、ファイル・シ
ステムからはデータ・アクセスが実体的なものかどうか
は見えないので、どんな場合であってもデータ・アクセ
スが起こる度にトランザクション・データをログしてい
るのが実情である。したがって、単にラン・タイム・ラ
イブラリをコールするだけのようなデータの保全性に影
響を及ぼさないようなデータ・アクセスであっても、ト
ランザクション・データがログされてしまう。
【0020】前述したシンク・デーモン52によるシン
ク・ルーチン51の定期的なコールは、ライブラリのコ
ールの一種である。シンク・ルーチン51自体は、小さ
いプログラムであり、ディスク・キャッシュ上に存在し
続ける場合も多い。すなわちシンク・デーモン52によ
るシンク・ルーチン51のコールは、実体を伴わない形
式的なディスク・アクセスなのであるが、トランザクシ
ョン・データがログされてしまうのである。トランザク
ション・データは、まずディスク・キャッシュに書き込
むという形でログされるので、ログ自体によってもディ
スク・キャッシュは書き替えられダーティになる。そも
そもシンク・ルーチン51はダーティなディスク・キャ
ッシュをフラッシュするためにコールされるものである
が、キャッシュがダーティでないときでも、単にシンク
・デーモン52からコールされるだけで自らダーティに
してしまい、不必要にキャッシュ・フラッシュする機会
を作ってしまうこともある。キャッシュ・フラッシュは
ダーティなデータが多いときに行う方が効率的である、
ということは言うまでもない。このように微小なサイズ
で且つ意味のないのトランザクション・データのための
キャッシュ・フラッシュは、コンピュータ・システムの
パフォーマンスを徒に低下させていることに他ならな
い。
【0021】[注釈] *ディスク・キャッシュ:当該技術分野においては、
「ディスク・キャッシュ」とは、ファイル・システムが
自己の作業エリアで管理するという物理的にはメモリ内
にあるもの(上述)以外に、ハード・ディスク・ドライ
ブのユニット内に装備されたバッファ・メモリを指す場
合もある。但し、本明細書における「ディスク・キャッ
シュ」は前者のみと把握されたい。 **Daemon:デーモンとは、ユーザ領域にロード
され、常にアプリケーションのバックグラウンドで動作
するプログラムの一般名称である。本明細書中のデーモ
ンは、所定時間間隔で特定のジョブをコールするプログ
ラムであると把握されたい。
【0022】
【発明が解決しようとする課題】ところで、昨今、パー
ソナル・コンピュータに対する省電力化の要求はますま
す高まってきている。ノートブックPCの場合、内蔵バ
ッテリ・パックによる駆動時間を伸ばすためであり、デ
スクトップPCの場合、資源有限というエコロジー的な
観点に因るものである。例えば米国環境保護庁(EP
A)は、"Energy Star"と呼ばれる省エネル
ギのための自主規制プログラムを発表して、デスクトッ
プPCへの節電機能の装備を推奨している。
【0023】PCの省電力化は、内部の各電気回路の週
費電力自体を低減させる以外に、使用状況が低下した電
気回路や周辺デバイスに対する電力供給を適宜低下若し
くは遮断することによっても実現される。後者のこと
を、特に「パワー・マネージメント(Power ma
nagement)」と呼ぶこともある。ハード・ディ
スクへのアクセスが所定時間以上なかった、すなわちH
DDアイドル状態が所定時間継続した場合にディスク・
ドライブのモータを停止させるという「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) ディスク・アクセスの通知
を受けて、前回のディスク・アクセスから所定時間(T
3又は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】また、本発明の第5の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御方法に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知段階と、(b) 前回のフラ
ッシュから所定時間(T2)を経過したときのみ前記デ
ィスク・キャッシュをフラッシュする第1のフラッシュ
段階と、を含むことを特徴とするディスク駆動制御方法
である。
【0037】また、本発明の第6の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(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
のフラッシュ付勢手段と、を含むことを特徴とするディ
スク駆動制御装置である。
【0039】また、本発明の第8の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知手段と、(b) 前記ディス
ク・キャッシュをフラッシュするフラッシュ手段と、
(c) 前記アクセス検知手段から通知を受けて、前回のデ
ィスク・アクセスから所定時間(T3又はT4)を経過
したときのみ前記フラッシュ手段に前記ディスク・キャ
ッシュをフラッシュさせる第2のフラッシュ付勢手段
と、を含むことを特徴とするディスク駆動制御装置であ
る。
【0040】また、本発明の第9の側面は、ディスク・
キャッシュを持つコンピュータ・システムに装着された
ディスクを駆動制御するためのディスク駆動制御装置に
おいて、(a) 前記ディスクへのアクセスが生じたことを
検知して通知するアクセス検知手段と、(b) 前記ディス
ク・キャッシュをフラッシュするフラッシュ手段と、
(c) 前記アクセス検知手段から通知を受けて、ディスク
・アクセス回数が所定値(I又はJ)に達したときは前
記フラッシュ手段に前記ディスク・キャッシュをフラッ
シュさせる第3のフラッシュ付勢手段と、を含むことを
特徴とするディスク駆動制御装置である。
【0041】また、本発明の第10の側面は、ディスク
・キャッシュを持つコンピュータ・システムに装着され
たディスクを駆動制御するためのディスク駆動制御装置
において、(a) 前記ディスクへのアクセスが生じたこと
を検知して通知するアクセス検知手段と、(b) 前記ディ
スク・キャッシュをフラッシュするフラッシュ手段と、
(c) 前回のフラッシュから所定時間(T2)を経過した
ときのみ前記フラッシュ手段に前記ディスク・キャッシ
ュをフラッシュさせる第1のフラッシュ付勢手段と、を
含むことを特徴とするディスク駆動制御装置である。
【0042】また、本発明の第1乃至第10の各側面に
係るディスク駆動制御方法及び装置おいて、最後のディ
スク・アクセスから所定時間(T1)以上を経過すると
前記ディスクの回転モータを停止させるようにしてもよ
い。
【0043】しかして、本発明によれば、所定時間(T
2)を適当な長さに設定することにより、短い間隔での
キャッシュ・フラッシュを避けることができる。
【0044】また、最後のディスク・アクセスから所定
時間(T3又はT4)を経過するまでは、キャッシュ・
フラッシュを行わないようにして、余分なディスク・ア
クセスを行わないようにしている。
【0045】一方で、最後のディスク・アクセスから所
定時間(T3又はT4)を経過したときや、所定時間
(T3又はT4)以内であっても、ディスク・アクセス
が所定回数(I又はJ)を越えて、その結果としてディ
スク・キャッシュのデータ・インコヒーレンシーが高く
なった(すなわちダーティ・データが増大した)ときに
は、適宜キャッシュ・フラッシュを敢行して、データの
保全性を維持している。
【0046】よって、本発明に係るディスク駆動制御方
法及び装置によれば、余分若しくは無駄なキャッシュ・
フラッシュに伴うディスク・アクセスを省略することが
できる。また、最適なタイミングでキャッシュ・フラッ
シュを行っているとも言える。この結果、HDDオフ・
モード(すなわち最後のディスク・アクセスから所定時
間経過(T1)後に回転モータを停止させる動作モー
ド)を好適に実行させることが可能になり、ハード・デ
ィスクの省電力化を実現することができる。また、トー
タルのディスク・アクセス回数が低減されるので、当
然、ディスクを装着したコンピュータ・システム側のパ
フォーマンスも向上することになる。
【0047】要約すれば、本発明によれば、ハード・デ
ィスクの省電力化、ハード・ディスクを装着したコンピ
ュータ・システムのパフォーマンス、及びデータの保全
性の各々の要求を満たすことができるディスク駆動制御
方法及び装置を提供することができる。
【0048】本発明は、「キャッシュ・フラッシュしな
いことで増大するデータの消失というリスクはディスク
・アクセス頻度に比例する」という相関関係に着目した
ものである。本発明は、メモリの容量が大きく且つハー
ド・ディスクを止める必要性があまりないサーバ型マシ
ンよりも、むしろ、メモリの容量が比較的小さく、した
がってディスク・キャッシュの容量も比較的小さいロー
エンド型のPCに対して特に存在意義が大きい。
【0049】本発明のさらに他の目的、特徴や利点は、
後述する本発明の実施例や添付する図面に基づくより詳
細な説明によって明らかになるであろう。
【0050】
【発明の実施の形態】以下、図面を参照しながら本発明
の実施例を詳解する。
【0051】A.コンピュータ・システム10の構成 図1は、本発明の実施に供されるコンピュータ・システ
ム10の構成を、ファイル・システムに関連付けて図解
している。但し、図3の同一の構成要素については同一
の参照番号を付すか、又は簡略化のため省略してある。
【0052】本実施例では、パワー・マネージャ(P
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を不能化するようになっている。
【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を参照されたい。
【0055】なお、PMサーバ62がパワー・マネージ
ャ61をイネーブルしてからディセーブルするまでの間
は、コンピュータ・システム10はパワー・マネージメ
ント・モード下にある。システム10が通常のオペレー
ション・モードの間はシンク・デーモン52がシンク・
ルーチン52を定期的にコールすることによってディス
ク・キャッシュのデータ・コヒーレンシーが保たれる
が、パワー・マネージメント・モードの間はパワー・マ
ネージャ61がシンク・ルーチン51をコールすること
になる。
【0056】B.ハード・ディスクの省電力制御ルーチ
図2には、パワー・マネージャ61によって実現され
る、ハード・ディスクの省電力制御ルーチンを、フロー
チャート化して示している。但し、図2では、システム
10が持っている外部記憶装置は1つのローカル・ディ
スク18と1つのリモート・ディスク28であることを
前提にしている点に注意されたい。
【0057】ローカル・ディスク及びリモート・ディス
クのアクティビティがないとき:まずステップS10で
は、ローカル・ディスク18への最後のアクセスから所
定時間T1が経過したかどうかを判別する。該判別が肯
定的であれば、ステップS11を経由してローカル・デ
ィスク18のモータを停止してから、次ステップS12
に進む。モータの停止により消費電力が低減されるのは
言うまでもない。一方、判別結果が否定的であれば、直
接ステップS12に進む。なお、ローカル・ディスク1
8にアクセスしたか否かは、ハード・ディスク用デバイ
ス・ドライバ16から通知を受けるようになっている
(前述)。また、ハード・ディスク18のモータの停止
は該デバイス・ドライバ16に要求することによってな
される。
【0058】次いでステップS12では、現在ローカル
・ディスク18のアクティビティ(すなわちローカル・
ディスク18へのアクセス)があるか否かを判別する。
該判別は、ハード・ディスク用デバイス・ドライバ16
を通じてなされる(前述)。判別結果が肯定的であれ
ば、ステップS20にジャンプする(後述)。逆に、否
定的であれば、次ステップS14に進む。
【0059】ステップS14では、現在ネットワーク・
カード19のアクティビティ(すなわちリモート・ディ
スク28へのアクセス)があるか否かを判別する。該判
別は、ネットワーク・カード用デバイス・ドライバ17
を通じてなされる(前述)。判別結果が肯定的であれ
ば、ステップS30にジャンプする(後述)。逆に、否
定的であれば、次ステップS16に進む。
【0060】ステップS16では、ディスク・キャッシ
ュ14,15を最後にフラッシュした時から所定時間T
2が経過したかどうかを判別する。判別結果が否定的で
あれば、ディスク・キャッシュ14,15をフラッシュ
するには時期尚早であり、システム10のパフォーマン
スを低下させかねないので、何もせずに、本ルーチンの
先頭(すなわちステップS10)にそのままリターンす
る。
【0061】逆に、ステップS16における肯定的な判
別結果は、ディスク・キャッシュ14,15上の変更内
容が長時間ハード・ディスクに反映されていないままで
あるを意味する。アプリケーションは、データのリード
又はライト先がディスク・キャッシュかハード・ディス
クかを意識せずにタスクを実行する。また、ファイル・
システムは、アプリケーションによる書き込みデータを
ハード・ディスクにライト・スルーしない(前述)。し
たがって、長時間キャッシュ・フラッシュしていない
と、その間に実行されたタスクによって、ディスク・キ
ャッシュのデータ・コヒーレンシーが大幅に失われてい
る可能性が高い。そこで、次ステップS18に進んでデ
ィスク・キャッシュ14,15のフラッシュを行う。こ
こでのキャッシュ・フラッシュは、パワー・マネージャ
61がシンク・ルーチン51をコールする、という形態
で行われる。フラッシュが完了すると、本ルーチンの先
頭であるステップS10にリターンして、上述の処理
(ステップS10〜S18)を繰り返す。
【0062】なお、所定時間T2をいかなる値に設定す
るかはシステム10の設計者の任意である。但し、ステ
ップS16におけるT2の経過は、ステップS11で折
角停止させたディスク・モータの再始動を伴う場合もあ
る。したがって、T2を充分長めに設定しておいた方
が、ハード・ディスクの省電力効果、及びシステム10
のパフォーマンスが高まるのは言うまでもない。
【0063】ローカル・ディスクのアクティビティがあ
るとき:ステップ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をコ
ールすることによってなされる。
【0065】一方、ステップS20において、ローカル
・ディスク18への前回のアクセスから所定時間T3が
経過していることが判れば、ステップS26にジャンプ
して、iを0にクリアして、さらにステップS18にジ
ャンプしてディスク・キャッシュ14,15をフラッシ
ュする。
【0066】ファイル・システムはハード・ディスクに
ライト・スルーしない。したがって、ローカル・ディス
ク18へのディスク・アクセスが起こった回数に応じ
て、ディスク・キャッシュ14のダーティ・データが増
大して、データの保全性が危険にさらされる可能性が高
くなる。一方において、ディスク・アクセスが起こる度
にキャッシュ・フラッシュしたのでは、ライト・スルー
方式と同様にパフォーマンスが低くなってしまう。本サ
ブ・ルーチン(ステップS20〜S26)によれば、ロ
ーカル・ディスク18へのアクセスが立て続けに起こっ
ても、所定回数I以内であればデータの保全性に対する
危険は未だ小さいと考えられるので、キャッシュ・フラ
ッシュは行わないようになっている。逆に、前回のキャ
ッシュ・フラッシュ後のディスク・アクセスが所定回数
Iを越えると、通算のデータ・インコヒーレンシーは無
視し難くなってくるので、キャッシュ・フラッシュを行
うようになっている。要するに、本サブ・ルーチンは、
「キャッシュ・フラッシュしないことで増大するデータ
の消失というリスクはディスク・アクセス頻度に比例す
る」という相関関係に着目したものであり、システム1
0のパフォーマンスとデータの保全性の双方の要求が満
たされていると言えよう。
【0067】リモート・ディスクのアクティビティがあ
るとき:ステップ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をコ
ールすることによってなされる。
【0069】一方、ステップS30において、リモート
・ディスク28への前回のアクセスから所定時間T4が
経過していることが判れば、ステップS36にジャンプ
して、jを0にクリアして、さらにステップS18にジ
ャンプしてディスク・キャッシュ14,15をフラッシ
ュする。
【0070】リモート・ディスク28へのディスク・ア
クセスが起こった回数に応じて、ディスク・キャッシュ
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
の各値は、デフォルト値であってもユーザ・プログラマ
ブルであってもよい。
【0072】なお、図2の例は1つのローカル・ディス
クと1つのリモート・ディスクを持っている場合である
が、ローカル及びリモート各側のハード・ディスクの個
数が変動しても、当業者であれば適宜変更又は修正を加
えることによって応用することが可能であろう。
【0073】E.追補 以上、特定の実施例を参照しながら、本発明について詳
解してきた。しかしながら、本発明の要旨を逸脱しない
範囲で当業者が該実施例の修正や代用を成し得ることは
自明である。要するに、例示という形態で本発明を開示
してきたのであり、限定的に解釈されるべきではない。
本発明の要旨を判断するためには、冒頭に記載した特許
請求の範囲の欄を参酌すべきである。
【0074】
【発明の効果】以上詳記したように、本発明によれば、
ハード・ディスクの省電力化、ハード・ディスクを装着
したコンピュータ・システムのパフォーマンス、及びデ
ータの保全性の各々の要求を満たすことができる、優れ
たディスク駆動制御方法及び装置を提供することができ
る。
【0075】より具体的には、本発明に係るディスク駆
動制御方法及び装置によれば、余分若しくは無駄なキャ
ッシュ・フラッシュに伴うディスク・アクセスを省略す
ることができる。この結果、HDDオフ・モード(すな
わち最後のディスク・アクセスから所定時間経過(T
1)後に回転モータを停止させる動作モード)を好適に
実行させることが可能になり、ハード・ディスクの省電
力化を実現することができる。また、トータルのディス
ク・アクセス回数が低減されるので、当然、ディスクを
装着したコンピュータ・システム側のパフォーマンスも
向上することになる。
【0076】本発明は、「キャッシュ・フラッシュしな
いことで増大するデータの消失というリスクはディスク
・アクセス頻度に比例する」という相関関係に着目した
ものである。本発明は、メモリの容量が大きく且つハー
ド・ディスクを止める必要性があまりないサーバ型マシ
ンよりも、むしろ、メモリの容量が比較的小さく、した
がってディスク・キャッシュの容量も比較的小さいロー
エンド型の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
イベント・ハンドラ。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 宮 平 知 博 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内 (72)発明者 中 尾 彰 宏 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内

Claims (12)

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

* Cited by examiner, † Cited by third party
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 (33)

* 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
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
CN101197901B (zh) * 2003-07-29 2011-09-07 株式会社理光 图像形成装置和图像处理方法
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
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
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
US8402201B2 (en) 2006-12-06 2013-03-19 Fusion-Io, Inc. Apparatus, system, and method for storage space recovery in solid-state storage
US8489817B2 (en) 2007-12-06 2013-07-16 Fusion-Io, Inc. Apparatus, system, and method for caching 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 不揮発性半導体記憶装置、不揮発性半導体記憶装置の制御方法、不揮発性半導体記憶システム、及びメモリカード
JP2010537309A (ja) * 2007-08-21 2010-12-02 トムソン ライセンシング ハードディスクドライブ・ファイルシステムのデータ破損を防止する方法及びシステム
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 株式会社日立製作所 省電力機能を有するストレージシステム
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
US9141527B2 (en) 2011-02-25 2015-09-22 Intelligent Intellectual Property Holdings 2 Llc Managing cache pools
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)

* 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
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

Cited By (10)

* Cited by examiner, † Cited by third party
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
JP3062050B2 (ja) 2000-07-10
US5797022A (en) 1998-08-18
KR970007642A (ko) 1997-02-21
KR100246870B1 (ko) 2000-03-15

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
US7472222B2 (en) HDD having both DRAM and flash memory
US5632038A (en) Secondary cache system for portable computer
US20060075185A1 (en) Method for caching data and power conservation in an information handling system
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) ディスクキャッシュシステムにおける停電処理方式及び停電処理方法
JPH11161527A (ja) データ記憶システム
JPH10254780A (ja) ディスクキャッシュ制御方式
JPH11297083A (ja) 不揮発性メモリを利用したバックアップ記憶装置
WO2007085978A2 (en) A method of controlling a page cache memory in real time stream and best effort applications