Bài giảng Hệ điều hành - Chương 3: Deadlock (Lương Minh Huấn) có nội dung trình bày về khái niệm deadlock, điều kiện xảy ra deadlock, các phương pháp phòng tránh deadlock, ngăn chặn deadlock, phòng tránh deadlock, phát hiện deadlock, phục hồi deadlock,... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng!
TRƯỜNG ĐẠI HỌC SÀI GÒN CHƯƠNG 3: DEADLOCK GV: Lương Minh Huấn NỘI DUNG I Khái niệm deadlock II Điều kiện xảy deadlock III Các phương pháp phòng tránh deadlock Ngăn chặn deadlock Phòng tránh deadlock Phát deadlock Phục hồi deadlock I KHÁI NIỆM DEADLOCK ➢Hệ thống gồm nhiều tiến trình hoạt động đồng thời sử dụng tài nguyên ▪ Tài nguyên cần nhiều loại (VD: CPU, nhớ, ) ▪ Mỗi loại tài nguyên có nhiều đơn vị (VD: CPU, máy in ) ➢Mỗi tiến trình thường gồm dãy liên tục thao tác ▪ Đòi hỏi tài nguyên: Nếu tài ngun khơng có sẵn (đang sử dụng tiến trình khác) ) tiến trình yêu cầu phải đợi ▪ Sử dụng tài nguyên theo yêu cầu (in ấn, đọc liệu ) ▪ Giải phóng tài nguyên cấp I KHÁI NIỆM DEADLOCK ➢Khi tiến trình dùng chung tài ngun, hệ thống gặp "nguy hiểm" ➢Xét ví dụ: ▪ Hệ thống có hai tiến trình P1 & P2 ▪ Hai tiến trình P1 & P2 dùng chung hai tài nguyên R1 & R2 ▪ R1 điều độ đèn báo S1 (S1 1) ▪ R2 điều độ đèn báo S2 (S2 1) I KHÁI NIỆM DEADLOCK I KHÁI NIỆM DEADLOCK I KHÁI NIỆM DEADLOCK ➢Hai (hay nhiều) ôtô đối đầu cầu hẹp đủ độ rộng cho ➢Mỗi đoạn cầu xem tài nguyên ➢Nếu deadlock xuất hiện: giải hay số ôtô lùi lại nhường đường lên sau I KHÁI NIỆM DEADLOCK ➢DeadLock trạng thái hệ thống có hai tiến trình dừng chờ lẫn chúng chạy tiếp ➢Sự chờ đợi kéo dài vơ hạn khơng có tác động từ bên ngồi II ĐIỀU KIỆN XẢY RA DEADLOCK ➢Cần có điều kiện sau, khơng thiếu điều kiện nào: ➢Có tài nguyên găng: ▪ Tài nguyên sử dụng theo mô hình khơng phân chia (muntual exclusion) • Chỉ có tiến trình dùng tài nguyên thời điểm • Tiến trình khác yêu cầu tài nguyên => yêu cầu phải hõan lại tới tài nguyên giải phóng ▪ Chờ đợi trước vào đoạn găng (hold and wait) • Tiến trình khơng vào đoạn găng phải xếp hàng chờ đợi • Trong chờ đợi chiếm giữ tài nguyên cung cấp III.2 PHÒNG TRÁNH DEADLOCK ➢Bước1: Từ bảng trạng thái lập bảng nhu cầu thay cột Max cột Cần với cơng thức tính tốn Cần= Max – Chiếm Cột Cần thể số lượng loại tài nguyên cần cung cấp thêm cho tiến trình ➢Bước2: III.2 PHỊNG TRÁNH DEADLOCK While i: (Cần(Pi)0) and (Cần(Pi)