Đồng bộ hóa công việc của tiến trình

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

Đồng bộ hóa công việc của tiến trình

Bài gửi  LETUANANH(I22A) on 2/4/2013, 22:36

MỤCH ĐÍCH CỦA ĐỒNG BỘ HÓA CÔNG VIỆC CÁC TIẾN TRÌNH
- Mụch đích của đồng bộ hóa công việc các tiến trình là đảm bảo tính nhất quán của tài nguyên dùng chung và tránh được hiện tượng Deadlock(hiện tượng kẹt tiến trình).
ví dụ: Cả nhóm bạn đi chơi, phong cảnh đẹp nên mọi người chụp hình lưu niệm. Nhưng khi chụp hình người chụp và cả nhóm không đồng nhất nên có bạn chưa chuẩn bị nên tấm ảnh không được đẹp như mong muốn.
vì vậy trước khi chụp ảnh người chụp nên thông báo trước cho cả nhóm=>thể hiện tính nhất quán.
- Trở lại vấn đề Sản xuất, tiêu thụ với giải pháp mới dùng biến đếm count.
+ Giải pháp bộ nhờ đệm chug có giới hạn.
+ Giải pháp mới duy trì đủ(BUFFER_SIZE) sản phẩm cùng lúc trong Buffer.
- Dùng 2 chương trình Producer:
+ Cả 2 chương trình đều đúng nhưng có thể hoạt động sai khi chạy đồng thời.
trong Consumer: while(count==0)// tốn CPU rất lâu.
và đoạn tương tranh.
out=(out+1)%BUFFER_SIZE;
count--;
+ Xét công việc của các tiến trình ở trên ở 2 mức:
Mức vi mô: Mức lệnh máy thực thi Producer và Consumer.
Mức vĩ mô: Mức ngôn ngữ bậc cao, khi có 2 tiến trình P1 và P2 cùng đưa sản phẩm vào bộ nhớ đệm Buffer.

LETUANANH(I22A)

Tổng số bài gửi : 5
Join date : 20/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