定義
作業系統是指控制和管理整個計算機系統的硬體和軟體資源、並合理的組織排程計算機的工作和資源的分配,以提供給使用者和其他軟體方便的介面和環境的最基本的系統軟體
層次結構
提供的功能
作為系統資源的管理者,主要提供以下4個功能:
處理機管理
儲存器管理
檔案管理
裝置管理
作為使用者與計算機硬體的介面,提供以下功能:
命令介面:允許使用者直接使用,分為聯機命令介面(說一句做一句)、離線命令介面(說一堆做一堆)
程式介面:允許通過程式訪問,由一組系統呼叫組成
gui(圖形使用者介面)
作為最接近硬體的層次,提供以下功能:
實現對硬體機器的拓展 特徵
作業系統的發展與分類
每一代新的作業系統出現都是為了彌補上一代的缺陷
按照先後順序
手工作業系統:
缺點:人機速度矛盾(紙帶)
單道批處理系統(引入離線輸入輸出技術)
缺:資源利用率低(高io等待時間)
多道批處理系統(作業系統開始出現,併發)
缺:不提供人機互動功能
分時作業系統:
缺:不能優先處理緊急任務
實時作業系統
能優先處理緊急任務。
硬實時系統:必須絕對規定時間內完成處理
軟實時系統:接受偶爾的違反
作業系統的執行機制
指令:機器可以識別的符號,指令分為特權指令和非特權指令。若機器處於使用者態則可以執行非特權指令,若機器處於核心態則都可以執行。核心程式可以使用兩種指令,因此執行在核心態,普通的應用程式只能執行非特權指令,執行在使用者態。
作業系統的核心
作業系統的核心:是計算機上配置的底層軟體,是作業系統最基本最核心的部分。
作業系統的層次結構
左邊括號包住的被稱為大核心,右邊括號包住的被稱為微核心。
中斷和異常
中斷發生後,意味著需要作業系統的介入,開展管理工作。由於作業系統的管理工作(比如程序的切換、分配io裝置)需要特權指令,因此cpu要從使用者態轉變為核心態。中斷可以使cpu從使用者態切換為核心態,使作業系統獲得對計算機的控制權。有了中斷,才能實現多道程式併發執行。
中斷的分類:
外中斷的處理過程:
執行完每個指令後,cpu都要檢查是否有外中斷的產生
如果檢測出外中斷訊號,則需要保護被中斷程序的cpu環境
根據中斷訊號型別轉入相應的中斷處理程式
恢復原程序的cpu環境並退出中斷,返回原程式繼續往下執行
系統呼叫
應用程式通過系統呼叫請求作業系統的服務,系統中的各種共享資源都由作業系統統一掌管,因此在使用者程式中,凡是與資源有關的操作(如儲存分配、i/o操作、檔案管理等),都必須通過系統呼叫的方式向作業系統提出服務請求,由作業系統代為完成。這樣可以保證系統的穩定性和安全性,防止使用者進行非法操作。系統呼叫的相關處理必須在核心態下進行。
系統呼叫的分類:
系統呼叫的過程:
傳遞系統呼叫引數
執行陷入命令(使用者態)
執行系統呼叫相應服務程式(核心態)
返回使用者程式
注意:陷入指令只在使用者態執行,會引發內中斷從而使cpu進入核心態
作業系統(第一章)
作業系統的設計目標 方便性 有效性 可擴充性 開放性。方便性和有效性是作業系統的設計中最重要的兩個目標。1990年後,開放性已成為新系統或軟體能否被廣泛應用的至關重要管的兩個目標。作業系統的基本特徵 併發性 共享性 虛擬性 非同步性。併發性和共享性是多使用者,多工作業系統兩個最基本的特徵。併發性是多...
作業系統第一章
上網課時記的筆記,mooc上華中科技大學蘇曙光老師的作業系統原理。有點亂 windows,linux,基於unix的mac作業系統,win xp 雙擊,控制程式執行 基本功能 提供操作介面,控制程式執行,管理系統資源,配置系統引數,監控系統狀態,工具軟體集合 功能程序管理 cpu管理 程序控制 排程...
作業系統第一章
作業系統 第一章 作業系統引論 1.2 作業系統的發展過程 1.2.1 未配置作業系統的計算機系統 人工操作方式 早期的操作方式是由程式設計師將事先已穿孔的紙帶 或卡片 裝入紙帶輸入機 或卡片輸入機 再啟動它們將紙帶 或卡片 上的程式和資料輸入計算機,然後啟動計算機執行。僅當程式執行完畢並取走計算結...