電腦作業系統(第三版)----複習01
第一章 作業系統引論
1.1作業系統的目標和作用
作業系統的目標
1。有效性(包括:1。提高系統資源使用率 2。提高系統的輸送量)
2。方便性
3。可擴充性
4。開放性(遵循開放系統互相連線模型(OSI)國際標準)
作業系統的作用
1。OS作為使用者與電腦硬體系統之間的介面(1。命令方式。2。系統調用方式。3。圖形、視窗方式。)
2。OS作為電腦系統資源的管理者
3。OS實現了對電腦資源的抽象
推動作業系統發展的主要動力
1。不斷提高電腦資源的利用率
2。方便使用者
3。器件的不斷更新換代
4。電腦體繫結構的不斷髮展
1.2 作業系統的發展過程
1。無作業系統的電腦系統
1)人工操作方式(缺點:1。使用者獨佔。2。CPU等待人工操作)
2)離線輸入/輸出方式(優點:1。減少CPU的空閑時間。2。提高了I/O速度)
2。單道批處理系統
1)特徵(1。自動性。2。順序性。3。單道性)
3。多道批處理系統
在OS中引入多道程式設計技術可帶來以下好處:1)提高CPU的利用率 2)可提高記憶體和I/O裝置利用率 3)增加系統輸送量
多道批處理系統的優缺點:1)資源使用率高 2)系統輸送量大。3)平均周轉時間長 4)無互動能力
多道批處理系統需要解決的問題:1)處理機管理問題 2)記憶體管理問題 3)I/O裝置管理問題 4)檔案管理問題 5)作業管理問題
作業系統的定義:作業系統是一組控制和管理電腦硬體和軟體資源,合理地對各類作業進行調度,以及方便使用者使用的程式的集合
4。分時系統
定義:在一台主機上串連了多個帶有顯示器和鍵盤的終端,同時允許多個使用者通過自己的終端,以互動方式使用電腦,共用主機中的資源。
使用者需求:1)人-機互動。2)共用主機。3)便於使用者上機
關鍵部問題:1)及時接收。2)及時處理
特徵:1)多路性 2)獨立性。3)及時性。4)互動性
5。即時系統
所謂“即時”,是表示“及時”,百即時系統是指系統能及時(或即時)響應外來事件的請求,在規定的時間內完成對該事件的處理,並控制所有即時任務協調一致地運行。
應用需求:1)即時控制。2)即時資訊處理。
即時任務:按任務執行是否呈現周期性來劃分1)周期性即時任務2)非周期性即時任務。
根據對截止時間的要求來劃分1)硬即時任務。2)軟即時任務。
即時系統與分時系統特徵的比較。
6。微機作業系統的發展
1。單使用者單任務作業系統。(1。CP/M 2。MS-DOS)
2。單使用者多任務作業系統。
2。多使用者多任務作業系統。UNIX OS(變種:1)Solaris OS 2)Linux OS)
1.3作業系統的基本特性
1。並發性(1。並行與並發(並行性是指兩個或多個事件在同一時刻發生;而並發性是指兩個或多個事件在同一時間間隔內發生)。2。引入進程。3。引入線程)
2。共用性(1。互斥共用方式。2。同時訪問方式)
並發和共用是作業系統的兩個最基本的特徵,它們又是互為存在的條件。
3。虛擬技術 是指通過某種技術把一個物理實體變為若干個邏輯上的對應物。
1)時分複用技術(時分複用,亦即分時使用方式)(1。虛擬處理機技術。2。虛擬設備技術。)
2)空分複用技術(1。虛擬磁碟技術。2。虛擬存儲存空間技術)
4。非同步性
1.4 作業系統的主要功能
1。處理機管理功能(主要功能是建立和撤消進程(線程),對諸進程(線程)的運行進行協調,實現進程(線程)之間的資訊交換,以及按照一定的演算法把處理機分配給進程(線程))。
1)進程式控制制
2)進程同步(進程同步的主要任務是為多個進程(含線程)的運行進行協調。有兩種協調方式1。進程互斥方式。2。進程同步方式。)
3)進程通訊
4)調度(1。作業調度。2。進程調度)
2。儲存空間管理功能
1)記憶體配置(為了實現記憶體配置,在記憶體配置的機制中應具有這樣的結構和功能:1。記憶體配置資料結構。2。記憶體配置功能。3。記憶體回收功能。)
2)記憶體保護(主要任務是確保每道使用者程式都只在自己的記憶體空間內運行,彼此互不干擾)
3)地址映射(將地址空間中的邏輯地址轉換為記憶體空間中與之對應的物理地址)
4)記憶體擴充(用於實現下述功能:1。請求調入功能。2。置換功能。)
3。裝置管理功能(主要任務是:完成使用者進程提出的I/O請求;為使用者進程分配其所需的I/O裝置;提高CPU和I/O裝置的利用率;提高I/O速度;方便使用者使用I/O裝置。
為實 現上述任務,裝置管理應具有緩衝管理,裝置分配,裝置處理以及虛擬設備等功能)
1)緩衝管理
2)裝置分配
3)裝置處理(裝置處理常式又稱為裝置驅動程式。其基本任務是用於實現CPU和裝置控制器之間的通訊)
4。檔案管理
1)檔案儲存體空間的管理
2)目錄管理
3)檔案的讀/寫管理和保護
5。作業系統與使用者之間的介面
1)使用者介面(1。聯機使用者介面。2。離線使用者介面。3。圖形使用者介面)
2)程式介面
1.5 OS結構設計
傳統的作業系統
1。無結構作業系統
2。模組化結構OS (無序模組法)
3。分層式結構OS
客戶/伺服器模式(Clinet/Server簡稱C/S)
物件導向的程式設計(優點:1。通過“重用”提高產品品質和生產率。2。使系統具有更好的易修改性和易擴充性。3。更易於保證系統的“正確性”和“可靠性”)
微核心OS結構
基本概念:
1。足夠小的核心
2。基於客戶/伺服器模式
3。應用“機制與策略分離”原理
4。採用物件導向技術
準系統
1。進程(線程)管理
2。低級儲存空間管理
3。中斷和陷入處理
兩個概念:
使用者態
環境切換