作業系統 程序的狀態與轉換

2022-01-30 12:29:34 字數 456 閱讀 2585

程序的三種基本狀態:

執行態-占用cpu,並在cpu執行,單核cpu最多只能有乙個程序處於執行態

就緒態-具備執行條件,但是沒有空閒cpu,暫時不能執行,萬事具備只差cpu

阻塞態-等待某事件

另外兩種狀態

建立態-分配資源,初始化pcb

終止態-**資源,撤銷pcb

狀態轉換

就緒態-->執行態 [程序被排程]

執行態-->就緒態 [時間片到,或cpu被其他高優先順序程序搶占]

執行態--(使用系統呼叫)-->阻塞態 [主動行為,等待某事件發生]

阻塞態-->就緒態 [被動行為,資源分配到位,等待事件發生]

建立態-->就緒態 [系統完成建立程序相關的工作]

執行態--(程序內部出現錯誤)-->終止態

作業系統 程序的狀態與轉換

程序是程式的一次執行。在這個執行過程中,有時程序正在被cpu處理,有時有需要等待cpu服務,可見程序的狀態會有各種變化,為了方便對各個程序的管理,作業系統需要將程序合理地劃分為幾種狀態。另外的兩種狀態 注意 不能由阻塞態之間轉換為執行態。處於阻塞態的程序需要先轉換為就緒態才能夠被排程,也不能由就緒態...

作業系統 程序的狀態及轉換

1.為什麼要分開就緒和阻塞狀態 答 因為就緒態只需要等待處理機,而阻塞態可能在等待輸入輸出,即使分配給處理機也是徒勞,所以兩狀態圖不妥。對於排程程序,只需要等待就緒佇列裡的程序,因為阻塞狀態可以轉換到就緒佇列裡去。2.程序五狀態 1 新狀態 程序已經建立,但未被os接納為可執行程序。還沒有申請到相應...

作業系統 程序狀態轉換(實驗一)

sdibt 計科181 用陣列模擬的 我的 有些bug,望大家提出寶貴意見 include includeusing namespace std 就緒 執行 執行 就緒 時間片完 阻塞 等待 阻塞 就緒 struct pcb 程序結構體 t int sumrun 0 最多可以同時執行多少程序 int...