版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
高級操作系統(tǒng)
參考書目
?張堯?qū)W,史美林,計(jì)算機(jī)操作系統(tǒng)教程(第A*
二版),清華大學(xué)出版社
課程主要內(nèi)容
?操作系統(tǒng)概論
?進(jìn)程管理
?并發(fā)性:同步、互斥和死鎖
?調(diào)度
?存儲管理
?文件系統(tǒng)
?設(shè)備管理
第一章操作系統(tǒng)概論
1」什么是操作系統(tǒng)?
1.2操作系統(tǒng)的發(fā)展歷史
1.3操作系統(tǒng)的分類
1.4操作系統(tǒng)的特征
1.5操作系統(tǒng)的功能
1.6操作系統(tǒng)的硬件環(huán)境
1.7研究操作系統(tǒng)的幾種觀點(diǎn)
1.8操作系統(tǒng)結(jié)構(gòu)
1.9常用的操作系統(tǒng)
1.1什么是操作系統(tǒng)?
U-1操作系統(tǒng)的地位
1.1.2操作系統(tǒng)的作用和組成
1.1.3操作系統(tǒng)的定義
計(jì)算機(jī)系統(tǒng)的組成
操作系統(tǒng)在計(jì)算機(jī)系統(tǒng)中的地位
應(yīng)用用戶
應(yīng)用開發(fā)人員
應(yīng)用軟件
操作系統(tǒng)
系統(tǒng)工具開發(fā)人員
操作系統(tǒng)
計(jì)算機(jī)硬件
’操作系統(tǒng)的地位:緊砧統(tǒng)硬件之上,所有1
1.1.2操作系統(tǒng)的作用
操作系統(tǒng)的作用(1)
OS是計(jì)算機(jī)硬件、軟件資源的管理者
?管理對象包括:CPU、存儲器、外部設(shè)
備、信息(數(shù)據(jù)和軟件);
?管理的內(nèi)容:資源的當(dāng)前狀態(tài)(數(shù)量和
使用情況)、資源的分配、回收和訪問
操作及相應(yīng)管理策略。
操作系統(tǒng)的作用(2)
OS是用戶使用系統(tǒng)硬件、軟件的接口
os提供的兩個(gè)用戶接口:
?命令級接口(命令行、菜單式、命令腳本式、
圖形用戶接口GUI):供一般用戶使用。
?程序級接口(系統(tǒng)調(diào)用,形式上類似于過程調(diào)
用,在應(yīng)用編程中使用):供程序員使用。
命令級接口
命令級接口分為兩種:
-聯(lián)機(jī)用戶接口:(交互式用戶接口)
-脫機(jī)用戶接口:(批處理用戶接口)
聯(lián)機(jī)用戶接口
聯(lián)機(jī)命令接口有兩種方式
-鍵盤命令方式
-命令文件方式
(1)鍵盤命令方式
通過逐條輸入鍵盤命令語句,經(jīng)解釋后執(zhí)行,以
控制作業(yè)運(yùn)行的一種方式,通常包括:
?系統(tǒng)管理
?環(huán)境設(shè)置
?編輯修改、編譯、鏈接和運(yùn)行命令
?文件管理命令
?操作員專用命令(執(zhí)行權(quán)限管理)
?通信
-資嘉要求
(2)命令文件方式
-是用鍵盤命令語言編寫的一個(gè)鍵盤命令語言程
序—命令文件。
-一旦建立命令文件后,系統(tǒng)可連續(xù)執(zhí)行若干條
命令并且可以多次重復(fù)執(zhí)行。命令文件中可以
進(jìn)行參數(shù)傳遞,也可以嵌套的方式調(diào)用其他的
命令文件。
圖形用戶接口(GUI)
-在命令行(CLI)方式下,用戶與操作系統(tǒng)的交
互要求用戶記憶命令格式。
?在圖形用戶接口方式下,用戶可利用鼠標(biāo)對屏幕
上的圖標(biāo)進(jìn)行操作,完成與操作系統(tǒng)的交互。它
的技術(shù)基礎(chǔ)是高分辯顯示器和鼠標(biāo)。
-圖形用戶接口元素:窗口、圖標(biāo)、菜單、對
話框
-圖形用戶接口元素的基本操作:菜單操作、窗
口操作、對話框操作
脫機(jī)用戶接口
?脫機(jī)用戶接口:
-批處理用戶接口,由一組作業(yè)控制命令(或稱
作業(yè)控制語言)組成。
-脫機(jī)用戶將事先用相應(yīng)的作業(yè)控制語言(JCL)
將作業(yè)控制命令寫成的作業(yè)操作說明書,連同
其作業(yè)一起提交給系統(tǒng)。
-由系統(tǒng)中命令解釋程序?qū)ζ洳僮髡f明書上的命
令逐條解釋執(zhí)行。
程序級接口(系統(tǒng)調(diào)用)
程序接口
?是OS專門為用戶程序設(shè)置的,也是用戶
程序取得OS服務(wù)的唯一途徑
?通常由各種各樣的系統(tǒng)調(diào)用所組成
系統(tǒng)調(diào)用的概念
?系統(tǒng)調(diào)用的基本概念:是OS提供給編程人員的唯
一接口
?系統(tǒng)調(diào)用是由操作系統(tǒng)中的一段程序來完成特定
功能的,屬于一種特殊的過程調(diào)用。有的計(jì)算機(jī)
系統(tǒng)中,把它稱為廣義指令。
?調(diào)用的方式:采用訪管方式來實(shí)現(xiàn)。通過產(chǎn)生一
個(gè)訪管中斷,使處理機(jī)由目態(tài)(用戶態(tài))轉(zhuǎn)為管
態(tài)(系統(tǒng)態(tài))。
系統(tǒng)調(diào)用的功能(以UNIX為例)
1)設(shè)備管理:2)文件管理:文件讀寫和文件控制;
設(shè)備的讀寫和控制;Open文件打開
Close文件關(guān)閉
loctl設(shè)備配置Read讀文件
Open設(shè)備打開Write寫文件
Close設(shè)備關(guān)閉seek讀寫指針定位
Read讀設(shè)備Create文件創(chuàng)建
Write寫設(shè)備Stat讀文件狀態(tài)
Mount安裝文件系統(tǒng)
chmod修改文件屬性
3)進(jìn)程控制:創(chuàng)建、中止、暫停等控制;
Fork創(chuàng)建進(jìn)程
Exit進(jìn)程自我終止
Wait阻塞當(dāng)前進(jìn)程
Sleep進(jìn)程睡眠
Getpid讀父進(jìn)程標(biāo)識
4)進(jìn)程通信:消息隊(duì)列、共享存儲區(qū)、socket等通信渠道
的建立、使用和刪除;
5)存儲管理:內(nèi)存的申請和釋放;
6)系統(tǒng)管理:設(shè)置和讀取時(shí)間、讀取用戶和主機(jī)標(biāo)識等;
gtime讀取時(shí)間
Stime設(shè)置時(shí)間
getuid讀取用戶標(biāo)宙”一■—
系統(tǒng)調(diào)用的實(shí)現(xiàn)過程
用戶程序陷入處理機(jī)構(gòu)系統(tǒng)子程序
系統(tǒng)調(diào)用與一般過程調(diào)用的區(qū)別
-運(yùn)行狀態(tài)不同(核心態(tài)?用戶態(tài))
-進(jìn)入的方式不同(執(zhí)行trap(int)指令■調(diào)用過程
名)
-代碼層次不同(操作系統(tǒng)代碼■用戶程序代碼)
操作系統(tǒng)的作用(3)
OS是虛擬機(jī)(virtualmachine)
虛擬機(jī):一個(gè)裸機(jī)在加上一層軟件后,就變
成了一個(gè)功能更強(qiáng)的機(jī)器,我們把這種“功
能更強(qiáng)的機(jī)器”稱之為“虛擬機(jī)”。
目的:提供硬件的高層界面,取消硬件限制
一操作系統(tǒng)可以提供無限的內(nèi)存、無限的CPU
在裸機(jī)上添加:設(shè)備管理、文件管理、存儲
管理、處理機(jī)管理,讓用戶使用更加方便
操作系統(tǒng)的組成
?核心(kernel):負(fù)責(zé)管理計(jì)算機(jī)系統(tǒng)的資源,
記錄它們的狀態(tài),負(fù)責(zé)分配、使用和釋放。
?外殼(shell):計(jì)算機(jī)系統(tǒng)與用戶之間的命令
接口,用戶通過它來使用計(jì)算機(jī)。
也稱為命令解釋程序。
1.1.3操作系統(tǒng)的定義
在此我們給出操作系統(tǒng)的定義:
操作系統(tǒng)是一種管理計(jì)算機(jī)系統(tǒng)資源,
控制系統(tǒng)工作流程,方便用戶使用計(jì)算機(jī)
的系統(tǒng)軟件。
1.2操作系統(tǒng)的發(fā)展歷史
121手工操作
1.2.2單道批處理系統(tǒng)
1.2.3多道批處理系統(tǒng)
1?2.4分時(shí)系統(tǒng)
1.2.5實(shí)時(shí)系統(tǒng)
126UNIX革命
1.2.7PC機(jī)操作系統(tǒng)
1.2.8兩大發(fā)展方向■宏觀應(yīng)用和微觀應(yīng)用
1.2.1手工操作
1946?50年代(電子管),集中計(jì)算(計(jì)算中心),
計(jì)算機(jī)資源昂貴;-操作系統(tǒng)的史前文明
?工作方式
-無操作系統(tǒng),甚至沒有任何軟件
-用戶:用戶是計(jì)算機(jī)專業(yè)人員,獨(dú)占計(jì)算機(jī),完全手工操
作,用戶在控制臺(顯示燈、觸發(fā)器等)前調(diào)試程序。
-編程語言:機(jī)器語言,解決數(shù)值計(jì)算問題;
-輸入輸出:穿孔卡片;
計(jì)算速度慢(幾千次/秒)
紙帶(卡片)■>輸入機(jī)■>計(jì)算機(jī)■>打印輸出結(jié)果?>取走紙帶
1個(gè)程序計(jì)算機(jī)(一千次/秒)30分鐘完成手工卸下3分鐘
計(jì)算機(jī)(一萬次/秒)3分鐘完成手工卸下3分鐘
■計(jì)算機(jī)的工作特點(diǎn)
-用戶獨(dú)占全機(jī):不出現(xiàn)資源被其他用戶占用,
資源利用率低;
-CPU等待用戶:計(jì)算前,手工裝入紙帶或卡片;
計(jì)算完成后,手工卸取紙帶或卡片;CPU利用
率低;
50年代早期
出現(xiàn)了穿孔卡片
程序?qū)懺诳ㄆ先缓笞x入計(jì)算機(jī)
?主要矛盾
-計(jì)算機(jī)處理能力的提高,手工操作的低效率;
-用戶獨(dú)占全機(jī)的所有資源;
?提高效率的途徑
-專門的操作員,批處理
1.2.2單道批處理系統(tǒng)
(simplebatchprocessing)
50年代末?60年代中(晶體管):利用磁帶把若干個(gè)作業(yè)
分類編成作業(yè)執(zhí)行序列,每個(gè)批作業(yè)由一個(gè)專門的監(jiān)督程
序(Monitor)自動(dòng)依次處理-操作系統(tǒng)的雛形。
?批處理中作業(yè)的組成:
-用戶程序
-數(shù)據(jù)
-作業(yè)說明書(作業(yè)控制語言)
?批:
-供一次加載的磁帶或磁盤,通常由若干個(gè)作業(yè)組成,
由監(jiān)督程序按作業(yè)說明書依次處理。
$END
Dataforprogram不
__$RUN
$LOAD
Fortranprogram——
$FORTRAN
$JOB,10,429754
CherryChen
批處理方式
?用戶提交作業(yè):以紙帶或卡片為介質(zhì);
?操作員合成批作業(yè):結(jié)果為磁帶介質(zhì);
?監(jiān)督程序(monitor)負(fù)責(zé)作業(yè)運(yùn)行的自動(dòng)調(diào)度,對批
作業(yè)中的每個(gè)作業(yè)進(jìn)行相同的處理:
?從磁帶讀入用戶作業(yè)和編譯鏈接程序;
?編譯鏈接用戶作業(yè),生成可執(zhí)行程序;
?啟動(dòng)執(zhí)行;
?執(zhí)行結(jié)果輸出。
?一批作業(yè)完成,開始處理下一批作業(yè)。
批處理系統(tǒng)
卡
片
閱
讀
機(jī)
ADOI八,ccP
輸出磁帶
輸入磁帶
OperatingSystem
監(jiān)督程序的缺點(diǎn)
?監(jiān)督程序、系統(tǒng)程序和用戶程序存在調(diào)用關(guān)
系(它們是平級的),任何環(huán)節(jié)出問題,整
個(gè)系統(tǒng)都會停頓;
?用戶程序也可能破壞監(jiān)督程序和系統(tǒng)程序,
這時(shí)只有操作員進(jìn)行干預(yù)才能恢復(fù),因而系
統(tǒng)缺乏安全性。
通道和中斷技術(shù)
60年代初,發(fā)展了通道技術(shù)和中斷技術(shù),這些技術(shù)的出現(xiàn)
使監(jiān)督程序在負(fù)責(zé)作業(yè)運(yùn)行的同時(shí)提供I/O控制功能。
?通道:用于控制I/O設(shè)備與內(nèi)存間的數(shù)據(jù)傳輸。啟動(dòng)后可獨(dú)
立于CPU運(yùn)行,實(shí)現(xiàn)CPU與I/O的并行。
-通道有專用的I/O處理器,可與CPU并行工作
-可實(shí)現(xiàn)I/O聯(lián)機(jī)處理
?中斷是指CPU在收到外部中斷信號后,停止原來工作,轉(zhuǎn)
去處理該中斷事件,完畢后回到原來斷點(diǎn)繼續(xù)工作。
-中斷處理過程:中斷請求,中斷響應(yīng),中斷點(diǎn)(暫停當(dāng)前任務(wù)并
保存現(xiàn)場),中斷處理例程,中斷返回(恢復(fù)中斷點(diǎn)的現(xiàn)場并繼
續(xù)原有任務(wù)
?監(jiān)督程序發(fā)展為執(zhí)行系統(tǒng)(executivesystem),常駐內(nèi)存,
不僅負(fù)責(zé)作業(yè)的自動(dòng)調(diào)度,而且提供I/O控制功能。用戶程
序的輸入輸出工作都是由系統(tǒng)執(zhí)行而無人工干預(yù),由系統(tǒng)
檢查命令的合法性,從而提高了系統(tǒng)的安全。
單道批處理的主要問題
?CPU和I/O設(shè)備使用忙閑不均:
-對計(jì)算為主的作業(yè),外設(shè)空閑;
-對I/O為主的作業(yè),CPU空閑;
因此總的來說,計(jì)算機(jī)資源的使用效率仍然
不高。由此又引入了多道批處理。
1.2.3多道批處理系統(tǒng)
(multiprogrammingsystem)
60年代中?70年代中(集成電路),利用多道批處理提高資
源的利用率。■現(xiàn)代意義上的操作系統(tǒng)的出現(xiàn)
?多道批處理的運(yùn)行特征
-多道:內(nèi)存中同時(shí)存放幾個(gè)作業(yè);
-宏觀上并行運(yùn)行:都處于運(yùn)行狀態(tài),但都未運(yùn)行完;
-微觀上串行運(yùn)行:各作業(yè)交替使用CPU;
-在當(dāng)前運(yùn)行的作業(yè)需作I/O處理時(shí),CPU轉(zhuǎn)而執(zhí)行另一個(gè)
作業(yè)。
job1
job2
job3
在主存中可同時(shí)有若干個(gè)作業(yè),CPU在其中進(jìn)行切換
Multiprogramming
ProgramA
ProgramBWallRunWaltRunWalt
ProgramCWall
Combined
Time
(c)Multiprogrammingwiththreeprograms
-10(口-MM
-100儕
Memory
-網(wǎng)
-
TOO保
TtrmliKil
-HJO^
Printer
JobIlhtory
(a?Inipnigramming
mlnutts
(l>)Multipnignimnilng
Figure2.6UtilizationHistograms
多道批處理系統(tǒng)的特點(diǎn)
?優(yōu)點(diǎn):
-資源利用率高:CPU和內(nèi)存利用率較高;
-作業(yè)吞吐量大:單位時(shí)間內(nèi)完成的工作總量大;
?缺點(diǎn):
-用戶交互性差:整個(gè)作業(yè)完成后或中間出錯(cuò)時(shí),
才與用戶交互,不利于調(diào)試和修改;
-作業(yè)平均周轉(zhuǎn)時(shí)間長:短作業(yè)的周轉(zhuǎn)時(shí)間顯著
增長;
1.2.4分時(shí)系統(tǒng)
(time-sharingsystem)
70年代中期至今-操作系統(tǒng)進(jìn)入實(shí)用化
?“分時(shí)”是指多個(gè)用戶分享使用同一臺計(jì)算機(jī)。
多個(gè)程序分時(shí)共享硬件和軟件資源。
-多個(gè)用戶分時(shí):單個(gè)用戶使用計(jì)算機(jī)的效率低,
因而允許多個(gè)應(yīng)用程序同時(shí)在內(nèi)存中,分別服務(wù)
于不同的用戶。
-通常按時(shí)間片(timeslice)分配CPU:各個(gè)程序在
CPU上執(zhí)行的輪換時(shí)間。
分時(shí)系統(tǒng)的特點(diǎn)
?人機(jī)交互性好:在調(diào)試和運(yùn)行程序時(shí)由用
戶自己操作。
?共享主機(jī):多個(gè)用戶同時(shí)使用。
?用戶獨(dú)立性:對每個(gè)用戶而言好象獨(dú)占主
機(jī)。
主機(jī)
125實(shí)時(shí)系統(tǒng)
(real-timesystem)
60年代中期至今.操作系統(tǒng)進(jìn)入實(shí)用化,用于工業(yè)過程控制、
軍事實(shí)時(shí)控制、金融等領(lǐng)域,包括實(shí)時(shí)控制、實(shí)時(shí)信息處理
?要求:要求響應(yīng)時(shí)間短,必須在一定范圍之內(nèi);系統(tǒng)
可靠性高
?硬實(shí)時(shí):用于過程控制。如武器系統(tǒng),工業(yè)生產(chǎn)。其
時(shí)間要求可達(dá)到毫秒以至微秒級。
?軟實(shí)時(shí):用于事務(wù)處理。如聯(lián)網(wǎng)訂票系統(tǒng)、銀行管理
系統(tǒng)。一般要求秒級或毫秒級。
126UNIX革命
現(xiàn)代操作系統(tǒng)的代表60年代末開發(fā)
Unix運(yùn)行時(shí)的安全性、可靠性以及強(qiáng)大的計(jì)算能力贏得
廣大用戶的信賴。
促使UNIX系統(tǒng)成功的因素:
首先,由于UNIX是用C語言編寫,因此它是可移植的,
UNIX是世界上唯一能在筆記本計(jì)算機(jī)、PC機(jī)、工作站直
至巨型機(jī)上運(yùn)行的操作系統(tǒng)
第二,系統(tǒng)源代碼非常有效,系統(tǒng)容易適應(yīng)特殊的需求
最后,也是最重要的一點(diǎn),它是一個(gè)良好的、通用的、
多用戶、多任務(wù)、分時(shí)操作系統(tǒng)
127PC機(jī)操作系統(tǒng)
70年代末,出現(xiàn)了PC機(jī)操作系統(tǒng):
?MS-DOS
?Macintosh(1984)
?Windows(1992)
?Linux(1991)
1.2.8操作系統(tǒng)發(fā)展方向
?大型系統(tǒng):分布式操作系統(tǒng)和集群操作系統(tǒng)
?微型系統(tǒng):嵌入式操作系統(tǒng)
操作系統(tǒng)概念和特性的變遷
19501960197019801990
MULTICS
ainframes
nocompilerstimedistributed
softwaresharedmultiusersystems
batchmultiprocessor
resident
monitorsfaulttolerant
19601970\UNIX19801990
minicomputers
nocompilers
softwaretimemultiusermultiprocessor
residentsharedfaulttolerant
monitors
19701980UNIX1990
microcomputers
nocompilers
softwareinteractivemultiprocesso
residentmultiuser
monitors
networkcomputers
no
software
compilers
1.3操作系統(tǒng)的分類
13.1批處理操作系統(tǒng)
1.3.2分時(shí)操作系統(tǒng)
1.3.3實(shí)時(shí)操作系統(tǒng)
1.3.4多處理器操作系統(tǒng)
1.3.5網(wǎng)絡(luò)操作系統(tǒng)
1.3.6分布式操作系統(tǒng)
1.3.7個(gè)人計(jì)算機(jī)操作系統(tǒng)
1.3.8嵌入式操作系統(tǒng)
1.3.1批處理操作系統(tǒng)
(BatchProcessingOperationSystem)
特點(diǎn):
?用戶脫機(jī)使用計(jì)算機(jī):作業(yè)提交后直到獲得結(jié)
果之前,用戶無法與作業(yè)交互?■交互性差。
?作業(yè)成批處理,系統(tǒng)效率高,吞吐率高
(以下僅限多道批處理)
?多道程序并行:充分利用系統(tǒng)資源。
1.3.2分時(shí)操作系統(tǒng)
(TimeSharingOperatingSystem)
分時(shí)的定義
把計(jì)算機(jī)的系統(tǒng)資源(尤其是CPU時(shí)間)
進(jìn)行時(shí)間上的分割,每個(gè)時(shí)間段稱為一個(gè)
時(shí)間片(timeslice),每個(gè)用戶依次輪流使
用時(shí)間片。
分時(shí)系統(tǒng)的特征
?多路性:多個(gè)用戶同時(shí)工作。
-共享系統(tǒng)資源,提高了資源利用率。節(jié)省維護(hù)開
支,可靠性高,促進(jìn)了計(jì)算機(jī)的普遍應(yīng)用。
?“獨(dú)占”性:各用戶獨(dú)立操作,互不干擾。
?及時(shí)性:系統(tǒng)能及時(shí)對用戶的操作進(jìn)行響應(yīng),顯著
提高調(diào)試和修改程序的效率:縮短了周轉(zhuǎn)時(shí)間。
?交互性:用戶根據(jù)系統(tǒng)相應(yīng)結(jié)果進(jìn)一步提出新請求
1.3.3實(shí)時(shí)操作系統(tǒng)
(RealTimeOperatingSystem)
實(shí)時(shí)操作系統(tǒng)主要用于過程控制、事務(wù)處理等有實(shí)時(shí)要求的
領(lǐng)域,其主要特征是實(shí)時(shí)性和可靠性。
?實(shí)時(shí)系統(tǒng)的特征
-及時(shí)性:對用戶的請求或外部事件處理必須在指定時(shí)
間內(nèi)完成。
-過載保護(hù):緩沖區(qū)排隊(duì),丟棄某些任務(wù),動(dòng)態(tài)調(diào)整任
務(wù)周期;
?過載是指進(jìn)入系統(tǒng)的任務(wù)數(shù)目超出系統(tǒng)的處理能力。
-高度可靠性和安全性:容錯(cuò)能力(如故障自動(dòng)復(fù)位)
和冗余備份(雙機(jī),關(guān)鍵部件);
--專用性:它與應(yīng)用程序以及外界環(huán)境關(guān)系密切。
1.3.4多處理機(jī)器操作系統(tǒng)
(Multi-processorOperatingSystem)
多處理器操作系統(tǒng)的出現(xiàn)是為了提高計(jì)算機(jī)系統(tǒng)性能和
可靠性。提高性能有兩條途徑:提高各個(gè)組成部分的速度、
增大處理的并行程度。1975年前后,出現(xiàn)多處理機(jī)系統(tǒng)
(multi-processor)。
?多處理機(jī)系統(tǒng)的特點(diǎn)
-增加系統(tǒng)的吞吐量
-提高系統(tǒng)可靠性:故障時(shí)系統(tǒng)降級運(yùn)行
1.3.5網(wǎng)絡(luò)操作系統(tǒng)
(NOS,NetworkOperatingSystem)
網(wǎng)絡(luò)操作系統(tǒng)是在通常操作系統(tǒng)功能的
基礎(chǔ)上提供網(wǎng)絡(luò)通信和網(wǎng)絡(luò)服務(wù)功能的操作
系統(tǒng)。包含:
?通常操作系統(tǒng)的功能:處理機(jī)管理、存
儲器管理、設(shè)備管理、文件管理等;
?網(wǎng)絡(luò)功能:網(wǎng)絡(luò)管理、網(wǎng)絡(luò)通信、網(wǎng)絡(luò)
安全、資源共享和各種網(wǎng)絡(luò)應(yīng)用。
1.3.6分布式操作系統(tǒng)
(DistributedOperatingSystem)
分布式系統(tǒng):處理和控制的分散(相對于集中式系統(tǒng))
分布式系統(tǒng)是以計(jì)算機(jī)網(wǎng)絡(luò)為基礎(chǔ)的,它的基本特征是
處理上的分布,即功能和任務(wù)的分布。
分布式操作系統(tǒng)的所有系統(tǒng)任務(wù)可在系統(tǒng)中任何處理機(jī)
上運(yùn)行,自動(dòng)實(shí)現(xiàn)全系統(tǒng)范圍內(nèi)的任務(wù)分配并自動(dòng)調(diào)度
各處理機(jī)的工作負(fù)載。
分布式操作系統(tǒng)與網(wǎng)絡(luò)操作系統(tǒng)的比較
?卡禺1?
-分布式系統(tǒng)是緊密耦合系統(tǒng):分布式OS是在各機(jī)上統(tǒng)一建
立的“OS同質(zhì)”,直接管理CPU、存儲器和外設(shè);統(tǒng)一進(jìn)行
全系統(tǒng)的管理;
-網(wǎng)絡(luò)通常容許異種OS互連,各機(jī)上各種服務(wù)程序需按不同
網(wǎng)絡(luò)協(xié)議”協(xié)議同質(zhì),
?并行性:
-分布式OS可以將一個(gè)進(jìn)程分散在各機(jī)上并行執(zhí)行“進(jìn)程遷移
II*
-網(wǎng)絡(luò)OS則是各機(jī)上的進(jìn)程獨(dú)立。
?透明性:用戶是否知道或指定資源在哪個(gè)機(jī)器上(如CPU、內(nèi)
存或外設(shè))。
-分布式系統(tǒng)的網(wǎng)絡(luò)資源調(diào)度對用戶透明,用戶不了解所占有
資源的位置;
-網(wǎng)絡(luò)操作系統(tǒng)中對網(wǎng)絡(luò)資源的使用要由用戶明確指定;
1.3.7個(gè)人計(jì)算機(jī)操作系統(tǒng)
(PersonalComputerOperatingSystem)
針對單用戶使用的個(gè)人計(jì)算機(jī)進(jìn)行優(yōu)化的操作系統(tǒng)。
?個(gè)人計(jì)算機(jī)操作系統(tǒng)的特征
-應(yīng)用領(lǐng)域:事務(wù)處理、個(gè)人娛樂,
-系統(tǒng)要求:使用方便、支持多種硬件和外部設(shè)備(多
媒體設(shè)備、網(wǎng)絡(luò)、遠(yuǎn)程通信)、效率不必很高。
?常用的個(gè)人計(jì)算機(jī)操作系統(tǒng)
—單用戶單任務(wù):MSDOS
-單用戶多任務(wù):OS/2,MSWindows3.x,Windows
95,WindowsNT,Windows2000Professional
-多用戶多任務(wù):UNIX(SCOUNIX,Solarisx86,Linux,
—I
1.3.8嵌入式操作系統(tǒng)
什么是嵌入式系統(tǒng)?
在各種設(shè)備、裝置或系統(tǒng)中,完成特定功
能的軟硬件系統(tǒng),它們是一個(gè)大設(shè)備、裝置或
系統(tǒng)中的一部分,這個(gè)大設(shè)備、裝置或系統(tǒng)可
以不是“計(jì)算機(jī)”。
由于它們被嵌入在各種設(shè)備、裝置或系統(tǒng)中,
因此稱為嵌入式系統(tǒng)。
在嵌入式系統(tǒng)中的OS,稱為嵌入式操作系統(tǒng)
嵌入式操作系統(tǒng),是運(yùn)行在嵌入式智能芯片環(huán)境中,
對整個(gè)智能芯片以及它所操作、控制的各種部件裝
置等等資源進(jìn)行統(tǒng)一協(xié)調(diào)、調(diào)度、指揮和控制的系
統(tǒng)軟件。
例子:
PalmOS,WindowsCE
典型嵌入式操作系統(tǒng)的特性
?完成某一項(xiàng)或有限項(xiàng)功能;不是通用型的
?在性能和實(shí)時(shí)性方面有嚴(yán)格的限制
?能源、成本和可靠性通常是影響設(shè)計(jì)的重要因素
?占有資源少、易于連接
-系統(tǒng)功能可針對需求進(jìn)行裁剪、調(diào)整和生成以便
滿足最終產(chǎn)品的設(shè)計(jì)要求
嵌入式操作系統(tǒng)的應(yīng)用
嵌入計(jì)算的各種應(yīng)用特點(diǎn)
掌上電腦:
運(yùn)算速度:100KIPS
在大小上優(yōu)化、支持手寫、低能耗
工業(yè)設(shè)備:
運(yùn)算速度:1MIPS
安全優(yōu)先,控制流程為主
軍事裝備
運(yùn)算速度:1GFL0PS(每秒10億次浮點(diǎn)運(yùn)算)
?可靠性最重要.
嵌入式操作系統(tǒng)的應(yīng)用
嵌入式操作系統(tǒng)的應(yīng)用
美國加州伯克利大學(xué)研制:微型智能傳感器,安裝TinyOS
1.4現(xiàn)代操作系統(tǒng)的特征
-并發(fā):指兩個(gè)或兩個(gè)以上事件在同一時(shí)間間
隔內(nèi)發(fā)生。(與“并行”的區(qū)別)
?共享:指系統(tǒng)中硬件和軟件資源可為多個(gè)用
戶同時(shí)使用(互斥共享、同時(shí)訪問)
?虛擬:指物理上的一個(gè)實(shí)體變成邏輯上的多
個(gè)對應(yīng)物。
■異步性:指內(nèi)存中的多個(gè)進(jìn)程均按照各自獨(dú)
立的、不可預(yù)知的速度向前推進(jìn)。
1.5操作系統(tǒng)的功能
1.5.1處理機(jī)管理
1.5.2存儲管理
153設(shè)備管理
1.5.4信息管理
155用戶接口
1.5.1處理機(jī)(CPU)管理
完成處理機(jī)資源的分配、調(diào)度等功能。處理機(jī)調(diào)度的單位可
為進(jìn)程或線程。
?進(jìn)程控制:創(chuàng)建、撤銷、掛起、改變運(yùn)行
優(yōu)先級等一一主動(dòng)改變進(jìn)程的狀態(tài)
?進(jìn)程同步與互斥:協(xié)調(diào)并發(fā)進(jìn)程之間的推
進(jìn)步驟,以協(xié)調(diào)資源共享
?進(jìn)程通信:進(jìn)程之間傳送數(shù)據(jù),以協(xié)調(diào)進(jìn)
程間的協(xié)作
?進(jìn)程調(diào)度:進(jìn)程的運(yùn)行切換,以充分利用
"處理機(jī)資源和提高系統(tǒng)性能
1.5.2存儲管理
對內(nèi)存資源的管理
管理目標(biāo):提高利用率、方便用戶使用、提供足夠的存儲空間、
方便進(jìn)程并發(fā)運(yùn)行。
,存儲分配與回收
?存儲保護(hù):保證進(jìn)程間互不干擾、相互保密;
如:訪問合法性檢查、甚至要防止從“垃圾”
中竊取其他進(jìn)程的信息;
?內(nèi)存擴(kuò)充(覆蓋、交換和虛擬存儲):邏輯
上的擴(kuò)充,提高內(nèi)存利用率、擴(kuò)大進(jìn)程的內(nèi)存
空間;
1.5.3設(shè)備管理
設(shè)備管理的目標(biāo)是:方便的設(shè)備使用、提高CPU與
I/O設(shè)備利用率。
?設(shè)備操作:利用設(shè)備驅(qū)動(dòng)程序(通常在內(nèi)核中)
完成對設(shè)備的操作。
?設(shè)備分配與回收:在多用戶間共享設(shè)備資源。
?緩沖區(qū)管理:匹配CPU和外設(shè)的速度,提高兩
者的利用率。
1.5.4文件管理(信息管理)
解決軟件資源的存儲、共享、保密和保護(hù),操作
系統(tǒng)中負(fù)責(zé)這一功能的部分稱為文件系統(tǒng)。
?文件存儲空間管理:解決如何存放信息,以
提高空間利用率和讀寫性能。
?目錄管理:解決信息檢索問題。
?文件的讀寫管理和存取控制:解決信息安全
問題。
1.5.5用戶接口
目標(biāo):提供一個(gè)友好的用戶訪問操作系統(tǒng)的接口。
操作系統(tǒng)向用戶提供兩種接口:
?系統(tǒng)命令接口:供用戶用于組織和控制自己的
作業(yè)運(yùn)行。命令行、菜單式或GUI
?編程接口(即系統(tǒng)調(diào)用):供用戶程序和系統(tǒng)
程序調(diào)用操作系統(tǒng)功能。
1.6與操作系統(tǒng)相關(guān)的
計(jì)算機(jī)硬件環(huán)境
任何系統(tǒng)軟件都是硬件功能的延伸
操作系統(tǒng)直接依賴于硬件條件
計(jì)算機(jī)基本的硬件元素
-處理器、存儲器、輸入輸出控制、總線、外部設(shè)備
處理器
存儲系統(tǒng)
中斷機(jī)制
I/O系統(tǒng)
時(shí)鐘以及時(shí)鐘隊(duì)列
1.處理器
■單個(gè)處理器,稱之為單機(jī)系統(tǒng)
?多個(gè)處理器,稱之為多機(jī)系統(tǒng)
■處理器上可執(zhí)行的指令分為:
-特權(quán)指令:只能由操作系統(tǒng)使用的指令,如果
允許用戶隨便使用,有可能使系統(tǒng)系統(tǒng)陷入混
SL
-非特權(quán)指令:用戶只能使用非特權(quán)指令
?使得OS可以和普通程序隔離,實(shí)現(xiàn)保護(hù)和控
制
?處理器狀態(tài)
多數(shù)系統(tǒng)將處理器狀態(tài)劃分為
管態(tài):(管理態(tài))操作系統(tǒng)管理程序運(yùn)行的狀態(tài),
可以使用各種指令(特權(quán)和非特權(quán)指令)
目態(tài):(用戶態(tài))用戶程序運(yùn)行的狀態(tài),只能使
用非特權(quán)指令
2,存儲系統(tǒng)
?分層的存儲體系結(jié)構(gòu)
?存儲保護(hù)能力,為實(shí)現(xiàn)用戶程序虛擬地址空間隔
離和保護(hù)提供基礎(chǔ)
?有效管理各種存儲設(shè)備
3.中斷機(jī)制
中斷機(jī)制是操作系統(tǒng)得以正常工作的最重要
的手段
?它使得os可以捕獲普通程序發(fā)出的系統(tǒng)功
能調(diào)用
?及時(shí)處理設(shè)備的中斷請求
?防止用戶程序中破壞性的活動(dòng)等等
4.1/0機(jī)缶U
I/O機(jī)制
?操作系統(tǒng)管理各種系統(tǒng)設(shè)備的基礎(chǔ)設(shè)施
5.時(shí)鐘
時(shí)鐘用于:
?OS定時(shí)
?OS多道運(yùn)轉(zhuǎn)能力的推動(dòng)力量
1.7研究操作系統(tǒng)的幾種觀點(diǎn)
?作為軟件的觀點(diǎn)
討論操作系統(tǒng)的界面和內(nèi)部結(jié)構(gòu)。
?計(jì)算機(jī)資源管理者的觀點(diǎn)
可以從資源情況記錄、資源分配策略、資源分配和回收
討論操作系統(tǒng)。
?用戶界面的觀點(diǎn)
對于用戶來說,并不關(guān)心操作系統(tǒng)的內(nèi)部結(jié)構(gòu),而
關(guān)心操作系統(tǒng)提供了哪些命令或系統(tǒng)調(diào)用。
?進(jìn)程管理的觀點(diǎn)
圍繞進(jìn)程運(yùn)行過程討論操作系統(tǒng)。
1.8操作系統(tǒng)結(jié)構(gòu)
操作系統(tǒng)的內(nèi)部組成結(jié)構(gòu)可分為:
?簡單結(jié)構(gòu)(無序模塊方法)
-層次化結(jié)構(gòu)
?微內(nèi)核結(jié)構(gòu)
簡單結(jié)構(gòu)
?常被人們形容為“大雜燒”,其實(shí)是“無結(jié)構(gòu)
?包括了在物理硬件之上,系統(tǒng)調(diào)用之下的一切,
提供文件系統(tǒng)、CPU調(diào)度、存儲管理和其他操
作系統(tǒng)功能,在一層有大量的過程(功能)。
?每個(gè)過程都可以任意調(diào)用其他過程。
UNIXSystemStructure
UNIX系統(tǒng)結(jié)構(gòu)
(theusers)
shellsandcommands
compilersandinterpreters
systemlibraries
system-calIinterfacetothekernel
signalsterminalfilesystemCPUscheduling
handlingswappingblockI/Opagereplacement
characterI/Osystemsystemdemandpaging
terminaldriversdiskandtapedriversvirtualmemory
kernelinterfacetothehardware
terminalcontrollersdevicecontrollersmemorycontrollers
terminalsdisksandtapesphysicalmemory
ife
層次化結(jié)構(gòu)
?操作系統(tǒng)劃分為若干層,在低層上構(gòu)建高層。
底層(0層)為硬件;最高層(N層)為用
戶層
?考慮模塊化,層的選擇是按照每層只使用低
層次的功能和服務(wù)原則定義的
?每一層向上一層隱藏了數(shù)據(jù)結(jié)構(gòu)、操作
-層次化結(jié)構(gòu)方法的難點(diǎn)在對每一層的適當(dāng)劃
分
OS/2層次化結(jié)構(gòu)
微內(nèi)核結(jié)構(gòu)
?通過劃分系統(tǒng)程序和用戶程序,把所有不
必要的部件移出內(nèi)核,形成一個(gè)小內(nèi)核
?微內(nèi)核提供最少量的進(jìn)程管理、存儲管理,
以及通信功能
?易擴(kuò)展、易移植
?提供更好的安全性和可靠性??絕大部分服
務(wù)以用戶進(jìn)程方式運(yùn)行
WindowsNT客戶機(jī)?服務(wù)器結(jié)構(gòu)
1.9常用的操作系統(tǒng)
1.9.1MSDOS
1.9.2MSWindows95,WindowsNT,
Windows2000,Windowsxp
1.9.3UNIX
1.9.1MSDOS
單用戶單任務(wù),簡單分層結(jié)構(gòu),16位
MSDOS的歷史
?1981年:PC-DOS1.1:IBMPC,只支持軟盤的個(gè)人操作系統(tǒng);
?1983年:DOS2.0:PCXT,支持硬盤和目錄的層次結(jié)構(gòu),并提供豐
富的系統(tǒng)命令;
?1984年:DOS3.0:PCAT(Intel80286CPU),它把286作為一個(gè)快
速的8086使用;
?1987年:DOS3.3:提供對舊MPS/2的支持(如35'軟驅(qū)),提供了
更多的應(yīng)用;
?1988年:DOS4.0:支持大于32M的硬盤;
?1991年:DOS5.0:改進(jìn)對擴(kuò)展內(nèi)存的支持;
1.9.2MSWindows
CPU80386
單用戶多任務(wù)(分時(shí)系統(tǒng)),16位/16和32位混合/32位
Windows的歷史
?1990年:Windows3.0(成功版本),16位OS,
借鑒AppleMacintosh給出友好的用戶界面;
?1993年:WindowsNT3.1,32位OS,支持DOS和
Windows應(yīng)用程序;
?1999年12月:Windows2000(Professional,
Server,AdvancedServer),32位OS;
Windows在當(dāng)時(shí)微軟歷史上創(chuàng)了幾個(gè)記錄:延遲交
貨次數(shù)最多,投入開發(fā)人員最多,開發(fā)時(shí)間最長,更
換主管人員最多.
不過幾年之后,Windows終于創(chuàng)造了銷售成績最
佳的歷史記錄.個(gè)人計(jì)算機(jī)采用Windows占90%以上,
微軟公司成了壟斷PC行業(yè)的同義詞。
Windows2003的設(shè)計(jì)思想
?融合了分層操作系統(tǒng)與客戶/服務(wù)器(微內(nèi)核)操
作系統(tǒng)的特點(diǎn)
?硬件機(jī)制實(shí)現(xiàn)核心態(tài)和用戶態(tài)兩個(gè)特權(quán)級別
?內(nèi)存管理、高速緩存管理器、對象及安全管理器、
網(wǎng)絡(luò)協(xié)議、文件系統(tǒng)和所有進(jìn)程和線程管理都運(yùn)
行在核心態(tài)
?核心態(tài)組件使用面相對象設(shè)計(jì)原則
?大部分代碼使用c語言實(shí)現(xiàn),只有必須和硬件直接
通信和性能極度敏感的部分才使用匯編語言
SystemsupportEnvironment
processesServiceprocessesApplicationssubsystems
ServiceControl
ManagerSvchostexe
TaskManager
LsassWinmgmt.exe
Windows
WinlogonSpoolerExplorer
User
SessionServices.exeapplication
Manager|Win32|
SubsystemDLLslll
Ntdll.dll
System
threadsUsermode
''▼Kernelmode
Systemservicedispatcher
(Kernel-modecallableinterfaces)
Win32USER.
GDI
I/Omanager
DeviceGraphics
andfiledrivers
system
drivers
Kernel
Hardwareabstractionlayer(HAL)
Hardwareinterfaces
(Buses.I/Odevices,interrupts,intervaltimers.DMA,memorycachecontrol,andsoon)
WindowsServer2003的體系結(jié)構(gòu)詳圖一7
1.9.3UNIX
?一群計(jì)算機(jī)迷在貝爾實(shí)驗(yàn)室開發(fā)出UNIX
?初衷:可以在一臺無人使用的DECPDP7
小型計(jì)算機(jī)上玩星際探險(xiǎn)游戲
?KenThompson,DennisRitchie
-1983年圖靈獎(jiǎng)獲得者
-1999年4月美國國家技術(shù)金獎(jiǎng)
UNIX
多用戶多任務(wù),16/32/64位
UNIX的歷史
?1965年:MIT的Multics,由于規(guī)模和進(jìn)展而沒有達(dá)到目標(biāo);
■1969年:AT&T,PDP-11上的16位操作系統(tǒng);
?1974年:UNIX系統(tǒng)正式發(fā)表(第五版),在大學(xué)得到使用和好評;
?1
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 預(yù)咨詢服務(wù)合同協(xié)議書范本
- 個(gè)人信用貸款擔(dān)保合同
- 上海市股權(quán)轉(zhuǎn)讓合同范本(年版)
- 中保人壽團(tuán)體福利保險(xiǎn)合同條款修訂版
- 交通事故損害賠償合同
- 個(gè)人借款合同模板(擔(dān)保借款適用)
- 個(gè)人對企業(yè)借款合同書
- 個(gè)人房產(chǎn)抵押借款合同示例
- 中央空調(diào)系統(tǒng)安裝合同
- 不銹鋼工程項(xiàng)目承包合同
- 測繪工程產(chǎn)品價(jià)格表匯編
- 拘留所教育課件02
- 語言和語言學(xué)課件
- 《工作場所安全使用化學(xué)品規(guī)定》
- 裝飾圖案設(shè)計(jì)-裝飾圖案的形式課件
- 2022年菏澤醫(yī)學(xué)??茖W(xué)校單招綜合素質(zhì)考試筆試試題及答案解析
- 護(hù)理學(xué)基礎(chǔ)教案導(dǎo)尿術(shù)catheterization
- ICU護(hù)理工作流程
- 廣東版高中信息技術(shù)教案(全套)
- 市政工程設(shè)施養(yǎng)護(hù)維修估算指標(biāo)
- 分布式光伏屋頂調(diào)查表
評論
0/150
提交評論