




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、操作系統(tǒng)的目標(biāo)設(shè)置操作系統(tǒng)的目的:1、方便性:操作系統(tǒng)使計(jì)算機(jī)更易于使用2、有效性:操作系統(tǒng)允許以更有效的方式使用計(jì)算機(jī)系統(tǒng)資源。3、可擴(kuò)充性:在操作系統(tǒng)中,允許有效地開發(fā),測(cè)試和引進(jìn)新的系統(tǒng)功能。4、開放性:實(shí)現(xiàn)應(yīng)用程序的可移植性和互操作性,要求具有統(tǒng)一的開放的環(huán)境。OS的作用用戶和計(jì)算機(jī)硬件之間的接口操作系統(tǒng)作為計(jì)算機(jī)系統(tǒng)資源管理者。os實(shí)現(xiàn)了對(duì)計(jì)算機(jī)資源的抽象操作系統(tǒng)的功能:1、處理機(jī)管理:分配和控制CPU。2、存儲(chǔ)器管理:內(nèi)存分配與回收。3、I/O設(shè)備管理:I/O設(shè)備的分配與操縱。4、文件管理:文件的存取、共享和保護(hù)。5、用戶接口:命令接口與程序接口。操作系統(tǒng)用作擴(kuò)充機(jī)器功能,使其成為
2、便于使用的機(jī)器,這種機(jī)器又稱為虛擬機(jī)。二、操作系統(tǒng)的發(fā)展一無操作系統(tǒng)時(shí)的計(jì)算機(jī)系統(tǒng)1、人工操作方式一臺(tái)計(jì)算機(jī)的所有資源由用戶獨(dú)占,降低了計(jì)算機(jī)資源利用率,人操作慢,出現(xiàn)了嚴(yán)重的人機(jī)矛盾。缺點(diǎn):1:用戶獨(dú)占全機(jī)2:cpu等待人工操作2、脫機(jī)輸入輸出方式在外圍計(jì)算機(jī)的控制下,實(shí)現(xiàn)輸入輸出。主要解決了CPU與設(shè)備之間不匹配的矛盾。單道批處理系統(tǒng)1、在內(nèi)存中僅存一道作業(yè)運(yùn)行,運(yùn)行結(jié)束或出錯(cuò),才自動(dòng)調(diào)另一道作業(yè)運(yùn)行。2、單道批處理系統(tǒng)主要特征:自動(dòng)性、順序性、單道性。3、單道批處理系統(tǒng)主要優(yōu)點(diǎn):減少人工操作,解決了作業(yè)的自動(dòng)續(xù)接。4、單道批處理系統(tǒng)主要缺點(diǎn):平均周轉(zhuǎn)時(shí)間長(zhǎng),沒有交互能力。多道批處理系統(tǒng)(
3、一)多道程序的概念:在內(nèi)存中存放多道作業(yè)運(yùn)行,運(yùn)行結(jié)束或出錯(cuò),自動(dòng)調(diào)度內(nèi)存中的另一道作業(yè)運(yùn)行多道程序帶來的好處:1、提高CPU的利用率。2、提高內(nèi)存和I/O設(shè)備利用率。3、增加系統(tǒng)吞吐率。(二)多道批處理系統(tǒng)主要特征:多道性、宏觀上并行、微觀上串行。(三)多道批處理的主要優(yōu)點(diǎn):提高了資源利用率和吞吐能力。多道批處理的主要缺點(diǎn):平均周轉(zhuǎn)時(shí)間長(zhǎng),沒有交互能力。設(shè)計(jì)批處理多道系統(tǒng)時(shí),首先要考慮的是:系統(tǒng)效率和吞吐量分時(shí)系統(tǒng)(一)分時(shí)系統(tǒng)的產(chǎn)生用戶需要:人-機(jī)交互、共享主機(jī)、便于用戶上機(jī)(二)分時(shí)系統(tǒng)實(shí)現(xiàn)的方法具有“前臺(tái)”和“后臺(tái)”的分時(shí)系統(tǒng)多道分時(shí)系統(tǒng)(三)分時(shí)系統(tǒng)實(shí)現(xiàn)中的關(guān)鍵問題:及時(shí)接收:實(shí)現(xiàn)多
4、個(gè)用戶的信息及時(shí)接收。及時(shí)處理:及時(shí)控制作業(yè)的運(yùn)行。(1)作業(yè)應(yīng)直接進(jìn)入內(nèi)存(2)不允許一個(gè)作業(yè)長(zhǎng)期占用處理機(jī)直至他運(yùn)行結(jié)束或發(fā)生I/O請(qǐng)求后,才調(diào)度其他作業(yè)運(yùn)行。(四)分時(shí)系統(tǒng)的特征:多路性:多個(gè)用戶分時(shí)使用一臺(tái)計(jì)算機(jī),宏觀上同時(shí),微觀上輪流。獨(dú)立性:獨(dú)立運(yùn)行,不混淆,不破壞。及時(shí)性:系統(tǒng)能在很短的時(shí)間得到回答。交互性:能實(shí)現(xiàn)人機(jī)對(duì)話。(五)兩個(gè)概念時(shí)間片響應(yīng)時(shí)間實(shí)時(shí)系統(tǒng)所謂實(shí)時(shí)系統(tǒng):是計(jì)算機(jī)及時(shí)響應(yīng)外部事件的請(qǐng)求,在規(guī)定的時(shí)間內(nèi)完成對(duì)該事件的處理,并控制所有實(shí)時(shí)設(shè)備和實(shí)時(shí)任務(wù)協(xié)調(diào)一致的運(yùn)行。(一)實(shí)時(shí)系統(tǒng)分為兩類1、實(shí)時(shí)控制系統(tǒng)2、實(shí)時(shí)信息處理系統(tǒng)例如:用于控制生產(chǎn)流水線,進(jìn)行工業(yè)處理控制
5、的操作系統(tǒng)是實(shí)時(shí)系統(tǒng)(二)實(shí)時(shí)系統(tǒng)的特征1、多路性:能對(duì)多個(gè)對(duì)象進(jìn)行控制。2、獨(dú)立性:獨(dú)立運(yùn)行,不混淆,不破壞。3、交互性:僅限于訪問系統(tǒng)中某些特定的專用服務(wù)程序。4、可靠性:高可靠性,應(yīng)具有過載防護(hù)能力。5、及時(shí)性:不同的系統(tǒng)要求不一樣,控制對(duì)象必須在截止時(shí)間內(nèi)完成。三、操作系統(tǒng)的基本特征現(xiàn)代OS的四個(gè)基本特征:1、并發(fā)2、共享3、虛擬4、異步并發(fā)是最重要的特征,其它特征都以并發(fā)為前提。并發(fā)并發(fā)一一并行性和并發(fā)性-并行性是指兩個(gè)或多個(gè)事件在同一時(shí)刻發(fā)生。-并發(fā)性是指兩個(gè)或多個(gè)事件在同一時(shí)間間隔內(nèi)發(fā)生。共享所謂共享是指系統(tǒng)中的資源可供內(nèi)存中多個(gè)并發(fā)執(zhí)行的進(jìn)程共同使用。1、互斥共享方式:-把在一
6、段時(shí)間內(nèi)只允許一個(gè)進(jìn)程訪問的資源,稱為臨界資源。-系統(tǒng)中的臨界資源可以提供給多個(gè)進(jìn)程使用,但一次僅允許一個(gè)進(jìn)程使用,稱為互斥共享方式。2、同時(shí)訪問方式:-從宏觀上看,資源共享是指多個(gè)任務(wù)可以同時(shí)使用系統(tǒng)中的軟硬件資源-從微觀上看,資源共享是指多個(gè)任務(wù)可以交替互斥地使用系統(tǒng)中的某個(gè)資源。例如磁盤虛擬所謂虛擬是指通過某種技術(shù)把一個(gè)物理實(shí)體變?yōu)槿舾蓚€(gè)邏輯上的對(duì)應(yīng)物。虛擬處理機(jī):分時(shí)實(shí)現(xiàn)虛擬設(shè)備:SPOOLING技術(shù)虛擬存儲(chǔ)器:虛擬存儲(chǔ)管理實(shí)現(xiàn)異步性異步性是指進(jìn)程以異步的方式執(zhí)行,進(jìn)程是以人們不可預(yù)知的速度向前推進(jìn)。內(nèi)存中每個(gè)進(jìn)程在何時(shí)能獲得處理機(jī)運(yùn)行,何時(shí)又因提出資源請(qǐng)求而暫停,以及進(jìn)程以怎樣的速度
7、向前推進(jìn),每到程序總共用多長(zhǎng)時(shí)間才能完成等等,這些都是不可預(yù)知的。第二章進(jìn)程管理一、相關(guān)概念1、前趨圖有向無循環(huán)的圖。表示程序執(zhí)行的偏序關(guān)系。2、程序的順序執(zhí)行嚴(yán)格按照程序給定的順序執(zhí)行,僅當(dāng)前一個(gè)執(zhí)行結(jié)束才執(zhí)行后一個(gè)。3、程序的順序的特征:順序性封閉性可再現(xiàn)性4、程序的并發(fā)執(zhí)行是指兩個(gè)或兩個(gè)以上程序段在執(zhí)行的時(shí)間上是重疊的,即使這種重疊只有一小部分,則稱這些程序?yàn)椴l(fā)執(zhí)行。5、程序并發(fā)執(zhí)行的特征:間斷性失去封閉性不可再現(xiàn)性二、進(jìn)程的基本概念1、進(jìn)程的定義一個(gè)具有一定獨(dú)立功能的程序在一個(gè)數(shù)據(jù)集合上的一次動(dòng)態(tài)執(zhí)行過程,是系統(tǒng)進(jìn)行資源分配和調(diào)度的獨(dú)立單位.2、進(jìn)程的特征動(dòng)態(tài)性:是最基本的特征。因?yàn)?/p>
8、進(jìn)程的實(shí)質(zhì)是程序的一次執(zhí)行過程,而且該特征還表現(xiàn)在進(jìn)程由創(chuàng)建而產(chǎn)生,由調(diào)度而執(zhí)行,由撤銷而消亡,即進(jìn)程具有一定的生命期。并發(fā)性獨(dú)立性異步性結(jié)構(gòu)特征3、進(jìn)程的三種基本狀態(tài)及其轉(zhuǎn)換原因4、5、(1)就緒態(tài)變?yōu)閳?zhí)行態(tài)調(diào)度程序選擇一個(gè)新的進(jìn)程分配給其處理機(jī)CPU(2)執(zhí)行態(tài)變?yōu)榫途w態(tài)執(zhí)行進(jìn)程用完了時(shí)間片執(zhí)行進(jìn)程被中斷,因?yàn)橐桓邇?yōu)先級(jí)進(jìn)程處于就緒進(jìn)程控制塊描述和控制進(jìn)程運(yùn)行PCB是進(jìn)程存在的惟一標(biāo)志。PCB常駐內(nèi)存。進(jìn)程控制塊的組織方式鏈接方式、索引方式進(jìn)程與程序的區(qū)別(3)執(zhí)行態(tài)變?yōu)樽枞麘B(tài)執(zhí)行進(jìn)程發(fā)生/O請(qǐng)求或身原因)4)阻塞態(tài)變?yōu)榫途w態(tài)狀態(tài)(系統(tǒng)原因)當(dāng)I/O完成或所等待的事件發(fā)生時(shí);6.(1)程序
9、是靜態(tài)的,進(jìn)程是動(dòng)態(tài)的;程序是有序代碼的集合;進(jìn)程是程序的執(zhí)行。(2)進(jìn)程是暫時(shí)的,程序的永久的:進(jìn)程進(jìn)程只是一次執(zhí)行過程,有生命周期,有誕生有消亡,是暫時(shí)的;而程序可作為軟件資源長(zhǎng)期保存,相對(duì)長(zhǎng)久的;(3)進(jìn)程與程序的組成不同:進(jìn)程是由程序、數(shù)據(jù)和PCB三部分組成的.(4)進(jìn)程與程序的對(duì)應(yīng)關(guān)系:通過多次執(zhí)行,一個(gè)程序可對(duì)應(yīng)多個(gè)進(jìn)程;通過調(diào)用,一個(gè)進(jìn)程可包括多個(gè)程序三、進(jìn)程控制1、進(jìn)程管理進(jìn)程圖:表明進(jìn)程的創(chuàng)建關(guān)系,創(chuàng)建的進(jìn)程和被創(chuàng)建的進(jìn)程可以并發(fā)執(zhí)行。2、引起進(jìn)程創(chuàng)建的原因用戶登錄:為終端用戶建立進(jìn)程。作業(yè)調(diào)度:選中的作業(yè)建立進(jìn)程。提供服務(wù):為用戶提供的服務(wù)進(jìn)程。例如:I/O進(jìn)程等。應(yīng)用請(qǐng)求
10、:應(yīng)用程序自己創(chuàng)建的進(jìn)程。3、原語:由若干條指令構(gòu)成,用于完成一定功能的一個(gè)過程。4、原子操作(原子性):一個(gè)操作中的所有動(dòng)作,要么全做,要么全不做。是一個(gè)不可分割的操作。5、線程的基本概念(1)線程:一個(gè)被調(diào)度和分派的基本單位并可獨(dú)立運(yùn)行的實(shí)體。(2)線程分類:內(nèi)核支持線程:依賴于內(nèi)核進(jìn)行控制和管理。用戶級(jí)線程:在用戶級(jí)創(chuàng)建、撤消和切換。(3)在引入線程的OS系統(tǒng)中,則把線程作為調(diào)度和分派的基本單位,而把進(jìn)程作為資源的擁有的基本單位。(4)在同一進(jìn)程中的線程切換不會(huì)引起進(jìn)程切換。(5)在不同進(jìn)程中的線程切換會(huì)引起進(jìn)程切換。線程與進(jìn)程的比較調(diào)度性在傳統(tǒng)的操作系統(tǒng)中,作為擁有資源的基本單位和獨(dú)立
11、調(diào)度、分派的基本單位都是進(jìn)程;在引入線程的OS系統(tǒng)中,則把線程作為調(diào)度和分派的基本單位,而把進(jìn)程作為資源的擁有的基本單位。并發(fā)性引入線程后的os中,不僅進(jìn)程之間可以并發(fā)執(zhí)行,而且在一個(gè)進(jìn)程的多個(gè)線程之間也可以并發(fā)執(zhí)行,使OS具有更好的并發(fā)性,從而能更有效地使用系統(tǒng)資源和提高系統(tǒng)吞吐量。擁有資源不論是傳統(tǒng)的操作系統(tǒng),還是設(shè)有線程的操作系統(tǒng),進(jìn)程都是擁有資源的一個(gè)獨(dú)立單位,它可以擁有自己的資源。一般地說,線程自己不擁有系統(tǒng)資源(也有一點(diǎn)必不可少的資源),但它可以訪問其隸屬進(jìn)程的資源系統(tǒng)開銷創(chuàng)建、撤銷以至于切換進(jìn)程時(shí)付出的系統(tǒng)開銷顯著大于創(chuàng)建、撤銷、切換線程時(shí)的系統(tǒng)開銷進(jìn)程同步的基本概念1、進(jìn)程的相
12、互制約間接相互制約(進(jìn)程互斥)若干進(jìn)程共享一資源時(shí),任何時(shí)刻只允許一個(gè)進(jìn)程使用。直接相互制約(進(jìn)程同步)并發(fā)進(jìn)程之間存在的相互制約和相互依賴的關(guān)系。2、臨界資源:一次僅允許一個(gè)進(jìn)程使用的資源稱為臨界資源。3、臨界區(qū):訪問臨界資源的那段代碼稱為臨界區(qū)。4、同步機(jī)制應(yīng)遵循的準(zhǔn)則:空閑讓進(jìn)充分利用資源忙則等待保證同步與互斥有限等待防止陷入“死等”讓權(quán)等待防止陷入“忙等”信號(hào)量機(jī)制1)信號(hào)量信號(hào)量是一種只能進(jìn)行P操作和V操作的特殊變量2)信號(hào)量的物理含義:S0表示有s個(gè)資源可用.S=0表示無資源可用.S0則|S|表示S等待隊(duì)列中的進(jìn)程個(gè)數(shù).P(S):表示申請(qǐng)一個(gè)資源.V(S):表示釋放一個(gè)資源.思考:
13、對(duì)于N個(gè)并發(fā)進(jìn)程,信號(hào)量的取值范圍是什么,有什么含義?互斥信號(hào)量的值僅取1、0、-1、1-N等:若mutex=1,表示沒有進(jìn)程進(jìn)入臨界區(qū);若mutex=0,表示有一個(gè)進(jìn)程進(jìn)入臨界區(qū);若mutex=1,表示一個(gè)進(jìn)程進(jìn)入臨界區(qū),另一個(gè)進(jìn)程等待進(jìn)入.若mutex=1-N,表示一個(gè)進(jìn)程進(jìn)入臨界區(qū),另有N-1個(gè)進(jìn)程等待進(jìn)程同步應(yīng)用示例講解水果盤問題題目-桌上有一個(gè)盤子,可以存放一個(gè)水果。父親總是把蘋果放在盤子中,母親總是把香蕉放在盤子中;一個(gè)兒子專等吃盤中的香蕉,一個(gè)女兒專等吃盤中的蘋果。問題:1)系統(tǒng)要設(shè)幾個(gè)進(jìn)程來完成這個(gè)任務(wù)?各自的工作是什么?2)這些進(jìn)程間有什么樣的相互制約關(guān)系?3)用P,V操作寫
14、出這些進(jìn)程的同步算法(注:標(biāo)明信號(hào)量的含義)。1)需要四個(gè)進(jìn)程進(jìn)程描述:-Father:父親放置蘋果的進(jìn)程;Mother:母親放置香蕉的進(jìn)程;-Son:兒子吃香蕉的進(jìn)程;Daughter:女兒吃蘋果的進(jìn)程。分析:-四人公用一個(gè)盤子;盤子每次只能放一個(gè)水果,當(dāng)盤子為空時(shí),父母均可嘗試放水果,但一次只能有一人成功;盤中是香蕉,兒子吃,女兒等;盤中是蘋果,女兒吃,兒子等。2)進(jìn)程之間既有互斥又有同步關(guān)系。Father進(jìn)程和Mother進(jìn)程要互斥的向盤中放水果,應(yīng)設(shè)置一互斥信號(hào)量dish,初值為1,表示盤子為空;Father進(jìn)程要設(shè)置同步信號(hào)量apple,用于給Daughter進(jìn)程傳送消息,初值為0,
15、表示還沒有消息產(chǎn)生,即沒有放蘋果;相應(yīng)Daughter進(jìn)程也要向父、母進(jìn)程傳送盤子為空的消息。Mother進(jìn)程要設(shè)置同步信號(hào)量banana,用于給Son進(jìn)程傳送消息,初值為0,表示還沒有消息產(chǎn)生,即沒有放香蕉。相應(yīng)Son進(jìn)程也要向父、母進(jìn)程傳送盤子為空的消息。3)變量設(shè)置:-dish:表示盤子是否為空,初值=1;apple:表示盤中是否有蘋果,初值=0;banana:表示盤中是否有香蕉,初值=0。Father:P(dish);/判斷盤子是否空將蘋果放入盤中;V(apple);/傳消息給女兒進(jìn)程Mather:P(dish);/判斷盤子是否空將香蕉放入盤中;(banana);/傳消息給兒子進(jìn)程So
16、n:P(banana);/判斷是否有香蕉從盤中取出香蕉;(dish);/傳送盤空消息吃香蕉;Daughter:P(apple);/判斷是否有蘋果從盤中取出蘋果;(dish);/傳送盤空消息吃蘋果;題目:生產(chǎn)者與消費(fèi)者共用一個(gè)有n個(gè)緩沖單元的緩沖區(qū),生產(chǎn)者向緩沖區(qū)中放產(chǎn)品,消費(fèi)者從緩沖區(qū)中取產(chǎn)品消費(fèi)。問題:系統(tǒng)要設(shè)幾個(gè)進(jìn)程來完成這個(gè)任務(wù)?各自的工作是什么?這些進(jìn)程間有什么樣的相互制約關(guān)系?用P,V操作寫出這些進(jìn)程的同步算法(注:標(biāo)明信號(hào)量的含義)。系統(tǒng)需設(shè)兩個(gè)進(jìn)程producer進(jìn)程:生產(chǎn)產(chǎn)品并向緩沖區(qū)中放;consumer進(jìn)程:從緩沖區(qū)取產(chǎn)品并消費(fèi);1)分析:-生產(chǎn)者與消費(fèi)者共用一個(gè)緩沖區(qū),但
17、有n個(gè)緩沖單元;-對(duì)于緩沖區(qū)同一時(shí)刻只能有一個(gè)進(jìn)程使用;-有空緩沖單元時(shí),生產(chǎn)者可以放,否則等待;-有滿緩沖單元時(shí),消費(fèi)者可以取,否則等待。2)兩進(jìn)程間有互斥和同步的關(guān)系producer進(jìn)程和consumer進(jìn)程要互斥的訪問緩沖區(qū),應(yīng)設(shè)置一互斥信號(hào)量mutex,初值為1。producer進(jìn)程和consumer進(jìn)程有同步的關(guān)系,當(dāng)沒有滿緩沖單元時(shí),consumer進(jìn)程不能消費(fèi),當(dāng)沒有空緩沖單元時(shí),producer進(jìn)程不能向緩沖區(qū)放。應(yīng)為他們?cè)O(shè)置同步信號(hào)量empty=n和full=0,用于互傳消息。當(dāng)empty=0時(shí)不能生產(chǎn),當(dāng)full=0時(shí)不能消費(fèi)。3)變量設(shè)置mutex:保證對(duì)緩沖區(qū)的互斥訪問
18、,初值=1;empty:表示緩沖區(qū)中是否有空緩沖單元,初值=n;full:表示緩沖區(qū)中是否有滿緩沖單元,初值=0。producer:begin生產(chǎn)一個(gè)成品;P(empty);P(mutex);將產(chǎn)品存入緩沖區(qū)V(mutex);V(full);Endconsumer:beginP(full);P(mutex);將產(chǎn)品從緩沖區(qū)取出;(mutex);(empty);消費(fèi)成品;end題目:設(shè)有進(jìn)程A、B、C分別對(duì)單緩沖區(qū)S和T進(jìn)行操作,其中A進(jìn)程負(fù)責(zé)從卡片上讀取數(shù)據(jù)并把數(shù)據(jù)塊輸入到緩沖區(qū)S,B進(jìn)程負(fù)責(zé)從緩沖區(qū)S中提出數(shù)據(jù)塊并將數(shù)據(jù)塊送到緩沖區(qū)T中,C進(jìn)程負(fù)責(zé)從緩沖區(qū)T中取出信息打印。C進(jìn)程A進(jìn)程B進(jìn)程
19、單緩沖區(qū)T單緩沖區(qū)S問題:1)這些進(jìn)程間有什么樣的相互制約關(guān)系?2)用P,V操作寫出這些進(jìn)程的同步算法(注:標(biāo)明信號(hào)量的含義)。分析:兩個(gè)階段的生產(chǎn)者和消費(fèi)者問題。只有S為空時(shí),A進(jìn)程才能向S中放數(shù)據(jù);只有S中有數(shù)據(jù)時(shí),B進(jìn)程才能取數(shù)據(jù);只有T為空時(shí),B進(jìn)程才能向T中放數(shù)據(jù);只有T中有數(shù)據(jù)時(shí),C進(jìn)程才能取數(shù)據(jù)。1)三進(jìn)程間有互斥和同步的關(guān)系A(chǔ)進(jìn)程和B進(jìn)程要互斥的訪問緩沖區(qū)S,B進(jìn)程和C進(jìn)程要互斥的訪問緩沖區(qū)ToA進(jìn)程和B進(jìn)程有同步的關(guān)系,當(dāng)緩沖區(qū)S空時(shí),A進(jìn)程才能向S中放數(shù)據(jù),只有S中有數(shù)據(jù)時(shí),B進(jìn)程才能取數(shù)據(jù)。應(yīng)為他們?cè)O(shè)置同步信號(hào)量emptyS=1和fullS=0,用于互傳消息。B進(jìn)程和C進(jìn)
20、程有同步的關(guān)系,只有當(dāng)緩沖區(qū)T空時(shí),B進(jìn)程才能向T中放數(shù)據(jù),只有T中有數(shù)據(jù)時(shí),C進(jìn)程才能取數(shù)據(jù)。應(yīng)為他們?cè)O(shè)置同步信號(hào)量emptyT=1和fullT=0,用于互傳消息。3)變量設(shè)置emptyS:表示單緩沖區(qū)S是否為空,初值為1;emptyT:表示單緩沖區(qū)T是否為空,初值為1;fullS:表示單緩沖區(qū)S是否有數(shù)據(jù)可處理,其初值0fullT:表示單緩沖區(qū)T是否有數(shù)據(jù)可處理,其初值0A:beginB:beginC:beginrepeatrepeatrepeat讀卡片P(fullS);P(fullT):P(emptyS);從S中取數(shù)據(jù):從T中取數(shù)據(jù):將數(shù)據(jù)送入S;V(emptyS):V(emptyT):
21、V(fullS):打印數(shù)據(jù);untilfalse:P(emptyT):untilfalse:end將數(shù)據(jù)送入T:V(fullT):untilfalse:endend進(jìn)程通信進(jìn)程通信的類型:低級(jí)通信和高級(jí)通信(1)高級(jí)通信方式:共享存儲(chǔ)器系統(tǒng):共享數(shù)據(jù)結(jié)構(gòu)、共享存儲(chǔ)器區(qū)消息傳遞系統(tǒng):直接通信方式通過收發(fā)原語Send,Receive間接通信方式通過信箱實(shí)現(xiàn)信息交換管道通信(2)管道通信具有三方面的協(xié)調(diào)能力:雙方同時(shí)存在同步關(guān)系互斥使用管道第三章處理機(jī)調(diào)度與死鎖一、調(diào)度的類型(三個(gè)層次)1、2、3、二、1、2、3、4、高級(jí)調(diào)度(作業(yè)調(diào)度)低級(jí)調(diào)度(進(jìn)程調(diào)度):非搶占式、搶占式搶占式:時(shí)間片原則、優(yōu)先
22、權(quán)原則短作業(yè)/進(jìn)程優(yōu)先原則中級(jí)調(diào)度(對(duì)換)高級(jí)、中級(jí)和低級(jí)調(diào)度調(diào)度的算法先來先服務(wù)調(diào)度的算法FCFS短作業(yè)/進(jìn)程優(yōu)先調(diào)度的算法SJF/SPF外存內(nèi)存操作系統(tǒng)時(shí)間片輪轉(zhuǎn)調(diào)度的算法(分時(shí))RR優(yōu)先權(quán)調(diào)度的算法:非搶占式、搶占式靜態(tài)優(yōu)先權(quán)動(dòng)態(tài)優(yōu)先權(quán)(高響應(yīng)比)響應(yīng)比高者優(yōu)先調(diào)度的算法HRN:既考慮作業(yè)等待時(shí)間,又考慮作業(yè)執(zhí)行時(shí)間。5、RP=1+等待時(shí)間/服務(wù)時(shí)間舉例設(shè)在批處理系統(tǒng)中有4道作業(yè),他們進(jìn)入系統(tǒng)的時(shí)刻及運(yùn)行時(shí)間如下:設(shè)系統(tǒng)每次只選擇一個(gè)作業(yè),分別給出下列算法中這組作業(yè)的平均周轉(zhuǎn)時(shí)間和帶權(quán)周轉(zhuǎn)時(shí)間:FCFS、SJF、HRN.作業(yè)號(hào)進(jìn)入時(shí)刻運(yùn)行時(shí)間1&002.002&500.5039.000.
23、1049.500.20完成時(shí)間=開始時(shí)間+服務(wù)時(shí)間周轉(zhuǎn)時(shí)間=完成時(shí)間一到達(dá)時(shí)間帶權(quán)周轉(zhuǎn)時(shí)間=周轉(zhuǎn)時(shí)間/服務(wù)時(shí)間FCFS作業(yè)名提交時(shí)刻要求運(yùn)行時(shí)間開始運(yùn)行時(shí)刻完成時(shí)刻TiWi18.002.008.0010.00212&500.510.0010.52439.000.110.510.61.61649.500.210.610.81.36.5平均周轉(zhuǎn)時(shí)間=(2+2+1.6+1.3)/4平均帶權(quán)周轉(zhuǎn)時(shí)間=(1+4+16+6.5)/4SJF作業(yè)名提交時(shí)刻要求運(yùn)行時(shí)間開始運(yùn)行時(shí)刻完成時(shí)刻TiWi18.002.00&0010.002139.000.110.0010.11.11149.500.210.110.30
24、.8428.500.510.310.82.34.6HRN作業(yè)名提交時(shí)刻要求運(yùn)行時(shí)間開始運(yùn)行時(shí)刻完成時(shí)刻TiWi18.002.008.0010.002139.000.110.0010.11.11128.500.510.110.62.14.249.500.210.610.81.36.5T=6.5/4W=22.7/4RR(時(shí)間片輪轉(zhuǎn))時(shí)間片=2進(jìn)程名到達(dá)時(shí)間服務(wù)時(shí)間開始時(shí)間完成時(shí)間周轉(zhuǎn)時(shí)間帶權(quán)周轉(zhuǎn)時(shí)間A04010102.5B05215153C024663D04614143.7ABCDABDB0246810121415死鎖的基本概念1、何謂死鎖?(見P103)死鎖是指多個(gè)進(jìn)程因競(jìng)爭(zhēng)資源而造成的一種僵局
25、,當(dāng)進(jìn)程處于這種僵持狀態(tài)時(shí),若無外力作用,他們都無法再向前推進(jìn)。2、產(chǎn)生死鎖原因:競(jìng)爭(zhēng)資源推進(jìn)順序不當(dāng)3、產(chǎn)生死鎖的必要條件互斥請(qǐng)求和保持不剝奪環(huán)路等待條件4、處理死鎖的基本方法預(yù)防死鎖:設(shè)置某些限制條件,破壞四個(gè)條件。避免死鎖:資源動(dòng)態(tài)分配,防止進(jìn)入不安全狀態(tài)。(銀行家算法)檢測(cè)死鎖:設(shè)置檢査機(jī)構(gòu),定時(shí)檢査系統(tǒng)是否出現(xiàn)死鎖。解除死鎖:已出現(xiàn)死鎖時(shí)。銀行家算法練習(xí)銀行家算法中的數(shù)據(jù)結(jié)構(gòu)Available:可利用資源向量這是一個(gè)含有m個(gè)元素的數(shù)組,其中的每一個(gè)元素代表一類可利用的資源數(shù)目;初始值是系統(tǒng)中所配置的該類全部可用資源的數(shù)目,其數(shù)值隨該類資源的分配和回收而動(dòng)態(tài)地改變;如果Availabl
26、ej=K,則表示系統(tǒng)中現(xiàn)有Rj類資源K個(gè)。Max:最大需求矩陣這是一個(gè)nXm的矩陣,它定義了系統(tǒng)中n個(gè)進(jìn)程中的每一個(gè)進(jìn)程對(duì)m類資源的最大需求;-如果Maxi,j=K,則表示進(jìn)程i需要Rj類資源的最大數(shù)目為K。Allocation:分配矩陣這也是一個(gè)nXm的矩陣,它定義了系統(tǒng)中每一類資源當(dāng)前已分配給每一進(jìn)程的資源數(shù);如果Allocationi,j=K,則表示進(jìn)程i當(dāng)前已分得Rj類資源的數(shù)目為K。-Need:需求矩陣這也是一個(gè)nXm的矩陣,用以表示每一個(gè)進(jìn)程尚需的各類資源數(shù);-如果Needi,j=K,則表示進(jìn)程i還需要Rj類資源K個(gè),方能完成其任務(wù);Needi,j=Maxi,j-Allocatio
27、ni,jAvailable:可利用資源向量Max:最大需求矩陣Allocation:分配矩陣Need:需求矩陣銀行家算法假設(shè):Requesti是進(jìn)程Pi的請(qǐng)求向量,如果Requestij二K,表示進(jìn)程Pi需要K個(gè)Rj類型的資源。當(dāng)Pi發(fā)出資源請(qǐng)求后,系統(tǒng)按下述步驟進(jìn)行檢查:步驟一:如果RequestijWNeedi,j,便轉(zhuǎn)向步驟二;否則認(rèn)為出錯(cuò),因?yàn)樗枰馁Y源數(shù)已超過它所宣布的最大值。步驟二:如果RequestijWAvailablej,便轉(zhuǎn)向步驟三;否則,表示尚無足夠資源,Pi須等待。步驟三:系統(tǒng)試探著把資源分配給進(jìn)程Pi,并修改下面數(shù)據(jù)結(jié)構(gòu)中的數(shù)值:Availablej:=Avail
28、ablej-Requestij;Allocationi,j:二Allocationi,j+RequestijNeedi,j:二Needi,j-Requestij步驟四:系統(tǒng)執(zhí)行安全性算法,檢查此次資源分配后,系統(tǒng)是否處于安全狀態(tài)。若安全,才正式將資源分配給進(jìn)程Pi,以完成本次分配;否則,將本次的試探分配作廢,恢復(fù)原來的資源分配狀態(tài),讓進(jìn)程Pi等待。安全性算法步驟一:設(shè)置兩個(gè)向量工作向量Work:它表示系統(tǒng)可提供給進(jìn)程繼續(xù)運(yùn)行所需的各類資源數(shù)目,它含有m個(gè)元素,在執(zhí)行安全算法開始時(shí),Work:二Available;-Finish:它表示系統(tǒng)是否有足夠的資源分配給進(jìn)程,使之運(yùn)行完成。開始時(shí)先做Fi
29、nishi:=false;當(dāng)有足夠資源分配給進(jìn)程時(shí),再令Finishi:二true。步驟二:從進(jìn)程集合中找到一個(gè)能滿足下述條件的進(jìn)程:Finishi二false;Needi,jWWorkj;-若找到,執(zhí)行步驟三,否則,執(zhí)行步驟四;步驟三:-當(dāng)進(jìn)程Pi獲得資源后,可順利執(zhí)行,直至完成,并釋放出分配給它的資源,故應(yīng)執(zhí)行:Workj:=Worki+Allocationi,j;Finishi:=true;gotostep2;步驟四如果所有進(jìn)程的Finishi=true都滿足,則表示系統(tǒng)處于安全狀態(tài);否貝V,系統(tǒng)處于不安全狀態(tài)。銀行家算法實(shí)例之一有三類資源A(17)、B(5)、C(20)。有5個(gè)進(jìn)程P1
30、P5。TO時(shí)刻系統(tǒng)狀態(tài)如下頁(yè)表所示:?jiǎn)枺?1)TO時(shí)刻是否為安全狀態(tài),給出安全系列。(2)T0時(shí)刻,P2:Request(0,3,4),能否分配,為什么?在的基礎(chǔ)上P4:Request(2,0,l),能否分配,為什么?-在的基礎(chǔ)上Pl:Request(0,2,0),能否分配,為什么?T0時(shí)刻的系統(tǒng)狀態(tài)進(jìn)程標(biāo)識(shí)最大需求已分配P1559212P2536402P34011405P4425204P5424314解:(1)T0時(shí)刻的安全系列先求出Need和Work資源情況進(jìn)程最大需求已分配NeedABCABCABCP1559212347P2536402134P34011405006P4425204221
31、P5424314110A(17)、B(5)、C(20)Work=233WorkAllocationNeedW+AFinishP5233314110547TP45472042217411TP3741140500611416TP21141640213415418TP11541821234717520T(2)P2:Request(0,3,4)因:(Available=233)Request(0,3,4)所以不能分配(3)P4:Request(2,0,1)Available=233AllocationNeedAvailableP1212347233P2402134P3405006P4204221P53
32、14110AllocationNeedAvailableP1212347032P2402134P3405006P4405020P5314110(3)P4:Request(2,0,1)有安全序列P4P5P3P2Pl可以分配WorkAllocationNeedW+AFinishP4032405020437TP54373141107411TP3741140500611416TP21141640213415418TP11541821234717520T(4)P1:Request(0,2,0)AllocationNeedAvailableP1212347032P2402134P3405006P44050
33、20P5314110AllocationNeedAvailableP1232327012P2402134P3405006P4405020P5314110012已不能滿足任何進(jìn)程的需要,不能分配某系統(tǒng)有同類互斥資源m個(gè),供n個(gè)進(jìn)程共享使用。如果每個(gè)進(jìn)程最多申請(qǐng)x個(gè)資源(1WxWm),試證明:當(dāng)n(x-1)+1Wm時(shí),系統(tǒng)不會(huì)發(fā)生死鎖。證明:因?yàn)槊總€(gè)進(jìn)程最多申請(qǐng)x個(gè)資源,所以最壞情況是每個(gè)進(jìn)程都得到了(x-1)個(gè)資源,并且現(xiàn)在均需申請(qǐng)最后一個(gè)資源。此時(shí),系統(tǒng)剩余資源數(shù)為m-n(x-1),于是只要系統(tǒng)中至少還有一個(gè)資源可供使用,就可以使這n個(gè)進(jìn)程中某個(gè)進(jìn)程得到其所需要的全部資源,并能夠繼續(xù)執(zhí)行到完成
34、,歸還資源可供其他進(jìn)程使用。因而不會(huì)發(fā)生死鎖。即只要m-n(x-1)N1時(shí),系統(tǒng)就一定不會(huì)發(fā)生死鎖。亦即當(dāng)n(x-1)+1Wm時(shí),系統(tǒng)不會(huì)發(fā)生死鎖。為了解決進(jìn)程間的同步和互斥問題,通常采用一種稱為_(21)_機(jī)制的方法。若系統(tǒng)中有5個(gè)進(jìn)程共享若干個(gè)資源R,每個(gè)進(jìn)程都需要4個(gè)資源R,那么使系統(tǒng)不發(fā)生死鎖的資源R的最少數(shù)目是_(22)_。(21)A.調(diào)度B.信號(hào)量C.分派D.通訊(22)A.20B.18C.16D.15答案:BC若系統(tǒng)中有五臺(tái)打印機(jī),有多個(gè)進(jìn)程均需要使用兩臺(tái),規(guī)定每個(gè)進(jìn)程一次僅允許申請(qǐng)一臺(tái),則至多允許(4)個(gè)進(jìn)程參于競(jìng)爭(zhēng),而不會(huì)發(fā)生死鎖。第四章存儲(chǔ)器管理編譯程序產(chǎn)生的目標(biāo)模塊編輯編
35、譯鏈接裝入運(yùn)行內(nèi)存一、程序的裝入1、絕對(duì)裝入方式直接用物理地址編制程序。2、可重定位裝入方式(靜態(tài)重定位)重定位把在裝入時(shí)對(duì)目標(biāo)程序中的指令和數(shù)據(jù)地址的修改過程稱為重定位。3、動(dòng)態(tài)運(yùn)行時(shí)裝入方式(動(dòng)態(tài)重定位)作業(yè)在存儲(chǔ)空間的位置,也是裝入時(shí)確定的,但在作業(yè)運(yùn)行過程中,每次存訪內(nèi)存之前,將程序的地址(邏輯地址)變?yōu)閮?nèi)存的物理地址。這種變換是依靠硬件地址變換機(jī)構(gòu)、自動(dòng)實(shí)施,這樣程序在內(nèi)存的地址是可變的,可申請(qǐng)臨時(shí)空間。把用戶空間的邏輯地址轉(zhuǎn)變?yōu)閮?nèi)存中物理地址的過程稱做重定位或地址映射。設(shè)基址(重定位)寄存器內(nèi)容為1000,在采用動(dòng)態(tài)重定位的系統(tǒng)中,當(dāng)執(zhí)行指令“LOADA,2000”時(shí),操作數(shù)的實(shí)際
36、地址是3000。二、程序的鏈接1、靜態(tài)鏈接事先進(jìn)行鏈接,以后不再拆開的鏈接方式,稱為靜態(tài)鏈接。2、裝入時(shí)動(dòng)態(tài)鏈接一一編譯后的目標(biāo)模塊,是在裝入內(nèi)存時(shí),邊裝入,邊鏈接的。3、運(yùn)行時(shí)動(dòng)態(tài)鏈接將某些目標(biāo)模塊的鏈接推遲到執(zhí)行時(shí)才進(jìn)行,即在執(zhí)行過程中,若發(fā)現(xiàn)一個(gè)被調(diào)用模塊尚未裝入內(nèi)存時(shí),再由操作系統(tǒng)去找到該模塊,將它裝入內(nèi)存,并把它鏈接到調(diào)用者模塊上。4、靜態(tài)鏈接需要共享目標(biāo)模塊的拷貝,而動(dòng)態(tài)鏈接不需要共享目標(biāo)模塊的拷貝。三、連續(xù)分配存儲(chǔ)管理方式1、固定式分區(qū)2、動(dòng)態(tài)分區(qū)分配根據(jù)用戶實(shí)際需要,動(dòng)態(tài)的分配連續(xù)空間。3、動(dòng)態(tài)重定位分區(qū)分配采用動(dòng)態(tài)重定位技術(shù)的分區(qū)分配。目的是解決碎片問題。緊湊技術(shù):可以集中小
37、的空閑區(qū)。四、分區(qū)管理分區(qū)的分配算法:1、首次適應(yīng)算法:每個(gè)空白區(qū)按地址遞增順序鏈接在一起,表頭指向第一個(gè)空白區(qū)。2、循環(huán)首次適應(yīng)算法:將空白區(qū)構(gòu)成循環(huán)鏈表。表頭指向當(dāng)前開始查找的第一個(gè)空白區(qū)。3、最佳適應(yīng)算法:空白區(qū)按容量大小遞增順序構(gòu)成隊(duì)列。表頭指向第一個(gè)空白區(qū)。4、最壞適應(yīng)算法:空白區(qū)按容量大小遞減順序構(gòu)成隊(duì)列。表頭指向第一個(gè)空白區(qū)。分區(qū)回收:回收區(qū)上臨空閑區(qū):合并,起始地址為上臨空閑區(qū)的首地址,大小是兩者之和?;厥諈^(qū)下臨空閑區(qū):合并,起始地址為回收區(qū)地址,大小是兩者之和?;厥諈^(qū)上下均臨空閑區(qū):合并,起始地址為上臨空閑區(qū)的地址,大小是三者之和?;厥諈^(qū)上下均不臨空閑區(qū):作為單獨(dú)的一項(xiàng)插入分
38、區(qū)表或分區(qū)鏈。五、對(duì)換技術(shù)(交換技術(shù))將阻塞進(jìn)程,暫時(shí)不用的程序和數(shù)據(jù)換出。將具備運(yùn)行條件的進(jìn)程或進(jìn)程所需的程序和數(shù)據(jù)換入。六、分頁(yè)存儲(chǔ)器管理1、在分頁(yè)存儲(chǔ)管理方式中,一個(gè)進(jìn)程的邏輯地址空間分成若干個(gè)大小相等的片,稱為頁(yè)面。內(nèi)存空間也分成與頁(yè)相同大小的存儲(chǔ)塊,并將進(jìn)程的每一個(gè)頁(yè)面離散地存儲(chǔ)在內(nèi)存的任一物理塊中,建立相應(yīng)的頁(yè)表,由系統(tǒng)實(shí)現(xiàn)進(jìn)程的正確運(yùn)行。2、快表為了提高地址變換速度,可在地址變換機(jī)構(gòu)中,增設(shè)一個(gè)具有并行查尋能力的特殊高速緩沖存儲(chǔ)器,稱為快表。七、分段存儲(chǔ)管理在分段存儲(chǔ)管理方式中,一個(gè)作業(yè)的地址空間分成若干個(gè)段,每一段定義了一組邏輯信息,則為每個(gè)段分配連續(xù)的分區(qū),而進(jìn)程中的各段可以
39、離散地存儲(chǔ)在內(nèi)存中不同的分區(qū)中,建立相應(yīng)的段表,由系統(tǒng)實(shí)現(xiàn)進(jìn)程的正確運(yùn)行。分頁(yè)與分段存儲(chǔ)管理的區(qū)別?答:P138分頁(yè)與分段存儲(chǔ)管理的區(qū)別?頁(yè)是信息的物理單位,段是信息的邏輯單位;頁(yè)的大小是由系統(tǒng)固定的,段的長(zhǎng)度因段而異,由用戶決定;分頁(yè)的作業(yè)地址空間是一維的,分段的作業(yè)地址空間是二維的。八、段頁(yè)式管理基本思想(見P140)地址變換機(jī)構(gòu)(見P141)-某虛擬存儲(chǔ)器中的用戶空間共有32個(gè)頁(yè)面,每頁(yè)1KB,主存16KB。假定某時(shí)刻系統(tǒng)為用戶的第0、1、2、3頁(yè)分別分配的物理塊號(hào)為5、10、4、7,虛擬地址0A6FH對(duì)應(yīng)的物理地址為【】解:虛空間共32個(gè)頁(yè)面,頁(yè)大小為1KB,所以虛地址共15位二進(jìn)制長(zhǎng)
40、度0A6F對(duì)應(yīng)的二進(jìn)制數(shù)為:000101001101111虛頁(yè)號(hào)為00010,即第二頁(yè),對(duì)應(yīng)的物理塊號(hào)為4,即0100,因此,相應(yīng)的物理地址為0001001001101111126FH虛擬存儲(chǔ)管理1、虛擬存儲(chǔ)器的概念?虛擬存儲(chǔ)器:虛擬存儲(chǔ)器是指具有請(qǐng)求調(diào)入功能和置換功能,能從邏輯上對(duì)內(nèi)存容量進(jìn)行擴(kuò)充的一種存儲(chǔ)器系統(tǒng)。實(shí)際上,用戶所看到的大容量只是一種感覺,是虛的,故而得名虛擬存儲(chǔ)器。特點(diǎn):離散性;多次性;對(duì)換性;虛擬性虛擬存儲(chǔ)管理系統(tǒng)的基礎(chǔ)是程序的局部性理論。2、請(qǐng)求分頁(yè)存儲(chǔ)管理方式基本思想在請(qǐng)求分頁(yè)存儲(chǔ)管理方式中,不限定把進(jìn)程的整個(gè)地址空間全部裝入主存,而只要求把當(dāng)前需要的一部分裝入主存,由
41、系統(tǒng)實(shí)現(xiàn)進(jìn)程的正確運(yùn)行,其它的頁(yè)面當(dāng)需要時(shí)才去調(diào)用。這樣實(shí)現(xiàn)了主存的“擴(kuò)充”。地址變換機(jī)構(gòu)(見132)在請(qǐng)求頁(yè)式存儲(chǔ)管理中,當(dāng)查找的頁(yè)不在內(nèi)存中時(shí),要產(chǎn)生缺頁(yè)中斷。這時(shí)可以根據(jù)頁(yè)面置換算法選擇一些暫時(shí)不用的頁(yè)面置換出去,把需要的頁(yè)面調(diào)入內(nèi)存。頁(yè)面置換算法:FIFO例如,P150最近最久不用頁(yè)面置換算法LRU例如,(P151)簡(jiǎn)單的Clock置換算法例如,(P153)3、系統(tǒng)抖動(dòng)?系統(tǒng)抖動(dòng)是指被調(diào)出的頁(yè)面又立刻被調(diào)入所形成的頻繁調(diào)入調(diào)出現(xiàn)象。系統(tǒng)“抖動(dòng)”現(xiàn)象的發(fā)生是由置換算法選擇不當(dāng)引起的。1設(shè)某作業(yè)占有7個(gè)頁(yè)面,如果在主存中只允許裝入4個(gè)工作頁(yè)面(即工作集為4)作業(yè)運(yùn)行時(shí),實(shí)際訪問頁(yè)面的順序是
42、1,2,3,6,4,7,3,2,1,4,7,5,6,52,1試用FIFO與LRU頁(yè)面調(diào)度算法,列出各自的頁(yè)面淘汰順序和缺頁(yè)中斷次數(shù),以及最后留駐主存4頁(yè)的順序。(假設(shè)開始的4個(gè)頁(yè)面為空)1.答:FIFO頁(yè)面1236473214756521缺*M1111444444455555M222277777776666M33333222222222M6666611111111中斷次數(shù)=10缺頁(yè)率:10/16=62.5%答:LRU頁(yè)1236473214756521標(biāo)*M1111444411116666M222277774444422M33333333777771M6666222255555中斷次數(shù)=14缺頁(yè)
43、率:14/16=87.5%3、請(qǐng)求分段存儲(chǔ)管理方式(1)基本思想在請(qǐng)求分段存儲(chǔ)管理方式中,把作業(yè)的所有分段的副本保存在輔存中,當(dāng)其運(yùn)行時(shí),只要求把當(dāng)前需要的一段或數(shù)段裝入主存,其它的段當(dāng)需要時(shí)才裝入,由系統(tǒng)實(shí)現(xiàn)進(jìn)程的正確運(yùn)行。這樣實(shí)現(xiàn)了主存的“擴(kuò)充”。(2)地址變換機(jī)構(gòu)(見P138)分段保護(hù):越界檢查(段長(zhǎng)值)存取控制檢查第五章設(shè)備管理一、I/O系統(tǒng)的組成1、1/0系統(tǒng)的結(jié)構(gòu)(1)設(shè)備獨(dú)占設(shè)備在一段時(shí)間內(nèi)只允許一個(gè)用戶訪問的設(shè)備。共享設(shè)備在一段時(shí)間內(nèi)允許多個(gè)用戶訪問的設(shè)備。虛擬設(shè)備將一臺(tái)獨(dú)占物理設(shè)備變換為若干臺(tái)邏輯設(shè)備。(2)設(shè)備控制器是CPU與I/O設(shè)備之間的接口,它接收從CPU發(fā)來的命令,
44、并控制I/O設(shè)備工作。設(shè)備控制器是可編址設(shè)備。當(dāng)用于控制多臺(tái)設(shè)備時(shí),則具有多個(gè)地址。I/O通道分類:字節(jié)多路通道數(shù)組選擇通道一一按數(shù)組方式進(jìn)行數(shù)據(jù)傳送,但在一段時(shí)間內(nèi)只能為一臺(tái)設(shè)備占用,執(zhí)行一道通道程序。數(shù)組多路通道一一按數(shù)組方式進(jìn)行數(shù)據(jù)傳送,但能為多臺(tái)設(shè)備占用,高速的進(jìn)行數(shù)據(jù)傳送。二、I/O控制方式1、程序I/O方式(查詢方式)(P167)2、中斷驅(qū)動(dòng)方式(P168)3、DMA方式(P169)4、I/O通道控制方式(P170)通道是通過執(zhí)行通道程序,并與設(shè)備控制器共同實(shí)現(xiàn)對(duì)I/O設(shè)備的控制的。通道程序是由一系列通道指令(或稱為通道命令)所構(gòu)成的。通道又稱為特殊的處理機(jī)。三、緩沖管理引入緩沖原
45、因(見P172)(1)緩和CPU與I/O設(shè)備間速度不匹配的矛盾。(2)減少對(duì)CPU的中斷頻率,放寬對(duì)CPU中斷響應(yīng)時(shí)間的限制。(3)提高CPU和I/O設(shè)備之間的并行性。例如:?jiǎn)尉彌_、雙緩沖、循環(huán)緩沖、緩沖池緩沖技術(shù)是以空間換取時(shí)間,而且只能在設(shè)備使用不均衡時(shí)起到平滑作用。四、設(shè)備分配設(shè)備管理是通過一些數(shù)據(jù)結(jié)構(gòu)來實(shí)現(xiàn)對(duì)其設(shè)備進(jìn)行管理和控制的。1、設(shè)備控制表、通道控制表、系統(tǒng)設(shè)備表、控制器控制表2、設(shè)備分配中應(yīng)考慮的若干因素(1)設(shè)備的固有屬性:獨(dú)享設(shè)備、共享設(shè)備、虛擬設(shè)備(2)設(shè)備的分配算法:FIFO、優(yōu)先級(jí)高者優(yōu)先(3)設(shè)備分配中的安全性3、設(shè)備固有屬性不同,其分配算法不同4、SPOOLING
46、技術(shù)可將一臺(tái)物理設(shè)備虛擬為多臺(tái)邏輯設(shè)備,可為多個(gè)用戶所共享。SPOOLing技術(shù)的核心思想是:在快速輔助存儲(chǔ)設(shè)備中建立I/O緩沖區(qū)用于緩存從慢速輸入設(shè)備流入內(nèi)存的數(shù)據(jù)或緩存從內(nèi)存流向慢速輸出設(shè)備的數(shù)據(jù)。spooling技術(shù)是對(duì)脫機(jī)I/O系統(tǒng)的模擬,該技術(shù)是建立在多道程序的環(huán)境上、可以提高獨(dú)占設(shè)備的利用率。五、設(shè)備處理1、設(shè)備處理程序又稱為設(shè)備驅(qū)動(dòng)程序,它是I/O進(jìn)程與設(shè)備控制器之間的通信程序。2、用戶請(qǐng)求設(shè)備使用的是邏輯設(shè)備名。由系統(tǒng)通過邏輯設(shè)備表實(shí)現(xiàn)邏輯設(shè)備到物理設(shè)備的映射。當(dāng)更換物理設(shè)備時(shí),用戶的程序不用改,僅修改邏輯設(shè)備表。用戶程序應(yīng)與實(shí)際使用的物理設(shè)備無關(guān),這種特性就稱作設(shè)備無關(guān)性磁盤
47、存儲(chǔ)器管理一、磁盤訪問時(shí)間磁盤的訪問時(shí)間分成以下三個(gè)部分尋道時(shí)間、旋轉(zhuǎn)延遲時(shí)間和傳輸時(shí)間。二、早期磁盤調(diào)度算法1、先來先服務(wù)(見P194)2、最短尋道時(shí)間優(yōu)先(見P95)3、掃描法(見P195-196)4、循環(huán)掃描法(見P96)若有磁盤共有200個(gè)柱面,其編號(hào)為0-199,假定磁頭剛完成56號(hào)磁道的訪問,磁頭正在98號(hào)磁道上,現(xiàn)有一個(gè)請(qǐng)求隊(duì)列在等待訪問磁盤,訪問的磁道號(hào)分別為190,97,90,45,150,32,162,108,112,80。請(qǐng)寫出分別采用最短尋道時(shí)間優(yōu)先和電梯調(diào)度算法處理上述服務(wù)請(qǐng)求的次序和移動(dòng)的總磁道數(shù)。190,97,90,45,150,32,162,108,112,80SSTF電梯97110890711280101501082816211241901503897162890190288045145453
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 法律顧問聘請(qǐng)合同
- 中小學(xué)生校外培訓(xùn)服務(wù)合同
- 項(xiàng)目管理效率提升的實(shí)施方案
- 建筑工程投資合作協(xié)議合同
- 本小區(qū)物業(yè)管理合同書
- 酒店合作協(xié)議書范本旅游
- 智能交通大數(shù)據(jù)分析平臺(tái)服務(wù)協(xié)議
- 債權(quán)代償及擔(dān)保協(xié)議
- 智能穿戴設(shè)備研發(fā)及生產(chǎn)銷售合同
- 醫(yī)療器械研發(fā)及生產(chǎn)合作協(xié)議
- DeepSeek1天開發(fā)快速入門
- 2025書記員招聘考試題庫(kù)及參考答案
- 2024-2025年第二學(xué)期數(shù)學(xué)教研組工作計(jì)劃
- 2025輔警招聘公安基礎(chǔ)知識(shí)題庫(kù)附含參考答案
- 2025年環(huán)衛(wèi)工作計(jì)劃
- 品質(zhì)巡檢培訓(xùn)課件
- 初驗(yàn)整改報(bào)告格式范文
- 2023青島版數(shù)學(xué)三年級(jí)下冊(cè)全冊(cè)教案
- T-CSUS 69-2024 智慧水務(wù)技術(shù)標(biāo)準(zhǔn)
- (2024)竹產(chǎn)業(yè)生產(chǎn)建設(shè)項(xiàng)目可行性研究報(bào)告(一)
- 《零起點(diǎn)學(xué)中醫(yī)》課件
評(píng)論
0/150
提交評(píng)論