计算机操作系统 汤子瀛(慕课版)
第1章 操作系統(tǒng)引論
操作系統(tǒng)
①是配置在計(jì)算機(jī)硬件上的第一層軟件,是對(duì)硬件系統(tǒng)的首次擴(kuò)充,
②主要用于管理硬件設(shè)備,提高他們的利用率和系統(tǒng)吞吐量
③為用戶和應(yīng)用程序提供簡(jiǎn)單的接口,以便用戶和應(yīng)用程序使用硬件設(shè)備
④OS是計(jì)算機(jī)系統(tǒng)中最基礎(chǔ),最重要的系統(tǒng)軟件
操作系統(tǒng)的目標(biāo)
①方便性,如果計(jì)算機(jī)只有硬件系統(tǒng),操作員只能通過機(jī)器指令進(jìn)行編程,具體按鈕進(jìn)行操作,十分繁雜,有了操作系統(tǒng)就可以屏蔽部分機(jī)器指令,用戶可以通過高級(jí)語(yǔ)言編碼,經(jīng)編譯程序翻譯為機(jī)器語(yǔ)言,執(zhí)行指令或者直接使用OS提供的各種命令來操作計(jì)算機(jī)
②有效性,提高系統(tǒng)資源的利用率,提高系統(tǒng)的吞吐量,有效管理與控制軟硬件資源
③可擴(kuò)充性,適應(yīng)計(jì)算機(jī)硬件,體系結(jié)構(gòu)以及應(yīng)用發(fā)展的要求;OS從早期的無結(jié)構(gòu)發(fā)展為模塊化結(jié)構(gòu),到分層式結(jié)構(gòu),再到近年來的微內(nèi)核結(jié)構(gòu)/外核;結(jié)構(gòu)可方便添加新的功能和模塊,以及對(duì)原有功能模塊進(jìn)行修改,具有良好的可擴(kuò)充性,擴(kuò)充軟硬件不會(huì)對(duì)OS產(chǎn)生很大影響
④開放性,為解決計(jì)算機(jī)軟硬件兼容問題;系統(tǒng)遵循國(guó)際標(biāo)準(zhǔn),特別是遵循開放系統(tǒng)互連參考模型(open system interconnect, OSI)
其中方便性和有效性是OS最重要的兩個(gè)目標(biāo)
操作系統(tǒng)的作用
對(duì)計(jì)算機(jī)系統(tǒng)進(jìn)行統(tǒng)一管理與調(diào)度,提供各種強(qiáng)有力的服務(wù),人機(jī)交互,資源管理,資源抽象等
1.OS作為用戶與計(jì)算機(jī)硬件系統(tǒng)之間的接口;向上提供服務(wù),向下管理資源;
2.OS作為計(jì)算機(jī)系統(tǒng)資源的管理者
計(jì)算機(jī)中含有多種軟件資源和硬件資源,這些資源大致分為4類:處理機(jī),存儲(chǔ)器,I/O設(shè)備,文件資源/信息(程序和數(shù)據(jù))
操作系統(tǒng)的對(duì)應(yīng)功能就是針對(duì)這四類資源的有效管理,處理機(jī)管理負(fù)責(zé)處理機(jī)的分配與控制;存儲(chǔ)器管理負(fù)責(zé)內(nèi)存的分配與控制;I/O設(shè)備管理負(fù)責(zé)I/O設(shè)備的分配(回收)與操縱;文件管理負(fù)責(zé)文件的存取,共享與保護(hù)等。
3.OS實(shí)現(xiàn)了對(duì)計(jì)算機(jī)資源的抽象
在裸機(jī)上鋪設(shè)的I/O軟件,隱藏了I/O設(shè)備的具體細(xì)節(jié),向上提供了一組抽象的I/O設(shè)備
OS的工作補(bǔ)充
完成程序的執(zhí)行;完成與硬件相關(guān)的工作;完成與應(yīng)用無關(guān)的工作;計(jì)算機(jī)的效率與安全問題(OS的安全問題)
課后實(shí)踐
OS原理與實(shí)際運(yùn)用OS的關(guān)系
操作系統(tǒng)發(fā)展的主要?jiǎng)恿?/h2>
1.不斷提供的計(jì)算機(jī)系統(tǒng)資源的利用率
2.方便用戶
3.器件不斷更新?lián)Q代
4.計(jì)算機(jī)體系結(jié)構(gòu)不斷發(fā)展
5.不斷提出新的應(yīng)用要求
操作系統(tǒng)的發(fā)展過程
手工操作—>簡(jiǎn)單批處理—>多道批處理—>分時(shí)系統(tǒng)—>實(shí)時(shí)系統(tǒng)—>微機(jī),多處理機(jī),網(wǎng)絡(luò),分布式OS
未配置操作系統(tǒng)的計(jì)算機(jī)
1.人工操作方式
特點(diǎn):用戶獨(dú)占全機(jī),CPU等待人工操作
缺點(diǎn):人工操作的方式嚴(yán)重降低了計(jì)算機(jī)資源的利用率(問題主要表現(xiàn)在,人工操作方式下紙帶的裝填速度,明顯慢于CPU的運(yùn)行速度),所謂人機(jī)矛盾;CPU與I/O設(shè)備之間速度不匹配的矛盾更加突出;
解決方式:通道技術(shù),緩存技術(shù),但并未很好地解決上述矛盾,直至引入脫機(jī)I/O技術(shù)
2.脫機(jī)I/O方式
優(yōu)點(diǎn):
減少CPU的空閑時(shí)間——數(shù)據(jù)是在外圍機(jī)控制下輸入到高速磁帶當(dāng)中,脫機(jī)控制,并不占用主機(jī)時(shí)間
提高了I/O速度——當(dāng)CPU需要數(shù)據(jù)時(shí),數(shù)據(jù)直接從高速磁帶輸入內(nèi)存,極大提高了I/O速度,進(jìn)一步減少了CPU空閑時(shí)間
為解決CPU與I/O設(shè)備之間速度不匹配的問題
由于程序和數(shù)據(jù)的輸入和輸出都是在外圍機(jī)的控制下完成的,或者說,他們都是在脫離主機(jī)的情況下進(jìn)行的,故稱其為脫機(jī)控制方式
(將要輸入的的用戶程序和數(shù)據(jù)通過外圍機(jī)輸入到磁帶當(dāng)中保存,當(dāng)CPU需要這些程序和數(shù)據(jù)時(shí)再通過磁帶調(diào)入內(nèi)存;當(dāng)需要輸出時(shí),CPU將數(shù)據(jù)從內(nèi)存高速地送到磁帶上,然后在另一臺(tái)外圍機(jī)的控制下將數(shù)據(jù)通過相應(yīng)的輸出設(shè)備輸出)
單道批處理系統(tǒng)
特性與研發(fā)目的
自動(dòng)性:作業(yè)挨個(gè)處理,無人工干預(yù)
單道性:內(nèi)存中僅有一道程序,順序性(先進(jìn)先出)
單道批處理系統(tǒng)研發(fā)目的:為了能充分提高計(jì)算機(jī)的利用率,應(yīng)盡量保持系統(tǒng)連續(xù)運(yùn)行,即使其在處理完一個(gè)作業(yè)后,緊接著處理下一個(gè)作業(yè),減少系統(tǒng)空閑時(shí)間
單道批處理系統(tǒng)的處理過程
作業(yè)以脫機(jī)方式輸入到磁帶上,并在系統(tǒng)中配上監(jiān)督程序。在監(jiān)督程序的控制下,這批作業(yè)能一個(gè)接一個(gè)地被連續(xù)處理;
處理過程:監(jiān)督程序?qū)⒋艓系牡谝粋€(gè)作業(yè)裝入內(nèi)存,并把運(yùn)行控制權(quán)交給該作業(yè);當(dāng)作業(yè)處理完成時(shí),又把運(yùn)行控制權(quán)交還給監(jiān)督程序,直到這批作業(yè)處理完畢;
單通道批處理系統(tǒng)的流程圖
?單道批處理系統(tǒng)的缺點(diǎn)
系統(tǒng)中的資源得不到充分利用——內(nèi)存中僅有一道程序,每逢該程序在運(yùn)行中發(fā)出I/O請(qǐng)求后,CPU便會(huì)處于等待狀態(tài),并且必須在該程序I/O完成后才能繼續(xù)運(yùn)行
計(jì)算機(jī)內(nèi)存資源被浪費(fèi),多種I/O設(shè)備也未被很好利用
多道批處理系統(tǒng)
多道程序設(shè)計(jì)的基本概念
多道——宏觀并行,微觀串行,內(nèi)存同時(shí)駐留多道程序容許并發(fā)執(zhí)行
無序性——受資源影響,進(jìn)出順序不一致
成批處理
設(shè)計(jì)目的:為進(jìn)一步提高資源利用率和系統(tǒng)吞吐量
執(zhí)行流程:用戶所提交作業(yè)放于外存,并形成一個(gè)“后備隊(duì)列”
? ? ? ? ? ? ? ? ? 作業(yè)調(diào)度程序按一定的算法從后備隊(duì)列中選擇若干個(gè)作業(yè)調(diào)入內(nèi)存,使他們共享CPU和系統(tǒng)中的各種資源;
由于內(nèi)存中裝有若干道程序,在運(yùn)行程序A時(shí),利用因其I/O操作而暫停執(zhí)行時(shí)的CPU空擋時(shí)間,再調(diào)度另一道程序B執(zhí)行
多道批處理系統(tǒng)的優(yōu)缺點(diǎn)
資源利用率高
系統(tǒng)吞吐量大
平均周轉(zhuǎn)時(shí)間長(zhǎng)
無交互能力
多道批處理系統(tǒng)需解決的問題
爭(zhēng)用處理機(jī)問題
內(nèi)存分配與保護(hù)問題
I/O設(shè)備分配問題
文件的組織與管理問題
作業(yè)管理問題
用戶與系統(tǒng)的接口問題
OS是一組能有效地組織和管理計(jì)算機(jī)軟硬件資源,合理地對(duì)各類作業(yè)進(jìn)行調(diào)度,以及方便用戶使用的程序集合
分時(shí)系統(tǒng)
分時(shí)系統(tǒng)的引入
為滿足人機(jī)交互的需求
特點(diǎn):人機(jī)交互,共享主機(jī)
分時(shí)系統(tǒng):在一臺(tái)主機(jī)上連接多個(gè)配有顯示器和鍵盤的終端所形成的系統(tǒng)
分時(shí)系統(tǒng)實(shí)現(xiàn)過程的關(guān)鍵
及時(shí)接收——多路卡,實(shí)現(xiàn)多路復(fù)用;配置緩沖區(qū)
及時(shí)處理——作業(yè)直接進(jìn)入內(nèi)存,只進(jìn)行一次調(diào)度,作業(yè)直給CPU;引入時(shí)間片,輪轉(zhuǎn)運(yùn)行方式(2s響應(yīng) 2ms處理)
分時(shí)系統(tǒng)的特征
多路性,多終端同連一臺(tái)主機(jī),按分時(shí)原則為每個(gè)用戶服務(wù)
獨(dú)立性,feeling 一人獨(dú)占主機(jī)
及時(shí)性,用戶的請(qǐng)求能在很短的時(shí)間內(nèi)得到相應(yīng)(通常為1-3s)
交互性,用戶通過終端與系統(tǒng)進(jìn)行廣泛的人機(jī)對(duì)話
實(shí)時(shí)系統(tǒng)
實(shí)時(shí)系統(tǒng)——系統(tǒng)能及時(shí)響應(yīng)外部事件的請(qǐng)求,在規(guī)定事件內(nèi)完成對(duì)該事件的處理,并控制所有實(shí)時(shí)任務(wù)協(xié)調(diào)一致地運(yùn)行
實(shí)時(shí)系統(tǒng)的類型
工業(yè)控制系統(tǒng)
信息查詢系統(tǒng)
多媒體系統(tǒng)
嵌入式系統(tǒng)
實(shí)時(shí)性任務(wù)的類型
周期性實(shí)時(shí)任務(wù)和非周期性實(shí)時(shí)任務(wù)
硬實(shí)時(shí)任務(wù)和軟實(shí)時(shí)任務(wù)(對(duì)截至?xí)r間的要求)
實(shí)時(shí)系統(tǒng)與分時(shí)系統(tǒng)特征的比較
實(shí)時(shí)控制系統(tǒng)——周期性對(duì)多路現(xiàn)場(chǎng)進(jìn)行信息采集,并對(duì)多個(gè)對(duì)象或多個(gè)執(zhí)行機(jī)構(gòu)進(jìn)行控制
多路性——裝置與設(shè)備,對(duì)多個(gè)執(zhí)行機(jī)構(gòu)進(jìn)行控制
獨(dú)立性——獨(dú)立控制某一裝置,設(shè)備
及時(shí)性——畫面流暢,聲音連貫
交互性
可靠性
微機(jī)操作系統(tǒng)
單用戶單任務(wù)OS(早期的8,16位OS,用戶上機(jī),僅用于單個(gè)任務(wù))
單用戶多任務(wù)OS
多用戶多任務(wù)OS
?提高算力的兩種方式:量大,性能高
嵌入式操作系統(tǒng)
嵌入式系統(tǒng)——專用計(jì)算機(jī)系統(tǒng)
嵌入式OS——基于嵌入式系統(tǒng)的OS
嵌入式OS的特點(diǎn)
系統(tǒng)內(nèi)核小——一般用于小型電子裝置,系統(tǒng)資源相對(duì)有限,因此其內(nèi)核較傳統(tǒng)OS要小的多
系統(tǒng)精簡(jiǎn)——既可以控制系統(tǒng)成本也有利于系統(tǒng)安全
實(shí)時(shí)性高——嵌入式系統(tǒng)的基本要求
具有可配置性
網(wǎng)絡(luò)操作系統(tǒng)
什么是網(wǎng)絡(luò)操作系統(tǒng)
用于計(jì)算機(jī)網(wǎng)絡(luò)環(huán)境下對(duì)網(wǎng)絡(luò)資源進(jìn)行管理和控制,實(shí)現(xiàn)數(shù)據(jù)通信及對(duì)網(wǎng)絡(luò)資源的共享,為用戶提供網(wǎng)絡(luò)資源接口的一組軟件和規(guī)程的集合。
網(wǎng)絡(luò)操作系統(tǒng)建立在網(wǎng)絡(luò)中的計(jì)算機(jī)各自不同的單處理OS上,為用戶提供使用網(wǎng)絡(luò)資源的橋梁
常見的局域網(wǎng)上的OS有UNIX,linux等
網(wǎng)絡(luò)操作系統(tǒng)的特征
硬件獨(dú)立性,接口一致性,資源透明性,系統(tǒng)可靠性,執(zhí)行并行性
網(wǎng)絡(luò)OS的功能
網(wǎng)絡(luò)OS涵蓋了單處理機(jī)OS的全部功能,還具有支持?jǐn)?shù)據(jù)通信,應(yīng)用互操作,網(wǎng)絡(luò)管理等功能
為實(shí)現(xiàn)網(wǎng)絡(luò)中計(jì)算機(jī)之間的數(shù)據(jù)通信,網(wǎng)絡(luò)操作系統(tǒng)具有如下基本功能:
①連接的建立與拆除;
②報(bào)文的分解與組裝;
③傳輸控制;
④流量控制;
⑤差錯(cuò)的檢測(cè)與糾正;
分布式操作系統(tǒng)
分布式系統(tǒng)
分布式系統(tǒng)(distributed system),基于軟件實(shí)現(xiàn)的多處理機(jī)系統(tǒng),是多個(gè)處理機(jī)通過通信線路互聯(lián)而構(gòu)成的松散耦合系統(tǒng),系統(tǒng)的處理和控制功能分散在各個(gè)處理機(jī)上;
分布式操作系統(tǒng)是利用軟件系統(tǒng)方式構(gòu)建在計(jì)算機(jī)網(wǎng)絡(luò)上的一種多處理機(jī)系統(tǒng);
分布式OS的特點(diǎn)
分布性?
透明性
同一性
全局性
分布式OS的功能
涵蓋單機(jī)處理機(jī)OS的主要功能
通信管理功能
資源管理功能
進(jìn)程管理功能
操作系統(tǒng)的基本特性
并發(fā)與并行
系統(tǒng)中的程序可以并發(fā)執(zhí)行,從而有效提高了系統(tǒng)的資源利用率,提高了系統(tǒng)的吞吐量
并行:兩個(gè)或多個(gè)事件在同一時(shí)刻發(fā)生
并發(fā):兩個(gè)或多個(gè)事物在同一間隔時(shí)間內(nèi)發(fā)生
缺點(diǎn):使系統(tǒng)復(fù)雜化,共享CPU,內(nèi)存,I/O設(shè)備,發(fā)生資源爭(zhēng)奪
共享
互斥共享,在一段時(shí)間內(nèi)只允許一個(gè)進(jìn)程訪問,如打印機(jī),磁帶機(jī),棧,變量,表格等;協(xié)調(diào)不好可能會(huì)產(chǎn)生死鎖;在一段時(shí)間內(nèi)只允許一個(gè)進(jìn)程訪問的資源稱為臨界資源(或獨(dú)占資源)
同時(shí)共享
在一段時(shí)間內(nèi),允許多個(gè)進(jìn)程對(duì)其進(jìn)行訪問(宏觀同時(shí),微觀交替進(jìn)行)如,磁盤設(shè)備(不會(huì)導(dǎo)致死鎖),可重入代碼編寫的文檔
虛擬
時(shí)分復(fù)用技術(shù)
在為某一用戶服務(wù)的空閑時(shí)間,轉(zhuǎn)而去為另一用戶服務(wù)
虛擬機(jī)處理機(jī)技術(shù),利用多道程序設(shè)計(jì)技術(shù),為每道程序建立至少一個(gè)進(jìn)程,使多道程序并發(fā)執(zhí)行;我們把用戶所感受到的處理機(jī)稱為虛擬處理機(jī)
虛擬設(shè)備技術(shù),將物理上的I/O設(shè)備,虛擬為多臺(tái)邏輯上的I/O設(shè)備,并允許每個(gè)用戶占一臺(tái)邏輯上的I/O設(shè)備
空分復(fù)用技術(shù)
利用存儲(chǔ)器的空閑時(shí)間(如某道程序阻塞時(shí)被換出到外存而空出來的內(nèi)存空間)來存放其他程序以提高內(nèi)存的利用率
虛擬存儲(chǔ)技術(shù)
本質(zhì):實(shí)現(xiàn)內(nèi)存的分時(shí)復(fù)用(一次只抽取程序的部分在內(nèi)存當(dāng)中運(yùn)行),邏輯上擴(kuò)充內(nèi)存含量
磁盤:磁道與扇區(qū);引導(dǎo)程序存放在0磁—0扇區(qū),引導(dǎo)程序定位到OS內(nèi)核(精簡(jiǎn)版的OS),并將其加載到內(nèi)存中
異步
由于資源等因素的限制,進(jìn)程通常不是一下執(zhí)行完畢(一氣呵成),而是以走走停停的方式;
操作系統(tǒng)的運(yùn)行環(huán)境
硬件支持
操作系統(tǒng)內(nèi)核
常駐內(nèi)存,與硬件緊密相關(guān)
ctrl C 操作員控制中斷
內(nèi)核功能:
1.支撐功能
? ? ? ? ①中斷處理?
? ? ? ? ②時(shí)鐘管理
? ? ? ? ③原語(yǔ)操作,原語(yǔ),由若干條指令組成的,用于完成一定功能的過程;與一般過程的區(qū)別在于,他是原子操作,操作過程中的動(dòng)作一次性完成,不可分割,即原子性
2.資源管理功能
? ? ? ? ①進(jìn)程管理
? ? ? ? ②存儲(chǔ)器管理
? ? ? ? ③設(shè)備管理
處理機(jī)的雙重工作模式
雙重模式提供了保護(hù)手段,以防止OS和用戶程序受到錯(cuò)誤用戶程序的影響,如,將可能引起損害的機(jī)器指令當(dāng)成特權(quán)指令,硬件只有在內(nèi)核狀態(tài)下才允許執(zhí)行特權(quán)指令;其他指令為非特權(quán)指令
處理機(jī)的雙重工作模式視圖
?內(nèi)核態(tài)(0)也稱系統(tǒng)態(tài),管態(tài)
?用戶態(tài)(1)也稱目態(tài)
特權(quán)指令
在內(nèi)核態(tài)下運(yùn)行的指令,它對(duì)內(nèi)存空間的訪問范圍基本不受限制。可訪問用戶空間,系統(tǒng)空間,(切換到用戶態(tài)的指令也是特權(quán)操作)
非特權(quán)指令
在用戶態(tài)下運(yùn)行的命令,應(yīng)用程序完成的指令,只能完成一般的操作和任務(wù),不能對(duì)系統(tǒng)的硬件和軟件進(jìn)行直接的訪問,對(duì)內(nèi)存的訪問局限于用戶空間,可防止應(yīng)用程序的運(yùn)行異常對(duì)系統(tǒng)造成破壞
中斷與異常
現(xiàn)代操作系統(tǒng)是中斷驅(qū)動(dòng)的,中斷是硬件通過系統(tǒng)總線發(fā)送信號(hào)到CPU來觸發(fā)的
指令:CPU執(zhí)行
執(zhí)行程序:位于內(nèi)存
引導(dǎo)程序:位于固件,定位OS內(nèi)核并將其加載到內(nèi)存中
事件:硬件中斷或軟件中斷
程序:位于外存
總結(jié)
以上是生活随笔為你收集整理的计算机操作系统 汤子瀛(慕课版)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Xilinx原语
- 下一篇: 物联网应用技术的十大基础功能