问题标签 [kernel-mode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1344 浏览

windows - 来自微过滤器驱动程序的 USB 存储设备序列号(来自 USB 设备描述符)

我想使用此处描述的技术从微过滤器文件系统驱动程序内部提取 USB 存储设备序列号,在 InstanceSetup 回调中,唯一的区别是我在内核模式下执行此操作。
我用:

枚举可能的接口(示例结果):

我想通过 IOCTL_STORAGE_GET_DEVICE_NUMBER 找到其中哪一个是我的卷的接口。

我尝试了 ZwCreateFile 和 ZwDeviceIoControlFile 但 ZwCreateFile 返回一个 STATUS_OBJECT_NAME_INVALID。

如何将 IOCTLS 发送到这些接口?在用户模式下一切正常,但在内核模式下却失败了!

0 投票
2 回答
528 浏览

linux-kernel - 编译 Linux 内核模式程序时出错

我希望访问我的 ARM Cortex-A8 板上的一些寄存器,这些寄存器默认处于不可访问状态。Ubuntu 9.10 在此板上运行。因此,要访问它们,我必须先依次更改 1 个其他寄存器设置(允许访问寄存器)。要更改此 Allow-access-register,我发现我必须仅在内核模式下进行,而不是在用户模式下进行。

所以,我参考了如何在内核模式下编程,我得到了这个精彩的教程。我写了这个小小的hello world程序和一个 make 文件。请注意,我仍在我的 x86 桌面(Ubutnu 10.04)上运行此程序,而不是在我的 ARM 处理器上运行。直到我对内核级编程感到困惑。

我得到这些错误。这里出了什么问题?

帮助!


我在 i.MX515 板上遇到的错误


我得到的错误


程序


生成文件

0 投票
1 回答
2202 浏览

privilege - 特权指令,添加寄存器值?

我完成了操作系统研究生课程的作业。我得到了一个很好的分数,我只错过了一个小问题。它询问哪些是特权指令,哪些不是。我回答正确,除了一个:将一个寄存器值添加到另一个

我回答说这是特权,但显然不是!怎么会这样?

我认为用户通过使用系统调用与寄存器/内存进行交互,这在某种意义上从用户模式系统调用变为内核模式例程。因此,将一个寄存器值添加到另一个寄存器值可以由非特权用户调用,但最终内核正在做这项工作并且处于内核特权模式。因此它是特权?用户不能自己做。我错了吗?为什么?!

  • 谢谢!
0 投票
1 回答
230 浏览

.net - 是否可以使用 WCF 与 Windows 内核模式软件进行通信?

WCF 支持一些互操作性绑定。这些绑定中的任何一个是否允许与内核模式 sw 通信?

Local SystemAFAIK 内核模式 sw 可以在安全上下文中打开命名管道。那些命名管道可以与 WCF 互操作吗?

0 投票
3 回答
3908 浏览

code-signing - 内核模式代码签名

我做了一个驱动程序,现在我需要签名。它以内核模式运行。

根据我在 Microsoft 的内核模式代码签名演练中阅读的内容,我必须从商业CA购买软件发布者证书。在该文档中,他们说要查看最后,然后按照此链接获取我可以从中购买该证书的 CA 列表。我发现这个链接非常令人困惑,因为我无法确切知道我需要购买什么证书。我需要对驱动程序进行签名,以便它将安装在 64 位 Windows 系统上。非常欢迎直接链接(我想从 GlobalSign 购买)。

是这里的 Microsoft Authenticode

0 投票
2 回答
8166 浏览

windows - NtCreateProcess 和 ZwCreateProcess 有什么区别?

NtCreateProcess和 和有什么不一样ZwCreateProcess?在ntdll.dll中,两者都NtCreateProcess指向ZwCreateProcess完全相同的地址

0 投票
4 回答
17269 浏览

linux-kernel - linux内核中的函数调用者

有没有办法在linux内核中获取函数调用者?我知道__ func __返回正在执行的函数名。我正在寻找名为“ __ func __ ”的函数

0 投票
3 回答
4352 浏览

windows - Windows XP:我的程序是否在内核模式下运行?

我目前正在了解 Windows 操作系统运行的不同模式(内核模式与用户模式)、设备驱动程序、它们各自的优缺点以及总体上的计算机安全性。

我想创建一个实际示例,说明在内核模式下运行的故障设备驱动程序会对系统造成什么影响,例如破坏用于关键操作系统进程的内存。

  • 如何直接在内核模式而不是用户模式下执行我的代码?
  • 我是否必须编写一个虚拟设备驱动程序并安装它才能做到这一点?

  • 在哪里可以阅读有关 Windows 中内核和用户模式的更多信息?

我知道这样做的危险,并将在仅运行 Windows XP 的虚拟机上进行所有实验

0 投票
3 回答
2181 浏览

windows - 如何在 Windows 中调试内核驱动程序崩溃?

我编写了一个内核驱动程序,它连接到一个进程并隐藏一个文件夹。该驱动程序运行良好,直到我连接了外部硬盘。

此时,我的操作系统(Windows XP 或 Server 2003)因蓝屏死机 (BSOD) 而崩溃。

什么可能导致此崩溃,我该如何修改我的驱动程序来解决它?

0 投票
1 回答
3102 浏览

windows - 什么是内核模式软件?

我正在考虑签署我制作的驱动程序。许多 Microsoft 文档都提到了“内核模式软件”。那是什么?它在很多地方都提到过,但似乎在任何地方都没有定义。我如何知道我的驱动程序是否是内核模式软件?我的驱动程序是 Silicon Labs VCP 驱动程序的定制版本。谢谢。