第1章 操作系統(tǒng)課件_第1頁
第1章 操作系統(tǒng)課件_第2頁
第1章 操作系統(tǒng)課件_第3頁
第1章 操作系統(tǒng)課件_第4頁
第1章 操作系統(tǒng)課件_第5頁
已閱讀5頁,還剩153頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

操作系統(tǒng)

OperatingSystem

主講:高軍

黑龍江八一農(nóng)墾大學(xué)信息技術(shù)學(xué)院

1

教師信息

?姓名:高軍

?辦公室:信息館316

?辦公室電話:6819325

?手機(jī)/p>

?QQ:382311244

?EmaiI:gaojun_891@163.com

2

課程地位

os是計(jì)算機(jī)系統(tǒng)的核心和靈魂,是計(jì)算機(jī)系統(tǒng)必

不可少的組成部分;它也是計(jì)算機(jī)教學(xué)的核心內(nèi)

容之一,是計(jì)算機(jī)相關(guān)專業(yè)的核心課程之一。

OS是硬件的首次擴(kuò)充,又是最核心的系統(tǒng)軟件,

OS課程具有承上啟下的重要作用,既能對先行課

程:程序設(shè)計(jì)、計(jì)算機(jī)組成原理和數(shù)據(jù)結(jié)構(gòu)等進(jìn)

行總結(jié)和提高;同時也為后繼專業(yè)課程的學(xué)習(xí)打

下良好基礎(chǔ)。

OS課程的學(xué)習(xí)對學(xué)生的軟件設(shè)計(jì)開發(fā)能力、創(chuàng)新

能力、科學(xué)作風(fēng)與綜合素質(zhì)的培養(yǎng)有至關(guān)重要的

作用。

3

學(xué)習(xí)方法:

?(1)多結(jié)合平時使用的操作系統(tǒng)去思考

?(2)問題?+怎么辦?+如何提高效率?

?(3)學(xué)習(xí)時,要建立多用戶共享硬件資源的基礎(chǔ)

上考慮問題。

4

第1章操作系統(tǒng)概論

?主要內(nèi)容

-1.1操作系統(tǒng)概觀

-1.2操作系統(tǒng)的形成和發(fā)展

-1.3操作系統(tǒng)提供的服務(wù)和用戶接口

-1.4操作系統(tǒng)結(jié)構(gòu)和運(yùn)行模型

-1.5流行操作系統(tǒng)簡介

5

1.1操作系統(tǒng)概觀

?1.1.1操作系統(tǒng)的定義和目標(biāo)

?1.1.2操作系統(tǒng)的資源管理技術(shù)

?1.1.3操作系統(tǒng)的作用與功能

?1.1.4操作系統(tǒng)的主要特性

6

1.1.1操作系統(tǒng)的定義和目標(biāo)

?定義:操作系統(tǒng)是管理系統(tǒng)資源、控制程序執(zhí)行

,改善人機(jī)界面,提供各種服務(wù),合理組織計(jì)算

機(jī)工作流程和為用戶有效使用計(jì)算機(jī)提供良好運(yùn)

行環(huán)境的最基本的一種系統(tǒng)軟件。

?系統(tǒng)角度:管理系統(tǒng)資源、控制程序執(zhí)行、合理

組織計(jì)算機(jī)工作流程。

?用戶角度:改善人機(jī)界面,提供各種服務(wù)、為用

戶有效使用計(jì)算機(jī)提供良好運(yùn)行環(huán)境

7

操作系統(tǒng)的主要目標(biāo)

?方便用戶使用

?擴(kuò)充機(jī)器功能

?管理系統(tǒng)資源

?提高系統(tǒng)效率

?構(gòu)筑開放環(huán)境

8

計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)⑴

用戶1用戶2用戶3用戶4用戶n

???

財(cái)務(wù)系統(tǒng)航空訂票上網(wǎng)瀏覽電子商務(wù)…科學(xué)計(jì)算

(應(yīng)用軟件)

編譯程序匯編程序數(shù)據(jù)庫二一實(shí)用程序

(支撐軟件)

一操作系統(tǒng)------

------------(系統(tǒng)軟件)------------

―I計(jì)算機(jī)硬件—

9

計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)(2)

?硬件層

-提供基本的可計(jì)算性資源,如處理器、寄存器、存儲器

及各種I/O設(shè)備。

?操作系統(tǒng)層

-負(fù)責(zé)管理和控制計(jì)算機(jī)硬件并對其做首次擴(kuò)充和改造。

?系統(tǒng)程序?qū)?支撐軟件層)

-利用系統(tǒng)所提供的擴(kuò)展指令集,實(shí)現(xiàn)編譯、匯編等實(shí)用

程序,支持應(yīng)用軟件的開發(fā)和運(yùn)行。

?應(yīng)用層

-解決用戶特定的或不同應(yīng)用所需要的信息處理問題。

10

操作系統(tǒng)與支撐軟件及應(yīng)用軟件的區(qū)別

?程序意圖不同,操作系統(tǒng)有權(quán)分配資源,而其它

程序只能使用資源;

?操作系統(tǒng)是軟件系統(tǒng)的核心,是各種軟件的基礎(chǔ)

運(yùn)行平臺;

?通用操作系統(tǒng)提供共性功能支持,與硬件相關(guān)但

和應(yīng)用領(lǐng)域無關(guān);

?支撐軟件及應(yīng)用軟件不能直接而只能通過操作系

統(tǒng)來使用計(jì)算機(jī)系統(tǒng)的物理資源。

11

1.1.2操作系統(tǒng)的資源管理技術(shù)

