1.1 操作系統(tǒng)
1.1.1 操作系統(tǒng)的概念和功能
概念
操作系統(tǒng)(Operating System, OS)是指控制和管理整個計算機系統(tǒng)的硬件和軟件資源,并合理地組織調度計算機的工作和資源的分配;以提供給用戶和其他軟件方便的接口和環(huán)境;它是計算機系統(tǒng)中最基本的系統(tǒng)軟件。


功能和目標
①操作系統(tǒng)是系統(tǒng)資源的管理者

②向上層提供方便易用的服務
封裝思想:操作系統(tǒng)把一些丑陋的硬件功能封裝成簡單易用的服務,使用戶能更方便地使用計算機,用戶無需關心底層硬件的原理,只需要對操作系統(tǒng)發(fā)出命令即可。

- GUI :圖形化用戶接口(
Graphical User Interface)。用戶可以使用形象的圖形界面進行操作,而不再需要記憶復雜的命令、參數(shù)。例如,在Windows操作系統(tǒng)中,刪除一個文件只需要把文件“拖拽”到回收站即可。 - 聯(lián)機命令接口 =交互式命令接口:用戶說一句,系統(tǒng)跟著做一句.例如,執(zhí)行
cmd的相關命令 - 脫機命令接口 =批處理命令接口:用戶說一堆,系統(tǒng)跟著做一堆.例如,執(zhí)行以
bat后綴的文件 - 程序接口 :可以在程序中進行
系統(tǒng)調用來使用程序接口。普通用戶不能直接使用程序接口,只能通過程序代碼間接使用。例如,寫C語言Hello world程序時,在printf函數(shù)的底層就使用到了操作系統(tǒng)提供的顯式相關的“系統(tǒng)調用”
③是最接近硬件的一層軟件
需要實現(xiàn)對硬件機器的拓展
沒有任何軟件支持的計算機稱為裸機。在裸機上安裝的操作系統(tǒng),可以提供資源管理功能和方便用戶的服務功能,將裸機改造成功能更強、使用更方便的機器
通常把覆蓋了軟件的機器成為擴充機器,又稱之為虛擬機
1.2 操作系統(tǒng)的特征

基本特征
并發(fā)、共享、虛擬、異步
并發(fā)
兩個或者多個事件在同一時間間隔內發(fā)生,這些事件宏觀上是同時發(fā)生的,但微觀上是交替發(fā)生的
使得系統(tǒng)具有處理和調度多個程序同時執(zhí)行的能力
操作系統(tǒng)的并發(fā)是通過分時實現(xiàn)的
注意 :并發(fā)是指在一個時間段,并行是指在同一個時刻,并行是指系統(tǒng)具有同時執(zhí)行或操作(硬件支持:多流水線或者多處理機)
- 單核
CPU同一時刻只能執(zhí)行一個程序,各個程序只能并發(fā)地執(zhí)行 - 多核
CPU同一時刻可以同時執(zhí)行多個程序,多個程序可以并行地執(zhí)行
共享

互斥共享方式: 例如打印機、磁帶, 同一時刻只能供一個進程對資源進行訪問 。這種資源稱作:臨界資源或者獨占資源同時訪問方式: 一段時間內允許多個進程對資源進行訪問 ,典型代表:磁盤設備重入碼編寫的文件
虛擬
虛擬是指把一個物理上的實體變?yōu)槿舾蓚€邏輯上的對應物。物理實體(前者)是實際存在的,而邏輯上對應物(后者)是用戶感受到的。

虛擬處理器:采用多道程序并發(fā)的方式,讓每個終端用戶感覺到有多個處理器 時分復用技術
虛擬存儲器:將物理存儲變?yōu)樘摂M存儲器,邏輯上擴充存儲器用 空分復用技術
也可以將一臺IO設備虛擬為多臺邏輯上的IO設備,并允許每個用戶占用一臺邏輯上的IO設備
異步
在多道程序環(huán)境下,允許多個程序并發(fā)執(zhí)行,但由于資源有限,進程的執(zhí)行不是一貫到底的,多道程序走走停停,進程以不可預知的速度向前進
并發(fā)和共享的關系
- 并發(fā)性指計算機系統(tǒng)中同時存在著多個運行著的程序。
- 共享性是指系統(tǒng)中的資源可供內存中多個并發(fā)執(zhí)行的進程共同使用。
- 故并發(fā)性和共享性
互為存在條件
并發(fā)和虛擬的關系
如果失去了并發(fā)性,則一個時間段內系統(tǒng)中只需運行一道程序,那么就失去了實現(xiàn)虛擬性的意義了。因此,沒有并發(fā)性,就談不上虛擬性
并發(fā)和異步的關系
只有系統(tǒng)擁有并發(fā)性,才有可能導致異步性。
1.3 操作系統(tǒng)的發(fā)展與分類

