windows内核缓存代码解析

VOID
CcInitializeVacbs(
)
{
    	SIZE_T VacbBytes;
    	PVACB NextVacb;
	//	根据全局信息 计算缓存  即除以256KB 
	//	 初始化缓存信息参数 挂入队列 等待使用  
	CcNumberVacbs = (MmSizeOfSystemCacheInPages >> (VACB_OFFSET_SHIFT - PAGE_SHIFT)) - 2;
	VacbBytes = CcNumberVacbs * sizeof(VACB);    
	CcVacbs = (PVACB) ExAllocatePoolWithTag( NonPagedPool, VacbBytes, 'aVcC' );    
	if (CcVacbs != NULL) 
	{
        		CcBeyondVacbs = (PVACB)((PCHAR)CcVacbs + VacbBytes);
        		RtlZeroMemory( CcVacbs, VacbBytes );        
		InitializeListHead( &CcVacbLru );
        		InitializeListHead( &CcVacbFreeList );        
		for (NextVacb = CcVacbs; NextVacb < CcBeyondVacbs; NextVacb++) 
		{            
		InsertTailList( &CcVacbFreeList, &NextVacb->LruList );
        		}
   	}
}


 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值