Tại thời điểm t, hệ thống có đồ thị cấp phát tài nguyên RAG như hình dưới. Hãy chọn đánh giá đúng:
Trả lời:
Đáp án đúng: A
Phân tích đồ thị cấp phát tài nguyên (Resource Allocation Graph - RAG):
* **Đồ thị RAG:** Biểu diễn trạng thái cấp phát tài nguyên cho các tiến trình. Chu trình trong đồ thị RAG là điều kiện cần (nhưng chưa đủ) để xảy ra deadlock.
* **Phân tích đồ thị đã cho:**
* P1 đang giữ R1 và yêu cầu R2.
* P2 đang giữ R2 và yêu cầu R1.
Điều này tạo thành một chu trình: P1 -> R2 -> P2 -> R1 -> P1. Tuy nhiên, để xác định deadlock chắc chắn, ta cần xem xét thêm.
* **Đánh giá các phương án:**
* **A. chắc chắn không xảy ra Deadlock (tắc nghẽn).** Sai, vì có chu trình trong đồ thị RAG.
* **B. chắc chắn xảy ra Deadlock (tắc nghẽn).** Chưa chắc chắn, vì có thể có tiến trình nhả tài nguyên.
* **C. sẽ xảy ra Deadlock nếu P1 không trả tài nguyên R2.** Sai. P1 đang yêu cầu R2, không giữ R2.
* **D. sẽ xảy ra Deadlock nếu P2 không trả tài nguyên R1.** Đúng. Nếu P2 không trả R2 và P1 không trả R1 thì P1 và P2 sẽ mãi mãi chờ nhau, dẫn đến deadlock.
**Kết luận:** Deadlock chỉ xảy ra nếu cả P1 và P2 đều không nhả tài nguyên mà chúng đang giữ và tiếp tục yêu cầu tài nguyên mà tiến trình kia đang giữ. Như vậy phương án D là đúng nhất.
50 câu hỏi 60 phút