程序執行時間的間斷性決定了程序可能具有多種狀態,事實上,執行上的程序可能有以下三種狀態。
1)就緒狀態
當程序已分配到除了cpu以外的所有必要資源後,只要再獲得cpu,便可以立即執行,程序的這時的狀態稱為就緒狀態。在乙個系統中處於就緒狀態的程序可能有多個,通常將他們排成乙個佇列,稱為就緒佇列。
2)執行狀態
程序獲得cpu資源,其程式正在執行,在微控制器系統中,只有乙個程序處於執行狀態,在多處理機系統中,則有多個程序處於執行狀態。
3)阻塞狀態
正在執行的程序由於發生某事件而暫時無法繼續執行時,便放棄處理劑而處於暫停狀態,亦即程序的執行受到阻塞,把這種暫停狀態稱為阻塞狀態,致使程序阻塞的典型事件有:請求i/o,申請緩衝空間等。通常將這種處於阻塞狀態的程序排成乙個佇列,有的系統則根據阻塞原因的不同把處於阻塞狀態的程序排成多個佇列。
處於就緒狀態的程序,在排程程式為之分配了處理機後,該程序便可執行,響應的,它就由就緒狀態轉為執行狀態。正在執行的程序也成為當前程序。如果因分配給它的時間片已完而被暫停執行,該程序便有執行狀態又恢復到就緒狀態;如果因某事件而使程序受阻(例如,程序請求訪問某臨界資源,而資源正在被其他程序訪問,),使之無法繼續執行,該程序由執行狀態轉變為阻塞狀態。
程序的三種基本狀態
程序的基本狀態 1 就緒 ready 狀態當程序已分配到除cpu 以外的所有必要資源後,只要在獲得 cpu,便可立即執行,程序這時的狀態就稱為就緒狀態。在乙個系統中處於就緒狀態的程序可能有多個,通常將他們排成乙個佇列,稱為就緒佇列。2 執行狀態 程序已獲得cpu 其程式正在執行。在單處理機系統中,只...
程序的三種基本狀態
程序的三種基本狀態 1 就緒狀態 程序已獲得除cpu外的所有必要資源,只等待cpu時的狀態。乙個系統會將多個處於就緒狀態的程序排成乙個就緒佇列。2 執行狀態 程序已獲cpu,正在執行。單處理機系統中,處於執行狀態的程序只乙個 多處理機系統中,有多個處於執行狀態的程序。3 阻塞狀態 正在執行的程序由於...
程序的三種狀態
程序的三種基本狀態 1 就緒狀態 程序已獲得除cpu外的所有必要資源,只等待cpu時的狀態。乙個系統會將多個處於就緒狀態的程序排成乙個就緒佇列。2 執行狀態 程序已獲cpu,正在執行。單處理機系統中,處於執行狀態的程序只乙個 多處理機系統中,有多個處於執行狀態的程序。3 阻塞狀態 正在執行的程序由於...