第一章 操作系統概述
文章目錄
1.1操作系統的基本概念
1.1.1 概念
1.操作系統是系統資源的管理者。
2.向上層提供方便易用的服務。
操作系統(Operating System ,OS)是控制和管理整個計算機系統的硬件和軟件資源,併合理地組織調度計算機的工作和資源的分配;以提供給用戶和其他軟件方便的接口和環境;它是計算機系統中最基本的系統軟件。
1.1.2 特徵
1.併發:指兩個或多個事件在同一時間間隔內發生。這些事件宏觀上同時發生,但微觀上是交替發生的。
並行:指兩個或多個事件在同一時刻同時發生。
2.共享:即資源共享,是指系統中的資源可供內存這多個併發執行的程序共同使用。
2.1 互斥共享方式
2.2 同時共享方式
3.虛擬:虛擬是指把一個物理上的實體變爲若干個邏輯上的對應物,虛擬實體是實際存在的,而邏輯上的對應物是用戶感受到的。
3.1空分複用技術(如虛擬存儲器技術)
3.2時分複用技術(如虛擬處理器)
沒有併發性,就談不上虛擬性。
4.異步:異步是指在多道程序環境下允許多個程序併發執行,但由於資源有限,進程的執行不會一貫到底的,而是走走停停,以不可預知的速度向前推進,這就是進程的異步性
注意(重點):
1.單核CPU同一時刻只能執行一個程序,各個程序只能併發地執行。
2.多核CPU同一時刻只能執行多個程序,多個程序可以並行地執行。
3.併發性和共享性 (互爲存在條件)
重要考點:
理解併發和並行的區別
併發和共享互爲存在條件
沒有併發和共享,就談不上虛擬和異步,因此併發和共享是操作系統的兩個最基本特徵。
1.1.3 目標和功能
1.功能
1.處理機功能
2.存儲器管理
3.文件管理
4.設備管理
注:執行一個程序前需要把該程序放到內存中,才能被CPU處理。
2.目標
1.向上層提供方便易用的服務。
如:GUI、命令接口、系統調用.....
2.實現對硬件機器的拓展。擴充機器
1.2 操作系統的發展與分類
1.手工操作階段:主要缺點:用戶獨佔全機,人機速度矛盾導致資源利用率極低。
2.批處理階段--單道批處理系統:引入脫機輸入/輸出技術,並由監督程序負責控製作業輸入、輸入。
優點:緩解了一定程度的人機速度矛盾,資源利用率有所提升。
缺點:內存中僅能有一道程序運行,只有該程序運行結束之後,才能調入下一道程序,CPU有大量的時間是在空前等待I/O完成,資源利用率依然低.
3.批處理階段--多道批處理系統
主要優點:多道程序併發執行,共享計算機資源,資源利用率大幅提升,CPU和其他資源更能保持忙碌狀態,系統吞吐量增大。
主要缺點:用戶響應時間長,沒有人機交互功能。
4.分時操作系統:計算機以時間片爲單位輪流爲各個用戶/作業服務,各個用戶可以通過終端與計算機進行交互。
主要優點:用戶請求被及時響應,解決的人機交互的問題,允許多個用戶同時使用一臺計算機,並且用戶對計算機操作相互獨立,感受不到別人的存在。
主要缺點:不能優先處理一些緊急任務,操作系統對各個用戶作業都是完全公平的,循環的爲每一個用戶/作業服務一個時間片,不能區分任務的緊急性。
5,實時操作系統:計算機系統收到外部信號後及時進行處理,並且又在嚴格規定的時限內處理完事件。主要特點就是及時性和可靠性。
主要優點:能夠優先響應一些緊急事務,某些緊急任務不需要時間便排隊。
其他操作系統:
總結:
1.3 操作系統的運行環境
程序運行的過程其實就是CPU執行一條條的機器指令的過程。
指令就是處理器(cpu)能夠識別、執行的最基本命令。
1.3.1 操作系統的運行機制
1.兩類程序
1.內核程序
2.應用程序
2.兩類指令
1.特權指令
2.非特權指令
3.兩種處理器狀態
1。內核態/核心態/管態
2.用戶態/目態
4.內核
內核(Knernel)時操作系統最重要最核心的部分。
由很多內程序組成操作系統內核
5.如何進行狀態轉變
1.內核態-->用戶態:執行一條特權指令--修改PSW的標誌位爲”用戶態“,這個動作意味着操作系統將主動讓出CPU使用權。
2.用戶態-->內核態:由”中斷“引發,硬件自動完成變態過程,觸發中斷信號意味着操作系統將強行奪回CPU控制權。
1.3.2 中斷和異常的概念
1. 中斷的作用
會使CPU由用戶態變爲內核態,使操作系統程序奪回對CPU的控制權。
2.中斷的分類
1.內中斷:與當前執行的指令有關,中斷信號來源於CPU內部。
2.外中斷:與當前執行的指令無關,中斷信號來源於CPU外部。
3.中斷例子
1.試圖在用戶態下執行特權指令
2.執行處罰指令時發現除數爲0
3.有時候應用程序想請求操作系統系統內核服務,此時會執行一條特殊指令---陷入指令,該指令會引發一個內部中斷信號。執行”陷入指令“意味着應用程序主動將CPU控制權還給操作系統內核。系統調用就是通過陷入指令完成的。
4.時鐘中斷
5.I/O中斷
1.3.3 系統調用
【什麼是系統調用】
操作系統對應用程序/程序員提供的接口
應用程序通過系統調用,請求操作系統的服務和系統中的各種共享資源(存儲分配、I/O操作、文件管理等)由操作系統內核統一掌管,法因此凡是與共享資源有關的操作,都必須通過系統調用的方式向系統內核提出服務請求,由操作系統內核代爲完成,這樣可以保證系統的//穩定性和安全性,防止用戶進行非法操作。
【系統調用與庫函數的區別】
有點庫函數對系統調用的進一步封裝
有的庫函數沒有使用系統調用
【系統調用過程】
陷入指令 = trap指令 = 訪管指令
1.4 操作系統的體系結構
1.4.1 大內核和微內核
內核是操作系統最基本、最核心的部分。
實現操作系統內核功能的那些程序就是內核程序。