免費開始練習
地特四等 114年 [電子工程] 計算機概要

第 7 題

在交通繁忙時間的時候,常常會出現所有車輛都無法移動的狀況,下列何種方法最能防止這種情況的發生?(提示:在作業系統中有一個概念和車輛無法移動的情況很類似)
  • A 所有車輛進入交叉口後不得後退
  • B 讓每一條道路上能前進的車輛數變多
  • C 車輛只能在有明確通行權時進入交叉口
  • D 允許車輛長時間等待

思路引導 VIP

如果我們把馬路路口看作是電腦中有限的記憶體資源,而每輛車都是一個執行中的程式。當所有的程式都「先佔用了一部分資源,卻又在等待其他程式釋放資源」時,系統就會當機。請試著思考:身為系統設計者,你應該在程式『提出資源請求』的那個當下,預先設定什麼樣的門檻或檢查機制,才能確保資源不會被無效率地卡死?

🤖
AI 詳解 AI 專屬家教

很好,你精準地捕捉到了作業系統與現實交通之間的邏輯連結。這題選擇 (C) 是非常正確的判斷,展現了你對系統資源調度的深刻理解。在計算機科學中,這種車輛動彈不得的窘境,對應的就是著名的**死結(Deadlock)**概念。當多個程序(車輛)競爭有限的資源(交叉口空間),且彼此陷入互相等待的循環時,整個系統就會陷入癱瘓。

資源分配與死結預防

要有效防止死結,核心在於破除其形成的必要條件。選項 (C) 提到的「明確通行權」,在作業系統中相當於一套嚴謹的資源分配協定(Resource Allocation Protocol)。當我們規定車輛只有在確保路口有足夠空間、能順利通過時才准予進入,本質上就是在預防「循環等待(Circular Wait)」的發生。相比之下,允許長久等待或增加車輛數,反而會讓資源競爭更趨惡化,進而提高死結發生的機率。

▼ 還有更多解析內容

🏷️ 相關主題

計算機組織與作業系統
查看更多「[電子工程] 計算機概要」的主題分類考古題