您好,登錄后才能下訂單哦!
這篇文章主要講解了“Linux進程啟動方式有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Linux進程啟動方式有哪些”吧!
Linux進程有2種啟動方式:1、手工啟動進程,指的是由用戶輸入命令直接啟動一個進程,根據所啟動的進程類型和性質的不同,其又可以細分為前臺啟動和后臺啟動兩種方式。2、調度啟動進程(事先進行設置,根據用戶要求,進程可以自行啟動);Linux中任務可以被配置在指定的時間、日期或者系統平均負載量低于指定值時自動啟動。
在 Linux 系統中,每個進程都有一個唯一的進程號(PID),方便系統識別和調度進程。通過簡單地輸出運行程序的程序名,就可以運行該程序,其實也就是啟動了一個進程。
總體來說,啟動一個進程主要有 2 種途徑,分別是通過手工啟動和通過調度啟動(事先進行設置,根據用戶要求,進程可以自行啟動),手動啟動也可以分為前臺啟動與后臺啟動。
Linux手工啟動進程
手工啟動進程指的是由用戶輸入命令直接啟動一個進程,根據所啟動的進程類型和性質的不同,其又可以細分為前臺啟動和后臺啟動兩種方式。
前臺啟動進程
前臺啟動進程是手工啟動進程最常用的方式,因為當用戶輸入一個命令并運行,就已經啟動了一個進程,而且是一個前臺的進程,此時系統其實已經處于一個多進程的狀態(一個是 Shell 進程,另一個是新啟動的進程)。
實際上,系統自動時就有許多進程悄悄地在后臺運行,不過這里為了方便讀者理解,并沒有將這些進程包括在內。
當我們前臺啟動一個進程,并且進程沒有退出時,我們使用 ps 命令,就可以看到該進程,比如,我們以前臺進程的方式,運行 top 命令,具體命令如下:
top
運行后,終端輸出如下:
我們看到,此時,我們以前臺的方式運行了 top 進程,現在,我們使用 ps 命令,查看該進程,具體命令如下:
ps -elf |grep top
運行后,終端輸出如下:
我們看到,我們使用了 ps 命令,可以看到正在運行的 top 進程,測試完畢,我們按下 q 退出 top 進程。
后臺啟動進程
進程直接從后臺運行,用的相對較少,除非該進程非常耗時,且用戶也不急著需要其運行結果的時候,例如,用戶需要啟動一個需要長時間運行的格式化文本文件的進程,為了不使整個 Shell 在格式化過程中都處于 “被占用” 狀態,從后臺啟動這個進程是比較明智的選擇。
從后臺啟動進程,其實就是在命令結尾處添加一個 “&” 符號。輸入命令并運行之后,Shell 會提供給我們一個數字,此數字就是該進程的進程號。然后直接就會出現提示符,用戶就可以繼續完成其他工作,我們輸入以下代碼,以后臺運行 top 命令,具體命令如下:
top &
運行后,終端輸出如下:
我們看到,此時,我們以后臺的方式運行了 top 進程,現在,我們使用 ps 命令,查看該進程,具體命令如下:
ps -elf |grep top
運行后,終端輸出如下:
我們看到,我們使用了 ps 命令,可以看到正在后臺運行的 top 進程,測試完畢,我們使用 kill 命令,殺掉正在后天運行的 top 進程,具體命令如下:
kill 25439
這里的 25439 是進程 id,我們使用該命令,就可以殺死正在后臺運行的進程。
說明
以上介紹了手工啟動的兩種方式,實際上它們有個共同的特點,就是新進程都是由當前 Shell 這個進程產生的,換句話說,是 Shell 創建了新進程,于是稱這種關系為進程間的父子關系,其中 Shell 是父進程,新進程是子進程。
值得一提的是,一個父進程可以有多個子進程,通常子進程結束后才能繼續父進程;當然,如果是從后臺啟動,父進程就不用等待子進程了。
Linux系統調度啟動進程
在 Linux 系統中,任務可以被配置在指定的時間、日期或者系統平均負載量低于指定值時自動啟動。
例如,Linux 預配置了重要系統任務的運行,以便可以使系統能夠實時被更新,系統管理員也可以使用自動化的任務來定期對重要數據進行備份。
實現調度啟動進程的方法有很多,例如通過 crontab、 at 等命令。
感謝各位的閱讀,以上就是“Linux進程啟動方式有哪些”的內容了,經過本文的學習后,相信大家對Linux進程啟動方式有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。