進程管理

  進程管理,在瞭解進程管理之前我們先了解系統狀況:

l  Uname:顯示系統信息

Uname –a 用來顯示系統的完整鑑定信息,包括主機名、和新版本等。

l  Hostname:顯示主機名

可以用來臨時改變主機名,如果想要永久更換主機名,需要編輯/etc/sysconfig/network

l  Last:列出最近的用戶登錄

l  Lastlog:列出每一個影虎的最近登錄情況

l  Free:顯示內存使用情況

l  Top:系統監視器

進程,Linux系統上所有運行的東西都可以稱之爲一個進程。每個用戶任務、每一個系統管理守護進程,都可以稱之爲進程。

l  系統將通過進程來完成工作。

l  每一個進程都有一個獨立的進程號,系統通過調用進程號來調度操控進程

l  系統的原始進程是initInitPID總是1

l  一個進程可以產生另一個進程,除了init以外,所有的進程都有父進程。

查詢進程

l  查詢進程的指令:-ps [option]

l  Pstree可以用來一樹狀的方式表現進程的父子關係。

l  top是一個常用的系統見識工具。

Ps常用參數

l  -a 顯示所有進程;

l  -u 顯示不屬於任何一個終端的進程;

l  -l 以長模式顯示進程的信息

Ps顯示中的STAT,可以爲:

l  -R : 正在運行

l  -S:進程睡眠中,通常可以因爲時間發生而被喚醒。

l  -T :進程已停止

l  -D : 進程睡眠中,除非發生指定事件,否則不會被喚醒。

l  -Z:殭屍進程。

l  -< :高優先級進程

l  -N:低優先級進程

控制進程

kill語法:kill  [-signal]  PID

向進程傳送一個特定的訊號

  默認爲15(終結)

  kill -l:列出所有可以由kill傳遞的訊號

   killal

 

進程控制

當需要中斷一個前臺進程的時候,通常是使用Ctrl+c組合鍵;但是對於一個後臺進程恐怕就不是一個組合鍵所能解決的了,這時就必須求助於kill命令。該命令可以終止後臺進程。至於終止後臺進程的原因很多,或許是該進程佔用的CPU時間過多;或許是該進程已經掛死。總之這種情況是經常發生的。
kill可以通過向一個進程發送一個訊號來控制進程。這個訊號既可以是數字,也可以是名稱。默認情況下,kill向進程傳送進程號15,即terminate,以通知進程結束。我們可以使用kill –l列出所有可以由kill傳遞的訊號。

[root@stationxx  root]# kill –l

 1) SIGHUP      2) SIGINT  3) SIGQUIT      4) SIGILL

 5) SIGTRAP    6) SIGABRT    7) SIGBUS      8) SIGFPE

 9) SIGKILL       10) SIGUSR1    11) SIGSEGV    12) SIGUSR2

13) SIGPIPE     14) SIGALRM   15) SIGTERM   17) SIGCHLD

18) SIGCONT   19) SIGSTOP    20) SIGTSTP     21) SIGTTIN

22) SIGTTOU    23) SIGURG      24) SIGXCPU   25) SIGXFSZ

26) SIGVTALRM      27) SIGPROF   28) SIGWINCH 29) SIGIO

30) SIGPWR     31) SIGSYS      33) SIGRTMIN  34) SIGRTMIN+1

35) SIGRTMIN+2     36) SIGRTMIN+3     37) SIGRTMIN+4     38) SIGRTMIN+5

39) SIGRTMIN+6     40) SIGRTMIN+7     41) SIGRTMIN+8     42) SIGRTMIN+9

43) SIGRTMIN+10  44) SIGRTMIN+11   45) SIGRTMIN+12  46) SIGRTMIN+13

47) SIGRTMIN+14  48) SIGRTMIN+15  49) SIGRTMAX-14  50) SIGRTMAX-13

51) SIGRTMAX-12  52) SIGRTMAX-11  53) SIGRTMAX-10  54) SIGRTMAX-9

55) SIGRTMAX-8    56) SIGRTMAX-7    57) SIGRTMAX-6    58) SIGRTMAX-5

59) SIGRTMAX-4    60) SIGRTMAX-3    61) SIGRTMAX-2    62) SIGRTMAX-1

63) SIGRTMAX

 

 前臺和後臺

   默認情況下,一個命令執行後,此指令將獨佔shell,並拒絕其他輸入。我們稱之爲前臺進程。反之,則稱爲後臺進程。

   對每一個控制檯,都允許多個後臺進程。

  對前臺/後臺進程的控制與調度,被稱爲任務控制

將進程丟入後臺

   command &:將一個進程直接丟入後臺運行

     nohup command &:將一個進程直接丟入後臺運行,而且在該控制檯退出後,進程仍不掛斷

   ctrl + Z:將一個正在運行的前臺進程暫停,並丟入後臺

工作

l  jobs:列出系統當前的後臺進程

l  fg:將後臺進程拉回前臺

l  bg:激活後臺暫停

 

 未完待續…………

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章