linux內核打印數據到串口控制台,printk數據不打印問題


                  linux內核打印數據到串口控制台問題

原文來源:http://i.cnblogs.com/EditPosts.aspx?opt=1

1、查看當前控制台的打印級別
 cat /proc/sys/kernel/printk
 4    4    1    7
 其中第一個“4”表示內核打印函數printk的打印級別,只有級別比他高的信息才能在控制台上打印出來,既 0-3級別的信息

2、修改打印
 echo "新的打印級別  4    1    7" >/proc/sys/kernel/printk

3、不夠打印級別的信息會被寫到日志中可通過dmesg 命令來查看

4、printk的打印級別

#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 condition */
#define KERN_INFO          "<6>" /* informational */
#define KERN_DEBUG         "<7>" /* debug-level messages */

5、printk函數的使用

  printk(打印級別"要打印的信息")這里需要注意打印級別和需要打印的數據中中間沒有逗號

       打印級別  既上面定義的幾個宏

KERN_EMERG 
  用於突發性事件的消息,通常在系統崩潰之前報告此類消息。 
KERN_ALERT
  在需要立即操作的情況下使用此消息。 
KERN_CRIT 
  用於臨界條件下,通常遇到嚴重的硬軟件錯誤時使用此消息。 
KERN_ERR
  用於報告錯誤條件;設備驅動經常使用KERN_ERR報告硬件難題。 
KERN_WARNING
  是關於問題狀況的警告,一般這些狀況不會引起系統的嚴重問題。 
KERN_NOTICE 
  該級別較為普通,但仍然值得注意。許多與安全性相關的情況會在這個級別被報告。 
KERN_INFO
  信息消息。許多驅動程序在啟動時刻用它來輸出獲得的硬件信息。

KERN_DEBUG 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM