作業系統 筆記

2022-12-08 22:09:06 字數 5964 閱讀 2436

第一章作業系統引論

★ 什麼是作業系統?

① 作業系統是所有軟體中最基礎、最核心的部分,是計算機使用者和計算機硬體之間的中介程式,它為使用者執行程式提供更方便、更有效的環境。從資源管理的角度看,作業系統對整個計算機系統內的所有硬體和軟體資源進行管理和排程,優化資源利用,協調系統內的各種活動,處理可能出現的種種問題。

② 作業系統是控制和管理計算機內部各種硬體和軟體資源,有效地組織多道程式執行的系統軟體,使使用者和計算機的介面。

★ 它的主要功能是什麼?

1 儲存管理

2 作業和程序管理

3 裝置管理

4 檔案管理

5 使用者介面服務

★ 作業系統的基本特徵?

1 併發

2 共享

3 不確定性

★ 作業系統一般為使用者提供哪三種介面?

1 命令介面

2 程式介面

3 圖形使用者介面

第二章程序和執行緒

★ 作業系統為什麼要引入程序概念?它與程式的差別和關係是怎樣的?

1 由於多道程式併發執行時共享系統資源,共同決定這些資源的狀態,因此系統中程式執行過程中就出現了相互制約的新關係,程式的執行出現「走走停停」的新狀態。用程式這個靜態概念已不能如實反映程式併發執行過程中的這些特徵。為此人們引入了「程序」這一概念來描述程式動態執行過程的性質。

2 程序是動態的程式是靜態的

3 程序具有併發性,巨集觀上同時執行程式本身具有順序性,程式的併發執行是通過程序實現的

④ 程序具有獨立性,是乙個能獨立執行的單位,是系統資源分配的基本單位,是執行排程的基本單位程式本身沒有此特性

4 程式和程序沒有一一對應關係,乙個程序可順序執行多個程式乙個程式可以由多個程序共用

5 程序非同步前進,相互制約程式不具備此特性

6 然而程序和程式之間有著密切的關係,程序的功能通過程式的執行得以實現,程序活動的主體是程式。程序不能脫離開具體的程式獨立存在。

★ pcb的作用是什麼?

1 pcb是程序組成中最關鍵的部分,每個程序有唯一的程序控制塊,作業系統根據pcb對程序實施控制和管理,程序的動態和併發特徵是通過pcb表現出來的,pcb是程序存在的唯一標誌。

★ pcb怎麼表現程序的動態特性?

1 pcb中有標明程序狀態的資訊,該程序的狀態包括執行狀態、就緒狀態和阻塞狀態,它利用狀態資訊來描述程序的動態性質。

★ 程序的基本狀態有哪幾種?

1 執行狀態(等待某事件的發生)阻塞狀態或(時間片到)就緒狀態

2 就緒狀態(分到cpu)執行狀態

3 阻塞狀態(所等待的事件發生)就緒狀態

★ 什麼是臨界區和臨界資源?

1 臨界資源:一次僅允許乙個程序是用的共享資源

2 臨界區:每個程序中訪問臨界資源的那段程式

★ 進入臨界區的準則?

1 一次僅允許乙個程序進入

2 任何時候處於臨界區內的程序不能多於乙個

3 進入臨界區的程序要在有限的時間內推出

4 如果程序不能進入臨界區則應讓出cpu

★ 是否所有的共享資源都是臨界資源?為什麼?

1 不是所有的共享資源都是臨界資源。因為臨界資源是一次僅允許乙個程序使用的資源,而系統中的很多資源可以供多個程序同時使用,例如硬碟、正文段等。

★ 簡述計數訊號量的定義和作用?

1 計數訊號量(又稱結構型訊號量)一般是由兩個成員組成的資料結構。其中乙個是整形變數,表示訊號量的值,另乙個是指向pcb的指標。(訊號量可以賦初值,且初值為非負數;訊號量的值可以修改,但只能有p、v操作來訪問)

★ p、v操作原語是如何定義的?

1 p操作

void p(semaphore s)

} 2 ②p操作

void v(semaphore s)

} 第三章死鎖

★ 死鎖的概念

1 死鎖:乙個程序集合中的每個程序都在等待僅由該集合中的另乙個程序才能引發的時間而無限僵持下去的局面。

★ 發生死鎖的4個必要條件是什麼?

1 互斥條件

2 占有且等待條件

3 不可搶占條件

4 迴圈等待條件

★ 什麼是程序的安全序列

1 針對當先分配狀態來說,系統至少能夠按照某種次序為每個程序分配資源(直至最大需求),並且使它們依次成功的執行完畢,這種程序序列就是安全序列

★ 何謂系統是安全的?

