計算機作業系統-引論 習題與知識點複習
參考資料:計算機作業系統第四版【湯小丹】
1.設計現代OS的主要目標是什麼?
答:方便性、有效性、可擴充性、開放性。
2.OS的作用可表現在哪幾個方面?
答:(1)作為使用者與計算機硬體系統之間的介面;
(2)作為計算機系統資源的管理者;
(3)實現了對計算機資源的抽象。
3.為什麼說作業系統實現了對計算機資源的抽象?
答:OS是鋪設在計算機硬體上的多層軟體的集合,它們不僅增強了系統的功能,還影藏了對硬體操作的具體細節,實現了對計算機硬體操作的多個層次的抽象模型。
【知識點1】
(1)以I/O裝置管理軟體為例:對於一臺裸機,使用者使用時必須直面物理介面,若沒有充分的瞭解將很難使用這臺機子。若在裸機上覆蓋一層所需的管理軟體如I/O裝置管理軟體,由它向上將I/O裝置抽象為一組資料結構及I/O操作命令給使用者進行資料輸入輸出,隱藏了中間如何實現I/O的過程。上述過程就為對計算機硬體操作的的一個層次的抽象。
(2)把覆蓋了上述軟體的機器稱為擴充機器或虛擬機器。
(3)OS系統不僅可以在底層對一個硬體資源加以抽象,還可以在高層對該資源底層已抽象的模型再次進行抽象,成為更高層的抽象模型。
4.試說明推動多道批處理系統形成和發展的主要動力是什麼?
答:提高系統資源的利用率和系統吞吐量。
【知識點2】
(1)作業系統的發展過程
OS型別 |
定義 |
型別 |
特徵 |
優點 |
缺點 |
備註 |
||
未配置作業系統的計算機系統 |
|
人工操作方式 |
1)使用者獨佔全機 2)CPU等待人工操作 |
CPU的速度迅速提高 |
(1)嚴重降低了計算機資源利用率(即人機矛盾) (2)CPU與I/O裝置速度不匹配(I/O速度提高緩慢) |
|
||
|
離線I/O方式 |
在脫離主機的情況下進行 |
(1)有效減少了CPU的空閒時間 (2)提高了I/O速度 |
|
||||
單道批處理系統 |
系統對作業進行成批處理,但記憶體中始終只儲存一道作業 |
|
記憶體中只有一道作業 |
|
(1)系統中的資源得不到充分利用 (2)為執行大作業而配置了大記憶體但實際上大多數作業屬於中小型作業時,造成記憶體浪費 |
|
||
多道批處理系統 |
使用者提交的作業在外存上排成後備佇列,由作業排程程式按照一定演算法從佇列中選若干個作業調入記憶體 |
|
記憶體中有多道作業 |
(1)資源利用率高 (2)系統吞吐量大 |
(1)平均週轉時間長(作業要依次排隊處理的原因) (2)無互動能力(作業完成之前使用者都不能進行修改和除錯) |
需解決的問題: (1)處理機爭用 (2)記憶體分配和保護 (3)I/O裝置分配 (4)檔案的組織和管理 (5)作業管理 使用者與系統的介面 |
||
分時系統 |
在一臺主機上連線了多個配有顯示器和鍵盤的終端並由此所組成的系統,該系統允許多個使用者同時通過自己的終端以互動方式使用計算機,共享主機中的資源 |
|
多路性 |
(1)允許多個使用者共享一臺計算 (2)提高了資源利用率 (3)及時接受(多路卡、緩衝區) |
|
|
||
獨立性 |
各使用者之間互不干擾 |
|||||||
及時性 |
(1)及時處理(作業直接進入記憶體、採用輪轉執行方式(時間片)) |
|||||||
互動性 |
可通過終端與系統進行廣泛的人機對話 |
|||||||
實時系統 |
系統能即使響應外部事件的請求,在規定時間內完成對該事件的處理,並控制所有實時任務協調一致地進行 |
工業(武器)控制系統 |
舉例:火炮的自動控制系統、飛機的自動駕駛系統、導彈的制導系統 |
多路性 |
|
|
實時任務型別:(1)週期性實時任務、非週期性實時任務 (2)硬實時任務、軟實時任務 |
|
獨立性 |
||||||||
資訊查詢系統 |
舉例:飛機或火車訂票系統 |
及時性 |
||||||
多媒體系統 |
舉例:音視訊播放多媒體系統 |
互動性 |
||||||
嵌入式系統 |
舉例:智慧儀器或裝置 |
可靠性 |
||||||
微機作業系統 |
只允許一個使用者上機,只允許使用者程式作為一個任務執行 |
單使用者單任務作業系統 |
舉例:CP/M、MS-DOS |
|
|
|
|
|
只允許一個使用者上機,允許使用者把程式分為若干個任務併發執行 |
單使用者多工作業系統 |
舉例:Windows |
||||||
允許多個使用者通過各自終端共用一臺機器,每一個使用者程式又可進一步分為幾個任務併發執行 |
多使用者多工作業系統 |
舉例:UNIX OS(Solaris OS、Linux OS) |
(2)推動各種系統形成的原因
系統型別 |
形成原因 |
備註 |
離線I/O方式 |
為了解決人機矛盾及CPU和I/O裝置之間速度不匹配的矛盾 |
|
單道批處理系統 |
在解決人機矛盾及CPU和I/O裝置之間速度不匹配的矛盾過程中形成 |
批處理系統旨在提高系統資源利用率和系統吞吐量 |
多道批處理系統 |
提高資源利用率和系統吞吐量 |
|
分時系統 |
為了滿足使用者對人機互動的需求 |
(3)作業系統的定義
作業系統是一組能有效地組織和管理計算機硬體和軟體資源,合理地對各類作業進行排程,以及方便使用者使用的程式的集合。
5.何為離線I/O和聯機I/O?
答:(1)離線I/O:程式和資料的輸入和輸出都是在外圍機的控制下完成的,或者說他們都是在脫離主機的情況下進行的。
(2)在主機的直接控制下進行輸入輸出的方式。
【知識點3】
不受主機的直接控制是指:事先將裝有使用者程式和資料的紙帶裝入紙帶輸入機,在一臺外圍機的控制下,把紙帶上的資料輸入到磁帶上,當CPU需要這些程式和資料時再從磁帶上高速地調入記憶體。
6.試說明推動分時系統形成和發展的主要動力是什麼?
答:為了滿足使用者對人機互動的需求。
7.實現分時系統的關鍵是什麼?如何實現?
答:分時系統旨在實現人機互動,人機互動的關鍵在於——使用者鍵入命令後,能對自己的作業及其執行及時地實施控制或進行修改,即及時處理。採用以下兩種方式:(1)作業直接進入記憶體;(2)採用輪轉執行方式(引入時間片的概念)。
8.為什麼要引入實時作業系統?
答:有些外部事件的請求需要及時響應,在規定的時間內完成。
9.什麼是硬實時任務和軟實時任務?試舉例說明。
答:(1)硬實時任務是指系統必須滿足對截止時間的要求,否則可能出現難以預測的後果。例如:用於工業和武器控制的實時系統。
(2)軟實時任務也聯絡著一個截止時間,但並不嚴格,偶爾錯過了任務的截止時間對系統產生的影響也不會太大。例如:用於資訊查詢系統和多媒體系統中的實時系統。
10.試從互動性、及時性以及可靠性方面將分時系統與實時系統進行比較。
答:
分時系統 |
實時系統 |
|
互動性 |
能向終端使用者提供資料處理、資源共享等服務 |
僅限訪問某些特定的服務程式或傳送特定指令 |
及時性 |
沒有截止時間 |
以控制物件所要求的截止時間來確定 |
可靠性 |
要求系統可靠 |
要求系統高度可靠 |
11.OS有哪幾大特徵?最基本的特徵是什麼?
答:併發、共享、虛擬、非同步;
最基本:併發
12.在多道程式技術的OS環境下的資源共享與一般情況下的資源共享有何不同?對獨佔資源應採取何種共享方式?
答:
含義 |
方式 |
對於獨佔資源 |
|
一般情況下的資源共享 |
某種資源能被大家使用,沒有限制,也沒有競爭 |
|
|
OS環境下的資源共享(也稱資源複用) |
系統中的資源可供記憶體中多個併發執行的程序共同使用。限定了時間(在記憶體期間)、地點(記憶體中),程式之間也會對共享資源有競爭 |
(1)互斥共享方式 (2)同時訪問方式 |
互斥共享 |
【知識點4】
(1)臨界資源(獨佔資源):在一段時間內只允許一個程序訪問的資源。
(2)典型的可供多個程序“同時”訪問的資源是磁碟裝置。
(3)併發和共享是多使用者(多工)OS的兩個最基本特徵。
13.什麼是時分複用技術?舉例說明為何能提高資源利用率。
答:時分複用技術(多道程式技術)指利用處理機空閒時間執行其他程式。
它能提高資源利用率的根本原因在於:它利用某裝置為使用者服務的空閒時間轉去為其他使用者服務,使裝置得到最充分的利用。
【知識點5】
(1)時分複用技術和空分複用技術
|
特點 |
時分複用技術 |
利用處理機的空閒時間執行其他程式 |
空分複用技術 |
利用儲存器的空閒空間分割槽域存放和執行其他程式 |
(1)OS中利用時分複用和空分複用技術來實現“虛擬”。
(2)單純的空分複用儲存器只能提高記憶體的利用率,無法再邏輯上“擴容”,要實現此目的需引入虛擬儲存技術。
(3)虛擬儲存技術的本質是對記憶體的分時複用。
14.作業系統具有非同步性特徵的原因?
答:在多道程式下允許多個程式併發執行,但由於資源等因素限制,每個程序的推進不可預知,因而存在非同步性。
15.處理機管理有哪些主要功能?其主要任務是什麼?
答:(1)程序控制(建立、撤銷、控制執行)
(2)程序同步
(2)程序通訊
(3)排程(作業排程、程序排程)
16.記憶體管理有哪些主要功能?其主要任務是什麼?
答:(1)記憶體分配(靜態分配、動態分配)
(2)記憶體保護(一種比較簡單的記憶體保護機制是設定兩個界限暫存器)
(3)地址對映
(4)記憶體擴充(請求調入、置換)
17.裝置管理有哪些主要功能?其主要任務是什麼?
答:(1)緩衝管理
(2)裝置分配
(3)裝置處理
18.檔案管理有哪些主要功能?其主要任務是什麼?
答:(1)檔案儲存空間的管理
(2)目錄管理
(3)檔案的讀寫管理和保護(檔案保護為:防止未經核準的使用者存取檔案、防止冒名頂替存取問題、防止以不正確的方式使用檔案)
19.推動傳統OS轉變成為現代OS的主要因素是什麼?
答:略
20.什麼是微核心OS?
答:(1)足夠小的核心
(2)基於客戶/伺服器模式
(3)應用“機制與策略分離”原理
(4)採用面向物件技術
21.微核心作業系統具有哪些優點?為何能有這些優點?
答:(1)提高了系統的可擴充套件性
(2)增強了系統的可靠性
(3)可移植性強
(4)提供了對分散式系統的支援
(5)融入了面向物件技術
原因略
22.現代作業系統較之傳統作業系統又增加了哪些功能和特徵?
答:(1)系統安全
(2)網路的功能和服務
(3)支援多媒體
23.在微核心OS中,為什麼要採用客戶/伺服器模式?
答:C/S模式的優點:
(1)資料的分佈處理和儲存
(2)便於集中管理
(3)靈活性和可擴充性
(4)易於改編應用軟體
24.在基於微核心結構的OS中,應用了哪些新技術?
答:將程序管理、儲存管理以及輸入輸出管理一分為二,屬於機制的很小一部分放入微核心中,另外絕大部分放在微核心外的各種伺服器中實現。
25.何為微核心技術?在微核心中通常提供了哪些功能?
答:(1)程序(執行緒)管理
(2)低階儲存器管理
(3)中斷和陷入管理