1、使用ps檢視程序狀態
程序就類似windows中的程序。
1、pid:程序的id,每乙個新程序都有唯一的pid。
2、ppid:父程序的id。
3、任何乙個程序都可以建立乙個子程序。
4、在redhat 7以上版本中,所有程序的父程序叫systemd。
在redhat 7以下的版本中,所有程序的父程序叫init。
-ps指令用於顯示當前程序的狀態,其引數有:
-aux:列出所有程序。
-ef:列出所有程序。
-l:列出和當前使用者有關的程序。
-u 使用者:檢視某一使用者的程序狀態。
top:檢視實時的程序狀態。
2、程序狀態
r (task_running),可執行狀態&執行狀態(在run_queue佇列裡的狀態)
s (task_interruptible),可中斷的睡眠狀態, 可處理signal
d (task_uninterruptible),不可中斷的睡眠狀態, 可處理signal, 有延遲
t (task_stopped or task_traced),暫停狀態或跟蹤狀態, 不可處理signal, 因為根本沒有時間片執行**
z (task_dead - exit_zombie),退出狀態,程序成為殭屍程序。不可被kill, 即不響應任務訊號, 無法用sigkill殺死
3、作業和會話
作業:乙個正在執行的程序,作業包含乙個或多個程序。
作業控制:控制正在執行的程序的行為。
& 命令後使用該符號,可以讓命令在後台執行。
ctrl z 掛起
ctrl c 中斷
jobs 檢視當前後台的作業情況
-l 列出作業號和pid號
-r 僅列出執行的作業
-s 僅列出暫停的作業
程序和作業的區別:
區別:程序是乙個程式在乙個資料集上的一次執行,而作業是使用者提交給系統的乙個任務。
關係:乙個作業通常包括幾個程序,幾個程序共同完成乙個任務,即作業。
使用者提交作業以後,當作業被排程,系統會為作業建立程序,乙個程序無法完成時,系統會為這個程序建立子程序。
fg:將後台中的命令調至前台繼續執行
bg:將乙個在後台暫停的命令,變成繼續執行
ps -j:顯示當前作業資訊
tgid:程序組id號
sid:會話id號
4、中斷程序
kill -l 顯示可以傳遞給程序的資訊號
常用:kill -9 pid:強制殺死乙個程序
kill -15 pid:正常殺死乙個程序
kill -2:同ctrl+c
session程序和服務
session如果是存在程序內的話,當程序重啟,session資料就會丟失。所以就找到了個辦法,不吧session放在程序內,而是放在伺服器上。這樣子只要伺服器不重啟,session資料就不會丟失.1.開始服務 開始本機上的asp.net state service 服務 2.更改配置檔案 在sys...
Linux學習 程序和服務管理
ps命令是最基本的程序檢視命令,使用該命令可以確定哪些程序正在執行及程序的狀態 程序是否結束 程序是否僵死及占用資源等。ps 選項 a 顯示排除會話領導者和程序不與終端關聯的所有進行 u 列印使用者格式,顯示使用者名稱和程序的起始時間 x 顯示不帶控制終端的程序 e 顯示所有的程序 f 顯示uid ...
Linux 引導過程和服務控制
開機自檢 mbr引導 grub選單 載入linux核心 init程序初始化 由linux核心載入執行 sbin init程式 是系統中第乙個程序 pid 程序標記 號永遠為1 0 關機狀態,使用該級別時將會關閉主機,對應systemd中的target 1 單使用者模式,不需要密碼驗證即可登入系統,多...