FAST_IO_DISPATCH 構造体 (wdm.h)
高速 I/O 処理のためにファイル システム ドライバーまたはファイル システム フィルター ドライバー (レガシ) が提供するコールバック ルーチンのセットが含まれています。
構文
typedef struct _FAST_IO_DISPATCH {
ULONG SizeOfFastIoDispatch;
PFAST_IO_CHECK_IF_POSSIBLE FastIoCheckIfPossible;
PFAST_IO_READ FastIoRead;
PFAST_IO_WRITE FastIoWrite;
PFAST_IO_QUERY_BASIC_INFO FastIoQueryBasicInfo;
PFAST_IO_QUERY_STANDARD_INFO FastIoQueryStandardInfo;
PFAST_IO_LOCK FastIoLock;
PFAST_IO_UNLOCK_SINGLE FastIoUnlockSingle;
PFAST_IO_UNLOCK_ALL FastIoUnlockAll;
PFAST_IO_UNLOCK_ALL_BY_KEY FastIoUnlockAllByKey;
PFAST_IO_DEVICE_CONTROL FastIoDeviceControl;
PFAST_IO_ACQUIRE_FILE AcquireFileForNtCreateSection;
PFAST_IO_RELEASE_FILE ReleaseFileForNtCreateSection;
PFAST_IO_DETACH_DEVICE FastIoDetachDevice;
PFAST_IO_QUERY_NETWORK_OPEN_INFO FastIoQueryNetworkOpenInfo;
PFAST_IO_ACQUIRE_FOR_MOD_WRITE AcquireForModWrite;
PFAST_IO_MDL_READ MdlRead;
PFAST_IO_MDL_READ_COMPLETE MdlReadComplete;
PFAST_IO_PREPARE_MDL_WRITE PrepareMdlWrite;
PFAST_IO_MDL_WRITE_COMPLETE MdlWriteComplete;
PFAST_IO_READ_COMPRESSED FastIoReadCompressed;
PFAST_IO_WRITE_COMPRESSED FastIoWriteCompressed;
PFAST_IO_MDL_READ_COMPLETE_COMPRESSED MdlReadCompleteCompressed;
PFAST_IO_MDL_WRITE_COMPLETE_COMPRESSED MdlWriteCompleteCompressed;
PFAST_IO_QUERY_OPEN FastIoQueryOpen;
PFAST_IO_RELEASE_FOR_MOD_WRITE ReleaseForModWrite;
PFAST_IO_ACQUIRE_FOR_CCFLUSH AcquireForCcFlush;
PFAST_IO_RELEASE_FOR_CCFLUSH ReleaseForCcFlush;
} FAST_IO_DISPATCH, *PFAST_IO_DISPATCH;
メンバー
SizeOfFastIoDispatch
sizeof(FAST_IO_DISPATCH) に設定します。
FastIoCheckIfPossible
読み取り操作または書き込み操作で高速 I/O が可能かどうかを確認するコールバック ルーチンへのポインター。
FastIoRead
IRP の読み取りパスをバイパスして高速キャッシュ読み取りを行うコールバック ルーチンへのポインター。 キャッシュされたファイル オブジェクトのコピー読み取りを実行するために使用されます。
FastIoWrite
IRP 書き込みパスをバイパスして高速キャッシュ書き込みを行うコールバック ルーチンへのポインター。 キャッシュされたファイル オブジェクトのコピー書き込みを実行するために使用されます。
FastIoQueryBasicInfo
基本的なファイル情報の高速クエリのためのコールバック ルーチンへのポインター。
FastIoQueryStandardInfo
標準ファイル情報の高速クエリのためのコールバック ルーチンへのポインター。
FastIoLock
ファイル オブジェクトに対して高速ロックを実行するためのコールバック ルーチンへのポインター。
FastIoUnlockSingle
ファイル オブジェクトに対して 1 つのロックの高速リリースを実行するためのコールバック ルーチンへのポインター。
FastIoUnlockAll
ファイル オブジェクトに保持されているすべてのロックの高速リリースを実行するためのコールバック ルーチンへのポインター。
FastIoUnlockAllByKey
キーによってグループ化されたすべてのロックの高速リリースを実行するためのコールバック ルーチンへのポインター。
FastIoDeviceControl
高速なデバイス制御処理のためのコールバック ルーチンへのポインター。
AcquireFileForNtCreateSection
ファイルを排他的に取得するためにメモリ マネージャーによって使用されるコールバック ルーチンへのポインター。
ReleaseFileForNtCreateSection
以前に取得したファイルを解放するためにメモリ マネージャーによって使用されるコールバック ルーチンへのポインター。
FastIoDetachDevice
削除されるデバイス オブジェクトから現在のデバイス オブジェクトをデタッチするために呼び出されるコールバック ルーチンへのポインター。
FastIoQueryNetworkOpenInfo
ネットワーク ファイル情報の高速クエリのためのコールバック ルーチンへのポインター。
AcquireForModWrite
変更されたページ ライターが取得する必要があるファイル システム リソースを決定し、可能であればそれを取得するコールバック ルーチンへのポインター。
MdlRead
IRP の読み取りパスをバイパスして、高速キャッシュされた MDL 読み取りを行うコールバック ルーチンへのポインター。 キャッシュされたファイル オブジェクトのコピー読み取りを実行するために使用されます。
MdlReadComplete
MDL 読み取りの高速完了を実行するコールバック ルーチンへのポインター。
PrepareMdlWrite
IRP 書き込みパスをバイパスして、高速キャッシュされた MDL 書き込みを行うコールバック ルーチンへのポインター。 キャッシュされたファイル オブジェクトのコピー書き込みを実行するために使用されます。
MdlWriteComplete
MDL 書き込みの高速完了を実行するコールバック ルーチンへのポインター。
FastIoReadCompressed
ファイルからのデータの高速圧縮読み取りを実行するコールバック ルーチンへのポインター。
FastIoWriteCompressed
ファイルへのデータの高速圧縮書き込みを実行するコールバック ルーチンへのポインター。
MdlReadCompleteCompressed
ファイルからのデータの高速な MDL 圧縮読み取りを完了するコールバック ルーチンへのポインター。
MdlWriteCompleteCompressed
ファイルへのデータの高速な MDL 圧縮書き込みを完了するコールバック ルーチンへのポインター。
FastIoQueryOpen
パス ベースのクエリ用に高速オープンを実装するコールバック ルーチンへのポインター。
ReleaseForModWrite
このルーチンは、変更されたページ書き込み用に以前に取得したファイル システム リソースを解放します。
AcquireForCcFlush
キャッシュ フラッシュの前にファイル システム リソースを取得するコールバック ルーチンへのポインター。
ReleaseForCcFlush
キャッシュ フラッシュ用に以前に取得したファイル システム リソースを解放するコールバック ルーチンへのポインター。
要件
要件 | 値 |
---|---|
Header | wdm.h |