首頁 考試吧論壇 Exam8視線 考試商城 網絡課程 模擬考試 考友錄 實用文檔 求職招聘 論文下載 | ||
![]() |
2011中考 | 2011高考 | 2012考研 | 考研培訓 | 在職研 | 自學考試 | 成人高考 | 法律碩士 | MBA考試 MPA考試 | 中科院 |
|
![]() |
四六級 | 職稱英語 | 商務英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT 新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學習 | 法語 | 德語 | 韓語 |
|
![]() |
計算機等級考試 | 軟件水平考試 | 職稱計算機 | 微軟認證 | 思科認證 | Oracle認證 | Linux認證 華為認證 | Java認證 |
|
![]() |
公務員 | 報關員 | 銀行從業資格 | 證券從業資格 | 期貨從業資格 | 司法考試 | 法律顧問 | 導游資格 報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師 人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業資格 | 廣告師職業水平 駕駛員 | 網絡編輯 |
|
![]() |
衛生資格 | 執業醫師 | 執業藥師 | 執業護士 | |
![]() |
會計從業資格考試(會計證) | 經濟師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務師 注冊資產評估師 | 高級會計師 | ACCA | 統計師 | 精算師 | 理財規劃師 | 國際內審師 |
|
![]() |
一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監理工程師 | 安全工程師 質量工程師 | 物業管理師 | 招標師 | 結構工程師 | 建筑師 | 房地產估價師 | 土地估價師 | 巖土師 設備監理師 | 房地產經紀人 | 投資項目管理師 | 土地登記代理人 | 環境影響評價師 | 環保工程師 城市規劃師 | 公路監理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師 |
|
![]() |
繽紛校園 | 實用文檔 | 英語學習 | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲 |
●試題2
閱讀下列說明和圖,回答問題1至問題3,將解答填人答題紙的對應欄內。
【說明】
實現進程的同步與互斥控制的常見方法是信號量,信號量S的P、V操作如下:
P(S):S:=S—l,若s≥0,則執行P操作的進程繼續執行;若S<0,則置該進程為阻塞狀態,并將其插入阻塞隊列。
v(s):s:=S+1,若S>0,則執行V操作的進程繼續執行;若S≤0,則從阻塞隊列喚醒一個進程,并將其插入就緒隊列,然后執行V操作的進程繼續執行。
【問題1】
在某并發系統中,有一個發送進程A、一個接收進程B、一個環形緩沖區BUFF、信號量Sl和 S2。發送進程不斷地產生消息并寫入緩沖區BUFF,接收進程不斷地從緩沖區BUFF取消息。假設發送進程和接收進程可以并發地執行,那么,當緩沖區的容量為N時,如何使用P、V操作才能保證系統的正常工作。發送進程A和接收進程B的工作流程如圖5.5所示。請在圖5.5中的空(1)一(4)處填入正確的內容。
【問題2】
若系統中有多個發送進程和接收進程,進程間的工作流程如圖5.6所示,其中空(1)~(4)的 內容與圖5.5相同。發送進程產生消息并順序地寫入環形緩沖區BUFF,接收者進程順序地從 BUFF中取消息,且每條消息只能讀取一次。為了保證進程間的正常通訊,增加了信號量Sa和sb。 ①請說明信號量sa和sb的物理意義,并在圖5.6中的空(5)和空(6)處填人正確的內容。 ②請從圖5.6的(a)~(1)中選擇四個位置正確地插入P(Sa)、V(Sa)、P(Sb)、V(Sb)。
【問題3】
設系統中只有進程A和進程B,除了互斥地使用CPU和打印機R外,進程A和B不使用其他 資源。另外,進程8的優先級比A高,而進程A先于8準備好。進程A和B的執行情況如圖5.7 所示,其中粗實線表示進程在執行中,細實線表示打印機R在使用中(每個進程具有三種狀態:運 行、就緒和阻塞)。
清分別說明進程A和B在圖5.7所示的t1、t2、t3、t4時刻所處的狀態;若是阻塞狀態,請說明 阻塞原因。
【問題1】解答:
A進程在進行P操作之前肯定已經產生一條消息,即(1)處。在向緩沖區中寫完數據時,需要 修改緩沖區的當前指針。所以(1)產生一條消息(2)i+←(i+1)mod N。
進程B在讀取消息之前需要進行P(s2)操作,在讀取消息完后,需要今行V(S2)操作,因此 (3)P(S2)(4)V(S2)。
【問題2】解答:
(5)、(6)均填1,Sa和sb分別表示允許同時對緩沖區進行寫操作和讀操作的進程數量,此時P
(Sa)、V(Sa)、P(Sb)、V(Sb)應分別插入位置(b)、(f)、(h)、(k)。
Sa和Sb也可以分別表示允許同時對緩沖區進行讀操作和寫操作的進程數量,此時 P(Sa)、V(Sa)、P(Sb)、V(Sb)應分別插入位置(h)、(k)、(b)、(f)。
【問題3】解答:
對于進程A,在t1并口t2時刻等待R工作結束,處于阻塞狀態,原因是等待I/0結束,在t3時刻運行,在t4時刻由于不如B的優先級高,因而進入就緒狀態。
對于進程8,在t1時刻處于運行狀態,在t2時刻由于要使用臨界資源R而進入阻塞狀態,原因即是等待R資源,在t3時刻,進程8由于等待R工作結束而進入阻塞狀態,原因即是等待I/O結束。在t4時刻,CPU被分配給進程8,所以它處于運行狀態。
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |