什麼是程序?
被載入記憶體的一個指令集合;
程序ID USER COMMAND
/proc目錄下,可以看到所有記憶體中運作的程序。
檢視程序資訊
ps
-a 所有終端中的程序
-x 包括不連接配接終端的程序
-u 顯示使用者資訊
ps aux
-e 顯示所有的程序
-f 顯示程序的父程序
ps -ef
-o 顯示定制的資訊
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
ps -e -o pid, comm, %C
ps aux | grep ^root
程序狀态
S 休眠狀态(Sleeping)
R 運作狀态(Running)
U 等待資源狀态(Uninterruptable Sleep)
Z 僵死狀态(Zombie)
pstree 顯示程序結構樹
pgrep -U root 顯示root使用者的pid
pgrep init 顯示init程序的pid
ps -eo pid,comm | grep init
pidof init 顯示init程序的pid
信号
信号 15 優雅的殺死
信号 9 強制殺死
信号 2 Ctrl + c
信号 1 重新讀取配置檔案
信号清單
kill -l
man 7 signal
給程序發送信号
kill 1234
kill -9 1234
程序排程優先級
優先級的取值範圍是-20~19
nice值
ps -eo comm,nice
程式啟動時,配置設定nice值
nice -n 5 ./s1.sh
對程序重新賦予nice值
renice 19 pid
作業控制
在背景運作程式
firefox http://localhost &
暫停某個運作程式
Ctrl + z 17信号。
管理背景作業或者暫停的作業:
jobs
fg %1 前台運作作業号為1的程式
bg %2 背景運作作業号為2的程式
kill %2 殺掉作業号為2的程式