第一章:操作系統引論

	教材:
《計算機操作系統》,湯子瀛等,西安電子科技大學出版社(第4版)
	參考書:
	《操作系統教程》(第3版),孫鍾秀 ,高等教育出版社 ,200311月
	《Operating System Concepts》(第七版)(英文影印版) Silberschatz A ,Galvin P B, Gagne G著,高等教育出版社 ,200712月。
	《現代操作系統》 (英文第2版),(荷)Andrew S. Tanenbaum著 ,陳向羣等譯,機械工業出版社, 20056月 
	《操作系統:設計與實現》(上下冊) ,Andrew S.Tanenbaum ,電子工業出版社 ,1998年 
	《Linux內核完全剖析--基於0.12內核 》,趙炯 ,機械工業出版社 ,20091月。
	《UNIX結構分析(核心代碼的結構與算法) 》胡希明 ,浙江大學出版社 ,20028月。
	《嵌入式實時操作系統uC/OS-II 》 (2)()Jean J. Labrosse著 ,邵貝貝譯, 北京航空航天大學出版社 , 20079月 
	《Unix系統內幕》,Uresh Vahalia ,人民郵電出版社 ,2003

操作系統是系統軟件
系統軟件是與硬件相關的軟件。
在這裏插入圖片描述

在這裏插入圖片描述


§1.1 操作系統的目標和作用

硬件之上,其他軟件之下。

  • 目標: 方便性,有效性,可擴充性,開放性.
  • 作用: 用戶與計算機的接口,系統資的管理者,擴充機器。

在這裏插入圖片描述
推動OS發展的主要動力

  • 不斷提高計算機資源利用率
  • 方便用戶
  • 器件的不斷更新換代
  • 計算機體系結構的不斷髮展
  • 不斷提出的應用需求

§1.2 操作系統的發展過程

無OS:

人工操作系統:
  • 1946-50年代中:電子管時代,計算機速度慢,無操作系統,集中計算,計算機資源昂貴;
  • 用戶:既是程序員又是操作員;用戶是計算機專業人員;
  • 編程語言:機器語言;
  • 輸入輸出:紙帶或卡片;
脫機I/O方式:在這裏插入圖片描述

OS分類:

OS所在的角度
  • 多任務,單CPU, CPU具有與外設並行操作的能力。
  • 程序均由CPU執行
  • CPU只能執行機器語言程序
  • CPU執行的程序均在內存中

在這裏插入圖片描述

######## 批處理系統

  • 單道程序工作示例:
    在這裏插入圖片描述
  • 多道程序工作示例:
    在這裏插入圖片描述
    在這裏插入圖片描述
分時系統

目標:

  • 對用戶的請求及時響應;儘量提高系統資源的利用率

原理:

  • 一臺計算機連接多個終端,用戶通過各自的終端把作業送入計算機;計算機又通過終端向各個用戶報告其作業的運行情況。
  • 計算機能分時輪流地爲各終端用戶服務,並能及時地對用戶服務請求予以響應。

基本特性

  • 多路性,獨立性,及時性,交互性。
實時系統

目的

  • 提高系統的響應時間,對隨機發生的外部事件作出及時響應並對其進行處理。

分類
在這裏插入圖片描述
基本特性
在這裏插入圖片描述

三種系統比較

在這裏插入圖片描述


§1.3 操作系統的基本特性

併發

併發:一段時間
  • 指兩個或多個事件在同一時間間隔內發生。
並行:一個時間
  • 指兩個或多個事件在同一時刻發生。

共享

  • 指系統中的資源供內存中的多道程序所共同使用。

  • 同時訪問方式,互斥共享方式。

虛擬

  • 指通過某種技術把一個物理實體變成若干個邏輯上的對應物。(虛擬機)

異步性

  • 系統中併發執行的多道程序“走走停停”,以不可預知的速度向前推進

§1.4 操作系統的主要功能

OS定義

  • OS是直接控制和管理計算機硬件、軟件資源,合理地對各類作業進行調度,以方便用戶使用的程序集合
    — 處理機管理功能
    — 存儲器管理功能
    — 設備管理功能
    — 文件管理功能
    — 用戶接口

主要任務

  • 爲多道程序的運行提供良好的運行環境,以保證多道程序能有條不紊、高效地運行,並能最大程度地提高系統中各種資源的利用率和方便用戶的使用。