資源復(fù)用

(解決物理資源數(shù)量不足)

資源虛化

1.資源管理技術(shù)VG嬴而理資源數(shù)量不足,

提高服務(wù)的能力和水平)

資源抽象

(處理系統(tǒng)的復(fù)雜性,

解決資源的易用性)

12

1)資源復(fù)用

⑴空分復(fù)用共享一該資源可進(jìn)一步分割成更多和

更小的單位供進(jìn)程使用。如內(nèi)存、磁盤。

⑵時分復(fù)用共享一并不把資源進(jìn)一步分割成更小的

單位,進(jìn)程可在一個時間片內(nèi)獨(dú)占使用整個物理

資源。如處理器。

13

2)資源虛化

?是對資源進(jìn)行轉(zhuǎn)化、模擬或整合,把物理上的一

個資源變成邏輯上的多個對應(yīng)物的一類技術(shù)。

?虛化的例子一虛擬設(shè)備、虛擬存儲器、虛擬屏幕(

終端)、虛擬信道、虛擬文件。

14

3)資源抽象

?資源抽象用于處理系統(tǒng)的復(fù)雜性,重點(diǎn)解決資源

的易用性。

?資源抽象指通過創(chuàng)建軟件來屏蔽硬件資源物理特

性和接口細(xì)節(jié),簡化對硬件資源的操作、控制和

使用的一類技術(shù)。

?單級資源抽象與多級資源抽象。

15

4)組合使用抽象和虛化技術(shù)

?對于一類資源,操作系統(tǒng)往往同時實(shí)施抽象和虛

化技術(shù)。

?例1,為打印機(jī)既配置“打印函數(shù)”(設(shè)備驅(qū)動程

序),又實(shí)施虛擬設(shè)備,通過打印函數(shù)抽象隱蔽

打印機(jī)動作細(xì)節(jié),實(shí)施SPOOLing虛化“擴(kuò)充”物

理打印機(jī)數(shù)量。

?例2,窗口軟件是對物理終端的虛化和抽象,能

為用戶提供虛擬終端和方便的I/0服務(wù)。

16

2.操作系統(tǒng)中的基礎(chǔ)抽象

?進(jìn)程抽象

-是對已進(jìn)入主存正在運(yùn)行的程序在處理器上操作的狀態(tài)

集的抽象。

?虛存抽象

-是對物理主存的抽象,進(jìn)程可獲得一個碩大的連續(xù)地址

空間來存放可執(zhí)行程序和數(shù)據(jù),可使用虛擬地址來引用

物理主存單元。

?文件抽象

-是對磁盤之類存儲設(shè)備的抽象。

17

文件抽象是操作系統(tǒng)對磁盤設(shè)備的多層次抽象

?第一層抽象,從磁盤到分區(qū)。

?第二層抽象,從分區(qū)到扇區(qū)。

?第三層抽象,從扇區(qū)到簇。

?第四層抽象,從簇到文件系統(tǒng)分區(qū)。

18

操作系統(tǒng)最基礎(chǔ)抽象小結(jié)

進(jìn)程抽象

19

3.虛擬計(jì)算機(jī)

?什么是虛擬計(jì)算機(jī)?

-虛擬計(jì)算機(jī)是一臺抽象計(jì)算機(jī),它在硬件的基礎(chǔ)上由

軟件來實(shí)現(xiàn),并且與物理計(jì)算機(jī)一樣,具有指令集及

可用的存儲空間。

?什么是操作系統(tǒng)虛擬機(jī)?

-如果某臺機(jī)器上配有操作系統(tǒng),對于用戶來說,就是

一臺以操作系統(tǒng)語言(系統(tǒng)調(diào)用)為機(jī)器語言的操作

系統(tǒng)虛擬機(jī)。

?操作系統(tǒng)虛擬機(jī)的組成:

-D虛處理器

-2)虛擬主存

-3)虛擬輔存

-4)虛擬設(shè)備

20

虛擬計(jì)算機(jī)

進(jìn)程Pn)

虛虛

設(shè)

理操作系統(tǒng)

率資源管理

虛擬機(jī)1(復(fù)用、虛

化、主抽象)

時分復(fù)用共享

空分復(fù)用共享

物理計(jì)算機(jī)21

LL3操作系統(tǒng)的作用與功能

?操作系統(tǒng)的作用:對內(nèi)是“管理員”,對外是“

服務(wù)員”:

?os作為用戶接口和服務(wù)提供者

?os作為作為擴(kuò)展機(jī)或虛擬機(jī)

?os作為資源管理者和控制者

22

OS作為用戶接口和服務(wù)提供者

?操作系統(tǒng)提供友善的人機(jī)接口,使得用戶能夠方

便、可靠、安全、高效地使用硬件和運(yùn)行應(yīng)用程

序;

?操作系統(tǒng)對計(jì)算機(jī)硬件進(jìn)行改造和擴(kuò)充,為用戶

提供強(qiáng)有力的各種服務(wù);

23

OS作為擴(kuò)展機(jī)或虛擬機(jī)

?在計(jì)算機(jī)裸機(jī)上加上操作系統(tǒng)來組成整個計(jì)算機(jī)

系統(tǒng);

?操作系統(tǒng)把硬件的復(fù)雜性與用戶隔離開來;

?操作系統(tǒng)與硬件組成一臺功能顯著增強(qiáng),使用更

加方便,安全可靠性更好的擴(kuò)展機(jī)器或虛擬機(jī)。

24

操作系統(tǒng)作為計(jì)算機(jī)系統(tǒng)的資源管理者(1)

