Zebonaut
似乎包含内核模块文件被称为.o
,至少这是我的身影看着像一个教程时,这一个。但是,在我的debian压缩框中,这些文件似乎称为.ko
。
它依赖于分布(或其verison)文件是否被称为.o
或.ko
,并且是他们或多或少相同,否则?
泰勒
我在这里找到以下答案:
简短的答案是.ko文件是与内核所需的一些内核自动生成的数据结构链接的目标文件。
.o文件是模块的目标文件-编译c文件的结果。然后,内核构建系统会自动创建另一个具有描述内核模块的数据结构的C文件(名为your_module_kmod.c),将该C文件编译为另一个目标文件,并将您的目标文件和它一起构建的目标文件链接在一起以创建.ko文件。
内核中负责加载内核模块的动态链接程序希望在.ko文件中找到内核放入kmod对象中的数据结构,并且如果没有它们,将无法加载内核模块。
同样从那个来源,引用tldp:直到2.4内核版本,它是“ .o”,从2.6开始,它是“ .ko”。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
编辑于
我来说两句