作業系統概念(高等教育出版社,第七版)複習——第一章:導論
第一章 導論
基礎知識
1.計算機系統四個組成部分
計算機硬體、作業系統、系統程式、使用者。
2.作業系統概念
作業系統是一組控制和管理計算機硬體和軟體資源、合理地對各類作業進行排程,以及方便使用者的程式集合。
3.作業系統的目標
執行使用者程式,更容易地解決使用者問題。
使計算機系統使用方便。
有效地使用計算機硬體。
4.兩個視角
使用者視角、系統視角
5.硬體中斷(interrupt)
interrupt是一種在系統內硬體產生的流量變化,用來處理中斷請求然後返回中斷的上下文和指令。
6.軟體中斷(trap)
Trap是軟體產生的中斷,用來呼叫作業系統的程式、捕捉算數邏輯錯誤。
7.儲存結構
主存:只有CPU可以直接訪問的大型儲存介質。
輔存:非易失性大儲存容量的主儲存器的擴充套件。
磁碟:最常用的輔存。磁碟表面邏輯上劃分為磁軌,再細分為扇區。磁碟控制器決定裝置和計算機之間的邏輯互動。
8.DMA(直接記憶體訪問)
用於高速I/O裝置,能夠以接近記憶體速度傳送資訊。
裝置控制器無需CPU干預直接將資料塊從緩衝儲存器直接傳輸到主存。
每個塊只產生一箇中斷,而不是每個位元組的一箇中斷。
9.計算機系統
單處理器系統、多處理器系統、集群系統
10.多處理器系統(並行系統、緊耦合系統)
定義:多處理器系統有多個緊密通訊的CPU,它們共享計算機匯流排,有時還有時鐘、記憶體和外設等。
優點:
增加吞吐量、規模經濟、增加可靠性。
分類:
非對稱多處理:每個處理器都有各自特定的任務。一個主處理器控制系統,其他處理器或者向主處理器要任務或做預先定義的任務。
對稱多處理:每個處理器都要完成作業系統中的所有任務。所有處理器對等,處理器之間沒有主-從關係。
11.集群系統
定義:與多處理器系統一樣,集群系統將多個CPU集中起來完成計算任務。然而,集群系統與多處理器系統不同,它是由兩個或多個獨立的系統耦合起來的。叢集計算機共享儲存並通過區域網絡連線或更快的內部連線。
12.作業系統結構
作業系統最重要的一點是要有多道程式處理能力。多道程式設計通過組織作業(編碼或資料)使CPU總有一個作業在執行,從而提高了CPU的利用率。
13.作業系統的三種基本型別
Batch systems(批處理系統)
Time-sharingsystems(分時系統)
Real timesystems(實時系統)
14.批處理系統
工作方式:
使用者將作業交給系統操作員,系統操作員將許多使用者的作業組成一批作業(jobs)之後輸入到計算機中,在系統中形成一個自動轉接的連續的作業流,系統自動、依次執行每個作業。最後由操作員將作業結果交給使用者。作業系統:自動將控制從一個任務轉到下一個任務。
分類:單道批處理系統、多道批處理系統
批處理操縱系統優點:
作業流程自動化、效率高、吞吐量高。
批處理操縱系統缺點:
無互動手段、除錯程式困難。
15.分時系統- 互動式計算
分時系統(或多工)是多道程式設計的延伸。
共享需要一種互動計算機系統,它能提供使用者與系統之間的直接通訊。響應時間短(通常小於一秒鐘)。
允許多使用者共享計算機。由於每個動作或命令都較短,每個使用者只需少量CPU時間,使用者之間切換時間短,所以使用者會感覺整個系統為自己所用。
16.實時系統
定義:實時作業系統是保證在一定時間限制內完成特定功能的作業系統。
分類:
硬實時系統:硬實時要求在規定的時間內必須完成操作,這是在作業系統設計時保證的。
軟實時系統:軟實時則只要按照任務的優先順序,儘可能快地完成操作即可。
17.作業系統的雙重模式操作
為了區分作業系統程式碼和使用者定義程式碼的執行,至少需要兩種獨立的操作模式:使用者模式、監督程式模式(管理模式、系統模式、特權模式)。
將能引起損害的機器指令作為特權指令。使用者模式下想要執行特權指令,硬體不會執行,會認為是非法指令,並以陷阱的形式通知作業系統。
課後習題
1.
a.一個使用者竊取另一個使用者的資料;無法在各使用者之間最優化的分配資源。
b.不可以。任何保護機制都會被破譯。
5.
非對稱多處理:每個處理器都有各自特定的任務。一個主處理器控制系統,其他處理器或者向主處理器要任務或做預先定義的任務。主處理器排程從處理器並安排工作(主-從關係)。
對稱多處理:每個處理器都要完成作業系統中的所有任務。即所有處理器對等,處理器之間沒有主-從關係。
優點:增加吞吐量、規模經濟、增加可靠性。
缺點:由於各CPU相互獨立,一個可能空閒而另一個可能過載,導致效率低。
10.
interrupt的目的:中斷是一種在系統內硬體產生的流量變化,用來處理中斷請求然後返回中斷的上下文和指令。
trap和interrupt的區別:trap是軟體產生的中斷,interrupt是硬體產生的中斷。trap被用來呼叫作業系統的程式、捕捉算數邏輯錯誤,interrupt用來處理中斷請求然後返回中斷的上下文和指令,同時interrupt可以標記I/O的完成,從而避免裝置輪詢的需要。
Trap可以被使用者或程式故意產生,目的:被用來呼叫作業系統的程式、捕捉算數邏輯錯誤。
12.
能。
對所有使用者程式進行軟體解釋,在軟體中,軟體解釋程式能夠提供硬體不能提供的。
所有程式都用高階程式設計語言編寫,以便於目的碼被編譯出來,編譯器將會產生防護性檢查並忽略硬體。
15.
處理器可以追蹤與每個程序相聯絡的位置以及限制訪問程式範圍外的位置。資訊與一個程式的記憶體範圍有關,它可以通過使用庫、限制暫存器和對每一次儲存器儲存執行檢查來維持其本身。
思考題:
作業系統定義:作業系統是一組控制和管理計算機硬體和軟體資源、合理地對各類作業進行排程,以及方便使用者的程式集合。
Interrupt和trap的概念:interrupt是一種在系統內硬體產生的流量變化,用來處理中斷請求然後返回中斷的上下文和指令。Trap是軟體產生的中斷,用來呼叫作業系統的程式、捕捉算數邏輯錯誤。
對CPU、I/O、memory的保護目的以及保護措施:
CPU: 防止使用者程式陷入無限迴圈或不呼叫系統服務,並且從不將控制返回到作業系統。措施:定時器來防止無限迴圈過程佔用資源、實現時間共享、計算當前時間。
I/O:防止使用者直接發出I/O指令,防止使用者執行非法I/O指令。措施:解決多個使用者共享I/O裝置、從I/O裝置資料時進行檢查。
Memory:保護作業系統不受使用者程式的訪問,並且保護使用者程式不受其他程式訪問。措施:當在監視器模式下執行時,作業系統可以不受限制地訪問監視器和使用者的記憶體,將庫和限制暫存器的負載指令作為特權指令。
一般情況下,作業系統儘量提高資源的利用率及提高執行效率,但有時也違反這一原則。試舉例並加以說明。
當計算機執行對配置要求很高的大型程式時,例如大型遊戲,使用者追求的是畫面的極度精美而不是為了機器執行流暢而選擇較低的畫質,這對機器的資源開銷量就變得更大,機器執行效率也會變低。但是這並不是浪費資源,是正常現象。