1. 程式人生 > 其它 >計算機作業系統總結(第一章)

計算機作業系統總結(第一章)

目錄

第一章 作業系統引論

1.1 作業系統的目標和作用

  1. 計算機系統由硬體系統和軟體系統組成
    • 硬體系統:中央處理器、儲存器、輸入輸出裝置
    • 軟體系統:系統軟體和應用軟體
  2. 作業系統是配置在裸機上的第一層軟體。裸機+作業系統=虛擬機器或擴充套件機
  3. 作業系統的目標:
    • 有效性:提高系統資源利用率、提高系統吞吐量
    • 方便性
    • 可擴充性
    • 開放性
  4. 作業系統的作用:
    1. OS作為使用者與計算機硬體系統之間的介面:
      • 使用者通過三種方式使用計算機:命令方式、系統呼叫方式、圖示、視窗呼叫方式
    2. OS作為計算機系統資源的管理者
    3. OS實現了對計算機資源的抽象:
      • I/O軟體實現了對計算機硬體操作的第一個層次的抽象
      • 檔案管理軟體實現了對硬體資源操作的第二個層次的抽象
  5. 推動作業系統發展的主要動力:
    1. 不斷提高計算機資源的利用率
    2. 方便使用者
    3. 器件的不斷更新換代
    4. 不斷出現的新的應用需求

1.2 作業系統的發展過程

  1. 無作業系統的計算機系統

    1. 人工操作方式
      • 使用者獨佔計算機全部資源
      • CPU等待人工操作
    2. (為緩和人機矛盾)引入離線輸入/輸出方式
      • (通過外圍機控制輸入輸出)在主機的直接控制下進行輸入輸出的方式稱作聯機輸入/輸出方式
      • 減少了CPU的空閒時間
      • 提高了I/O速度
  2. 單道批處理系統:

    1. 離線輸入一批作業,由監督程式控制,一個接一個地連連續自動處理
    2. 特徵:
      • 自動性
      • 順序性
      • 單道性
    3. 缺點:資源不能充分利用
  3. 多道批處理系統:

    1. 引入多道程式設計技術,作業先存放在外存排成佇列(後備佇列)
    2. 好處:
      • 提高CPU的利用率
      • 提高記憶體和I/O裝置的利用率
      • 增加系統吞吐量
    3. 優缺點:
      • 資源利用率高
      • 系統吞吐量大
      • 平均週轉時間長
      • 無互動能力
    4. 需要解決的問題:處理機管理問題、記憶體管理問題、I/O裝置管理問題、檔案管理問題、作業管理問題、使用者與系統介面問題
  4. 分時系統:

    1. 多路卡:從終端輸入資料,為每個終端配置一個緩衝區
    2. 時間片:每個作業執行一個很短的時間
    3. 特徵:
      • 多路性(同時性)
      • 獨立性
      • 及時性
      • 互動性
  5. 實時系統:實時表示及時,系統能及時相應外部時間的請求

    1. 應用需求:1. 實時控制(實時系統) 2. 實時資訊處理(實時資訊處理系統)
    2. 實時任務:
      • 週期性、非週期性(必須聯絡一個截止時間(開始、截止))
      • 硬實時任務、軟實時任務
    3. 比較:
      • 多路性。實時資訊處理系統也按分時原則為多個終端使用者服務。而分時系統中的多路性則與使用者情況有關,時多時少。
      • 獨立性。彼此獨立地操作,互不干擾
      • 及時性。實時資訊處理系統對實時性的要求與分時系統類似,人所能接受的等待時間來確定;而實時控制系統的及時性,則是以控制物件所要求的開始截止時間或完成截止時間來確定的,一般為秒級到毫秒級,甚至有的要低於100微秒。
      • 互動性。實時資訊處理系統雖然也具有互動性,僅限於某些特定的專用服務程式。不像分時系統那樣能向終端使用者提供資料處理和資源共享等服務。
      • 可靠性。分時系統雖然也要求系統可靠,但相比之下,實時系統則要求系統具有高度的可靠性。
    • 批處理系統:IBM System360大型機的OS/360

    • 分時系統:Unix

    • 實時系統:VxWorks、實時Linux

  6. 微機作業系統的發展:

    1. 單使用者單任務作業系統
    2. 單使用者多工作業系統
    3. 多使用者多工作業系統

1.3 作業系統的基本特性

  1. 併發性:
    1. 並行性:兩個或多個事件在同一個時刻發生
    2. 併發性:連個或多個事件在同一個時間間隔內發生
  2. 引入程序:
    1. 程式是靜態實體,在多道程式系統中不能獨立執行,更不能併發執行
    2. 引入程序的目的:為了使多個程式能併發執行
  3. 共享性:
    1. 互斥共享方式
    2. 同時訪問方式(磁碟)
    3. 併發和共享是作業系統的兩個最基本的特徵,它們互為存在的條件。
  4. 虛擬技術:
    1. 時分複用技術:提高資源利用率
      • 虛擬處理機技術
      • 虛擬裝置技術
    2. 空分複用技術:提高儲存空間利用率
      • 虛擬磁碟技術
      • 虛擬儲存器技術(本質上就是使記憶體分時複用)
  5. 非同步性

1.4 作業系統的主要功能

  1. 處理機管理功能:
    1. 程序控制
    2. 程序同步:1. 程序同步方式, 2. 程序同步方式
    3. 程序通訊
    4. 排程:1. 作業排程, 2. 程序排程
  2. 儲存器管理功能:
    1. 記憶體分配:1. 靜態, 2. 動態
    2. 記憶體保護
    3. 地址對映
    4. 記憶體擴充:1. 請求調入功能,2. 置換功能
  3. 裝置管理功能:
    1. 緩衝管理
    2. 裝置分配
    3. 裝置處理
  4. 檔案管理功能:
    1. 檔案儲存空間的管理
    2. 目錄管理
    3. 檔案的讀/寫管理和保護
  5. 作業系統與使用者之間的介面
    1. 使用者介面
    2. 程式介面

1.5 OS結構設計

  1. 傳統作業系統結構
    1. 無結構作業系統
    2. 模組化結構OS
    3. 分層式結構OS
  2. 客戶/伺服器模式
  3. 面向物件程式設計
  4. 微核心OS結構