計算機組成原理第9章ppt課件_第1頁
計算機組成原理第9章ppt課件_第2頁
計算機組成原理第9章ppt課件_第3頁
計算機組成原理第9章ppt課件_第4頁
計算機組成原理第9章ppt課件_第5頁
已閱讀5頁,還剩38頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、2022-4-25第九章操作系統(tǒng)支持第九章操作系統(tǒng)支持前往計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-25第九章操作系統(tǒng)支持第九章操作系統(tǒng)支持 操作系統(tǒng)是管理計算機資源并為用戶操作系統(tǒng)是管理計算機資源并為用戶提供服務(wù)的系統(tǒng)軟件,作為硬件與應(yīng)用軟提供服務(wù)的系統(tǒng)軟件,作為硬件與應(yīng)用軟件之間的接口,操作系統(tǒng)起著承上啟下的件之間的接口,操作系統(tǒng)起著承上啟下的作用。了解操作系統(tǒng)與硬件之間的相互關(guān)作用。了解操作系統(tǒng)與硬件之間的相互關(guān)系有助于理解計算機系統(tǒng)的整體工作過程。系有助于理解計算機系統(tǒng)的整體工作過程。本章僅就操作系統(tǒng)與硬件關(guān)系最密切的處本章僅就操作系統(tǒng)與硬件關(guān)系最密切的處理機調(diào)度與存儲

2、管理問題進行討論。理機調(diào)度與存儲管理問題進行討論。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.19.1操作系統(tǒng)概述操作系統(tǒng)概述一、操作系統(tǒng)的概念一、操作系統(tǒng)的概念 計算機系統(tǒng)大體上可以分為三個部分:硬件、系統(tǒng)計算機系統(tǒng)大體上可以分為三個部分:硬件、系統(tǒng)軟件和應(yīng)用軟件。硬件是所有軟件運行的物質(zhì)基礎(chǔ)。軟件和應(yīng)用軟件。硬件是所有軟件運行的物質(zhì)基礎(chǔ)。 操作系統(tǒng)簡稱操作系統(tǒng)簡稱OSOS則是最重要的系統(tǒng)軟件,是管則是最重要的系統(tǒng)軟件,是管理計算機系統(tǒng)資源、控制程序執(zhí)行的系統(tǒng)軟件。操理計算機系統(tǒng)資源、控制程序執(zhí)行的系統(tǒng)軟件。操作系統(tǒng)作為計算機用戶與計算機硬件之間的接口程作系統(tǒng)作為計算機

3、用戶與計算機硬件之間的接口程序,向用戶和應(yīng)用軟件提供各種服務(wù),合理組織計序,向用戶和應(yīng)用軟件提供各種服務(wù),合理組織計算機工作流程,并為用戶使用計算機提供良好運行算機工作流程,并為用戶使用計算機提供良好運行環(huán)境。環(huán)境。 操作系統(tǒng)已經(jīng)成為現(xiàn)代計算機系統(tǒng)不可分割的重要操作系統(tǒng)已經(jīng)成為現(xiàn)代計算機系統(tǒng)不可分割的重要組成部分。操作系統(tǒng)依托計算機硬件并在其基礎(chǔ)上組成部分。操作系統(tǒng)依托計算機硬件并在其基礎(chǔ)上提供許多新的服務(wù)和功能,從而使用戶能夠方便、提供許多新的服務(wù)和功能,從而使用戶能夠方便、可靠、平安、高效地操縱計算機硬件并運行應(yīng)用程可靠、平安、高效地操縱計算機硬件并運行應(yīng)用程序。序。計算機學(xué)院體系結(jié)構(gòu)中心

4、計算機學(xué)院體系結(jié)構(gòu)中心2022-4-25二、操作系統(tǒng)的主要目標歸結(jié)為以下幾點:二、操作系統(tǒng)的主要目標歸結(jié)為以下幾點:管理系統(tǒng)資源管理系統(tǒng)資源: :操作系統(tǒng)能有效管理系統(tǒng)中的所有硬操作系統(tǒng)能有效管理系統(tǒng)中的所有硬件資源和軟件資源,使資源得到充分利用。件資源和軟件資源,使資源得到充分利用。提高系統(tǒng)效率提高系統(tǒng)效率: :操作系統(tǒng)能合理地組織計算機的工作操作系統(tǒng)能合理地組織計算機的工作流程,改進系統(tǒng)性能,提高系統(tǒng)效率。流程,改進系統(tǒng)性能,提高系統(tǒng)效率。方便用戶使用方便用戶使用: :通過向用戶提供友好的用戶界面,操通過向用戶提供友好的用戶界面,操作系統(tǒng)能讓用戶更方便、更輕松地使用計算機系作系統(tǒng)能讓用戶更

