在Linux上要看Process(處理程序、程序、進程)的狀況可以使用top指令,直接在Terminal上輸入top就會進入互動介面。預設情況會進入互動模式,並且不斷更新顯示近況,如果想尋找特定的Process可以參考以下方式。
搜尋與排序
搜尋使用者
按下u
會看到上方出現 Which user (blank for all)
,這時候輸入要搜尋的帳號名稱再按下Enter即可。想清除搜尋條件顯示全部的帳號的Process的話,重新按下u之後直接點擊Enter,輸入空白名稱就會回到顯示所有帳號Process的畫面。
搜尋應用程式
按下o
會看到上方出現 add filter #1 (ignoring case) as: [!]FLD?VAL
,這時候要輸入欄位名稱與要搜尋的名字,例如要搜尋java相關的:COMMAND=java
,按下Enter之後就會顯示COMMAND中包含java的Process。可以再次按下o
重複上面步驟增加第二個篩選條件。
想要清除搜尋條件顯示所有Process的話,直接點選鍵盤的等於=
就會刪除那些篩選條件了。
排序
- 依照記憶體使用量排序:大寫
M
,補充小寫m
是切換記憶體相關資訊的顯示方式。 - 依照CPU使用率排序:大寫
P
。 - 依照CPU使用時間排序:大寫
T
,補充小寫t
是切換CPU相關資訊的顯示方式。 - 依照PID排序:大寫
N
。 - 反向排序:大寫
R
,按下後會依照現在排序的狀況反向排序,例如按下M
改用記憶體使用量排序後,再按下R
就會變成按照記憶體使用量從小到大排序,再按一次又會反過來。
其他操作
移動與換頁
- 一次移動一格:方向鍵上下鍵
- 一次移動一頁:大於小於
補充方向鍵左右也可以向兩邊移動,當資訊太多時會用上。
開啟說明
- 方法一:在終端機輸入
top -h
顯示簡易說明。 - 方法二:在終端機輸入
man top
顯示詳細說明。 - 方法三:在互動模式下按下
h
,再按一次h
顯示下一頁,按下q
回到互動模式。
離開Top
在互動模式下按下q
即可。
小補充-Program與Process
Program常見翻譯是程式、應用程式,是指一個(或一些集合)可以被作業系統執行的程式碼。而Process常見翻譯是處理程序、程序、進程,Program被作業系統載入擁有生命週期後才會成為Process。一個Program可以產生多個Process,例如小算盤在硬碟裡面通常只有一個,可是我們可以同時開啟好幾個小算盤。
一個Process會在記憶體中擁有一個區塊,拿來放置程式碼、Heap、Stack等資料,一個Process底下又可以產生多個Thread(執行緒、線程),甚至是子Process等。在作業系統概論與一些程式語言設計的課程(不是學怎麼使用程式語言,而是學怎麼設計一門程式語言)可以學到許多更深入的概念。