01Linux驅動模組02
阿新 • • 發佈:2020-12-06
二、核心中的資訊列印-->printk
1、列印級別
vim include/linux/printk.h +9
核心中的列印級別,8個級別,(0~7)級,數值越小,級別越高
(0~2)3個級別不常用,
(3~7)4個級別會常用,
vim ./include/linux/printk.h +9 09 #define KERN_EMERG "<0>" 系統(不使用) /* system is unusable */ 10 #define KERN_ALERT "<1>" 立即執行(作業系統使用) /* action must be taken immediately */ 11 #define KERN_CRIT "<2>" 緊急情況(臨界條件) /* critical conditions */ 12 #define KERN_ERR "<3>" 錯誤 /* error conditions */ 13 #define KERN_WARNING "<4>" 警告 /* warning conditions */ 14 #define KERN_NOTICE "<5>" 提示 /* normal but significant condition */ 15 #define KERN_INFO "<6>" 正常列印 /* informational */ 16 #define KERN_DEBUG "<7>" 除錯 /* debug-level messages */
printk(列印級別 "這裡和printf的使用方法一樣");
printk("這裡和printf的使用方法一樣"); --->不填列印級別即為預設級別
2、終端顯示
終端顯示的時候有一個終端級別,只有列印級別大於終端級別的時候,訊息才會在終端上顯示
檢視終端級別 cat /proc/sys/kernel/printk 結果為 4 4 1 7
4 4 1 7
終端級別 預設訊息級別 終端最高級別 終端最低級別
ubuntu終端預設被修改為不能顯示核心列印資訊
需要進入虛擬終端中進行測試上述效果
進入虛擬終端 Ctrl + Alt + [F1~F6]
退出虛擬終端 Ctrl + Alt + [F7]
Ubuntu上修改printk檔案的預設訊息級別
su root 進入 root 使用者模式
echo 4 3 1 7 > /proc/sys/kernel/printk
exit 退出 root 使用者模式
以後在使用的時候就是修改後的訊息級別
開發板上修改printk檔案的預設訊息級別
vim ~/rootfs/etc/init.d/rcS rcS--->核心啟動後執行的第一個指令碼 新增內容 echo 4 3 1 7 > /proc/sys/kernel/printk
dmesg命令
dmesg 將Ubuntu開機到目錄的時間點所有的資訊顯示出來
dmesg -c 清除列印資訊,先回顯後清除
dmesg -C 清除列印資訊,直接清除,不回顯
如果不會主動回顯,可以使用dmesg命令檢視