các điều kiện dẫn đến Deadlock

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down

các điều kiện dẫn đến Deadlock

Bài gửi  Ng0HaiQuan(i22B) on 12/4/2013, 21:46

Deadlock xảy ra khi có 4 điều kiện cần sau:

+Loại trừ lẫn nhau (Mutual Exclusion): Ít nhất có 1 tài nguyên có tính không chia sẻ (non-sharable), nghĩa là: Mỗi thời điểm chỉ có 1 tiến trình được sử dụng nó.
+Giữ và chờ (Hold and Wait): Có 1 tiến trình đang giữ 1 tài nguyên và xin thêm tài nguyên đang độc chiếm bởi tiến trình khác.
+Không có tiếm quyền (No Preemption): Tài nguyên đang giữ bởi tiến trình không thể bị tiếm quyền mà phải được tiến trình này tự nguyện trả lại hệ thống sau khi sử dụng xong.
+Chờ xoay vòng (Circular Wait): Giả sử có n tiến trình đang chờ tài nguyên là { P1 , P2, ... , Pn }, khi đó P1 chờ TN giữ bởi P2 , tiến trình P2 chờ TN giữ bởi P3 , ... , Pn chờ P1 .

Ng0HaiQuan(i22B)

Tổng số bài gửi : 20
Join date : 12/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: các điều kiện dẫn đến Deadlock

Bài gửi  le thi thanh thuy on 13/4/2013, 00:51

Dạ thưa thầy , khi xin cấp phát tài nguyên thì mình kiểm tra thoả 2 điều kiện
Request[i]<= Need[i] và request[i]<= available.
Vậy nếu một trong hai điều kiện không thỏa mình đã có thể kết luận chưa hay mình còn phải kiểm tra chuỗi an toàn nữa ạ ?

Admin
Khi không thoả một trong các điều kiện trên thì kết luận ngay là Không thể đáp ứng yêu cầu đó của tiến trình P[i] !

le thi thanh thuy

Tổng số bài gửi : 11
Join date : 09/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang


 
Permissions in this forum:
Bạn không có quyền trả lời bài viết