-
大小: 62.28MB文件類(lèi)型: .zip金幣: 2下載: 1 次發(fā)布日期: 2022-09-12
- 語(yǔ)言: 其他
- 標(biāo)簽: WRK??驅(qū)動(dòng)編程??
資源簡(jiǎn)介
windows驅(qū)動(dòng)編程的參考,里面是WRK的源碼,可直接用VS打開(kāi),編程中有不懂的可以直接看
代碼片段和文件信息
/*++
Copyright?(c)?Microsoft?Corporation.?All?rights?reserved.?
You?may?only?use?this?code?if?you?agree?to?the?terms?of?the?Windows?Research?Kernel?Source?Code?License?agreement?(see?License.txt).
If?you?do?not?agree?to?the?terms?do?not?use?the?code.
Module?Name:
????cachedat.c
Abstract:
????This?module?implements?the?Memory?Management?based?cache?management
????routines?for?the?common?Cache?subsystem.
--*/
#include?“cc.h“
//
//??Global?SharedCacheMap?lists?and?resource?to?synchronize?access?to?it.
//
//
//?extern?KSPIN_LOCK?CcMasterSpinLock;
LIST_ENTRY?CcCleanSharedCacheMapList;
SHARED_CACHE_MAP_LIST_CURSOR?CcDirtySharedCacheMapList;
SHARED_CACHE_MAP_LIST_CURSOR?CcLazyWriterCursor;
//
//??Worker?thread?structures:
//
//??????A?spinlock?to?synchronize?all?three?lists.
//??????A?count?of?the?number?of?worker?threads?Cc?will?use
//??????A?count?of?the?number?of?worker?threads?Cc?in?use
//??????A?listhead?for?preinitialized?executive?work?items?for?Cc?use.
//??????A?listhead?for?an?express?queue?of?WORK_QUEUE_ENTRYs
//??????A?listhead?for?a?regular?queue?of?WORK_QUEUE_ENTRYs
//??????A?listhead?for?a?post-tick?queue?of?WORK_QUEUE_ENTRYs
//
//??????A?flag?indicating?if?we?are?throttling?the?queue?to?a?single?thread
//
//?extern?KSPIN_LOCK?CcWorkQueueSpinLock;
ULONG?CcNumberWorkerThreads?=?0;
ULONG?CcNumberActiveWorkerThreads?=?0;
LIST_ENTRY?CcIdleWorkerThreadList;
LIST_ENTRY?CcExpressWorkQueue;
LIST_ENTRY?CcRegularWorkQueue;
LIST_ENTRY?CcPostTickWorkQueue;
BOOLEAN?CcQueueThrottle?=?FALSE;
//
//??Store?the?current?idle?delay?and?target?time?to?clean?all.??We?must?calculate
//??the?idle?delay?in?terms?of?clock?ticks?for?the?lazy?writer?timeout.
//
ULONG?CcIdleDelayTick;
LARGE_INTEGER?CcNoDelay;
LARGE_INTEGER?CcFirstDelay?=?{(ULONG)-(3*LAZY_WRITER_IDLE_DELAY)?-1};
LARGE_INTEGER?CcIdleDelay?=?{(ULONG)-LAZY_WRITER_IDLE_DELAY?-1};
LARGE_INTEGER?CcCollisionDelay?=?{(ULONG)-LAZY_WRITER_COLLISION_DELAY?-1};
LARGE_INTEGER?CcTargetCleanDelay?=?{(ULONG)-(LONG)(LAZY_WRITER_IDLE_DELAY?*?(LAZY_WRITER_MAX_AGE_TARGET?+?1))?-1};
//
//??Spinlock?for?controlling?access?to?Vacb?and?related?global?structures
//??and?a?counter?indicating?how?many?Vcbs?are?active.
//
//?extern?KSPIN_LOCK?CcVacbSpinLock;
ULONG_PTR?CcNumberVacbs;
//
//??Pointer?to?the?global?Vacb?vector.
//
PVACB?CcVacbs;
PVACB?CcBeyondVacbs;
LIST_ENTRY?CcVacbLru;
LIST_ENTRY?CcVacbFreeList;
ULONG?CcMaxVacbLevelsSeen?=?1;
ULONG?CcVacbLevelEntries?=?0;
PVACB?*CcVacbLevelFreeList?=?NULL;
ULONG?CcVacbLevelWithBcbsEntries?=?0;
PVACB?*CcVacbLevelWithBcbsFreeList?=?NULL;
//
//??Deferred?write?list?and?respective?Thresholds
//
extern?ALIGNED_SPINLOCK?CcDeferredWriteSpinLock;
LIST_ENTRY?CcDeferredWrites;
ULONG?CcDirtyPageThreshold;
ULONG?CcDirtyPageTarget;
ULONG?CcPagesYetToWrite;
ULONG?CcPagesWrittenLastTime?=?0;
ULONG?CcDirtyPagesLastScan?=?0;
ULONG?CcAvailablePagesThreshold?=?100;
ULONG?Cc
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????目錄???????????0??2018-12-14?12:01??wrk-v1.2\
?????目錄???????????0??2013-10-12?11:51??wrk-v1.2\amd64\
?????目錄???????????0??2013-10-09?19:19??wrk-v1.2\ba
?????目錄???????????0??2013-10-09?19:19??wrk-v1.2\ba
?????文件????????3477??2007-01-25?03:54??wrk-v1.2\ba
?????目錄???????????0??2013-10-09?19:19??wrk-v1.2\ba
?????目錄???????????0??2013-10-12?11:07??wrk-v1.2\ba
?????目錄???????????0??2018-10-24?11:47??wrk-v1.2\ba
?????文件???????69364??2013-10-12?11:02??wrk-v1.2\ba
?????目錄???????????0??2013-10-12?11:11??wrk-v1.2\ba
?????文件???????44540??2013-10-12?11:11??wrk-v1.2\ba
?????文件?????2253824??2013-10-12?11:11??wrk-v1.2\ba
?????文件??????260412??2013-10-12?11:11??wrk-v1.2\ba
?????文件??????396104??2013-10-12?11:11??wrk-v1.2\ba
?????文件?????1011937??2013-10-12?11:11??wrk-v1.2\ba
?????文件?????7080960??2013-10-12?11:11??wrk-v1.2\ba
?????文件????????2526??2007-01-25?03:11??wrk-v1.2\ba
?????文件????????2670??2007-01-25?03:11??wrk-v1.2\ba
?????目錄???????????0??2013-10-12?11:02??wrk-v1.2\ba
?????文件??????237656??2013-10-12?11:01??wrk-v1.2\ba
?????文件?????1073264??2013-10-12?11:01??wrk-v1.2\ba
?????文件???????68884??2013-10-12?11:01??wrk-v1.2\ba
?????文件??????610100??2013-10-12?11:01??wrk-v1.2\ba
?????文件??????336770??2013-10-12?11:01??wrk-v1.2\ba
?????文件???????54994??2013-10-12?11:01??wrk-v1.2\ba
?????文件???????35920??2013-10-12?11:01??wrk-v1.2\ba
?????文件???????23842??2013-10-12?11:01??wrk-v1.2\ba
?????文件??????575780??2013-10-12?11:01??wrk-v1.2\ba
?????文件??????813222??2013-10-12?11:01??wrk-v1.2\ba
?????文件??????153594??2013-10-12?11:01??wrk-v1.2\ba
?????文件?????1728896??2013-10-12?11:01??wrk-v1.2\ba
............此處省略1861個(gè)文件信息
評(píng)論
共有 條評(píng)論