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

正文內(nèi)容

設(shè)備管理概述(編輯修改稿)

2025-03-11 00:18 本頁面
 

【文章內(nèi)容簡介】 /2023 46 ? 雙緩沖( Double Buffer) ? 進一步加快輸入和輸出速度,提高設(shè)備利用率制,也稱緩沖對換( Buffer Swapping) ? 輸入:數(shù)據(jù)送入第一緩沖區(qū),裝滿后轉(zhuǎn)向第二緩沖區(qū)。 ? 讀出: OS從第一緩沖區(qū)中移出數(shù)據(jù),送入用戶進程,再由 CPU對數(shù)據(jù)進行計算。 ?兩個緩沖區(qū), CPU和外設(shè)不再針對一塊交替 ?可能實現(xiàn) 連續(xù)處理 無需等待對方。前提是CPU和外設(shè)對一塊數(shù)據(jù)的處理速度相近。而如下圖情況 CPU仍需等待慢速設(shè)備。 T3 I/O CPU T1 C1 T2 C2 C3 T4 C4 可適當減少緩沖區(qū)大小,匹配兩者速度 2/8/2023 47 * 雙緩沖還適合雙向通訊 緩沖區(qū) A機 緩沖區(qū) B機 單緩沖 發(fā)送 緩沖區(qū) 接收 緩沖區(qū) A機 接收 緩沖區(qū) 發(fā)送 緩沖區(qū) B機 雙緩沖 ? 僅配置單緩沖,任意時刻都只能實現(xiàn)單方向的數(shù)據(jù)傳輸,而不允許雙方同時向?qū)Ψ桨l(fā)送數(shù)據(jù)。 ? 為實現(xiàn)雙向數(shù)據(jù)傳輸,需為兩臺機器中的通訊進程都設(shè)置兩個緩沖區(qū)。定義不同功能:一個用作發(fā)送緩沖區(qū),另一個用作接受緩沖區(qū)。 2/8/2023 48 多緩沖引入 ? I/O與 CPU速度基本相匹配,采用雙緩沖能獲得較好的效果,基本上能并行操作。 ? 但,若兩者的速度相差甚遠,雙緩沖的效果仍不夠理想; 為進一步協(xié)調(diào)速度差,可增加緩沖區(qū)數(shù)量,同時進行一定的多緩沖管理入和出的同步。 引入多緩沖機制。組織形式:循環(huán)緩沖、緩沖池。 2/8/2023 49 2)循環(huán)緩沖 (circular buffer) 1 6 2 5 3 4 R R G G C G Nexti Nextg current ?設(shè)置多塊緩沖區(qū) ?用循環(huán)結(jié)構(gòu)組織,只供兩個相關(guān)進程使用 ?順一個方向放入或取出 循環(huán)緩沖的組成示意圖 2/8/2023 50 ①循環(huán)緩沖的組成 ? 多個緩沖區(qū)。 大小相同,三種類型: ? 預(yù)備裝輸入數(shù)據(jù)的空緩沖區(qū) R ? 裝滿數(shù)據(jù)的緩沖區(qū) G ? 計算進程正在使用的現(xiàn)行工作緩沖區(qū) C ? 多個指針。 ? 指示正在使用的緩沖區(qū) C的指針 Current ? 指示 計算進程 下一個可取的緩沖區(qū) G的指針Nextg ? 指示 輸入進程 下次可放的緩沖區(qū) R的指針Nexti 2/8/2023 51 ②循環(huán)緩沖區(qū)的使用 ? 計算進程 (CPU)和輸入進程 (I/O操作 )可利用兩個過程來使用循環(huán)緩沖區(qū)。 ? 主要就是利用指針,操作上述不同類型緩沖區(qū) Getbuf過程: 使用緩沖區(qū)時,可調(diào)用該過程 ?計算進程取: current=Nextg,G— C, nextg下移一個。 ?輸入進程放: current=nexti, R— C, nexti下移一個 Releasebuf過程: 計算進程: CR 輸入進程: CG 一個時段只能用于輸入或輸出,不能同時雙向通信。 2/8/2023 52 ③進程同步 ? 兩個進程的控制:輸入進程和計算進程并行執(zhí)行,如何控制相應(yīng)的兩個指針不斷順時針方向移動,這樣就可能出現(xiàn)兩種情況: 1. Nexti趕上 Nextg。意味著輸入速度大于計算速度,緩沖區(qū)滿,只能阻塞輸入進程等計算進程取,此情況稱為系統(tǒng)受計算限制。 2. Nextg趕上 Nexti。意味著輸入速度低于計算速度,緩沖區(qū)空,只能阻塞計算進程等輸入進程放,此情況稱為系統(tǒng)受 I/O限制。 2/8/2023 53 3)緩沖池( Buffer Pool) 循環(huán)緩沖的問題 ? 不能同時雙向通訊 ? 利用率不高。 緩沖區(qū)是 專用緩沖 。(每個進程都要維護自己的一個循環(huán)緩沖區(qū)),使用有剩余時也不給其他進程使用,消耗大量內(nèi)存空間。 ? 系統(tǒng)并發(fā)程序很多時,許多這樣的循環(huán)緩沖需要管理,比較復(fù)雜。 為提高緩沖區(qū)的利用率,目前廣泛流行緩沖池,在池中設(shè)置多個可供若干個進程共享的緩沖區(qū)。 2/8/2023 54 ? 系統(tǒng)將多個緩沖區(qū)形成一個緩沖池。 ? 池中緩沖區(qū)為系統(tǒng)中所有的進程共享使用 (如 UNIX系統(tǒng)在塊設(shè)備管理中設(shè)置了一個 15個緩沖區(qū)組成的緩沖池) ? 組織形式:隊列及隊列指針 i n queueem pt y queueout queueBu ff er P o olD evi ce C P U2/8/2023 55 ①緩沖池的組成 ? 對于既可輸入又可輸出的公用緩沖池,至少應(yīng)含有下列三種類型的緩沖區(qū): 1. 空緩沖區(qū); 2. 裝滿輸入數(shù)據(jù)的緩沖區(qū); 3. 裝滿輸出數(shù)據(jù)的緩沖區(qū); 為方便管理,將上述類型相同的緩沖區(qū)連成隊列 ?空緩沖區(qū)隊列 (所有進程都可用) ?輸入隊列 ( n個進程有各自的隊列) ?輸出隊列 ( n個進程有各自的隊列) *(隊列長度不固定,根據(jù)進程實際情況靈活變動,需要多少用多少) 2/8/2023 56 ? 工作狀態(tài)決定了 current有四種工作緩沖區(qū): 狀態(tài) 操作者 ?收容輸入數(shù)據(jù)的工作緩沖區(qū); hin ?提取輸入數(shù)據(jù)的工作緩沖區(qū); sin ?收容輸出數(shù)據(jù)的工作緩沖區(qū); hout ?提取輸出數(shù)據(jù)的工作緩沖區(qū); sout cpu 設(shè)備 緩沖 2/8/2023 57 ②緩沖區(qū)的工作方式 ? 四種工作方式: 1. 收容輸入: Getbuf(emq),hin;輸入數(shù)據(jù)填入一空緩沖區(qū); Putbuf(inq,hin) 2. 提取輸入: Getbuf(inq),sin;從輸入緩沖隊列中取出一數(shù)據(jù)區(qū)的內(nèi)容; Putbuf(emq,sin) 3. 收容輸出: Getbuf(emq),hout;輸出數(shù)據(jù)填入一空緩沖區(qū); Putbuf(outq,hout) 4. 提取輸出: Getbuf(outq),sout;從輸出緩沖隊列中取一數(shù)據(jù)區(qū)的內(nèi)容; Putbuf(emq,sout) 緩沖池 hin sout 磁盤 打印機 sin hout 內(nèi)存 用戶 程序 emq … inq … outq … 2/8/2023 58 緩沖區(qū)的使用 ? Getbuf(隊列,工作區(qū)) ? Putbuf(隊列,工作區(qū)) ? 同步控制 ?每隊設(shè)置一個互斥信號量 MS; ?判斷每個隊列是否有可用的緩沖區(qū),需一個資源信號量 RS。獲取緩沖區(qū)時 P( RS),釋放時V( RS)。 緩沖池:可雙向緩沖;緩沖區(qū)整體利用率高。 2/8/2023 59 ?多道環(huán)境下,系統(tǒng)中設(shè)備是所有進程共享的。要防止無序競爭 ,提高外設(shè)資源的利用率。 ?所以,除解決基本設(shè)備處理問題,還需由 OS進行統(tǒng)一、合理的設(shè)備分配。 1)數(shù)據(jù)結(jié)構(gòu) 2)設(shè)備分配需考慮的因素 3)設(shè)備的分配過程 ?設(shè)備獨立性 ?I/O系統(tǒng)的軟件層次 4) Spooling虛擬技術(shù) 設(shè)備分配 2/8/2023 60 1)設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu) ? 記錄相應(yīng)設(shè)備或控制器的 狀態(tài), 及對設(shè)備或控制器進行 控制 所需的 信息 。所需數(shù)據(jù)結(jié)構(gòu): ?設(shè)備控制表 ?控制器控制表 ?通道控制表 ?系統(tǒng)設(shè)備(總)表 2/8/2023 61 ①設(shè)備控制表( DCT) ? 系統(tǒng)為每一設(shè)備都配置一張 ? 記錄本設(shè)備的情況。 設(shè)備類型 type 設(shè)備標識符 deviceid 設(shè)備狀態(tài):等待 /不等待 忙 /閑 指向控制器表的指針 重復(fù)執(zhí)行次數(shù)或時間 設(shè)備隊列的隊首指針 DCT 1 DCT 2 DCT n 設(shè)備控制表集合 指向因請求該設(shè)備而阻塞的 進程的 PCB組 成的隊列。 2/8/2023 62 ②控制器控制表( COCT) 控制器標識符: controllerid 控制器狀態(tài):忙 /閑 與控制器連接的通道表指針 控制器隊列的隊首指針 控制器隊列的隊尾指針 ? 系統(tǒng)為每一控制器都配置一張 ? 記錄本控制器的情況。 ③通道控制表 CHCT 通道標識符: channelid 通道狀態(tài):忙 /閑 與通道連接的控制器表首址 通道隊列的隊首指針 通道隊列的隊尾指針 2/8/2023 63 ④系統(tǒng)設(shè)備表( SDT) 表目 1 表目 i 設(shè)備類型 設(shè)備標識符 DCT 驅(qū)動程序入口 ? 系統(tǒng)根據(jù)進程對設(shè)備的請求進行設(shè)備分配的過程: IO請求中的 設(shè)備名 ? SDT ? DCT ? COCT ? CHCT 細節(jié)考慮 2/8/2023 64 ? 設(shè)備固有屬性:獨占、共享、獨占但可虛擬。根據(jù)屬性采取互斥、次序調(diào)度、虛擬等不同分配策略。 ? 設(shè)備分配算法(對不同進程的設(shè)備請求序列,如何進行選擇),常采用兩種: ?FCFS ?優(yōu)先級高者優(yōu)先 ? 設(shè)備分配的安全性:進程開始 I/O后就阻塞直到 I/O完成。不“請求和保持”(安全的);允許連續(xù) I/O請求,是不安全的,此類分配方式需進行安全性檢查。 ? 設(shè)備獨立性 ?用戶 IO請求
點擊復(fù)制文檔內(nèi)容
教學課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1