在内核模式下运行dll

时间:2013-08-14 14:57:11

标签: c++ windows kernel usermode

我只是好奇:我有一个Windows dll用openGL做一些渲染/绘图工作,然后将结果返回给应用程序。

如果代码没有在用户模式下运行但在内核模式下会更快吗? (没有中断和更高的优先级)

1 个答案:

答案 0 :(得分:1)

在内核模式下运行不会获得更高的优先级,并且它不会消除中断。除非您提出要求,否则您在用户模式中也可以进行此操作。

您将面临的最大问题是内核模式下无法使用openGL。它是一个用户模式API,它可以说明一个设备驱动程序来实现它的一些逻辑,但很多逻辑完全是在用户模式下实现的。它不像每个openGL API都有一个系统调用。

即使你能克服这个问题(你不能),正如Erbureth提到的安全风险会很大,调试它会是一场噩梦(你曾经使用过内核模式调试器吗?)并安装它需要管理员特权。

总而言之,不,这是不可能的。