亚洲欧美精品沙发,日韩在线精品视频,亚洲Av每日更新在线观看,亚洲国产另类一区在线5

<pre id="hdphd"></pre>

  • <div id="hdphd"><small id="hdphd"></small></div>
      學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 > Linux的進程之間有哪些關(guān)系

      Linux的進程之間有哪些關(guān)系

      時間: 加城1195 分享

      Linux的進程之間有哪些關(guān)系

        Linux的進程相互之間有一定的關(guān)系。比如說,在Linux的進程基礎(chǔ)中,我們看到,每個進程都有父進程,而所有的進程以init進程為根,形成一個樹狀結(jié)構(gòu)。我們在這里講解進程組和會話,以便以更加豐富的方式了管理進程。那么具體有哪些關(guān)系呢?一起來學(xué)習(xí)下吧。

        進程組 (process group)

        每個進程都會屬于一個進程組(process group),每個進程組中可以包含多個進程。進程組會有一個進程組領(lǐng)導(dǎo)進程 (process group leader),領(lǐng)導(dǎo)進程的PID (PID見Linux的進程基礎(chǔ))成為進程組的ID (process group ID, PGID),以識別進程組。

        代碼如下:

        $ps -o pid,pgid,ppid,comm | cat《/p》 《p》 PID PGID PPID COMMAND

        17763 17763 17751 bash

        18534 18534 17763 ps

        18535 18534 17763 cat

        PID為進程自身的ID,PGID為進程所在的進程組的ID, PPID為進程的父進程ID。從上面的結(jié)果,我們可以推測出如下關(guān)系:

      Linux的進程之間有哪些關(guān)系

        圖中箭頭表示父進程通過fork和exec機制產(chǎn)生子進程。ps和cat都是bash的子進程。進程組的領(lǐng)導(dǎo)進程的PID成為進程組ID。領(lǐng)導(dǎo)進程可以先終結(jié)。此時進程組依然存在,并持有相同的PGID,直到進程組中最后一個進程終結(jié)。

        我們將一些進程歸為進程組的一個重要原因是我們可以將信號發(fā)送給一個進程組。進程組中的所有進程都會收到該信號。我們會在下一部分深入討論這一點。

        會話 (session)

        更進一步,在shell支持工作控制(job control)的前提下,多個進程組還可以構(gòu)成一個會話 (session)。bash(Bourne-Again shell)支持工作控制,而sh(Bourne shell)并不支持。

        會話是由其中的進程建立的,該進程叫做會話的領(lǐng)導(dǎo)進程(session leader)。會話領(lǐng)導(dǎo)進程的PID成為識別會話的SID(session ID)。會話中的每個進程組稱為一個工作(job)。會話可以有一個進程組成為會話的前臺工作(foreground),而其他的進程組是后臺工作(background)。每個會話可以連接一個控制終端(control terminal)。當(dāng)控制終端有輸入輸出時,都傳遞給該會話的前臺進程組。由終端產(chǎn)生的信號,比如CTRL+Z, CTRL+\,會傳遞到前臺進程組。

        會話的意義在于將多個工作囊括在一個終端,并取其中的一個工作作為前臺,來直接接收該終端的輸入輸出以及終端信號。 其他工作在后臺運行。

        一個命令可以通過在末尾加上&方式讓它在后臺運行:

        代碼如下:

        $ping localhost 》 log &

        此時終端顯示:

        代碼如下:

        [1] 10141

        括號中的1表示工作號,而10141為PGID

        我們通過如下方式查詢更加詳細(xì)的信息:

        代碼如下:

        $ps -o pid,pgid,ppid,sid,tty,comm

        (tty表示控制終端)

        信號可以通過kill

        代碼如下:

        $kill -SIGTERM -10141

        或者

        代碼如下:

        $kill -SIGTERM %1

        的方式來發(fā)送給工作組。上面的兩個命令,一個是發(fā)送給PGID(通過在PGID前面加-來表示是一個PGID而不是PID),一個是發(fā)送給工作1(%1),兩者等價。

        一個工作可以通過$fg從后臺工作變?yōu)榍芭_工作:

        代碼如下:

        $cat 》 log &

        $fg %1

        當(dāng)我們運行第一個命令后,由于工作在后臺,我們無法對命令進行輸入,直到我們將工作帶入前臺,才能向cat命令輸入。在輸入完成后,按下CTRL+D來通知shell輸入結(jié)束。

        進程組(工作)的概念較為簡單易懂。而會話主要是針對一個終端建立的。當(dāng)我們打開多個終端窗口時,實際上就創(chuàng)建了多個終端會話。每個會話都會有自己的前臺工作和后臺工作。這樣,我們就為進程增加了管理和運行的層次。在沒有圖形化界面的時代,會話允許用戶通過shell進行多層次的進程發(fā)起和管理。比如說,我可以通過shell發(fā)起多個后臺工作,而此時標(biāo)準(zhǔn)輸入輸出并不被占據(jù),我依然可以繼續(xù)其它的工作。如今,圖形化界面可以幫助我們解決這一需求,但工作組和會話機制依然在Linux的許多地方應(yīng)用。

        補充:系統(tǒng)常用維護技巧

        1,在 &ldquo;開始&rdquo; 菜單中選擇 &ldquo;控制面板&rdquo; 選項,打開 &ldquo;控制面板&rdquo; 窗口,單擊 &ldquo;管理工具&rdquo; 鏈接

        2,在打開的 &ldquo;管理工具&rdquo; 窗口中雙擊 &ldquo;事件查看器&rdquo; 圖標(biāo)

        3, 接著會打開 &ldquo;事件查看器&rdquo; 窗口

        4,在右側(cè)窗格中的樹狀目錄中選擇需要查看的日志類型,如 &ldquo;事件查看器本地--Win日志--系統(tǒng)日志,在接著在中間的 &ldquo;系統(tǒng)&rdquo; 列表中即查看到關(guān)于系統(tǒng)的事件日志

        5,雙擊日志名稱,可以打開 &ldquo;事件屬性&rdquo; 對話框,切換到 &ldquo;常規(guī)&rdquo; 選項卡,可以查看該日志的常規(guī)描述信息

        6,切換到 &ldquo;詳細(xì)信息&rdquo; 選項卡,可以查看該日志的詳細(xì)信息

        7,打開 &ldquo;控制面板&rdquo; 窗口,單擊 &ldquo;操作中心&rdquo; 鏈接,打開 &ldquo;操作中心&rdquo; 窗口,展開 &ldquo;維護&rdquo; 區(qū)域

        8,單擊 &ldquo;查看可靠性歷史記錄&rdquo; 鏈接,打開 &ldquo;可靠性監(jiān)視程序&rdquo; 主界面,如圖所示, 用戶可以選擇按天或者按周為時間單位來查看系統(tǒng)的穩(wěn)定性曲線表,如果系統(tǒng)近日沒出過什么狀況, 那么按周來查看會比較合適。觀察圖中的曲線可以發(fā)現(xiàn),在某段時間內(nèi),系統(tǒng)遇到些問題,可靠性指數(shù)曲線呈下降的趨勢,并且在這段時間系統(tǒng)遇到了三次問題和一次警告,在下方的列表中可以查看詳細(xì)的問題信息。

        相關(guān)閱讀:系統(tǒng)故障導(dǎo)致死機怎么解決

        1、病毒原因造成電腦頻繁死機

        由于此類原因造成該故障的現(xiàn)象比較常見,當(dāng)計算機感染病毒后,主要表現(xiàn)在以下幾個方面:

       ?、傧到y(tǒng)啟動時間延長;

        ②系統(tǒng)啟動時自動啟動一些不必要的程序;

       ?、蹮o故死機

       ?、芷聊簧铣霈F(xiàn)一些亂碼。

        其表現(xiàn)形式層出不窮,由于篇幅原因就介紹到此,在此需要一并提出的是,倘若因為病毒損壞了一些系統(tǒng)文件,導(dǎo)致系統(tǒng)工作不穩(wěn)定,我們可以在安全模式下用系統(tǒng)文件檢查器對系統(tǒng)文件予以修復(fù)。

        2、由于某些元件熱穩(wěn)定性不良造成此類故障(具體表現(xiàn)在CPU、電源、內(nèi)存條、主板)

        對此,我們可以讓電腦運行一段時間,待其死機后,再用手觸摸以上各部件,倘若溫度太高則說明該部件可能存在問題,我們可用替換法來診斷。值得注意的是在安裝CPU風(fēng)扇時最好能涂一些散熱硅脂,但我在某些組裝的電腦上卻是很難見其蹤影,實踐證明,硅脂能降低溫度5&mdash;10度左右,特別是P Ⅲ 的電腦上,倘若不涂散熱硅脂,計算機根本就不能正常工作,曾遇到過一次此類現(xiàn)象。該機主要配置如下:磐英815EP主板、PⅢ733CPU、133外頻的128M內(nèi)存條,當(dāng)該機組裝完后,頻繁死機,連Windows系統(tǒng)都不能正常安裝,但是更換賽揚533的CPU后,故障排除,懷疑主板或CPU有問題,但更換同型號的主板、CPU后該故障也不能解決。后來由于發(fā)現(xiàn)其溫度太高,在CPU上涂了一些散熱硅脂,故障完全解決。實踐證明在賽揚533以上的CPU上必須要涂散熱硅脂,否則極有可能引起死機故障。

        3、由于各部件接觸不良導(dǎo)致計算機頻繁死機

        此類現(xiàn)象比較常見,特別是在購買一段時間的電腦上。由于各部件大多是靠金手指與主板接觸,經(jīng)過一段時間后其金手指部位會出現(xiàn)氧化現(xiàn)象,在拔下各卡后會發(fā)現(xiàn)金手指部位已經(jīng)泛黃,此時,我們可用橡皮擦來回擦拭其泛黃處來予以清潔。

        4、由于硬件之間不兼容造成電腦頻繁死機

        此類現(xiàn)象常見于顯卡與其它部件不兼容或內(nèi)存條與主板不兼容,例如SIS的顯卡,當(dāng)然其它設(shè)備也有可能發(fā)生不兼容現(xiàn)象,對此可以將其它不必要的設(shè)備如Modem、聲卡等設(shè)備拆下后予以判斷。

        5、軟件沖突或損壞引起死機

        此類故障,一般都會發(fā)生在同一點,對此可將該軟件卸掉來予以解決。

      4007653