Linux 基礎 8 程序管理

2021-10-05 13:14:12 字數 2463 閱讀 8261

login name:登入使用者名稱;

terminal line:使用終端裝置;

login time:登入到系統的時間。

格式:ps [選項]

作用:用於監控後台程序的工作情況,因為後台程序是不和螢幕鍵盤這些標準輸入/輸出裝置進行通訊的,所以如果需要檢測其情況,便可以使用ps命令了。選項部分如下:

-e 顯示所有程序。

-f 全格式。

-h 不顯示標題。

-l 長格式。

-w 寬輸出。

a 顯示終端上的所有程序,包括其他使用者的程序。

r 只顯示正在執行的程序。

x 顯示沒有控制終端的程序。

這個命令引數有很多,但一般的使用者只需掌握一些最常用的命令引數就可以了。最常用的三個引數是 u、a、x, 我們首先以root身份登入系統,檢視當前程序狀況:ps auxps ajxps -lf 1

引數說明:

user 使用者名稱

uid 使用者id(user id)

pid 程序id(process id)

ppid 父程序的程序id(parent process id) sid 會話id(session id)

%cpu 程序的cpu佔用率

%mem 程序的記憶體佔用率

vsz 程序所使用的虛存的大小(virtual size)

rss 程序使用的駐留集大小或者是實際記憶體的大小,kbytes位元組。

tty 與程序關聯的終端(tty)

stat 程序的狀態:程序狀態使用字元表示的(stat的狀態碼)

r 執行 runnable (on run queue) 正在執行或在執行佇列中等待。

s 睡眠 sleeping 休眠中, 受阻, 在等待某個條件的形成或接受到訊號。

i 空閒 idle

z 僵死 zombie(a defunct process) 程序已終止, 但程序描述符存在, 直到父程序呼叫wait4()系統調 用後釋放。

d 不可中斷 uninterruptible sleep (ususally io) 收到訊號不喚醒和不可執行, 程序必須等待直到有中 斷發生。

t 停止 terminate 程序收到sigstop, sigstp, sigtin, sigtou訊號後停止執行執行。

p 等待交換頁

w 無駐留頁 has no resident pages 沒有足夠的記憶體分頁可分配。

x 死掉的程序

< 高優先順序程序 高優先序的程序

n 低優先順序程序 低優先序的程序

l 記憶體鎖頁 lock 有記憶體分頁分配並縮在記憶體內 s 程序的領導者(在它之下有子程序);

l 多程序的(使用 clone_thread, 類似 nptl pthreads)位於後台的程序組

start 程序啟動時間和日期 time 程序使用的總cpu時間

command 正在執行的命令列命令 ni 優先順序(nice)

pri 程序優先順序編號(priority)

wchan 程序正在睡眠的核心函式名稱;該函式的名稱是從/root/system.map檔案中獲得的。

flags 與程序相關的數字標識

格式:fg [job…]

把指定的後台作業或掛起作業移到前台執行。 引數job是乙個或多個程序的pid,或者是命令名稱,或者是作業號(作業號前面要帶乙個%號)。

通常在shell中輸入命令啟動程序後,如果該程序需要與使用者互動,那麼此後使用者的鍵盤輸入都被該程序讀取,直到該程序退出後才出現shell提示符$,這種程序為前台程序。

如果在命令列的末尾加上&字元,則shell為這個命令建立乙個後台程序,它雖然也可以輸出到螢幕,但是不能讀取鍵盤輸入,不管執行命令的程序有沒有退出都立刻回到shell提示符接受下一條命令的輸入。如果該程序也需要讀取鍵盤輸入,則被掛起等待直到使用者用 fg 命令把它變成前台程序。如果乙個命令需要較長的處理時間並且不需要與使用者互動,就適合把它放在後台執行

bg:格式:bg [job…],把被掛起的程序提到後台執行。 其中,job是乙個或多個程序的pid、命令名稱或者作業號,在引數前要帶%號。

kill:格式:kill [ -signal | -s signal ] pid …,給乙個程序發訊號,或終止乙個程序的執行,kill命令如果不帶引數而直接跟pid,就是發給該程序sigterm訊號,大部分程序收到該訊號就會終止。但是被掛起的程序不能處理訊號,所以必須發sigkill訊號,由系統強制終 止程序

檢視訊號編號:kill -l [signal]

env:檢視當前程序環境變數

vim ∼/.bashrc 配置當前使用者環境變數

vim /etc/profile 配置系統環境變數,配置時需要有root許可權

LINUX8 程序管理

對後台整體的管理 什麼是程序?每個執行的程式 就成為乙個程序 每乙個程序對應乙個父程序,父程序可以複製多個子程序 每個程序以前台和後台方式存在,前台程序使用者可在螢幕上操作,後台程序實際操作,螢幕無法顯示,一般系統服務以後台程序方式存在,且常駐系統,直至關係。顯示系統執行程序 ps指令 檢視進行使用...

Linux基礎 程序管理

程序是作業系統上非常重要的概念,所有系統上面跑的資料都會以程序的型別存在。在 linux 系統當中 觸發任何乙個事件時,系統都會將它定義成為乙個程序,並且給予這個程序乙個 id,稱為 pid,同時根據觸發這個程序的使用者,給予這個 pid 一組有效的許可權設定。程式執行起來後,我們看不到也摸不著。因...

linux基礎程序管理

linux程序管理常涉及到的命令有ps top nice kill jobs等 1.程序定義 程序 process 是計算機中的程式關於某資料集合上的一次執行活動,是系統進行資源分配和排程的基本單位,是作業系統結構的基礎。在早期面向程序設計的計算機結構中,程序是程式的基本執行實體 在當代面向執行緒設...