5、方便、更輕松地使用計算機系統(tǒng)。統(tǒng)。增強機器功能增強機器功能: :操作系統(tǒng)能通過擴充改造硬件部件并操作系統(tǒng)能通過擴充改造硬件部件并提供新的服務(wù)來增強機器功能。提供新的服務(wù)來增強機器功能。構(gòu)筑開放環(huán)境構(gòu)筑開放環(huán)境: :操作系統(tǒng)通過遵循相關(guān)技術(shù)標準的方操作系統(tǒng)通過遵循相關(guān)技術(shù)標準的方式支持體系結(jié)構(gòu)的可伸縮性和可擴展性,支持應(yīng)式支持體系結(jié)構(gòu)的可伸縮性和可擴展性,支持應(yīng)用程序在不同平臺上的移植和互操作。用程序在不同平臺上的移植和互操作。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.1.29.1.2操作系統(tǒng)的功能操作系統(tǒng)的功能操作系統(tǒng)的核心任務(wù):管理計算機系統(tǒng)中的資源。操作系統(tǒng)的核心任

6、務(wù):管理計算機系統(tǒng)中的資源。從資源管理的角度來看,作為資源管理器的操作系從資源管理的角度來看,作為資源管理器的操作系統(tǒng)對計算機硬件資源的管理主要體現(xiàn)在以下三個統(tǒng)對計算機硬件資源的管理主要體現(xiàn)在以下三個方面:方面:處理器管理處理器管理存儲器管理存儲器管理設(shè)備管理設(shè)備管理計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.1.29.1.2操作系統(tǒng)的功能操作系統(tǒng)的功能 處理機管理:處理機是最重要的硬件資源,因處理機管理:處理機是最重要的硬件資源,因為所有軟件的執(zhí)行和系統(tǒng)功能的實現(xiàn)都依賴為所有軟件的執(zhí)行和系統(tǒng)功能的實現(xiàn)都依賴于處理機。因此,能否充分發(fā)揮處理機的效能,于處理機。因此,能否充

7、分發(fā)揮處理機的效能,是系統(tǒng)功能和性能的關(guān)鍵。是系統(tǒng)功能和性能的關(guān)鍵。 早期的計算機系統(tǒng)是單用戶、單任務(wù)系統(tǒng),處早期的計算機系統(tǒng)是單用戶、單任務(wù)系統(tǒng),處理機僅為一個用戶的一個任務(wù)服務(wù)見圖所示。理機僅為一個用戶的一個任務(wù)服務(wù)見圖所示。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.1.29.1.2操作系統(tǒng)的功能操作系統(tǒng)的功能 現(xiàn)代的計算機系統(tǒng)廣泛采用多任務(wù)機制支持多現(xiàn)代的計算機系統(tǒng)廣泛采用多任務(wù)機制支持多個程序或多個用戶并行使用計算機。在引入多個程序或多個用戶并行使用計算機。在引入多任務(wù)機制后,當一個作業(yè)需等待任務(wù)機制后,當一個作業(yè)需等待I/O操作等外操作等外部條件滿足時,處理機

8、轉(zhuǎn)去執(zhí)行另一個作業(yè),部條件滿足時,處理機轉(zhuǎn)去執(zhí)行另一個作業(yè),從而實現(xiàn)多任務(wù)的并行執(zhí)行。操作系統(tǒng)負責組從而實現(xiàn)多任務(wù)的并行執(zhí)行。操作系統(tǒng)負責組織多個任務(wù)的并行執(zhí)行,并負責解決處理機的織多個任務(wù)的并行執(zhí)行,并負責解決處理機的調(diào)度、分配和回收等問題。調(diào)度、分配和回收等問題。多務(wù)系統(tǒng)運行兩道程序時處理機的使用效率見圖多務(wù)系統(tǒng)運行兩道程序時處理機的使用效率見圖計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.1.29.1.2操作系統(tǒng)的功能操作系統(tǒng)的功能存儲管理:存儲管理:1 1存儲分配存儲分配: :即根據(jù)程序的需要為其分配存儲器資源,即根據(jù)程序的需要為其分配存儲器資源,在方便存儲器使用的

9、同時又要保證存儲器的高利用率。在方便存儲器使用的同時又要保證存儲器的高利用率。2 2存儲共享存儲共享: :允許主存中的多個任務(wù)或多個用戶程序共允許主存中的多個任務(wù)或多個用戶程序共享存儲器資源,這一方面可以提高存儲器的利用率,享存儲器資源,這一方面可以提高存儲器的利用率,另一方面又便于多任務(wù)間的數(shù)據(jù)交換。另一方面又便于多任務(wù)間的數(shù)據(jù)交換。3 3存儲保護存儲保護: :確保用戶程序不會有意或無意地訪問或破確保用戶程序不會有意或無意地訪問或破壞操作系統(tǒng)的關(guān)鍵代碼和數(shù)據(jù)。各個用戶程序之間也壞操作系統(tǒng)的關(guān)鍵代碼和數(shù)據(jù)。各個用戶程序之間也需要相互隔離、互不干擾。需要相互隔離、互不干擾。4 4存儲擴充存儲擴充

