关于IRQL

thro3389 2008-02-17 09:39:16
系统内存堆可跟用户堆不一样啊,它表现为系统地址空间的两个所谓的内存池。

◎ 不分页池--不分页池不会分页到交换文件(swap file),自然也不需要分页回来。它们总是老老实实在物理内存里活动,在你想访问它们的时候总能找到它们(任何IRQL等级),并且不会出现分页错误(废话,不分页如果还出现分页错误,就太没有天理了。)这也正是它的优点啊,任何访问都不会出现页面错误!页面错误可是往往导致系统瘫掉的哦(当IRQL >= DISPATCH_LEVEL)!
◎ 分页池--顾名思义,就是可以分页(分入和分出)的了。你只能使用(IRQL < DISPATCH_LEVEL)的内存。

为什么当IRQL >= DISPATCH_LEVEL以下的IRQL可以访问分页内存 有没有具体的资料。.谢谢
这个我觉得有点含糊
...全文
577 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
swb986 2009-01-04
  • 打赏
  • 举报
回复
嗯,解释的很好啊,明白了一些了
thro3389 2008-02-18
  • 打赏
  • 举报
回复
谢谢了 大概懂了。.谢谢楼上的兄弟。嘿嘿
cnzdgs 2008-02-17
  • 打赏
  • 举报
回复
手中没有资料,口头解释一下吧。
分页内存是不用的时候可以保存到分页文件中的内存。但要使用时必须映射到物理内存上(否则就不叫内存了,CPU没法直接访问硬盘),只要分页内存映射到物理内存上,不管IRQL是多少就都可以访问了。通过锁定内存操作可以让系统把分页内存一直保持在物理内存上,这样程序就可以大胆使用了,不必考虑IRQL。

21,597

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