0

为什么 Windows DDK 示例不处理被分页?它们是不可分页的吗?

4

3 回答 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 回答