10、: :基于存儲器的層次結(jié)構(gòu),存儲管理需要為基于存儲器的層次結(jié)構(gòu),存儲管理需要為用戶提供與實際物理內(nèi)存空間不直接相關(guān)的邏輯編程用戶提供與實際物理內(nèi)存空間不直接相關(guān)的邏輯編程空間,并在主存和輔助存儲器的支持下實現(xiàn)邏輯地址空間,并在主存和輔助存儲器的支持下實現(xiàn)邏輯地址空間與物理地址空間之間的映射與變換,方便用戶的空間與物理地址空間之間的映射與變換,方便用戶的編程和使用。編程和使用。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.1.29.1.2操作系統(tǒng)的功能操作系統(tǒng)的功能設(shè)備管理:設(shè)備管理的主要任務(wù)是進行各類外設(shè)備管理:設(shè)備管理的主要任務(wù)是進行各類外圍設(shè)備的調(diào)度與管理,協(xié)調(diào)各個用戶

11、提出的圍設(shè)備的調(diào)度與管理,協(xié)調(diào)各個用戶提出的I/OI/O請求,提高各請求,提高各I/OI/O設(shè)備操作與處理機運行設(shè)備操作與處理機運行的并行性,提高處理機和的并行性,提高處理機和I/OI/O設(shè)備的利用率。設(shè)備的利用率。設(shè)備管理還需提供每種設(shè)備的設(shè)備驅(qū)動程序,設(shè)備管理還需提供每種設(shè)備的設(shè)備驅(qū)動程序,向用戶屏蔽硬件使用細節(jié)。向用戶屏蔽硬件使用細節(jié)。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.1.39.1.3操作系統(tǒng)的特性及其需要解決的問題操作系統(tǒng)的特性及其需要解決的問題操作系統(tǒng)作為計算機系統(tǒng)的管理者,必須操作系統(tǒng)作為計算機系統(tǒng)的管理者,必須解決一系列復(fù)雜的管理問題。而計算機解決

12、一系列復(fù)雜的管理問題。而計算機系統(tǒng)運行的特性決定著操作系統(tǒng)的策略。系統(tǒng)運行的特性決定著操作系統(tǒng)的策略。并發(fā)性并發(fā)性共享性共享性隨機性等特征。隨機性等特征。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.1.49.1.4操作系統(tǒng)的硬件環(huán)境操作系統(tǒng)的硬件環(huán)境處理機狀態(tài)控制:為了支持操作系統(tǒng)的特權(quán),中央處理機需要知道當前執(zhí)行的程序是操作系統(tǒng)代碼還是一般用戶程序代碼。為此,處理機中設(shè)置了狀態(tài)標志。大多數(shù)系統(tǒng)把處理機的狀態(tài)劃分為管理狀態(tài)又稱超級用戶狀態(tài)、管態(tài)或特權(quán)狀態(tài)和用戶狀態(tài)又稱目標狀態(tài)、常態(tài)、目態(tài)或解題狀態(tài))。特權(quán)指令:為了防止用戶程序執(zhí)行有關(guān)資源管理的機器指令從而破壞系統(tǒng)正常工作

13、狀態(tài),在多任務(wù)環(huán)境中,通常把指令系統(tǒng)中的指令分為兩類:特權(quán)指令(Privileged Instructions)和非特權(quán)指令。特權(quán)指令是只能由操作系統(tǒng)核心程序執(zhí)行的機器指令,用于系統(tǒng)資源管理與程序執(zhí)行控制等操作,如啟動輸入輸出設(shè)備、設(shè)置系統(tǒng)時鐘、控制中斷屏蔽位、設(shè)置存儲管理狀態(tài)、加載程序狀態(tài)字等。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.1.49.1.4操作系統(tǒng)的硬件環(huán)境操作系統(tǒng)的硬件環(huán)境寄存器訪問權(quán)限:計算機系統(tǒng)的中央處理機內(nèi)設(shè)置了很多寄存寄存器訪問權(quán)限:計算機系統(tǒng)的中央處理機內(nèi)設(shè)置了很多寄存器,包括用于暫存數(shù)據(jù)的通用數(shù)據(jù)寄存器和用于存放處理器器,包括用于暫存數(shù)據(jù)的通

14、用數(shù)據(jù)寄存器和用于存放處理器的控制和狀態(tài)信息的控制寄存器。后者主要有:程序計數(shù)器的控制和狀態(tài)信息的控制寄存器。后者主要有:程序計數(shù)器PCPC、程序狀態(tài)字寄存器、程序狀態(tài)字寄存器PWSRPWSR、指令寄存器、指令寄存器IRIR等,也包括和系等,也包括和系統(tǒng)存儲管理、中斷管理等相關(guān)的寄存器。統(tǒng)存儲管理、中斷管理等相關(guān)的寄存器。程序狀態(tài)字和程序執(zhí)行現(xiàn)場:為了記錄計算機系統(tǒng)當前的工作程序狀態(tài)字和程序執(zhí)行現(xiàn)場:為了記錄計算機系統(tǒng)當前的工作狀態(tài),需要專門設(shè)置程序狀態(tài)字狀態(tài),需要專門設(shè)置程序狀態(tài)字PSWPSW用于控制指令的執(zhí)行用于控制指令的執(zhí)行并存儲與程序有關(guān)的系統(tǒng)狀態(tài)。并存儲與程序有關(guān)的系統(tǒng)狀態(tài)。 程序狀