手工操作階段

- 主要缺點: 用戶獨占全機、人機速度矛盾導致資源利用率極低
單道批處理
引入脫機輸入/輸出技術(用外圍機+磁帶完成),并由監(jiān)督程序負責控制作業(yè)的輸入、輸出

- 主要優(yōu)點:緩解了一定 程度的人機速度矛盾, 資源利用率有所提升。
- 主要缺點:內存中僅能
有一道程序運行,只有 該程序運行結束之后才 能調入下一道程序。CPU有大量的時間是在 空閑等待I/O完成。資源 利用率依然很低。
多道批處理

- 主要優(yōu)點:多道程序
并發(fā)執(zhí)行,共享計算機 資源。資源利用率大幅提升,CPU和其他資源更能保持“忙碌”狀態(tài),系統(tǒng)吞吐量增大。 - 主要缺點:用戶響應時間長,
沒有人機交互功能(用戶提交自己的作業(yè)之后就只能等待計算機處理完成,中間不能控制自己的作業(yè) 執(zhí)行。eg:無法調試程序/無法在程序運行過 程中輸入一些參數(shù))
分時操作
分時操作系統(tǒng):計算機以時間片為單位輪流為各個用戶/作業(yè)服務,各個用戶可通過終端與計算機進行交互。

- 主要優(yōu)點:用戶請求可以被即時響應,
解決了人機交互問題。允許多個用戶同時使用一臺計算機,并且用戶對計算機的操作相互獨立,感受不到別人的存在。 - 主要缺點:
不能優(yōu)先處理一些緊急任務。操作系統(tǒng)對各個用戶/作業(yè)都是完全公平的,循環(huán)地為每個用戶/作業(yè)服務一個時間片,不區(qū)分任務的緊急性。
實時操作
在實時操作系統(tǒng)的控制下,計算機系統(tǒng)接收到外部信號后及時進行處理,并且要在嚴格的時限內處理完事件。實時操作系統(tǒng)的主要特點是及時性和可靠性
- 主要優(yōu)點:能夠
優(yōu)先響應一些緊急任務,某些緊急任務不需時間片排隊。
其他幾種操作系統(tǒng)
- 網(wǎng)絡操作系統(tǒng) :是伴隨著計算機網(wǎng)絡的發(fā)展而誕生的,能把網(wǎng)絡中各個計算機有機地結合起來,實現(xiàn)數(shù)據(jù)傳送等功能, 實現(xiàn)網(wǎng)絡中各種資源的共享(如文件共享)和各臺計算機之間的通信 。(如:
Windows NT就是一種典型的網(wǎng)絡操作系統(tǒng),網(wǎng)站服務器就可以使用) - 分布式操作系統(tǒng) :主要特點是
分布性和并行性。系統(tǒng)中的各臺計算機地位相同, 任何工作都可以分布在這些計算機上,由它們并行、協(xié)同完成這個任務 。 - 個人計算機操作系統(tǒng) :如
Windows XP、MacOS,方便個人使用。
1.4 操作系統(tǒng)的運行機制

運行機制
兩種處理器狀態(tài):內核態(tài) & 用戶態(tài)
CPU 中有一個寄存器叫 程序狀態(tài)字寄存器(PSW),其中有個二進制位,1表示內核態(tài),0表示用戶態(tài)

別名:**內核態(tài)=核心態(tài)=管態(tài);用戶態(tài)=目態(tài)**
- CPU 有兩種狀態(tài),“內核態(tài)”和“用戶態(tài)”
- 處于內核態(tài)時,說明此時正在運行的是
內核程序,此時可以執(zhí)行特權指令 - 處于用戶態(tài)時,說明此時正在運行的是
應用程序,此時只能執(zhí)行非特權指令
- 處于內核態(tài)時,說明此時正在運行的是

