




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、5、緩沖技術(shù)實現(xiàn)的基本思想:進(jìn)程執(zhí)行寫操作輸出數(shù)據(jù)時,向系統(tǒng)申請一個緩沖區(qū),若為順序?qū)懻埱?,則不斷把數(shù)據(jù)填到緩沖區(qū),直到被裝滿。此后,進(jìn)程繼續(xù)它的計算,系統(tǒng)將緩沖區(qū)內(nèi)容寫到I/O設(shè)備上。進(jìn)程執(zhí)行讀操作輸入數(shù)據(jù)時,向系統(tǒng)申請一個緩沖區(qū),系統(tǒng)將一個物理記錄的內(nèi)容讀到緩沖區(qū),根據(jù)進(jìn)程要求,把當(dāng)前需要的邏輯記錄從緩沖區(qū)中選出并傳送給進(jìn)程7.3 緩沖管理(3)精選ppt5、緩沖技術(shù)實現(xiàn)的基本思想(續(xù)):在輸出數(shù)據(jù)時,只有在系統(tǒng)還來不及騰空緩沖區(qū)而進(jìn)程又要寫數(shù)據(jù)時,它才需要等待;在輸入數(shù)據(jù)時,僅當(dāng)緩沖區(qū)空而進(jìn)程又要從中讀取數(shù)據(jù)時,它才被迫等待6、緩沖的實現(xiàn)方式:采用硬件緩沖器實現(xiàn);在內(nèi)存劃出一塊區(qū)域,專門
2、用來存放臨時輸入輸出的數(shù)據(jù),這個區(qū)域稱為緩沖區(qū)7.3 緩沖管理(4)精選ppt單緩沖 在設(shè)備和處理機(jī)之間設(shè)置一個緩沖。設(shè)備與處理機(jī)交換數(shù)據(jù)時,先把交換的數(shù)據(jù)寫入緩沖區(qū),然后需要數(shù)據(jù)的設(shè)備/處理機(jī)再從緩沖區(qū)中取走數(shù)據(jù)。 特點:緩沖區(qū)數(shù)只有一個;設(shè)備與處理機(jī)對緩沖區(qū)的操作是串行的。 工作區(qū)緩沖區(qū)用戶進(jìn)程操作系統(tǒng)傳送(M)輸入(T)I/O設(shè)備處理(C)精選ppt一塊數(shù)據(jù)的處理時間在某系統(tǒng)中,從磁盤將一塊數(shù)據(jù)輸入到緩沖區(qū)需要花費(fèi)的時間T,CPU對一塊數(shù)據(jù)進(jìn)行處理的時間為C,將緩沖區(qū)的數(shù)據(jù)傳送到用戶區(qū)所花時間為M,那么在單緩沖情況下,系統(tǒng)處理大量數(shù)據(jù)時,一塊數(shù)據(jù)的處理時間為多少?系統(tǒng)對每一塊數(shù)據(jù)的處理時
3、間為:Max(T,C)+M精選ppt雙緩沖 在設(shè)備和處理機(jī)之間設(shè)置2個緩沖。設(shè)備與處理機(jī)交換數(shù)據(jù)時,先把交換的數(shù)據(jù)寫入緩沖區(qū),然后需要數(shù)據(jù)的設(shè)備/處理機(jī)再從緩沖區(qū)中取走數(shù)據(jù)。因緩沖區(qū)有2個,提高了設(shè)備與處理機(jī)并行操作的程度,只有當(dāng)兩個均為空時,需數(shù)據(jù)的進(jìn)程才等待。特點:緩沖區(qū)數(shù)有2個;設(shè)備與處理機(jī)對緩沖區(qū)的操作可并行,提高了設(shè)備與處理機(jī)并行操作的程度。工作區(qū)緩沖區(qū)1用戶進(jìn)程(處理C)操作系統(tǒng)傳送M輸入TI/O設(shè)備緩沖區(qū)2精選ppt一塊數(shù)據(jù)的處理時間在某系統(tǒng)中,從磁盤將一塊數(shù)據(jù)輸入到緩沖區(qū)需要花費(fèi)的時間T,CPU對一塊數(shù)據(jù)進(jìn)行處理的時間為C,將緩沖區(qū)的數(shù)據(jù)傳送到用戶區(qū)所花時間為M,那么在雙緩沖情
4、況下,系統(tǒng)處理大量數(shù)據(jù)時,一塊數(shù)據(jù)的處理時間為多少?系統(tǒng)對一塊數(shù)據(jù)的處理時間: MAX(C+M,T)工作區(qū)用戶進(jìn)程緩沖區(qū)1緩沖區(qū)2I/O 設(shè)備T1(緩沖1)M1C1M2C2M3C3T2(緩沖2)T3(緩沖3)M4C4T4(緩沖4)(a)(b)精選ppt雙機(jī)通信時緩沖區(qū)的設(shè)置緩沖區(qū)緩沖區(qū)A機(jī)B機(jī)(a) 單緩沖發(fā)送緩沖區(qū)接收緩沖區(qū)接收緩沖區(qū)發(fā)送緩沖區(qū)A機(jī)B機(jī)(b) 雙緩沖精選pptRGGGGR123456NextiNextgRGGGCR123456NexticurrentNextg循環(huán)緩沖 在設(shè)備和處理機(jī)之間設(shè)置多個大小相等的緩沖區(qū),這些緩沖區(qū)構(gòu)成環(huán)形,每一個緩沖區(qū)中含一指針指向下一個緩沖區(qū),最后
5、一個指向第一個緩沖區(qū)。 精選ppt循環(huán)緩沖的組成多個緩沖區(qū):用于裝輸入數(shù)據(jù)的空緩沖區(qū)R已裝滿數(shù)據(jù)的緩沖區(qū)G計算進(jìn)程正在使用的現(xiàn)行工作緩沖區(qū)C多個指針:指示輸入進(jìn)程下次可用的空緩沖區(qū)R的指針Nexti指示計算進(jìn)程下次可用緩沖區(qū)G的指針Nextg指示計算進(jìn)程正在使用的緩沖區(qū)C的指針Current特點:緩沖區(qū)的數(shù)量有多個;設(shè)備與處理機(jī)對緩沖區(qū)的操作可并行,進(jìn)一步提高了設(shè)備與處理機(jī)并行操作的程度。 精選ppt循環(huán)緩沖緩沖區(qū)的使用Getbuf過程Releasebuf過程進(jìn)程同步Nexti指針追趕上Nextg指針輸入進(jìn)程阻塞Nextg指針追趕上Nexti指針計算進(jìn)程阻塞精選ppt1、緩沖池:將系統(tǒng)內(nèi)所有的
6、緩沖區(qū)統(tǒng)一管理起來,就形成了能用于輸入/輸出的緩沖池。緩沖池通常由若干大小相同的緩沖區(qū)組成,是系統(tǒng)的公用資源,任何進(jìn)程都可以申請使用緩沖池中的各個緩沖區(qū)。2、緩沖池的組成(數(shù)據(jù)結(jié)構(gòu)) 三個隊列:空緩沖隊列emq、裝滿輸入數(shù)據(jù)隊列inq、裝滿輸出數(shù)據(jù)隊列outq 四個工作緩沖區(qū): 收容輸入數(shù)據(jù)的緩沖區(qū)hin、提取輸入數(shù)據(jù)的緩沖區(qū)sin、收容輸出數(shù)據(jù)的緩沖區(qū)hout、提取輸出數(shù)據(jù)的緩沖區(qū)sout 緩沖池(1)精選ppt緩沖池(2) 三個隊列:空緩沖隊列emq、裝滿輸入數(shù)據(jù)隊列inq、裝滿輸出數(shù)據(jù)隊列outq 四個工作緩沖區(qū): 收容輸入數(shù)據(jù)的緩沖區(qū)、提取輸入數(shù)據(jù)的緩沖區(qū)、收容輸出數(shù)據(jù)的緩沖區(qū)、提取輸
7、出數(shù)據(jù)的緩沖區(qū) 精選ppt3、Getbuf過程和Putbuf過程 Procedure Getbuf(type) begin wait(rs(type); wait(ms(type);B(number):=Takebuf(type); signal(ms(type); end緩沖池(3) Procedure Putbuf(type) begin wait(ms(type); Addbuf(type,number); signal(ms(type); signal(rs(type); end注:Takebuf(type)用于從type所指的隊列的隊首摘下一緩沖區(qū) Addbuf(type,numbe
8、r)用于將由number所指示的緩沖區(qū)B掛在type隊列上精選ppt4、操作系統(tǒng)對緩沖池的管理-工作方式hinsinsouthout用戶程序緩沖池提取輸入收容輸出提取輸出收容輸入緩沖池的工作方式精選ppt輸入進(jìn)程需要輸入數(shù)據(jù)時:輸入設(shè)備 收容輸入緩沖區(qū)-Getbuf(emq)和Putbuf(inq,hin) 1)從空緩沖隊列emq的隊首取一空緩沖區(qū)用作收容輸入緩沖區(qū)hin 2)輸入設(shè)備將數(shù)據(jù)輸入收容輸入緩沖區(qū)并裝滿 3)將此緩沖區(qū)掛到裝滿輸入數(shù)據(jù)隊列inq隊尾。計算進(jìn)程需要輸入數(shù)據(jù)時:提取輸入緩沖區(qū) CPU -Getbuf(inq)和Putbuf(emq,sin) 1)從裝滿輸入數(shù)據(jù)隊列inq
9、隊首取一滿緩沖區(qū)用作提取輸入緩沖區(qū)sin 2)CPU從提取輸入緩沖區(qū)中取出數(shù)據(jù)至用完 3)將空緩沖區(qū)掛到空緩沖隊列emq隊尾。4、操作系統(tǒng)對緩沖池的管理-工作方式精選ppt計算進(jìn)程需要輸出數(shù)據(jù)時:CPU 收容輸出緩沖區(qū)-Getbuf(emq)和Putbuf(outq,hout) 1)從空緩沖隊列emq隊首取一空緩沖區(qū)用作收容輸出緩沖區(qū)hout 2)CPU將數(shù)據(jù)輸入其中并裝滿 3)將收容輸出緩沖區(qū)掛到裝滿輸出數(shù)據(jù)隊列outq隊尾。輸出進(jìn)程需要輸出數(shù)據(jù)時:提取輸出緩沖區(qū) 輸出設(shè)備-Getbuf(outq)和Putbuf(emq,sout) 1)從裝滿輸出數(shù)據(jù)隊列outq隊首取一滿緩沖區(qū)用作提取輸出
10、緩沖區(qū)sout 2)輸出設(shè)備從中取出數(shù)據(jù)至用完 3)將空緩沖區(qū)掛到空緩沖隊列emq隊尾4、操作系統(tǒng)對緩沖池的管理-工作方式精選ppt7.4 I/O 軟件I/O 軟件的設(shè)計目標(biāo)和原則中斷處理程序設(shè)備驅(qū)動程序設(shè)備獨立性軟件用戶層的I/O軟件精選ppt7.4.1 I/O軟件的設(shè)計目標(biāo)和原則總體設(shè)計目標(biāo)高效性確保I/O設(shè)備和CPU并行執(zhí)行,提高資源利用率通用性提供簡單抽象、清晰統(tǒng)一的接口,采用統(tǒng)一標(biāo)準(zhǔn)的方法,來管理所有的設(shè)備和所需的I/O操作采用層次結(jié)構(gòu)的I/O軟件低層軟件實現(xiàn)與硬件相關(guān)的操作,屏蔽硬件的具體細(xì)節(jié)高層軟件向用戶提供一個簡潔、友好、規(guī)范的接口精選ppt7.4.1 I/O軟件的設(shè)計目標(biāo)和原
11、則I/O軟件應(yīng)達(dá)到以下幾個目標(biāo)與具體設(shè)備無關(guān)屏蔽設(shè)備的具體細(xì)節(jié),向高層提供抽象的邏輯設(shè)備,并完成邏輯設(shè)備和具體物理設(shè)備的映射統(tǒng)一命名所有軟件都以邏輯名稱訪問設(shè)備,與具體設(shè)備無關(guān)精選ppt7.4.1 I/O軟件的設(shè)計目標(biāo)和原則I/O軟件應(yīng)達(dá)到以下幾個目標(biāo)(續(xù))對錯誤的處理盡可能在接近硬件的層面處理錯誤緩沖技術(shù)設(shè)備的分配和釋放I/O控制方式合理選擇I/O控制方式,例打印機(jī)(中斷驅(qū)動)、磁盤(DMA控制方式)精選ppt7.4.1 I/O軟件的設(shè)計目標(biāo)和原則層次式結(jié)構(gòu)的I/O軟件(四個層次)用戶層軟件設(shè)備獨立性軟件設(shè)備驅(qū)動程序中斷處理程序硬件I/O請求I/O應(yīng)答執(zhí)行I/O操作產(chǎn)生I/O請求、格式化I/
12、O、Spooling映射,保護(hù),分塊,緩沖,分配設(shè)置設(shè)備寄存器,檢查寄存器狀態(tài)當(dāng)I/O結(jié)束時,喚醒驅(qū)動程序精選ppt7.4.1 I/O軟件的設(shè)計目標(biāo)和原則層次式結(jié)構(gòu)的I/O軟件(四個層次)(續(xù))用戶層軟件實現(xiàn)與用戶交互的接口,用戶可直接調(diào)用在用戶層提供的、與I/O操作有關(guān)的庫函數(shù),對設(shè)備操作設(shè)備獨立性軟件負(fù)責(zé)實現(xiàn)與設(shè)備驅(qū)動器的統(tǒng)一接口、設(shè)備命名、設(shè)備保護(hù)以及設(shè)備的分配與釋放,提供存儲空間精選ppt7.4.1 I/O軟件的設(shè)計目標(biāo)和原則層次式結(jié)構(gòu)的I/O軟件(四個層次)(續(xù))設(shè)備驅(qū)動程序與硬件直接相關(guān),負(fù)責(zé)具體實現(xiàn)系統(tǒng)對設(shè)備發(fā)出的操作指令,驅(qū)動I/O設(shè)備工作的驅(qū)動程序中斷處理程序用于保存被中斷進(jìn)
13、程的CPU環(huán)境,轉(zhuǎn)入相應(yīng)的中斷處理程序進(jìn)行處理,處理完后再恢復(fù)被中斷進(jìn)程的現(xiàn)場后返回到被中斷進(jìn)程精選ppt7.4.2 中斷處理程序(1)中斷處理層的主要工作進(jìn)行進(jìn)程上下文的切換對處理中斷信號源進(jìn)行測試讀取設(shè)備狀態(tài)修改進(jìn)程狀態(tài)中斷處理程序的處理過程喚醒被阻塞的驅(qū)動程序進(jìn)程保護(hù)被中斷進(jìn)程的CPU環(huán)境分析中斷原因,轉(zhuǎn)入相應(yīng)的設(shè)備處理程序進(jìn)行中斷處理恢復(fù)被中斷進(jìn)程的現(xiàn)場精選ppt7.4.2 中斷處理程序(2)精選ppt7.4.3 設(shè)備驅(qū)動程序是I/O進(jìn)程與設(shè)備控制器之間的通信程序,常以進(jìn)程的形式存在,主要任務(wù)接收上層軟件發(fā)來的抽象I/O要求轉(zhuǎn)換為具體要求后,發(fā)送給設(shè)備控制器,啟動設(shè)備去執(zhí)行將由設(shè)備控制
14、器發(fā)來的信號傳送給上層軟件修改進(jìn)程狀態(tài)設(shè)備驅(qū)動程序的功能設(shè)備處理方式設(shè)備驅(qū)動程序的特點設(shè)備驅(qū)動程序的處理過程精選ppt設(shè)備驅(qū)動程序的功能將接收到的抽象要求轉(zhuǎn)換為具體要求。檢查用戶I/O請求的合法性,I/O設(shè)備狀態(tài),傳參數(shù),設(shè)置設(shè)備的工作方式。按處理機(jī)的I/O請求去啟動指定的設(shè)備進(jìn)行I/O操作及時響應(yīng)由控制器或通道發(fā)來的中斷請求,并進(jìn)行相應(yīng)處理按I/O請求構(gòu)成相應(yīng)通道程序。精選ppt設(shè)備處理方式為每一類設(shè)備設(shè)置一進(jìn)程,專門執(zhí)行其I/O操作。在整個系統(tǒng)中設(shè)置一個進(jìn)程,執(zhí)行所有的I/O操作。 不設(shè)置專門的設(shè)備處理進(jìn)程,而為各類設(shè)備設(shè)置相應(yīng)的設(shè)備驅(qū)動程序。精選ppt設(shè)備驅(qū)動程序的特點是請求I/O的進(jìn)程
15、與設(shè)備控制器之間的一個通信程序。與設(shè)備控制器和I/O設(shè)備的硬件特性緊密相關(guān)與I/O設(shè)備所采用的I/O控制方式緊密相關(guān)與硬件緊密相關(guān),因而其中一部分程序必須用匯編語言編寫。驅(qū)動程序應(yīng)允許可重入 驅(qū)動程序不允許系統(tǒng)調(diào)用,但可以允許對某些內(nèi)核過程的調(diào)用精選ppt設(shè)備驅(qū)動程序的的處理過程將接收到的抽象要求轉(zhuǎn)換為具體要求。檢查用戶I/O請求的合法性讀出和檢查 I/O設(shè)備狀態(tài)傳送必要參數(shù)設(shè)置設(shè)備的工作方式。按處理機(jī)的I/O請求去啟動指定的設(shè)備進(jìn)行I/O操作精選ppt7.4.4 設(shè)備獨立性軟件設(shè)備獨立性概念(設(shè)備無關(guān)性)設(shè)備獨立性的實現(xiàn)邏輯設(shè)備(應(yīng)用程序)和物理設(shè)備(執(zhí)行)設(shè)備分配時的靈活性易于實現(xiàn)I/O重
16、定向設(shè)備獨立性軟件執(zhí)行所有設(shè)備的公有操作向用戶層(文件層)軟件提供統(tǒng)一的接口邏輯設(shè)備名到物理設(shè)備名映射的實現(xiàn)邏輯設(shè)備表LUT(Logical Unit Table)LUT設(shè)置問題 整個系統(tǒng)設(shè)置一張LUT ;每個用戶設(shè)一張LUT 用于單用戶系統(tǒng)用于多用戶系統(tǒng)精選ppt設(shè)備獨立性相關(guān)概念設(shè)備獨立性概念(設(shè)備無關(guān)性) 為提高OS的可適應(yīng)性和可擴(kuò)展性,而將應(yīng)用程序獨立于具體使用的物理設(shè)備。I/O重定向 指用于I/O操作的設(shè)備可以更換,即重定向,而不必改變應(yīng)用程序。所有設(shè)備的公有操作 獨立設(shè)備的分配與回收;將邏輯設(shè)備名映射為物理設(shè)備名;對設(shè)備進(jìn)行保護(hù)(禁止直接訪問);緩沖管理;差錯控制。精選ppt邏輯設(shè)
17、備表LUT(Logical Unit Table)邏輯設(shè)備名物理設(shè)備名驅(qū)動程序入口地址/dev/tty31024/dev/print52046邏輯設(shè)備名系統(tǒng)設(shè)備表指針/dev/tty3/dev/print5(a)(b)精選ppt7.4.5 用戶層的I/O軟件大部分I/O軟件都在操作系統(tǒng)內(nèi)部,仍有一小部分在用戶層與用戶程序鏈接在一起的庫函數(shù)完全運(yùn)行在內(nèi)核之外的一些程序(如Spooling系統(tǒng))用戶層軟件設(shè)備獨立性軟件設(shè)備驅(qū)動程序中斷處理程序硬件I/O請求I/O應(yīng)答執(zhí)行I/O操作產(chǎn)生I/O請求、格式化I/O、Spooling映射,保護(hù),分塊,緩沖,分配設(shè)置設(shè)備寄存器,檢查寄存器狀態(tài)I/O系統(tǒng)的層次
18、及功能I/O操作結(jié)束時,喚醒驅(qū)動程序精選ppt7.5 設(shè)備分配設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)設(shè)備分配的策略/應(yīng)考慮的因素獨占設(shè)備的分配程序SPOOLING技術(shù) 精選ppt7.5.1 設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)設(shè)備控制表DCT (Device Control Table)控制器控制表COCT (COntroller Control Table)通道控制表CHCT(CHannel Control Table)系統(tǒng)設(shè)備表SDT (System Device Table)精選pptDCT表目1表目i設(shè)備類型 設(shè)備標(biāo)識符DCT指針獲得設(shè)備的進(jìn)程控制器標(biāo)識符 控制器狀態(tài):忙/閑CHCT指針控制器等待隊列指針通道標(biāo)識符通道狀態(tài):忙/閑通道等待隊列指針SDTC
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2 周末巧安排 教學(xué)設(shè)計-2024-2025學(xué)年道德與法治二年級上冊統(tǒng)編版
- 經(jīng)營權(quán)轉(zhuǎn)讓合同模板
- 合同樣本商業(yè)地產(chǎn)項目投資合作協(xié)議書
- 個人向公司借款合同簡例
- 1-1《子路、曾皙、冉有、公西華侍坐》教學(xué)設(shè)計-2024-2025學(xué)年高一語文下學(xué)期同步教學(xué)設(shè)計(統(tǒng)編版必修下冊)
- Module 3 Unit 9 Great cities of the world(教學(xué)設(shè)計)-2023-2024學(xué)年滬教牛津版(深圳用)英語六年級上冊
- 25《慢性子裁縫和急性子顧客》(教學(xué)設(shè)計)-2023-2024學(xué)年統(tǒng)編版語文三年級下冊
- 豬舍購銷合同范本
- 沉降檢測合同范本
- 毛毛新車網(wǎng)合同范本
- 代工生產(chǎn)合同范本
- 瑜伽課程合同轉(zhuǎn)讓協(xié)議書范本
- 個人經(jīng)營性貸款合同模板
- DeepSeek新手入門教程
- 課件:《教育強(qiáng)國建設(shè)規(guī)劃綱要(2024-2035年)》學(xué)習(xí)宣講
- 2025年山東化工職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試近5年??及鎱⒖碱}庫含答案解析
- 2025年全國幼兒園教師資格證考試教育理論知識押題試題庫及答案(共九套)
- 2024年鄭州電力高等??茖W(xué)校高職單招職業(yè)適應(yīng)性測試歷年參考題庫含答案解析
- 產(chǎn)品試產(chǎn)流程
- 舞臺機(jī)械基礎(chǔ)知識培訓(xùn)
- 人教版數(shù)學(xué)八年級下冊 第16章 二次根式 單元測試(含答案)
評論
0/150
提交評論