Linux的.ko文件 与.ko文件的区别

.ko文件

Linux下加载驱动模块都是.o文件, .o文件也就是object文件。

.ko文件是kernel object文件,与.o的区别在于其多了一些sections,比如.modinfo。

.modinfo section是由kernel source里的modpost工具生成的,包括MODULE_AUTHOR, MODULE_DESCRIPTION, MODULE_LICENSE, device ID table以及模块依赖关系等等。

depmod工具根据.modinfo section生成modules.dep, modules.*map等文件,以便modprobe更方便的加载模块。

.so 文件动态链接库文件,相当于 win下的 .dll 文件。

.ko 文件内核模块文件,是内核加载的某个模块,一般是驱动程序

在2.4内核中,生成的就是.o文件。2.6的kernel对内核模块的管理做了一些扩展,生成的就是.ko文件。

你可能感兴趣的