Linux學習筆記(十四)程序

2021-06-25 22:11:19 字數 1928 閱讀 4546

程序是如何工作的:

當系統啟動的時候,核心先把一些自己的程式初始化為程序,然後執行乙個叫做init的程式。init再依次執行一系列的稱為init指令碼的shell指令碼(位於/etc)

,它們可以啟動所有的系統服務。其中許多系統服務以守護(daemon)程式的形式實現,守護程式僅在後台執行,沒有任何使用者介面。這樣,即使我們沒有登入系統,至少系統也在忙於執行一些例行事務。

核心維護每個程序的資訊,以此來保持事情有序。例如,系統分配給每個程序乙個數字,這個數字叫做程序 id 或 pid。pid 號按公升序分配,init 程序的 pid 總是1。核心也對分配給每個程序的記憶體進行跟蹤。像檔案一樣,程序也有所有者和使用者 id,有效使用者 id,等等。

檢視程序-ps

可以看出,預設情況下,ps不會顯示很多程序資訊,只是列出與當前終端會話相關的程序。tty是teleype的簡稱,是指程序的控制終端

。time欄位表示程序所消耗的cpu時間數量。

(1) 加上「x」選項,告訴ps命令,展開所有程序,不管它們由什麼終端控制。tty為?,表示沒有控制終端,stat顯示了程序當前狀態,程序的狀態包括:

(2) 另乙個選項組合時aux,將會提供給我們更多資訊。

命令列標題的含義如下:

動態檢視程序-top

top程式使用來檢視系統中「頂端」程序的。top顯示結果由兩部分組成:最上面是系統概要,下面是程序列表。

控制程序

輸入gedit命令時,將會彈出記事本程式,但注意shell提示符並沒有返回。這是因為shell正在等待這個程式結束,如果關閉getdit視窗,shell提示符就返回了。

中斷乙個程序

在乙個終端,輸入ctrl+c,將中斷乙個程式,許多命令列程式可以被中斷。

將乙個程序放置到後台

啟動乙個程式,讓它立即在後台執行,我們可以在程式命令之後,加上「&」字元:

jobs命令可以檢視當前正在執行的任務。

停止乙個程序

輸入ctrl-z,可以停止乙個前台程序,但並沒有終止。使用fg命令,可以恢復程式到前台,或者用bg命令把程式移到後台。

kill命令可以「殺死」程序,單並不是確切地「殺死」程式,而是給程式傳送訊號。使用ctrl-c時,會傳送

乙個int(中斷)的訊號;當使用ctrl-z時,則傳送乙個叫做tstp(終端停止)的訊號。

kill的語法一般為:kill [-signal] pid...

示例:

注意,既可以使用號碼,也可以用名字,不過要在名字前加字母「sig」,來指定所要傳送的訊號。

其他常用訊號:

Linux學習筆記(十四 壓縮命令)

常用壓縮格式 zip gz.bz2 tar gz.tar bz2zip 壓縮檔案名 原檔案 壓縮檔案 zip r 壓縮檔案名 源目錄 壓縮目錄 unzip 壓縮檔案 解壓縮.zip檔案 gzip 原檔案 壓縮為.gz格式的壓縮檔案,原檔案會消失 gzip c 原檔案 壓縮檔案 壓縮為.gz格式,原檔...

Linux學習筆記十四軟體安裝

軟體包分類 rpm包依賴 包全名與包名 包全名 操作的包是沒有安裝軟體包時,使用包全名,而且要注意路徑。包名 操作已經安裝的軟體時,使用包名。是搜尋 var lib rpm 中的資料庫 rpm 安裝 rpm ivh 包全名 選項 i install 安裝 v varbose 顯示詳細資訊 h has...

Cty的Linux學習筆記(十四)

環境變數配置檔案 etc profile 預設了幾個重要的變數,例如path,user,logname,mail,inputrc,hostname,histsize,umask等 etc bashrc 預設umask以及psi,psi是輸入命令時前面的字串 bash profile 該檔案定義了使用...