250 likes | 330 Views
程序控制與管理. 1 程序顯示與刪除 2 動態顯示程序 3 記憶體狀態與優先權. 1 程序顯示與刪除. 每個執行的工作都稱為程序( Processes ) 在每個程序啟動時,系統會指定一個唯一的數值給每個程序,這個數值就稱為「程序 ID 」( Process ID , PID )。 若要針對某個程序進行管理,例如中止程序的執行,都必須以程序 ID 來作為參考的對象。 每個程序都會存在一個對應的父程序( Parent Process ),而由這個父程序可以複製多個子程序。. 利用 Fork 產生子程序. 前景與背景.
E N D
程序控制與管理 • 1 程序顯示與刪除 • 2 動態顯示程序 • 3 記憶體狀態與優先權
每個執行的工作都稱為程序(Processes) • 在每個程序啟動時,系統會指定一個唯一的數值給每個程序,這個數值就稱為「程序ID」(Process ID,PID)。 • 若要針對某個程序進行管理,例如中止程序的執行,都必須以程序ID來作為參考的對象。 • 每個程序都會存在一個對應的父程序(Parent Process),而由這個父程序可以複製多個子程序。
前景與背景 • 前景程序就是使用者目前在螢幕上進行操作的程序 • 背景程序則是實際上在操作,但由螢幕上並無法看到的程序。 • 通常使用背景方式執行的情況是,當此程序較為複雜,且必須執行較長的時間時,我們會將它置於背景中執行,以避免佔用螢幕的時間過久,而無法執行其他的程序。 • 一般系統的服務都是以背景程序的方式存在,這類的服務也稱為「Daemon」。 • 多數的Daemon都是由服務名稱加上「d」的字尾來產生,例如HTTP服務的Daemon為httpd。
顯示目前程序 ps顯示的資料欄位 • PID:程序識別碼(Process ID) • TTY:Teletypewriter,登入的終端機編號 • TIME:此程序所消耗的CPU時間 • CMD:正在執行的指令或程序名稱
顯示詳細資訊 -l(Long)參數顯示欄位 • F:該程序狀態的旗標(Flag),下表是較常用的旗標及說明: • S:程序狀態代碼(Process State Codes),可用的代碼及說明如下: • UID:程序執行者的ID(User ID) • PPID:父程序識別碼(Parent Process ID) • PRI:程序執行的優先權(Priority) • NI:nice,是指程序執行優先權的nice值,負值表示其優先權較高。 • SZ:Size,程序所佔用的記憶體大小,以KB為單位。 • WCHAN:Waiting Channel,表示程序或System Call等待時的位址。
顯示詳細資訊 -u(User)參數顯示欄位 • %CPU:CPU使用率百分比 • %MEM:記憶體使用率百分比 • VSZ:佔用的虛擬記憶體大小 • RSS:佔用的實體記憶體大小 • START:行程開始時間
刪除執行中的程序 kill指令可傳送的訊號
資料排序 根據預設值,top會以程序使用的CPU時間來週期性 的更新內容,但是您可以使用記憶體使用率或是執 行時間來進行排序: • 按「P」鍵:可依據CPU使用時間的多寡來排序 • 按「M」鍵:可依據記憶體使用量的多寡來排序 • 按「T」鍵:可依據執行時間的多寡來排序
刪除指定程序 • 執行top指令,然後在資料畫面中按「k」鍵。 • 畫面會出現「PID to kill:」訊息,接著需輸入該程序的PID。 • 輸入PID後按 鍵,會出現「Kill PID xxxxx with signal [15]:」提示訊息(此處的xxxxx是指PID編號),此時需輸入signal號碼,若是直接按 鍵,則以預設的15進行處理。 • 若是無法順利刪除,則可輸入9來強制刪除該程序。
查閱說明 top指令說明
圖形介面工具 「系統監控」程式視窗
[root@ns1 ~]# free total used free shared buffers cached Mem: 190732 172544 18188 0 42604 44352 -/+ buffers/cache: 85588 105144 Swap: 522072 78768 443304
nice指令 • 一般程序執行時的優先等級範圍可由 -20 ~ 19,其中 -20表示最高等級,而19的等級最低。 • 優先權 -1 ~ -20的等級只有管理員可以設定 • 若程序執行時沒有使用nice指令,則預設的優先權等級為0。 • 但如果使用nice指令,而沒有指定優先權等級,則預設的等級為10(優先權等級反而比沒有使用nice指令更低)。
renice指令 • 重新調整程序執行時的優先等級 • 在執行renice指令時並不需要加「-」符號