mynameyxb
驱动牛犊
驱动牛犊
  • 注册日期2005-01-18
  • 最后登录2005-01-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1248回复:5

ExAllocatePool(新手提问)

楼主#
更多 发布于:2005-01-19 15:43
用ExAllocatePool在分页池中分配的内存在用ExFreePool释放前,是否一直有效,能否被别的内核程序占用?
能否被页出?页出后能否继续访问,访问是否正确?
怎样锁定已分配的内存(不是整页锁定)?
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
沙发#
发布于:2005-01-19 16:44
用ExAllocatePool在分页池中分配的内存在用ExFreePool释放前,是否一直有效,能否被别的内核程序占用?
当然一直有效,不然还用你来释放,别的内核程序当然也可以使用你的内存,只要他们知道地址,不过分配的话不会重复,那是内存管理器的问题.

能否被页出?页出后能否继续访问,访问是否正确?
看你分配时候指定的属性,不过我观察即使是不可分页的内存,有时候也不一定都在内存里.

怎样锁定已分配的内存(不是整页锁定)?
只能整页锁定,至少在X86处理器上必须如此,其他的处理器不清楚.....
锁定已分配的内存,DDK里有专门的函数,当然你也可以自己操纵页表.
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
mynameyxb
驱动牛犊
驱动牛犊
  • 注册日期2005-01-18
  • 最后登录2005-01-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-01-19 16:56
别的内核程序能修改我已分配的内存的数据吗?
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
地板#
发布于:2005-01-20 10:20
当然可以,核心地址是共享的.
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2005-01-23 11:01
用ExAllocatePool在分页池中分配的内存在用ExFreePool释放前,是否一直有效,能否被别的内核程序占用?
当然一直有效,不然还用你来释放,别的内核程序当然也可以使用你的内存,只要他们知道地址,不过分配的话不会重复,那是内存管理器的问题.

能否被页出?页出后能否继续访问,访问是否正确?
看你分配时候指定的属性,不过我观察即使是不可分页的内存,有时候也不一定都在内存里.

怎样锁定已分配的内存(不是整页锁定)?
只能整页锁定,至少在X86处理器上必须如此,其他的处理器不清楚.....
锁定已分配的内存,DDK里有专门的函数,当然你也可以自己操纵页表.
 

讲的很清楚,建议新手好好理解理解
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2005-01-23 11:02
当然可以,核心地址是共享的.

那确实 :)
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
游客

返回顶部