15、態(tài)字寄存器保存的信息通常包括以下幾類:程序狀態(tài)字寄存器保存的信息通常包括以下幾類:(1 1當前正在執(zhí)行的指令地址這由程序計數(shù)器給出。當前正在執(zhí)行的指令地址這由程序計數(shù)器給出。(2 2狀態(tài)條件碼表示指令執(zhí)行結(jié)果的狀態(tài)特征,例如算術(shù)運算狀態(tài)條件碼表示指令執(zhí)行結(jié)果的狀態(tài)特征,例如算術(shù)運算指令運行結(jié)果是否為零、是否有溢出、是否是負數(shù)等。指令運行結(jié)果是否為零、是否有溢出、是否是負數(shù)等。(3 3處理機狀態(tài)指明當前的處理機狀態(tài),如目態(tài)或管態(tài),是否處理機狀態(tài)指明當前的處理機狀態(tài),如目態(tài)或管態(tài),是否允許某類中斷,是否處于中斷嵌套狀態(tài),當前的存儲保護狀允許某類中斷,是否處于中斷嵌套狀態(tài),當前的存儲保護狀態(tài)等。態(tài)等

16、。(4 4控制標志能夠影響某些指令執(zhí)行方式的一些標志位??刂茦酥灸軌蛴绊懩承┲噶顖?zhí)行方式的一些標志位。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.1.49.1.4操作系統(tǒng)的硬件環(huán)境操作系統(tǒng)的硬件環(huán)境 中斷機制:中斷機制:現(xiàn)代的計算機系統(tǒng)都支持中斷異常)。通過檢測中斷源并現(xiàn)代的計算機系統(tǒng)都支持中斷異常)。通過檢測中斷源并進行中斷響應(yīng),中斷機制提供了一種程序隨機切換的方式。進行中斷響應(yīng),中斷機制提供了一種程序隨機切換的方式。通過響應(yīng)硬件定時器中斷,操作系統(tǒng)可以執(zhí)行周期性的例行通過響應(yīng)硬件定時器中斷,操作系統(tǒng)可以執(zhí)行周期性的例行管理任務(wù),例如進程調(diào)度。這可以確保某個進程不會獨占

17、管理任務(wù),例如進程調(diào)度。這可以確保某個進程不會獨占系統(tǒng)資源。以中斷方式實現(xiàn)處理機與外界進行信息交換的系統(tǒng)資源。以中斷方式實現(xiàn)處理機與外界進行信息交換的握手聯(lián)絡(luò),能保證握手聯(lián)絡(luò),能保證CPU與外設(shè)的并行工作。與外設(shè)的并行工作。計算機工作時可能發(fā)生軟件或硬件故障,故障發(fā)生的時間相計算機工作時可能發(fā)生軟件或硬件故障,故障發(fā)生的時間相對于對于CPU的指令執(zhí)行是完全隨機的。常見的硬件故障有掉的指令執(zhí)行是完全隨機的。常見的硬件故障有掉電、校驗錯、運算出錯等;常見的軟件故障有運算溢出、電、校驗錯、運算出錯等;常見的軟件故障有運算溢出、地址越界、使用非法指令等。一旦發(fā)生故障,應(yīng)由地址越界、使用非法指令等。一旦

18、發(fā)生故障,應(yīng)由CPU執(zhí)執(zhí)行中斷處理程序進行處理。行中斷處理程序進行處理。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.1.49.1.4操作系統(tǒng)的硬件環(huán)境操作系統(tǒng)的硬件環(huán)境存儲管理:系統(tǒng)硬件通過存儲管理部件支持操作存儲管理:系統(tǒng)硬件通過存儲管理部件支持操作系統(tǒng)實現(xiàn)多級存儲體系和存儲保護功能。在后系統(tǒng)實現(xiàn)多級存儲體系和存儲保護功能。在后面將詳盡討論與存儲管理相關(guān)的問題。面將詳盡討論與存儲管理相關(guān)的問題。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.2 9.2 調(diào)度調(diào)度 9.2.1進程 1、進程的概念: 操作系統(tǒng)除了負責管理用戶程序的執(zhí)行外,也需要處理各種系統(tǒng)

19、任務(wù)。在操作系統(tǒng)中,通常使用進程(process)這一概念描述程序的動態(tài)執(zhí)行過程。程序是靜態(tài)實體;進程是動態(tài)實體,是執(zhí)行中的程序。進程不僅僅包含程序代碼,也包含了當前的狀態(tài)這由程序計數(shù)器和處理機中的相關(guān)寄存器表示和資源。因此,如果兩個用戶用同樣一段代碼分別執(zhí)行相同功能的程序,那么其中的每一個都是一個獨立的進程。雖然其代碼是相同的,但是數(shù)據(jù)卻未必相同。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.2.19.2.1進程的概念進程的概念2、進程的狀態(tài): 進程在不同階段會處于不同狀態(tài)。進程的狀態(tài)會隨著進程當前進行的活動而改變。 創(chuàng)建進程:正在被創(chuàng)建,并未準備好運行。 就緒進程:已經(jīng)

20、準備好運行,并正等待分配處理器時間。 運行進程:正占用處理機執(zhí)行。 阻塞進程:由于等待I/O操作完成或某些事件出現(xiàn)而被系統(tǒng)掛起。 終止進程:完成操作結(jié)束運行。 在不同的系統(tǒng)中,進程的狀態(tài)種類和名稱不盡相同。系統(tǒng)中可能有多個進程處于創(chuàng)建、就緒、阻塞和終止等狀態(tài),但是處理機在任意時刻只能運行一個進程。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-253.進程控制塊:為了管理和控制進程,操作系統(tǒng)必須保存與每個進程有關(guān)的狀態(tài)等信息。為此,操作系統(tǒng)為每個進程設(shè)置一個進程控制塊PCBProcess Control Block)。PCB中記錄了操作系統(tǒng)所需要的用于描述進程情況及控制進程運行所需的

