2 有關多緒處理(multithreading)的敘述,下列何者錯誤?
(A)多緒處理是利用軟體,如:作業系統,與硬體支援,來讓多個執行緒(threads)共用一個單一處理器的 資源進行計算
(B)利用硬體協助多緒處理,可加速執行緒切換的時間
(C)當多執行緒進行切換時,主要是針對執行緒的資料,如暫存器與程式計數器,進行更新與儲存
(D)不同程序(processes)的執行緒,可以直接透過共享的記憶體傳遞資料,不需要作業系統的支援
答案:登入後查看
統計: A(20), B(28), C(13), D(166), E(0) #3429166
統計: A(20), B(28), C(13), D(166), E(0) #3429166
詳解 (共 2 筆)
#6517976
-
錯誤 (D) 這是多緒和多程序之間一個非常關鍵的區別。
-
-
同一程序內的執行緒: 共享同一個程序的記憶體空間。它們可以直接透過共享記憶體(例如全域變數、堆上的數據)來傳遞資料。
-
不同程序(processes)的執行緒: 每個程序都有自己獨立且隔離的記憶體空間。因此,屬於不同程序的執行緒無法「直接」透過共享記憶體傳遞資料。如果不同程序間需要共享記憶體來通訊,它們必須藉助作業系統提供的行程間通訊 (IPC, Inter-Process Communication) 機制,例如明確地建立共享記憶體區段、使用管道 (pipes)、訊息佇列 (message queues) 等,這些都需要作業系統的支援和管理。
-
-
因此,選項 (D) 的敘述是錯誤的。
2
0