操作系統概述
1.1 操作系統的概念
1.1.1 計算機硬件結構(主要由硬件和軟件組成)
計算機系統有五大部分組成:(從功能上來說):①運算器;②控制器;③存儲器;④I/O設備
- (其中運算器和控制器集成在一大片或者幾片大規模或超大規模集成電路中,成爲CPU)
- 指令:控制計算機執行某種操作的命令。
- 特權指令:用於操作系統或其他系統軟件,普通用戶不可以直接使用,主要用於系統資源分配和管理,包括改變系統工作方式,檢測用戶的訪問權限,控制I/O設備工作。
- CPU都提供兩種運行模式:內核態(核心態,系統態,管態),可執行特權指令和用戶態(目態)。
1.1.2 系統初啓一般過程
- 硬件檢測;
- 加載引導程序;
- 初始化內核:
- 第一階段:CPU本身初始化;
- 第二階段:系統中一些基礎設施的初始化;
- 第三階段:對上層部分初始化;
- 實現用戶登錄;
1.1.3 何爲操作系統
- 操作系統作爲擴展機器:
- 通常把裸機之上覆蓋各種軟件,從而形成功能更強的計算機成爲擴展機器或者虛擬機;
- 操作系統作爲資源管理器:
- ①監視各種資源,隨時記錄他們的狀態;
- ②實施某種策略以決定誰獲得資源,何時獲得,獲得多少
- ③分配資源供需求者使用
- ④回收資源,以便再分配
- 操作系統的用戶觀點和系統觀點
- 用戶角度: 操作系統處於用戶與計算機硬件系統之間,爲用戶提供使用計算機系統的接口和各種資源管理服務。
- 系統觀點: 系統是硬件之上的第一層軟件,管理計算機系統中各種硬件資源和軟件資源的分配問題。
- 操作系統的定義及其理解
- 操作系統是:控制和管理計算機系統內各種硬件和軟件資源、有效的組織多道程序運行的系統軟件,是用戶與計算機的接口。
- 操作系統定義: ①它是一款由多道程序組成的系統軟件; ②基本職能:控制和管理系統內部各種資源,有效地組織多道程序的運行;③提供衆多服務,方便用戶使用,擴充硬件功能。
1.1.4 操作系統的目標
- 高效性;
- 方便性;
- 安全性;
- 魯棒性:操作系統做到不死機,不崩潰;
- 移植性;
1.1.5 操作系統的特徵和服務
特徵:
- 併發性:兩個或者多個活動在同一給定的時間間隔中進行;
- 共享性:計算機資源被多個任務所共用;
- 異步性:同一程序在相同的初始數據下,無論何時運行都應獲得同樣的結果。
- 抽象性
提供的服務和方式
- 服務項目:
- 程序執行
- I/O操作
- 文件系統管理
- 出錯檢測
- 通信
- 資源分配
- 統計
- 保護
- 服務方式:
- 系統調用
- 系統程序
1.2 操作系統的主要功能(5種)
1.存儲管理(4種)
- 內存分配:爲每一道程序分配一定的內存空間;
- 地址映射:CPU執行用戶程序時,要從內存中取出指令或數據,爲此就必須把所用的相對地址轉換成內存的物理地址。
- 內存保護:建立內存保護機制;
- 內存擴充
2.進程和處理機管理(4種)
- 作業和進程調度
- 進程控制
- 進程通信
3.文件管理(4種)
- 文件存儲空間的管理:系統文件和用戶文件都要存放在磁盤上。
- 文件操作的一般管理:文件的創建、刪除、打開、關閉等。
- 目錄管理:目錄文件的組織、實現用戶對文件的"按名存取",以及目錄的快速查詢和文件共享
- 文件的讀寫管理和存取控制;
4.設備管理(4種)
- 緩衝區管理
- 設備分配
- 設備驅動
- 設備無關性
5.用戶接口(3種)
- 程序接口(系統組成部分):
- 亦稱系統調用接口,系統調用和操作系統內核和用戶程序、應用程序之間的接口,只能在內核態執行,在unix/linux系統中,系統調用以C函數的形式出現;
- 命令行接口(核外部分,下同):
- 操作系統與用戶的交互界面,在unix/linux系統中,稱爲shell;
- 圖形用戶接口(GUI)
- 利用各種圖形界面工具,直觀、方便、有效地使用系統服務和各種應用程序及使用工具。
1.3操作系統的形成和基本類型
1.3.1 操作系統的形成和發展
- 手工操作階段
- 早期批處理階段
- 早期聯機批處理
- 早期脫機批處理
- 多道批處理系統
- 基本思想:在內存中同時存放多道程序,在管理程序的控制下交替的執行。
1.3.2 操作系統的基本類型(3種類型)
- 多道批處理系統
- 工作流程:操作員把用戶提交的作業卡片放到卡讀機上,通過SPOOLing輸入程序把這些作業及時送入直接存區的後援存儲器;作業調度程序根據系統的當時情況和個後備作業的特點,按一定的調度原則,選擇一個或幾個搭配得當的作業裝入內存準備運行;內存中多個作業交替執行,當某個作業完成時,系統把該作業的計算結果交給SPOOLing輸出程序準備輸出,並回收該作業的全部資源。
- 特點(2個):①多道;②成批
- 優點:①:系統資源利用率高;②:系統吞吐量大
- 缺點:①:用戶作業的等待時間長;②:沒有交互能力,用戶無法干預自己作業的執行,使用起來不方便;
- 分時系統(4個特點)
- 同時性;
- 交互性;
- 獨立性;
- 及時性;
- 優點: ①:爲用戶提供友好的接口; ②:促進了計算機的普遍應用;③:便於資源共享和交換信息
- 實時系統
-
特點: 對時間的嚴格限制和對可靠性的嚴格要求
-
實時系統的類型(3種)
- 過程控制系統;
- 信息查詢系統;
- 事務處理系統;
- 實時系統與分時系統的區別:
- 分時系統交互作用能力強,實時系統的弱;
- 分時系統對響應時間數量級規定爲秒,而實時系統數量級可達毫秒甚至微秒;
- 實時系統對可靠性的要求更高;
1.4 操作系統的主要結構
- 單機結構
- 層次結構
- 虛擬機結構
- 客戶-服務器結構