亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux中proc目錄的詳細介紹

發布時間:2021-08-02 22:13:00 來源:億速云 閱讀:227 作者:chen 欄目:系統運維

這篇文章主要講解了“Linux中proc目錄的詳細介紹”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Linux中proc目錄的詳細介紹”吧!

1.什么是proc

觀察LINUX F8的/etc/rc.d/sysinit文件可以發現,在該腳本的21行出現如下語句:

代碼如下:


if [ ! -e/proc/mounts ]; then  
   mount -n -t proc /proc /proc  
   mount -n -t sysfs /sys /sys >/dev/null 2>&1  
fi


這斷話的意思是,如果/proc/mounts文件存在,便掛載proc類型的文件系統的proc設備到proc目錄下,掛載sysfs類型的文件系統的sys設備到/sys目錄下。那么,究竟proc文件系統是什么東西呢?

proc文件系統是一個偽文件系統,它只存在內存當中,而不占用外存空間。它以文件系統的方式為訪問系統內核數據的操作提供接口。用戶和應用程序可以通過proc得到系統的信息,并可以改變內核的某些參數。由于系統的信息,如進程,是動態改變的,所以用戶或應用程序讀取proc文件時,proc文件系統是動態從系統內核讀出所需信息并提交的。
 
2. proc的主要目錄和文件

它的主要目錄和文件結構如下:(/proc/)

代碼如下:


apm             # 高級電源管理信息  
bus             # 總線配置信息(USB的配置也記錄在此)  
cmdline         # 內核命令行  
Cpuinfo         # 關于Cpu信息  
Devices         # 可以用到的設備(塊設備/字符設備)  
Dma             # 使用的DMA通道  
Filesystems     # 支持的文件系統  
Interrupts      # 中斷的使用  
Ioports         # I/O端口的使用  
Kcore           # 內核核心印象  
Kmsg            # 內核消息  
Ksyms           # 內核符號表  
Loadavg         # 負載均衡  
Locks           # 內核鎖  
Meminfo         # 內存信息  
Misc            # 雜項  
Modules         # 加載模塊列表(可以想成是驅動程序)  
Mounts          # 加載的文件系統  
Partitions      # 系統識別的分區表  
PCI             # 在PCI總線上,每臺設備的詳細情況(可以使用lspci來查看)  
Rtc             # 實時時鐘  
Slabinfo Slab   # 池信息  
Stat            # 全面統計狀態表  
Swaps           # 對換空間的利用情況  
Version         # 內核版本  
Uptime          # 系統正常運行時間  

除了以上的目錄外,主機上正在運行的各進程的PID號也以目錄名的形式存在于/proc目錄下。其中cmdline文件和environ文件值得一提,前者表示啟動這個進程的命令串;后者是這個進程的環境變量的內容。它們均可以使用cat命令進行查看。

如圖1所示,2088號進程是由startx命令產生的,即當前的Xwindows模式。

Linux中proc目錄的詳細介紹
圖1

3. proc目錄下的cmdline是什么
在/etc/rc.d/sysinit腳本的306行出現了如下代碼:

代碼如下:


    cmdline=$(cat /proc/cmdline)


意思是把/proc/cmdline的內容賦予cmdline變量。而前面說過/proc/cmdline的內容指的是內核命令行。我們先不去糾纏什么是內核命令行,來看看它的內容。如圖2所示。

Linux中proc目錄的詳細介紹


圖2

可以發現,它的內容是一段一段離散的字段。很顯然這些字符是由內核產生的,它們表示了系統運行環境的一些基本信息,它們在系統完全啟動之前就已經確定。這些字段就像標志位一樣,因此后續的啟動,就可以根據這些“標志位”來進行相關的啟動操作。

那么它是由誰產生的呢?粗糙的講,可以說是由grub生成的。Grub(Grand Unified Bootloader)引導加載程序,它是計算機讀取完BIOS信息后,從第一個啟動設備的MBR中被讀取的內容。沒有它,核心根本就不能被加載到系統上。Grub的功能有很多,我們暫時不需要深入的了解。其中的kernel語句,告訴了磁盤的MBR到什么地方去讀取系統內核以及輔助系統啟動的initrd(InitalRAM Disk)印象文件在什么地方。同時可以加入一些啟動參數,如是否打開RHGB,是否強制掃描...而這些字段,都通通的反映在了內核虛擬文件系統/proc里面的cmdline里面。

因此,當我們需要在系統啟動的時候判斷某些服務是否被激活時,當然要看看/proc/cmdline里面的內容啦。

感謝各位的閱讀,以上就是“Linux中proc目錄的詳細介紹”的內容了,經過本文的學習后,相信大家對Linux中proc目錄的詳細介紹這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

芮城县| 饶河县| 黄平县| 汪清县| 九龙城区| 琼海市| 青浦区| 西宁市| 漳浦县| 那曲县| 应城市| 和政县| 崇义县| 安岳县| 甘德县| 静乐县| 邹城市| 庆城县| 永靖县| 晴隆县| 丰顺县| 白玉县| 清远市| 汉川市| 卢湾区| 乌兰浩特市| 宿迁市| 贡山| 邛崃市| 青阳县| 石柱| 西昌市| 建湖县| 古田县| 吴旗县| 开封县| 台北市| 洪洞县| 平乐县| 彭阳县| 博野县|