21、全部信息。PCB通常包含以下信息:(1)進程標識符用于唯一標識當前進程;(2)狀態(tài)記錄進程當前狀態(tài);(3)程序計數(shù)器將要執(zhí)行的下一條指令的地址;(4)進程上下文進程執(zhí)行時CPU內(nèi)部寄存器的取值,是進程執(zhí)行的現(xiàn)場數(shù)據(jù);(5)存儲管理信息指明進程占用的內(nèi)存空間的范圍;(6)I/O狀態(tài)信息例如打開的文件、未完成的I/O請求、占用的I/O設(shè)備等。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-254.4.進程調(diào)度的模式進程調(diào)度的模式進程調(diào)度是操作系統(tǒng)必備的功能。通常將進程調(diào)度分為搶占式和非搶占式兩種模式。 1)非搶占模式:非搶占模式是指一旦將處理機時間分配給某個進程后,便讓該進程一直運行,直

22、到該進程因運行完畢或因發(fā)生某事件而被阻塞,才把處理機時間重新分配給其它進程。否則,不允許其他進程搶占已經(jīng)分配出去的處理機時間?!跋葋硐确?wù)策略就是一種非搶占調(diào)度模式,先進入就緒隊列的進程首先運行,直到運行結(jié)束或被阻塞為止。這種調(diào)度模式的優(yōu)點是實現(xiàn)簡單、系統(tǒng)開銷小,但無法滿足實時系統(tǒng)對緊急事件處理的時間要求。 2)搶占模式:在搶占調(diào)度模式中,允許進程調(diào)度程序根據(jù)某種策略,暫停某個正在運行的進程,將處理機時間重新分配給另一個進程。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-25常用的搶占策略有:時間片策略處理機時間被分割為等長的時間單位,稱為時間片。每個進程被分配一個時間片運行,當該

23、時間片超時時,由操作系統(tǒng)重新進行進程調(diào)度,將處理機時間交給另一個就緒進程。這種策略適用于分時系統(tǒng)和要求較高的批處理系統(tǒng)。優(yōu)先權(quán)策略操作系統(tǒng)為某些重要或緊急的進程指定較高的優(yōu)先級。當這種進程就緒時,如果其優(yōu)先級比正在運行的進程的優(yōu)先級高,便暫停正在運行的進程,將處理機時間分配給優(yōu)先級高的進程。短進程優(yōu)先策略當就緒隊列中的某個進程比正在運行的進程的運行時間明顯地短時,操作系統(tǒng)將剝奪長進程的執(zhí)行,將處理機分配給短進程,使之優(yōu)先運行。該調(diào)度策略能有效地降低進程的平均等待時間,提高系統(tǒng)的吞吐量。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.2.2 9.2.2 調(diào)度的層次調(diào)度的層次調(diào)度

24、的層次:調(diào)度的層次: 高級調(diào)度:作業(yè)調(diào)度高級調(diào)度:作業(yè)調(diào)度 中級調(diào)度:內(nèi)存調(diào)度中級調(diào)度:內(nèi)存調(diào)度 低級調(diào)度:進程調(diào)度低級調(diào)度:進程調(diào)度 1. 1.高級調(diào)度高級調(diào)度: : 是指按一定原則把輔存上處于后備隊列中的作業(yè)是指按一定原則把輔存上處于后備隊列中的作業(yè)調(diào)入內(nèi)存,并為它們創(chuàng)建進程、分配必要的資源,調(diào)入內(nèi)存,并為它們創(chuàng)建進程、分配必要的資源,再將新創(chuàng)建的進程排在就緒隊列上準備執(zhí)行。高再將新創(chuàng)建的進程排在就緒隊列上準備執(zhí)行。高級調(diào)度決定哪些作業(yè)可以進入系統(tǒng)競爭系統(tǒng)資源。級調(diào)度決定哪些作業(yè)可以進入系統(tǒng)競爭系統(tǒng)資源。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-25操作系統(tǒng)在進行高級調(diào)度時

