23#define TAG_CACHE_DATA 'DcaC'
24#define TAG_CACHE_BLOCK 'BcaC'
struct CACHE_DRIVE * PCACHE_DRIVE
BOOLEAN CacheForceDiskSectorsIntoCache(UCHAR DiskNumber, ULONGLONG StartSector, ULONG SectorCount)
struct CACHE_BLOCK * PCACHE_BLOCK
VOID CacheInternalCheckCacheSizeLimits(PCACHE_DRIVE CacheDrive)
VOID CacheInvalidateCacheData(VOID)
BOOLEAN CacheReadDiskSectors(UCHAR DiskNumber, ULONGLONG StartSector, ULONG SectorCount, PVOID Buffer)
PCACHE_BLOCK CacheInternalFindBlock(PCACHE_DRIVE CacheDrive, ULONG BlockNumber)
CACHE_DRIVE CacheManagerDrive
BOOLEAN CacheInternalFreeBlock(PCACHE_DRIVE CacheDrive)
VOID CacheInternalDumpBlockList(PCACHE_DRIVE CacheDrive)
PCACHE_BLOCK CacheInternalGetBlockPointer(PCACHE_DRIVE CacheDrive, ULONG BlockNumber)
BOOLEAN CacheManagerInitialized
BOOLEAN CacheInitializeDrive(UCHAR DriveNumber)
PCACHE_BLOCK CacheInternalAddBlockToCache(PCACHE_DRIVE CacheDrive, ULONG BlockNumber)
BOOLEAN CacheReleaseMemory(ULONG MinimumAmountToRelease)
VOID CacheInternalOptimizeBlockList(PCACHE_DRIVE CacheDrive, PCACHE_BLOCK CacheBlock)
LIST_ENTRY CacheBlockHead