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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

上一篇:HTML5 Canvas中绘制椭圆的几种方法


下一篇:美团外卖Android Crash治理之路