一.操作系統(tǒng)概述(1)

操作系統(tǒng)的作用

1.資源管理:

(1)跟蹤記錄資源的使用狀況

(2)確定資源分配策略——算法:靜態(tài)分配策略、動(dòng)態(tài)分配策略(大多數(shù)OS使用,效率高)

(3)實(shí)施資源的分配和回收

(4)提供資源的利用率,保護(hù)資源的使用

(5)協(xié)調(diào)多進(jìn)程請(qǐng)求資源的沖突

五大基本功能:

進(jìn)程/線程管理(CPU管理)、存儲(chǔ)管理、文件管理、設(shè)備管理、用戶接口

2.向用戶提供服務(wù)

3.對(duì)硬件的拓展

操作系統(tǒng)的特征:

1.并發(fā):同時(shí)處理多個(gè)活動(dòng)

2.共享:OS與多個(gè)用戶程序共同使用系統(tǒng)資源(互斥共享/同時(shí)共享)

3.虛擬:一個(gè)物理實(shí)體映射為多個(gè)對(duì)應(yīng)的邏輯實(shí)體(分時(shí)或分空間),以提高資源利用率

4.隨機(jī):對(duì)以不可預(yù)測(cè)的次序發(fā)生的時(shí)間進(jìn)行響應(yīng)并處理

OS分類

1.批處理操作系統(tǒng)(單道、多道),技術(shù):SPOOLING

2.分時(shí)操作系統(tǒng),技術(shù):時(shí)間片

通用操作系統(tǒng):分時(shí)系統(tǒng)與批處理系統(tǒng)的結(jié)合

原則:分時(shí)優(yōu)先,批處理在后

3.實(shí)時(shí)操作系統(tǒng)

4.個(gè)人計(jì)算機(jī)操作系統(tǒng):在某一時(shí)間只為單用戶服務(wù)

5.網(wǎng)絡(luò)操作系統(tǒng)

6.分布式操作系統(tǒng)

7.嵌入式操作系統(tǒng)

1.1操作系統(tǒng)的定義及特征

(1)? 操作系統(tǒng)的主要工作

a 用戶告訴操作系統(tǒng)執(zhí)行該程序。該程序在運(yùn)行前一般在外存上存放著,操作系統(tǒng)通過(guò)目錄表從外存找到該程序。

b. 內(nèi)存管理模塊根據(jù)程序的大小為代碼和變量分配內(nèi)存,文件系統(tǒng)定位并讀磁盤(pán)塊將該程序?qū)懭雰?nèi)存。

c. 系統(tǒng)創(chuàng)建進(jìn)程以執(zhí)行該程序,進(jìn)程由進(jìn)程控制塊(PCB)和代碼、數(shù)據(jù)組成,PCB是系統(tǒng)用于管理進(jìn)程的數(shù)據(jù)結(jié)構(gòu)。

d. 進(jìn)程開(kāi)始執(zhí)行, scanf(“%d%d”,&a,&b);涉及到硬件輸入設(shè)備(如鍵盤(pán))的操作,設(shè)備處理模塊投入工作,使用戶輸入數(shù)據(jù),用戶無(wú)須關(guān)心設(shè)備端口狀態(tài)以及機(jī)械操作細(xì)節(jié)。

e. 操作系統(tǒng)以系統(tǒng)功能調(diào)用的形式在內(nèi)部提供了完成從輸入設(shè)備輸入數(shù)據(jù)的程序模塊,該模塊負(fù)責(zé)所有涉及硬件機(jī)械電子特性的處理。

f. printf(“a+b=%d\n”,a+b);涉及到CPU的計(jì)算處理功能和輸出設(shè)備(如顯示器)的操作,在多任務(wù)系統(tǒng)中,需要有專門的處理機(jī)調(diào)度模塊負(fù)責(zé)分配處理機(jī)和保護(hù)處理機(jī)現(xiàn)場(chǎng),在進(jìn)程間完成進(jìn)程切換的工作。