25、必須考慮兩個因素:(1)接納多少個作業(yè)系統(tǒng)允許有多少個作業(yè)同時在內(nèi)存中運行用多道程序度表征。內(nèi)存中同時運行的作業(yè)太多可能會影響到系統(tǒng)的服務(wù)質(zhì)量,同時運行的作業(yè)太少又會導(dǎo)致系統(tǒng)資源利用率和系統(tǒng)吞吐量太低。因此,多道程序度的確定應(yīng)根據(jù)系統(tǒng)的規(guī)模和運行速度等做適當折衷。(2)接納哪些作業(yè)操作系統(tǒng)根據(jù)所采用的調(diào)度算法決定哪些作業(yè)從輔存調(diào)入內(nèi)存。例如,先來先服務(wù)調(diào)度算法將最早進入輔存的作業(yè)最先調(diào)入內(nèi)存;短作業(yè)優(yōu)先調(diào)度算法將輔存上最短的作業(yè)最先調(diào)入內(nèi)存;而基于作業(yè)優(yōu)先權(quán)的調(diào)度算法則需根據(jù)作業(yè)的重要程度與輕重緩急選擇調(diào)入內(nèi)存的作業(yè)。高級調(diào)度在較大的粒度上決定對處理機時間的使用權(quán)分配,故又稱作業(yè)調(diào)度、收容調(diào)度

26、或長程調(diào)度。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-252.低級調(diào)度即進程調(diào)度, 決定當存在多個就緒進程時,哪一個就緒進程將分配到中央處理機的運行時間,并且把中央處理機實際分配給這個進程。 低級調(diào)度在較小的粒度上決定對處理機時間的使用權(quán)分配,又稱為短程調(diào)度。低級調(diào)度執(zhí)行非常頻繁,進程調(diào)度程序每秒鐘可執(zhí)行多次進程調(diào)度,故進程調(diào)度程序必須常駐內(nèi)存。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-25 3.中級調(diào)度的目的是為了提高內(nèi)存的利用率和系統(tǒng)吞吐量。 為了讓那些因為某些原因暫時不能運行的進程不再占用寶貴的內(nèi)存資源,操作系統(tǒng)通過中級調(diào)度將這些進程調(diào)出至輔存等待。當這些

27、處于掛起狀態(tài)的進程再次準備好運行,且內(nèi)存又出現(xiàn)空閑空間時,由中級調(diào)度決定將輔存上的哪些處于就緒駐外存狀態(tài)的進程重新調(diào)入內(nèi)存。被調(diào)入的進程將轉(zhuǎn)換為就緒狀態(tài)掛在就緒隊列上,等待進程調(diào)度。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.2.3 9.2.3 處理機調(diào)度的實現(xiàn)處理機調(diào)度的實現(xiàn): : 為了調(diào)度的方便,操作系統(tǒng)會建立并維護若干個進為了調(diào)度的方便,操作系統(tǒng)會建立并維護若干個進程隊列。每個隊列均用于維護一個等待某些資源的程隊列。每個隊列均用于維護一個等待某些資源的進程的列表。進程的列表。 在批處理系統(tǒng)中,作業(yè)進入系統(tǒng)后,先駐留在輔存在批處理系統(tǒng)中,作業(yè)進入系統(tǒng)后,先駐留在輔存的

28、后備隊列中,作業(yè)調(diào)度從輔存的后備隊列中選擇的后備隊列中,作業(yè)調(diào)度從輔存的后備隊列中選擇作業(yè)調(diào)入內(nèi)存,并為之創(chuàng)建進程,然后送入內(nèi)存就作業(yè)調(diào)入內(nèi)存,并為之創(chuàng)建進程,然后送入內(nèi)存就緒隊列,并等待進程調(diào)度。交互型作業(yè)則直接進入緒隊列,并等待進程調(diào)度。交互型作業(yè)則直接進入內(nèi)存就緒隊列。內(nèi)存就緒隊列。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-25三級處理機調(diào)度隊列模型三級處理機調(diào)度隊列模型計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.3 9.3 存儲管理存儲管理 存儲管理主要解決存儲器的分配與回收,存儲器地址變換,存儲器擴充,存儲器共享與保護等問題。計算機學(xué)院體系結(jié)構(gòu)中

29、心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.3.1 分區(qū)式存儲管理分區(qū)式存儲管理 早期的單用戶、單任務(wù)的操作系統(tǒng)將內(nèi)存空間簡單地分為早期的單用戶、單任務(wù)的操作系統(tǒng)將內(nèi)存空間簡單地分為 兩個區(qū)域:系統(tǒng)區(qū)和用戶區(qū)。操作系統(tǒng)使用系統(tǒng)區(qū);應(yīng)用兩個區(qū)域:系統(tǒng)區(qū)和用戶區(qū)。操作系統(tǒng)使用系統(tǒng)區(qū);應(yīng)用程序則裝入到用戶區(qū),并使用用戶區(qū)全部空間。這種方式程序則裝入到用戶區(qū),并使用用戶區(qū)全部空間。這種方式管理簡單,但浪費內(nèi)存空間。管理簡單,但浪費內(nèi)存空間。 為了支持多個程序并發(fā)執(zhí)行,現(xiàn)代操作系統(tǒng)引入了分區(qū)式為了支持多個程序并發(fā)執(zhí)行,現(xiàn)代操作系統(tǒng)引入了分區(qū)式存儲管理。內(nèi)存被分為若干個區(qū)域,操作系統(tǒng)占用其中一存儲管理。

