ARM技术论坛
直播中

嵌入式小能手

2年用户 1511经验值
擅长:嵌入式技术
私信 关注
[经验]

飞凌嵌入式ElfBoard ELF 1板卡-文件系统常用命令之内核模块管理工具

一、lsmod 列出已经安装的模块
root@ELF1:~# lsmod
Module                  Size  Used by
ov5640_camera          19320   0
8723du                1303801   0
rtk_btusb                38040   0
每行有四列:
Module-第一列显示模块的名称;
Size-第二列显示以字节为单位的模块大小;
Used-by第三列显示一个数字,表示当前有几个模块依赖于该模块;
by-第四列表示依赖模块的内容;
要确定是否已加载特定模块,请使用grep过滤输出。例如,要查找是否已加载8723bu模块,请运行:
root@ELF1:~# lsmod | grep 8723du
8723du               1303801  0
二、modprobe 自动安装模块
modprobe可载入指定的个别模块,或是载入一组相依的模块。modprobe会根据depmod所产生的相依关系,决定要载入哪些模块。若在载入过程中发生错误,在modprobe会卸载整组的模块。insmod与modprobe都是用于安装内核模块,差别是: modprobe 能够处理模块的依赖问题。比方你要加载a模块,但是a要求系统先载入b模块时,直接用insmod 加载可能会出现错误。modprobe 会自动加载b才加载a处理这些依赖关系。
例如,在《01-0 ELF1、ELF1S开发板_快速启动手册_V1》3.1.2.2章节中,我们使用的是insmod加载三个.ko文件实现g_mass_storage功能:
root@ELF1:~# insmod /lib/modules/$(uname -r)/kernel/drivers/usb/gadget/libcomposite.ko
root@ELF1:~# insmod /lib/modules/$(uname -r)/kernel/drivers/usb/gadget/function/usb_f_mass_storage.ko
root@ELF1:~# insmod /lib/modules/$(uname -r)/kernel/drivers/usb/gadget/legacy/g_mass_storage.ko  file=/dev/mmcblk0 removable=1
如果使用modprobe则只需要加载一个模块即可:
root@ELF1:~# modprobe g_mass_storage  file=/dev/mmcblk0 removable=1
三、insmod 手动安装模块
insmod需要指定模块的绝对路径,和modprobe不同,insmod并且不会把载入模块的依赖模块也载入进来。
四、modinfo 查看某个模块的详细信息
root@ELF1:~# modinfo 8723du
五、rmmod 卸载某个已经安装的模块
例如,卸载8723du模块:
root@ELF1:~# rmmod 8723du
六、top用于实时显示process的动态
root@ELF1:~# top


更多回帖

发帖
×
20
完善资料,
赚取积分