Trong các giải pháp đồng bộ tiến trình sau, giải pháp nào vi phạm điều kiện “Không có hai tiến trình cùng ở trong miền giăng cùng lúc”:
Trong các giải pháp đồng bộ tiến trình sau, giải pháp nào vi phạm điều kiện “Không có hai tiến trình cùng ở trong miền giăng cùng lúc”:
Trả lời:
Đáp án đúng: A
Điều kiện "Không có hai tiến trình cùng ở trong miền găng cùng lúc" (mutual exclusion) là một trong bốn điều kiện cần để tránh tình trạng tranh chấp tài nguyên (race condition) trong đồng bộ hóa tiến trình.
* **Sử dụng biến cờ hiệu:** Giải pháp này có thể vi phạm điều kiện mutual exclusion nếu cả hai tiến trình cùng kiểm tra cờ hiệu và thấy rằng tài nguyên đang sẵn sàng (ví dụ, cả hai cùng thấy cờ hiệu là false), dẫn đến việc cả hai cùng truy cập vào miền găng. Do đó, đáp án A vi phạm điều kiện này.
* **Sử dụng luân phiên (Alternation):** Giải pháp này đảm bảo mutual exclusion, nhưng có thể dẫn đến tình trạng chờ đợi không cần thiết (busy waiting) và chỉ cho phép một tiến trình vào miền găng mỗi lượt.
* **Giải pháp Peterson:** Giải pháp này là một thuật toán cổ điển để giải quyết bài toán mutual exclusion giữa hai tiến trình. Nó đảm bảo mutual exclusion, không có deadlock và không có starvation.
Vì vậy, đáp án A là đáp án đúng nhất vì nó vi phạm điều kiện mutual exclusion.
50 câu hỏi 60 phút
Câu hỏi liên quan

FORM.08: Bộ 130+ Biểu Mẫu Thống Kê Trong Doanh Nghiệp

FORM.07: Bộ 125+ Biểu Mẫu Báo Cáo Trong Doanh Nghiệp

FORM.06: Bộ 320+ Biểu Mẫu Hành Chính Thông Dụng

FORM.05: Bộ 330+ Biểu Mẫu Thuế - Kê Khai Thuế Mới Nhất

FORM.04: Bộ 240+ Biểu Mẫu Chứng Từ Kế Toán Thông Dụng
