ファイル システムは、CcInitializeCacheMap ルーチンを呼び出してファイルをキャッシュします。
構文
void CcInitializeCacheMap(
[in] PFILE_OBJECT FileObject,
[in] PCC_FILE_SIZES FileSizes,
[in] BOOLEAN PinAccess,
[in] PCACHE_MANAGER_CALLBACKS Callbacks,
[in] PVOID LazyWriteContext
);
パラメーター
[in] FileObject
ファイルのファイル オブジェクトへのポインター。
[in] FileSizes
typedef struct _CC_FILE_SIZES {
LARGE_INTEGER AllocationSize;
LARGE_INTEGER FileSize;
LARGE_INTEGER ValidDataLength;
} CC_FILE_SIZES, *PCC_FILE_SIZES;
メンバー | 意味 |
---|---|
AllocationSize | ファイルの新しいセクション オブジェクト サイズ。 現在のセクション サイズ以下の場合は無視されます。 |
FileSize | ファイルの新しいファイル サイズ。 |
ValidDataLength | ファイルの新しい有効なデータ長。 |
[in] PinAccess
CcPin
[in] Callbacks
非ページ プールから割り当てられた構造体へのポインター。呼び出し元が提供する先読みコールバック ルーチンと書き込み側コールバック ルーチンのエントリ ポイントを含みます。この構造体とそのメンバーは、次のように定義されます。
typedef struct _CACHE_MANAGER_CALLBACKS {
PACQUIRE_FOR_LAZY_WRITE AcquireForLazyWrite;
PRELEASE_FROM_LAZY_WRITE ReleaseFromLazyWrite;
PACQUIRE_FOR_READ_AHEAD AcquireForReadAhead;
PRELEASE_FROM_READ_AHEAD ReleaseFromReadAhead;
} CACHE_MANAGER_CALLBACKS, *PCACHE_MANAGER_CALLBACKS;
typedef
BOOLEAN (*PACQUIRE_FOR_LAZY_WRITE) (
IN PVOID Context,
IN BOOLEAN Wait
);
typedef
VOID (*PRELEASE_FROM_LAZY_WRITE) (
IN PVOID Context
);
typedef
BOOLEAN (*PACQUIRE_FOR_READ_AHEAD) (
IN PVOID Context,
IN BOOLEAN Wait
);
typedef
VOID (*PRELEASE_FROM_READ_AHEAD) (
IN PVOID Context
);
[in] LazyWriteContext
Callbacksで指定されたコールバック ルーチンに渡されるコンテキスト情報へのポインター。
戻り値
何一つ
備考
ccInitializeCacheMap
エラーが発生した場合、ccInitializeCacheMap
ファイル システムは、ファイルがデータ キャッシュを無効にして作成されていない限り、ファイルで他のキャッシュ マネージャー ルーチンを使用する前に、ファイルをキャッシュするために ccInitializeCacheMap
CcInitializeCacheMap
ファイルを閉じるときに、ファイル キャッシュをサポートするすべてのファイル システムは、ファイルがキャッシュされているかどうかに関係なく、そのファイル CcUninitializeCacheMap を呼び出す必要があります。 ファイルがキャッシュを無効にして作成された場合でも、ファイル システムは ccUninitializeCacheMap を呼び出す必要があります。
CcIsFileCached マクロは、ファイルをキャッシュするかどうかを決定します。
BOOLEAN CcIsFileCached(
[in] PFILE_OBJECT FileObject
);
パラメーター
FileObject[in] [in]
ファイルのファイル オブジェクトへのポインター。
戻り値
ファイル
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の |
万国 |
ヘッダー | ntifs.h (Ntifs.h を含む) |
ライブラリ | NtosKrnl.lib |
DLL | NtosKrnl.exe |
関連項目
CcSetAdditionalCacheAttributes
ccUninitializeCacheMap の