g. return 0;結(jié)束用戶進(jìn)程的運(yùn)行,將控制權(quán)返回給操作系統(tǒng),操作系統(tǒng)回收用戶進(jìn)程所占用的內(nèi)存等軟硬件資源,進(jìn)行結(jié)束處理,用戶同樣無(wú)須關(guān)心這些善后事宜。

h. 對(duì)于用戶來(lái)說(shuō),操作系統(tǒng)屏蔽了上述處理過(guò)程,用戶只需通過(guò)鼠標(biāo)的點(diǎn)擊或者在程序中簡(jiǎn)單地安排幾條系統(tǒng)功能調(diào)用即可完成,無(wú)需關(guān)心底層細(xì)節(jié)。

i. 綜上所述,操作系統(tǒng)在執(zhí)行程序的過(guò)程中向用戶提供了文件存取服務(wù)、內(nèi)存分配服務(wù)、處理機(jī)調(diào)度服務(wù)、設(shè)備分配和處理服務(wù)等功能。

(2)? 操作系統(tǒng)定義

從所處的位置看,操作系統(tǒng)充當(dāng)了計(jì)算機(jī)用戶和計(jì)算機(jī)硬件資源之間的媒介。用戶是通過(guò)操作系統(tǒng)來(lái)使用計(jì)算機(jī)的。

定義:OS 是一個(gè)系統(tǒng)程序集合,管理和控制計(jì)算機(jī)的所有軟件和硬件資源,合理地組織計(jì)算機(jī)工作流程,以便有效地利用系統(tǒng)資源,為用戶提供一個(gè)功能強(qiáng)大、使用方便的工作環(huán)境。

image.png

(3)? 操作系統(tǒng)特征---并發(fā)

并發(fā)性(Concurrence)是指兩個(gè)或兩個(gè)以上的運(yùn)行程序在同一時(shí)間間隔段內(nèi)同時(shí)執(zhí)行

并發(fā)性的例子:

①多個(gè)I/O設(shè)備同時(shí)在輸入輸出;

②設(shè)備輸入輸出和CPU計(jì)算同時(shí)進(jìn)行;

③內(nèi)存中同時(shí)有多個(gè)程序被啟動(dòng)交替、穿插地執(zhí)行。

(3)? 操作系統(tǒng)特征---共享

共享指操作系統(tǒng)中的資源(包括硬件資源和信息資源)可被多個(gè)并發(fā)執(zhí)行的進(jìn)程所使用。

第一種是互斥共享。在同一時(shí)間內(nèi)卻只允許一個(gè)進(jìn)程訪問(wèn)這些資源,稱為臨界資源。如打印機(jī)、磁帶機(jī),以及一些變量、數(shù)據(jù)等都是臨界資源。

第二種是同時(shí)訪問(wèn)。允許同一時(shí)間內(nèi)多個(gè)進(jìn)程對(duì)它進(jìn)行訪問(wèn),這里“同時(shí)”是宏觀上的說(shuō)法。典型的可供多進(jìn)程同時(shí)訪問(wèn)的資源是磁盤(pán)。

共享性和并發(fā)性是操作系統(tǒng)兩個(gè)最基本的特征,它們互為依存。

(3)? 操作系統(tǒng)特征---異步性

在多道程序環(huán)境中,允許多個(gè)進(jìn)程并發(fā)執(zhí)行,由于資源有限而進(jìn)程眾多,多數(shù)情況,進(jìn)程的執(zhí)行不是一貫到底,而是“走走停停”。

進(jìn)程以不確定的方式運(yùn)行,這種不確定性給系統(tǒng)帶來(lái)了潛在的危險(xiǎn),有可能導(dǎo)致與時(shí)間有關(guān)的錯(cuò)誤。但只要運(yùn)行環(huán)境相同,操作系統(tǒng)必須保證多次運(yùn)行作業(yè),都會(huì)獲得完全相同的結(jié)果。

1.2 操作系統(tǒng)的發(fā)展

單道批處理系統(tǒng)

多道批處理系統(tǒng)

分時(shí)系統(tǒng)

實(shí)時(shí)系統(tǒng)

單道批處理系統(tǒng)

嚴(yán)格地說(shuō),它只能算作是OS的前身而并非是現(xiàn)在人們所理解的OS。

