Trao đổi về DEADLOCK

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

Trao đổi về DEADLOCK

Bài gửi  LeNgocTung (I22A) on 21/3/2013, 23:43

Trong môi truờng đa chương, nhiều quá trình có thểcạnh tranh một sốgiới hạn tài nguyên. Một quá trình yêu cầu tài nguyên, nếu tài nguyên không sẳn dùng tại thời điểm đó, quá trình đi vào trạng thái chờ. Quá trình chờcó thểkhông bao giờchuyển trạng thái trởlại vì tài nguyên chúng yêu cầu bịgiữbởi những quá trình đang chờ khác. Trường hợp này được gọi là deadlock.
Những điều kiện cần thiết gây ra deadlock
Trường hợp deadlock có thểphát sinh nếu bốn điều kiện sau xảy ra cùng một
lúc trong hệthống:
1) Loại trừ hỗ tương: ít nhất một tài nguyên phải được giữ trong chế độ
không chia sẻ; nghĩa là, chỉmột quá trình tại cùng một thời điểm có thể sử
dụng tài nguyên. Nếu một quá trình khác yêu cầu tài nguyên đó, quá trình
yêu cầu phải tạm dừng cho đến khi tài nguyên được giải phóng.
2) Giữvà chờ cấp thêm tài nguyên: quá trình phải đang giữ ít nhất một tài
nguyên và đang chờ đển hận tài nguyên thêm mà hiện đang được giữ bởi
quá trình khác.
3) Không đòi lại tài nguyên từquá trình đang giữ chúng: Các tài nguyên
không thể bị đòi lại; nghĩa là, tài nguyên có thể được giải phóng chỉtựý
bởi quá trình đang giữ nó, sau khi quá trình đó hoàn thành tác vụ.
4) Tồn tại chu trình trong đồ thị cấp phát tài nguyên: một tập hợp các quá
trình {P0, P1,…,Pn} đang chờ mà trong đó P0 đang chờ một tài nguyên
được giữ bởi P1, P1 đang chờ tài nguyên đang giữ bởi P2,…,Pn-1 đang chờ
tài nguyên đang được giữ bởi quá trình P0.

Các bạn thảo luận thêm cách ngăn chặn và xử lý DEADLOCK

LeNgocTung (I22A)

Tổng số bài gửi : 35
Join date : 17/03/2013
Age : 27

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

- Similar topics

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