自考作業系統複習

2022-04-29 09:03:01 字數 4760 閱讀 2473

本章考核知識點:1.多道程式設計 2.

程序 3.程序狀態 4.程序控制塊 5.

程序佇列 6.可再入程式 7.中斷及中斷響應 8.

中斷優先順序 9.程序排程

自學要求:通過本章學習應該掌握多道程式設計是如何提高計算機系統效率的;程序與程式有什麼區別;程序的基本狀態以及狀態變化;程序佇列及程序排程策略;中斷的作用。

重點是:多道程式設計;程序的定義和屬性;程序排程策略。

一、 多道程式設計( 領會 )

1、什麼是多道程式設計。

讓多個計算問題同時裝入乙個計算機系統的主儲存器並行執行,這種設計技術稱「 多道程式設計 」,這種計算機系統稱「多道程式設計系統」 或簡稱「多道系統」。

儲存保護 :在多道程式設計的系統中,主儲存器中同時存放了多個作業的程式。為避免相互干擾,必須提供必要的手段使得在主儲存器中的各道程式只能訪問自己的區域。

這樣,每道程式執行時,都不會破壞其他各道的程式和資料。特別是當某道程式發生錯誤的時,也不至於影響其它的程式。

程式浮動 :在多道程式設計系統中,對程式有一些特殊要求,也就是說,程式可以隨機地從主存的乙個區域移動到另乙個區域,程式被移動後仍絲毫不影響它的執行,這種技術稱為「程式浮動」。

在多道程式設計的系統中,有三點基本要求:

用「儲存保護」的方法保證各道程式互不侵犯;

用「程式浮動」技術讓程式能靈活地改變存放區域且能正確執行;

必須對資源按一定的策略分配和排程。

2、 多道程式設計利用了系統與外圍裝置的並行工作能力,從而提高工作效率。具體表現為:

提高了處理器的利用率;

充分利用外圍裝置資源:計算機系統配置多種外圍裝置,採用多道程式設計並行工作時,可以將使用不同裝置的程式搭配在一起同時裝入主儲存器,使得系統中各外圍裝置經常處於忙碌狀態,系統資源被充分利用;

發揮了處理器與外圍裝置以及外圍裝置之間的並行工作能力;

從總體上說,採用多道程式設計技術後,可以有效地提高系統中資源的利用率,增加單位時間內的算題量,從而提高了吞吐率。

3、 多道程式設計對算題量和算題時間的影響。 採用多道程式設計能改變系統資源的使用情況,提高系統效率。但是應注意以下兩個問題:

可能延長程式的執行時間;

並行工作道數與系統效率不成正比。從表面上看,增加並行工作道數就可提高系統效率,但實際上並行工作道數與系統效率是不成正比,因為並行的道數要根據系統配置的資源和使用者對資源的要求而定:

(1)主儲存器的大小限制了可同時裝入的程式數量;

(2)外圍裝置的數量也是乙個制約條件;

(3)多個程式同時要求使用同一資源的情況也會經常發生。

總之,多道程式設計能提高系統資源的使用效率,增加單位時間的算題量;但是對每個計算問題來說,從算題開始到全部完成所需要的時間可能延長,另外在確定並行工作道數時應綜合系統的資源配置和使用者對資源的要求。

二、 程序( 領會 )

1、 程序的定義:把乙個程式在乙個資料集上的一次執行稱為乙個「程序」。

2、 程序是由程式 、 資料集和程序控制塊三部分組成。

我們舉乙個例子,比如在有乙個使用者程式記事本),當它存放在磁碟上時,就是乙個程式,在windows作業系統下執行它時,就會在記憶體中建立乙個記事本程式的程序,而我們在記事本中編輯的當前文字就是這個程序的資料集,作業系統會為當前的程序設定乙個程序控制塊。如果我們再開啟乙個記事本程式的視窗,就會建立另乙個程序,此時執行的是同乙個程式,但存在兩個程序,第二個視窗中的編輯內容就是第二個程序的資料集。

3、 程序與程式的區別及關係。程式是靜止的,程序是動態的。程序包括程式和程式處理的物件(資料集),程序能得到程式處理的結果。