由操作員將若干作業(yè)合成一批,由監(jiān)督程序依次將作業(yè)調(diào)入主存并運(yùn)行,主存中始終只有一個(gè)作業(yè)在運(yùn)行。特點(diǎn):自動(dòng)性、順序性、單道性。


單道批處理系統(tǒng)中,內(nèi)存中僅有單個(gè)作業(yè)在運(yùn)行,致使系統(tǒng)中仍有許多資源空閑,設(shè)備利用率低,系統(tǒng)性能較差。


在輸入操作結(jié)束之前,處理機(jī)空閑,其原因是I/O處理與本道程序有關(guān)。所以就提出了多道程序的概念。

多道批處理系統(tǒng)

多道批處理系統(tǒng)是指允許多個(gè)程序同時(shí)進(jìn)入一個(gè)計(jì)算機(jī)系統(tǒng)的主存儲(chǔ)器并啟動(dòng)進(jìn)行計(jì)算的方法。在該系統(tǒng)中, 用戶所提交的作業(yè)都先存放在外存上并排成一個(gè)隊(duì)列,稱為“后備隊(duì)列”;然后,由作業(yè)調(diào)度程序按一定的算法從后備隊(duì)列中選擇若干個(gè)作業(yè)調(diào)入內(nèi)存,使它們共享CPU和系統(tǒng)中的各種資源。

多道程序合理搭配輸入輸出為主與計(jì)算為主程序交替運(yùn)行,充分利用資源,提高系統(tǒng)效率。

特點(diǎn):

多道:計(jì)算機(jī)內(nèi)存中同時(shí)存放多道相互獨(dú)立的程序。

并行:宏觀上并行運(yùn)行,微觀上串行運(yùn)行。

無(wú)序性:程序完成順序與程序提交順序不一定相同。

調(diào)度性:程序從提交到完成須經(jīng)多次調(diào)度。


????????????????????????????????????????????????????????? 單、多道程序運(yùn)行示意圖


分時(shí)系統(tǒng)

分時(shí)系統(tǒng)把處理機(jī)的運(yùn)行時(shí)間分為很短的時(shí)間片,一般采用時(shí)間片輪轉(zhuǎn)的方式,使一臺(tái)計(jì)算機(jī)為多個(gè)終端服務(wù)。

推動(dòng)多道批處理系統(tǒng)形成和發(fā)展的主要?jiǎng)恿Γ翘岣哔Y源利用率和系統(tǒng)吞吐量。

推動(dòng)分時(shí)系統(tǒng)形成和發(fā)展的主要?jiǎng)恿Γ瑒t是用戶的需求。

典型案例:超市的收銀機(jī)。

分時(shí)系統(tǒng)的特點(diǎn)

交互性:系統(tǒng)能及時(shí)響應(yīng)用戶的請(qǐng)求,方便程序的調(diào)試和修改。

多路性:多個(gè)用戶分別利用不同的終端,共享系統(tǒng)資源,獲得主機(jī)的服務(wù)。

獨(dú)立性:各用戶獨(dú)立操作,互不干擾。

及時(shí)性:系統(tǒng)能在用戶可接受的時(shí)間內(nèi)處理用戶請(qǐng)求。

UNIX是當(dāng)今最流行的一種多用戶分時(shí)操作系統(tǒng)。

實(shí)時(shí)操作系統(tǒng)

實(shí)時(shí)操作系統(tǒng)(Real Time Operating System)是指當(dāng)外界事件或數(shù)據(jù)產(chǎn)生時(shí),能夠接收并以足夠快的速度予以處理,其處理的結(jié)果又能在規(guī)定的時(shí)間之內(nèi)來(lái)控制監(jiān)控的生產(chǎn)過(guò)程或?qū)μ幚硐到y(tǒng)作出快速響應(yīng),并控制所有實(shí)行任務(wù)協(xié)調(diào)一致運(yùn)行的操作系統(tǒng)。

典型應(yīng)用:飛行器的自動(dòng)控制,飛機(jī)訂票系統(tǒng)、銀行管理系統(tǒng)等

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容