作業系統 程序概念

2022-06-10 13:39:06 字數 1551 閱讀 8156

程序是具有獨立功能的程式關於某個資料集合上的一次執行活動,是系統進行資源分配和排程的獨立單位

1、程序是程式的一次執行過程,是對cpu的抽象,是正在執行的程式的抽象

2、每個程序具有獨立的位址空間

3、作業系統通過排程將cpu的控制權交給某個程序

又稱程序描述符,程序屬性,是作業系統用於管理控制程序的乙個專門的資料結構,記錄程序的各種屬性

pcb是系統感知程序存在的唯一標誌,程序與pcb是一一對應的

程序表:所有程序的pcb集合

程序描述資訊

程序識別符號pid,唯一,整數,程序名(不唯一),使用者識別符號userid,程序組關係(兄弟父子關係)

程序控制資訊

當前狀態,優先順序,**執行入口,執行統計資訊,程序間同步和通訊,程序佇列指標,程序訊息佇列指標

所擁有的資源和使用情況

虛擬位址空間的狀況,開啟檔案列表

cpu現場資訊

程序不執行時的暫存器值和指向該程序的頁表的指標

執行態(running)

占有cpu,並在cpu上執行

就緒態(ready)

已經具備執行條件,但由於沒有空閒cpu,而暫時不能執行

等待態(waiting/blocked)

或叫阻塞態,封鎖態,睡眠態,因等待某一事件而暫時不能執行

作業系統通常將程序狀態分為多種模型,這裡給出三狀態和五狀態

1、作業系統為每一類程序建立乙個或多個佇列

2、佇列元素為pcb

3、伴隨程序狀態的改變,其pcb從乙個佇列進入另乙個佇列

上圖中,乙個程序建立後經許可(提交)進入就緒佇列,經過排程進入cpu,如果正常處理完畢會釋放,如超時重新進入就緒佇列

如果還有各種等待事件,則進入各類等待事件佇列,當相應的事件發生後再次進入就緒佇列,等待排程進入cpu

六、上下文切換

定義:cpu硬體狀態從乙個程序換到另乙個程序的過程

程序在執行時,其硬體狀態儲存在cpu上的暫存器中(只有一套)

程序不執行時,這些暫存器的值儲存在程序控制塊pcb中,當作業系統要執行乙個新的程序時,需要將這個程序的pcb中的值送到

以上是作業系統關於程序的一些概述,摘自北大陳向群教授的作業系統課程學習

作業系統 程序概念

三 pcb包含哪些資訊 四 程序狀態及狀態轉換 五 程序的特性 六 程序佇列 七 上下文切換 程序是具有獨立功能的程式關於某個資料集合上的一次執行活動,是系統進行資源分配和排程的獨立單位 動態性 獨立性 併發性是程序的三大特性。在程式執行的過程中,它的狀態是在不斷變化的。例如乙個程式在執行過程中,它...

作業系統 程序管理 概念 死鎖

死鎖 死鎖的原因 1 因為系統資源不足。2 程序執行推進的順序不合適,保證有先後順序。3 資源分配不當等。死鎖的必要條件.產生死鎖的四個必要條件 1 互斥條件 乙個資源每次只能被乙個程序使用。2 請求與保持條件 乙個程序因請求資源而阻塞時,對已獲得的資源保持不放。3 不剝奪條件 程序已獲得的資源,在...

作業系統 作業系統的概念

3 作業系統的目標和功能 作業系統用做擴充機器 計算機系統自上而下可區分為 從作業系統的角度 計算機系統的概述 在計算機中的cpu 記憶體 輸入 輸出裝置等硬體,提供了基本的計算機資源 應用程式等規定了按何種方式來使用這些資源來為使用者服務 作業系統控制和協調各使用者程式對硬體的分配和呼叫。所以作業...