作業系統複習 程序管理

2021-06-23 04:01:05 字數 952 閱讀 6115

程序是程式在核心定義的資料結構上的一次順序執行,它屬於動態的範疇,是操作資訊員進行資源分配和保護的基本單位。程序的執行環境稱為程序的映像,包括:各個通用暫存器的值、程序的記憶體映像、開啟檔案的狀態和程序占用資源的資訊等。其中最主要的部分就是記憶體映像,它包括:程序控制塊(process control block)、程序執行的程式、招待時所需要的資料、程序執行時使用的工作區。

程序控制塊在不同的作業系統上其也不同,包括的內容從巨集觀上歸納為以下三類:

(1)標識資訊:程序標識、使用者標識、父程序標識(作業系統對pcb實行集中的管理,所有的pcb集中在乙個固定儲存空間中,就構成了pcb表)

(2)現場資訊:記錄程序使用處理器時的各種現場資訊,主要有cpu通用暫存器內容,cpu狀態暫存器的內容以及棧指標等。

(3)控制資訊:作業系統對程序進行排程管理時用到的資訊。

程序排程的演算法需要注意的原則:

1.面向系統效能:(1)公平性(2)較大的吞吐量

2.面向使用者效能:(1)及時性(2)較短的周轉時間

時間片輪轉程式排程演算法(round robin ,rr)

(1)將系統中所有的就緒的程序按照某種原則排成乙個佇列

(2)每次排程時將cpu分派給就緒佇列的隊首程序,讓其執行乙個時間片

(3)在乙個時間片結束時發生時鐘中斷,排程程式暫停當前的執行,將其送到就緒佇列的末尾,選擇就緒佇列隊首程序,並通過上下文切換執行該程序。

多級佇列排程演算法

首先根據程序的性質或型別的不同,將就緒佇列再分為若干個子佇列,屬於是高優先順序的程序分配1個時間片,屬於次高階的程序分配2個時間片,再低一級的程序分配4個時間片,依次類推。當乙個程序用完所分配的時間片後還沒有執行完,它會被移到下一級佇列中,僅當較高優先順序的隊列為空時,才高度較低優先順序的佇列中的程序。如果程序執行時有新的程序進入較高優先順序的佇列,則搶占執行新程序,並把被中斷的程序投入原佇列的末尾。

同一程序中的執行緒共享程序的資源和狀態,執行緒具有暫存器和棧。

作業系統複習 程序管理

1.程式順序執行時的特徵 順序性,封閉性,可再現性 2.程序的六大特徵 1.結構特徵,通常的程式是不能併發執行的,我們會為之配置一程序控制塊,即pcb。程式段,資料,pcb構成了程序實體。2.動態性,程序的實質是程序實體的一次執行過程 3.併發性,多個程序實體同存於記憶體中,且能在一段時間內同時執行...

作業系統 程序管理

程序 申請資源和排程資源的基本單位,乙個程序就是乙個程式的乙個執行過程。是乙個動態的概念,在不同的作業系統中,會有不同的程序出現。程式 靜態概念,是指令和資料的集合,可長期儲存。程序與程式對應關係 乙個程式可以對應乙個程序或者多個程序 乙個程序可以對應乙個程式,或者一段程式 程序由程式,資料集合,程...

作業系統 程序管理

1.程序描述 2.程序狀態 2.2 程序狀態變化模型 2.3 程序掛起模型 2.4 程序控制 3.執行緒 4.ipc 5.程序互斥與同步 乙個程式在乙個資料集合上的一次動態執行過程。程式 演算法 資料結構 與程式的區別 併發concurrency 一段時間內有多個程序執行 並行parallelism...