?操作系統(tǒng)中,能分配給用戶使用的硬件和軟件設(shè)施

總稱為資源,包括兩類:硬件資源和信息資源。

?硬件資源又分:處理器、存儲器、I/O設(shè)備等;

?信息資源又分:程序和數(shù)據(jù)等。

?也可把操作系統(tǒng)定義為:是能使諸用戶有效、方便

地共享一套計(jì)算機(jī)系統(tǒng)資源的一種系統(tǒng)軟件。

25

操作系統(tǒng)作為計(jì)算機(jī)系統(tǒng)的資源管理者(2)

?操作系統(tǒng)的重要任務(wù)之一

?對資源進(jìn)行抽象研究,找出各種資源共性和個性,有序

地管理計(jì)算機(jī)中的硬件、軟件資源,跟蹤資源使用情況

,監(jiān)視資源的狀態(tài),滿足用戶對資源的需求,協(xié)調(diào)各程

序?qū)Y源的使用沖突;

?研究使用資源的統(tǒng)一方法,讓用戶簡單、有效的使用資

源,最大限度地實(shí)現(xiàn)各類資源的共享,提高資源利用率

,從而,使得計(jì)算機(jī)系統(tǒng)的效率有很大提高。

26

操作系統(tǒng)的功能

?處理機(jī)管理

?存儲管理

?設(shè)備管理

?文件管理

?網(wǎng)絡(luò)與通信管理

?用戶接口

27

處理機(jī)管理

⑴進(jìn)程控制和管理;

⑵進(jìn)程同步和互斥;

⑶進(jìn)程通信;

(4)進(jìn)程死鎖;

⑸線程控制和管理;

⑹處理器調(diào)度,又分高級調(diào)度,中級調(diào)度和低

級調(diào)度。

28

存儲管理

⑴主存分配;

⑵地址轉(zhuǎn)換與存儲保護(hù);

⑶主存共享;

(4)存儲擴(kuò)充。

29

設(shè)備管理

⑴提供設(shè)備中斷處理;

⑵提供緩沖區(qū)管理;

⑶提供設(shè)備獨(dú)立性,實(shí)現(xiàn)邏輯設(shè)備到物理設(shè)備

之間的映射;

⑷設(shè)備的分配和回收;

⑸實(shí)現(xiàn)共享型設(shè)備的驅(qū)動調(diào)度;

(6)實(shí)現(xiàn)虛擬設(shè)備。

30

文件管理

⑴提供文件的邏輯組織方法;

⑵提供文件的物理組織方法;

⑶提供文件的存取和使用方法;

⑷實(shí)現(xiàn)文件的目錄管理;

⑸實(shí)現(xiàn)文件的共享和安全性控制;

(6)實(shí)現(xiàn)文件的存儲空間管理。

31

網(wǎng)絡(luò)與通信管理

(1)網(wǎng)絡(luò)資源管理;

⑵數(shù)據(jù)通信管理;

⑶網(wǎng)絡(luò)管理。

用戶接口

⑴程序接口;

⑵操作接口。

32

1.1.4操作系統(tǒng)的主要特性

第一個特性一并發(fā)性

第二個特性一共享性

這是操作系統(tǒng)最重要的兩個特征

第三個特性一異步性

第四個特性一不確定性

33

操作系統(tǒng)中的并發(fā)性⑴

?并發(fā)性--指兩個或兩個以上的事件或活動在同

一時間間隔內(nèi)發(fā)生。

?發(fā)揮并發(fā)性能夠消除系統(tǒng)中部件和部件之間的

相互等待,有效地改善系統(tǒng)資源的利用率,改

進(jìn)系統(tǒng)的吞吐率,提高系統(tǒng)效率。

34

操作系統(tǒng)中的并發(fā)性(2)

并發(fā)性使系統(tǒng)變得復(fù)雜化:

?如何從一個活動切換到另一個活動?

?怎樣將各個活動隔離開來,使之互不干擾,免遭

對方破壞?怎樣讓多個活動協(xié)作完成任務(wù)?

?怎樣協(xié)調(diào)多個活動對資源的競爭?

?如何保證每個活動的資源不被其它進(jìn)程侵犯?

?多個活動共享文件數(shù)據(jù)時,如何保證數(shù)據(jù)的一致

性?

35

操作系統(tǒng)中的并發(fā)性⑶

?采用并發(fā)技術(shù)的系統(tǒng)稱多任務(wù)系統(tǒng)。

?并發(fā)的實(shí)質(zhì)是一個物理CPU(也可以多個物理

CPU)在若干道程序之間多路復(fù)用,并發(fā)性是

對有限物理資源強(qiáng)制行使多用戶共享以提高效

率。

?結(jié)論:實(shí)現(xiàn)并發(fā)技術(shù)的關(guān)鍵之一是如何對系統(tǒng)

內(nèi)的多個活動(進(jìn)程)進(jìn)行切換的技術(shù)。

36

操作系統(tǒng)中的并發(fā)性(4)

?并行性---兩個或兩個以上的事件或活動在同一

時刻發(fā)生

?并行的事件或活動一定是并發(fā)的,但反之并發(fā)的

事件或活動未必是并行的。

?并行性是并發(fā)性的特例,而并發(fā)性是并行性的擴(kuò)

展。

37

操作系統(tǒng)中的共享性

?共享指操作系統(tǒng)中的資源可被多個并發(fā)執(zhí)

行的進(jìn)程所使用:

?透明資源共享:資源隔離與授權(quán)訪問

?顯式資源共享:臨界資源與獨(dú)占訪問

