转载:https://blog.csdn.net/qq_24118527/article/details/78569578
.ko文件
Linux下加载驱动模块都是.o文件, .o文件也就是object文件。
.ko文件是kernel object文件,与.o的区别在于其多了一些sections,比如.modinfo。
.modinfo
.modinfo section是由kernel source里的modpost工具生成的,包括:
-
MODULE_AUTHOR
-
MODULE_DESCRIPTION
-
device ID table
-
模块依赖关系。
depmod工具根据.modinfo section生成modules.dep, modules.*map等文件,以便modprobe更方便的加载模块。
小结
.so 文件是动态链接库文件,相当于 win下的 .dll 文件。
.ko 文件是内核模块文件,是内核加载的某个模块,一般是驱动程序。