// ntifs.h
VOID CcScheduleReadAheadEx(
[in] PFILE_OBJECT FileObject,
[in] PLARGE_INTEGER FileOffset,
[in] ULONG Length,
[in] PETHREAD IoIssuerThread
);
View the official Windows Driver Kit DDI referenceNo description available.
The CcScheduleReadAheadEx routine performs read-ahead (also called "lazy read") on a cached file. The I/O byte count for the operation is charged to the issuing thread.
FileObject [in]Pointer to a file object for the file on which read-ahead is to be performed.
FileOffset [in]Pointer to a variable that specifies the starting byte offset within the cached file where the last read occurred.
Length [in]Length in bytes of the range that was last read.
IoIssuerThread [in]The thread issuing the read ahead request. For a file system with disk I/O accounting enabled, this is the thread the I/O is charged to. If IoIssuerThread is NULL, the I/O is charged to the current thread.
CcScheduleReadAheadEx should be called only when Length >= 256. Measurements have shown that calling CcScheduleReadAheadEx for smaller reads actually decreases performance.
CcScheduleReadAheadEx can only be called after a successful call to CcCopyRead, CcCopyReadEx, CcFastCopyRead, or CcMdlRead.
CcSetAdditionalCacheAttributes