1. 程式人生 > >網際網路技術學習26——linux程式和程序的概念

網際網路技術學習26——linux程式和程序的概念

程式是靜態概念,本身作為一種軟體資源長期儲存;而程序是程式執行的過程,它是動態的,是有一定什麼週期的,是動態產生和消亡的。一個程式可以有多個程序共用,一個程序在活動中也可順序執行若干個程式。他們沒有認識關係。

在linux系統中,分為前臺程序和後臺程序,前臺程序意思就是當一個命令執行的過程中,不允許其他的命令執行,我們之前所學習的常用命令基本上都是前臺程序。

比如我們查詢一個檔案:find / -name init 在這個命令執行中其他命令是不可以執行的。

而後臺程序則執行多個程序一起同步執行:只需要在最後加上“&”,即表示為後臺程序(注意後臺程序是不能互動執行的,比如ping命令等)

 

程序管理命令

命令:w(who)

描述:檢視使用者資訊

TTY:表示以什麼方式登入這臺計算機(pts/0 遠端登入)

FROM:表示從什麼位置登入的。

[email protected]:表示登入時間、

IDLE:表示使用者閒置的時間。

JCPU:表示當前這個使用者執行所有程序耗時總和

PCPU:表示執行程式耗費的時間

load avegage : 表示系統的負載值,分別顯示過去的1、5、15分鐘系統的負載程度,如果是想知道系統的平均負載,三者之和除以3即可,最終結果在0.8以下表示正常,如果達到幾十或上百,那麼系統負載非常高,可能無法響應任何命令

WHAT : 表示當前執行的什麼任務。

 

命令:ps(process status)

-a:顯示所有使用者的程序

-l:長格式顯示

STAT:當前狀態 S休眠; D不可中斷的休眠狀態;R執行狀態; Z僵死狀態; R停止

UID : 表示當前啟動程序的使用者

PID : 程序號

PPID:父程序號

TTY:程序啟動的終端

IN:程序的優選級

TIME:程序啟動以來佔用的實際時間

CMD:程序的命令

其他選項

  -u:顯示使用者名稱和啟動時間

  -x:顯示沒有控制終端的程序

  -e:顯示所有程序,包括沒有控制終端的程序

  -w:寬巨集顯示,可以使用多個w進行價款顯示

 

殺死程序

該程序佔用了過多的CPU時間

該程序鎖住了一個終端,使其他前臺程序無法執行

執行時間過長,沒有預期效果

成為了系統負載主要負擔

無法正常退出

。。。。

 

命令:kill [程序號] 關閉程序 kill 1234

  kill -9 [程序號] 強制關閉程序

  kill -1 [程序號] 重慶程序

  xkill 關閉圖形程式

  killall 結束所有程序

  查詢服務程序號:pgrep [服務名稱]

  關閉程序:pkill [程序名]

 

命令:nohup

語法:nohup program &

描述:是程序在使用者退出登入後仍舊繼續執行

 

終止一個程式的執行 : ctrl + c

掛起一個程式的執行:ctrl + z

 

命令:jobs

語法:jobs

把任務恢復到前臺執行 fg [任務編號]

把任務恢復到後臺執行 bg 【任務編號】

 

命令:top

-  d:指定重新整理時間間隔

-  c:顯示整個命令列的詳細資訊

-  u:可檢視指定使用者的程序

-  k:終止正在執行的程序

描述:程序狀態顯示和程序控制,每5秒自動重新整理一次(動態顯示)