• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            天之道

            享受編程的樂趣。
            posts - 118, comments - 7, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            init進程 與僵尸進程

            Posted on 2013-05-14 17:32 hoshelly 閱讀(495) 評論(0)  編輯 收藏 引用 所屬分類: Linux
            在說明f o r k函數時,一定是一個父進程生成一個子進程。上面又說明了子進程將其終止狀態返回給父進程。但是如果父進程在子進程之前終止,則將如何呢?其回答是對于其父進程已經終止的所有進程,它們的父進程都改變為i n i t進程。
            我們稱這些進程由i n i t進程領養。其操作過程大致是:在一個進程終止時,內核逐個檢查所有活動進程,以判斷它是否是正要終止的進程的子進程,如果是,則該進程的父進程I D就更改為1 ( i n i t進程的I D )。這種處理方法保證了每個進程有一個父進程。

            如果子進程在父進程之前終止,那么父進程又如何能在做相應檢查時得到子進程的終止狀態呢?對此問題的回答是內核為每個終止子進程保存了一定量的信
            息,所以當終止進程的父進程調用 w a i t或waitpid 時,可以得到有關信息。這種信息至少包括進程I D、該進程的終止狀態、以反該進程使用的 C P U時間總量。內核可以釋放終止進程所使用的所有存儲器,關閉其所有打開文件。在 U N I X術語中,一個已經終止、但是其父進程尚未對其進行善后處理(獲取終止子進程的有關信息、釋放它仍占用的資源)的進程被稱為僵死進程(z o m b i e)。p s ( 1 )命令將僵死進程的狀態打印為 Z。

            一個由i n i t進程領養的進程終止時會發生什么?它會不會變成一個僵死進程?對此問題的回答是“否”,因為i n i t被編寫成只要有一個子進程終止, i n i t就會調用一個w a i t函數取得其終止狀態。這樣也就防止了在系統中有很多僵死進程。當提及“一個i n i t的子進程”時,這指的是i n i t直接產生的進程,或者是其父進程已終止,由init 領養的進程。
            国产成人久久精品麻豆一区| 久久99国产精品久久99| 久久综合一区二区无码| 四虎影视久久久免费| 亚洲欧美国产精品专区久久| 亚洲精品国产美女久久久| 成人国内精品久久久久影院| 久久亚洲电影| 精品久久久久久| 狠狠色丁香久久婷婷综合蜜芽五月 | 亚洲欧美日韩久久精品| 久久无码人妻一区二区三区午夜| 26uuu久久五月天| 久久久久久久久久久久久久| 97精品伊人久久久大香线蕉 | 久久免费的精品国产V∧| 国产精品无码久久综合网| 久久久无码精品亚洲日韩蜜臀浪潮| 91久久成人免费| 久久精品一本到99热免费| 久久精品综合网| 久久人妻少妇嫩草AV蜜桃| 久久成人影院精品777| 日韩av无码久久精品免费| 国内精品伊人久久久影院| 久久久久噜噜噜亚洲熟女综合| 国内精品伊人久久久久av一坑 | 狠狠色综合网站久久久久久久| 亚洲狠狠婷婷综合久久久久| 欧美久久久久久精选9999| 国产精品久久久福利| 97久久精品无码一区二区天美| 久久精品国产亚洲AV蜜臀色欲| 久久国产劲爆AV内射—百度| 久久精品九九亚洲精品天堂| 久久婷婷成人综合色综合| 久久久无码精品亚洲日韩蜜臀浪潮| 亚洲国产综合久久天堂 | 99久久婷婷免费国产综合精品| 日韩人妻无码精品久久久不卡| 亚洲精品第一综合99久久|