各类文件的区别与作用:
1、对于.so文件
.so文件是用户层的动态链接库,用于用户层的动态链接使用,内核态的代码同样不能直接访问。
2、对于.ko文件
.ko文件是内核态的动态链接库,用于内核态的动态链接使用,可以用于内核之间的模块相互调用。用户态的代码不可直接调用内核态的代码,但是可以通过其他方式进行通信。
3、对于.a文件
.a文件是用于静态链接时,使用的静态库。
4、对于.o文件
.o文件是目标文件,编译生成,.a文件就是由.o文件打包生成的。
lsmod
Linux命令:lsmod——显示已载入系统的模块
lsmod 其实就是list modules的缩写,即 列出所有模块.
功能说明:显示已载入系统的模块。
语法:lsmod
说明:执行lsmod指令,会列出所有已载入系统的模块。Linux操作系统的核心具有模块化的特性,因此在编译核心时,无需把全部的功能都放入核心。你可以将这些功能编译成一个个单独的模块,待需要时再分别载入。
功能说明:载入模块 install loadable kernel module
语法:insmod [-fkmpsvxX][-o <模块名称>][模块文件][符号名称 = 符号值]
insmod 加载模块,需要指定完整的路径和模块名字
insmod hello.ko