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

正文內(nèi)容

《進程管理》ppt課件-文庫吧

2024-12-26 23:34 本頁面


【正文】 2/2/6 太湖學(xué)院信機系 27 進程控制 為了防止操作系統(tǒng)及關(guān)鍵數(shù)據(jù)如 PCB等,受到用戶程序有意或無意的破壞,通常將處理機的執(zhí)行狀態(tài)分成系統(tǒng)態(tài)和用戶態(tài)兩種: ( 1)系統(tǒng)態(tài),又稱核心態(tài)。它具有較高的特權(quán),能執(zhí)行一切指令,訪問所有寄存器和存儲區(qū)。 ( 2)用戶態(tài),具有較低特權(quán)的執(zhí)行狀態(tài),它只能執(zhí)行規(guī)定的指令,訪問指定的寄存器和存儲區(qū)。 OS內(nèi)核通常是運行在系統(tǒng)態(tài)的,而進程控制是由 OS內(nèi)核實現(xiàn)的。 OS內(nèi)核: 運行在系統(tǒng)態(tài)的,包括對進程操作和控制的最基本的原語和數(shù)據(jù)結(jié)構(gòu)。 2022/2/6 太湖學(xué)院信機系 28 概念 進程控制: 就是系統(tǒng)使用一些具有特定功能的程序段來創(chuàng)建、撤銷進程以及完成各進程狀態(tài)間的轉(zhuǎn)換,從而達到多進程高效率并發(fā)執(zhí)行和協(xié)調(diào),實現(xiàn)資源共享的目的。 原語 ( Atomic Operation):系統(tǒng)態(tài)下執(zhí)行的某些具有特定功能的程序段稱為原語。 機器指令級 :不可分割,不允許初始化 功能級:不允許并發(fā)執(zhí)行 (原語本身由若干條指令組成,要么全做,要么全不做)在 OS中,大都把進程控制用程序段做成原語。 比如:創(chuàng)建原語、撤消原語、阻塞原語、喚醒原語、掛起原語、激活原語 2022/2/6 太湖學(xué)院信機系 29 進程的創(chuàng)建 一、進程樹 (圖 ): ? 描述了進程的家族關(guān)系 ? 子進程可繼承父進程的資源,撤消時應(yīng)歸還給父進程,父進程在撤消時也 應(yīng)該撤消全部子進程。(遞歸) A B E K D F G H M L J I C 2022/2/6 太湖學(xué)院信機系 30 二、引起創(chuàng)建進程的事件: : ? 為終端用戶建立一進程 :(不是進程調(diào)度) ? 為被調(diào)度的作業(yè)建立進程 : ? 如要打印時建立打印進程 : ? 由應(yīng)用程序建立多個進程 2022/2/6 太湖學(xué)院信機系 31 進程的創(chuàng)建 (2) 三、進程的創(chuàng)建:( creat原語) ? 1. 申請空白 PCB(一個系統(tǒng)的 PCB是有限的) ? 2. 為新進程分配資源(不同于一般的分配, PCBLIST在一個特殊區(qū)域) ? 3. 初始化 PCB ? 4. 將新進程插入就緒隊列。 2022/2/6 太湖學(xué)院信機系 32 創(chuàng)建原語 Procedure create (n,s0,P0,m0,R0,acc) begin i:=get internal name(n)。 獲得內(nèi)部名 :=n。 填外部名 := P0。 填優(yōu)先級表 := s0。 填 CPU初始狀態(tài) := m0。 填寫主存區(qū)域 := R0。 填寫資源清單 :=readys。 填寫進程狀態(tài) j:=EP。 獲取調(diào)用者內(nèi)部標(biāo)識 :=j。 填入 i進程的父進程 j :=φ。 i的家族指針為空 :=i。 把 i填入其父進程 PCB的家族指針處 :=RQ。 i所在狀態(tài)隊列首指針 insert(RQ,i)。 把 i進程插入 RQ隊尾 end ?2022/2/6 太湖學(xué)院信機系 33 進程的撤消(終止) (一)、引起進程撤消(終止)的事件 :如 Halt、 logs off :如 Protect error、 overtime等 : ? kill進程; ? ; ? 。 (二)、進程的終止過程 ( 1)檢查進程狀態(tài); ( 2)運行態(tài) ―― 終止,且置調(diào)度標(biāo)志為真。 ( 3)有無子孫需終止。 ( 4)歸還資源給其父進程或系統(tǒng)。 ( 5)從 PCB隊列中移出 PCB。 34 撤消原語 Procedure destroy(n) begin sched:=false。 i:=n。 //獲取進程內(nèi)部名; kill(i)。 如果 sched為真,則轉(zhuǎn)調(diào)度程序,否則繼續(xù); end 2022/2/6 太湖學(xué)院信機系 35 Procedure kill(i) begin if :=“Running” then begin stop(i) 。sched := true end。 remove ( ,i)。 將被撤消進程 i從 的隊列中移去 for all s∈ do kill(s)。 for all r∈ ( ∪ ) do if owend(r) then insert( ,)。 屬于父進程資源歸還且插入父進程資源清單 for all R∈ created resources(i) do remove descriptor(R)。 撤消自己的清單資源歸還系統(tǒng) remove process control block。 end 2022/2/6 太湖學(xué)院信機系 36 進程的阻塞與喚醒 (一)、引起進程阻塞和喚醒的事件 ,如問系統(tǒng)請求打印。 :如該操作和請求該操作的進程需同步運行(即非異步操作)。 :如進程 A寫,進程 B讀,則 A未寫完 B不能讀。 。 (二)、進程阻塞過程: ? 是進程自身的一種主動行為 block原語 ,修改 PCB入阻塞隊列(一個或多個),并轉(zhuǎn)調(diào)度。 2022/2/6 太湖學(xué)院信機系 37 Procedure block begin i:=EP。從執(zhí)行進程的指針 EP獲得調(diào)用者內(nèi)部標(biāo)識符 i。 stop(i)。 :=“blocka”。 :=WQ (r)。填寫阻塞隊列首指針 insert (WQ (r) ,i)。把 i插入 WQ隊尾; scheduler。轉(zhuǎn)調(diào)度程序 end 2022/2/6 太湖學(xué)院信機系 38 進程的阻塞與喚醒 (2) (三)、喚醒過程 ? 其它相關(guān)進程完成。 ? wakeup原語 ? 將目標(biāo)進程移出等待隊列,修改 PCB,移入就緒隊列 ? 可見,有 block原語,在其它進程中就應(yīng)有 wakeup原語。 2022/2/6 太湖學(xué)院信機系 39 Procedure wakeup (n) begin i:=獲取 n進程的內(nèi)部名; remove( WQ(r) ,i);把 i進程從等待 r而受阻塞隊列中摘除; :=“就緒”;置 i進程為“就緒”狀態(tài) :=RQ。把 i進程插入就緒隊列; insert(RQ,i)。 continue。 end 2022/2/6 太湖學(xué)院信機系 40 進程的掛起與激活 ? 一 、 進程的掛起過程 ? 由進程自己或其父進程調(diào) suspend原語完成,將該進程 PCB移到指定區(qū)域,注意狀態(tài)的改變,有可能要重新調(diào)度。 掛起方式: 把掛起原語調(diào)用者本身掛起,即自己掛起自己 掛起某個標(biāo)識符的進程 將某個指定標(biāo)識符的進程及其全部或部分子孫掛起用意保存 n進程的 PCB副本的內(nèi)存區(qū),以備參考 2022/2/6 太湖學(xué)院信機系 41 Procedure suspend (n ,a) begin i:=get internal name(n)。 s:=。 if s=“Running” then stop(i)。 a:=copy PCB(i)。 := if s=“blocka” then “blocks” else “readys”。 if s=“Running” then scheduler else continue。 end 2022/2/6 太湖學(xué)院信機系 42 二、進程的激活過程 ? active原語(如在外存,調(diào)入內(nèi)存,改變狀態(tài),根據(jù)情況看是否調(diào)度,如搶先或非搶先)。 阻塞、喚醒一般由 OS實現(xiàn),而掛起與激活可由用戶干預(yù)。 激活方式: 激活指定標(biāo)識符的 Process 激活某 Process及其子孫 當(dāng)激活后的 Process處于“ readys”狀態(tài)時,將引起新調(diào)度,這種情況一般時當(dāng)系統(tǒng)中無可調(diào)度的就緒進程時采用 2022/2/6 太湖學(xué)院信機系 43 Procedure active name(n) begin i:=get internal name(n)。 if =“readys” then “readya” else “blocka”。 if =“readya” then scheduler else continue。 end 2022/2/6 太湖學(xué)院信機系 44 進程的互斥 進程的同步 信號量及 P、 V操作。 (解決進程同步互斥問題) 2022/2/6 太湖學(xué)院信機系 45 相交進程:指多個并發(fā)進程在邏輯上的某種聯(lián)系 無關(guān)進程:在邏輯上無任何聯(lián)系的進程 直接作用和間接作用 直接作用: 進程間的相互聯(lián)系是有意識的安排的,進程間密切聯(lián)系。直接作用只發(fā)生在相交進程間 間接作用: 進程間要通過某種中介發(fā)生聯(lián)系,是無意識安排的,可發(fā)生在相交進程之間,也可以發(fā)生在無關(guān)進程之間。 2022/2/6 太湖學(xué)院信機系 46 進程間的關(guān)系表 相互感知的程度 交互關(guān)系 一個進程對其他進程的影響 相互不感知(完全不了解其他進程的存在) 競爭( petition) 一個進程的操作對其他進程的結(jié)果無影響 間接感知(雙方都與第三方交互:如共享資源) 通過共享進行協(xié)作 一個進程的結(jié)果依賴于從其他進程獲得的信息 直接感知(雙方直接交互:如通信) 通過通信進行協(xié)作(大批量的數(shù)據(jù)傳遞) 一個進程的結(jié)果依賴于從其他進程獲得的信息 2022/2/6 太湖學(xué)院信機系 47 進程同步(直接作用) 進程的同步 : synchronism 指系統(tǒng)中多個進程中發(fā)生的事件存在某種時序關(guān)系 , 需要相互合作 , 共同完成一次任務(wù) , 具體說 , 一個進程執(zhí)行到某一點時 , 要求另一伙伴進程為它提供消息 , 在未獲得消息之前 , 該進程處于等待狀態(tài) , 獲得消息后被喚醒
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1