Linux進程操作信息

来源:http://www.cnblogs.com/King-Penguin/archive/2016/01/20/5146925.html
-Advertisement-
Play Games

Linux進程操作簡單小結 linux上進程有5種狀態: 1.運行(正在運行或在運行隊列中等待) 2.中斷(休眠中,受阻,在等待某個條件的形成或接受到信號) 3.不可中斷(收到信號不喚醒和不可運行,進程必須等待直到有中斷發生) 4.僵死(進程已終止,但進程描述符存在,直到父...


Linux進程操作簡單小結

  linux上進程有5種狀態: 

    1. 運行(正在運行或在運行隊列中等待) 

    2. 中斷(休眠中, 受阻, 在等待某個條件的形成或接受到信號) 

    3. 不可中斷(收到信號不喚醒和不可運行, 進程必須等待直到有中斷發生) 

    4. 僵死(進程已終止, 但進程描述符存在, 直到父進程調用wait4()系統調用後釋放) 

    5. 停止(進程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號後停止運行運行) 


 

  ps命令用來靜態查看目前系統中,有哪些正在執行,以及它們的執行情況。可以不加任何參數。

  ps  -a  :顯示當前終端的所有進程信息。

  ps  -u  :以用戶的格式顯示進程信息

  ps  -x  :顯示後臺進程運行的參數

  本人喜歡直接三個參數連起來使用:ps  -aux  這樣查到的信息更全更詳細。

例:

參數說明:

USER:該 process 屬於那個使用者賬號的

PID :該 process 的號碼

%CPU:該 process 使用掉的 CPU 資源百分比

%MEM:該 process 所占用的物理記憶體百分比

VSZ :該 process 使用掉的虛擬記憶體量 (Kbytes)

RSS :該 process 占用的固定的記憶體量 (Kbytes)

TTY :該 process 是在那個終端機上面運作,若與終端機無關,則顯示 ?,另外, tty1-tty6 是本機上面的登入者程式,若為 pts/0 等等的,則表示為由網路連接進主機的程式。

STAT:該程式目前的狀態,主要的狀態有

R :該程式目前正在運作,或者是可被運作

S :該程式目前正在睡眠當中 (可說是 idle 狀態),但可被某些訊號 (signal) 喚醒。

T :該程式目前正在偵測或者是停止了

Z :該程式應該已經終止,但是其父程式卻無法正常的終止他,造成 zombie (疆屍) 程式的狀態

START:該 process 被觸發啟動的時間

TIME :該 process 實際使用 CPU 運作的時間

COMMAND:該程式的實際指令



 

top動態查看進程使用狀況

23:59:58    當前時間
up 10:22 系統運行時間,格式為時:分
2 user 當前登錄用戶數
load average: 0.00, 0.00, 0.00 系統負載,即任務隊列的平均長度。三個數值分別為 1分鐘、5分鐘、15分鐘前到現在的平均值。

total 進程總數
running 正在運行的進程數
sleeping 睡眠的進程數
stopped 停止的進程數
zombie 僵屍進程數
Cpu(s):
xx% us 用戶空間占用CPU百分比
xx% sy 內核空間占用CPU百分比
xx% ni 用戶進程空間內改變過優先順序的進程占用CPU百分比
xx% id 空閑CPU百分比
xx% wa 等待輸入輸出的CPU時間百分比
xx%hi:硬體CPU中斷占用百分比
xx%si:軟中斷占用百分比
xx%st:虛擬機占用百分比

 

Mem:
1004412k total 物理記憶體總量
221404k used 使用的物理記憶體總量
783008k free 空閑記憶體總量
17268k buffers 用作內核緩存的記憶體量
Swap:
2031668k total 交換區總量
0k used 使用的交換區總量
2031608k free 空閑交換區總量
97902k cached 緩衝的交換區總量,記憶體中的內容被換出到交換區,而後又被換入到記憶體,但使用過的交換區尚未被覆蓋,該數值即為這些內容已存在於記憶體中的交換區的大小,相應的記憶體再次被換出時可不必再對交換區寫入。

 

序號 列名 含義
a PID 進程id
b PPID 父進程id
c RUSER Real user name
d UID 進程所有者的用戶id
e USER 進程所有者的用戶名
f GROUP 進程所有者的組名
g TTY 啟動進程的終端名。不是從終端啟動的進程則顯示為 ?
h PR 優先順序
i NI nice值。負值表示高優先順序,正值表示低優先順序
j P 最後使用的CPU,僅在多CPU環境下有意義
k %CPU 上次更新到現在的CPU時間占用百分比
l TIME 進程使用的CPU時間總計,單位秒
m TIME+ 進程使用的CPU時間總計,單位1/100秒
n %MEM 進程使用的物理記憶體百分比
o VIRT 進程使用的虛擬記憶體總量,單位kb。VIRT=SWAP+RES
p SWAP 進程使用的虛擬記憶體中,被換出的大小,單位kb。
q RES 進程使用的、未被換出的物理記憶體大小,單位kb。RES=CODE+DATA
r CODE 可執行代碼占用的物理記憶體大小,單位kb
s DATA 可執行代碼以外的部分(數據段+棧)占用的物理記憶體大小,單位kb
t SHR 共用記憶體大小,單位kb
u nFLT 頁面錯誤次數
v nDRT 最後一次寫入到現在,被修改過的頁面數。
w S 進程狀態(D=不可中斷的睡眠狀態,R=運行,S=睡眠,T=跟蹤/停止,Z=僵屍進程)
x COMMAND 命令名/命令行
y WCHAN 若該進程在睡眠,則顯示睡眠中的系統函數名
z Flags 任務標誌,參考 sched.h


終止進程的介紹

kill    進程號      :終止某個進程

kill  -9  進程號   :強制終止某個進程

kill  -u  用戶名   :終止某個用戶的進程

這裡就簡單介紹常用的三種終止進程命令。


 

  Linux查看某一進程運行路徑步驟只需三步:

一:先查看需要查詢的進程的進程號,ps 或者 top 也行

二:Linux在啟動一個進程時,系統會在/proc下創建一個以PID命名的文件夾,在該文件夾下會有我們的進程的信息。

cd /proc/PID   :到達相應的進程目錄下麵。

三:運行ls -l

留意:

cwd符號鏈接的是進程運行目錄。

exe符號連接就是執行程式的絕對路徑。

cmdline就是程式運行時輸入的命令行命令。

environ記錄了進程運行時的環境變數。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在 SQL 跟蹤中,如果事件是在跟蹤定義中列出的事件類的實例,則收集這些事件。可以將這些事件從跟蹤中篩選出來或為其目標進行排隊。目標可以是文件或 SQL Server 管理對象 (SMO),它可以使用管理 SQL Server 的應用程式中的跟蹤信息。SQL 跟蹤的優點 Microsoft S...
  • Oracle創建用戶、表空間、導入導出、...命令//創建臨時表空間create temporary tablespace ext_temptempfile 'D:\oracle\product\10.2.0\oradata\test\ext_temp.dbf'size 32mautoextend ...
  • 1.sql_safe_updates官方解釋如下:If set to 1, MySQL aborts UPDATE or DELETE statements that do not use a key in the WHERE clause or a LIMIT clause. (Specifica...
  • 今天,啟動MySQL伺服器失敗,如下所示:[root@spark01 ~]# /etc/init.d/mysqld startStarting mysqld (via systemctl): Job for mysqld.service failed because the control pro....
  • use mysql;ALTER TABLE `proc`MODIFY COLUMN `comment` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL AFTER `sql_mode`;具體原因請看:http://www.cnblogs.com/....
  • 主要參考了博文:宋沄劍 -理解SQL SERVER中的邏輯讀,預讀和物理讀 和 宋沄劍 - T-SQL查詢進階--理解SQL Server中索引的概念,原理以及其他,以下內容為對其博文的讀書筆記。 1. 資料庫的數據存儲形式 在談到幾種不同的讀取方式之前,首先要理解SQL SERVER數據存儲的方式...
  • 前言 我們知道任何一種關係型資料庫管理系統都支持SQL(Structured Query Language),相對於文件管理系統,用戶不用關心數據在資料庫內部如何存取,也不需要知道底層的存儲結構,熟悉SQL,就能熟練使用資料庫。SQL的引入,使得資料庫系統需要將SQL轉換為內部的數據結構,然後與.....
  • 首先要玩 BBB,你需要買一臺 BBB,淘寶 Element14 Beaglebone Black,我購入價 RMB 310,帶數據線,沒電源適配器的。Seeedstudio 有台叫 Beaglebone Green,由於價格偏高,我連看都沒看。 題外話,淘了個適配器寫著是 5V 萬用表測卻是 2V...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...