?與共享性有關(guān)的問題:資源分配、信息保護(hù)、

存取控制等,必須要妥善解決好。

38

操作系統(tǒng)中的異步性(1)

操作系統(tǒng)中的異步性處處可見:

⑴進(jìn)程何時執(zhí)行?何時暫停?怎樣的速度向前推

進(jìn)?都是異步(隨機(jī))的。

⑵作業(yè)到達(dá)系統(tǒng)的類型和時間是隨機(jī)的;

⑶操作員發(fā)出命令或按按鈕的時刻是隨機(jī)的;

⑷程序運(yùn)行發(fā)生錯誤或異常的時刻是隨機(jī)的;

⑸各種各樣硬件和軟件中斷事件發(fā)生的時刻是隨

機(jī)的。

39

操作系統(tǒng)中的異步性⑵

?異步性給系統(tǒng)帶來潛在危險,有可能導(dǎo)致與時間

有關(guān)的錯誤。

?操作系統(tǒng)的一個重要任務(wù)是必須確保捕捉任何一

種隨機(jī)事件,正確處理可能發(fā)生的隨機(jī)事件,正

確處理任何一種產(chǎn)生的事件序列,否則將會導(dǎo)致

嚴(yán)重后果。

40

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

1.2.1人工操作階段

1.2.2管理程序階段

1.2.3多道程序設(shè)計(jì)與操作系統(tǒng)的形成

1.2.4操作系統(tǒng)的分類

41

1.2.1人工操作階段

?人工把源程序用穿孔機(jī)穿制在卡片或紙帶上

?將準(zhǔn)備好的匯編解釋程序或編譯系統(tǒng)裝入計(jì)算機(jī)

?匯編程序或編譯系統(tǒng)讀入人工裝在輸入機(jī)上的穿

孔卡或穿孔帶

?執(zhí)行M編過程或編譯過程,產(chǎn)生目標(biāo)程序,并輸

出目標(biāo)卡片迭或紙帶

?通過引導(dǎo)程序把裝在輸入機(jī)上的目標(biāo)程序讀入計(jì)

算機(jī)

?啟動目標(biāo)程序執(zhí)行,從輸入機(jī)上讀入人工裝好的

數(shù)據(jù)卡或數(shù)據(jù)帶

?產(chǎn)生計(jì)算結(jié)果,執(zhí)行結(jié)果從打印機(jī)上或卡片機(jī)上

輸出

42

人工操作階段的缺點(diǎn)

?用戶上機(jī)獨(dú)占全機(jī)資源,造成資源利用率不

高,系統(tǒng)效率低下

?手工操作多,浪費(fèi)處理機(jī)時間,也極易發(fā)生

差錯

?數(shù)據(jù)的輸入,程序的執(zhí)行、結(jié)果的輸出均聯(lián)

機(jī)進(jìn)行,從上機(jī)到下機(jī)的時間拉得非常長

43

1.2.2管理程序階段⑴

工作流程如下:

操作員集中一批用戶提交的作業(yè),由管理程序?qū)?/p>

作業(yè)從紙帶或卡片機(jī)輸入到磁帶上,每當(dāng)一批作

業(yè)輸入完成后,管理程序自動把磁帶上的第一個

作業(yè)裝入主存,并把控制權(quán)交給作業(yè)。當(dāng)該作業(yè)

執(zhí)行完成后,作業(yè)又把控制權(quán)繳回管理程序,管

理程序再調(diào)入磁帶上的第二個作業(yè)到主存執(zhí)行

44

管理程序階段⑵

中斷處理

設(shè)備驅(qū)動

作業(yè)定序

命令和JCL語言解釋器

區(qū)

管理程序的主存組織

45

管理程序階段(3)

管理程序的主要功能:

?自動控制和處理作業(yè)流

?提供一套操作命令

?提供設(shè)備驅(qū)動和I/O控制功能

?提供庫函數(shù)和程序裝配功能

?提供簡單的文件管理功能

46

1.2.3多道程序設(shè)計(jì)與操作系統(tǒng)形成

1.多道程序設(shè)計(jì)(Multiprogramming)的概念

?前提:中斷與通道的出現(xiàn),使得計(jì)算機(jī)體系結(jié)構(gòu)由原來

的以CPU為中心轉(zhuǎn)變成以主存為中心,同時I/O設(shè)備具備

了中斷主機(jī)工作的能力,使得系統(tǒng)具有CPU和設(shè)備并行工

作的能力。

?多道程序設(shè)計(jì)是指允許多個程序同時進(jìn)入一個計(jì)算機(jī)系

統(tǒng)的主存儲器并啟動進(jìn)行計(jì)算的方法

-從宏觀上看是并行的

-從微觀上看是串行的

?引入多道程序設(shè)計(jì)技術(shù)的目的:可以提高CPU的利用率,

充分發(fā)揮計(jì)算機(jī)硬件的并行性。

?多道程序設(shè)計(jì)技術(shù)是操作系統(tǒng)發(fā)展的里程碑。

47

多道程序設(shè)計(jì)舉例

?例:為求解某個數(shù)據(jù)問題,要求從輸入機(jī)(運(yùn)轉(zhuǎn)

速度為6400個字符/s)輸入500個字符,經(jīng)處理(

費(fèi)時52ms)后,將結(jié)果(假定為2000個字符)存

儲到磁帶上(磁帶機(jī)的運(yùn)轉(zhuǎn)速度為105字符/s),

然后再讀取500個字符進(jìn)行處理,直到所有數(shù)據(jù)