§1.5 OS結構設計

  • 傳統的操作系統結構
  1. 無結構操作系統
    OS是由衆多的過程直接構成,各過程之間可相互調用,但OS內部不存在任何結構,所以這種OS是無結構的,又稱爲整體系統結構。

    缺點:
    既龐大又雜亂,缺乏清晰的程序結構;程序錯誤多,調試難、閱讀難、理解難、維護難。

  2. 模塊化OS結構
    OS是採用“模塊化程序設計”技術,按其功能劃分爲若干個獨立的模塊,管理相應的功能,同時規定好各模塊之間的接口,以實現其交互,對較大模塊又可按子功能進一步細分下去。

    優點
    提高了OS設計的正確性、可理解性和可維護性
    增強了OS的可適用性
    加速了OS的開發過程

    缺點
    模塊及接口劃分較困難
    從功能上劃分模塊,未區別共享資源和獨佔資源
    由於管理的差異,使OS結構變得不夠清晰

  3. 分層式OS結構
    分層式OS結構是對模塊化結構的一種改進,它按分層式結構設計的基本原則,將OS 劃分爲若干個層次,每一層都只能使用其底層所提供的功能和服務,從硬件開始,在其上面一層一層地自底向上增添相應功能的軟件,這種OS結構稱爲分層式OS結構。

    優點:
    每一步設計都建立在可靠的基礎上,結構更清晰
    調試和驗證更容易,正確性更高

    缺點:
    系統效率降低。只能是單向依賴,每執行一個功能,自底向上需要穿越很多個層次。

  • 現代操作系統結構: 微內核的OS結構
  1. ** 微內核技術的主要思想**
    在OS內核中只留下一些最基本的功能,而將其他服務分離出去,由工作在用戶態下的進程來實現,形成所謂“客戶/服務器”模式。客戶進程可通過內核向服務器進程發送請求,以取OS的服務。

  2. 微內核
    精心設計的,能實現現代OS核心功能的小型內核,它小而精煉,運行在覈心態下,開機後常駐內存,不會因內存緊張而換出,它爲構建通用OS提供了一個重要基礎。

  3. 微內核的基本功能

    • 進程管理
    • 存儲器管理
    • 進程通信管理
    • I/O設備管理
  4. 特點

    • 小而精練
    • 系統的靈活性和可擴充性好
    • 系統的可靠性高
    • 適用於分佈式系統

在這裏插入圖片描述

在這裏插入圖片描述
在這裏插入圖片描述


§1.6 常見的OS

OS:

  1. MS DOS
  2. MS Windows
  3. UNIX
  4. Linux
  5. 手持系統(handheld system)
    嵌入式操作系統 (Embedded OS)
  • MS DOS的結構

  1. DOS BIOS(Basic Input/Output System):由一組與硬件相關的設備驅動程序組成,實現基本的I/O功能;
  2. DOS核心:提供一套獨立於硬件的系統功能:內存管理、文件管理、字符設備和輸入/輸出、實時時鐘等;
  3. 命令處理程序:對用戶命令進行分析和執行;
    在這裏插入圖片描述

通用開放軟件環境(COSE)

  • 一些主要的UNIX系統廠商在1993年成立了通用開放軟件環境聯盟。這些廠家當時包括HP,IBM,Sun,SCO,Novell及UNIX系統實驗室。

自由軟件基金會(FSF)

  • 目標是創建一個與UNIX類似的系統,名爲HURD。
  • 他們的這項工程稱爲GNU(全稱爲GNU’s Not UNIX)。
  • 在編寫HURD的過程中,他們編寫了許多非常有用的、可移植性很強的流行實用程序。
  • 例如GNU C 編譯器gcc。用戶既可以得到這些工具的源代碼而自行進行編譯,也可以得到能立即運行的可執行文件。

Linux的體系結構

  • 用戶應用:文字處理工具、瀏覽器等用戶應用程序;
  • 系統服務:它是操作系統的一部分,但不是內核。包括窗口系- 統、命令解釋程序、應用開發工具(編譯器、系統庫等)
  • Linux內核:操作系統內核,完成資源管理功能。
  • 硬件控制 :系統中的所有物理設備控制 。
    在這裏插入圖片描述

在這裏插入圖片描述

手持系統(handheld system) && 嵌入式操作系統 (Embedded OS)

  • 個人數字助理(Personal Digital Assistants, PDAs)
  • 蜂窩電話(Cellular telephones)
  • 存在的問題
    • 內存有限(32M – 64M)
    • 低速處理器(只有個人計算機處理器速度的幾分之一)
    • 屏幕小(5英寸×3英寸)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章