4.1 一个最简单的Linux内核模块
命令输入:
.ko文件:kernel object文件,内核模块;该文件的意义就是把内核的一些功能移动到内核外边, 需要的时候插入内核,不需要时卸载。
insmod ./hello.ko 加载模块;
rmmod hello 卸载模块;
printk中的8种日志级别:
#define KERN_EMERG "<0>" /* system is unusable */
#define KERN_ALERT "<1>" /* action must be taken immediately */
#define KERN_CRIT "<2>" /* critical conditions */
#define KERN_ERR "<3>" /* error conditions */
#define KERN_WARNING "<4>" /* warning conditions */
#define KERN_NOTICE "<5>" /* normal but significant */
#define KERN_INFO "<6>" /* informational */
#define KERN_DEBUG "<7>" /* debug-level messages */
在另一个终端显示输出:
while true; do sudo dmesg -c; sleep 1; done 或者while true ; do sudo cat /proc/kmsg; sleep 1; done

浙公网安备 33010602011771号