【问题标题】:When we execute insmod <modulename.ko> then insmod process runs in which context userspace context or system mode context当我们执行 insmod <modulename.ko> 然后 insmod 进程运行在哪个上下文用户空间上下文或系统模式上下文
【发布时间】:2015-07-13 05:37:35
【问题描述】:

我是 Linux 内核开发的新手。我有一些问题。

当我们执行 insmod 时,insmod 会在哪个上下文中处理 un,用户空间还是系统模式?

如何在用户空间 C 程序中使用当前宏,或者我们是否有替代方案来遍历内核 task_struct 结构?

【问题讨论】:

  • 您好,仅供参考,以后请将问题帖子限制为一个问题,这样可以使问题和答案在将来更清晰,更有用。

标签: linux-kernel linux-device-driver


【解决方案1】:

insmod 本身是一个用户空间程序或指向用户空间程序的符号链接(在 Fedora 21 上,insmod 是指向 /usr/bin/kmod 的符号链接)。它像任何其他应用程序一样作为用户空间应用程序运行。 insmod 的特别之处在于它进行了init_module 系统调用。 init_module 是真正将模块加载到内核中。

关于您的第二个问题,current 宏仅在内核中定义。您可以在此SO post 找到更多详细信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-25
    • 1970-01-01
    • 2012-02-24
    • 1970-01-01
    • 1970-01-01
    • 2018-04-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多