30、內(nèi)存被分為若干個區(qū)域,操作系統(tǒng)占用其中一個分區(qū),其余的分區(qū)則提供給應(yīng)用程序使用,每個應(yīng)用程個分區(qū),其余的分區(qū)則提供給應(yīng)用程序使用,每個應(yīng)用程序占用其中一個或幾個分區(qū)。序占用其中一個或幾個分區(qū)。 根據(jù)分區(qū)的大小是否固定,可以將分區(qū)式存儲管理機制分根據(jù)分區(qū)的大小是否固定,可以將分區(qū)式存儲管理機制分為固定分區(qū)和動態(tài)分區(qū)兩種類型。動態(tài)分區(qū)在進程申請內(nèi)為固定分區(qū)和動態(tài)分區(qū)兩種類型。動態(tài)分區(qū)在進程申請內(nèi)存空間時按其要求的容量分配內(nèi)存,或根據(jù)進程的要求在存空間時按其要求的容量分配內(nèi)存,或根據(jù)進程的要求在其執(zhí)行過程中動態(tài)改變分區(qū)大小。其執(zhí)行過程中動態(tài)改變分區(qū)大小。 分區(qū)存儲管理的優(yōu)點是易于實現(xiàn),但缺點是容易造

31、成空間分區(qū)存儲管理的優(yōu)點是易于實現(xiàn),但缺點是容易造成空間浪費,產(chǎn)生碎片。浪費,產(chǎn)生碎片。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.3.2 交換技術(shù)和分頁技術(shù)交換技術(shù)和分頁技術(shù) 交換過程由換入和換出兩個過程組成:換入過程將外存交換區(qū)的數(shù)據(jù)和程序代碼換至內(nèi)存,而換出過程將內(nèi)存中的數(shù)據(jù)換到外存交換區(qū)中。分頁技術(shù)引申出一種非常重要的存儲管理策略虛擬存儲器(簡稱虛存)。在存儲管理部件(MMU)的支持下,虛擬存儲器技術(shù)可以徹底解決存儲器的調(diào)度與管理問題。 計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.49.4虛擬存儲器虛擬存儲器9.4.1 9.4.1 虛擬存儲器

32、的基本概念虛擬存儲器的基本概念1 1、實地址與虛地址、實地址與虛地址: :用戶編制程序時使用的地址用戶編制程序時使用的地址稱為虛地址或邏輯地址,其對應(yīng)的存儲空間稱稱為虛地址或邏輯地址,其對應(yīng)的存儲空間稱為虛存空間或邏輯地址空間;而計算機物理內(nèi)為虛存空間或邏輯地址空間;而計算機物理內(nèi)存的訪問地址則稱為實地地或物理地址,其對存的訪問地址則稱為實地地或物理地址,其對應(yīng)的存儲空間稱為物理存儲空間或主存空間。應(yīng)的存儲空間稱為物理存儲空間或主存空間。程序進行虛地址到實地址轉(zhuǎn)換的過程稱為程序程序進行虛地址到實地址轉(zhuǎn)換的過程稱為程序的再定位。的再定位。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-

33、252 2、虛存的訪問原理、虛存的訪問原理 虛存空間的用戶程序按照虛地址編程并存放在輔虛存空間的用戶程序按照虛地址編程并存放在輔存中。程序運行時,由地址變換機構(gòu)依據(jù)當時分配給存中。程序運行時,由地址變換機構(gòu)依據(jù)當時分配給該程序的實地址空間把程序的一部分調(diào)入實存。每次該程序的實地址空間把程序的一部分調(diào)入實存。每次訪存時,首先判斷該虛地址所對應(yīng)的部分是否在實存訪存時,首先判斷該虛地址所對應(yīng)的部分是否在實存中:如果是,則進行地址轉(zhuǎn)換并用實地址訪問主存;中:如果是,則進行地址轉(zhuǎn)換并用實地址訪問主存;否則,按照某種算法將輔存中的部分程序調(diào)度進內(nèi)存,否則,按照某種算法將輔存中的部分程序調(diào)度進內(nèi)存,再按同樣

34、的方法訪問主存。由此可見,每個程序的虛再按同樣的方法訪問主存。由此可見,每個程序的虛地址空間可以遠大于實地址空間,也可以遠小于實地地址空間可以遠大于實地址空間,也可以遠小于實地址空間。前一種情況以提高存儲容量為目的,后一種址空間。前一種情況以提高存儲容量為目的,后一種情況則以地址變換為目的。后者通常出現(xiàn)在多用戶或情況則以地址變換為目的。后者通常出現(xiàn)在多用戶或多任務(wù)系統(tǒng)中:實存空間較大,而單個任務(wù)并不需要多任務(wù)系統(tǒng)中:實存空間較大,而單個任務(wù)并不需要很大的地址空間,較小的虛存空間則可以縮短指令中很大的地址空間,較小的虛存空間則可以縮短指令中地址字段的長度。地址字段的長度。計算機學(xué)院體系結(jié)構(gòu)中心計

