编写第一个内核模块 - LKMs 第一部分
在嵌入式 Linux 或内核开发工作中,经常会在控制台设备上进行操作。设置 /proc/sys/kernel/printk 伪文件的第一个整数值为 8,能确保所有 printk 实例直接显示在控制台,使其表现得像常规的 printf 一样。以下是 root 用户进行设置的方法:
# echo "8 4 1 7" > /proc/sys/kernel/printk
在开发和测试期间,这非常方便。可以在树莓派的启动脚本中添加以下内容:
[ $(id -u) -eq 0 ] && echo "8 4 1 7" > /proc/sys/kernel/printk
以 root 身份运行时,所有 printk 实例将直接显示在 minicom 控制台,就像 printf 一样。
向树莓派控制台写入输出
下面是第二个内核模块,会发出九个 printk 实例,分别对应八个日志级别,还有一个通过 pr_devel() 宏(实际上是 KERN_DEBUG 日志级别)发出。以下是相关代码:
超级会员免费看
订阅专栏 解锁全文
3374

被折叠的 条评论
为什么被折叠?



