linux 系統 分級命令目錄作用,軟硬中斷,檢視具體程序啟動資訊
中斷部分內容參考自:http://blog.csdn.net/zhangskd/article/details/21992933
程序檢視部分參考自:http://blog.csdn.net/zheng0518/article/details/42964913
首先注意usr 指 Unix System Resource,而不是User
然後通常/usr/bin下面的都是系統預裝的可執行程式,會隨著系統升級而改變
/usr/local/bin目錄是給使用者放置自己的可執行程式的地方,推薦放在這裡,不會被系統升級而覆蓋同名檔案
如果兩個目錄下有相同的可執行程式,誰優先執行受到PATH環境變數的影響,比如我的一臺伺服器的PATH變數為
echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/dean/bin
這裡/usr/local/bin優先於/usr/bin, 一般都是如此。
bin:
bin為binary的簡寫主要放置一些系統的必備執行檔例如:cat、cp、chmod
df、dmesg、gzip、kill、ls、mkdir、more、mount、rm、su、tar等。
/usr/bin:
主要放置一些應用軟體工具的必備執行檔例如c++、g++、gcc、chdrv、diff、dig、du、eject、elm、free、gnome*
/sbin:
主要放置一些系統管理的必備程式例如:cfdisk、dhcpcd、dump、e2fsck、fdisk、halt、ifconfig、ifup、
ifdown、init、insmod、lilo、lsmod、mke2fs、modprobe、quotacheck、reboot、rmmod、
runlevel、shutdown等。
/usr/sbin:
放置一些網路管理的必備程式例如
/bin : commands inthis dir are all system installed user commands
/sbin: commands in this dir are all system installedsuper user commands
/usr/bin: usercommands for applications
/usr/sbin: superuser commands for applications
/usr/local/bin :application user commands
/usr/local/sbin:application super user commands
(1) 硬中斷
由與系統相連的外設(比如網絡卡、硬碟)自動產生的。主要是用來通知作業系統系統外設狀態的變化。比如當網絡卡收到資料包
的時候,就會發出一箇中斷。我們通常所說的中斷指的是硬中斷(hardirq)。
(2) 軟中斷
為了滿足實時系統的要求,中斷處理應該是越快越好。linux為了實現這個特點,當中斷髮生的時候,硬中斷處理那些短時間
就可以完成的工作,而將那些處理事件比較長的工作,放到中斷之後來完成,也就是軟中斷(softirq)來完成。
(3) 中斷巢狀
Linux下硬中斷是可以巢狀的,但是沒有優先順序的概念,也就是說任何一個新的中斷都可以打斷正在執行的中斷,但同種中斷
除外。軟中斷不能巢狀,但相同型別的軟中斷可以在不同CPU上並行執行。
(4) 軟中斷指令
int是軟中斷指令。
中斷向量表是中斷號和中斷處理函式地址的對應表。
int n - 觸發軟中斷n。相應的中斷處理函式的地址為:中斷向量表地址 + 4 * n。
(5)硬中斷和軟中斷的區別
軟中斷是執行中斷指令產生的,而硬中斷是由外設引發的。
硬中斷的中斷號是由中斷控制器提供的,軟中斷的中斷號由指令直接指出,無需使用中斷控制器。
硬中斷是可遮蔽的,軟中斷不可遮蔽。
硬中斷處理程式要確保它能快速地完成任務,這樣程式執行時才不會等待較長時間,稱為上半部。
軟中斷處理硬中斷未完成的工作,是一種推後執行的機制,屬於下半部。
檢視程序資訊 隨便用 ps -ef 或者 ps -aux 都可以。
但是要檢視啟動資訊,比如,由哪個使用者啟動,啟動位置在哪裡。
就必須 用 到 /proc/ 目錄了。 在這個目錄裡存放的都是程序檔案的資訊。(在linux系統裡 所有都是檔案)
1、用ps -ef |grep xxxxx 得到該程序的pid
2、輸入ls -l ,結果中 exe連結對應的就是可執行檔案的路徑
$ ls -l /proc/18283
以下是/proc目錄中程序N的資訊
/proc/N pid為N的程序資訊
/proc/N/cmdline 程序啟動命令
/proc/N/cwd 連結到程序當前工作目錄
/proc/N/environ 程序環境變數列表
/proc/N/exe 連結到程序的執行命令檔案
/proc/N/fd 包含程序相關的所有的檔案描述符
/proc/N/maps 與程序相關的記憶體對映資訊
/proc/N/mem 指代程序持有的記憶體,不可讀
/proc/N/root 連結到程序的根目錄
/proc/N/stat 程序的狀態
/proc/N/statm 程序使用的記憶體的狀態
/proc/N/status 程序狀態資訊,比stat/statm更具可讀性