查看進程狀態


上節復習:
               ps aux
               ps -elf # 查看父進程id
               pstree pid
               pgrep -l -u 用戶




今日內容
        1、查看進程狀態
                 命令行選項
                 top -d 刷新時間s -p pid # 只看某一個進程的信息
                 top -d 刷新時間s -u 用戶 # 只查看該用戶開啟的所有進程信息

    內部命令
                 s # 修改刷新時間,單位是秒,可以是0.001s,建議不要設置很小,否則會過度消耗cpu
                 q # 退出 或者ctrl+c

          排序:
                  M 按照內存占用率從大到小排序
                  P 按照cpu占用率從大到小排序
                  N 按照PID從大到小排序

配合R代表倒序

                  shift + > # 移動排序字段
                  shift + < # 移動排序字段

按上下鍵查看所有進程


                   f 增加顯示字段  (top 屬性 增加)
                   k 給進程發信號  (刪除)

                   數字1 :顯示所有cpu的信息




         2、管理進程
                  1、優先級設置
                  2、給進程發信號
                  kill
         3、HUP信號-》如何讓進程脫離當前終端運行
                   nohup
                   setsid
                   在子shell中提交任務
                   screen命令

                   top命令

 

第一行內容:

                             當前系統時間                 服務器運行時間              有3個用戶在登錄
                   top -  10:54:23 up 1 day,                17:56,                              3 users,

 

#平均負載(系統)

load average: 0.00, 0.01, 0.05

 


第二行內容:

                    總共122個任務            1個正在運行(R)         121個進入睡眠狀態的(S)            沒有停止(T)                0個僵屍進程(Z)
                    Tasks: 122 total,           1 running,                      121 sleeping,                                   0 stopped,                       0 zombie

 


第三行內容:
                                   用戶態     內核態        優先級      空閑         等待(wait)                          硬中斷      軟中斷      虛擬機占用物理機CPU的百分比
                   %Cpu(s): 0.1 us,      0.1 sy,        0.0 ni,      99.8 id,     0.0 wa,(io輸入輸出)            0.0 hi,      0.0 si,       0.0 st (被偷的值)

 


第四行:內存
KiB Mem : 2028116 total, 150780 free, 144108 used, 1733228 buff/cache

第五行:swap虛擬內存

KiB Swap: 2097148 total, 2097148 free, 0 used. 1645080 avail Mem

 

第六行:

            進程號    用戶        (比右邊的大20)優先級      虛擬內存    物理內存      共享內存         狀態      占CPU的百分比        占內存的百分比
            PID         USER     (比右邊的大20)PR  NI       VIRT          RES             SHR               S           %CPU                      %MEM

 

運行時間 進程的運行命令
TIME+ COMMAND


中斷:硬中斷
中斷是系統用來影響硬件設備請求的一種機制,它會打斷進程的正常調度和執行,然后調用內核中的中斷處理程序來影響設備的請求

 

軟中斷:
             事實上,為了解決中斷處理程序執行過長的和丟失中斷的問題,Linux將中斷處理過程分成了兩個階段:
             第一階段:用來快速處理(硬中斷)中斷,它在中斷禁止模式下運行,主要處理跟硬件緊密相關工作
             第二階段:用來延遲處理第一階段未完成的工作,通常以內核線程的方式運行。


top命令使用:
      -d:指定刷新時間
      -p:指定pid
      -u:指定用戶
      -b:保存到文件中
      -n:指定次數

      z:高亮顯示
      b:運行的進程,高亮顯示
      s:修改刷新時間
      M:按照內存排序
      P:按照CPU排序
      R:倒敘
      f:自定義顯示字段
      q:退出

kill信號管理:
    1:重新加載
    2:類似於ctrl + c
    3:正常終止進程
    9:強制殺死(少用)
    15:默認信號,進程終止
-------------------------------------
    18:重新喚起停止的進程
    19:直接暫停
    20:把進程放到后台並暫停


pkill
  -t:指定終端
  -9:強制,把終端運行的命令和終端一並殺掉

  killall 進程名


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM