/proc 介紹
/proc是一種偽文件系統(tǒng)(也即虛擬文件系統(tǒng)),存儲(chǔ)的是當(dāng)前內(nèi)核運(yùn)行狀態(tài)的一系列特殊文件,用戶可以通過(guò)這些文件查看有關(guān)系統(tǒng)硬件及當(dāng)前正在運(yùn)行進(jìn)程的信息,甚至可以通過(guò)更改其中某些文件來(lái)改變內(nèi)核的運(yùn)行狀態(tài)。
簡(jiǎn)單來(lái)講,/proc目錄即保存在系統(tǒng)內(nèi)存中的信息。
/proc目錄中包含許多以數(shù)字命名的子目錄,這些數(shù)字表示系統(tǒng)當(dāng)前正在運(yùn)行進(jìn)程的進(jìn)程號(hào)(PID),里面包含對(duì)應(yīng)進(jìn)程相關(guān)的多個(gè)信息文件。
/proc/self 介紹
/proc/self表示當(dāng)前進(jìn)程目錄。前面說(shuō)了通過(guò)/proc/$pid/來(lái)獲取指定進(jìn)程的信息。如果某個(gè)進(jìn)程想要獲取當(dāng)前進(jìn)程的系統(tǒng)信息,就可以通過(guò)進(jìn)程的pid來(lái)訪問(wèn)/proc/$pid/目錄。但是這個(gè)方法還需要獲取進(jìn)程pid.為了更方便的獲取本進(jìn)程的信息,linux提供了/proc/self/目錄,這個(gè)目錄比較獨(dú)特,不同的進(jìn)程訪問(wèn)該目錄時(shí)獲得的信息是不同的,內(nèi)容等價(jià)于/proc/本進(jìn)程pid/。進(jìn)程可以通過(guò)訪問(wèn)/proc/self/目錄來(lái)獲取自己的系統(tǒng)信息,而不用每次都獲取pid。
如何利用
cmdline
獲取當(dāng)前啟動(dòng)進(jìn)程的完整命令
cat /proc/self/cmdline
以上命令返回的結(jié)果,就是啟動(dòng)當(dāng)前進(jìn)程的命令
cwd
cwd 文件是一個(gè)指向當(dāng)前進(jìn)程運(yùn)行目錄的符號(hào)鏈接??梢酝ㄟ^(guò)查看cwd文件獲取目標(biāo)指定進(jìn)程環(huán)境的運(yùn)行目錄
ls /proc/self/cwd
exe
獲取當(dāng)前進(jìn)程的可執(zhí)行文件的完整路徑
ls -al /proc/self/exe
environ
獲取當(dāng)前進(jìn)程的環(huán)境變量信息
cat /proc/self/environ
maps
/proc/self/maps的內(nèi)容是當(dāng)前進(jìn)程的內(nèi)存映射關(guān)系,可通過(guò)讀取該文件來(lái)得到內(nèi)存數(shù)據(jù)映射的地址。
字段值依次為:內(nèi)存區(qū)域--權(quán)限--文件在內(nèi)存中的偏移量--設(shè)備號(hào)--文件索引節(jié)點(diǎn)--路徑
路徑中/usr/bin/cat表示二進(jìn)制文件
mem
/proc/self/mem的內(nèi)容是當(dāng)前進(jìn)程的內(nèi)存映射關(guān)系,可通過(guò)讀取該文件來(lái)得到內(nèi)存數(shù)據(jù)映射的地址。但是注意該文件不能直接讀取,因?yàn)槲募写嬖谥恍o(wú)法讀取的未被映射區(qū)域。所以要結(jié)合/proc/self/maps中的偏移地址進(jìn)行讀取。通過(guò)參數(shù)start和end及偏移地址值讀取內(nèi)容。
鏈接:https://www.cnblogs.com/MrSoap/p/18228926
-
內(nèi)核
+關(guān)注
關(guān)注
3文章
1416瀏覽量
41379 -
Linux
+關(guān)注
關(guān)注
87文章
11508瀏覽量
213626 -
文件系統(tǒng)
+關(guān)注
關(guān)注
0文章
296瀏覽量
20383 -
Proc
+關(guān)注
關(guān)注
0文章
12瀏覽量
9177
原文標(biāo)題:Linux中/proc 介紹指南
文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
Linux平臺(tái)/proc虛擬文件系統(tǒng)詳解

Linux proc文件系統(tǒng)詳解
【AWorks試用體驗(yàn)】學(xué)習(xí)筆記(6) proc 文件系統(tǒng)
【Linux學(xué)習(xí)雜談】之proc文件系統(tǒng)
你不知道的Linux內(nèi)核中的proc文件系統(tǒng)
需要了解的Linux中 /proc/[pid] 目錄的各文件
Linux驅(qū)動(dòng)開發(fā)-proc接口介紹
AIO 3399ProC工具Linux Upgrade Tool 1.34

AIO 3399ProC工具Linux Upgrade Tool v1.24

AIO 3399ProC解合包工具(Linux)

AIO 3399ProC Linux SDK源碼包(僅支持RK3399Pro)

AIO 3399ProC Linux根文件系統(tǒng)鏡像(arm64/arm32)

PROC SQL介紹

評(píng)論