OS結構設計
早期的OS的規模很小,只有幾十kb
- 傳統操作系統結構
- 無操作系統:為保證功能實現和提高效率,缺乏首尾一致地設計思想。此時地OS是為數眾多的一組過程的集合,每個過程可以任意地調用其他過程,致使系統內部既復雜又混亂。
- 模塊化結構OS:
- 模塊化程序設計技術的基本概念:基於分解和模塊化的原則來控制大型軟件的復雜度
- 模塊獨立性:
- 模塊-接口法:模塊的划分和規划好模塊之間的接口。
- 相對無OS系統的優點:
- 提高OS的正確性,可理解性,可維護性
- 增強OS的可適應性
- 加速OS的開發過程
- 相對無OS系統的優點:
- 模塊化OS存在的問題:
- 對各模塊的接口規定很難滿足在模塊設計完成后對接口的實際需求
- 各個模塊設計起頭並進,無法尋找一個可靠的的決定順序,無序性,又稱無序模塊法。
- 模塊化程序設計技術的基本概念:基於分解和模塊化的原則來控制大型軟件的復雜度
- 分層式OS
- 分層結構的基本概念:
- 為了將模塊-接口法中決定順序的無序性變為有序性,引入有序分層法,分層法的設計任務是,在目標系統An和裸機系統A0之間,鋪設若干個層次的軟件A1、A2……,使An通過An-1…A1,能夠在A0上運行,采用自底向上來鋪設中間層。
- 分層結構的優缺點
- 易保證系統的正確性
- 易擴充和易維護性
- 系統效率降低
- 分層結構的基本概念:
- 客戶/服務器模式
- 客戶/服務器的由來、組成和類型
- 客戶/服務器系統主要由三部分組成:
- 客戶機
- 服務器
- 網絡系統
- 客戶/服務器系統主要由三部分組成:
- 客戶/服務器之間的交互
- 客戶機發送請求消息
- 服務器接收消息
- 服務器回送消息
- 客戶機接收消息
- 客戶/服務器模式的優點
- 數據的分布處理和存儲
- 便於集中管理
- 靈活性和可擴充性
- 易於改變應用軟件
- 客戶/服務器的由來、組成和類型
- 面向對象的程序設計技術
- 面對對象程序設計技術基本概念:
- 對象:被封裝的數據結構和一組對它操作的過程(方法)
- 對象類
-
- 繼承
- 面向對象技術的優點
- 通過重用提高產品質量和生產率
- 是系統具有更好的易修改性和易擴展性
- 更易於保證系統的正確性和可靠性
- 面對對象程序設計技術基本概念:
- 微內核OS結構
- 微內核操作系統的基本概念:
- 足夠小的內核:在微內核操作系統中,內核是指精心設計的,能實現現代OS基本核心功能的小型內核,微內核並不是一個完整的OS,只是將操作系統最基本的部分放入微內核。
- 基本的功能通常包括:
- 與硬件處理緊密的部分
- 一些較基本的功能
- 客戶和服務器之間的通信
- 基本的功能通常包括:
- 足夠小的內核:在微內核操作系統中,內核是指精心設計的,能實現現代OS基本核心功能的小型內核,微內核並不是一個完整的OS,只是將操作系統最基本的部分放入微內核。
- 基於客戶/服務器模式:提供對進程的管理的進程服務器,提供虛擬存儲器管理功能的虛擬存儲器服務器,提供io設備管理的服務器等。它們運行在用戶態,客戶服務器之間借助微內核提供的消息傳遞機制來實現信息交互。
- 應用”機制與策略分離“原理:機制:實現某一功能的具體執行機構;策略:借助於參數和算法來實現該功能的優化
- 采用面向對象技術:利用結構設計來分解操作系統的復雜性,基於面向對象中的抽象和隱蔽原則控制系統的復雜性,進一步利用對象,封裝和繼承等概念來保證操作系統的正確性,可靠性,易修改性
- 微內核的基本功能:
- 進程(線程)管理
- 低級存儲器管理
- 中斷和陷入處理
- 微內核操作系統的優點
- 提高系統的可擴展性
- 增強系統的可靠性
- 可移植性強
- 提供了對分布式系統的支持
- 融入了面向對象技術
- 微內核操作系統存在的問題
- 采用微小內核后,客戶服務器模式和消息傳遞機制帶給了操作系統帶來了許多優點,但運行效率有所降低
- 為了改善運行效率,可以把常用的操作系統功能由服務器移入微內核。
- 采用微小內核后,客戶服務器模式和消息傳遞機制帶給了操作系統帶來了許多優點,但運行效率有所降低
- 微內核操作系統的基本概念: