




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、操作系統(tǒng)第七章 Windows進(jìn)程與存儲管理示例1操作系統(tǒng)第七章 Windows進(jìn)程與存儲管理示例1第七章 Windows示例Windows的管理機(jī)制Windows進(jìn)程和線程Windows處理器調(diào)度機(jī)制Windows的內(nèi)存管理虛擬地址空間頁面調(diào)度2第七章 Windows示例Windows的管理機(jī)制2 Windows的管理機(jī)制核心態(tài)(Kernel Mode)和用戶態(tài)(User Mode)用戶的應(yīng)用程序運(yùn)行在用戶態(tài)。操作系統(tǒng)的內(nèi)核及設(shè)備驅(qū)動程序運(yùn)行在內(nèi)核態(tài)。處于用戶態(tài)的進(jìn)程訪問內(nèi)核態(tài)數(shù)據(jù):通過系統(tǒng)調(diào)用,請求核心態(tài)系統(tǒng)服務(wù);處理器模式切換到核心態(tài);執(zhí)行結(jié)束后返回用戶進(jìn)程,并切換回用戶態(tài)。3 Wind
2、ows的管理機(jī)制核心態(tài)(Kernel Mode)和 Windows的管理機(jī)制核心態(tài)(Kernel Mode)和用戶態(tài)(User Mode)用戶態(tài)應(yīng)用對資源的訪問有一定的限制,保護(hù)系統(tǒng)核心資源。核心態(tài)的系統(tǒng)服務(wù)可以訪問所有系統(tǒng)內(nèi)存和CPU指令。所有核心態(tài)系統(tǒng)服務(wù)和驅(qū)動程序共享同一系統(tǒng)地址空間。用戶態(tài)進(jìn)程擁有自己獨(dú)立的虛擬地址空間。4 Windows的管理機(jī)制核心態(tài)(Kernel Mode)和 Windows的管理機(jī)制Windows操作系統(tǒng)的體系結(jié)構(gòu)體系結(jié)構(gòu)=核心系統(tǒng)服務(wù)+用戶進(jìn)程用戶進(jìn)程:操作系統(tǒng)支持進(jìn)程。如用戶登錄進(jìn)程、會話管理進(jìn)程。服務(wù)進(jìn)程?;诓僮鞯膽?yīng)用服務(wù)器,如SQL Server。應(yīng)用
3、程序。環(huán)境子系統(tǒng)服務(wù)進(jìn)程。為了支持多種操作系統(tǒng)應(yīng)用(MS DOS應(yīng)用、16位與32位應(yīng)用)的運(yùn)行,為相應(yīng)的程序提供運(yùn)行環(huán)境。 應(yīng)用程序的系統(tǒng)調(diào)用-相應(yīng)子系統(tǒng)動態(tài)鏈接庫的調(diào)用-標(biāo)準(zhǔn)的系統(tǒng)服務(wù)的調(diào)用5 Windows的管理機(jī)制Windows操作系統(tǒng)的體系結(jié)構(gòu)5 Windows的管理機(jī)制Windows操作系統(tǒng)的體系結(jié)構(gòu)體系結(jié)構(gòu)=核心系統(tǒng)服務(wù)+用戶進(jìn)程Windows的核心服務(wù)Windows執(zhí)行體,用于管理進(jìn)程、線程、內(nèi)存、設(shè)備等。Windows內(nèi)核,為執(zhí)行體提供底層服務(wù),比如管理線程調(diào)度、中斷和意外處理等。設(shè)備驅(qū)動程序,管理硬件設(shè)備和處理I/O請求。硬件抽象層,對不同的計(jì)算機(jī)硬件環(huán)境提供標(biāo)準(zhǔn)的系統(tǒng)封裝
4、。窗口和圖形系統(tǒng),為實(shí)現(xiàn)與用戶交互。6 Windows的管理機(jī)制Windows操作系統(tǒng)的體系結(jié)構(gòu)6 Windows的管理機(jī)制系統(tǒng)調(diào)用、中斷和陷阱中斷:中斷即外中斷,指來自處理機(jī)和內(nèi)存外部的中斷。陷阱:陷阱即內(nèi)中斷,主要指在處理機(jī)和內(nèi)存內(nèi)部產(chǎn)生的中斷。軟中斷:軟中斷是通信進(jìn)程之間用來模擬硬中斷的一種信號通信方式。7 Windows的管理機(jī)制系統(tǒng)調(diào)用、中斷和陷阱7 Windows的管理機(jī)制系統(tǒng)調(diào)用、中斷和陷阱中斷與陷阱的區(qū)別:1 、陷阱通常由處理機(jī)正在執(zhí)行的現(xiàn)行指令引起,而中斷則是由與現(xiàn)行指令無關(guān)的中斷源引起的。2 、陷阱處理程序提供的服務(wù)為當(dāng)前進(jìn)程所用,而中斷處理程序提供的服務(wù)則不是為了當(dāng)前進(jìn)程
5、的。3 、CPU 在執(zhí)行完一條指令之后,下一條指令開始之前響應(yīng)中斷,而在一條指令執(zhí)行中也可以響應(yīng)陷阱。4 、在有的系統(tǒng)中,陷入處理程序被規(guī)定在各自的進(jìn)程上下文中執(zhí)行,而中斷處理程序則在系統(tǒng)上下文中執(zhí)行。8 Windows的管理機(jī)制系統(tǒng)調(diào)用、中斷和陷阱8 Windows的管理機(jī)制系統(tǒng)調(diào)用、中斷和陷阱軟中斷與硬中斷的區(qū)別:接收軟中斷信號的進(jìn)程不一定正好在接收時(shí)占有處理機(jī),而相應(yīng)的處理必須等到該接收進(jìn)程得到處理機(jī)之后才能進(jìn)行。9 Windows的管理機(jī)制系統(tǒng)調(diào)用、中斷和陷阱9 Windows的管理機(jī)制系統(tǒng)調(diào)用、中斷和陷阱Windows利用系統(tǒng)服務(wù)陷阱來實(shí)現(xiàn)用戶程序?qū)ο到y(tǒng)服務(wù)調(diào)用。Windows利用中
6、斷機(jī)制來管理硬件設(shè)備。Windows內(nèi)核利用軟中斷來實(shí)現(xiàn)線程調(diào)度、超時(shí)處理等。Windows利用意外陷阱機(jī)制管理系統(tǒng)的出錯(cuò)狀態(tài)。10 Windows的管理機(jī)制系統(tǒng)調(diào)用、中斷和陷阱10 Windows的管理機(jī)制利用對象來共享系統(tǒng)資源Windows操作系統(tǒng)的系統(tǒng)服務(wù)的數(shù)據(jù)結(jié)構(gòu)系統(tǒng)服務(wù)內(nèi)部使用簡單的數(shù)據(jù)結(jié)構(gòu),提高系統(tǒng)效率。被用戶態(tài)程序訪問的系統(tǒng)數(shù)據(jù)則使用對象封裝。對象封裝的好處:防止破壞性操作。11 Windows的管理機(jī)制利用對象來共享系統(tǒng)資源11 Windows的管理機(jī)制本地過程調(diào)用為系統(tǒng)服務(wù)進(jìn)程間進(jìn)行高速消息傳遞設(shè)計(jì)的通信機(jī)制。采用服務(wù)于客戶模式進(jìn)行端口通信。12 Windows的管理機(jī)制本地
7、過程調(diào)用12 Windows進(jìn)程和線程Windows進(jìn)程和線程的定義每個(gè)進(jìn)程包含一個(gè)或多個(gè)線程。運(yùn)行在進(jìn)程中的線程可以創(chuàng)建一個(gè)新的線程或進(jìn)程。處理器調(diào)度的對象是線程。進(jìn)程為線程提供資源和上下文環(huán)境。13 Windows進(jìn)程和線程Windows進(jìn)程和線程的定義13 Windows進(jìn)程和線程Windows進(jìn)程和線程的定義Windows進(jìn)程的信息:唯一的進(jìn)程標(biāo)識。一個(gè)獨(dú)立的虛擬地址空間。映射到進(jìn)程虛擬地址空間的執(zhí)行代碼和數(shù)據(jù)。訪問各種系統(tǒng)資源的對象句柄列表。安全上下文定義來說明與進(jìn)程相關(guān)的用戶、安全信息和訪問特權(quán)設(shè)定。至少包含一個(gè)可執(zhí)行線程。14 Windows進(jìn)程和線程Windows進(jìn)程和線程的定
8、義14 Windows進(jìn)程和線程Windows進(jìn)程和線程的定義Windows線程信息唯一的線程標(biāo)識。CPU寄存器的狀態(tài)數(shù)據(jù),用以表示處理器的狀態(tài)。兩個(gè)線程棧,一個(gè)用戶態(tài)執(zhí)行使用,一個(gè)核心態(tài)執(zhí)行使用。一個(gè)供子系統(tǒng)、運(yùn)行庫和動態(tài)鏈接庫使用的線程本地存儲空間。15 Windows進(jìn)程和線程Windows進(jìn)程和線程的定義15 Windows進(jìn)程和線程進(jìn)程和線程的關(guān)聯(lián)16 Windows進(jìn)程和線程進(jìn)程和線程的關(guān)聯(lián)16 Windows進(jìn)程和線程Windows進(jìn)程的結(jié)構(gòu)Windows將表示進(jìn)程的數(shù)據(jù)結(jié)構(gòu)統(tǒng)稱為執(zhí)行進(jìn)程塊。基本信息:進(jìn)程標(biāo)識、系統(tǒng)資源配額、虛擬內(nèi)存管理信息等。核心進(jìn)程塊:包含了Windows內(nèi)
9、核調(diào)度該進(jìn)程的所屬線程所需要的基本信息。(PCB)進(jìn)程環(huán)境塊:駐留在進(jìn)程地址空間,提供運(yùn)行在用戶態(tài)的動態(tài)鏈接庫所需要的進(jìn)程信息。(PEB)17 Windows進(jìn)程和線程Windows進(jìn)程的結(jié)構(gòu)17 Windows進(jìn)程和線程Windows線程的結(jié)構(gòu)Windows將表示線程的數(shù)據(jù)結(jié)構(gòu)統(tǒng)稱為執(zhí)行線程塊?;拘畔ⅲ壕€程所屬進(jìn)程、線程的創(chuàng)建和結(jié)束時(shí)間等。核心線程塊:存儲線程調(diào)度和同步的線程信息。進(jìn)程環(huán)境塊:駐留在進(jìn)程地址空間,提供運(yùn)行在用戶態(tài)的動態(tài)鏈接庫所需要的線程上下文信息。18 Windows進(jìn)程和線程Windows線程的結(jié)構(gòu)18 Windows進(jìn)程和線程Windows進(jìn)程和線程的創(chuàng)建進(jìn)程的創(chuàng)建Cr
10、eateProcess涉及三個(gè)部分:創(chuàng)建進(jìn)程的系統(tǒng)服務(wù),Kernal32.dll。Windows子系統(tǒng),Windows是多環(huán)境子系統(tǒng)的體系結(jié)構(gòu),創(chuàng)建一個(gè)Windows執(zhí)行體其他子系統(tǒng)也可以使用。新的進(jìn)程,Windows執(zhí)行體。19 Windows進(jìn)程和線程Windows進(jìn)程和線程的創(chuàng)建19 Windows進(jìn)程和線程Windows進(jìn)程和線程的創(chuàng)建線程的創(chuàng)建CreateThread的執(zhí)行過程在進(jìn)程的地址空間中為線程創(chuàng)建用戶棧,并初始化運(yùn)行上下文環(huán)境。初始化線程的線程環(huán)境塊。創(chuàng)建執(zhí)行線程對象。通知Windows子系統(tǒng)新的線程被創(chuàng)建。新線程的句柄和標(biāo)志被返回到調(diào)用的線程。線程進(jìn)入調(diào)度隊(duì)列等待執(zhí)行。20
11、 Windows進(jìn)程和線程Windows進(jìn)程和線程的創(chuàng)建20 Windows處理器的調(diào)度機(jī)制Windows處理器調(diào)度的特點(diǎn):Windows處理器的調(diào)度的粒度是線程;調(diào)度器根據(jù)線程的優(yōu)先級采用搶占式調(diào)度策略;每個(gè)線程都分配以時(shí)間配額為單位的執(zhí)行時(shí)間;通過改變線程的狀態(tài)來進(jìn)行線程調(diào)度。21 Windows處理器的調(diào)度機(jī)制Windows處理器調(diào)度的特 Windows處理器的調(diào)度機(jī)制調(diào)度優(yōu)先級優(yōu)先級的設(shè)定主要考慮的是線程要求完成的時(shí)間緊迫性。Windows內(nèi)核有32個(gè)優(yōu)先級別表示執(zhí)行緊迫性16個(gè)實(shí)時(shí)優(yōu)先級(1631)15個(gè)可變優(yōu)先級(115)1個(gè)系統(tǒng)優(yōu)先級(0),為內(nèi)存頁清零線程保留用戶可以通過形象的
12、優(yōu)先級描述來設(shè)置優(yōu)先級實(shí)時(shí)、高、高于一般、一般、低于一般和空閑22 Windows處理器的調(diào)度機(jī)制調(diào)度優(yōu)先級22 Windows處理器的調(diào)度機(jī)制線程的狀態(tài)就緒:準(zhǔn)備就緒等待運(yùn)行。預(yù)備:一個(gè)線程已經(jīng)被選中作為下一個(gè)運(yùn)行的線程,如果條件滿足,調(diào)度器會將上下文環(huán)境切換到該線程。運(yùn)行:處于運(yùn)行狀態(tài)的線程時(shí)間配額用完,或被搶占將讓出CPU。等待:過渡:已經(jīng)準(zhǔn)備就緒,等待核心棧調(diào)入內(nèi)存。終止:已初始化:剛剛被創(chuàng)建。23 Windows處理器的調(diào)度機(jī)制線程的狀態(tài)23 Windows處理器的調(diào)度機(jī)制線程調(diào)度機(jī)制Windows線程調(diào)度機(jī)制通過調(diào)度數(shù)據(jù)庫和時(shí)間配額來實(shí)現(xiàn)。調(diào)度數(shù)據(jù)庫:調(diào)度數(shù)據(jù)庫記錄處于就緒狀態(tài)的線
13、程;Windows為每一個(gè)優(yōu)先級維護(hù)了一個(gè)線程隊(duì)列,調(diào)度器找優(yōu)先級最高的隊(duì)列的隊(duì)首的線程執(zhí)行。時(shí)間配額:當(dāng)線程進(jìn)入運(yùn)行狀態(tài),獲得一個(gè)時(shí)間配額,記錄在核心線程塊里。每過一個(gè)時(shí)鐘周期,該值減1,變?yōu)?時(shí)表示時(shí)間配額用完,重新調(diào)度。24 Windows處理器的調(diào)度機(jī)制線程調(diào)度機(jī)制24 Windows處理器的調(diào)度機(jī)制線程調(diào)度機(jī)制調(diào)度算法:Windows采用基于優(yōu)先級的搶占式調(diào)度策略。上下文切換:線程的上下文包括:運(yùn)行指令指針、用戶棧和核心棧指針以及地址空間指針。調(diào)度器將被調(diào)出的線程的上下文環(huán)境信息壓入該線程的核心棧,并把棧指針保存到現(xiàn)場的核心線程塊中。25 Windows處理器的調(diào)度機(jī)制線程調(diào)度機(jī)制2
14、5 Windows的內(nèi)存管理內(nèi)存管理器Windows執(zhí)行體的一部分,由一組運(yùn)行在核心態(tài)的系統(tǒng)服務(wù)組成。功能:將進(jìn)程的虛擬地址映射到具體的物理內(nèi)存地址。管理內(nèi)外存的數(shù)據(jù)交換。處理內(nèi)存訪問出錯(cuò)事件。工作集:一般應(yīng)用程序需要的內(nèi)存大于物理內(nèi)存,只有一部分虛擬地址空間在物理內(nèi)存中,這一部分稱為工作集。26 Windows的內(nèi)存管理內(nèi)存管理器26 Windows的內(nèi)存管理內(nèi)存管理機(jī)制頁:虛擬內(nèi)存空間被劃分的固定大小的單元。80 x86:4KB共享內(nèi)存:同一塊物理內(nèi)存在不同進(jìn)程空間中的映射。只讀的可寫入的(復(fù)制后寫入),私有頁27 Windows的內(nèi)存管理內(nèi)存管理機(jī)制27 Windows的內(nèi)存管理內(nèi)存管理
15、機(jī)制堆管理器:內(nèi)存以頁分配4K,申請的空間較小256B怎么辦?堆管理器的分配粒度:8B系統(tǒng)內(nèi)存池:兩種方式處理核心態(tài)服務(wù)的內(nèi)存分配:不分頁的內(nèi)存池:中斷處理程序,不可以被調(diào)入到磁盤上。分頁的內(nèi)存池:設(shè)備驅(qū)動程序,可以被調(diào)入到磁盤上。28 Windows的內(nèi)存管理內(nèi)存管理機(jī)制28 Windows虛擬地址空間虛擬地址空間布局低端一半為進(jìn)程的私有地址空間高端一半為系統(tǒng)地址空間29 Windows虛擬地址空間虛擬地址空間布局29 Windows虛擬地址空間虛擬地址轉(zhuǎn)換1.每個(gè)進(jìn)程對應(yīng)一個(gè)頁目錄2.一個(gè)進(jìn)程對應(yīng)多個(gè)頁表,通過頁目錄索引確定虛擬地址對應(yīng)的頁表3.通過頁表索引確定物理頁框號30 Windows虛擬地址空間虛擬地址轉(zhuǎn)換30 Windows虛擬地址空間虛擬地址轉(zhuǎn)換一個(gè)頁表入口包含物理頁框號和內(nèi)存頁狀態(tài)標(biāo)志。31 Windows虛擬地址空間虛擬地址轉(zhuǎn)換31 頁面調(diào)度缺頁處理32 頁面調(diào)度缺頁處理32 頁面調(diào)度工作集及頁面調(diào)度策略工作集是物理內(nèi)存中的虛擬頁的集合,包括進(jìn)程工作集和系統(tǒng)工作集。進(jìn)程工作集:一個(gè)進(jìn)程中所有線程引用的駐留在內(nèi)存中的頁面。系統(tǒng)工作集:系統(tǒng)空間中可被分頁的系統(tǒng)代碼和數(shù)據(jù)駐留在物理內(nèi)存中的部分。33 頁面調(diào)度工作集及頁面調(diào)度策
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國雙溫型水循機(jī)數(shù)據(jù)監(jiān)測研究報(bào)告
- 2025至2030年中國便攜式色差儀數(shù)據(jù)監(jiān)測研究報(bào)告
- 2025至2030年中國三色方格毛巾數(shù)據(jù)監(jiān)測研究報(bào)告
- 2025年中國鉛制平衡塊市場調(diào)查研究報(bào)告
- 第2節(jié) 植株的生長2024-2025學(xué)年新教材七年級下冊生物同步教學(xué)設(shè)計(jì)(人教版2024)
- 2025年中國點(diǎn)焊設(shè)備市場調(diào)查研究報(bào)告
- 2025年中國單面鎖市場調(diào)查研究報(bào)告
- 2025年中國家用DVD吸入式機(jī)芯市場調(diào)查研究報(bào)告
- 2025年中國下料鋸床市場調(diào)查研究報(bào)告
- Unit 6 第2課時(shí) Part A Let's learn&Listen and chant(教學(xué)設(shè)計(jì))三年級英語上冊同步高效課堂系列(人教PEP版·2024秋)
- 糖尿病飲食指南食譜
- 2024年6月第3套英語六級真題
- 2024年江蘇省公務(wù)員錄用考試《行測》題(A類)
- 2024年律師事務(wù)所代收款協(xié)議書模板
- 中國PHM系統(tǒng)行業(yè)政策、市場規(guī)模及投資前景研究報(bào)告(智研咨詢發(fā)布)
- 電梯維保安全培訓(xùn)
- 2024年10月時(shí)政100題(附答案)
- 江蘇省無錫市2024年中考數(shù)學(xué)試卷(含答案)
- 倉庫租賃、物資倉儲保管服務(wù)投標(biāo)方案(技術(shù)方案)
- 2024年保密知識測試試題及答案(奪冠)
- 矯形器裝配工(四級)職業(yè)技能鑒定考試題庫(含答案)
評論
0/150
提交評論