首页
社区
课程
招聘
[求助]ExAllocatePool求助
发表于: 2022-4-18 21:40 8343

[求助]ExAllocatePool求助

2022-4-18 21:40
8343

在windows内核中,我看很多代码都用ExAllocatePool申请内存,但是MSDN上说说这个API在新系统中已经过时了,让我用ExAllocatePool2。
但是这个ExAllocatePool2,它的第三个参数到底是个啥?我看微软例子,就填了个abcd,这到底啥意思啊?我不太明白这个池标记是什么……

 

然后假如我原先的代码如下:
ULONG BufferSize = 0x10000;
void Buffer = ExAllocatePool(NonPagedPool, BufferSize);
我按照微软的改,是不是应该改成下面的?
ULONG BufferSize = 0x10000;
void
Buffer = ExAllocatePool2(POOL_FLAG_NON_PAGED, BufferSize, 'abcd');
NonPagedPool应该对应POOL_FLAG_NON_PAGED吧?我看它们都是非分页内存的意思……用非分页内存,代码执行完毕了立即释放,应该没问题吧?


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 4984
活跃值: (2896)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
第三个参数 就是一个唯一标识而已,区分内存块从哪个程序区分配出来的,为程序 调试 或 查找内存泄露源 指示方向
2022-4-19 00:42
0
雪    币: 8764
活跃值: (5240)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
就是给这块内存起个名字。
2022-4-19 09:29
0
雪    币: 6307
活跃值: (3837)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
sunsjw 就是给这块内存起个名字。
谢谢!
2022-4-19 22:12
0
雪    币: 6307
活跃值: (3837)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
谢谢!
2022-4-19 22:12
0
游客
登录 | 注册 方可回帖
返回
//