進程管理

一.進程的含義

   進程:一段內存空間中的運行的一個或多個線程,它是用戶的代理。

   可以通過ls /proc 查看當前系統的進程,如果要進一步瞭解某一進程的詳細信息cd /proc/PID   然後ls查看.

     我們還可以通過pstree查看所有進程之間的樹形關係。

  二。進程數據的結構

       p_w_picpath

1. PID:進程號,是1-32767的數。

2. PID 1是init的進程號,init是所有其他進程的父進程,系統啓用時首先調用的就是init,在通過init調用其他的進程

3. 進程分爲:用戶進程和守護進程。

     用戶進程--->terminal ---->shell

     守護進程---->daemon--->shell

三。查看進程信息常用命令

1。ps

ps風格有(1)UNIX  (2)BSD (3)GNU

 

BSD風格:

所有選項都不需要加橫線。

a:  跟終端相關的所有進程(即用戶進程)。

x:跟終端不相關的所有進程(即守護進程)。

u:以用戶爲導向顯示ps信息,即用戶相關的信息。

p_w_picpath

例如:

p_w_picpath

USER:屬主,即進程的發起者。

PID:進程號。

%CPU:此進程獲得的cpu時間和cpu總時間的比。

%MEN:此進程獲得的內存佔整個物理內存的%。

VSZ:佔用虛擬內存的大小(k)。

RSS:佔用非虛擬內存的大小(k)。

TTY:登陸端。 ?:守護進程。

STAT:進程狀態。選項有:D,R,S,T,W,X,Z.

         D:不可中斷的睡眠。

         R:正在運行或等待運行。

         S:可中斷的睡眠。

         T:進程停止。

         X:死掉的進程。

         Z: 殭屍進程。

    附加修飾選項:

       <:高優先級的進程。

          N:低優先級的進程。

         L:有些頁面被鎖定 在內存裏。

         s:回話頭

          l:多線程的.

         +:在前臺運行的

euser:此程序一誰的權限運行的。

ruser:此進程的發起人。

ATART:此進程發起的時間。

TIME:累積獲得

cpu時間。

COMMAND: 哪一個命令發起的進程。

 

o:用戶指定格式,可以指定顯示進程信息中的某一段。

例如:

p_w_picpath p_w_picpath

2.ps 的-e -f選項

    -e:顯示所有進程,相當於ax

    -F:額外的完全格式的進程。

    -f:完整格式的所有信息。

     -l:長格式的信息。

     -L:線程信息

例如:以完整格式顯示進程信息

p_w_picpath

UID:當前進程的屬主。

PID:進程號。

PPID:父進程號。

STIME:進程啓用時間。

TTY:登陸終端,?:守護進程。

TIME:累積佔用cpu時間。

CMD:那個命令發起的進程。

例如:查找於x server相關的進程信息

p_w_picpath

注:選行用grep,選列用o選項

3.pgrep

以支持正則表達式的方式來實現進程寫去的。

-U:某個用戶啓動的線程。

例如:

p_w_picpath 顯示關於root用戶的所有進程號。

-G;有關某一組的進程信息。

-l

例如:顯示行中pid或commend中包含了1的進程行

p_w_picpath

-v:取反。

例如:顯示非root用戶的進程PID。

p_w_picpath

4.pidof sshd =ps axo pid,command |grep ssh

選擇某一進程(ssh)的進程號

5.kill

kill –l  進程信息列表

kill –9  立刻終止

kill –15 保存後終止

killall –U uid 關閉某一主的所有進程

killall  -G gid  關閉某一組的所有進程

pkill –U uid    -G gid

6。top

動態顯示進程(q退出)

us:用戶   sy:系統   ni:優先級改動  id : 空閒

wa:等待時長(硬盤---緩存)

hi:硬鏈接

ri:軟連接

st:被虛擬機用走的時間

huffer:緩衝

cashed:緩存

7.top

top –b  自動一次刷一屏

-n:指定批次

top –b –n 2 

-d:指定延遲多長時間刷一次

8.jobs

查看後臺

Ctrl +z送往後臺並停止

fg %n:將後臺的n調往前臺

bg%n:後臺停止的作業後臺運行

9。at

寫完後用Ctrl+d 提交

at –l :查看計劃列表=atq

at –d n =atrm:取消第n個作業

at –f +文件+時間

例如:at /root/at.text 04:00

10.crond

/etc/crontab :存放着系統的週期作業

crontab –e :查看

作業結構:min hour day month weekday command

*:通配

,:同一位給兩值是分割用

*?/:每什麼

crontab –u 用戶 –e :提別的用戶建作業

crontab –U 用戶 –l :查看某一用戶的作業

11,。anacron

系統啓動後自動查看cron有無沒做的作業,如果有,現在執行作業

默認是它並不開機啓用此服務

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