Tin học
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

Phân tích thuật giải sai bài toán Dining-Philosophers (dẫn đến Deadlock)

Go down

Phân tích thuật giải sai bài toán Dining-Philosophers (dẫn đến Deadlock) Empty Phân tích thuật giải sai bài toán Dining-Philosophers (dẫn đến Deadlock)

Bài gửi  PhamThiKhanhHa 10/5/2009, 00:13

Mình tìm thấy bài phân tích này, lớp mình cũng vừa học qua Bài 8 - Deadlock, nên mình muốn chia sẻ với các bạn, bạn nào thấy sai hay đúng thì góp ý kiến luôn nhé.

Dữ liệu chia sẻ:
semaphore chopstick[5];
Khởi đầu các biến đều là: 1.
while (1)
{
wait(chopstick[i])
wait(chopstick[(i+1) % 5 ] )

eat

signal(chopstick[i]);
signal(chopstick[(i+1) % 5] );

think

}
Giải pháp trên có thể gây ra deadlock
Khi tất cả triết gia đói bụng cùng lúc và đồng thời cầm một chiếc đũa bên tay trái  deadlock
Có thể xảy ra trường hợp ách vô hạn định (starvation).

PhamThiKhanhHa

Tổng số bài gửi : 25
Join date : 04/03/2009

Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

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