35、算機學(xué)院體系結(jié)構(gòu)中心2022-4-253、cache與虛存的異同 從虛存的概念可以看出,主存輔存的訪問機制與cache主存的訪問機制是類似的。這是由cache存儲器、主存和輔存構(gòu)成的三級存儲體系中的兩個層次。 cache和主存之間以及主存和輔存之間分別有輔助硬件和輔助軟硬件負責地址變換與管理,以便各級存儲器能夠組成有機的三級存儲體系。cache和主存構(gòu)成了系統(tǒng)的內(nèi)存,而主存和輔存依靠輔助軟硬件的支持構(gòu)成了虛擬存儲器。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-254、虛存機制要解決的關(guān)鍵問題(1)調(diào)度問題決定哪些程序和數(shù)據(jù)應(yīng)被調(diào)入主存。(2)地址映射問題在訪問主存時把虛地址變?yōu)橹?/p>

36、存物理地址這一過程稱為內(nèi)地址變換);在訪問輔存時把虛地址變成輔存的物理地址這一過程稱為外地址變換),以便換頁。此外還要解決主存分配、存儲保護與程序再定位等問題。(3)替換問題決定哪些程序和數(shù)據(jù)應(yīng)被調(diào)出主存。(4)更新問題確保主存與輔存的一致性。 在操作系統(tǒng)的控制下,硬件和系統(tǒng)軟件為用戶解決了上述問題,從而使應(yīng)用程序的編程大大簡化。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-259.4.29.4.2頁式虛存存儲器頁式虛存存儲器1 1、頁式虛存地址映射、頁式虛存地址映射 頁式虛擬存儲系統(tǒng)中,虛地址空間被分成等頁式虛擬存儲系統(tǒng)中,虛地址空間被分成等長大小的頁,稱為邏輯頁;主存空間也被分

37、成同長大小的頁,稱為邏輯頁;主存空間也被分成同樣大小的頁,稱為物理頁。相應(yīng)地,虛地址分為樣大小的頁,稱為物理頁。相應(yīng)地,虛地址分為兩個字段:高字段為邏輯頁號,低字段為頁內(nèi)地兩個字段:高字段為邏輯頁號,低字段為頁內(nèi)地址偏移量);實存地址也分兩個字段:高字段址偏移量);實存地址也分兩個字段:高字段為物理頁號,低字段為頁內(nèi)地址。通過頁表可以為物理頁號,低字段為頁內(nèi)地址。通過頁表可以把虛地址邏輯地址轉(zhuǎn)換成物理地址。把虛地址邏輯地址轉(zhuǎn)換成物理地址。 頁式虛擬存儲器的地址映射過程見下圖。頁式虛擬存儲器的地址映射過程見下圖。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-25頁式虛擬存儲器的地址映

38、射過程見下圖頁式虛擬存儲器的地址映射過程見下圖計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-25 在大多數(shù)系統(tǒng)中,每個進程對應(yīng)一個頁表。頁表中對應(yīng)每一個虛存頁面有一個表項,表項的內(nèi)容包含該虛存頁面所在的主存頁面的地址物理頁號),以及指示該邏輯頁是否已調(diào)入主存的有效位。地址變換時,用邏輯頁號作為頁表內(nèi)的偏移地址索引頁表將虛頁號看作頁表數(shù)組下標并找到相應(yīng)物理頁號,用物理頁號作為實存地址的高字段,再與虛地址的頁內(nèi)偏移量拼接,就構(gòu)成完整的物理地址?,F(xiàn)代的中央處理機通常有專門的硬件支持地址變換。 每個進程所需的頁數(shù)并不固定,所以頁表的長度是可變的,因此通常的實現(xiàn)方法是把頁表的基地址保存在寄存

39、器中,而頁表本身則放在主存中。由于虛存地址空間可以很大,因而每個進程的頁表有可能非常長。例如,如果一個進程的虛地址空間為2G字節(jié),每頁的大小為512字節(jié),則總的虛頁數(shù)為231/29=222。計算機學(xué)院體系結(jié)構(gòu)中心計算機學(xué)院體系結(jié)構(gòu)中心2022-4-252、轉(zhuǎn)換后援緩沖器、轉(zhuǎn)換后援緩沖器 由于頁表通常在主存中,因而即使邏輯頁已經(jīng)在主由于頁表通常在主存中,因而即使邏輯頁已經(jīng)在主存中,也至少要訪問兩次物理存儲器才能實現(xiàn)一次存中,也至少要訪問兩次物理存儲器才能實現(xiàn)一次訪存,這將使虛擬存儲器的存取時間加倍。為了避訪存,這將使虛擬存儲器的存取時間加倍。為了避免對主存訪問次數(shù)的增多,可以對頁表本身實行二免對主存訪問次數(shù)的增多,可以對頁表本身實行二級緩存,把頁表中的最活躍的部分存放在高速存儲級緩存,把頁表中的最活躍的部分存放在高速存儲器中,組成快表。這

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論