/sys/kernel/debug及debugfs


# cat /etc/fstab 
proc            /proc                   proc    defaults                0       0
tmpfs           /tmp                    tmpfs   defaults                0       0
sysfs           /sys                    sysfs   defaults                0       0
tmpfs           /dev                    tmpfs   defaults                0       0
var             /dev                    tmpfs   defaults                0       0
ramfs           /dev                    ramfs   defaults                0       0
debugfs         /sys/kernel/debug       debugfs defaults                0       0
  • 來源
想實現一個功能,將關心的數據映射到用戶空間,發現 proc 和 sys 已經做了這件事,但是目的不同,
proc 是爲了反映系統及進程的狀態信息
sysfs 是用於linux設備驅動模型
而 debugfs 的目的是將調試信息映射到用戶空間

所以單獨做了一個文件系統,一般掛載到 /sys/kernel/debug 下面,當然你也可以掛載到/debug 下面。

debugfs 在內核空間的實現及 api 和 sysfs 是不一樣的

/sys/kernel 下面都是 內核可調參數

其實debug 文件系統和 sys proc文件系統一樣,都是內存文件系統

  • debugfs 與調試信息
哪些調試信息:
tracing : 動態跟蹤技術被映射到用戶空間,就放到了 /sys/kernel/debug/tracing 目錄

調試信息的動作:
	選擇調試信息
	開關調試信息
	記錄調試信息
	分析調試信息
  • debugfs 目錄
/sys/kernel/debug # ls
bdi                 kprobes             suspend_stats
clk                 memblock            tracing
dynamic_debug       mmc0                ubi
extfrag             pm_qos              ubifs
fault_around_bytes  regmap              usb
gpio                regulator           virtio-ports
hid                 sleep_time          wakeup_sources

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章