作為乙個新手,部署python**的時候總會出各種各樣的問題,這個時候我就很想知道是哪個程式沒有執行。這幾天讀了鳥哥私房菜的程序管理這一章,還沒讀完,先做下筆記。
乙個程式被載入到記憶體中執行,在記憶體中的資料就被稱為程序。在linux下,所有的命令在執行時都會被系統定義為乙個程序
,這條命令會被分配乙個id,稱為pid
,執行這條命令的使用者會被分配乙個uid
,系統根據uid來判別執行命令的許可權。
程序就是正在執行中的程式。
子程序是父程序衍生出來的程序,用fork and exec
的方式產生,ppid
值與父程序pid
值相同可以用ps -l
來檢視當前使用者的所有程序。
linux下的工作管理很像windows的任務管理器。工作管理是將程序控制在前台或後台執行,後台執行的程式必須是與使用者沒有互動,換句話說不用等待輸入的。出現提示符讓你操作的環境稱為前台(foreground)
,反之稱為後台(background)
可以在執行的命令後加上&
把它丟到後台去執行,如
tar -zpcf /tmp/etc.tar.gz /etc &
終端裡會顯示出pid,如果有出錯資訊,會提示,可以看到命令提示符。
ctrl+z 與 ctrl+c
ctrl+z可以將程序暫停放到後台,程序是沒有停止的!ctrl+c是停止當前的程序。被ctrl+z放到後台暫停的程序,可以通過fg
和bg
調整為執行狀態。先檢視一下當前後台工作狀態:
jobs [-lrs]
然後用fg %jobnumber
可以調到前台('%'可有可無,jobnumber為任務編號,不是pid)或是用bg %jobnumber
來在後台執行。
kill
kill -signal %jobnumber
離線管理
離線管理是指當你用遠端終端登陸伺服器時,如果直接以&方式將任務放到後台掉線之後程序是不會繼續執行的,可以用nohup
來解決,如:
nohup ./sleep500.sh &
檢視程序
ps命令可以靜態檢視系統程序。
LINUX程序管理
1.程序是什麼?乙個程序就是出於執行期的程式,包括 可執行程式 段 開啟的檔案,掛起的訊號,核心內部資料,處理器狀態,位址空間,乙個或多個執行執行緒,當然還包括用來存放全域性變數的資料段,等等.2.什麼是執行緒?它和程序的關係是什麼樣的?執行緒在linux中具體是怎麼樣實現的?是在程序中活動的物件,...
linux程序管理
程序的監控 使用ps aux 檢視當前所有程序。可以使用top檢視當前程序自動更新列表,在top中m 按記憶體大小排列,p 按cpu佔用率排列 終止和管理程序 程序之間通過訊號來進行通訊 top和kill都用於向程序傳送訊號。kill l顯示訊號編號表。kill 9 pid kill pid 向pi...
Linux 程序管理
1.linux程序管理工具,包括ps pgrep top kill killall pkill 等 常用 ps aux 或lax輸出的解釋 user 程序的屬主 pid 程序的id ppid 父程序 cpu 程序占用的cpu百分比 mem 占用記憶體的百分比 ni 程序的nice值,數值大,表示較少...