1 如果存在乙個安全序列則系統是安全的。

第四章排程

★ 處理機排程一般分為哪**?

1 高階排程

2 中級排程

3 低階排程(必不可少)因為低階排程屬於程序排程,而程序排程是作業系統中最基本的一種排程。在一般型別的作業系統中都必須有程序排程,而且它的策略的優劣直接影響到整個系統的效能。

★ 作業在其工作過程中分哪幾個工作狀態?

1 提交狀態

2 後備狀態

3 執行狀態

4 完成狀態

★ 在確定排程方式和排程演算法時,常用的評價準則有哪些?

1 cpu利用率

2 吞吐量

3 周轉時間

4 就緒等待時間

5 響應時間

★ 中斷處理的主要步驟

1 儲存被中斷程式的現場

2 分析中斷原因

3 轉入響應處理程式進行處理

4 恢復被中斷程式現場

第五章儲存管理

★ 使用者程式在計算機中主要分為哪些處理階段?

1 編輯階段

2 編譯階段

3 連線階段

4 裝入階段

5 執行階段

★ 解釋名詞

1 實體地址:記憶體中的物理儲存單元的位址是從統一的基位址開始順序編址的,這種位址稱為絕對位址或實體地址。

2 邏輯位址:使用者程式經編譯之後的每個目標模組都以0為基位址順序編址,這種位址稱為相對位址或邏輯位址。

3 邏輯位址空間:由程式中邏輯位址組成的位址範圍叫做邏輯位址空間或簡稱位址空間。

4 物理空間:由記憶體中一系列儲存單元所限定的位址範圍稱作記憶體空間,也稱物理空間或絕對空間。

5 重定位:程式和資料裝入記憶體時,需對目標程式中的位址進行修改。這種把邏輯位址轉變為記憶體實體地址的過程稱作重定位。

6 靜態重定位:在目標程式裝入記憶體時,由裝入程式對目標程式中的指令和資料的位址進行修改。

7 動態重定位:在程式執行期間,每次訪問記憶體之前進行重定位。這種變換是靠硬體位址轉換機構實現的。

8 碎片:記憶體中中容量太小,無法利用的小分割槽稱作碎片或零頭。

9 內碎片:乙個分割槽內部出現的碎片。固定分割槽產生內碎片

10 外碎片:所有分割槽之外新增的碎片。動態分割槽產生外碎片

㊣ 緊縮:移動某些已分配區的內容,是所有程序的分割槽緊挨在一起,而空閒區留在另一端。

★ 解釋固定分割槽發和動態分割槽發的基本原理

1 固定分割槽法:固定分割槽就是記憶體分割槽中分割槽的個數固定不變,各個分割槽的大小也固定不變,但不同分割槽的大小可以不同。每個分割槽只可裝入乙個程序。

2 動態分割槽發:為了解決記憶體浪費問題,可把分割槽的大小和個數設計成可變的。就是說,各個分割槽在相應的程序要進入記憶體時才建立,是大小恰好適合程序的大小。

★ 什麼是虛擬儲存器?

1 所謂虛擬儲存器是使用者能作為可編址記憶體對待的虛擬儲存空間,它使使用者邏輯儲存器與物理儲存器分離,是作業系統給使用者提供的比真實記憶體空間大的多的位址空間。

★ 虛擬儲存器的特徵

1 虛擬擴充

2 部分裝入

3 離散分配

4 多次對換

★ 請求分頁技術

1 當乙個程序的部分頁面在記憶體時就可排程它執行,在執行過程中若用到的頁面尚未在記憶體,則把他們動態換入記憶體。

★ 請求分段技術

1 乙個程序的所有分段的副本都儲存在外存上。當它需要時先把當前需要的一段或幾段裝入記憶體,其它段僅在呼叫時才調入。

第六章檔案系統

★ 解釋術語

1 檔案:檔案是被命名的相關資訊的實體。

2 檔案系統:檔案系統是作業系統中負責操縱和管理檔案的一整套設施,它實現檔案的共享和保護,方便使用者按名訪問。

3 目錄項:檔案控制塊就是目錄項。

4 檔案目錄:檔案控制塊的有序集合。

5 目錄檔案:完全由目錄構成的檔案。

6 路徑:在樹形目錄結構中,從根出發經由所需子目錄到達指定檔案的通路。

7 當前目錄:為節省檔案檢索時間,每個使用者可以指定乙個目錄作為當前目錄,以後訪問檔案時,就從這個目錄開始向下順序檢索。這個目錄就稱做當前目錄。

★ 一般來說檔案系統應該具備哪些功能?

1 檔案管理

2 目錄管理

3 檔案儲存空間管理