- 內核態(tài)、用戶態(tài)的切換
- 內核態(tài)--用戶態(tài):執(zhí)行一條
特權指令——修改PSW的標志位為“用戶態(tài)”,這個動作意味著操作系統(tǒng)將主動讓出CPU使用權 - 用戶態(tài)--內核態(tài):由“ 中斷 ”引發(fā),
硬件自動完成變態(tài)過程,觸發(fā)中斷信號意味著操作系統(tǒng)將強行奪回CPU的使用權
- 內核態(tài)--用戶態(tài):執(zhí)行一條

內核
內核是計算機上配置的底層軟件,是操作系統(tǒng)最基本、最核心的部分。實現(xiàn)操作系統(tǒng)內核功能的那些程序就是內核程序。

原語

原語是一種特殊的程序。是最接近硬件的部分,這種程序的運行具有原子性。
大內核和微內核
操作系統(tǒng)的體系結構問題與企業(yè)的管理問題很相似。

- 大內核 :企業(yè)初創(chuàng)時體量不大,管理層的人會負責大部分的事情。優(yōu)點是效率高;缺點是組織結構混亂,難以維護。
- 微內核 :隨著企業(yè)體量越來越大,管理層只負責最核心的一些工作。優(yōu)點是組織結構清晰,方便維護;缺點是效率低

1.5 中斷和異常
中斷的作用
CPU 上會運行兩種程序,一種是操作系統(tǒng)內核程序,一種是應用程序
中斷是讓操作系統(tǒng)內核奪回CPU使用權的唯一途徑
中斷的類型
- 內中斷 : 與當前執(zhí)行的指令
有關,中斷信號來源于CPU內部 - 外中斷 : 與當前執(zhí)行的指令
無關,中斷信號來源于CPU外部

中斷機制的基本原理

不同的中斷信號,需要用不同的中斷處理程序來處理 。當CPU檢測到中斷信號后,會根據(jù)中斷信號的類型去查詢中斷向量表,以此來找到相應的中斷處理程序在內存中的存放位置。

1.6 系統(tǒng)調用
- 系統(tǒng)調用與庫函數(shù)的區(qū)別

“系統(tǒng)調用”是操作系統(tǒng)提供給應用程序(程序員/編程人員)使用的接口,可以理解為一種可供應用程序調用的特殊函數(shù),應用程序可以通過系統(tǒng)調用來請求獲得操作系統(tǒng)內核的服務

應用程序通過系統(tǒng)調用請求操作系統(tǒng)的服務。而系統(tǒng)中的各種共享資源都由操作系統(tǒng)內核統(tǒng)一掌管,因此 凡是與共享資源有關的操作(如存儲分配、I/O操作、文件管理等),都必須通過系統(tǒng)調用的方式向操作系統(tǒng)內核提出服務請求 ,由操作系統(tǒng)內核代為完成。這樣可以保證系統(tǒng)的穩(wěn)定性和安全性,防止用戶進行非法操作。
1.7 操作系統(tǒng)的體系結構
- 典型的大內核/宏內核/單內核 操作系統(tǒng):
Linux、UNIX - 典型的 微內核 操作系統(tǒng):
Windows NT
-
操作系統(tǒng)
+關注
關注
37文章
7431瀏覽量
129592 -
軟件
+關注
關注
69文章
5349瀏覽量
91858 -
計算機系統(tǒng)
+關注
關注
0文章
292瀏覽量
25336
發(fā)布評論請先 登錄
操作系統(tǒng)ppt課件
實時操作系統(tǒng)概念
操作系統(tǒng)原理基本概念
你都知道操作系統(tǒng)的核心概念都有哪些嗎
嵌入式實時操作系統(tǒng)基本概念
什么是嵌入式操作系統(tǒng)?嵌入式操作系統(tǒng)有何功能
操作系統(tǒng) ppt
Windows XP操作系統(tǒng) ppt課件
Linux操作系統(tǒng)原理及應用
操作系統(tǒng)的種類
簡要介紹了操作系統(tǒng)虛擬化的概念,以及實現(xiàn)操作系統(tǒng)虛擬化的技術
嵌入式操作系統(tǒng)復習筆記1-------嵌入式實時操作系統(tǒng)基本概念
操作系統(tǒng)不同的緩沖區(qū)概念
操作系統(tǒng)的概念和功能
評論