2008-03-09 14:11:42 +00:00
|
|
|
/*
|
2005-01-26 13:58:37 +00:00
|
|
|
* COPYRIGHT: See COPYING in the top level directory
|
1998-10-05 04:00:59 +00:00
|
|
|
* PROJECT: ReactOS kernel
|
|
|
|
* FILE: ntoskrnl/cc/cacheman.c
|
|
|
|
* PURPOSE: Cache manager
|
2005-01-26 13:58:37 +00:00
|
|
|
*
|
|
|
|
* PROGRAMMERS: David Welch (welch@cwcom.net)
|
1998-10-05 04:00:59 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
/* INCLUDES *****************************************************************/
|
|
|
|
|
2004-08-15 16:39:12 +00:00
|
|
|
#include <ntoskrnl.h>
|
2005-11-26 11:02:13 +00:00
|
|
|
#define NDEBUG
|
2008-08-30 16:31:06 +00:00
|
|
|
#include <debug.h>
|
1998-10-05 04:00:59 +00:00
|
|
|
|
2007-05-09 00:29:38 +00:00
|
|
|
PFSN_PREFETCHER_GLOBALS CcPfGlobals;
|
|
|
|
|
1998-10-05 04:00:59 +00:00
|
|
|
/* FUNCTIONS *****************************************************************/
|
|
|
|
|
2007-05-09 00:29:38 +00:00
|
|
|
VOID
|
|
|
|
NTAPI
|
2010-11-02 16:29:06 +00:00
|
|
|
INIT_FUNCTION
|
2007-05-09 00:29:38 +00:00
|
|
|
CcPfInitializePrefetcher(VOID)
|
|
|
|
{
|
|
|
|
/* Notify debugger */
|
|
|
|
DbgPrintEx(DPFLTR_PREFETCHER_ID,
|
|
|
|
DPFLTR_TRACE_LEVEL,
|
|
|
|
"CCPF: InitializePrefetecher()\n");
|
|
|
|
|
|
|
|
/* Setup the Prefetcher Data */
|
|
|
|
InitializeListHead(&CcPfGlobals.ActiveTraces);
|
|
|
|
InitializeListHead(&CcPfGlobals.CompletedTraces);
|
|
|
|
ExInitializeFastMutex(&CcPfGlobals.CompletedTracesLock);
|
|
|
|
|
|
|
|
/* FIXME: Setup the rest of the prefetecher */
|
|
|
|
}
|
|
|
|
|
2007-01-25 17:51:45 +00:00
|
|
|
BOOLEAN
|
2005-09-14 01:44:19 +00:00
|
|
|
NTAPI
|
2010-11-02 16:29:06 +00:00
|
|
|
INIT_FUNCTION
|
2006-10-08 04:05:27 +00:00
|
|
|
CcInitializeCacheManager(VOID)
|
1998-10-05 04:00:59 +00:00
|
|
|
{
|
2007-01-25 17:51:45 +00:00
|
|
|
CcInitView();
|
|
|
|
return TRUE;
|
1998-10-05 04:00:59 +00:00
|
|
|
}
|
2004-06-21 04:11:44 +00:00
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LARGE_INTEGER
|
2008-11-29 20:47:48 +00:00
|
|
|
NTAPI
|
2004-06-21 04:11:44 +00:00
|
|
|
CcGetFlushedValidData (
|
|
|
|
IN PSECTION_OBJECT_POINTERS SectionObjectPointer,
|
|
|
|
IN BOOLEAN BcbListHeld
|
|
|
|
)
|
|
|
|
{
|
2005-05-09 01:38:29 +00:00
|
|
|
LARGE_INTEGER i;
|
2004-08-21 13:21:44 +00:00
|
|
|
|
2004-06-21 04:11:44 +00:00
|
|
|
UNIMPLEMENTED;
|
|
|
|
|
|
|
|
i.QuadPart = 0;
|
|
|
|
return i;
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
2005-01-01 01:51:05 +00:00
|
|
|
PVOID
|
2008-11-29 20:47:48 +00:00
|
|
|
NTAPI
|
2004-06-21 04:11:44 +00:00
|
|
|
CcRemapBcb (
|
|
|
|
IN PVOID Bcb
|
|
|
|
)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
2005-02-16 16:52:51 +00:00
|
|
|
|
|
|
|
return 0;
|
2004-06-21 04:11:44 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
VOID
|
2008-11-29 20:47:48 +00:00
|
|
|
NTAPI
|
2004-06-21 04:11:44 +00:00
|
|
|
CcScheduleReadAhead (
|
|
|
|
IN PFILE_OBJECT FileObject,
|
|
|
|
IN PLARGE_INTEGER FileOffset,
|
|
|
|
IN ULONG Length
|
|
|
|
)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
VOID
|
2008-11-29 20:47:48 +00:00
|
|
|
NTAPI
|
2004-06-21 04:11:44 +00:00
|
|
|
CcSetAdditionalCacheAttributes (
|
|
|
|
IN PFILE_OBJECT FileObject,
|
|
|
|
IN BOOLEAN DisableReadAhead,
|
|
|
|
IN BOOLEAN DisableWriteBehind
|
|
|
|
)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
VOID
|
2008-11-29 20:47:48 +00:00
|
|
|
NTAPI
|
2004-06-21 04:11:44 +00:00
|
|
|
CcSetBcbOwnerPointer (
|
|
|
|
IN PVOID Bcb,
|
|
|
|
IN PVOID Owner
|
|
|
|
)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
VOID
|
2008-11-29 20:47:48 +00:00
|
|
|
NTAPI
|
2004-06-21 04:11:44 +00:00
|
|
|
CcSetDirtyPageThreshold (
|
|
|
|
IN PFILE_OBJECT FileObject,
|
|
|
|
IN ULONG DirtyPageThreshold
|
|
|
|
)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
VOID
|
2008-11-29 20:47:48 +00:00
|
|
|
NTAPI
|
2004-06-21 04:11:44 +00:00
|
|
|
CcSetReadAheadGranularity (
|
|
|
|
IN PFILE_OBJECT FileObject,
|
|
|
|
IN ULONG Granularity
|
|
|
|
)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
}
|