操作系統(tǒng)是配置在計(jì)算機(jī)硬件上的第一層軟件,是對(duì)硬件系統(tǒng)的首次擴(kuò)充。其主要作用是管理好這些設(shè)備,提高它們的利用率和系統(tǒng)的吞吐量,并為用戶和應(yīng)用程序提供一個(gè)簡(jiǎn)單的接口,便于用戶使用。
1.1 操作系統(tǒng)的目標(biāo)和作用
1.1.1 操作系統(tǒng)的目標(biāo)
- 在計(jì)算機(jī)系統(tǒng)上配置操作系統(tǒng),主要目標(biāo):方便性、有效性、可擴(kuò)充性、開放性
1.1.2 操作系統(tǒng)的作用
- OS作為用戶與計(jì)算機(jī)硬件系統(tǒng)之間的接口
- OS作為計(jì)算機(jī)系統(tǒng)資源的管理者
- OS實(shí)現(xiàn)了對(duì)計(jì)算機(jī)資源的抽象
1.2 操作系統(tǒng)的發(fā)展過(guò)程
1.2.1 未配置操作系統(tǒng)的計(jì)算機(jī)系統(tǒng)
- 人工操作方式
- 脫機(jī)輸入/輸出方式
1.2.2 單道批處理系統(tǒng)
- 先把一批作業(yè)以脫機(jī)方式輸入到磁帶上,并在系統(tǒng)中配上監(jiān)督程序
- 單道批處理系統(tǒng)的缺點(diǎn)在于系統(tǒng)中的資源得不到充分的利用,使得CPU的利用率較低
1.2.3 多道批處理系統(tǒng)
- 用戶所提交的作業(yè)先存放到內(nèi)存上,并且排成一個(gè)“后備隊(duì)列”
- 然后按照一定的算法,從后備隊(duì)列中選擇若干個(gè)作業(yè)調(diào)入內(nèi)存,共享CPU和各種資源
- 優(yōu)點(diǎn)在于資源利用率高、系統(tǒng)吞吐量大
- 缺點(diǎn)在于平均周轉(zhuǎn)時(shí)間長(zhǎng)、無(wú)交互能力
1.2.4 分時(shí)系統(tǒng)
- 推動(dòng)分時(shí)系統(tǒng)形成和發(fā)展的主要?jiǎng)恿?,這是為了滿足用戶對(duì)于人-機(jī)交付的需求
- 具體操作過(guò)程需要滿足 及時(shí)接收和及時(shí)處理 兩個(gè)問(wèn)題
- 作業(yè)直接進(jìn)入內(nèi)存
- 采用輪轉(zhuǎn)運(yùn)行方式—系統(tǒng)規(guī)定每個(gè)作業(yè)每次只能運(yùn)行一個(gè)時(shí)間片
- 分時(shí)系統(tǒng)的特征包括:多路性、獨(dú)立性、及時(shí)性、交互性
1.2.5 實(shí)時(shí)系統(tǒng)
1.3 操作系統(tǒng)的基本特征
其中并發(fā)性和共享性最為重要,且為最基本的特征
1.3.1 并發(fā)(concurrence)
- 并行和并發(fā)
- 并行性是指兩個(gè)或者多個(gè)事件在同一時(shí)刻發(fā)生
- 并發(fā)性是指兩個(gè)或者多個(gè)事件在同一時(shí)間間隔內(nèi)發(fā)生
- 引入進(jìn)程
- 進(jìn)程是指系統(tǒng)中能獨(dú)立運(yùn)行并作為資源分配的基本單位,是一個(gè)能獨(dú)立運(yùn)行的活動(dòng)實(shí)體
1.3.2 共享(sharing)
- 在OS環(huán)境下的資源共享也成為資源復(fù)用
- 互斥共享方式
- 資源可以給多個(gè)進(jìn)程使用,但是規(guī)定在一段時(shí)間內(nèi),只允許一個(gè)進(jìn)程訪問(wèn)該資源
- 把這種一段時(shí)間內(nèi)只允許一個(gè)進(jìn)程訪問(wèn)的資源,稱為臨界資源
- 同時(shí)訪問(wèn)方式
1.3.3 虛擬(virtual)
- 該技術(shù)是通過(guò)“時(shí)分復(fù)用”或者“空分復(fù)用”技術(shù),將一個(gè)物理實(shí)體變?yōu)槿舾蓚€(gè)邏輯上的對(duì)應(yīng)物的功能
1.3.4 異步(asynchronism)
1.4 操作系統(tǒng)的主要功能
1.4.1 處理機(jī)管理功能
- 進(jìn)程控制
- 進(jìn)程同步
- 進(jìn)程通信
- 調(diào)度
- 作業(yè)調(diào)度
- 進(jìn)程調(diào)度
1.4.2 存儲(chǔ)器管理功能
- 內(nèi)存分配
- 內(nèi)存保護(hù)
- 地址映射
- 內(nèi)存擴(kuò)充
1.4.3 設(shè)備管理功能
- 完成用戶進(jìn)程提出的I/O請(qǐng)求,位用戶進(jìn)程分配設(shè)備,并完成I/O指定操作
- 提高CPU和I/O設(shè)備的利用率