程序是已啟動的可執行程式的運作執行個體,程序有以下組成部分:
• 已配置設定記憶體的位址空間;
• 安全屬性,包括所有權憑據和特權;
• 程式代碼的一個或多個執行線程;
• 程序狀态。
程式: 二進制檔案,靜态 /usr/bin/passwd ,/usr/sbin/useradd
程序: 是程式運作的過程, 動态,有生命周期及運作狀态。
每個新程序配置設定一個唯一的程序ID(PID)
任何程序都可以建立子程序
以一個程序為例
ps aux | head -2
ps a 顯示現行終端機下的所有程式 。
ps u 以使用者為主的格式來顯示程式狀況。
ps x 不以終端機來區分。
程序排序 (以CPU占比降序排列)
ps aux --sort%cpu (減号為降序)
檢視程序的父子關系
ps -ef
自定義檢視
ps axo
例:ps axo user,pid | tail -1
使用信号控制程序
給程序發送信号(kill -l列出所有支援的信号)
kill -l
編号 信号名
- SIGHUP 重新加載配置
- SIGINT 鍵盤中斷Ctrl+C
- SIGQUIT 鍵盤退出Ctrl+\,類似SIGINT
- SIGKILL 強制終止,無條件
- SIGTERM 終止(正常結束),預設信号
- SIGCONT 繼續
-
SIGSTOP 暫停
20)SIGTSTP 鍵盤暫停Ctrl+Z
end 886