第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

全部開發(fā)者教程

Linux 入門教程

Linux 查看進(jìn)程

前面小節(jié)對文件和目錄的創(chuàng)建、刪除、移動、重命名、查看、修改等操作做了介紹,本小節(jié)開始學(xué)習(xí) Linux 進(jìn)程相關(guān)的知識點(diǎn),學(xué)習(xí)如何查看 Linux 中的進(jìn)程信息,并介紹通過命令展示出來的進(jìn)程信息。

1. 進(jìn)程概念簡介

進(jìn)程(Process)是系統(tǒng)中進(jìn)行資源的分配和調(diào)度的基本單位,是系統(tǒng)中的軟件程序?qū)δ承?shù)據(jù)集合的運(yùn)行活動,是操作系統(tǒng)結(jié)構(gòu)的基礎(chǔ)。它可以申請和擁有系統(tǒng)資源,是一個動態(tài)的概念,是一個活動的實(shí)體。它不只是程序的代碼,還包括當(dāng)前的活動,通過程序計數(shù)器的值和處理寄存器的內(nèi)容來表示。其定義如下:

  • 狹義定義:進(jìn)程是正在運(yùn)行的程序的實(shí)例;

  • 廣義定義:進(jìn)程是一個具有一定獨(dú)立功能的程序關(guān)于某個數(shù)據(jù)集合的一次運(yùn)行活動。它是操作系統(tǒng)動態(tài)執(zhí)行的基本單元,在傳統(tǒng)的操作系統(tǒng)中,進(jìn)程既是基本的分配單元,也是基本的執(zhí)行單元。

2. 啟動一個進(jìn)程

這里以啟動一個 nginx 服務(wù)為例,首先使用 yum 命令安裝 nginx 軟件,命令如下:

yum -y install nginx

執(zhí)行結(jié)果如下:

圖片描述

如上圖所示,已經(jīng)安裝好了 nginx 之后,可以使用如下命令啟動 nginx 服務(wù):

service nginx start

執(zhí)行結(jié)果如下:

圖片描述

啟動 nginx 之后可以使用本機(jī)瀏覽器訪問,但在訪問之前需要先將 Linux 防火墻關(guān)閉,命令如下:

systemctl stop firewalld

systemctl status firewalld

執(zhí)行結(jié)果如下圖:

圖片描述

關(guān)閉防火墻之后,就可以通過瀏覽器查看到 nginx 軟件服務(wù)展示的內(nèi)容:

圖片描述

3. 查看進(jìn)程

在啟動一個軟件進(jìn)程之后,可以使用 ps 命令查看啟動軟件的進(jìn)程,命令如下:

ps -aux | grep nginx

執(zhí)行結(jié)果如下圖:

圖片描述

Tipsps -aux | grep nginx 中的 ps 表示查看進(jìn)程,aux 是進(jìn)程跟的參數(shù),|grep nginx 表示使用管道查看 nginx 的進(jìn)程。

4. ps 命令參數(shù)介紹

Centos操作系統(tǒng)中進(jìn)程的狀態(tài)有五種:

  • 運(yùn)行:正在運(yùn)行或在運(yùn)行隊列中等待;
  • 中斷:休眠中,受阻,在等待某個條件的形成或接受到信號;
  • 不可中斷:收到信號不喚醒和不可運(yùn)行, 進(jìn)程必須等待直到有中斷發(fā)生;
  • 僵死:進(jìn)程已終止, 但進(jìn)程描述符存在, 直到父進(jìn)程調(diào)用 wait4() 系統(tǒng)調(diào)用后釋放;
  • 停止:進(jìn)程收到SIGSTOP,SIGSTP,SIGTIN,SIGTOU 信號后停止運(yùn)行運(yùn)行。

ps 命令可以用來查看進(jìn)程相關(guān)信息,下面列舉一些 ps 命令的參數(shù):

ps 命令參數(shù)名稱 功能與作用描述
-a 顯示現(xiàn)行終端機(jī)下的所有程序,包括其他用戶的程序。
-A 顯示所有程序。
-c 列出程序時,顯示每個程序真正的指令名稱,而不包含路徑,參數(shù)或常駐服務(wù)的標(biāo)示。
-e 此參數(shù)的效果和指定 A 參數(shù)相同。 例如: ps -e
e 列出程序時,顯示每個程序所使用的環(huán)境變量。
f 用ASCII字符顯示樹狀結(jié)構(gòu),表達(dá)程序間的相互關(guān)系。
-H 顯示樹狀結(jié)構(gòu),表示程序間的相互關(guān)系。
-N 顯示所有的程序,除了執(zhí)行ps指令終端機(jī)下的程序之外。
-s 采用程序信號的格式顯示程序狀況。
-S 列出程序時,包括已中斷的子程序資料。
-u 以用戶為主的格式來顯示程序狀況。
-x 顯示所有程序,不以終端機(jī)來區(qū)分。

Tips:使用上述一個或者多個參數(shù)可以查看到指定的進(jìn)程信息。

5. 實(shí)時監(jiān)測進(jìn)程

上面介紹的 ps 命令只能查看輸入命令那一刻獲取到的進(jìn)程信息,而 top 命令可以實(shí)時監(jiān)測進(jìn)程信息:

執(zhí)行結(jié)果如下圖:

圖片描述

如上圖所示展示的是實(shí)時進(jìn)程監(jiān)測信息,下面對這些信息進(jìn)程說明:

  • PID:進(jìn)程號或進(jìn)程ID;
  • USER:進(jìn)程屬主的名字;
  • PR:進(jìn)程的優(yōu)先級;
  • NI:進(jìn)程的謙讓度值;
  • VIRT:進(jìn)程占用的虛擬內(nèi)存總量;
  • RES:進(jìn)程占用的物理內(nèi)存總量;
  • SHR:進(jìn)程和其他進(jìn)程共享的內(nèi)存總量;
  • S:進(jìn)程的狀態(tài),D 表示可中斷的休眠狀態(tài),R 表示運(yùn)行狀態(tài),S 表示休眠狀態(tài),T 表示跟蹤狀態(tài)或停止?fàn)顟B(tài),Z 表示僵化狀態(tài);
  • %CPU:進(jìn)程使用的 CPU 時間比例;
  • %MEM:進(jìn)程使用的內(nèi)存占可用內(nèi)存的比例;
  • TIME+:自進(jìn)程啟動到目前為止 CPU 時間總數(shù);
  • COMMAND:進(jìn)程所對應(yīng)的命令行名稱,也就是程序啟動時的程序名。

Tipstop 命令展示出來的信息默認(rèn)是按照 %CPU 的值從大到小排序的。

6. 小結(jié)

本小節(jié)介紹了,如何啟動一個 nginx 程序進(jìn)程,然后使用 ps -aux | grep nginx 命令查看 nginx 相關(guān)的進(jìn)程信息,pstop 命令都能查看進(jìn)程信息,ps 查看的是輸入命令之后那一刻的進(jìn)程信息,而 top 命令可以實(shí)時監(jiān)測進(jìn)程信息,這些命令和參數(shù)在實(shí)際業(yè)務(wù)中特別重要,能快速看到那些軟件應(yīng)用的運(yùn)行狀態(tài),它們占用的資源大小信息,從而可以很好地對系統(tǒng)和軟件優(yōu)化。