作業系統 程序狀態

2021-10-17 15:22:43 字數 1542 閱讀 8379

程序從建立到執行,再到執行完畢銷毀的過程中,經歷了不同的程序狀態,程序狀態部分取決於程序當前的活動,可以將程序狀態分為(1)三狀態模型(2)五狀態模型(3)七狀態模型

包含程序三個最基本的狀態:

就緒態:程序具備執行條件,等待分配處理器;

執行態:程序占有處理器,正在執行;

等待態:程序等待發生某個事件。

其中:① 就緒態->執行態:cpu空閒時,排程程式選擇乙個就緒程序執行;

② 執行態->就緒態:程序執行時間片到,或出現更高優先順序程序,當前程序失去cpu執行權,轉為就緒態;

③ 執行態->等待態:程序等待i/o或事件完成,如等待外設資料傳輸完成或等待人工干預;

④ 等待態->就緒態:程序的i/o或者事件等待完成,程序轉為就緒態。

五狀態模型相較於三狀態模型,增加了建立態:程序被建立,以及終止態:程序終止。

其中:①  null->建立態:建立乙個程式,為程序建立必要的管理資訊;

⑥  執行態->終止態:程序退出。

其中就緒態和等待態也可以轉換為終止態(比如父程序可以在子程序不處於執行態的時候終止子程序),圖中沒有表示。

在執行虛擬記憶體管理的作業系統中,可以將暫時不用的程序(處於就緒態和等待態的程序)換出(swap out)到外部儲存裝置(如硬碟)中,在適當的時間再將其換入(swap in)到記憶體中,此時又增加了兩個狀態,稱為就緒掛起等待掛起狀態。

⑦ 就緒掛起態->就緒態:啟用掛起的就緒程序,將其調入記憶體;

⑧ 就緒態->就緒掛起態:將位於記憶體的就緒態程序換出到外部儲存裝置中;

⑨ 等待掛起態->等待態:啟用掛起的等待程序,將其調入記憶體;

⑩ 等待態->等待掛起態:將位於記憶體的等待態程序換出到外部儲存裝置中;

⑾ 等待掛起態->就緒掛起態:i/o或事件完成,等待掛起態的程序轉為就緒掛起;

⑿ 執行態->就緒掛起態:從執行態到就緒態(程序失去處理器)時,如果記憶體不足,會將程序交換到外部儲存裝置。

作業系統 程序的狀態

程序的狀態 程序的生命週期管理 程序的狀態變化模型 程序掛起模型 程序的生命期管理 程序的建立 程序執行 程序等待 程序喚醒 程序結束 程序建立 引起程序建立的三個主要事件 程序初始化時 mit程序 使用者請求建立新的程序 正在執行的程序執行了建立程序的系統呼叫 建立了程序控制塊 程序執行 核心選擇...

作業系統程序狀態模型

作業系統中的程序有三個基本狀態,分別是 就緒 執行 阻塞 就緒 萬事俱備,只欠cpu 執行 正在執行 阻塞 程序因為等待某些事件的發生而處於等待狀態 這三個狀態合起來,就是作業系統的 三狀態程序模型 如下圖 然後我們可能會疑惑,程序難道天生就是就緒態嗎?而且程序執行完後又是什麼態呢?實際上,程序還具...

作業系統之程序的狀態

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