![Windows操作系統(tǒng).ppt_第1頁](http://file1.renrendoc.com/fileroot_temp2/2020-3/15/58ae5162-5b04-4a36-aac6-5ff7b7ba0086/58ae5162-5b04-4a36-aac6-5ff7b7ba00861.gif)
![Windows操作系統(tǒng).ppt_第2頁](http://file1.renrendoc.com/fileroot_temp2/2020-3/15/58ae5162-5b04-4a36-aac6-5ff7b7ba0086/58ae5162-5b04-4a36-aac6-5ff7b7ba00862.gif)
![Windows操作系統(tǒng).ppt_第3頁](http://file1.renrendoc.com/fileroot_temp2/2020-3/15/58ae5162-5b04-4a36-aac6-5ff7b7ba0086/58ae5162-5b04-4a36-aac6-5ff7b7ba00863.gif)
![Windows操作系統(tǒng).ppt_第4頁](http://file1.renrendoc.com/fileroot_temp2/2020-3/15/58ae5162-5b04-4a36-aac6-5ff7b7ba0086/58ae5162-5b04-4a36-aac6-5ff7b7ba00864.gif)
![Windows操作系統(tǒng).ppt_第5頁](http://file1.renrendoc.com/fileroot_temp2/2020-3/15/58ae5162-5b04-4a36-aac6-5ff7b7ba0086/58ae5162-5b04-4a36-aac6-5ff7b7ba00865.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、Windows操作系統(tǒng)核心技術(shù),參考教材,尤晉元等,Windows操作系統(tǒng)原理,機(jī)械工業(yè)出版社,2001 David A. Solomon, Windows NT 技術(shù)內(nèi)幕,清華大學(xué)出版社,1999年7月,本課程內(nèi)容,含蓋操作系統(tǒng)原理課程的全部理論內(nèi)容以及Windows 2000/XP操作系統(tǒng)構(gòu)成的各個方面 10講的內(nèi)容依次是: 第1講 操作系統(tǒng)概述 第2講 Windows 2000XP 的體系結(jié)構(gòu) 第3講 進(jìn)程管理 第4講 存儲管理 第5講 文件系統(tǒng),第6講 I/O系統(tǒng) 第7講 網(wǎng)絡(luò) 第8講 windows安全 第9講 應(yīng)用程序設(shè)計 第10講 驅(qū)動程序設(shè)計,操作系統(tǒng)概述,發(fā)展與分類 計算機(jī)系
2、統(tǒng)結(jié)構(gòu)與特點 定義 按人的要求接收、存儲信息,自動進(jìn)行數(shù)據(jù)處理和計算,并輸出結(jié)果的機(jī)器系統(tǒng)。 特點 計算、判斷、存儲、精確、快速、通用、易用、聯(lián)網(wǎng) 組成 硬件、軟件,計算機(jī)系統(tǒng)概觀,計算機(jī)組織 指運(yùn)算器、存儲器、控制器、I/O部件間的相互連接 作為計算機(jī)系統(tǒng)結(jié)構(gòu)的邏輯和物理實現(xiàn),任務(wù)是提高性價比,實現(xiàn)計算機(jī)在指令級的功能和特性; 計算機(jī)系統(tǒng)結(jié)構(gòu) 從程序設(shè)計人員角度看到的計算機(jī)屬性,處于機(jī)器語言級; 存儲程序原理 是了解計算機(jī)組織的關(guān)鍵 基于此構(gòu)造的計算機(jī)稱為存儲程序計算機(jī)(馮.諾伊曼機(jī)) 基本點:指令驅(qū)動, 即程序由指令組成,并和數(shù)據(jù)一起存放在計算機(jī)存儲器中,地位:緊貼硬件之上,其它軟件之下,
3、是其他軟件的共同環(huán)境 定義:系統(tǒng)軟件,程序模塊的集合,資源管理和用戶接口功能,操作系統(tǒng)概念,操作系統(tǒng)特征,并發(fā)性 多程序同時推進(jìn) 單CPU環(huán)境 用戶程序之間、用戶程序與操作系統(tǒng)之間 多CPU環(huán)境 宏觀、微觀并發(fā) 分布式環(huán)境 多計算機(jī)并存 共享性 系統(tǒng)的各種資源共享 隨機(jī)性 運(yùn)行狀態(tài)不確定 要求操作系統(tǒng)設(shè)計與實現(xiàn)要充分考慮各種可能,操作系統(tǒng)作用,OS是計算機(jī)硬件、軟件資源的管理者 管理對象包括:CPU、存儲器、外部設(shè)備、信息(數(shù)據(jù)和軟件); 管理的內(nèi)容:資源的當(dāng)前狀態(tài)(數(shù)量和使用情況)、資源的分配、回收和訪問操作,相應(yīng)管理策略(包括用戶權(quán)限)。,OS是用戶使用系統(tǒng)硬件、軟件的接口 系統(tǒng)命令(命令
4、行、菜單式、命令腳本式、圖形用戶接口GUI); 系統(tǒng)調(diào)用(形式上類似于過程調(diào)用,在應(yīng)用編程中使用)。,OS是擴(kuò)展機(jī)(extended machine)/虛擬機(jī)(virtual machine)。 在裸機(jī)上添加:設(shè)備管理、文件管理、存儲管理(針對內(nèi)存和外存)、處理機(jī)管理(針對CPU); 合理組織工作流程:作業(yè)管理、進(jìn)程管理。,幾項重要功能 進(jìn)程管理 主要是對處理器進(jìn)行管理 解決處理器實施分配調(diào)度策略; 協(xié)調(diào)多道程序間的關(guān)系 存儲管理 管理內(nèi)存資源 內(nèi)外存結(jié)合實現(xiàn)虛擬存儲器,解決內(nèi)存不夠問題 文件管理 信息資源以文件方式存放在外存 方便、安全的訪問 作業(yè)管理 為用戶提供使用機(jī)器的手段 設(shè)備管理 管
5、理所有I/O設(shè)備及其支持設(shè)備,引入操作系統(tǒng)的目標(biāo),有效性(系統(tǒng)管理人員的觀點) 管理和分配硬件、軟件資源,合理地組織計算機(jī)的工作流程 方便性(用戶的觀點) 提供良好的、一致的用戶接口,彌補(bǔ)硬件系統(tǒng)的類型和數(shù)量差別 可擴(kuò)充性(開放的觀點) 硬件的類型和規(guī)模、操作系統(tǒng)本身的功能和管理策略、多個系統(tǒng)之間的資源共享和互操作,操作系統(tǒng)歷史,主要討論操作系統(tǒng)的外部特征 發(fā)展動力 提高資源的利用率和系統(tǒng)性能:計算機(jī)發(fā)展的初期,計算機(jī)系統(tǒng)昂貴,用作集中計算 方便用戶:用戶上機(jī)、調(diào)試程序,分散計算時的事務(wù)處理和非專業(yè)用戶(商業(yè)和辦公、家庭) 器件的發(fā)展:CPU的位寬度(指令和數(shù)據(jù))、快速外存,手工操作 集中計算
6、(計算中心),計算機(jī)資源昂貴; 用戶既是程序員,又是操作員;用戶是計算機(jī)專業(yè)人員; 編程語言:為機(jī)器語言; 輸入輸出:紙帶或卡片; 工作特點 用戶獨占全機(jī):不出現(xiàn)資源被其他用戶占用,資源利用率低; CPU等待用戶:計算前,手工裝入紙帶或卡片;計算完成后,手工卸取紙帶或卡片;CPU利用率低; 提高效率的途徑 專門的操作員,批處理,批處理系統(tǒng) 利用磁帶把若干個作業(yè)分類編成作業(yè)執(zhí)行序列,每個批作業(yè)由一個專門的監(jiān)督程序(Monitor)自動依次處理??墒褂脜R編語言開發(fā)。 批處理中的作業(yè)的組成:用戶程序、數(shù)據(jù)、作業(yè)說明書(作業(yè)控制語言) 監(jiān)督程序發(fā)展為執(zhí)行系統(tǒng)(executive system),常駐內(nèi)
7、存 主要問題 CPU和I/O設(shè)備使用忙閑不均(取決于當(dāng)前作業(yè)的特性)。 對計算為主的作業(yè),外設(shè)空閑; 對I/O為主的作業(yè),CPU空閑;,多道批處理系統(tǒng) 利用多道批處理提高資源的利用率。 多道批處理的運(yùn)行特征 多道:內(nèi)存中同時存放幾個作業(yè); 宏觀上并行運(yùn)行:都處于運(yùn)行狀態(tài),但都未運(yùn)行完; 微觀上串行運(yùn)行:各作業(yè)交替使用CPU; 優(yōu)點: 資源利用率高:CPU和內(nèi)存利用率較高; 作業(yè)吞吐量大:單位時間內(nèi)完成的工作總量大; 缺點: 用戶交互性差:整個作業(yè)完成后或中間出錯時,才與用戶交互,不利于調(diào)試和修改; 作業(yè)平均周轉(zhuǎn)時間長:短作業(yè)的周轉(zhuǎn)時間顯著增長;,分時系統(tǒng) “分時”的含義分時是指多個用戶分享使用
8、同一臺計算機(jī)。多個程序分時共享硬件和軟件資源。 多個用戶分時:單個用戶使用計算機(jī)的效率低,因而允許多個應(yīng)用程序同時在內(nèi)存中,分別服務(wù)于不同的用戶。有用戶輸入時由CPU執(zhí)行,處理完一次用戶輸入后程序暫停,等待下一次用戶輸入時走時停 前臺和后臺程序分時:后臺程序不占用終端輸入輸出,不與用戶交互現(xiàn)在的圖形用戶界面(GUI),除當(dāng)前交互的程序(輸入焦點)之外,其他程序均作為后臺 通常按時間片(time slice)分配:各個程序在CPU上執(zhí)行的輪換時間。,批處理: 交互性差提高對CPU利用率; 分時處理:用戶與應(yīng)用程序隨時交互,控制程序運(yùn)行,適于商業(yè)和辦公事務(wù) 處理縮短響應(yīng)時間,用高級語言書寫OS U
9、nix 特色不兼容,一直困難。 可移植OS標(biāo)準(zhǔn)出現(xiàn):POSIX、SVID、XPG 通用OS 面向個人應(yīng)用 WINDOWS, LINUX 兩大發(fā)展方向:宏觀、微觀 宏觀:大規(guī)模,分布式 微觀:嵌入式,操作系統(tǒng)分類,批處理(Batch Processing Operation System) 分時(Time Sharing Operating System) 實時 (Real Time Operating System) 多處理 (Multi-processor Operating System) 嵌入式 (Embedded OS) 個人計算機(jī)OS (Personal OS) NOS(Networ
10、k Operating System) 分布式OS(Distributed OS),批處理系統(tǒng)中作業(yè)處理及狀態(tài),單道(uniprogramming)和多道批處理的比較,多道程序系統(tǒng)和多處理系統(tǒng)(multiprocessing system)的區(qū)別:前者指多個程序同時在內(nèi)存中交替運(yùn)行,后者指多個處理器。,分時系統(tǒng)的特征,多路性:多個用戶同時工作。 共享系統(tǒng)資源,提高了資源利用率。 節(jié)省維護(hù)開支,可靠性高:笨終端至今仍在使用。 促進(jìn)了計算機(jī)的普遍應(yīng)用,提高資源利用率:遠(yuǎn)地用戶通過終端(較便宜)聯(lián)機(jī)使用。 獨立性:各用戶獨立操作,互不干擾。 交互性:系統(tǒng)能及時對用戶的操作進(jìn)行響應(yīng),顯著提高調(diào)試和修改
11、程序的效率:縮短了周轉(zhuǎn)時間。,分時系統(tǒng)的主要問題,及時接受輸入:多個I/O端口,設(shè)立多路緩沖區(qū) 及時響應(yīng): 提高對換速度(快速外存)、 限制用戶數(shù)目、 縮短時間片(可能引起對換次數(shù)增多,開銷增大,程序總運(yùn)行時間增大) 減少對換信息量: 可重入代碼(re-entrant code); 請求頁式存儲管理:只對換部分程序,實時系統(tǒng)的特征 實時時鐘管理:提供系統(tǒng)日期和時間、定時和延時等時鐘管理功能; 過載保護(hù):緩沖區(qū)排隊,丟棄某些任務(wù),動態(tài)調(diào)整任務(wù)周期; 過載是指進(jìn)入系統(tǒng)的任務(wù)數(shù)目超出系統(tǒng)的處理能力。 高度可靠性和安全性:容錯能力(如故障自動復(fù)位)和冗余備份(雙機(jī),關(guān)鍵部件);,實時操作系統(tǒng)主要用于過
12、程控制、事務(wù)處理等有實時要求的領(lǐng)域,其主要特征是實時性和可靠性。,實時操作系統(tǒng),實時系統(tǒng)與批處理系統(tǒng)和分時系統(tǒng)的區(qū)別,專用系統(tǒng):許多實時系統(tǒng)是專用系統(tǒng),而批處理與分時系統(tǒng)通常是通用系統(tǒng)。 實時控制:實時系統(tǒng)用于控制實時過程,要求對外部事件的迅速響應(yīng),具有較強(qiáng)的中斷處理機(jī)構(gòu)。 高可靠性:實時系統(tǒng)用于控制重要過程,要求高度可靠,具有較高冗余。如雙機(jī)系統(tǒng)。 事件驅(qū)動和隊列驅(qū)動:實時系統(tǒng)的工作方式:接受外部消息,分析消息,調(diào)用相應(yīng)處理程序進(jìn)行處理。 可與通用系統(tǒng)結(jié)合成通用實時系統(tǒng):實時處理前臺作業(yè),批處理為后臺作業(yè)。,多處理操作系統(tǒng),非對稱式多處理(Asymmetric Multiprocessing
13、, ASMP):又稱主從模式(Master-slave mode)。 主處理器:只有一個,運(yùn)行OS。管理整個系統(tǒng)的資源,為從處理器分配任務(wù); 從處理器:可有多個,執(zhí)行應(yīng)用程序或I/O處理。 特點:不同性質(zhì)任務(wù)的負(fù)載不均,可靠性不夠高,不易移植(通常要求硬件也是非對稱)。 對稱式多處理(Symmetric Multiprocessing, SMP) OS交替在各個處理器上執(zhí)行。任務(wù)負(fù)載較為平均,性能調(diào)節(jié)容易傻瓜式,對稱多處理機(jī)與非對稱多處理機(jī)的比較,網(wǎng)絡(luò)操作系統(tǒng),在通用操作系統(tǒng)功能的基礎(chǔ)上提供網(wǎng)絡(luò)通信和網(wǎng)絡(luò)服務(wù)功能的操作系統(tǒng) 網(wǎng)絡(luò)操作系統(tǒng)為網(wǎng)上計算機(jī)進(jìn)行方便而有效的網(wǎng)絡(luò)資源共享,提供網(wǎng)絡(luò)用戶所需
14、各種服務(wù)的軟件和相關(guān)規(guī)程的集合 網(wǎng)絡(luò)功能與操作系統(tǒng)的結(jié)合程度是網(wǎng)絡(luò)操作系統(tǒng)的重要性能指標(biāo) 早期作法是通用操作系統(tǒng)附加網(wǎng)絡(luò)軟件,過渡到網(wǎng)絡(luò)功能成為操作系統(tǒng)的有機(jī)組成部分 區(qū)別:網(wǎng)絡(luò)功能的強(qiáng)弱、使用是否方便,例,MS OS: MS DOS, MS Windows 3.x, Windows 95, Windows NT, Windows 2000 UNIX: BSD, SCO UNIX, AIX, Solaris, Linux NOS: Novell Netware RTOS: VxWorks, pSoS, Nucleus,研究操作系統(tǒng)的幾種觀點,軟件觀點 外在特性: 命令集、界面 內(nèi)在特性:具有一
15、般軟件不具備的特殊結(jié)構(gòu) 資源管理觀點 分配、回收、競爭、保護(hù) 進(jìn)程觀點 將操作系統(tǒng)當(dāng)作若干個可同時獨立運(yùn)行的程序-進(jìn)程 虛擬機(jī) 屏蔽硬件,多個層次 服務(wù)提供者 用戶角度,Windows操作系統(tǒng)歷程 開發(fā)過程 版本及其特點 Win3x Win9x Win2000 Winxp ,http:/www.winhistory.de/more/win1.htm, Windows 1.X(1985年11月) 已有多窗口輸出、多任務(wù)處理功能、初步具有圖形界面; Windows 2.X(1987年11月) 具有圖形界面,而且已具有Windows 3.1的系統(tǒng)原型。如應(yīng)用程序的添加、支持磁盤擴(kuò)充、支持多種外設(shè)接口
16、等,開始受到外界的重視與關(guān)注; Windows /286 V2.1及Windows /386 V2.1 (1988,1989年)因當(dāng)時Windows的速度過慢而仍未普及,故推出此版本,修正核心程序(如:I/O、內(nèi)存、CPU等的控制)并以結(jié)構(gòu)化語言改寫使得速度大幅提升; Windows 3.0英文版(1990年5月)除了改正Windows 2.X版的錯誤外,使得圖形用戶界面正式進(jìn)入個人PC的領(lǐng)域;擁有真正GUI的操作系統(tǒng);除此之外,還提供一個非常完善的用戶環(huán)境。增強(qiáng)了多任務(wù)處理、GUI、存儲管理等能力;, Windows 3.0中文版(1991年7月31日) ,中文化的操作界面,主要添加了中文輸
17、入法及漢字庫的支持; Windows 95英文版(1992年4月) Windows 95中文版(1993年8月)除英文版功能外,還新增如多顯卡支持、打印機(jī)驅(qū)動、兼容性與穩(wěn)定性等。 Windows 95中文版新特性(1995年8月) 真正32位的操作系統(tǒng) 全新的工作桌面 支持長文件名 支持硬件的即插即用 32位可搶先( Preemptive ) 多任務(wù)系統(tǒng) 全新的多媒體享受 強(qiáng)大的網(wǎng)絡(luò)支持 更友好的安裝、操作界面,Windows1.01,Windows1.02,Windows1.03,Windows 2.xx,Windows NT體系結(jié)構(gòu),Windows 2000的特點,支持對稱多處理機(jī) 真正的
18、32位操作系統(tǒng):除16位應(yīng)用的支持代碼,沒有16位的代碼;兼容16位Windows應(yīng)用 完全的代碼可重入(reentrant):同一段代碼可由多個應(yīng)用同時訪問; 圖形用戶界面GUI(和字符用戶界面),搶先式多任務(wù)和多線程 虛擬存儲:段頁式(有存儲保護(hù)) 文件系統(tǒng):NTFS(HPFS),支持安全控制 設(shè)備驅(qū)動程序:VxD(virtual driver) 可移植:適用于多種硬件平臺 容錯能力 面向?qū)ο筇匦裕河脤ο髞肀硎舅匈Y源。,Windows 2000/XP的體系結(jié)構(gòu),本章要點,操作系統(tǒng)的設(shè)計目標(biāo) 操作系統(tǒng)的設(shè)計階段 幾種常見的操作系統(tǒng)體系結(jié)構(gòu)范型 Windows 2000/XP的操作系統(tǒng)模型
19、Windows 2000/XP的體系結(jié)構(gòu) Windows 2000/XP的重要組成部分 Windows 2000/XP的系統(tǒng)機(jī)制 Windows 2000/XP注冊表、服務(wù)控制與管理機(jī)制,操作系統(tǒng)的設(shè)計問題,操作系統(tǒng)設(shè)計有著不同于一般應(yīng)用系統(tǒng)設(shè)計的特征 復(fù)雜程度高 研制周期長 正確性難以保證 解決途徑 良好的操作系統(tǒng)結(jié)構(gòu) 先進(jìn)的開發(fā)方法和工程化的管理方法 高效的開發(fā)工具,操作系統(tǒng)的設(shè)計目標(biāo),可靠性:正確性和健壯性, 主要指并發(fā)、共享及其引起的不確定性 高效性:提高系統(tǒng)的運(yùn)行效率 易維護(hù)性:易讀、易擴(kuò)充、易剪裁、易修改性 易移植性:一次開發(fā),多處使用 安全性:計算機(jī)軟件系統(tǒng)安全性的基礎(chǔ) 可適應(yīng)性
20、 簡明性,Windows 2000/XP的設(shè)計目標(biāo),總原則:市場需求 驅(qū)動 設(shè)計目標(biāo) 需求: 提供一個真32位搶占式可重入的虛擬內(nèi)存操作系統(tǒng) 能夠在多種硬件體系結(jié)構(gòu)和平臺上運(yùn)行 能夠在對稱多處理系統(tǒng)上運(yùn)行并具有良好的可伸縮性 優(yōu)秀的分布式計算平臺,既可作為網(wǎng)絡(luò)客戶,又可作為網(wǎng)絡(luò)服務(wù)器 可運(yùn)行多數(shù)現(xiàn)有16位MS-DOS和Microsoft Windows 3.1 應(yīng)用程序 符合對POSLX 1003.1的要求 符合政府和企業(yè)對操作系統(tǒng)安全性的要求 支持Unicode,適應(yīng)全球市場的需要,Windows 2000/XP的設(shè)計目標(biāo): 可擴(kuò)充性 可移植性 可靠性及堅固性 兼容性 性能,操作系統(tǒng)的設(shè)計考
21、慮,功能設(shè)計:操作系統(tǒng)應(yīng)具備哪些功能 算法設(shè)計:選擇和設(shè)計滿足系統(tǒng)功能的算法和策略,并分析和估算其效能 結(jié)構(gòu)設(shè)計:選擇合適的操作系統(tǒng)結(jié)構(gòu),操作系統(tǒng)結(jié)構(gòu)設(shè)計,按照系統(tǒng)的功能和特性要求,選擇合適的結(jié)構(gòu),使用相應(yīng)的結(jié)構(gòu)設(shè)計方法將系統(tǒng)逐步地分解、抽象和綜合,使操作系統(tǒng)結(jié)構(gòu)清晰、簡單、可靠、易讀、易修改,而且使用方便,適應(yīng)性強(qiáng),操作系統(tǒng)體系結(jié)構(gòu)問題,程序結(jié)構(gòu) 程序結(jié)構(gòu)的兩層含義: 整體結(jié)構(gòu)、局部結(jié)構(gòu) 程序的結(jié)構(gòu)良好的準(zhǔn)則 軟件結(jié)構(gòu) 操作系統(tǒng)體系結(jié)構(gòu) 大型軟件,模塊劃分、接口定義復(fù)雜 并發(fā)性,接口復(fù)雜、信息交換頻繁 計算機(jī)體系結(jié)構(gòu)日益復(fù)雜,應(yīng)用擴(kuò)大、使用要求提高使得操作系統(tǒng)體系結(jié)構(gòu)日趨復(fù)雜,幾種常見的操作
22、系統(tǒng)結(jié)構(gòu),模塊組合結(jié)構(gòu) 模塊組合結(jié)構(gòu)的特點與適應(yīng)性 模塊間轉(zhuǎn)接隨便 數(shù)據(jù)基本上作為全程量處理 常常關(guān)中斷,系統(tǒng)的并發(fā)性難以提高,層次結(jié)構(gòu) 層次結(jié)構(gòu)設(shè)計方法的核心思想 例如E.W.Dijkstra的THE系統(tǒng):,分層原則 與硬件相關(guān)的最底層 計算機(jī)具有多操作方式多操作方式共有的基本部分放在內(nèi)層,具體操作方式相關(guān)的方在外層; OS基于進(jìn)程的概念,內(nèi)核放在內(nèi)層;內(nèi)層中又分多層,公用功能在最內(nèi)層。,層次結(jié)構(gòu)的特點 分解成許多功能單一的模塊,各模塊之間有清晰的組織結(jié)構(gòu)和依賴關(guān)系 具有更高的可讀性和可適應(yīng)性 層次結(jié)構(gòu)是單向依賴的,上層模塊建立在下層基礎(chǔ)上,設(shè)計了比較可靠的基礎(chǔ) 很容易增加或替換掉一層而不影
23、響其它層次 便于修改、擴(kuò)充,層次結(jié)構(gòu)的層間關(guān)系,全序:同層模塊不互相調(diào)用,各層簡單向 半序:有循環(huán),進(jìn)程分層結(jié)構(gòu) 實現(xiàn)代價較大: 必須設(shè)立一個進(jìn)程控制塊,用以保留進(jìn)程的狀態(tài)信息,增加了內(nèi)存開銷 進(jìn)程之間的控制轉(zhuǎn)移、狀態(tài)保留及信息傳送,均由核心去管理,時間消耗多,效率下降 系統(tǒng)并發(fā)活動過多,調(diào)度負(fù)擔(dān)過重,且同步操作過于分散,易于造成死鎖,影響了系統(tǒng)的安全性,層次結(jié)構(gòu)的兩種類型,層次管程結(jié)構(gòu) 進(jìn)程:并發(fā)單位 類程:專用資源的抽象 管程:共享資源的抽象 一個動態(tài)的系統(tǒng)由內(nèi)核和一組有限個滿足規(guī)定調(diào)用關(guān)系的進(jìn)程P、類程C和管程M構(gòu)成。 其中進(jìn)程是系統(tǒng)中唯一能動的成份,管程和類程都是被動成份,優(yōu)點 采用層
24、次管程結(jié)構(gòu)的系統(tǒng)結(jié)構(gòu)清晰、統(tǒng)一 同步操作相對集中,系統(tǒng)安全性較高 用高級語言書寫程序,研制周期短,通過編譯技術(shù)獲取更高的靈活性和效率 只用一種概念描述并發(fā),減少了不必要的并行性,減少了系統(tǒng)開銷。 缺點: 管程嵌套問題比較難于高效的解決 不便于管理多個資源和全局性資源,虛擬機(jī)結(jié)構(gòu),如IBM大型機(jī)上的系列操作系統(tǒng) 基本思想:系統(tǒng)應(yīng)該提供多道程序能力及一個比裸機(jī)有更方便擴(kuò)展界面的計算機(jī) 。但二者的實現(xiàn)應(yīng)相互獨立 特點 虛擬機(jī)概念可以實現(xiàn)完全保護(hù) 用軟件從硬件逐層擴(kuò)展 虛擬機(jī)方法把多道程序和擴(kuò)展機(jī)器的功能完全分開,使每一部分都簡單、靈活,更易于維護(hù)。,CMS: 會話監(jiān)控系統(tǒng),微內(nèi)核(客戶/服務(wù)器結(jié)構(gòu))
25、,CMU的Mach、早期的Windows NT 非常適宜于應(yīng)用在網(wǎng)絡(luò)環(huán)境下,應(yīng)用于分布式處理的計算環(huán)境中 由下面兩大部分組成 運(yùn)行在核心態(tài)的“微”內(nèi)核 用戶態(tài),以C/S模式運(yùn)行的若干進(jìn)程,通過內(nèi)核進(jìn)行通信 主要特點 機(jī)制(內(nèi)核)與策略(服務(wù)進(jìn)程)分離比較徹底 可靠 靈活 適合分布式計算的需求 缺點:效率較低,其它體系結(jié)構(gòu),外展式核心(Exokernels) 這種觀點認(rèn)為操作系統(tǒng)應(yīng)該只負(fù)責(zé)在競爭的用戶之間安全、有效的分配計算資源 傳統(tǒng)操作系統(tǒng)的絕大部分功能應(yīng)該在系統(tǒng)庫中以可選的方式鏈接進(jìn)用戶程序 可擴(kuò)展系統(tǒng) 可擴(kuò)展系統(tǒng)認(rèn)為應(yīng)該將盡可能多的模塊以一種受保護(hù)的方式放進(jìn)核心當(dāng)中。操作系統(tǒng)的構(gòu)造者可以先
26、構(gòu)造從一個只包含稍微多于核心保護(hù)機(jī)制的一個最小核心。而其它的功能則通過不斷的往核心中添加受保護(hù)的模塊實現(xiàn)。,2.2 Windows 2000/XP系統(tǒng)模型,融合了分層操作系統(tǒng)和微內(nèi)核操作系統(tǒng)的設(shè)計思想,使用面向?qū)ο蟮姆治雠c設(shè)計,采用整體式的實現(xiàn) Windows 2000/XP通過硬件機(jī)制實現(xiàn)了核心態(tài)以及用戶態(tài)兩個特權(quán)級別 。對性能影響很大的操作系統(tǒng)組件運(yùn)行在核心態(tài)。核心內(nèi)沒有保護(hù)。 Windows 2000/XP的核心態(tài)組件使用了面向?qū)ο笤O(shè)計原則 出于可移植性以及效率因素的考慮,大部分代碼使用了基于C語言的對象實現(xiàn)。 Windows 2000/XP的很多系統(tǒng)服務(wù)運(yùn)行在核心態(tài),這使得Window
27、s 2000/XP更加高效,而且也是相當(dāng)穩(wěn)定的。,Windows 2000/XP的構(gòu)成,用戶態(tài)組件 系統(tǒng)支持進(jìn)程(system support process),不是Windows 2000/XP服務(wù),不由服務(wù)控制器啟動。 服務(wù)進(jìn)程(service process),Windows 2000/XP的服務(wù)。 環(huán)境子系統(tǒng)(enviroment subsystems),它們向應(yīng)用程序提供操作系統(tǒng)功能調(diào)用接口包括:Win32、POSIX和OS/2 1.2。 應(yīng)用程序(user applications),五種類型:Win32、Windows 3.1、MS-DOS、POSIX 或OS/2 1.2。 子系
28、統(tǒng)動態(tài)鏈接庫:調(diào)用層轉(zhuǎn)換和映射,核心態(tài)組件 核心(kernel)包含了最低級的操作系統(tǒng)功能,例如線程調(diào)度、中斷和異常調(diào)度、多處理器同步等。同時它也提供了執(zhí)行體(Executive)用來實現(xiàn)高級結(jié)構(gòu)的一組例程和基本對象。 執(zhí)行體包含基本的操作系統(tǒng)服務(wù),例如內(nèi)存管理器、進(jìn)程和線程管理、安全控制、I/O以及進(jìn)程間的通信。 硬件抽象層(HAL, Hardware Abstraction Layer)將內(nèi)核、設(shè)備驅(qū)動程序以及執(zhí)行體同硬件分隔開來,實現(xiàn)硬件映射。 設(shè)備驅(qū)動程序(Device Drivers)包括文件系統(tǒng)和硬件設(shè)備驅(qū)動程序等,其中硬件設(shè)備驅(qū)動程序?qū)⒂脩舻腎/O函數(shù)調(diào)用轉(zhuǎn)換為對特定硬件設(shè)備的I
29、/O請求。 圖形引擎包含了實現(xiàn)圖形用戶界面(GUI,Graphical User Interface)的基本函數(shù)。,可移植性的獲得,兩種方法 分層的設(shè)計 依賴于處理器體系結(jié)構(gòu)或平臺的系統(tǒng)底層部分被隔離在單獨的模塊之中,系統(tǒng)的高層可以被屏蔽在千差萬別的硬件平臺之外。提供操作系統(tǒng)可移植性的兩個關(guān)鍵組件是HAL和內(nèi)核。依賴于體系結(jié)構(gòu)的功能在內(nèi)核中實現(xiàn),在相同體系結(jié)構(gòu)中,因計算機(jī)而異的功能在HAL中實現(xiàn)。 Windows 2000/XP大量使用高級語言執(zhí)行體、設(shè)備驅(qū)動程序等用C語言編寫,圖形用戶界面用C+編寫。只有那些必須和系統(tǒng)硬件直接通信的操作系統(tǒng)部分,或性能極度敏感的部分是用匯編語言編寫的。匯編語
30、言代碼分布集中且少。,對稱多處理器支持,代碼對多處理器的可伸縮性好 完善的IPC和鎖機(jī)制解決資源競爭問題 核心態(tài)組件代碼可重入程度極高 多優(yōu)先級搶占式調(diào)度(利用系統(tǒng)陷阱調(diào)度),多數(shù)核心態(tài)組件代碼都可以被搶占 由NTOSKRNL.EXE屏蔽SMP硬件設(shè)置,絕大多數(shù)組件不可見、也無需關(guān)心,。,2.3 Windows 2000/XP的構(gòu)成,P43 圖2-5 windows2000/xp體系結(jié)構(gòu),內(nèi)核 內(nèi)核對象 硬件支持 硬件抽象層 執(zhí)行體 驅(qū)動程序 環(huán)境子系統(tǒng)與動態(tài)鏈接庫 Win32 Posix Os/2 Ntdll.dll 系統(tǒng)支持進(jìn)程,內(nèi)核,功能 線程安排和調(diào)度 陷阱處理和異常調(diào)度 中斷處理和調(diào)
31、度 多處理器同步 供執(zhí)行體使用的基本內(nèi)核對象 始終運(yùn)行在核心態(tài),代碼精簡,可移植性好。除了中斷服務(wù)例程(ISR,interrupt service routine),正在運(yùn)行的線程不能搶先內(nèi)核。,內(nèi)核對象 幫助控制、處理并支持執(zhí)行體對象的操作,以降低系統(tǒng)策略代價 控制對象,這個對象集和包括內(nèi)核進(jìn)程對象、異步過程調(diào)用(APC,asynchronous procedure call)對象、延遲過程調(diào)用(DPC,deferred procedure call)對象和幾個由I/O系統(tǒng)使用的對象,例如中斷對象。 調(diào)度程序?qū)ο蠹县?fù)責(zé)同步操作并影響線程調(diào)度。調(diào)度程序?qū)ο蟀▋?nèi)核線程、互斥體(Mutex)、
32、事件(Event)、內(nèi)核事件對、信號量(Semaphore)、定時器和可等待定時器,內(nèi)核與硬件 使得執(zhí)行體和設(shè)備驅(qū)動程序同硬件無關(guān) 實現(xiàn)手段:一組在多個體系結(jié)構(gòu)上可移植、同語義的接口 內(nèi)核也有部分代碼不具有移植性 支持虛擬8086模式的代碼,用以運(yùn)行一些古老的16位DOS程序 高速緩存管理 描述表切換,硬件抽象層(HAL),實際硬件與Windows 2000/XP抽象計算機(jī)描述的接口層和功能映射層 隱藏各種與硬件有關(guān)的細(xì)節(jié),例如I/O接口、中斷控制器以及多處理器通信機(jī)制等 實現(xiàn)多種硬件平臺上的可移植性,執(zhí)行體,提供的功能性調(diào)用 從用戶態(tài)導(dǎo)出并且可以調(diào)用的函數(shù)。這些函數(shù)的接口在NTDLL.DLL
33、中。通過Win32API或一些其他的環(huán)境子系統(tǒng)可以對它們進(jìn)行訪問。 從用戶態(tài)導(dǎo)出并且可以調(diào)用的函數(shù),但當(dāng)前通過任何文檔化的子系統(tǒng)函數(shù)都不能使用。 在Windows 2000 DDK中已經(jīng)導(dǎo)出并且文檔化的核心態(tài)調(diào)用的函數(shù)。 在核心態(tài)組件中調(diào)用但沒有文檔化的函數(shù)。例如在執(zhí)行體內(nèi)部使用的內(nèi)部支持例程。 組件內(nèi)部的函數(shù)。,包含的功能實體 進(jìn)程和線程管理器創(chuàng)建及中止進(jìn)程和線程。對進(jìn)程和線程的基本支持在Windows 2000內(nèi)核中實現(xiàn),而執(zhí)行體給這些低級對象添加附加語義和功能。 虛擬內(nèi)存管理器實現(xiàn)“虛擬內(nèi)存”。內(nèi)存管理器也為高速緩存管理器提供基本的支持。 安全引用監(jiān)視器在本地計算機(jī)上執(zhí)行安全策略。它保護(hù)
34、了操作系統(tǒng)資源,執(zhí)行運(yùn)行時對象的保護(hù)和監(jiān)視。 I/O系統(tǒng)執(zhí)行獨立于設(shè)備的輸入/輸出,并為進(jìn)一步處理調(diào)用適當(dāng)?shù)脑O(shè)備驅(qū)動程序。 高速緩存管理器通過將最近引用的磁盤數(shù)據(jù)駐留在主內(nèi)存中來提高文件I/O的性能,并且通過在把更新數(shù)據(jù)發(fā)送到磁盤之前將它們在內(nèi)存中保持一個短的時間來延緩磁盤的寫操作,這樣就可以實現(xiàn)快速訪問。,對象管理:創(chuàng)建、管理以及刪除Windows 2000/XP的執(zhí)行體對象和用于代表操作系統(tǒng)資源的抽象數(shù)據(jù)類型,例如進(jìn)程、線程和各種同步對象。 本地過程調(diào)用(LPC,Local Procedure Call)機(jī)制,在同一臺計算機(jī)上的客戶進(jìn)程和服務(wù)進(jìn)程之間傳遞信息。LPC是一個靈活的、經(jīng)過優(yōu)化的
35、“遠(yuǎn)程過程調(diào)用”(RPC,Remote Procedure Call)版本。 一組廣泛的公用運(yùn)行時函數(shù),例如字符串處理、算術(shù)運(yùn)算、數(shù)據(jù)類型轉(zhuǎn)換和完全結(jié)構(gòu)處理。 執(zhí)行體支持例程,例如系統(tǒng)內(nèi)存分配(頁交換區(qū)和非頁交換區(qū))、互鎖內(nèi)存訪問和兩種特殊類型的同步對象:資源和快速互斥體。,設(shè)備驅(qū)動程序,可加載的核心態(tài)模塊 I/O系統(tǒng)和相關(guān)硬件之間的接口 使用WDM以及加強(qiáng)的WDM方式 分類 硬件設(shè)備驅(qū)動程序操作硬件。 文件系統(tǒng)驅(qū)動程序接受面向文件的I/O請求,并把它們轉(zhuǎn)化為對特殊設(shè)備的I/O請求。 過濾器驅(qū)動程序截取I/O并在傳遞I/O到下一層之前執(zhí)行某些特定處理。,環(huán)境子系統(tǒng),將基本的執(zhí)行體系統(tǒng)服務(wù)的某些
36、子集以特定的形態(tài)展示給應(yīng)用程序,函數(shù)調(diào)用不能在不同子系統(tǒng)之間混用,因此每一個可執(zhí)行的映像都受限于唯一的子系統(tǒng) 三種環(huán)境子系統(tǒng):POSIX、OS/2和Win32(OS/2 只能用于x86系統(tǒng)) Win32子系統(tǒng)必須始終處于運(yùn)行狀態(tài),其他兩個子系統(tǒng)只是在需要時才被啟動,Win32子系統(tǒng)是Windows 2000/XP運(yùn)行的基本條件之一。,Win32子系統(tǒng) Win32環(huán)境子系統(tǒng)進(jìn)程CSRSS,包括對下列功能的支持:控制臺(文本)窗口、創(chuàng)建及刪除進(jìn)程與線程、支持16位DOS虛擬機(jī)(VDM)進(jìn)程的部分。 核心態(tài)設(shè)備驅(qū)動程序(WIN32K.SYS)。 圖形設(shè)備接口(GDI,Graphics Device
37、Interfaces) 子系統(tǒng)動態(tài)鏈接庫,它調(diào)用NTOSKRNL.EXE和WIN32.SYS將文檔化的Win32 API函數(shù)轉(zhuǎn)化為適當(dāng)?shù)姆俏臋n化的核心系統(tǒng)服務(wù)。 圖形設(shè)備驅(qū)動程序,包括依賴于硬件的圖形顯示驅(qū)動程序、打印機(jī)驅(qū)動程序和視頻小型端口驅(qū)動程序。 其他混雜的函數(shù),如幾種自然語言支持函數(shù)。,POSIX子系統(tǒng) 設(shè)計的強(qiáng)迫性目標(biāo) 實現(xiàn)了POSIX.1,功能局限,用處不大 Windows XP實際上并不包含POSIX子系統(tǒng) 今后產(chǎn)品的POSIX/UNIX子系統(tǒng)將大大加強(qiáng),P49 圖2-7 interix的體系結(jié)構(gòu),NTDLL,主要用于子系統(tǒng)動態(tài)鏈接庫的特殊系統(tǒng)支持庫 功能 提供系統(tǒng)調(diào)用入口 為子
38、系統(tǒng)、子系統(tǒng)動態(tài)鏈接庫、及其他本機(jī)映像提供內(nèi)部支持函數(shù) NTDLL也包含許多支持函數(shù),例如映像加載程序、堆管理器和Win32子系統(tǒng)進(jìn)程通信函數(shù)以及通用運(yùn)行庫。 用戶態(tài)異步過程調(diào)用(APC)調(diào)度器和異常調(diào)度器。,系統(tǒng)支持進(jìn)程,Idle進(jìn)程 系統(tǒng)進(jìn)程 會話管理器SMSS Win32子系統(tǒng)CSRSS 登錄進(jìn)程WINLOGIN 本地安全身份驗證服務(wù)器LSASS 服務(wù)控制器SERVICES及其相關(guān)的服務(wù)進(jìn)程,Windows 2000/XP的系統(tǒng)機(jī)制,陷阱調(diào)度,包括中斷、延遲過程調(diào)用(DPC,Deferred Procedure Call)、異步過程調(diào)用(APC,Asynchronous Procedur
39、e Call)、異常調(diào)度(Exception Dispatching)和系統(tǒng)服務(wù)調(diào)度(System Service Dispatching) 執(zhí)行體對象管理器(Executive Object Manager) 同步(Synchronization),包括自旋鎖(Spin lock)、內(nèi)核調(diào)度程序?qū)ο螅↘ernel Dispatcher Objects) 本地過程調(diào)用(LPC,Local Procedure Call),陷阱調(diào)度,當(dāng)異?;蛑袛喟l(fā)生時,硬件或軟件可以檢測到,處理器會從用戶態(tài)切換到核心態(tài),并將控制轉(zhuǎn)交給內(nèi)核的陷阱處理程序,該模塊檢測異常和中斷的類型,并將控制交給處理相應(yīng)情況的代碼,
40、異常和中斷 中斷是異步事件,可能隨時發(fā)生,與處理器正在執(zhí)行的內(nèi)容無關(guān)。中斷主要由I/O設(shè)備、處理器時鐘或定時器產(chǎn)生,可以被啟用或禁用 異常是同步事件,它是某一特定指令執(zhí)行的結(jié)果。在相同條件下,異??梢灾噩F(xiàn)。例如內(nèi)存訪問錯誤、調(diào)試指令以及被零除。 系統(tǒng)服務(wù)調(diào)用也視作異常。 軟件和硬件都可以產(chǎn)生異常和中斷。 陷阱幀:完整的線程描述表的子集,用于現(xiàn)場保護(hù) 陷阱處理程序處理少量事件,多數(shù)轉(zhuǎn)交給其他的內(nèi)核或執(zhí)行體模塊處理,中斷調(diào)度,中斷分類和優(yōu)先級 中斷請求級別(IRQL,Interrupt Request Level) 硬件中斷 軟件中斷 APC 異步過程調(diào)用 DPC 延遲過程調(diào)用,P53 圖2-9
41、中斷請求級別,硬件中斷處理過程 保存計算機(jī)的狀態(tài) 禁用中斷 調(diào)用中斷調(diào)度程序 提高處理器的IRQL到中斷源的級別 重新啟用中斷 在中斷分配表中查找處理特定中斷的例程 服務(wù)例程執(zhí)行 降低處理器的IRQL到該中斷發(fā)生前的級別 加載保存的機(jī)器狀態(tài) 中斷返回,軟件中斷的處理 延遲過程調(diào)用,P56 圖2-10 延遲過程調(diào)用的提交,異步過程調(diào)用apc 異步過程調(diào)用為用戶程序和系統(tǒng)代碼提供了一種在特殊用戶線程的描述表(一個特殊的進(jìn)程地址空間)中執(zhí)行代碼的方法 有用戶態(tài)APC和核心態(tài)APC,異常調(diào)度,異常直接由運(yùn)行程序的執(zhí)行所產(chǎn)生。 除了那些可由陷阱處理程序解決的簡單異常外,所有異常都是由異常調(diào)度程序接管 結(jié)
42、構(gòu)化異常處理 基于框架的異常處理程序 異常調(diào)度過程,P59 圖2-11 異常調(diào)度,系統(tǒng)服務(wù)調(diào)度,在Alpha處理器上執(zhí)行syscall指令或在Intel x86處理器上執(zhí)行int 2E指令都會引起系統(tǒng)服務(wù)調(diào)度 系統(tǒng)服務(wù)調(diào)度程序?qū)⒁来巫飨旅鎺准拢?校驗參數(shù) 調(diào)用者的參數(shù)從線程的用戶堆棧復(fù)制到它的核心堆棧中 執(zhí)行系統(tǒng)服務(wù),P60 圖2-12 系統(tǒng)服務(wù)調(diào)度,對象管理器,執(zhí)行體組件之一 用于創(chuàng)建、刪除、保護(hù)和跟蹤對象 提供使用系統(tǒng)范圍內(nèi)資源使用的公共、一致的機(jī)制 實現(xiàn)對象的集中保護(hù) 實現(xiàn)了資源的訪問控制 對象管理器有一套對象命名方案和統(tǒng)一的保留規(guī)則,能夠容易地操縱現(xiàn)有對象,執(zhí)行體對象 由執(zhí)行體的各種組件實現(xiàn) 進(jìn)程管理器、內(nèi)存管理器、I/O子系統(tǒng)等 內(nèi)核對象 由內(nèi)核實現(xiàn)的原始的對象集合 這些對象對用戶態(tài)代碼是不可見的,它們僅在執(zhí)行體內(nèi)創(chuàng)建和使用 內(nèi)核對象提供了一些基本性能,許多執(zhí)行體對象內(nèi)包含著一個或多個內(nè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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 創(chuàng)意園大廈裝修合同樣本
- 梁柱核心區(qū)施工方案
- 探索初中跨學(xué)科教學(xué)的融合策略
- 企業(yè)保安雇傭合同范例
- 二手商務(wù)車買賣合同范例
- 水下打撈團(tuán)隊施工方案
- 冠名合同范例
- 農(nóng)場經(jīng)營合作合同范例
- 鄉(xiāng)村別墅代工合同范例
- 輕質(zhì)土路堤專項施工方案
- 王崧舟:學(xué)習(xí)任務(wù)群與課堂教學(xué)變革 2022版新課程標(biāo)準(zhǔn)解讀解析資料 57
- 招投標(biāo)現(xiàn)場項目經(jīng)理答辯(完整版)資料
- 運(yùn)動競賽學(xué)課件
- 重大事故隱患整改臺賬
- 2022年上海市初中畢業(yè)數(shù)學(xué)課程終結(jié)性評價指南
- DB15T 2058-2021 分梳綿羊毛標(biāo)準(zhǔn)
- 高考作文備考-議論文對比論證 課件14張
- 新華師大版七年級下冊初中數(shù)學(xué) 7.4 實踐與探索課時練(課后作業(yè)設(shè)計)
- 山東省萊陽市望嵐口礦區(qū)頁巖礦
- 《普通生物學(xué)教案》word版
- 安全生產(chǎn)應(yīng)知應(yīng)會培訓(xùn)課件
評論
0/150
提交評論