程序基本狀態

2021-10-18 19:31:47 字數 966 閱讀 2517

1.1 程序三種基本狀態

就緒態

當程序已分配到除cpu以外的所有必要的資源,只要獲得處理機便可立即執行,這時的程序狀態稱為就緒狀態。

執行態

當程序已獲得處理機,其程式正在處理機上執行,此時的程序狀態稱為執行狀態。

阻塞態

正在執行的程序,由於等待某個事件發生而無法執行時,便放棄處理機而處於阻塞狀態。引起程序阻塞的事件可有多種,例如,等待i/o完成、申請緩衝區不能滿足、等待訊號等。

1.2 程序三種狀態間的轉換

就緒 → 執行

處於就緒狀態的程序,當程序排程程式為之分配了處理機資源後,該程序便由就緒狀態轉變成執行狀態。

執行 → 就緒

處於執行狀態的程序在其執行過程中,因分配給它的乙個時間片已用完而不得不讓出處理機,於是程序從執行狀態轉變成就緒狀態。

執行 → 阻塞

正在執行的程序因等待某種事件發生(如io請求)而無法繼續執行時,便從執行狀態變成阻塞狀態。

阻塞 → 就緒

處於阻塞狀態的程序,若其等待的事件已經完成(如io結束),於是程序由阻塞狀態轉變為就緒狀態。

r:可執行狀態。

s:可中斷的睡眠狀態。

d:不可中斷的睡眠狀態。

t:暫停狀態。

z:殭屍狀態,程序成為殭屍程序。

x:退出狀態,程序即將被銷毀。

補充:

s:會話組長

+:前台程序

l :多執行緒程式

<:比預設的優先順序高(數字越小優先順序越高。 nice/renice 命令可以調整優先順序)

n:比預設優先順序更低

t:正在被(如偵錯程式)跟蹤

程序五種基本狀態

建立狀態 程序在建立時需要申請乙個空白pcb,向其中填寫控制和管理程序的資訊,完成資源分配。如果建立工作無法完成,比如資源無法滿足,就無法被排程執行,把此時程序所處狀態稱為建立狀態 就緒狀態 程序已經準備好,已分配到所需資源,只要分配到cpu就能夠立即執行 執行狀態 程序處於就緒狀態被排程後,程序進...

程序的基本狀態及轉換

程序的基本狀態 1 就緒狀態 當程序已分配到除cpu以外的所有必要資源後,只要在獲得cpu,便可立即執行,程序這時的狀態就稱為就緒狀態。在乙個系統中處於就緒狀態的程序可能有多個,通常將他們排成乙個佇列,稱為就緒佇列。2 執行狀態 程序已獲得cpu,其程式正在執行。在單處理機系統中,只有乙個程序處於執...

程序的三種基本狀態

程序的基本狀態 1 就緒 ready 狀態當程序已分配到除cpu 以外的所有必要資源後,只要在獲得 cpu,便可立即執行,程序這時的狀態就稱為就緒狀態。在乙個系統中處於就緒狀態的程序可能有多個,通常將他們排成乙個佇列,稱為就緒佇列。2 執行狀態 程序已獲得cpu 其程式正在執行。在單處理機系統中,只...