日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

几种进程状态

發布時間:2024/2/28 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 几种进程状态 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

進程的幾種狀態

版權聲明:本文為博主原創文章,未經博主允許不得轉載。

進程:進程(Process)是計算機中的程序關于某數據集合上的一次運行活動,是系統進行資源分配和調度的基本單位。

進程狀態:一個進程的生命周期可以劃分為一組狀態,這些狀態刻畫了整個進程。進程狀態即體現一個進程的生命狀態。

進程狀態:

一般來說,進程有三個狀態,即就緒狀態,運行狀態,阻塞狀態。

運行態:進程占用CPU,并在CPU上運行;
???????就緒態:進程已經具備運行條件,但是CPU還沒有分配過來;
???????阻塞態:進程因等待某件事發生而暫時不能運行;

下面是3種狀態轉換圖

?

?

當然理論上上述三種狀態之間轉換分為六種情況;

???????運行——>就緒:1,主要是進程占用CPU的時間過長,而系統分配給該進程占用CPU的時間是有限的;2,在采用搶先式優先級調度算法的系統中,當有更高優先級的進程要運行時,該進程就被迫讓出CPU,該進程便由執行狀態轉變為就緒狀態。

???????就緒——>運行:運行的進程的時間片用完,調度就轉到就緒隊列中選擇合適的進程分配CPU

??????運行——>阻塞:正在執行的進程因發生某等待事件而無法執行,則進程由執行狀態變為阻塞狀態,如發生了I/O請求

??????阻塞——>就緒:進程所等待的事件已經發生,就進入就緒隊列

?

??????以下兩種狀態是不可能發生的:

????????阻塞——>運行:即使給阻塞進程分配CPU,也無法執行,操作系統在進行調度時不會從阻塞隊列進行挑選,而是從就緒隊列中選取

???????就緒——>阻塞:就緒態根本就沒有執行,談不上進入阻塞態。

?

在一些系統中,又增加了一些新狀態,如掛起狀態,可運行狀態,深度睡眠狀態,淺度睡眠狀態,暫停狀態,僵死狀態。

可運行狀態:運行狀態和就緒狀態的合并,表示進程正在運行或準備運行,Linux 中使用TASK_RUNNING 宏表示可運行狀態。

??????淺度睡眠狀態:進程正在睡眠(被阻塞),等待資源的到來是喚醒,也可以通過其他進程信號或時鐘中斷喚醒,進入運行隊列。Linux 中使用TASK_INTERRUPTIBLE 宏表示此狀態。

??????深度睡眠狀態:其和淺度睡眠基本類似,但不可被其他進程信號或時鐘中斷喚醒。Linux 中使用TASK_UNINTERRUPTIBLE 宏表示此狀態。

??????暫停狀態:進程暫停執行接受某種處理。Linux 使用TASK_STOPPED 宏表示此狀態。

??????僵死狀態:進程已經結束但未釋放進程控制塊(PCB),Linux 使用TASK_ZOMBIE 宏表示此狀態。

掛起狀態:在執行狀態的進程通過掛起即可進入就緒狀態,如圖所示,就緒狀態和阻塞狀態都分為活動態和靜止態。由活動態向靜止態轉換就是通過掛起實現的。

引入掛起狀態的原因有:

(1) 終端用戶的請求。當終端用戶在自己的程序運行期間發現有可疑問題時,希望暫時使自己的程序靜止下來。亦即,使正在執行的進程暫停執行;若此時用戶進程正處于就緒狀態而未執行,則該進程暫不接受調度,以便用戶研究其執行情況或對程序進行修改。我們把這種靜止狀態稱為掛起狀態。 

(2) 父進程請求。有時父進程希望掛起自己的某個子進程,以便考查和修改該子進程,或者協調各子進程間的活動。

(3) 負荷調節的需要。當實時系統中的工作負荷較重,已可能影響到對實時任務的控制時,可由系統把一些不重要的進程掛起,以保證系統能正常運行。

(4) 操作系統的需要。操作系統有時希望掛起某些進程,以便檢查運行中的資源使用情況或進行記賬。

具有掛起狀態的進程狀態轉換圖為:

?

有關參考文章有:http://www.2cto.com/os/201412/358908.html ?

? ? ? ? ? ? ? ? ? ? ? http://blog.chinaunix.net/uid-26126915-id-2948970.html

? ? ? ? ? ? ? ? ? ? ??http://blog.csdn.net/u012824097/article/details/52058395

總結

以上是生活随笔為你收集整理的几种进程状态的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。