4 檔案共享及保護

5 提供方便的使用者介面

★ 檔案系統的層次結構

1 應用程式

2 邏輯檔案系統

3 檔案組織模組

4 基本檔案系統

5 i/o控制

6 裝置硬體

★ 檔案的邏輯組織?

● 使用者對檔案的觀察和使用是從自身處理檔案資料時所採用的組織形式來看待檔案組織形式的。這種從使用者觀點出發所見到的檔案組織形式稱為檔案的邏輯組織。

1 有結構檔案

2 無結構檔案

3 樹形檔案

★ 檔案的物理組織

1 連續檔案

2 串連檔案

3 索引檔案

4 多重索引檔案

★ 常用的磁碟空閒區管理技術有哪幾種?

● 檔案在儲存裝置上的儲存組織形式稱為檔案的物理組織。

1 空閒空間表發

2 空閒塊鏈結發

3 位示圖法

4 空閒塊成組鏈結發

★ 什麼是檔案共享?

1 檔案共享是系統允許多個使用者共同使用某個或某些檔案。

★ 檔案鏈結如何實現檔案共享?

1 檔案鏈結給檔案起別名,即將該檔案的目錄項登記在鏈結目錄中。這樣,這樣訪問該檔案的路徑就不止一條,不同的使用者就可以通過自己的路徑來共同訪問同一檔案。

第七章輸入輸出管理

★ 為什麼要引入緩衝技術?

1 計算機系統中各部件間的速度差異很大。

2 不同時刻,系統中各部分的負荷也很不均衡

3 陣發性的i/o操作會使cpu不得不停下來

4 系統中各個部件的並行處理效率得不到充分發揮

★ 設定緩衝區應該遵守的原則?

1 單緩衝:資料的到達率和離去率相差很大

2 雙緩衝:資料的輸入率和輸出率相同(或相差不大)

3 多緩衝:陣發性的輸入/輸出,雙緩衝區也不能滿足cpu和i/o裝置的並行操作要求

★ spooling系統的主要功能?

1 將獨佔裝置改造為共享裝置,實現虛擬裝置功能。

★ i/o軟體的設計目標?

1 與裝置無關

2 統一命名

3 層次結構

4 效率高

★ i/o管理應具備的功能?

1 監視裝置狀態

2 進行裝置分配

3 完成i/o操作

4 緩衝管理和位址轉換

★ i/o軟體如何劃分層次

1 中斷處理程式

2 裝置驅動程式

3 與裝置無關的作業系統i/o軟體

4 使用者級i/o軟體

第八章使用者介面服務

★ 什麼是系統呼叫?

1 系統呼叫是作業系統提供的、與使用者程式之間的介面,也就是作業系統提供給程式設計師的介面。

2 系統呼叫使使用者在程式中能以「函式呼叫」形式呼叫的、由作業系統提供的子功能的集合。每一條子功能稱作一條系統呼叫命令。它是作業系統對外的介面,是使用者級程式取得作業系統服務的唯一途徑。

★ 系統呼叫與函式庫在功能及實現上有什麼相同點和不同點?

● 相同點:兩者都有程式**構成,可直接用高階程式語言來編制:使用方式相同—以函式呼叫的方式出現,呼叫時傳遞引數。

● 不同點:

1 **層次不同(函式庫不屬於作業系統的一部分,而系統呼叫是系統的一部分)

2 執行狀態不同(函式庫只能在使用者態執行,不能進入態,系統呼叫是在核心態下執行)

3 進入方式不同(函式庫在使用者程式中呼叫,並直接在使用者空間內執行;而系統呼叫可以在使用者程式中呼叫,但是在使用者程式執行到系統呼叫時,會產生異常事件,實現處理機狀態由使用者態到核心態的轉變,從而進入作業系統核心空間去執行系統呼叫**)

作業系統之處理器管理筆記

第三章處理器管理 本章考核知識點 1.多道程式設計 2.程序 3.程序狀態 4.程序控制塊 5.程序佇列 6.可再入程式 7.中斷及中斷響應 8.中斷優先順序 9.程序排程 自學要求 通過本章學習應該掌握多道程式設計是如何提高計算機系統效率的 程序與程式有什麼區別 程序的基本狀態以及狀態變化 程序佇...

作業系統複習

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

2019作業系統A

2014年秋季學期 作業系統 課程考試試卷 a卷 注意 1 本試卷共 3 頁2 考試時間 110分鐘 3 姓名 學號 網選班級 網選序號必須寫在指定地方。一 單項選擇題目 每小題 2分,共30分,請將答案填在小提前的括弧內 1.從使用者角度看,作業系統是 a.計算機資源的管理者b.計算機工作流程的組...