linux之進程詳解(ps/top/kill/killall)

進程介紹

linux系統中幾乎任何行動都會以進程的形式進行例如:

  • 如果你用網絡瀏覽器查看網頁,瀏覽器就作爲進程運行
  • 如果鍵入bash shell 命令,這個shell就作爲進程運行
  • 如果你用chmod命令更改文件權限,chmod就作爲單獨的進程來執行
  • 進程是完成工作的形式,linux內核的基本職責就是爲了進程提供做事情的地方以及使用的資源,不讓彼此撞車
    進程是已啓動的可執行程序的運行事例,進程有一些組成部分:
  • 已分配內存的地址空間
  • 安全屬性,包括所有權憑據及特權
  • 程序代碼的一個或多個執行進程
  • 進程狀態

補充:進程名稱帶有【】的是系統進程,不帶【】的是用戶創建的進程
在這裏插入圖片描述

進程與程序

程序:二進制文件,靜態
進程:是程序運行的過程,動態的產生和消亡,有生命週期及運行狀態

進程的屬性

  • 進程ID(PID):是唯一的值,用來區分進程
  • 父進程(PPID):任何一個進程都可以fork子進程,而自己就是父進程
  • 啓動進程的用戶ID(UID)和所歸屬的組(GID)
  • 進程狀態:分爲運行R 休眠S 殭屍Z
  • 進程執行的優先級
  • 進程所連接的終端名
  • 進程資源佔用:如內存、CPU等

進程五種狀態

  • 可運行(R):處於可運行狀態的進程,一旦有機會,就會訪問CPU。多個進程可以(而且進程)處於可以運行狀態,但是因爲在任何給定時間內只有一個進程可以在CPU上運行,所以實際上這些進程中只有一個在任何給定的實例上運行
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章