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

正文內(nèi)容

操作系統(tǒng)-設(shè)備管理-cch(文件)

 

【正文】 平)? 2)datatransferringwithcopesizesemantics”( 為了維持拷貝語(yǔ)句的語(yǔ)義要求)Silberschatz, Galvin, and Gagne ?1999 KernelcopyaSpoolingforcanrequest( 如果設(shè)備一次只能服務(wù)于一個(gè)請(qǐng)求)– .,toforout檢查用戶 I/O請(qǐng)求的合法性,了解 I/O設(shè)備的狀態(tài),設(shè)置工作方式。Silberschatz, Galvin, and Gagne ?1999 設(shè)備驅(qū)動(dòng)程序的特點(diǎn)? 設(shè)備驅(qū)動(dòng)程序?qū)儆诘图?jí)的系統(tǒng)例程,主要指在請(qǐng)求 I/O的進(jìn)程與設(shè)備控制器之間的一個(gè)通信的轉(zhuǎn)換程序。? 驅(qū)動(dòng)程序的一部分需用匯編語(yǔ)言編寫 ? 讀出和檢查設(shè)備的狀態(tài),確保設(shè)備處于就緒態(tài)。Silberschatz, Galvin, and Gagne ?1999 中斷處理程序的處理過(guò)程? 在設(shè)備控制器控制下, I/O設(shè)備完成了 I/O操作后,控制器(或通道)便向 CPU發(fā)出一中斷請(qǐng)求, CPU響應(yīng)后便轉(zhuǎn)向中斷處理程序,中斷處理程序大致包含以下幾步:– 必須去喚醒阻塞的驅(qū)動(dòng)(程序)進(jìn)程。Silberschatz, Galvin, and Gagne ?1999 中斷處理程序的處理過(guò)程– 進(jìn)行中斷處理,判別此次 I/O完成是正常結(jié)束中斷還是異常結(jié)束中斷,分別作相應(yīng)處理。由于打印機(jī)的速度跟不上 CPU, 而使得 CPU長(zhǎng)時(shí)間的等待。Silberschatz, Galvin, and Gagne ?1999 緩沖區(qū)設(shè)置硬緩沖:在設(shè)備中設(shè)置緩沖區(qū),由硬件實(shí)現(xiàn)可見第一步和最后一步是可以并行執(zhí)行的,這樣就提高了 CPU和外設(shè)的利用率。 通常, M遠(yuǎn)小于 T或 CSilberschatz, Galvin, and Gagne ?1999 單緩沖( Single Buffer )緩沖區(qū) 用戶區(qū)輸入 T傳送 MI/O設(shè)備操作系統(tǒng) 用戶進(jìn)程 計(jì)算 CSilberschatz, Galvin, and Gagne ?1999 雙緩沖( 此時(shí) OS可以從緩沖區(qū) A中提取數(shù)據(jù)傳送到用戶區(qū),最后由 CPU對(duì)數(shù)據(jù)進(jìn)行計(jì)算。 Silberschatz, Galvin, and Gagne ?1999 雙緩沖( Double Buffer )緩沖區(qū) A用戶區(qū)緩沖區(qū) B輸入 T 傳送 MI/O設(shè)備操作系統(tǒng)用戶進(jìn)程 計(jì)算 CSilberschatz, Galvin, and Gagne ?1999 循環(huán)緩沖( 所以雙緩沖進(jìn)一步加快了 I/O的速度,提高了設(shè)備的利用率。我們可以將多個(gè)緩沖區(qū)組織成循環(huán)隊(duì)列的形式Silberschatz, Galvin, and Gagne ?1999 循環(huán)緩沖 ( Circular Buffer ) ……緩沖區(qū) 1用戶區(qū)緩沖區(qū) 2緩沖區(qū) N輸入 T 傳送 MI/O設(shè)備操作系統(tǒng) 用戶進(jìn)程Silberschatz, Galvin, and Gagne ?1999 循環(huán)緩沖? 組成:多個(gè)緩沖區(qū),多個(gè)指針? 緩沖區(qū):空緩沖區(qū) R, 裝滿數(shù)據(jù)的緩沖區(qū) G, 現(xiàn)行工作緩沖區(qū) C(計(jì)算進(jìn)程正在使用的 )? 指針:下一個(gè)空緩沖區(qū) Nexti, 下一個(gè)有數(shù)據(jù)的緩沖區(qū) Nextg, 現(xiàn)行工作區(qū)Current Silberschatz, Galvin, and Gagne ?1999 循環(huán)緩沖使用? Getbuf過(guò)程:對(duì)于計(jì)算進(jìn)程,把 Nextg所指的緩沖區(qū)提供給進(jìn)程使用,把Current指向該緩沖區(qū),并把 Nextg移向下一個(gè) G緩沖區(qū),對(duì)于輸入進(jìn)程,把Nexti所指的緩沖區(qū)提供給進(jìn)程使用,并把 Nexti移向下一個(gè) R緩沖區(qū)? Releasebuf過(guò)程 :當(dāng)輸入進(jìn)程釋放時(shí),把釋放的緩沖區(qū)改為 G緩沖區(qū),而計(jì)算進(jìn)程則把它釋放的緩沖區(qū)改為 R緩沖區(qū)。Silberschatz, Galvin, and Gagne ?1999 緩沖池?當(dāng)系統(tǒng)配置較多的設(shè)備時(shí),使用專用緩沖區(qū)就要消耗大量的內(nèi)存空間,且其利用率不高。?空緩沖區(qū)隊(duì)列:由空緩沖區(qū)所鏈成的隊(duì)列。組成:? 空緩沖隊(duì)列 emq: 隊(duì)首指針 F(emq)、 隊(duì)尾指針 L(emq)? 輸入隊(duì)列 inq:Getbuf(type)? Begin? B(number):=Takebuf(type)。? End? Wait(MS(type))。/*將由 number指示的緩沖區(qū)掛在 type上 */? ? 提取輸出:輸出進(jìn)程調(diào)用 Getbuf(outq),從 outq的隊(duì)首摘取一裝滿數(shù)據(jù)的緩沖區(qū),作為提取輸出緩沖區(qū) sout, 數(shù)據(jù)提取完后,再調(diào)用 Putbuf(emq,sout),將該緩沖區(qū)掛在空緩沖區(qū)的末尾。在分配設(shè)備時(shí)還必須考慮系統(tǒng)的安全性,避免發(fā)生死鎖現(xiàn)象。這種分配方式是對(duì)獨(dú)占設(shè)備采用的分配策略。共享方式是指將共享設(shè)備(磁盤)同時(shí)分配給多個(gè)進(jìn)程使用。Silberschatz, Galvin, and Gagne ?1999 設(shè)備分配算法 (與進(jìn)程的調(diào)度算法相似 )? 先來(lái)先服務(wù):當(dāng)多個(gè)進(jìn)程同時(shí)向某一設(shè)備提出 I/O請(qǐng)求時(shí),該算法就根據(jù)對(duì)該設(shè)備提出請(qǐng)求的先后次序?qū)⑦@些進(jìn)程排列成一個(gè)設(shè)備請(qǐng)求隊(duì)列,設(shè)備分配程序把設(shè)備首先分配給隊(duì)首進(jìn)程。但是這種分配算法使得 CPU與 I/O設(shè)備串行工作,設(shè)備的利用率比較低。只有當(dāng)進(jìn)程所請(qǐng)求的設(shè)備已被另一個(gè)進(jìn)程占用時(shí),進(jìn)程才進(jìn)入阻塞狀態(tài)。Silberschatz, Galvin, and Gagne ?1999 設(shè)備獨(dú)立性( DeviceIndependence)? 為了提高 OS的可適應(yīng)性和可擴(kuò)展性,目前幾乎所有的 OS都實(shí)現(xiàn)了設(shè)備的獨(dú)立性(也稱為設(shè)備無(wú)關(guān)性)。引入邏輯設(shè)備和物理設(shè)備兩個(gè)概念。它是設(shè)備的系統(tǒng)名,即設(shè)備的物理名。它描述設(shè)備現(xiàn)行的狀態(tài)。它存放要求使用該設(shè)備的隊(duì)列的首指針。設(shè)備獨(dú)立性帶來(lái)以下兩方面的好處:?設(shè)備分配時(shí)的靈活性:當(dāng)進(jìn)程以邏輯設(shè)備名請(qǐng)求某類設(shè)備時(shí),如果一臺(tái)設(shè)備已經(jīng)分配給其它進(jìn)程或正在檢修,此時(shí)系統(tǒng)可以將其它幾臺(tái)相同的空閑設(shè)備中的任一臺(tái)分配給該進(jìn)程,只有當(dāng)此類設(shè)備全部被分配完時(shí),進(jìn)程才會(huì)被阻塞。 執(zhí)行所有設(shè)備的公有操作 :獨(dú)立設(shè)備的分配與回收;邏輯設(shè)備名映射為物理設(shè)備名,找到相應(yīng)設(shè)備的驅(qū)動(dòng)程序;設(shè)備保護(hù),防止用戶直接訪問(wèn)設(shè)備;緩沖管理;出錯(cuò)處理 。Unit 每個(gè)表的具體內(nèi)容如下圖所示。每個(gè)通道配有一張通道控制表 .Silberschatz, Galvin, and Gagne ?1999 設(shè)備分配的數(shù)據(jù)結(jié)構(gòu)圖 SDT集合 SDT系統(tǒng)設(shè)備表 DCT集合 DCT設(shè)備控制表表目 1……表目 i……設(shè)備類型設(shè)備標(biāo)識(shí)符進(jìn)程標(biāo)識(shí)符DCT表指針驅(qū)動(dòng)程序入口地址表目 1……表目 i……設(shè)備類型設(shè)備標(biāo)識(shí)符設(shè)備狀態(tài)(等待 /不等待,忙 /閑)COCT表指針重復(fù)執(zhí)行次數(shù)或時(shí)間設(shè)備隊(duì)列的隊(duì)首指針設(shè)備隊(duì)列的隊(duì)尾指針表目 1……表目 i……控制器標(biāo)識(shí)符控制器狀態(tài)(忙 /閑)CHCT表指針控制器隊(duì)列的隊(duì)首指針控制器隊(duì)列的隊(duì)尾指針表目 1……表目 i……通道標(biāo)識(shí)符通道狀態(tài)(忙 /閑)COCT表指針通道隊(duì)列的隊(duì)首指針通道隊(duì)列的隊(duì)尾指針COCT集合 COCT控制器控制表 CHCT集合 CHCT通道控制表Silberschatz, Galvin, and Gagne ?1999 設(shè)備分配程序(2)設(shè)備分配的實(shí)施? 分配設(shè)備:對(duì)于獨(dú)占設(shè)備采用 FCFS或優(yōu)先級(jí)分配,還要考慮安全性,以免死鎖。? 分配通道:選擇一個(gè)與控制器相連的空閑通道 。對(duì)于虛擬設(shè)備,分配的并不是物理設(shè)備,而是外存中的一個(gè)存儲(chǔ)區(qū)。系統(tǒng)為每一個(gè)控制器設(shè)置了一張用于記錄本控制器情況的控制器控制表 .每個(gè)設(shè)備占一個(gè)表目,其中包括設(shè)備類型、設(shè)備標(biāo)識(shí)符、設(shè)備控制表指針及設(shè)備驅(qū)動(dòng)程序的入口地址等表項(xiàng)。Silberschatz, Galvin, and Gagne ?1999 設(shè)備驅(qū)動(dòng) 程序的 統(tǒng) 一接口設(shè)備 命名設(shè)備 保 護(hù)提供一個(gè)與 設(shè)備 無(wú)關(guān)的 塊 大小緩 沖塊設(shè)備 的存 儲(chǔ) 分配獨(dú)占 設(shè)備 的分配和 釋 放錯(cuò)誤報(bào) 告設(shè)備獨(dú)立性軟件通常實(shí)現(xiàn)的功能Silberschatz, Galvin, and Gagne ?1999 設(shè)備分配程序? 設(shè)備分配程序是負(fù)責(zé)向?qū)ο到y(tǒng)提出 I/O請(qǐng)求的進(jìn)程分配設(shè)備,及其相應(yīng)的控制器和通道。 向用戶層(或文件層)軟件提供統(tǒng)一的接口。例如,要把輸出設(shè)備從終端改為打印機(jī),則只需把邏輯設(shè)備表中的終端改為打印機(jī)即可。該轉(zhuǎn)換表包含設(shè)備特定的 I/O例行程序地址,不具備相應(yīng)操作的設(shè)備在其例行程序地址上要填 “1”。它反映現(xiàn)行設(shè)備在 I/O總線上的具體地址。它描述設(shè)備的特性和類型。設(shè)備控制塊( DCB) 例如在 MSDOS中,最基本的輸入、輸出設(shè)備(鍵盤和顯示器)用一個(gè)公共的邏輯設(shè)備名 CON( Console— 控制臺(tái)),并由同一個(gè)設(shè)備驅(qū)動(dòng)程序來(lái)驅(qū)動(dòng)和控制;并行打印機(jī)的邏輯設(shè)備名為 PRN或 LPTi;異步串行通訊口的邏輯設(shè)備名為 AUX或 COMi等等 。 Silberschatz, Galvin, and Gagne ?1999 設(shè)備獨(dú)立性( DeviceIndependence)Silberschatz, Galvin, and Gagne ?1999 ? 例如 ,當(dāng)一個(gè)進(jìn)程 P1發(fā)出第一個(gè) I/O請(qǐng)求,占有了資源 1后,在繼續(xù)向前推進(jìn)時(shí),又要申請(qǐng)資源 2;此時(shí),進(jìn)程 P2卻占有了資源 2,在繼續(xù)向前推進(jìn)時(shí),又要申請(qǐng)資源 1,從而造成系統(tǒng)死鎖。 每當(dāng)進(jìn)程發(fā)出一個(gè) I/O請(qǐng)求后,便進(jìn)入阻塞狀態(tài),直到其 I/O操作完成時(shí)才被喚醒。而對(duì)于優(yōu)先權(quán)相同的 I/O請(qǐng)求,則按先來(lái)先服務(wù)原則排隊(duì)分配。?虛擬方式虛擬方式是指通過(guò)高速的共享設(shè)備,把一臺(tái)慢速的以獨(dú)占方式工作的物理設(shè)備改造成若干臺(tái)虛擬的同類邏輯設(shè)備,這就需要引入 SPOOLing技術(shù)。?共享方式? 在多道程序環(huán)境下,設(shè)備必須由系統(tǒng)分配。 EndSilberschatz, Galvin, and Gagne ?1999 hinsoutsinhout 用 戶 程 序收容輸入 提取輸入提取輸出 收容輸出緩沖池緩沖區(qū)的工作方式Silberschatz, Galvin, and Gagne ?1999 緩沖區(qū)的工作方式 ?Signal(MS(type))。Begin?Putbuf(type,number)?? Wait(RS(type))。隊(duì)首指針 F(outq)、 隊(duì)尾指針 L(outq)? 四種工作緩沖區(qū):用于收容輸入數(shù)據(jù)的工作緩沖區(qū)、用于提取輸入數(shù)據(jù)的工作緩沖區(qū)、用于收容輸出數(shù)據(jù)的工作緩沖區(qū)、用于提取輸出數(shù)據(jù)的工作緩沖區(qū)。?輸出緩沖區(qū)隊(duì)列:由裝滿輸出數(shù)據(jù)的緩沖區(qū)所鏈成的隊(duì)列。?對(duì)于同時(shí)用于輸入 /輸出的公用緩沖池,至少含有三種類型的緩沖區(qū):空緩沖區(qū)、裝滿輸入數(shù)據(jù)的緩沖區(qū)和裝滿輸出數(shù)據(jù)的緩沖區(qū)。? 當(dāng) Nextg追上 Nexti: 輸入進(jìn)程速度低于計(jì)算進(jìn)程,計(jì)算進(jìn)程應(yīng)阻塞,直到輸入進(jìn)程又裝滿某個(gè)緩沖區(qū),將它喚醒。但是如果兩者的速度相差甚遠(yuǎn)時(shí),雙緩沖的效果就不夠理想了。Buffer 若 C< T, 可使塊設(shè)備連續(xù)輸入;若 C> T, 可使 CPU不必等待設(shè)備輸入。Buffer 緩沖管理Silberschatz, Galvin, and Gagne ?1999 單緩沖( Single Buffer )? 每當(dāng)一個(gè)用戶進(jìn)程發(fā)出一個(gè) I/O請(qǐng)求時(shí), OS便在主存中為之分配一個(gè)緩沖區(qū)。雙緩沖? 循環(huán)緩沖? 這時(shí), CPU不必等待,可以繼續(xù)執(zhí)行程序。Silberschatz, Galvin, and Gagne ?1999 緩沖管理? 緩沖的引入 :? 凡是數(shù)據(jù)到達(dá)和離去速度不匹配的地方均可采用緩沖技術(shù)– 緩和 CPU與 I/O設(shè)備間速度不匹配的矛盾– 減少對(duì) CPU的中斷頻率,放寬對(duì) CPU中斷響應(yīng)時(shí)間的限制。– 返回被中斷的進(jìn)程,或進(jìn)入新選中的進(jìn)程繼續(xù)運(yùn)行。在采用信號(hào)量機(jī)制時(shí),可通過(guò)執(zhí)行 V操作,將處于阻塞狀態(tài)的驅(qū)動(dòng)(程序)進(jìn)程喚醒。? 工作方式的設(shè)置,如利用 RS232接口進(jìn)行異步通信前應(yīng)先設(shè)置波特率、奇偶校驗(yàn)方式、停止位、數(shù)據(jù)字節(jié)長(zhǎng)度等 Silberschatz, Galvin, and Gagne ?1999 設(shè)備驅(qū)動(dòng)程序的處理過(guò)程? 將用戶和上層軟件對(duì)設(shè)備控制的抽象要求轉(zhuǎn)換成對(duì)設(shè)備的具體要求,如對(duì)抽象要求的盤塊號(hào)轉(zhuǎn)換為磁盤的盤面、磁道及扇區(qū)。? 驅(qū)動(dòng)程序與 I/O設(shè)備所采用的控制方式密切相關(guān)。– 由驅(qū)動(dòng)程序向設(shè)備控制器發(fā)出 I/O命令,啟動(dòng)分配到的 I/O設(shè)備,完成指定的 I/O操作。deadlock( 小心死鎖)Silberschatz, Galvin, and Gagne ?1999 ? 各類設(shè)備的差別:– 數(shù)據(jù)傳輸率– 應(yīng)用– 控制的復(fù)雜性– 傳輸單位– 數(shù)據(jù)表示– 出錯(cuò)條件 Silberschatz, Galvin, and Gagne ?
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1