JP2002532778A - ディスクスペース割当て量枠の見込み実働化のためのページ可能フィルタドライバ - Google Patents
ディスクスペース割当て量枠の見込み実働化のためのページ可能フィルタドライバInfo
- Publication number
- JP2002532778A JP2002532778A JP2000587260A JP2000587260A JP2002532778A JP 2002532778 A JP2002532778 A JP 2002532778A JP 2000587260 A JP2000587260 A JP 2000587260A JP 2000587260 A JP2000587260 A JP 2000587260A JP 2002532778 A JP2002532778 A JP 2002532778A
- Authority
- JP
- Japan
- Prior art keywords
- quota
- disk space
- file
- disk
- frame
- 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.)
- Pending
Links
- 238000012544 monitoring process Methods 0.000 claims description 6
- 238000012805 post-processing Methods 0.000 description 23
- 230000008859 change Effects 0.000 description 17
- 230000000694 effects Effects 0.000 description 8
- 230000009471 action Effects 0.000 description 6
- 238000013459 approach Methods 0.000 description 6
- 238000000034 method Methods 0.000 description 6
- 230000011664 signaling Effects 0.000 description 6
- 101000800755 Naja oxiana Alpha-elapitoxin-Nno2a Proteins 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000002085 persistent effect Effects 0.000 description 3
- 230000006837 decompression Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- NOQGZXFMHARMLW-UHFFFAOYSA-N Daminozide Chemical compound CN(C)NC(=O)CCC(O)=O NOQGZXFMHARMLW-UHFFFAOYSA-N 0.000 description 1
- 241000255925 Diptera Species 0.000 description 1
- 238000012508 change request Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
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
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- 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
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- 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
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
下で管理し制御する装置に関し、より詳しくいうと、ディスクスペース割当て量
枠を実働化するフィルタドライバ手法に関する。
て量枠によって制限される。ディスクスペースはシステムが正しく動作するのに
必要な資源である。強制可能なディスクスペース割当て量枠システムがない場合
は、ユーザは自分が望むだけのディスクスペースを自由に割り当てることができ
る。この状態は、他のユーザおよびオペレーティングシステムそのものがディス
クスペース必要時に割当て不可能になり得るので、システム動作に支障を生ずる
可能性がある。ディスクスペース割当て量枠システムは各ユーザが使えるディス
クスペース最大値をシステム管理者が設定し、システム動作に利用可能な十分な
スペースを常に確保できるようにする。
、割当て量枠システムを備えないシステム、または割当て量枠設定機能が十分で
ないシステムもある。例えば、Windows NT (4.0版)はディスクスペース割当て
量枠システムを備えていない。Windows NT はマルチユーザサーバ環境で広く用
いられるようになっているので、第三者がこの機能を提供する必要がある。この
機能を従来技術の手法によって提供する試みもなされてきたが、それら試みで用
いられてきた従来技術の手法は、ユーザによるディスクスペース利用の制限とい
う目的を満足できるほどには達成していない。
能をそれ自身では備えていないオペレーティングシステムの下で割当て量枠を実
働化する従来技術は、ファイル割当て変更の検出に、オペレーティングシステム
の辞書変更通知機構を利用する。この手法では、割当て量枠を超えると、割当て
量枠適用対象の辞書の中にユーザがファイルを作れないようにファイル保護が変
わる。この方法は反作用を伴い、変化の発生ののちにそれら変化を検出し、有用
性の限界となるいくつかの不利な点を伴う。すなわち、 1.適切なステータスコードを返送できない。ファイル保護の変化が「アクセス
拒絶」状態を生ずる、 2.割当て量枠の絶対的強制は不可能である。従来技術による手法は割当て量枠
が満杯になったことを検出する。割当て量枠を超えた動作を不適格とはしない。 3.開いたファイルまで影響を及ぼすことはできない。ユーザが一旦ファイルを
開くと、従来技術による手法では、検出または阻止されることなく、利用可能な
ディスクスペースの限界までそのユーザはそのファイルを拡大できる。
枠の超過分の書込みの前に検出するように実働化することである。
することである。
することである。
ステムのカーネル内で利用できるファシリティを用いることである。
。
ある。ファイルシステム内のファイルが占めるディスクスペースに対する割当て
量枠限界値はユーザおよびディレクトリーに対して定められ、実際のディスクス
ペース利用に対する割当て量枠の現状の追跡のために内部データベースが形成さ
れる。この発明によるドライバは、設定ずみの割当て量枠を超過するファイルシ
ステムI/O動作の実行を防ぐために、オペレーティングシステムのカーネル資
源を用いる。その際に、このドライバはファイル割当て動作をシリアル化すると
ともに上記内部データベースへのアクセスをシリアル化するカーネルモードで論
理を実行する。
ムドライバへの到達前に代行受信することである。次に、このドライバは、その
I/O要求の完結によって割当て量枠超過が生ずるか否かを見込みで、すなわち
そのI/O要求の完結の前に、判定する。割当て量枠超過が起こりそうであれば
そのI/O要求の完結を阻止し、誤り状態信号を発生する。割当て量枠超過が生
じそうにない場合は、そのI/O要求の完結を可能にしドライバの内部データベ
ースをディスクスペース利用データ改訂分で更新する。
に対するシステム管理者設定の割当て量枠の適用を担当するファイルシステムフ
ィルタドライバを含む。この割当て量枠はファイルの蓄積先のディレクトリにつ
いても設定する。この発明のファイルシステムフィルタドライバは、ファイルシ
ステムドライバへの呼の各々を代行受信して、設定ずみの割当て量枠との関連で
ディスクスペース割当てへの影響についてそれら呼の各々を処理する。
性データベースを保持する。このデータベースをファイル割当て変更があった場
合は更新し、システムブート全体にわたる割当て量枠の蓄積に用いる。
、この発明はファイルシステム動作の影響をその動作の実際の実行の前に推定で
きる。これによって、割当て量枠をリアルタイムで高精度で強制できる。この発
明のシステムは実際のI/O経路内にあるので、適切な「割当て量枠超過」状態
コードでI/O動作を阻止し、任意の時点におけるファイル割当ての正確な記録
を維持できる。
この発明の好ましい実施例についての次の説明からよりよく理解されよう。
視による従来技術の割当て量枠実働化の方法が示してある。この従来技術では、
カーネルプロセスがI/O要求11を受信して、それに適用されるファイル保護
12をチェックする。適用ファイル保護が破られている場合は、そのI/O要求
は「アクセス拒絶」に戻る。適用ファイル保護が破られていない場合はそのI/
O要求は完結し(13)、NTディレクトリ16を更新する(15)。割当て量
枠適用ソフトウェア17は、割当て量枠に影響するI/Oイベントが実行された
ことを検出し、そのI/Oイベントの結果影響の及んだファイルが変更を要する
場合は、割当て量枠適用ソフトウェア17がNTディレクトリ16内のファイル
保護19を変更する。これによって後続のI/O要求の実行の有無が影響を受け
る。
ステムフィルタを用いる。この発明の実際的な実働化は Windows NT 4.0 オペレ
ーティングシステムに関連づけて説明できる。ここに参照してこの明細書に組み
入れる Helen Custer 著 "Inside the Windows NT File System" (Microsoft Pr
ess 1994年刊)、とくに層構成ドライバモデルを説明した同刊行物第2章をこの
発明の実働化の環境の説明として参照されたい。この発明は、Windows NT 4.0用
割当て量枠システムを Windows NT 提供のNTFSドライバに追加してフィルタ
ドライバとして提供するように実働化される。
ァイルシステムドライバに達する前に代理受信するカーネルモードドライバであ
り、ファイルシステムドライバが要求を完了したのちに実行されるべきルーチン
をオプションとして特定することもできる。ファイルシステムフィルタドライバ
は当業者に周知であり、オン・ディスクデータ暗号化/解読、ファイルシステム
性能監視その他の用途に使われてきた。
ィルタ」と呼ぶ)はI/O要求21を受けた場合にその要求の種類に基づいてそ
の処理を行う。そのI/O要求を評価(21)して、その要求が完結時に割当て
量枠に影響を及ぼすか否かを判断する。その種の要求(後述)はファイルの形成
または開設、書込み、ファイル所有者名変更、ファイル名変更、およびファイル
圧縮状態変更を対象とする。I/O要求21がこれら種類23の一つであった場
合は、QaフィルタはそのI/O要求完結時に種々の割当て量枠がいかに影響さ
れるかを見込みで判定する(24)。その判定24が割当て量枠超過を見込んだ
場合はそのI/O要求は不調となり、ルーチンは適切な「割当て量枠超過」状態
コード26を備えた形で要求者25に戻る。その判定22が割当て量超過なしと
見込んだ場合は後処理ルーチンを特定し(27)、これによってディスク割当て
に対する動作の実際の影響を判定し、I/O要求を完結させる(28)。
をさらに詳述する。生じさせる(開く) ファイルを開く旨の要求はそのファイルにいま割り当てられているファイルお
よびスペースを記述する内部データ構造(図示してない)をQaフィルタに生じ
させる。開くべきそのファイルの割当てサイズをファイルシステムから読み込み
、上記内部データ構造で蓄積し、そのファイル上での後続の動作のファイルサイ
ズへの影響を正確に判定できるようにする。書込み、セット情報(拡張または切捨て) 現時点で割当てずみのスペースを越えて拡張する書込み、またはファイルのサ
イズに変更を与える「情報をセットする」動作はディスク上のファイルの割当て
サイズに影響する。Qaフィルタは、ファイル割当てにあたって動作が示す変更
を算出する。この変更のために適用割当て量枠を超過した場合は、「割当て量枠
超過」状態で動作は直ちに支障を生ずる。この変更が許容可能である場合は、フ
ァイルシステムによる上記要求の完結後に実行される後処理ルーチンを特定する
。後処理ルーチンはそのファイルへのディスクスペース割当てに対する動作の実
際の影響を調べて、メモリおよびディスク上の持続的データベースの両方でその
ファイルについてのデータ構造を更新する。セットセキュリティ(変更オーナー) 割当て量枠の多くはファイル所有権に基づいているので、ファイルのオーナー
の変更はディスクスペース割当てに影響を及ぼし得る。ファイル所有権変更の要
求を受けると、その要求により新たなオーナーがその割当て量枠を超えるか否か
を判定するためにその要求を調べる。超えると判定した場合は、その要求は「割
当て量枠超過」状態で直ちに不首尾となる。その変更が許容できるものである場
合は、ファイルシステムによる上記要求の完結後に実行される後処理ルーチンを
特定する。後処理ルーチンはファイルシステムがファイル所有権を首尾よく変更
したか否かを判定し、変更したと判定した場合は、メモリ内データ構造および持
続的データベースを更新する。ファイルの割当てサイズをそれまでのオーナへの
割当て量枠から減算し、新たなオーナへの割当て量枠に加算する。セット情報(名称変更) ファイル名の付け替えは割当て量枠の変更を生じ得る。ファイルは一つのディ
レクトリからもう一つのディレクトリに名称変更でき、その結果そのファイルの
あるディレクトリに適用される割当て量枠が変わり得る。名称変更要求を代理受
信し、それを調べて割当て量枠への影響の有無を判定する。その要求が適用割当
て量枠を超過する場合は、その要求は「割当て量枠超過」状態で直ちに不首尾と
なる。その変更が許容できるものである場合は、ファイルシステムによる上記要
求の完結後に実行される後処理ルーチンを特定する。後処理ルーチンはこの名称
変更動作の影響を調べてメモリ内データ構造および後続データベースを適切に更
新する。名称変更ずみのファイル(ディレクトリ名称変更の場合は複数のファイ
ル)のサイズを適用解消される割当て量枠から減算して、それまで不適用で新た
に適用される割当て量枠に加算する。ファイルシステム制御(セット圧縮) ファイルの圧縮状態の変更はファイル割当てに影響する。圧縮ずみファイルを
圧縮解除すると、ユーザは割当て量枠を超えることになり得る。その場合はその
要求は「割当て量超過」状態となり直ちに不首尾に終わる。圧縮解除動作が許容
できるものである場合、またはファイルが圧縮状態にある場合は、ファイルシス
テムによる上記要求の完結後に実行される後処理ルーチンを特定する。後処理ル
ーチンはこの動作がディスクスペース割当てに及ぼす影響を判定してメモリ内デ
ータ構造および持続データベースを適切に更新する。クリーンアップ ユーザがファイルへの自分のハンドルを閉じると、Qaフィルタは「クリーン
アップ」要求を受ける。これによって、Qaフィルタはそのファイルについて不
要になったメモリ内データ構造を消去する。同期問題 ファイルサイズの変化を正確に検出するには、割当てに影響し得る動作をシリ
アル化しなければならない。シリアル化達成のためには、関連動作相互間を同期
させる必要がある。Windows NT ではこのオペレーションシステムが提供してい
る同期対象の一つであるカーネルイベントを用いてこの同期を達成している。カ
ーネルイベントは開いたファイルの各々と関連づけてある。カーネルイベントは
二つの状態、すなわちシグナリングあり、シグナリングなしの二つの状態の一方
の状態をとる。多重処理はカーネルイベントの手掛かりを持ち得る。ファイルサ
イズに影響を与え得る動作を検出すると、そのファイルについてのイベントはQ
aフィルタでクリアされ、すなわちシグナリングなしまたはロックされた状態に
リセットされる。イベントがロックされる一方、そのファイルについてのそれ以
外の動作は阻止され、そのイベントへのシグナリングを待つ。後処理ルーチンで
イベントをクリアした動作についてそのイベントにシグナリングを行い、実効的
に動作をシリアル化する。
なければならない。このシリアル化は、Windows NT オペレーティングシステム
の提供するもう一つの同期対象である単一カーネルミューテックスの利用により
行う。ミューテックスは共用資源への互いに排他的なアクセスを調整するのに有
用である(それ故の名称「ミューテックス」)。特定のミューテックスのオーナ
ーになり得るのは各時点でスレッド一つずつである。Qaフィルタ内部データ構
造にアクセスするには、スレッドは単一のカーネルミューテックを備えなければ
ならない。このミューテックスは、どのスレッドもそのオーナーになっていない
場合はシグナリングありの状態にあり、それらデータ構造へのアクセスを要する
スレッドにより、シグナリングなしまたはロック状態にリセットされる。ロック
状態にある場合は、それ以外のどのスレッドも上記データ構造にアクセスできず
、したがってアクセスがシリアル化される。再帰的動作の回避 Qaフィルタは初期スペース使用値の捕捉および所要データベース更新のため
にファイルシステムI/Oを行わなければならない。そのために再帰的要求がQ
aフィルタに供給され、資源がホールドされた場合にデッドロック状態になる。
この状態を回避するために割当て量枠データベースへのアクセスのスレッドのう
ちのスレッドid、およびファイルシステム走査を行うためのスレッドのうちの
スレッドidを記録し、それらスレッドからのI/OをQaフィルタで無視して
ファイルシステムドライバに直接に伝達する。I/Oのページング I/Oをページングしてもファイル割当てを変更することにはならず、無視さ
れる。I/Oのページングを無視すると、ドライバのコードの多くがページ可能
になり(ページ障害を招き、ページ障害の処理はシステムクラッシュの原因とな
る)、Qaフィルタを必要時だけ組み入れることによって性能を高める。初期ファイル割当ての検索 例えば上書きアクセスのためのファイルを開くなどの場合はQaフィルタはフ
ァイルを実際に開く前にそのファイルのサイズを検索しなければならない。通常
はQaフィルタは、ファイルへのユーザのハンドルを表すファイル対象に対して
I/Oすることによりファイルのサイズを把握する。しかし、ファイルを開く前
はファイル対象は有効なハンドルを表さない。この場合はQaフィルタは開いた
状態のユーザのファイルの処理の前にファイルを開いて、ファイルへの自分のハ
ンドルを得る。このハンドルを割当て情報の検索に用いる。そこでQaフィルタ
のハンドルは閉じられ、開いた状態のユーザの要求は前進可能になる。ディレクトリ名変更 割当て量枠を条件とするディレクトリ名変更は特別の問題を伴う。ディレクト
リ名を変更してそのディレクトリ該当の割当て量枠のセットを変化させる場合は
、そのディレクトリ全部およびその下位のサブディレクトリ全部の割当ての総合
計を適用割当て量枠の調節に用いなければならない。これは、一つのファイル(
ディレクトリ)がそれ以外の多数のファイルに影響する場合である。その種の動
作が起こると、Qaフィルタが「走査」、すなわち新たな割当て量枠を作る場合
に行うのと同じ動作を行ってディレクトリ全体への割当てサイズを算出する。こ
の総合計をそのディレクトリにこれまで該当していてこの段階で該当しなくなっ
た割当て量枠全部から減算し、そのディレクトリについての新たな割当て量枠す
べてに加算する。クリーンアップ後のフラッシング ユーザがファイルへのハンドルを閉じる際に、そのユーザが書き込んだデータ
がキャッシュにまだ残っている可能性がある。そのデータがディスクにコミット
されるとき、とくに圧縮ずみのファイルの場合、すなわちディスクへのデータの
書込みの際にファイル割当てが大幅に減らされる場合に、ファイルのサイズが変
わり得る。ユーザのハンドルが閉じられたあとはQaフィルタは実効的にファイ
ルを追跡できないので、正確な最終的ファイルサイズを得るにはこの時点でQa
フィルタがディスクへのデータ書込みを強制しなければならない。そのための動
作は、クリーンアップ動作生起時にユーザのハンドルを表すファイル対象にフラ
ッシュを発することによって行う。これによってファイルサイズが更新され、Q
aフィルタが割当て量枠算出のための正確な割当てを検索できるようになる。IROL問題 Windows NT I/O後処理ルーチンはDISPATCH_LEVEL(IROL2)以下で実
行する。多数のルーチンをDISPATCH_LEVELで呼び出すべきではないので、上記の
実行はQaフィルタには複雑さが生ずる。例えば、DISPATCH_LEVELでページ不首
尾を起こしまたはI/Oを行うと、システムクラッシュが生ずる。Qaフィルタ
はページ可能ファイルシステムデータ構造にアクセスしてファイルサイズの検索
および後処理時の割当て量枠データベースの更新のためのI/Oを行わなければ
ならないので、この発明の実施にはDISPATCH_LEVELを用いることなくこれらの動
作を行う方法が必要になる。
ENDING33以外の状態32に戻った場合、NT I/O完結ルーチンは後処理を
行わない。代わりにそのルーチンはSTATUS_SUCCESSに戻り、後処理がQaフィル
タのディスパッチルーチンにより行われる。これによって、PASSIVE_LEVEL(I
RQL0)での後処理実行が保証される。
は、Qaフィルタのディスパッチルーチンは既に戻っており、ユーザのI/Oは
非同期となり得る。すなわち、Qaフィルタが後処理機能のPASSAGE_LEVELにお
ける実行を保証するための上記以外の仕事を行う必要があることをこれは意味す
る。NT I/O完結ルーチンがPASSIVE_LEVELで実行している場合(判定は図3
のブロック34で行う)は、Qaフィルタの後処理ルーチン37が直接に呼び出
され(38)最高性能の発揮を可能にする。NT I/O完結ルーチンがDISPATC
H_LEVELで呼び出された場合(図3のブロック34で判定を行う)、Qaフィル
タの後処理ルーチンはPASSIVE_LEVELで実行する一群のワーカースレッドで待ち
行列35にかかり、I/O完結はSTATUS_MORE_PROCESSING_REQUIREDをI/Oマ
ネジャーに戻して(36)遅らされる。このワーカースレッドが後処理を完結す
ると、IoCompleteRequestを呼び出してI/Oを完了させる。
さらに詳細に示す。この付録は当業者に理解されるプログラム言語で上記態様の
詳細を述べたものである。
請求の範囲各請求項記載の真意と範囲を逸脱することなく変形を伴ってこの発明
を実施できることが認識されよう。 (付録)
Claims (8)
- 【請求項1】オペレーティングシステム用のフィルタドライバであって、 ディスクスペース割当て量枠、すなわち複数の割当て量枠パラメータとの関連
で定められる割当て量枠を定める手段と、 前記割当て量枠パラメータの各々との関連でディスクスペース利用状況を判定
する手段と、 前記ディスクスペース割当て量枠および前記ディスクスペース利用状況をファ
イル構造に蓄積する手段と、 ディスクI/Oを監視する手段と、 前記ディスクスペース利用状況に対する前記ディスクI/Oの影響、すなわち
前記ディスクスペース割当て量枠に関連づけた改訂ずみのディスクスペース利用
状況を見込みで算出する手段と、 前記改訂ずみのディスクスペース利用状況が前記ディスクスペース割当て量枠
のいずれかを超過した場合に前記ディスクI/Oを終わらせる手段と、 前記改訂ずみのディスクスペース利用状況が前記ディスクスペース割当て量枠
のいずれをも超過しない場合に前記ディスクI/Oの完結を反映するように前記
ファイル構造を更新する手段と を含むフィルタドライバ。 - 【請求項2】前記監視する手段が、 各々が名称つきのディスクファイルと関連づけられたディスクI/O動作を検
出する手段と、 前記名称つきのディスクファイルについて動作をシリアル化する手段と をさらに含む請求項1記載のフィルタドライバ。 - 【請求項3】前記シリアル化する手段が、 前記名称つきディスクファイルと関連づけられた同期対象をロックする手段で
あって、後続のディスクI/O動作を前記名称つきのディスクファイルにブロッ
クする作用をするロックする手段 をさらに含む請求項2記載のフィルタドライバ。 - 【請求項4】前記同期対象が Windows NT (登録商標)オペレーティングシ ステムの中のカーネルイベントである請求項3記載のフィルタドライバ。
- 【請求項5】前記複数の割当て量枠が一つ以上の所有権割当て量枠、すなわ
ち各々が特定のオーナーと関連したファイルにより使用中の前記ディスクスペー
スの最大値である所有権割当て量枠と、一つ以上のディレクトリ割当て量枠、す
なわち各々が特定のディレクトリと関連したファイルにより使用中の前記ディス
クスペースの最大値であるディレクトリ割当て量枠とを含む請求項1記載のフィ
ルタドライバ。 - 【請求項6】前記ファイル構造へのアクセスをシリアル化した請求項1記載
のフィルタドライバ。 - 【請求項7】前記監視する手段がI/Oページを無視する請求項1記載のフ
ィルタドライバ。 - 【請求項8】前記見込みで算出する手段が、 前記改訂ずみのディスクスペース利用状況を判定する手段と、 前記改訂ずみのディスクスペース利用状況を前記ディスクスペース割当て量枠
と比較する手段と をさらに含む請求項1記載のフィルタドライバ。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/205,066 US6092163A (en) | 1998-12-04 | 1998-12-04 | Pageable filter driver for prospective implementation of disk space quotas |
US09/205,066 | 1998-12-04 | ||
PCT/US1999/028595 WO2000034869A1 (en) | 1998-12-04 | 1999-12-03 | Pageable filter driver for prospective implementation of disk space quotas |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2002532778A true JP2002532778A (ja) | 2002-10-02 |
Family
ID=22760645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000587260A Pending JP2002532778A (ja) | 1998-12-04 | 1999-12-03 | ディスクスペース割当て量枠の見込み実働化のためのページ可能フィルタドライバ |
Country Status (6)
Country | Link |
---|---|
US (3) | US6092163A (ja) |
EP (1) | EP1155368B1 (ja) |
JP (1) | JP2002532778A (ja) |
AU (1) | AU2037900A (ja) |
DE (1) | DE1155368T1 (ja) |
WO (1) | WO2000034869A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016038700A1 (ja) * | 2014-09-10 | 2016-03-17 | 株式会社日立製作所 | ファイルサーバ装置、方法、及び、計算機システム |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9361243B2 (en) | 1998-07-31 | 2016-06-07 | Kom Networks Inc. | Method and system for providing restricted access to a storage medium |
US6317875B1 (en) * | 1999-01-15 | 2001-11-13 | Intel Corporation | Application execution performance through disk block relocation |
US6546482B1 (en) * | 1999-05-07 | 2003-04-08 | Advanced Micro Devices, Inc. | Invalid configuration detection resource |
US6898617B2 (en) * | 1999-11-18 | 2005-05-24 | International Business Machines Corporation | Method, system and program products for managing thread pools of a computing environment to avoid deadlock situations by dynamically altering eligible thread pools |
JP4049525B2 (ja) * | 2000-08-16 | 2008-02-20 | 富士通株式会社 | 分散処理システム |
US7032222B1 (en) * | 2000-10-13 | 2006-04-18 | Hewlett-Packard Development Company, L.P. | Method and system for determining resource allocation to users by granting request based on user associated different limits and resource limit |
US7571445B2 (en) * | 2001-11-29 | 2009-08-04 | Dell Products L.P. | System and method for dynamic device driver support in an open source operating system |
US7325017B2 (en) * | 2003-09-24 | 2008-01-29 | Swsoft Holdings, Ltd. | Method of implementation of data storage quota |
US7444317B2 (en) * | 2002-06-28 | 2008-10-28 | Microsoft Corporation | System and method for managing file names for file system filter drivers |
US7536418B2 (en) * | 2003-01-10 | 2009-05-19 | At&T Intellectual Property Ii, Lp | Preload library for transparent file transformation |
JP4400126B2 (ja) * | 2003-08-08 | 2010-01-20 | 株式会社日立製作所 | 仮想一元化ネットワークストレージシステムにおける一元的なディスク使用量制御方法 |
US7958097B1 (en) | 2003-09-24 | 2011-06-07 | Parallels Holdings, Ltd. | Method and system for implementation of data storage quota |
US20050108305A1 (en) * | 2003-11-17 | 2005-05-19 | Applera Corporation | Management of storage space for an embedded database in a software system |
US7945914B2 (en) * | 2003-12-10 | 2011-05-17 | X1 Technologies, Inc. | Methods and systems for performing operations in response to detecting a computer idle condition |
US20060117048A1 (en) * | 2004-11-30 | 2006-06-01 | Microsoft Corporation | Method and system of synchronizing filter metadata after a restore |
FR2888651B1 (fr) * | 2005-07-13 | 2009-06-05 | Neoware Systems Inc | Procede pour la prise en compte automatique et le stockage persistant de parametres de personnalisation a priori volatils |
US7877424B2 (en) * | 2007-03-30 | 2011-01-25 | Microsoft Corporation | Quota enforcement with transacted file systems |
US20090276470A1 (en) * | 2008-05-05 | 2009-11-05 | Vijayarajan Rajesh | Data Processing System And Method |
WO2012035574A1 (en) * | 2010-09-14 | 2012-03-22 | Hitachi, Ltd. | Server apparatus and control method of the same for migrating file based on user quota and file quota |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5491807A (en) * | 1989-03-20 | 1996-02-13 | International Business Machines Corporation | System and method for worm volume management of new and updated data files using variable threshold block addresses |
JP3453757B2 (ja) * | 1989-05-29 | 2003-10-06 | 株式会社日立製作所 | バッファ管理方法 |
US5247660A (en) * | 1989-07-13 | 1993-09-21 | Filetek, Inc. | Method of virtual memory storage allocation with dynamic adjustment |
US5421011A (en) * | 1991-12-20 | 1995-05-30 | International Business Machines Corporation | Method and system for access and accounting control in a data processing system by using a single resource account for a user or a group of users |
US6256642B1 (en) * | 1992-01-29 | 2001-07-03 | Microsoft Corporation | Method and system for file system management using a flash-erasable, programmable, read-only memory |
CN1157653C (zh) * | 1994-04-22 | 2004-07-14 | 索尼公司 | 数据传输和接收装置及方法和数据记录和再现装置及方法 |
US5574952A (en) * | 1994-05-11 | 1996-11-12 | International Business Machines Corporation | Data storage system and method for operating a disk controller including allocating disk space for compressed data |
US5644751A (en) * | 1994-10-03 | 1997-07-01 | International Business Machines Corporation | Distributed file system (DFS) cache management based on file access characteristics |
US5701473A (en) * | 1995-03-17 | 1997-12-23 | Unisys Corporation | System for optimally storing a data file for enhanced query processing |
US5671420A (en) * | 1995-06-28 | 1997-09-23 | Canon Information Systems, Inc. | Distribution diskette utility |
US5734909A (en) * | 1995-09-01 | 1998-03-31 | International Business Machines Corporation | Method for controlling the locking and unlocking of system resources in a shared resource distributed computing environment |
US5713013A (en) * | 1996-01-25 | 1998-01-27 | Apple Computer, Inc. | System for establishing and enforcing maximum size of directory by preventing the size of the directory from exceeding the set quota size of the directory |
US6192471B1 (en) * | 1996-01-26 | 2001-02-20 | Dell Usa, Lp | Operating system independent system for running utility programs in a defined environment |
US5819047A (en) * | 1996-08-30 | 1998-10-06 | At&T Corp | Method for controlling resource usage by network identities |
US6000009A (en) * | 1997-05-06 | 1999-12-07 | International Business Machines Corporation | Method and apparatus for allocation of disk memory space for compressed data records |
US5956734A (en) * | 1997-07-11 | 1999-09-21 | International Business Machines Corporation | Parallel file system with a quota check utility |
US6032216A (en) * | 1997-07-11 | 2000-02-29 | International Business Machines Corporation | Parallel file system with method using tokens for locking modes |
US5946686A (en) * | 1997-07-11 | 1999-08-31 | International Business Machines Corporation | Parallel file system and method with quota allocation |
-
1998
- 1998-12-04 US US09/205,066 patent/US6092163A/en not_active Ceased
-
1999
- 1999-12-03 EP EP99964066.7A patent/EP1155368B1/en not_active Expired - Lifetime
- 1999-12-03 WO PCT/US1999/028595 patent/WO2000034869A1/en active Application Filing
- 1999-12-03 DE DE1155368T patent/DE1155368T1/de active Pending
- 1999-12-03 AU AU20379/00A patent/AU2037900A/en not_active Abandoned
- 1999-12-03 JP JP2000587260A patent/JP2002532778A/ja active Pending
-
2002
- 2002-07-02 US US10/186,419 patent/USRE39201E1/en not_active Expired - Lifetime
-
2004
- 2004-02-05 US US10/771,539 patent/USRE41072E1/en not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016038700A1 (ja) * | 2014-09-10 | 2016-03-17 | 株式会社日立製作所 | ファイルサーバ装置、方法、及び、計算機システム |
JPWO2016038700A1 (ja) * | 2014-09-10 | 2017-04-27 | 株式会社日立製作所 | ファイルサーバ装置、方法、及び、計算機システム |
Also Published As
Publication number | Publication date |
---|---|
AU2037900A (en) | 2000-06-26 |
USRE41072E1 (en) | 2010-01-05 |
US6092163A (en) | 2000-07-18 |
EP1155368A4 (en) | 2004-09-08 |
EP1155368A1 (en) | 2001-11-21 |
DE1155368T1 (de) | 2002-04-18 |
USRE39201E1 (en) | 2006-07-18 |
WO2000034869A1 (en) | 2000-06-15 |
EP1155368B1 (en) | 2017-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002532778A (ja) | ディスクスペース割当て量枠の見込み実働化のためのページ可能フィルタドライバ | |
KR101343212B1 (ko) | 온라인 저장 볼륨 축소를 위한 컴퓨터 판독가능 매체,시스템, 및 방법 | |
US5414839A (en) | Hybrid lock escalation and de-escalation protocols | |
US7594068B2 (en) | System and method for persistent RAM disk | |
KR100381503B1 (ko) | 논리적으로-분할된 컴퓨터에서 동시 사용 라이센스 관리 | |
US5655119A (en) | Method for moving an open file being accessed by at least one user | |
EP1751659B1 (en) | Thread synchronization methods and apparatus for managed run-time environments | |
US6240413B1 (en) | Fine-grained consistency mechanism for optimistic concurrency control using lock groups | |
US7430553B2 (en) | Managing states with delta pager | |
US5574903A (en) | Method and apparatus for handling request regarding information stored in a file system | |
US20040221120A1 (en) | Defensive heap memory management | |
US20070136385A1 (en) | Defensive Heap Memory Management | |
US20080098156A1 (en) | Operating system and data protection | |
CA2445576A1 (en) | Filter driver for identifying disk files by analysis of content | |
US5715447A (en) | Method of and an apparatus for shortening a lock period of a shared buffer | |
JPH10312299A (ja) | データベース情報をアクセスする方法 | |
US20030097536A1 (en) | System and method for physical memory allocation in advanced operating systems | |
US6076126A (en) | Software locking mechanism for locking shared resources in a data processing system | |
US20060085482A1 (en) | File loading synchronization | |
JP3107094B2 (ja) | 共用バッファのロック期間短縮処理方法及び装置 | |
KR100292643B1 (ko) | 바이트 범위 api 로킹(byte rangeati locking)을 갖춘병렬 파일 시스템 및 방법 | |
US8688662B2 (en) | Copy on access to locked objects | |
JP3061001B2 (ja) | 計算機システムにおけるメモリ割り当て方式 | |
JP2933011B2 (ja) | ファイルの排他制御システム | |
Eckardt | Eine skalierbare satzweise Sperr-Methode für parallelen Dateizugriff |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060901 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090617 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090916 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20091007 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100113 |