【问题标题】:Can anybody explain about following structure任何人都可以解释以下结构
【发布时间】:2012-12-31 07:30:13
【问题描述】:

以下结构在linux内核中有什么用?我需要知道它,因为我需要在这个结构中添加一个变量。

static const struct modversion_info ____versions[]

【问题讨论】:

    标签: c linux-kernel


    【解决方案1】:

    它包括模块引用的符号及其校验和,当插入模块时,会检查这些符号以确保为正在运行的内核编译模块。

    在 Ubnutu 上,kernel-headers 包包含这个文件,其中包含内核导出的所有符号及其校验和,如果你也编译了自己的内核,你应该能够找到这个文件

    usr/src/linux-headers-2.6.38-generic/Module.symvers
    

    请注意,我不确定您要做什么,但您不应该在模块中添加符号,当您编译模块时,会为您生成此结构。

    【讨论】:

    • 首先感谢您的回复以及如何计算函数的校验和?
    • 校验和计算通常在内核构建中“制作模块”时完成。我认为你需要澄清(很多?)更多关于你想要实现的目标。你不只是随意添加东西到这个结构中,它是“modprobe”或“insmod”的一部分来添加东西。
    • @MatsPetersson 如此真实,但我以为我只是回答了关于结构的部分,也添加了注释。
    • 感谢你们两位对这个结构的清晰说明。我已经澄清了,我不需要再修改了。
    • @linuxchip 欢迎您,如果这回答了您的问题,请接受。
    猜你喜欢
    • 1970-01-01
    • 2015-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-28
    • 1970-01-01
    • 2011-03-31
    • 1970-01-01
    相关资源
    最近更新 更多