處理完畢為止。

48

多道程序設(shè)計(jì)舉例一一單道處理

78130150228280300378430450

時間.,,,

輸入機(jī)i];■:|!

處理器;1|[;i

磁帶機(jī)::::::

單道算題運(yùn)行時處理器的使用效率

52/(78十52十20)735%

49

多道程序設(shè)計(jì)舉例一一多道處理

?假設(shè)在計(jì)算機(jī)接收上述任務(wù)后還接收另一道計(jì)算

題:從另一臺磁帶機(jī)上2000個字符,經(jīng)42ms的處

理后,從行式打印機(jī)(運(yùn)轉(zhuǎn)速度為1350行/min)

上輸出兩行。此時CPU的利用率為多少呢?

50

多道程序設(shè)計(jì)舉例一一多道處理

78130150228280300378430450

時間_

輸入機(jī)

:P1::P2P1::P2

處理器

磁帶機(jī)1

磁帶機(jī)2-

打印機(jī)

兩道算題運(yùn)行時處理器的使用效率

(52+42)"52=63%

多道程序設(shè)計(jì)的效果

?采用多道程序設(shè)計(jì)提高了系統(tǒng)效率,即增長了

單位時間的算題量,但對每道程序來說,卻延

長了計(jì)算時間。

?多道程序設(shè)計(jì)技術(shù)提高資源利用率和系統(tǒng)吞吐

率是以犧牲用戶的響應(yīng)時間為代價的。

52

多道程序設(shè)計(jì)的優(yōu)點(diǎn)與缺點(diǎn)

?提高了CPU的利用率

?提高了主存和I/O設(shè)備的利用率

?改進(jìn)了系統(tǒng)的吞吐率

?充分發(fā)揮了系統(tǒng)的并行性

?其主要缺點(diǎn)是:作業(yè)周轉(zhuǎn)時間延長

53

3.多道程序設(shè)計(jì)系統(tǒng)與多重處理系統(tǒng)

多重處理系統(tǒng)是指配置了多個物理CPU,能真正同

時執(zhí)行多道程序的系統(tǒng)。要有效地使用多重處理系

統(tǒng),必須采用多道程序設(shè)計(jì)技術(shù);反過來,多道程

序設(shè)計(jì)不一定要求有多重處理系統(tǒng)支持。

實(shí)現(xiàn)多道程序設(shè)計(jì)必須解決三個問題:

?存儲保護(hù)與程序浮動;

?處理器的管理和調(diào)度;

?系統(tǒng)資源的管理和調(diào)度。

54

L2.4操作系統(tǒng)的發(fā)展與分類

三種基本的操作系統(tǒng)類型:

⑴批處理操作系統(tǒng)

⑵分時操作系統(tǒng)

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

55

批處理操作系統(tǒng)(BatchOS)

?何謂“批”?作業(yè)流與批處理

-作業(yè)是把程序、數(shù)據(jù)連同作業(yè)說明書組織起來的任務(wù)

單位;

-批處理是把批中的作業(yè)預(yù)先輸入作業(yè)隊(duì)列,由操作系

統(tǒng)按照作業(yè)說明書的要求來調(diào)度和控制作業(yè)的執(zhí)行。

?批處理操作系統(tǒng)

-采用批處理方式工作的操作系統(tǒng)

?批處理系統(tǒng)的主要特征:

-用戶脫機(jī)工作

-成批處理作業(yè)

56

分時操作系統(tǒng)(TimeSharingOS)

?為什么要有分時操作系統(tǒng)?批處理系統(tǒng)的缺點(diǎn)

-無交互性:批處理用戶不能干預(yù)自己程序的運(yùn)行,

無法得知程序的運(yùn)行情況,不利于程序調(diào)試和排錯

-作業(yè)周轉(zhuǎn)時間長

?分時技術(shù)

所謂分時技術(shù),就是把處理機(jī)的運(yùn)行時間分成很短的

時間片,按時間片輪流把處理機(jī)分配給各作業(yè)使用,

若某個作業(yè)在給定的時間片內(nèi)不能完成其計(jì)算,則該

作業(yè)暫時中斷,把處理機(jī)讓給另一作業(yè)使用,等待下

一輪時再繼續(xù)運(yùn)行。

57

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

?分時操作系統(tǒng)

-允許多個聯(lián)機(jī)用戶同時使用一個計(jì)算機(jī)系統(tǒng)進(jìn)行交

互式計(jì)算的操作系統(tǒng)。

?分時系統(tǒng)的特征

-同時性(多路性):若干個用戶可同時使用計(jì)算機(jī)

-獨(dú)立性:用戶彼此獨(dú)立,互不干擾

-及時性:因時間片短,因此用戶的請求能在較短的

時間內(nèi)得到響應(yīng)

-交互性:用戶能進(jìn)行人一機(jī)對話,以交互方式工作

58

分時與批處理操作系統(tǒng)的區(qū)別

?目標(biāo)不同

?適應(yīng)作業(yè)的性質(zhì)不同

?資源使用率不同

?作業(yè)控制方式不同

59

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

含義

所謂“實(shí)時”,是指能及時響應(yīng)隨機(jī)發(fā)生的外

部事件、并對事件做出快速處理的能力。而“外

部事件”,是指與計(jì)算機(jī)相連接的設(shè)備向計(jì)算機(jī)

發(fā)出的各種服務(wù)請求。

“實(shí)時操作系統(tǒng)”是能對來自外部的請求和

信號在限定的時間范圍內(nèi)做出及時響應(yīng)的一種操

作系統(tǒng)。

用于控制飛機(jī)飛行、導(dǎo)彈發(fā)射以及冶煉軋鋼等

生產(chǎn)過程,被稱為“實(shí)時控制系統(tǒng)”;用于飛機(jī)

訂票、銀行業(yè)務(wù)部門,被稱為“實(shí)時信息處理系

統(tǒng)”。60

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

特點(diǎn)

高及時性:對外部事件信號的接收、分析

處理、以及給出反饋信號進(jìn)行控制,都必須在

嚴(yán)格的時間限度內(nèi)完成。否則可能會引起爆炸、

火災(zāi)等事故,給人身安全和國家財(cái)產(chǎn)造成無法

挽回的損失。

高可靠性:無論是實(shí)時控制系統(tǒng)還是實(shí)時

信息處理系統(tǒng),都必須有高可靠性。

61

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

三種典型的實(shí)時系統(tǒng):

?過程控制系統(tǒng)(生產(chǎn)過程控制)

?信息查詢系統(tǒng)(情報(bào)檢索)

?事務(wù)處理系統(tǒng)(銀行業(yè)務(wù))

62

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

所謂“計(jì)算機(jī)網(wǎng)絡(luò)”,是指把地理上分散

的、具有獨(dú)立功能的多個計(jì)算機(jī)和終端設(shè)備

,經(jīng)通信線路加以連接,達(dá)到數(shù)據(jù)通信和資

源共享目的的計(jì)算機(jī)系統(tǒng)。

在網(wǎng)絡(luò)范圍內(nèi),用于管理網(wǎng)絡(luò)通信和共享

資源,協(xié)調(diào)各計(jì)算機(jī)上任務(wù)的運(yùn)行,并向用

戶提供統(tǒng)一的、有效方便的網(wǎng)絡(luò)接口的程序

集合,稱為“網(wǎng)絡(luò)操作系統(tǒng)”。

63

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

網(wǎng)絡(luò)示意圖:

64

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

?網(wǎng)絡(luò)操作系統(tǒng)應(yīng)該具有的功能:

(1)網(wǎng)絡(luò)通信

(2)資源管理

(3)網(wǎng)絡(luò)管理

(4)網(wǎng)絡(luò)服務(wù)

65

分布式操作系統(tǒng)(DistributeOS)_____

?分布式計(jì)算機(jī)系統(tǒng)由多臺分散的地位對等的計(jì)算

機(jī)經(jīng)互連網(wǎng)絡(luò)連接而成,具備四項(xiàng)基本功能:

(1)進(jìn)程通信

(2)資源共享

(3)并行計(jì)算

(4)網(wǎng)絡(luò)管理

?分布式操作系統(tǒng)與單機(jī)集中式操作系統(tǒng)的主要區(qū)

別在于:

(1)資源管理

(2)進(jìn)程通信:

(3)系統(tǒng)結(jié)構(gòu):

66

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

?3C(computer,communication,consumer

electronics)

。計(jì)算機(jī)是貫穿社會信息化的核心技術(shù),網(wǎng)絡(luò)和

通信是社會信息化賴以存在的基礎(chǔ)設(shè)施,電子

消費(fèi)產(chǎn)品是人與社會信息化的主要接口。

?嵌入式(計(jì)算機(jī))系統(tǒng)的應(yīng)用環(huán)境帶來了對嵌入式

系統(tǒng)軟件(embeddedsoftware)的要求。

67

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

?嵌入式OS指運(yùn)行在嵌入式(計(jì)算機(jī))環(huán)境中,對整

個系統(tǒng)及所有操作的各種部件、裝置等資源進(jìn)行

統(tǒng)一協(xié)調(diào)、處理、指揮和控制的系統(tǒng)軟件

?嵌入式OS具有通常操作系統(tǒng)的功能,包括:與硬

件相關(guān)的底層軟件、操作系統(tǒng)核心功能,功能強(qiáng)

大的還提供圖形界面、通信協(xié)議、小型瀏覽器等

設(shè)施

68

嵌入式操作系統(tǒng)特征

?微型化

?可定制

?實(shí)時性

?可靠性

?易移植性

69

嵌入式操作系統(tǒng)實(shí)例(1)

?常見的嵌入式系統(tǒng):

?Linux、uCIinux>WinCE、PalmOS、Symbian>

eCos>uCOS-1I>VxWorks>pSOS、NucIeus>

ThreadX、Rtems、QNX、INTEGRITY、OSE、C

Executive>PersonaIJava

70

嵌入式操作系統(tǒng)實(shí)例(1)

?VxWorks是美國WindRiver公司開發(fā)的嵌入式實(shí)

時操作系統(tǒng),可靠性高、性能卓越、界面友好,

廣泛地應(yīng)用在通信、軍事、航空、航天等高精尖

技術(shù)及實(shí)時性要求極高的領(lǐng)域中,在美國的F-16

、FAT8戰(zhàn)斗機(jī)、B-2隱形轟炸機(jī)、愛國者導(dǎo)彈,

和火星探測器(97年4月在火星表面登陸)上使用

71

嵌入式操作系統(tǒng)實(shí)例(2)

?WindowsCE是微軟開發(fā)的,用于通信、娛樂和移

動式計(jì)算設(shè)備的操作系統(tǒng)(平臺),它是微軟“維

納斯”計(jì)劃的核心。CE是具有開放性的,32位多

任務(wù)、多線程嵌入式操作系統(tǒng)。

?PersonaIJava是SUN公司開發(fā)的用于家庭、辦公

室和移動信息電器創(chuàng)建連網(wǎng)應(yīng)用的Java應(yīng)用環(huán)境

,適宜更新?lián)Q代快的信息電器的應(yīng)用開發(fā)。

