freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

操作系統(tǒng)原理-ch8-設(shè)備管理(編輯修改稿)

2024-08-31 16:47 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 3)裝滿輸出數(shù)據(jù)的輸出緩沖隊(duì)列 out, 其隊(duì)首指針為 F(out), 隊(duì)尾指針為 L(out)。其隊(duì)列構(gòu)成如圖所示。緩沖區(qū)隊(duì)列* 63第七章 設(shè)備管理 除了三種緩沖隊(duì)列之外,系統(tǒng) (或用戶進(jìn)程 )從這三種隊(duì)列中申請(qǐng)和取出緩沖區(qū),并用得到的緩沖區(qū)進(jìn)行存數(shù)、取數(shù)操作,在存數(shù)、取數(shù)操作結(jié)束后,再將緩沖區(qū)放入相應(yīng)的隊(duì)列。這些緩沖區(qū)被稱為工作緩沖區(qū)。在緩沖池中,有 4種工作緩沖區(qū) ,即 :(1) 用于收容設(shè)備輸入數(shù)據(jù)的收容輸入緩沖區(qū) hin。(2) 用于提取設(shè)備輸入數(shù)據(jù)的提取輸入緩沖區(qū) sin。(3) 用于收容 CPU輸出數(shù)據(jù)的收容輸出緩沖區(qū) hout。(4) 用于提取 CPU輸出數(shù)據(jù)的提取輸出緩沖區(qū) sout。緩沖池的工作緩沖區(qū)如圖所示。 緩沖池的工作緩沖區(qū)* 65第七章 設(shè)備管理 2. 緩沖池管理對(duì)緩沖池的管理由如下幾個(gè)操作組成 : (1) 從三種緩沖區(qū)隊(duì)列中按一定的選取規(guī)則取出一個(gè)緩沖區(qū)的過(guò)程 take_buf(type)。(2) 把緩沖區(qū)按一定的選取規(guī)則插入相應(yīng)的緩沖區(qū)隊(duì)列的過(guò)程 add_buf(type, number)。(3) 供進(jìn)程申請(qǐng)緩沖區(qū)用的過(guò)程get_buf(type,number)。(4) 供進(jìn)程將緩沖區(qū)放入相應(yīng)緩沖區(qū)隊(duì)列的過(guò)程 put_buf(type,work_buf)。其中,參數(shù) type表示緩沖隊(duì)列類型, number為緩沖區(qū)號(hào),而 work_buf則表示工作緩沖區(qū)類型。n 使用這幾個(gè)操作,緩沖池的工作過(guò)程可描述如下 :首先,輸入進(jìn)程調(diào)用 get_buf(em,number)過(guò)程從空白緩沖區(qū)隊(duì)列中取出一個(gè)緩沖號(hào)為 number的空白緩沖區(qū),將其作為收容輸入緩沖區(qū) hin, 當(dāng) hin中裝滿了由輸入設(shè)備輸入的數(shù)據(jù)之后,系統(tǒng)調(diào)用過(guò)程 put_buf(in,hin)將該緩沖區(qū)插入輸入緩沖區(qū)隊(duì)列 in中。另外,當(dāng)進(jìn)程需要輸出數(shù)據(jù)時(shí),輸出進(jìn)程經(jīng)過(guò)緩沖管理程序調(diào)用過(guò)程 get_buf(em,number)從空白緩沖區(qū)隊(duì)列中取出一個(gè)空白緩沖區(qū) number作為收容輸出緩沖區(qū) hout, 待 hout中裝滿輸出數(shù)據(jù)之后,系統(tǒng)再調(diào)用過(guò)程put_buf(out,hout)將該緩沖區(qū)插入輸出緩沖區(qū)隊(duì)列 out。n 對(duì)緩沖區(qū)的輸入數(shù)據(jù)和輸出數(shù)據(jù)的提取也是由過(guò)程 get_buf和 put_buf實(shí)現(xiàn)的。get_buf(out,number)從輸出緩沖隊(duì)列中取出裝滿輸出數(shù)據(jù)的緩沖區(qū) number, 將其作為 sout。 當(dāng)sout中數(shù)據(jù)輸出完畢時(shí),系統(tǒng)調(diào)用過(guò)程put_buf(em,sout)將該緩沖區(qū)插入空白緩沖隊(duì)列。而 get_buf(in,number)則從輸入緩沖隊(duì)列中取出一個(gè)裝滿輸入數(shù)據(jù)的緩沖區(qū) number作為輸入緩沖區(qū) sin, 當(dāng) CPU從中提取完所需數(shù)據(jù)之后,系統(tǒng)調(diào)用過(guò)程 put_buf(em,sin)將該緩沖區(qū)釋放和插入空白緩沖隊(duì)列 em中。輸入get_buf(em,number)。取空白number緩沖區(qū)作為 hin數(shù)據(jù)由設(shè)備 hinput_buf(in,hin)。將 hin放入 in隊(duì)列——————————————get_buf(in,number)。將 number作為 sinsincpuput_buf(em,sin)。將 sin放入 em隊(duì)列輸出get_buf(em,number)。取空白number緩沖區(qū)作為 hout。put_buf(out,hout)。將 hout放入 out隊(duì)列——————————————get_buf(out,number)。將 number作為soutsout設(shè)備put_buf(em,sout)。將 sout放入 em隊(duì)列顯然,對(duì)于各緩沖隊(duì)列中緩沖區(qū)的排列以及每次取出和插入緩沖隊(duì)列區(qū)的順序都應(yīng)有一定的規(guī)則。最簡(jiǎn)單的方法是 FIFO, 即先來(lái)先出的排列方法。采用 FIFO方法,過(guò)程 put_buf每次把緩沖區(qū)插入相應(yīng)緩沖隊(duì)列的隊(duì)尾,而過(guò)程 get_buf則取出相應(yīng)緩沖隊(duì)列的第一個(gè)緩沖區(qū),從而 get_buf中的第二個(gè)參數(shù) number可以省略。而且,采用FIFO方法也省略了對(duì)緩沖隊(duì)列的搜索時(shí)間。過(guò)程 add_buf(type,number)和take_buf(type,number)分別用來(lái)把緩沖區(qū)number插入 type隊(duì)列和從 type隊(duì)列中取出緩沖區(qū) number。 它們分別被過(guò)程 get_buf和 put_buf調(diào)用,其中 , take_buf返回所取緩沖區(qū) number的指針 , 而 add_buf則將給定緩沖區(qū) number的指針鏈入隊(duì)列。下面給出過(guò)程 get_buf和 put_buf的描述。首先,設(shè)互斥信號(hào)量 S(type), 其初值為 1。設(shè)描述資源數(shù)目的信號(hào)量 RS(type), 其初值為 n(n為type隊(duì)列長(zhǎng)度 )。get_buf(type,number):beginP(RS(type))P(S(type)) Pointer of buffer(number) = take_buf(type,number)V(S(type))? endput_buf(type,number):beginP(S(type))add_buf(type,number)V(S(type))V(RS(type))end設(shè) 備 分 配n 1 設(shè)備分配原則n 2 設(shè)備分配方式n 3 設(shè)備分配算法n 4 設(shè)備分配技術(shù)1. 設(shè)備分配原則設(shè)備分配的原則是根據(jù)設(shè)備特性、用戶要求和系統(tǒng)配置情況決定的。設(shè)備分配的總原則是既要充分發(fā)揮設(shè)備的使用效率,盡可能的讓設(shè)備忙,但又要避免由于不合理的分配方法造成進(jìn)程死鎖。 另外還要做到把用戶程序和具體物理設(shè)備隔離開(kāi)來(lái),即用戶程序面對(duì)的是邏輯設(shè)備,而分配程序?qū)⒃谙到y(tǒng)把邏輯設(shè)備轉(zhuǎn)換成物理設(shè)備之后,再根據(jù)要求的物理設(shè)備號(hào)進(jìn)行分配如圖所示。設(shè)備分配流程圖靜態(tài)分配 :在作業(yè)級(jí)進(jìn)行的,當(dāng)一個(gè)作業(yè)運(yùn)行之前由系統(tǒng)一次分配滿足需要的全部設(shè)備,這些設(shè)備一直為該作業(yè)占用,直到作業(yè)撤消。這種分配不會(huì)出現(xiàn)死鎖,但設(shè)備的利用效率較低。動(dòng)態(tài)分配在進(jìn)程運(yùn)行的過(guò)程中進(jìn)行的,當(dāng)進(jìn)程需要使用設(shè)備時(shí),通過(guò)系統(tǒng)調(diào)用命令向系統(tǒng)提出設(shè)備請(qǐng)求,系統(tǒng)按一定的分配策略給進(jìn)程分配所需設(shè)備,一旦使用完畢立即釋放。顯然這種分配方式有利于提高設(shè)備的使用效率,但會(huì)出現(xiàn)死鎖,這是應(yīng)力求避免的。 n 先請(qǐng)求先服務(wù)n 優(yōu)先級(jí)高的優(yōu)先服務(wù)先請(qǐng)求先服務(wù)當(dāng)有多個(gè)進(jìn)程對(duì)某一設(shè)備提出 I/O請(qǐng)求時(shí),或者是在同一設(shè)備上進(jìn)行多次 I/O操作時(shí),系統(tǒng)按提出 I/O請(qǐng)求的先后順序,將進(jìn)程發(fā)出的 I/O請(qǐng)求命令排成隊(duì)列,其隊(duì)首指向被請(qǐng)求設(shè)備的 DCT。 當(dāng)該設(shè)備空閑時(shí),系統(tǒng)從該設(shè)備的請(qǐng)求隊(duì)列的隊(duì)首取下一個(gè) I/O請(qǐng)求消息,將設(shè)備分配給發(fā)出這個(gè)請(qǐng)求消息的進(jìn)程。優(yōu)先級(jí)高者先服務(wù)優(yōu)先級(jí)高者指發(fā)出 I/O請(qǐng)求命令的進(jìn)程。這種策略和進(jìn)程調(diào)度的優(yōu)先數(shù)法是一致的,即進(jìn)程的優(yōu)先級(jí)高,它的 I/O請(qǐng)求也優(yōu)先予以滿足。對(duì)于相同優(yōu)先級(jí)的進(jìn)程來(lái)說(shuō),則按先請(qǐng)求先服務(wù)策略分配。因此,優(yōu)先級(jí)高者先服務(wù)策略把請(qǐng)求某設(shè)備的 I/O請(qǐng)求命令按進(jìn)程的優(yōu)先級(jí)組成隊(duì)列,從而保證在該設(shè)備空閑時(shí),系統(tǒng)能從 I/O請(qǐng)求隊(duì)列隊(duì)首取下一個(gè)具有最高優(yōu)先級(jí)進(jìn)程發(fā)來(lái)的 I/O請(qǐng)求命令,并將設(shè)備分配給發(fā)出該命令的進(jìn)程。根據(jù)設(shè)備的特性把設(shè)備分成獨(dú)占設(shè)備、共享設(shè)備和虛擬設(shè)備三種。針對(duì)這三種設(shè)備采用三種分配技術(shù) :n 獨(dú)享分配n 共享分配n 虛擬分配獨(dú)享分配n 獨(dú)占型設(shè)備有行打印機(jī),鍵盤(pán),顯示器。磁帶機(jī)可作為獨(dú)占設(shè)備,也可作為共享設(shè)備。n 若對(duì)這些設(shè)備不采用獨(dú)享分配就會(huì)造成混亂。因此對(duì)獨(dú)占設(shè)備一般采用獨(dú)享分配,即當(dāng)進(jìn)程申請(qǐng)獨(dú)占設(shè)備時(shí),系統(tǒng)把設(shè)備分配給這個(gè)進(jìn)程,直到進(jìn)程釋放設(shè)備。 共享分配n 共享設(shè)備包括磁盤(pán),磁帶和磁鼓。n 對(duì)這類設(shè)備的分配是采用動(dòng)態(tài)分配的方式進(jìn)行的,當(dāng)一個(gè)進(jìn)程要請(qǐng)求某個(gè)設(shè)備時(shí),系統(tǒng)按照某種算法立即分配相應(yīng)的設(shè)備給請(qǐng)求者,請(qǐng)求者使用完后立即釋放。 虛擬分配n 系統(tǒng)中獨(dú)占設(shè)備的數(shù)量總是有限的,這些獨(dú)占設(shè)備一旦分配給某個(gè)進(jìn)程往往只有很少時(shí)間在工作,許多時(shí)間一直處于空閑狀態(tài)。而別的進(jìn)程又因得不到相應(yīng)的設(shè)備而不能運(yùn)行,因此嚴(yán)重地影響到整個(gè)計(jì)算機(jī)系統(tǒng)的效率。n 從另一個(gè)角度來(lái)說(shuō),獨(dú)占設(shè)備一般是低速的,若采用聯(lián)機(jī)操作,也會(huì)增加進(jìn)程的運(yùn)行時(shí)間,影響計(jì)算機(jī)系統(tǒng)的效率。n 為提高計(jì)算機(jī)系統(tǒng)的效率,提出了在高速共享設(shè)備上模擬低速設(shè)備功能的技術(shù),稱為虛擬設(shè)備技術(shù)。 虛擬分配是針對(duì)虛擬設(shè)備而言的。其實(shí)現(xiàn)的過(guò)程是 :當(dāng)用戶 (或進(jìn)程 )申請(qǐng)獨(dú)占設(shè)備時(shí)。系統(tǒng)給它分配共享設(shè)備的一部分存儲(chǔ)空間。當(dāng)程序要與設(shè)備交換信息時(shí),系統(tǒng)就把要交換的信息存放在這部分存儲(chǔ)空間。在適當(dāng)?shù)臅r(shí)候再將存儲(chǔ)空間的信息傳輸?shù)较鄳?yīng)的設(shè)備上去處理。如系統(tǒng)打印信息時(shí),就把要打印的信息送到某個(gè)存儲(chǔ)空間中去,然后由系統(tǒng)在適當(dāng)時(shí)機(jī)把存儲(chǔ)空間上的信息送到打印機(jī)上打印出來(lái)。這個(gè)時(shí)機(jī)可能是打印機(jī)空閑或打印機(jī)完成了一用戶的信息輸出之后。通常人們把共享設(shè)備中代替獨(dú)占設(shè)備的那部分存儲(chǔ)空間和相應(yīng)的控制結(jié)構(gòu)稱為 虛擬設(shè)備 ,并把對(duì)這類設(shè)備的分配稱作虛擬分配。SPOOLing系統(tǒng)Simultaneaus Periphernal Operations OnLine(外部設(shè)備同時(shí)聯(lián)機(jī)操作)。n 在單道批處理時(shí)期,用脫機(jī) I/O可以提高 CPU利用率。多道出現(xiàn)后可以利用一道程序來(lái)模擬脫機(jī) I/O中的衛(wèi)星機(jī),這樣可實(shí)現(xiàn)在主機(jī)控制下的脫機(jī) I/O功能。n 我們把這種
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1