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

正文內(nèi)容

計算機操作系統(tǒng)9-unix系統(tǒng)內(nèi)核結(jié)構(gòu)(ppt96)-經(jīng)營管理(編輯修改稿)

2025-09-19 17:21 本頁面
 

【文章內(nèi)容簡介】 信號量表是信號量的結(jié)構(gòu)數(shù)組 。 在系統(tǒng) Ⅴ 中 , 每個信號量用一個信號量結(jié)構(gòu)表示 。 其中 , 包括信號量值 semval及最近一次對信號量進行操作的進程標識符 sempid、 等待該信號量值增加的進程數(shù)等 。 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 2) 信號量集表 s e m 0s e m 1s e m 2 0s e m 3 1s e m 4 2s e m 5 3s e m 6s e m 7s e m 8 0s e m 9 1s e m 1 0 2s e m 1 1 0…信 號 量 表信 號 量 集 表信號量集信號量集圖 108 信號量集表與信號量表 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 3. 系統(tǒng)調(diào)用 在信號量機制中 , 同樣也提供了若干條系統(tǒng)調(diào)用 , 分別用于對信號量執(zhí)行各種操作 。 1) semget( ) 用戶可利用該系統(tǒng)調(diào)用來建立信號量集 。 用戶應(yīng)提供信號量的名字 、 信號量集中信號量的數(shù)目等 。 若信號量集的建立成功 , 將返回信號量集的描述符 semid。 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 2) semop( ) 該系統(tǒng)調(diào)用可用來對信號量集進行操作 。 用戶需提供信號量集的描述符 、 信號量的編號 , 即信號量在信號量集中的序號 , 以及所要施加操作的操作數(shù) semop。 內(nèi)核根據(jù) semop來改變信號量的值 。 當 semop為正值時 , 便將該正值加到信號量的值上 。 當 semop為負值時 , 若信號量的值大于 semop的絕對值 , 應(yīng)將該負值加到信號量值上; 否則 , 操作失敗 , 內(nèi)核將已經(jīng)操作過的信號量恢復(fù)到該系統(tǒng)調(diào)用開始執(zhí)行時的值 。 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 存 儲 器 管 理 請求調(diào)頁管理的數(shù)據(jù)結(jié)構(gòu) 1. 頁表和磁盤描述表 1) 圖 109 頁表項和磁盤描述表項 物理頁號 年齡 寫時拷貝 修改位 訪問位 有效位 保護 ( a)頁表項 對換設(shè)備號 設(shè)備塊號 存儲器類型 ( b)盤塊說明 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 2. 頁框數(shù)據(jù)表和對換使用表 1) 頁狀態(tài): 指示該頁的拷貝是在對換設(shè)備上 , 還是在可執(zhí)行文件中 。 內(nèi)存引用計數(shù): 指出引用該頁面的進程數(shù)目 。 邏輯設(shè)備: 指含有此拷貝的邏輯設(shè)備 , 它可以是對換設(shè)備 , 也可以是文件系統(tǒng) 。 塊號: 當邏輯設(shè)備為對換設(shè)備時 , 這是盤塊號; 而當邏輯設(shè)備為文件系統(tǒng)時 , 這是指文件的邏輯塊號 。 指針 1: 指向空閑頁鏈表中的下一個頁框數(shù)據(jù)表的指針 。 指針 2: 指向散列隊列中下一個頁框數(shù)據(jù)表的指針。 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 圖 1010 頁框數(shù)據(jù)表項及其散列隊列 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 2) 對換使用表 頁表項頁框號 7 9 4磁盤塊 描述項對換設(shè)備 1塊號2 7 4 3引用數(shù) 1對換設(shè) 備 1塊號 2 7 4 3物理頁 7 9 4引用數(shù) 1對換設(shè) 備塊 2 7 4 3對換使 用表項頁框數(shù) 據(jù)表項 7 9 4虛地址1 4 9 3 K圖 1011 四種數(shù)據(jù)結(jié)構(gòu)之間的關(guān)系 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 換頁進程 1. 增加有效頁的年齡 一個頁可計數(shù)的最大年齡 , 取決于它的硬件設(shè)施 。 對于只設(shè)置兩位作為年齡域的頁 , 其有效頁的年齡只能取值為 0、 2和 3。 當該頁的年齡為 0、 2時 , 該頁處于不可換出狀態(tài);而當其年齡達到 3時 , 該頁便為換出狀態(tài) 。 每當內(nèi)存中的空閑頁面數(shù)低于某規(guī)定的低限時 , 核心便喚醒換頁進程 , 由換頁進程去檢查內(nèi)存中的每一個活動的 、 非上鎖的區(qū) , 對所有有效頁的年齡字段加 1。 對于那些其年齡已增至 3的頁 , 便不再加 1,而是將它們換出 。 如果這種頁已被進程訪問過 , 便將其年齡域中的年齡降為 0。 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 2. 對換出頁的幾種處理方式 (1) 若在對換設(shè)備上已有被換出頁的拷貝 , 且該頁的內(nèi)容未被修改 , 此時 , 核心只須將該頁頁表項中的有效位清零 ,并將頁框數(shù)據(jù)表項中的引用計數(shù)減 1, 最后將該頁表項放入空閑頁鏈表中 。 (2) 若在對換設(shè)備上沒有被換出頁的拷貝 , 則換出進程應(yīng)將該頁寫到對換設(shè)備上 。 (3) 雖然在對換設(shè)備上已有換出頁的副本 , 但該頁的內(nèi)容已被修改過 , 此時核心應(yīng)將該頁在對換設(shè)備上原來占有的空間釋放 , 再重新將該頁拷貝到對換設(shè)備上 , 使在對換設(shè)備上的拷貝內(nèi)容總是最新的 。 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 3. 將換出頁面寫到對換設(shè)備上 當在換出頁面鏈表中的頁面數(shù)已達到規(guī)定值時 , 核心應(yīng)將它們換出 。 為此 , 應(yīng)首先為它們分配一個連續(xù)的對換空間 ,以便一起將它們換出; 但如果在對換設(shè)備上沒有足夠大的連續(xù)空間 , 而其空閑存儲空間的總和又大于 64 KB時 , 核心可采取每次換出一頁的方式將它們換出 。 每當核心向?qū)Q設(shè)備上寫一個頁時 , 須首先清除該頁頁表項的有效位 , 并將頁框數(shù)據(jù)表項中的引用計數(shù)減 1。 若引用計數(shù)為 0, 表明已無其它進程再引用該頁 , 核心便將其頁框數(shù)據(jù)表項鏈入空閑頁鏈表的尾部 。 若雖引用計數(shù)不為 0, 表明仍有進程共享該頁 , 但如果該頁已長期未被訪問過 , 則也須將該頁換出 。 最后 , 核心將分配給該頁的對換空間的地址填入相應(yīng)的磁盤描述表項中 , 并將對換使用表中的計數(shù)加 1。 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 請求調(diào)頁 1. 缺頁在可執(zhí)行文件上 2. 缺頁在對換設(shè)備上 3. 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 設(shè) 備 管 理 字符設(shè)備緩沖區(qū)管理 1. 空閑字符緩沖區(qū)隊列 c b l o c k [ 0 ]c _ n e x t c _ n e x t c _ n e x tc b l o c k [ 1 ] c b l o c k [ 2 ]c _ n e x tc b l o c k [ N - 1]c f r e e l i s t圖 1012 空閑字符緩沖區(qū)隊列 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 2. 在字符設(shè)備進行 I/O時 , 內(nèi)核可利用 getcf過程從空閑字符緩沖區(qū)隊列中取得一個空閑緩沖區(qū) , 若隊列空 , 表明已無空閑緩沖區(qū)可提供 , 便返回;否則 , 從隊首取得一個空閑緩沖區(qū) , 并把指向該緩沖區(qū)的指針 bp返回給調(diào)用者 。 由于空閑緩沖區(qū)隊列屬于臨界資源 , 故還須采取互斥訪問措施 , 即 , 在過程開始處 , 將處理機的優(yōu)先級提升為 6, 在取得空緩沖區(qū)之后 , 再恢復(fù)處理機的優(yōu)先級 。 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 3. 設(shè)備的字符緩沖區(qū)隊列 (1) getc過程 。 該過程用于從一個 clist結(jié)構(gòu)的隊首指針所指示的字符緩沖隊列中 , 取出為首的字符 , 然后修改該隊列的可用字符計數(shù)和隊首指針 。 當取完一個緩沖區(qū)中的所有字符時 , 將釋放該緩沖區(qū) 。 該過程的返回值是取出的字符 。 (2) putc過程 。 該過程用于將一個字符 C放入設(shè)備的指定字符緩沖區(qū)隊列的末尾 。 若此時該隊列空 、 或隊列的最后一個緩沖區(qū)已滿 ,且空閑字符緩沖區(qū)隊列也空 , 該過程無法將字符放入隊列中 , 則返回 “ 1”。 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) (3) getcb過程 。 該過程用于從指定的設(shè)備字符緩沖區(qū)隊列中 , 取出第一個緩沖區(qū) , 并將該隊列的可用字符計數(shù)減去第一個緩沖區(qū)中的字符數(shù) , 然后返回指向該緩沖區(qū)的指針 bp。 若該緩沖區(qū)已是該隊列中惟一的緩沖區(qū) , 則置隊尾指針為空 。 (4) putcb過程 。 該過程用于將由 bp所指向的緩沖區(qū)放入指定的設(shè)備字符緩沖區(qū)隊列的末尾 , 然后將該隊列的可用字符計數(shù)加上 bp緩沖區(qū)中的字符數(shù)后返回 。 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 塊設(shè)備緩沖區(qū)管理 1. 盤塊緩沖區(qū)及其首部 圖 1013 緩沖首部 設(shè)備號 塊號 狀態(tài) 緩沖區(qū)指針 散列隊列的前向指針 散列隊列的后向指針 空閑表上的前向指針 空閑表上的后向指針 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 2. 盤塊緩沖池結(jié)構(gòu) b l k n o 0 m o d 4b l k n o 1 m o d 4b l k n o 2 m o d 4b l k n o 3 m o d 428179834 645 9750 1035 99空 閑 表 頭 標圖 1014 空閑隊列 (鏈 )及散列隊列 第十章 UNIX系統(tǒng)內(nèi)核結(jié)構(gòu) 3. 盤塊緩沖區(qū)的分配 (1) getblk( )過程 。 該過程用于從空閑緩沖區(qū)隊列中獲得任一空閑緩沖區(qū) 。 該過程首先檢查空閑塊緩沖隊列是否為空 , 若空 , 便調(diào)用sleep
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1