72

1.3操作系統(tǒng)提供的服務(wù)和用戶接口

1.3.1操作系統(tǒng)提供的用戶接口

1.3.2程序接口與系統(tǒng)調(diào)用

1.3.3作業(yè)接口與操作命令

73

1.3.1操作系統(tǒng)提供的用戶接口

?程序接口與系統(tǒng)調(diào)用

?作業(yè)接口與操作命令

74

1.3.2程序接口與系統(tǒng)調(diào)用

75

操作系統(tǒng)提供的程序接口⑴

?什么是系統(tǒng)調(diào)用?

-系統(tǒng)調(diào)用把應(yīng)用程序的請求傳送至內(nèi)核,調(diào)用相應(yīng)的內(nèi)

核函數(shù)完成所需的處理,將處理結(jié)果返回給應(yīng)用程序。

?系統(tǒng)調(diào)用的作用?

-內(nèi)核可以基于權(quán)限和規(guī)則對資源訪問進(jìn)行裁決,保證系

統(tǒng)的安全性;

-對資源進(jìn)行抽象,提供一致性接口,避免用戶在使用資

源時發(fā)生錯誤,使編程效率提高。

?內(nèi)核的主體是系統(tǒng)調(diào)用的集合,內(nèi)核可以看成是

特殊的公共子程序。