程序和程式並非一一對應的,乙個程式執行在不同的資料集上就構成了不同的程序。通常把程序分為「系統程序」和「使用者程序」兩大類,把完成作業系統功能的程序稱為系統程序,而完成使用者功能的程序則稱為使用者程序。

三、 程序狀態( 領會 )

1、 程序的三種基本狀態 .通常,根據程序執行過程中不同時刻的狀態,可歸納為三種基本狀態:

。 等待態 :等待某個事件的完成;

。 就緒態 :等待系統分配處理器以便執行;

。 執行態 :占有處理器正在執行。

2、程序的狀態變化

程序在執行中狀態會不斷地改變,每個程序在任何時刻總是處於上述三種基本狀態的某一種基本狀態,程序狀態之間轉換關係如下圖所示:

執行態→等待態往往是由於等待外設,等待主存等資源分配或等待人工干預而引起的。

等待態→就緒態則是等待的條件已滿足,只需分配到處理器後就能執行。

執行態→就緒態不是由於自身原因,而是由外界原因使執行狀態的程序讓出處理器,這時候就變成就緒態。例如時間片用完,或有更高優先順序的程序來搶占處理器等。

就緒態→執行態系統按某種策略選中就緒佇列中的乙個程序占用處理器,此時就變成了執行態。

程序有四個基本屬性 :

。多型性從誕生、執行,直至消滅。

。多個不同的程序可以包括相同的程式

。三種基本狀態它們之間可進行轉換

。併發性併發執行的程序輪流占用處理器

四、程序控制塊( 領會 )

1、 程序控制塊的基本內容。 通常程序控制塊包含四類資訊:

。標誌資訊含唯一的程序名

。說明資訊有程序狀態、等待原因、程序程式存放位置和程序資料存放位置

。現場資訊包括通用、控制和程式狀態字暫存器的內容

。管理資訊存放程式優先數和佇列指標

2、 程序控制塊的作用

程序控制塊(process control block,簡稱pcb),是作業系統為程序分配的用於標誌程序,記錄各程序執**況的。程序控制塊是程序存在的標誌,它記錄了程序從建立到消亡動態變化的狀況,程序佇列實際也是程序控制塊的鏈結。作業系統利用程序控制塊對程序進行控制和管理。

程序控制塊的作用有:

(1)記錄程序的有關資訊,以便作業系統的程序排程程式對程序進行排程。這些資訊包括標誌資訊、說明資訊、現場資訊和管理資訊等;

(2)標誌程序的存在,程序控制塊是程序存在的唯一標誌

五、程序佇列( 領會 )

1、 程序佇列的鏈結。

在多道程式設計的系統中往往會同時建立多個程序 .在單處理器的情況下,每次只能讓乙個程序執行,其他的程序處於就緒狀態或等待狀態。為了便於管理,經常把處於相同狀態的程序鏈結在一起,稱「程序佇列」,由於程序控制塊能標誌程序的存在和動態刻畫程序的特性,因此, 程序佇列可以用程序控制塊的連線來形成。

鏈結的方式有兩種:單向鏈結和雙向鏈結。

2、 程序基本佇列

就緒佇列 :由若干就緒程序按一定次序鏈結起來的佇列。

等待佇列 :把等待資源或等待某些事件的程序排列的佇列

3、程序的入隊和出隊。

出隊和入隊 :當發生的某個事件使乙個程序的狀態發生變化時,這個程序就要退出所在的某個佇列而排入到另乙個佇列中去。

出隊 :乙個程序從所在的佇列退出的操作稱為出隊

入隊 :乙個程序排入到乙個指定的佇列的操作稱為入隊。

系統中負責程序入隊和出隊的工作稱為佇列管理。

無論單向鏈結還是雙向鏈結,解決入,出隊問題,都是首先找到該佇列的隊首指標,沿鏈找出要入隊的程序以及它要插入的位置,或找出要出隊的程序,然後修改本程序指標(入隊情況)和相鄰程序的有關指標值即可。

六、可再入程式( 識記 )

(1) 什麼是可再入程式 . 乙個能被多個使用者同時呼叫的程式稱做「 可再入 」的程式。

(2) 可再入程式的性質。

