为什么 Windows DDK 示例不处理被分页?它们是不可分页的吗?
问问题
1033 次
3 回答
1
可分页代码用#pragma code_seg("PAGE") 标记。这就是驱动程序不处理分页的原因。默认情况下,它们都是不可分页的。
于 2011-09-24T20:31:00.377 回答
0
不是专门针对 Windows 驱动程序,而只是针对一般的设备驱动程序:
没有大司机。
不要在内核模式下做那么多工作,当然也不要在高中断优先级下做那么多工作。只做这些级别所需的工作,然后将其余工作委托给在最低级别 (0) 运行的代码。
于 2011-09-24T20:15:40.583 回答
0
分页代码由 包装#pragma code_seg("PAGExxx")
,分页数据由#pragma data_seg("PAGExxx")
. 也可以使用#pragma alloc_text
. 从 WDK 8 开始,还可以对类进行分页declspec(allocate())
。还有一个 API 可以锁定和解锁内存中的页面,从而允许运行时控制。在此处查看更多信息:http: //social.msdn.microsoft.com/Forums/en-US/wdk/thread/ba75e766-6a8f-4fe8-9d03-b69be85655d9
于 2012-10-26T00:35:25.563 回答