字符型设备驱动程序-first-printf以及点亮LED灯(二)

本文介绍了Linux内核模块的基本操作命令,包括lsmod、insmod、modinfo、rmmod等,并讲解了如何确保模块与内核版本一致,以及如何使用printk进行调试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 

编译这几个函数之前要学一下:Linux 的几个操作命令。

  学习地址:http://edu.51cto.com/lesson/id-101824.html

重要的命令 有4个 :分别是 1、lsmod,2、insmod 3、modinfo 4、rmmod.

1、lsmod (list module) 将模块列表显示,打印出当前内核中已经安装的模块列表,下面试试效果

    

2、insmod  ( install module ) 向内核中安装模块,使用方式 insmod xxx.ko

3、modinfo ( module information ) 模块信息自带信息,使用方式modinfo xxxx.ko

 分别 包括路径,使用权限,版本号(纯数字),依赖关系(与其他模块关系),字符串的版本号(详细的版本信息)

 

4、rmmod ( remove module )向内核中移除模块,使用方式 rmmod xxx

5、不常用的 两个命令 (modprobe,depmod)

 

6、Ubuntu 会 拦截 printk 函数打印的数据,因此要使用 命令 dmesg 来查看。

7、内核版本信息和模块版本信息得一直才能安装,否则不能安装。。。(vermagic)

8、如何保证模块vermagic 和内核的 一致性,即 用 该 内核编译就好了。

9、内核中不允许使用 printf,因为会占用大量的时间,影响内核的性能,尽量使用printk函数。

  

 

10、内核 shell 控制台 有一个 优先级 别,可以设定是否打印 printk 打印的数据到控制台,方便调试。 查看和修改 方法如下:

  1、查看:cat /proc/sys/kernel/printk

  2、修改:echo 7 > /proc/sys/kernel/printk

  

 

转载于:https://www.cnblogs.com/suozhang/p/6876638.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值