?系統(tǒng)調(diào)用是應(yīng)用程序獲得操作系統(tǒng)服務(wù)的唯一途

徑。

76

操作系統(tǒng)提供的程序接口(2)

?POSIX標(biāo)準(zhǔn)

?專門規(guī)定了內(nèi)核的系統(tǒng)調(diào)用接口標(biāo)準(zhǔn),操作系

統(tǒng)若遵循此標(biāo)準(zhǔn),應(yīng)用程序就具有可移植性。

?API和庫函數(shù)

?API是UNIX/Linux在標(biāo)準(zhǔn)C函數(shù)庫中,將系統(tǒng)

調(diào)用封裝,使得應(yīng)用程序能夠直接使用的一種

機(jī)制。

?庫函數(shù)和系統(tǒng)調(diào)用

?一個API可能用到一個或多個系統(tǒng)調(diào)用

?若干API可能封裝相同的系統(tǒng)調(diào)用

?也可能與系統(tǒng)調(diào)用無關(guān)(如strcpyO)

77

操作系統(tǒng)提供的程序接口⑶

應(yīng)用程序、庫函數(shù)、系統(tǒng)調(diào)用的調(diào)用關(guān)系鏈78

系統(tǒng)調(diào)用與函數(shù)調(diào)用的區(qū)別

?調(diào)用形式和實(shí)現(xiàn)方式不同。

?:?函數(shù)調(diào)用轉(zhuǎn)向的地址固定,而系統(tǒng)調(diào)用按功能號進(jìn)行;

?:?函數(shù)調(diào)用在用戶態(tài)(執(zhí)行用戶程序時的狀態(tài))執(zhí)行,只

能訪問用戶棧,系統(tǒng)調(diào)用在核心態(tài)(執(zhí)行內(nèi)核程序時的

狀態(tài))執(zhí)行,訪問核心棧。

?被調(diào)用代碼的位置不同。

?:?函數(shù)調(diào)用是靜態(tài)的,調(diào)用程序和被調(diào)用代碼處于同一程

序內(nèi);

?:?系統(tǒng)調(diào)用是動態(tài)的,系統(tǒng)調(diào)用的代碼位于操作系統(tǒng)中。

?提供方式不同。

?:?函數(shù)由編程語言提供;

?:?系統(tǒng)調(diào)用由操作系統(tǒng)提供。

79

1.3.3作業(yè)接口與操作命令

?操作接口又稱作業(yè)級接口,是操作系統(tǒng)為

用戶操作控制計(jì)算機(jī)工作和提供服務(wù)的手

段集合,通常可借助操作控制命令、圖形

操作界面(命令)、以及作業(yè)控制語言(命令

)等來實(shí)現(xiàn)

80

L4操作系統(tǒng)結(jié)構(gòu)和運(yùn)行模型_________

1.4.1操作系統(tǒng)的構(gòu)件和結(jié)構(gòu)

1.4.2操作系統(tǒng)的運(yùn)行模型

1.4.3Windows2003客戶/服務(wù)器結(jié)構(gòu)

81

L4.1操作系統(tǒng)構(gòu)件和結(jié)構(gòu)

?操作系統(tǒng)設(shè)計(jì)呈現(xiàn)出以下特征:

-復(fù)雜程度高,

-生成周期長,

-正確性難保證。

?操作系統(tǒng)結(jié)構(gòu)設(shè)計(jì)有三層含義:

-研究操作系統(tǒng)整體結(jié)構(gòu),如功能如何分塊,相互如何

交互,及考慮構(gòu)造它的過程和方法;

-研究操作系統(tǒng)程序局部結(jié)構(gòu),包括數(shù)據(jù)結(jié)構(gòu)和控制結(jié)

構(gòu);

-操作系統(tǒng)運(yùn)行時的組織,如系統(tǒng)是否組織成進(jìn)程或線

程?在系統(tǒng)空間還是在用戶空間運(yùn)行?

82

操作系統(tǒng)的構(gòu)件

?內(nèi)核

?進(jìn)程

?線程

?類程

?管程

83

1.操作系統(tǒng)的內(nèi)核Kernel(1)

