42 系統五旗誌主要用於什麼目的?
(A) 訊息傳遞
(B) 共用記憶體管理
(C) 共時更新與存取共用記憶體內容的控制
(D) 檔案存取控制

答案:登入後查看
統計: A(0), B(0), C(8), D(0), E(0) #3399889

詳解 (共 2 筆)

#7319083

【第一步:找關鍵字】

系統五旗誌(Semaphores,號誌)
→ 這是作業系統中的「同步機制(讓多個程式不要同時亂來)」

共時更新(同步 / 同步控制)
→ 這題在問「多個程序一起動作時,怎麼避免衝突」

關鍵觀念:
?「同步(Synchronization)」與「互斥(Mutex)」

【第二步:白話翻譯】

這題在問:
?「當很多程式同時要用同一塊資料(例如同一個記憶體),要怎麼避免大家搶來搶去、搞壞資料?」

【第三步:解題思路】

這題在考什麼觀念?

Semaphore(號誌)用來做「程序同步與互斥控制」

解題步驟

  1. 先理解「五旗誌(Semaphore)」是什麼
    → 就像一個「交通警察」或「紅綠燈」

  2. 它的功能
    → 控制「誰可以進來用資源」

  3. 判斷用途
    → 最重要的是「避免同時亂改資料」

原理與規則

Semaphore(號誌)是什麼?
→ 一個「計數器(用來記錄還有幾個人可以用資源)」

有兩個基本操作:

  • wait(P操作):想進去 → 先扣數量

  • signal(V操作):用完了 → 還回去

生活比喻:

想像一間廁所只有1間:

  • 有人進去 → 鎖門(wait)

  • 用完出來 → 開鎖(signal)

? 這就是「互斥」
? 不會兩個人同時進去

【第四步:選項分析】

  • (A) 訊息傳遞
    ❌ 錯
    → 這是 IPC(行程間通訊),像 message queue、pipe
    → 不是 semaphore 的主要用途

  • (B) 共用記憶體管理
    ❌ 錯
    → 管理記憶體是 OS 的記憶體管理機制
    → semaphore 只是「控制使用順序」,不是管理

  • (C) 共時更新與存取共用記憶體內容的控制
    ✅ 正確
    → 這就是 semaphore 的核心用途
    → 防止「同時修改資料造成錯誤(race condition)」

  • (D) 檔案存取控制
    ❌ 錯
    → 檔案權限是檔案系統(permission)
    → 跟 semaphore 無關

【觀念補充與延伸】

核心觀念定位

這題屬於:
? 作業系統 → 行程同步(Process Synchronization)
? 幾乎是「必考題」

法條或定義

Semaphore(號誌)
→ 一種同步工具,用來控制多個程序對共享資源的存取順序

白話:
? 就是「排隊機制 + 紅綠燈」

觸類旁通(舉一反三)

對比概念:

  • Semaphore(號誌) → 可計數(多個人)

  • Mutex(互斥鎖) → 只能一個人

? 記法:
Mutex = 單人廁所
Semaphore = 多間廁所

變化題型:

  1. 問 P / V 操作是什麼

  2. 問 race condition 怎麼解決

  3. 生產者消費者問題(超級常考)

【記憶口訣】

?「號誌控同步,避免一起衝」

或更白話:

?「紅綠燈控流量,共用資源不撞車」

【常見陷阱】

學生最容易搞混的地方

  • 把 semaphore 當成「通訊工具」

  • 或當成「記憶體管理工具」

心理盲點

看到「共用記憶體」就選
? 但題目重點是「控制」,不是「管理」

避坑指南

看到:

  • 「同步」

  • 「互斥」

  • 「避免衝突」

? 直接聯想到:Semaphore

0
0
#6786481
1. 題目解析 題目詢問42系統五旗誌...
(共 969 字,隱藏中)
前往觀看
0
0