首頁 > 運維 > linux運維 > 主體

Linux進程有幾種啟動方式

青灯夜游
發布: 2023-02-10 10:22:06
原創
3801 人瀏覽過

Linux進程有2種啟動方式:1、手動啟動進程,指的是由用戶輸入命令直接啟動一個進程,根據所啟動的進程類型和性質的不同,其又可以細分為前台啟動和背景啟動兩種方式。 2.調度啟動進程(事先進行設置,根據使用者要求,進程可以自行啟動);Linux中任務可以被配置在指定的時間、日期或系統平均負載量低於指定值時自動啟動。

Linux進程有幾種啟動方式

本教學操作環境:linux7.3系統、Dell G3電腦。

在 Linux 系統中,每個行程都有一個唯一的進程號(PID),方便系統辨識和調度進程。透過簡單地輸出運行程序的程序名,就可以運行該程序,其實也就是啟動了一個進程。

整體來說,啟動一個進程主要有2 種途徑,分別是透過手動啟動和透過調度啟動(事先進行設置,根據使用者要求,進程可以自行啟動),手動啟動也可以分為前台啟動與背景啟動。

Linux手動啟動進程


# 手動啟動進程指的是由使用者輸入命令直接啟動一個進程,根據所啟動的進程類型和性質的不同,其可細分為前台啟動和後台啟動兩種方式。

前台啟動進程

前台啟動進程是手動啟動進程最常用的方式,因為當使用者輸入一個命令並運行,就已經啟動了一個進程,而且是一個前台的進程,此時系統其實已經處於一個多進程的狀態(一個是Shell 進程,另一個是新啟動的進程)。

實際上,系統自動時就有許多進程悄悄地在後台運行,不過這裡為了方便讀者理解,並沒有將這些進程包括在內。

當我們前台啟動一個進程,並且進程沒有退出時,我們使用ps 命令,就可以看到該進程,比如,我們以前台進程的方式,運行top 命令,具體命令如下:

top
登入後複製

運行後,終端輸出如下:

Linux進程有幾種啟動方式

#我們看到,此時,我們以前台的方式運行了top 進程,現在,我們使用ps 命令,查看該進程,具體命令如下:

ps -elf |grep top
登入後複製

運行後,終端輸出如下:

Linux進程有幾種啟動方式

我們看到,我們使用了ps 命令,可以看到正在運行的top 進程,測試完畢,我們按下q 退出top 進程。

後台啟動進程

進程直接從後台運行,用的相對較少,除非該進程非常耗時,且用戶也不急於其運行結果的時候,例如,使用者需要啟動一個需要長時間運行的格式化文字檔案的進程,為了不讓整個Shell 在格式化過程中都處於「被佔用」 狀態,從後台啟動這個進程是比較明智的選擇。

從後台啟動進程,其實就是在指令結尾處加上一個 “&” 符號。輸入指令並執行之後,Shell 會提供給我們一個數字,此數字就是該行程的進程號。然後直接就會出現提示符,使用者就可以繼續完成其他工作,我們輸入以下程式碼,以後台運行top 命令,具體命令如下:

top &
登入後複製

運行後,終端輸出如下:

Linux進程有幾種啟動方式

我們看到,此時,我們以後台的方式運行了top 進程,現在,我們使用ps 命令,查看該進程,具體命令如下:

ps -elf |grep top
登入後複製

運行之後,終端輸出如下:

Linux進程有幾種啟動方式

我們看到,我們使用了ps 指令,可以看到正在後台執行的top 進程,測試完畢,我們使用 kill 指令,殺掉正在後天運行的top 進程,具體命令如下:

kill 25439
登入後複製

這裡的25439 是進程id,我們使用該命令,就可以殺死正在後台運行的進程。

說明

以上介紹了手工啟動的兩種方式,實際上它們有個共同的特點,就是新進程都是由當前Shell 這個進程產生的,換句話說,是Shell 創建了新進程,於是稱這種關係為進程間的父子關係,其中Shell 是父進程,新進程是子進程。

值得一提的是,一個父進程可以有多個子進程,通常子進程結束後才能繼續父進程;當然,如果是從後台啟動,父進程就不用等待子進程了。

Linux系統排程啟動程序


在 Linux 系統中,任務可以被設定在指定的時間、日期或系統平均負載量低於指定值時自動啟動。

例如,Linux 預先配置了重要係統任務的運行,以便可以使系統能夠即時被更新,系統管理員也可以使用自動化的任務來定期對重要資料進行備份。

實現調度啟動進程的方法有很多,例如透過 crontab、 at 等指令。

相關推薦:《Linux影片教學

以上是Linux進程有幾種啟動方式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!