日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

获取系统信息3——proc文件系统介绍和使用

發布時間:2023/12/20 windows 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 获取系统信息3——proc文件系统介绍和使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

以下內容源于朱有鵬《物聯網大講堂》課程的學習整理,如有侵權,請告知刪除。


一、proc文件系統介紹

1、操作系統級別的調試

  • 簡單程序,可以單步調試;(多線程不行,linux內核不行)
  • 復雜程序,可以printf、cout等打印信息調試;(輸出信息到控制臺)
  • 也可以框架體系日志記錄信息調試;(輸出信息到某個txt)
  • 但內核很復雜,存在調試困境;

2、proc虛擬文件系統的工作原理

(1)linux內核是一個非常龐大、非常復雜的一個單獨的程序,調試此程序是非常復雜的。

  • kernel這樣龐大的項目,添加或更改其中一個功能是非常麻煩的,因為該功能可能會影響其他功能。
  • 早期內核版本中盡管調試很麻煩,但是高手們還可以憑借個人超凡脫俗的能力去駕馭,但是到了2.4左右的版本時,難度已經非常大了。
  • 為了降低內核調試和學習的難度,內核開發者們在內核中添加了一些屬性專門用于調試內核,proc文件系統就是一個嘗試。

(2)proc文件系統的思路

  • 在內核中構建一個虛擬文件系統/proc;
  • 內核運行時,將內核中一些關鍵的數據結構,以文件的方式呈現在/proc目錄中的一些特定文件中;
  • 將不可見的內核中的數據結構,以可視化的方式呈現給內核的開發者。

(3)proc文件系統提供了一種調試內核的方法

  • 通過實時觀察/proc/xxx文件,獲取內核中特定數據結構的值;
  • 對比添加新功能的前后,判斷新功能產生的影響對與否。

(4)proc目錄下的文件,不是真實文件,而只是一個接口

  • 文件大小都是0,因為這些文件并不存在于硬盤中;
  • 當讀取這個文件時,內核并不是去硬盤上找這個文件,而是映射為內核內部的一個數據結構,把該數據結構讀取出來,并且格式化成字符串,返回;
  • 盡管我們看到的還是一個文件內容字符串,和普通文件一樣的,但是實際上我們知道這個內容是實時的從內核中數據結構來的,而不是硬盤中來的。
  • 這些文件都是只讀的,不能更改。

3、常用proc中的文件介紹

(1)/proc/cmdline,命令行參數

(2)/proc/cpuinfo

(3)/proc/devices 調試驅動的時候會用到

(4)/proc/interrupts



二、proc文件系統的使用

1、cat以手工查看,如“cat ? /proc/cmdline”;

2、程序中可以文件IO訪問;

3、在shell程序中用cat命令結合正則表達式來獲取并處理內核信息;

4、sys文件系統

(1)sys文件系統本質上和proc文件系統一樣

  • 都是虛擬文件系統,都在根目錄下有個目錄(一個是/proc目錄,另一個是/sys目錄)
  • 因此都不是硬盤中的文件,都是內核中的數據結構的可視化接口。

(2)不同的是/proc中的文件只能讀,但是/sys中的文件可以讀寫

  • 讀/sys中的文件就是獲取內核中數據結構的值,而寫入/sys中的文件就是設置內核中的數據結構的元素的值。

(3)歷史上剛開始先有/proc文件系統,人們希望通過這種技術來調試內核。

  • 實際做出來后確實很有用,所以很多內核開發者都去內核添加代碼,向/proc目錄中寫文件。
  • 剛開始的時候內核管理者對proc目錄的使用沒有統一規劃,后來的結果就是proc里面的東西又多又雜亂。

(4)后來proc中的內容缺乏統一規劃,于是添加了sys目錄

  • sys文件系統很好地進行規劃和約定,于是使用sys目錄時有了規矩。


總結

以上是生活随笔為你收集整理的获取系统信息3——proc文件系统介绍和使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。