1)什么是內(nèi)核?

內(nèi)核是一組程序模塊,作為可信軟件來提供支持

進(jìn)程并發(fā)執(zhí)行的基本功能和基本操作,通常駐留

在內(nèi)核空間,運(yùn)行于核心態(tài),具有訪問硬件設(shè)備

和所有主存空間的權(quán)限,是僅有的能夠執(zhí)行特權(quán)

指令的程序。

2)內(nèi)核分類:微內(nèi)核和單內(nèi)核(整體、分層)。

3)Linux是單內(nèi)核操作系統(tǒng),Mach是微內(nèi)核操作系

統(tǒng),Windows是客戶/服務(wù)器結(jié)構(gòu)。

84

1.操作系統(tǒng)的內(nèi)核Kernel(1)

?單內(nèi)核也叫集中式操作系統(tǒng)。整個系統(tǒng)是一個大

模塊,可以被分為若干邏輯模塊,即處理器管理

、存儲器管理、設(shè)備管理和文件管理,其模塊間

的交互是通過直接調(diào)用其他模塊中的函數(shù)實(shí)現(xiàn)的

O

?微內(nèi)核是指把操作系統(tǒng)結(jié)構(gòu)中的內(nèi)存管理、設(shè)備

管理、文件系統(tǒng)等高級服務(wù)功能盡可能地從內(nèi)核

中分離出來,變成幾個獨(dú)立的非內(nèi)核模塊,而在

內(nèi)核只保留少量最基本的功能,使內(nèi)核變得簡潔

可靠,因此叫微內(nèi)核。通過消息機(jī)制訪問。

85

操作系統(tǒng)的內(nèi)核⑵

Linux單內(nèi)核結(jié)構(gòu)

應(yīng)用程序

用戶

系統(tǒng)庫(函數(shù)庫)

系統(tǒng)調(diào)用接口

模塊內(nèi)核(進(jìn)程管理、存

儲管理、文件管理、

設(shè)備管理、網(wǎng)絡(luò)管

設(shè)備

驅(qū)動理)

計(jì)算機(jī)硬件

86

操作系統(tǒng)的內(nèi)核⑶

微內(nèi)核結(jié)構(gòu)

操作系統(tǒng)

口口-*fn

客戶客戶文件服進(jìn)程服主存服態(tài)

講程1講程2堂強(qiáng)務(wù)器務(wù)器

三國核(消息傳遞)

計(jì)算機(jī)硬件心

態(tài)

客戶通過微內(nèi)

核發(fā)送消息給

文件服務(wù)器

87

內(nèi)核的基本功能

?資源抽象

?資源分配

?資源共享

88

內(nèi)核的基本屬性

?核是由中斷驅(qū)動的

?內(nèi)核是不可搶占的

?內(nèi)核部分程序在屏蔽中斷狀態(tài)下執(zhí)行

?內(nèi)核可以使用特權(quán)指令

89

2.進(jìn)程

?進(jìn)程使得操作系統(tǒng)的結(jié)構(gòu)變得清晰:

-一個進(jìn)程到另一個進(jìn)程的控制轉(zhuǎn)移由進(jìn)程調(diào)度機(jī)制來

統(tǒng)一管理;

-進(jìn)程之間的交互由通信及同步機(jī)制完成,提高了系統(tǒng)

的安全性和可靠性。

3.線程

?線程可看做一種構(gòu)件,是組成進(jìn)程構(gòu)件的更小的

構(gòu)件單位。

-進(jìn)程是資源分配的基本單位;

-線程是系統(tǒng)調(diào)度的基本單位。

90

4.管程

?管程是管理共享資源的一種同步機(jī)制,對管程的

調(diào)用表示對共享資源的請求與釋放。

?管程可以被多個進(jìn)程或管程嵌套調(diào)用,但是它們

只能互斥的訪問管程。

?管程應(yīng)包含條件變量,對進(jìn)程進(jìn)行掛起和釋放。

5.類程

?類程用于管理私有資源,只能被進(jìn)程及起源于同

一進(jìn)程的其它類程或管程嵌套調(diào)用鏈所調(diào)用。

91

L4.2操作系統(tǒng)的運(yùn)行模型

?操作系統(tǒng)本身是一組程序,也在處理器上運(yùn)行,

那么,操作系統(tǒng)程序是否組織成進(jìn)程?它是如何控

制的、怎樣執(zhí)行的呢?它在什么模式下運(yùn)行呢?

?從操作系統(tǒng)的運(yùn)行方式來看,可分成:

1)非進(jìn)程內(nèi)核模型

2)OS功能(函數(shù))在用戶進(jìn)程內(nèi)執(zhí)行的模型

3)OS功能(函數(shù))作為進(jìn)程執(zhí)行的模型

92

操作系統(tǒng)的運(yùn)行模型⑴

1)非進(jìn)程內(nèi)核模型

應(yīng)用應(yīng)用應(yīng)用

進(jìn)程進(jìn)程進(jìn)程用戶態(tài)

內(nèi)核核心態(tài)

操作系統(tǒng)運(yùn)行模型(2)

2)OS功能在用戶進(jìn)程內(nèi)執(zhí)行的模型

94

操作系統(tǒng)的運(yùn)行模型(3)

3)OS功能作為獨(dú)立進(jìn)程執(zhí)行的模型

應(yīng)

應(yīng)

應(yīng)

IOSIOS

數(shù)

數(shù)

進(jìn)

進(jìn)

進(jìn)

數(shù)

態(tài)

微內(nèi)核(進(jìn)程切換函數(shù))心

態(tài)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論