P1 ,P2 TRƯỚC P3
Trang 1 trong tổng số 1 trang
P1 ,P2 TRƯỚC P3
Đồng bộ hóa công việc các tiến trình sao cho P1 ,P2 trước P3.
Giả sửa có 3 tiến trình P1, P2 và P3 có mã tương ứng là S1, S2 và S3
Semaphore synch = -1;
P1 P2 P3
S1 S2 wait(synch);
signal(synch); signal(synch); S3
- Tại thời điểm ban đầu: P1 và P2 đang thực hiện lệnh S1, S2, lúc này synch=-1.
- Lúc này P3 đang bị khóa tại hàm wait(synch) đợi khi synch >0.
- Khi P1 thực hiện, S1 dc thi hành xong thì hàm signal(synch) sẽ tăng synch lên 1 và synch= 0. P3 lúc này vẫn bị khóa do synch=0.
- Khi P2 thực hiện, S2 dc thi hành xong thì hàm signal(synch) sẽ tăng synch lên 1 và synch= 1.
Lúc này P3 mới dc thực hiện.
=>P1 và P2 trước P3.
Giả sửa có 3 tiến trình P1, P2 và P3 có mã tương ứng là S1, S2 và S3
Semaphore synch = -1;
P1 P2 P3
S1 S2 wait(synch);
signal(synch); signal(synch); S3
- Tại thời điểm ban đầu: P1 và P2 đang thực hiện lệnh S1, S2, lúc này synch=-1.
- Lúc này P3 đang bị khóa tại hàm wait(synch) đợi khi synch >0.
- Khi P1 thực hiện, S1 dc thi hành xong thì hàm signal(synch) sẽ tăng synch lên 1 và synch= 0. P3 lúc này vẫn bị khóa do synch=0.
- Khi P2 thực hiện, S2 dc thi hành xong thì hàm signal(synch) sẽ tăng synch lên 1 và synch= 1.
Lúc này P3 mới dc thực hiện.
=>P1 và P2 trước P3.
nguyentruongan03(HLT3)- Tổng số bài gửi : 22
Join date : 23/03/2014
Similar topics
» Thảo luận Bài 7
» CÂU 3_ BÀI TẬP 1:ĐỒNG BỘ HÓA CÔNG VIỆC CÁC TIẾN TRÌNH P1,P2,P3 ĐỂ SAO CHO P1 TRƯỚC P2,P2 TRƯỚC P3
» Thảo luận Bài 7
» P1 TRƯỚC P2 VÀ P3
» Cac de thi mon HDH cac nam truoc
» CÂU 3_ BÀI TẬP 1:ĐỒNG BỘ HÓA CÔNG VIỆC CÁC TIẾN TRÌNH P1,P2,P3 ĐỂ SAO CHO P1 TRƯỚC P2,P2 TRƯỚC P3
» Thảo luận Bài 7
» P1 TRƯỚC P2 VÀ P3
» Cac de thi mon HDH cac nam truoc
Trang 1 trong tổng số 1 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết