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

正文內(nèi)容

第三章進(jìn)程管理-文庫吧資料

2024-11-01 14:42本頁面
  

【正文】 V(S)。 R∶ =(R+1) mod n。 P(S)。 第三章 進(jìn)程管理 go to L1 end。 P∶ =(P+1) mod n。 P(S)。 cobegin process producer i(i=1, 2, ……, m) begin L1: produce a product。 S n∶ =n。 S, S n, S 0: semaphore。n1] of integer。 生產(chǎn)者 — 消費(fèi)者進(jìn)程描述如下: 第三章 進(jìn)程管理 第三章 進(jìn)程管理 生產(chǎn)者和消費(fèi)者可按如下方式并發(fā)執(zhí)行: begin B: array[ 0 為此 , 我們利用兩個私用信號量 S1和 S2, 其初值均為 0, 信號量 S1表示緩沖區(qū)是否有卡片信息 , 信號量 S2表示緩沖區(qū)信息是否被取走 。 進(jìn)程 B收到信號后 , 取走卡片信息進(jìn)行加工處理 。 進(jìn)程 A負(fù)責(zé)從卡片輸入機(jī)讀入卡片送到緩沖區(qū) , 進(jìn)程 B取走緩沖區(qū)中的卡片信息進(jìn)行加工處理 。 第三章 進(jìn)程管理 3. 利用信號量實(shí)現(xiàn)進(jìn)程間的同步 一般來說, 信號量初值為 0, 兩個進(jìn)程之間的同步模型如下: 進(jìn)程 P1 進(jìn)程 P2 L1: P(S) L2: V(S) 第三章 進(jìn)程管理 例 1 用信號量實(shí)現(xiàn)司機(jī)和售票員的同步 。 coend。 V(S) end else begin V(S)。 if Ri≥1 then begin Ri∶ =Ri1。 S∶ =1 cobegin 第三章 進(jìn)程管理 Process P i(i=1, 2, …, n) begin 按旅客訂票要求找到 xk。 設(shè)P1, P2, …, Pn表示各售票處的處理進(jìn)程 , R1, R2, …, Rn表示各進(jìn)程執(zhí)行時(shí)所用的工作單元 。 第三章 進(jìn)程管理 例 2 設(shè)一民航航班售票系統(tǒng)有 n個售票處 。 coend。 count∶ =R2。 R2∶ =count。 process P2 R2: register。 count∶ =R1。 第三章 進(jìn)程管理 R1∶ =count。 cobegin process p1 R1: register。 count∶ =0。 對此 , 可寫出如下程序: begin count: integer。 例如進(jìn)程 P1 和進(jìn)程 P2 按如下安排 , 即可實(shí)現(xiàn)互斥: 進(jìn)程 P1 進(jìn)程 P2 P(S) P(S) S1 S2 V(S) V(S) 第三章 進(jìn)程管理 例 1 前面例子中的公用變量 count, 也是一個臨界資源 。 設(shè) S為兩進(jìn)程互斥的公用信號量 , 初值賦予 1, 表明該臨界資源未被占用 。 if S≤0 then R(S) end。 {P} Procedure V(Var S:Semaphore)。 begin S∶ =S1。 ② 若 S0, 則調(diào)用 V(S) ③ 若 S≤0, 從等待信號量 S的阻塞隊(duì)列中喚醒頭一個進(jìn)程 , 然后調(diào)用 V(S)的進(jìn)程繼續(xù)運(yùn)行 。 ② 若 S≥0, 則調(diào)用 P(S) ③ 若 S0, 則調(diào)用 P(S)的進(jìn)程被阻塞 , 并把它插入到等 待信號量 S的阻塞隊(duì)列中 。 公用信號量通常用于實(shí)現(xiàn)進(jìn)程之間的互斥 ,初值為 1, 它所聯(lián)系的一組并發(fā)進(jìn)程均可對其實(shí)施 P、 V操作;私用信號量一般用于實(shí)現(xiàn)進(jìn)程間的同步 , 初值為 0 或?yàn)槟硞€正整數(shù) n, 僅允許擁有它的進(jìn)程對其實(shí)施 P操作 。 操作系統(tǒng)利用信號量對進(jìn)程和資源進(jìn)行控制和管理 。 交通管理人員利用信號燈的顏色 (紅 、 綠 )實(shí)現(xiàn)交通管理 。 開鎖原語 UNLOCK (W) MVI W, X′00′ 來完成, MVI將一個全 0 的字節(jié)送入 W中。 即當(dāng) W不為 0 時(shí)轉(zhuǎn)移到上一條指令 TS繼續(xù)測試 , 否則停止測試 , 進(jìn)入臨界區(qū) 。 該指令的功能是按第二操作域指出的地址從主存中取出一個字節(jié) , 其最高位 (最左邊的位 )為 0 時(shí) , 置條件碼為 0;否則置條件碼為 1, 并將該字節(jié)的所有位均置 1。 第三章 進(jìn)程管理 在有些系統(tǒng)中 , 上述的加鎖 、 開鎖操作可用機(jī)器硬件指令完成 。 加鎖原語用 LOCK (W)表示 , L: if W=1 then go to L else W∶ [KG*8]= 1。鎖有兩種狀態(tài): W=0 表示鎖已打開; W=1 表示鎖被關(guān)閉 。 (3) 進(jìn)程在臨界區(qū)內(nèi)逗留應(yīng)在有限時(shí)間范圍內(nèi)。 換句話說 , 它們不應(yīng)相互等待而致使誰都不能進(jìn)入 。 count∶ =R2。 count∶ =R1。 P2: R2∶ =count。 其中, R1 和 R2 是處理機(jī)的兩個通用寄存器。 count∶ =R1。 R1∶ =R1+1。 第三章 進(jìn)程管理 圖 進(jìn)程 P1 和 P2 間的同步 取用 P 2 計(jì)算結(jié)果計(jì)算 f u n c 1 ( x )進(jìn)程 P2 算完 f u n c 2 ( y )計(jì)算 f u n c 2 ( y )置計(jì)算完標(biāo)志終止進(jìn)程 P1進(jìn)程 P2YN第三章 進(jìn)程管理 2. 進(jìn)程間的互斥 圖 資源互斥使用例 進(jìn)程 A① 請求資源 R② 釋放資源 R進(jìn)程 B② 請求資源 R④ 釋放資源 RR使用 R(阻塞)喚醒分配拒絕第三章 進(jìn)程管理 又如 , 設(shè)有兩個進(jìn)程 P P2, 它們共享同一變量 count, P P2 P1: R1∶ =count。 第三章 進(jìn)程管理 圖 司機(jī)和售票員的同步 正常行車開 車到站停車售票開車門關(guān)車門司機(jī) 售票員第三章 進(jìn)程管理 又如 , 有用戶作業(yè)程序 , Z=func 1(x)*func 2(y) 其中 func 1(x), func 2(y)均是一個復(fù)雜函數(shù) , 為了加快本題的計(jì)算速度 , 可用兩個進(jìn)程 P P2 各計(jì)算一個函數(shù) 。 一個進(jìn)程到達(dá)了這些點(diǎn)后 , 除非另一進(jìn)程已完成了某些操作 , 否則就不得不停下來等待這些操作的結(jié)束 。也就是說 , 進(jìn)程之間是在異步環(huán)境下運(yùn)行的 , 每個進(jìn)程都以各自獨(dú)立的 、 不可預(yù)知的速度向運(yùn)行的終點(diǎn)推進(jìn) 。 (4) 一個私用的存儲區(qū)。 (2) 描述處理機(jī)狀態(tài)的一組寄存器內(nèi)容 。 線程由對象管理程序創(chuàng)建或刪除 。 (4) 至少有一個執(zhí)行進(jìn)程。 (3) 系統(tǒng)資源 , 例如信號量 、 通信端口 、 文件等 。 第三章 進(jìn)程管理 WindowsNT中的進(jìn)程和線程 1. Windows NT (1) 一個可執(zhí)行的程序 , 它定義了初始代碼和數(shù)據(jù) 。 (4) 處理機(jī)調(diào)度的基本單位是線程 , 線程之間競爭處理機(jī) , 真正在處理機(jī)上運(yùn)行的是線程 。 (2) 進(jìn)程的多線程都在進(jìn)程的地址空間活動 。 1. 線程的定義 第三章 進(jìn)程管理 2. 進(jìn)程和線程的關(guān)系 (1) 線程是進(jìn)程的一個組成部分 。 在具有多線程機(jī)制的操作系統(tǒng)中 , 處理機(jī)調(diào)度的基本單位不是進(jìn)程而是線程 。 (5) 進(jìn)程是一個獨(dú)立的運(yùn)行單位 , 也是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個獨(dú)立單位 。 (3) 程序可以作為一種軟件資源長期保留 , 而進(jìn)程是程序的一次執(zhí)行過程 , 是暫時(shí)的 。 第三章 進(jìn)程管理 2. 進(jìn)程和程序的區(qū)別 (1) 進(jìn)程是程序的一次執(zhí)行 , 屬于一種動態(tài)概念 , 而程序是一組有序的指令 , 是一種靜態(tài)概念 。 在一個多道程序并發(fā)執(zhí)行的系統(tǒng)中 , 一個作業(yè)就是獨(dú)立于其它作業(yè)的工作單位 。 (3) 短作業(yè)的時(shí)間片短,長作業(yè)的時(shí)間片長。 第三章 進(jìn)程管理 (2) 時(shí)間片的長短取決于優(yōu)先級的高低 。 系統(tǒng)根據(jù)此時(shí)就緒隊(duì)列中的進(jìn)程數(shù)重新計(jì)算 q值 , 然后開始下一輪循環(huán) 。 在這種方式中 , 每一輪開始時(shí) , 系統(tǒng)便根據(jù)就緒隊(duì)列中已有的進(jìn)程數(shù) , 計(jì)算一次 q值 , 然后進(jìn)行輪轉(zhuǎn) 。 為進(jìn)一步改變輪轉(zhuǎn)法的調(diào)度性能應(yīng)作兩方面改進(jìn): ① 將固定時(shí)間片改為可變時(shí)間片; ② 將單就緒隊(duì)列改變?yōu)槎嗑途w隊(duì)列 。 第三章 進(jìn)程管理 (1) (2) (3) (4) 計(jì)算機(jī)的處理能力 , 計(jì)算機(jī)的速度越高 , 時(shí)間片就可越短 。 換言之 , 過小的 q值會導(dǎo)致系統(tǒng)開銷的增加 。 這對于短作業(yè) ,對于 I/O操作多的作業(yè)都很不利 。 顯然 , 時(shí)間片的大小對進(jìn)程調(diào)度有很大影響 。 2. 動態(tài)優(yōu)先級法 第三章 進(jìn)程管理 3. 時(shí)間片輪轉(zhuǎn)法 在時(shí)間片輪轉(zhuǎn)法中 , 時(shí)間片是一個重要的參數(shù) 。 (3) 按作業(yè)到達(dá)時(shí)間確定。 進(jìn)程調(diào)度算法基本分為兩大類: 優(yōu)先數(shù)法和時(shí)間片輪轉(zhuǎn)法, 第三章 進(jìn)程管理 4. 進(jìn)程隊(duì)列的組織 P C B P C B P C B P C B P C B P C B P C B( a )運(yùn)行隊(duì)列 P C B0就緒隊(duì)列P C B P C B P C B0阻塞隊(duì)列 1P C B P C B P C B0阻塞隊(duì)列 2P C B P C B0( b )圖 3.8 PCB的組織方式 第三章 進(jìn)程管理 常用的進(jìn)程調(diào)度算法 1. 靜態(tài)優(yōu)先級法 (1) 按進(jìn)程類型確定。 例如 , 有的算法有利于系統(tǒng)資源的充分作用 , 有的算法有利于系統(tǒng)處理能力的充分發(fā)揮 , 有的算法有利于公平地響應(yīng)用戶的服務(wù)請求 , 如此等等 。 第三章 進(jìn)程管理 3. 進(jìn)程調(diào)度算法的選擇 進(jìn)程調(diào)度的主要任務(wù)就是按照一定的調(diào)度算法從就緒隊(duì)列中選出一個進(jìn)程 , 把 CPU分配給它 。 通常有兩種進(jìn)程調(diào)度方式: (1) 非剝奪方式 。 (5) 分配給該進(jìn)程運(yùn)行的時(shí)間片已用完。 (3) 現(xiàn)運(yùn)行進(jìn)程執(zhí)行某種原語操作 , 如 P操作 、 阻塞原語等 ,進(jìn)入阻塞狀態(tài) 。 (1) 現(xiàn)運(yùn)行進(jìn)程運(yùn)行結(jié)束或者因任務(wù)完成而正常結(jié)束 , 或者因出現(xiàn)錯誤而異常結(jié)束 。 (3) 分配處理機(jī)給進(jìn)程。 (2) 確定調(diào)度算法 , 決定把處理機(jī)分配給哪個進(jìn)程和分配多長時(shí)間 。 第三章 進(jìn)程管理 3. 進(jìn)程調(diào)度程序的功能 (1) 記住系統(tǒng)中所有進(jìn)程的狀態(tài) 、 優(yōu)先數(shù)和資源需求情況 。 進(jìn)程調(diào)度稱為 “ 低級 ” 調(diào)度 , 是相對作業(yè)調(diào)度而言的 。 在操作系統(tǒng)中 , 交通控制程序的主要職能是管理進(jìn)程狀態(tài)之間的轉(zhuǎn)變和協(xié)調(diào)進(jìn)程間的通訊 。 他把操作系統(tǒng)中指揮各個進(jìn)程的工作比作一個交通警察 , 而把各個進(jìn)程比作車輛 。 凡是屬于被撤消者自己的 ,
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1