我是天然呆,有两个问题。。。求大神们不吝赐教啊!
第一个问题:
Allocpag.c 第1040行: MiFreeAllExpansionNonPagedPool 中,
为什么每次执行完要 Index = -1; 重头开始检查在非换页内存池扩展区的闲块块呢?
第二个问题:
执行体内存池 look aside 快查表里面:
对大块分割,分配一部分,剩余部分再入空闲块:
Index = SplitEntry->BlockSize;
却插入&PoolDesc->ListHeads[Index - 1] 中,
为什么会是 index 减 1 呢?