可再入程式必須是純**,在執行時自身不改變;

乙個可再入程式要求呼叫者提供工作區,以保證程式以同樣方式為各使用者服務。

編譯程式和作業系統程式通常都是「可再入」程式,能同時被不同使用者呼叫而構成不同的程序。

七、中斷及中斷響應( 領會 )

1、 中斷的定義。

乙個程序占有處理器執行時,由於自身或者外界的原因(出現了事件)使執行被打斷,讓作業系統處理所出現的事件,到適當的時候再讓被打斷的程序繼續執行,這個過程稱為「中斷」。

2、 中斷的型別。

從中斷事件的性質出發,中斷可以分為兩大類:

。 強迫性中斷事件包括硬體故障中斷,程式性中斷,外部中斷和輸入輸出中斷等

。 自願性中斷事件是由正在執行的程序執行一條訪管指令用以請求系統呼叫而引起的中斷,這種中斷也稱為「訪管中斷」。

自願中斷的斷點是確定的,而強迫性中斷的斷點可能發生在任何位置。

3、中斷的響應和處理。

中斷響應 (硬體即中斷裝置操作)

處理器每執行一條指令後,硬體的中斷位置立即檢查有無中斷事件發生,若有中斷事件發生,則暫停現行程序的執行,而讓作業系統的中斷處理程式占用處理器,這一過程稱為「中斷響應」。

中斷響應過程中,中斷裝置要做以下三項工作:

是否有中斷事件發生

判別自願性中斷,只要檢查操作碼是否為訪管指令。

判別強迫性中斷,則要檢查中斷暫存器內容。若為0,則無中斷;若非0,則表示有中斷事件發生。

若有中斷發生,保護斷點資訊

每個程式都有乙個程式狀態字(psw)來反映本狀態的執行狀態,如基本狀態、中斷碼和中斷遮蔽位等內容。處理器設有乙個「程式狀態字暫存器」用來存放當前執行程式的psw.程式狀態字可分為當前psw、舊psw和新psw.

當出現中斷事件後,把被中斷程序的psw儲存為舊psw,即完成斷點資訊保護。

啟動作業系統的中斷處理程式工作

中斷裝置通過「交換psw」過程完成此項任務,即把出現的中斷事件存放到當前psw中斷碼位置,然後把該當前psw儲存為舊psw,再把作業系統中斷處理程式的新psw送到程式狀態字暫存器中,成為當前的psw.

中斷處理 ( 軟體即作業系統操作 )

作業系統的中斷處理程式對中斷事件進行處理時,大致要做三方面的工作:

保護被中斷程序的現場資訊

把中斷時的通用暫存器,控制暫存器內容及舊psw儲存到被中斷程序的程序控制塊中。

分析中斷原因

根據舊psw的中斷碼可知發生該中斷的具體原因。

2023年泉州自考作業系統複習材料

裝置管理 一 輸入輸出操作 要求達到 識記 層次 1 什麼是輸入輸出操作 主儲存器與外圍裝置之間的資訊傳送操作稱為輸入輸出操作。2 對於儲存型裝置,輸入輸出操作的資訊傳輸單位為 塊 對輸入輸出型裝置,輸入輸出操作的資訊傳輸單位為 字元 二 獨佔裝置和共享裝置 識記 1 獨佔裝置是指每次只能供乙個作業...

作業系統複習

一 什麼是作業系統 在回答這個問題之前,我們先來了解一下什麼是計算機系統。計算機系統是按使用者的要求接收和儲存資訊 自動進行資料處理並輸出結果資訊的系統。計算機系統由硬體系統和軟體系統組成。軟硬體系統的組成部分就是計算機系統的資源,當不同的使用者使用計算機時都要占用系統資源並且有不同的控制需求。作業...

2023年自考工學類作業系統原理複習

自考工學類 作業系統原理 複習資料 1 計算機系統是由硬體系統和軟體系統兩部分組成,作業系統是軟體系統的乙個組成部分,它是直接在硬體系統的基礎上工作的,所以在研究作業系統之前,先必須對計算機系統的結構有乙個基本的了解,本章就是講述計算機系統結構的基本知識。本章的考核知識點是 1.計算機系統的層次結構...