Ali*_*her 3 64-bit winapi windows-10
我想使用 Windows用户模式调度程序 API,但我在互联网上找到的每个示例 C 或 C++ 都失败了。我总是得到 ERROR_NOT_SUPPORTED。
我的电脑在 x64 处理器中运行 Windows 10 Pro 64 位。我使用的是 VS2015,该应用程序是一个 x64 控制台应用程序。
值得注意的是,在我测试过的 4 个样本中,并非每次调用都失败
失败并显示 ERROR_NOT_SUPPORTED。这些是让事情顺利进行所必需的,但例如 CreateUmsCompletionList 或 GetUmsCompletionListEvent 则不然。
API 使用起来并不简单,但我很难相信它们都是错误的。
我已经调试了一些 EnterUmsSchedulingMode 内部发生的事情,似乎在 RtlpAttachThreadToUmsCompletionList 中调用 NtSetInformationThread 时出现问题,尽管我不太确定。
小智 5
如果您使用的是 Ivy Bridge 之前的处理器,UMS 将无法工作,因为在 x64 上创建 LDT 时存在潜在的安全问题。使用 Ivy Bridge 可以避免该问题,如果处理器无法访问 Ivy Bridge 功能,则 Windows 10(以及表面上的 Server 2016)更新只会禁用 UMS 功能。
更多信息在这里:http : //www.alex-ionescu.com/?p=340
| 归档时间: | 
 | 
| 查看次数: | 555 次 | 
| 最近记录: |