Phát biểu bài toán Sản xuất-Tiêu thụ với thuật giài đồng bộ hoá bằng 3 đèn hiệu semFull, semEmpty và Mutex.
Trang 1 trong tổng số 1 trang
Phát biểu bài toán Sản xuất-Tiêu thụ với thuật giài đồng bộ hoá bằng 3 đèn hiệu semFull, semEmpty và Mutex.
-Tiến trình sản xuất (Producer) tạo ra dòng thông tin để tiến trình tiêu thụ (Consumer) sử dụng.
-Ví dụ: Compiler và Assembler vừa là nhà sản xuất vừa là nhà tiêu thụ. Compiler tạo ra mã dùng cho Assembler, tiếp theo Assembler sản sinh mã máy làm đầu vào cho Loader hoặc Linkage Editor.
-Phát biều bài toán: Bộ nhớ đệm Buffer bao gồm một số hửu hạn các khoang chứa (Items). Producer lần lượt đưa các sản phẩm S1, S2,…vào các khoang của Buffer. Consumer lấy sản phẩm ra theo đúng thứ tự. Công việc của các tiến trình phải đồng bộ với nhau: không đưa ra sản phẩm khi hết chỗ trống, không lấy được sản phẩm khi chưa có.
-Thuật giải đồng bộ hoá bằng 3 đèn hiệu: semFull (quản lý số sản phẩm có trong bộ đệm, giá trị ban đầu bằng 0), semEmpty (quản lý số khoang còn trống, giá trị ban đầu bằng số khoang của bộ đệm) và Mutex (đảm bảo tính loại trừ tương hỗ, nghĩa là mỗi thời điểm chỉ có 1 tiến trình sản xuất hay tiêu thụ được truy cập/cập nhật tài nguyên dung chung, giá trị ban đầu bằng 1).
Producer
Wait(semEmpty);
Wait(Mutex);
//Đưa sản phẩm vào Buffer
..
Signal(semFull);
Signal(Mutex);
Consumer
Wait(semFull);
Wait(Mutex);
//Lấy sản phẩm từ Buffer
..
Signal(semEmpty);
Signal(Mutex);
-Ví dụ: Compiler và Assembler vừa là nhà sản xuất vừa là nhà tiêu thụ. Compiler tạo ra mã dùng cho Assembler, tiếp theo Assembler sản sinh mã máy làm đầu vào cho Loader hoặc Linkage Editor.
-Phát biều bài toán: Bộ nhớ đệm Buffer bao gồm một số hửu hạn các khoang chứa (Items). Producer lần lượt đưa các sản phẩm S1, S2,…vào các khoang của Buffer. Consumer lấy sản phẩm ra theo đúng thứ tự. Công việc của các tiến trình phải đồng bộ với nhau: không đưa ra sản phẩm khi hết chỗ trống, không lấy được sản phẩm khi chưa có.
-Thuật giải đồng bộ hoá bằng 3 đèn hiệu: semFull (quản lý số sản phẩm có trong bộ đệm, giá trị ban đầu bằng 0), semEmpty (quản lý số khoang còn trống, giá trị ban đầu bằng số khoang của bộ đệm) và Mutex (đảm bảo tính loại trừ tương hỗ, nghĩa là mỗi thời điểm chỉ có 1 tiến trình sản xuất hay tiêu thụ được truy cập/cập nhật tài nguyên dung chung, giá trị ban đầu bằng 1).
Producer
Wait(semEmpty);
Wait(Mutex);
//Đưa sản phẩm vào Buffer
..
Signal(semFull);
Signal(Mutex);
Consumer
Wait(semFull);
Wait(Mutex);
//Lấy sản phẩm từ Buffer
..
Signal(semEmpty);
Signal(Mutex);
tranlamxuanhang_107H1029- Tổng số bài gửi : 25
Join date : 23/03/2009
Similar topics
» PHÁT BIỂU BÀI TOÁN SẢN XUẤT - TIÊU THỤ VỚI THUẬT GIẢI ĐỒNG BỘ HÓA BẰNG 3 ĐÈN HIỆU semFull, semEmpty và Mutex
» Thảo luận Bài 4
» Phát biểu bài toán Sản xuất-Tiêu thụ với thuật giải đồng bộ hoá bằng 3 đèn hiệu semFull, semEmpty và Mutex
» Phát biểu bài toán Sản xuất-Tiêu thụ với thuật giải đồng bộ hoá bằng 3 đèn hiệu semFull, semEmpty và Mutex.
» Phát biểu bài toán Sản xuất-Tiêu thụ với thuật giải đồng bộ hoá bằng 3 đèn hiệu semFull, semEmpty và Mutex
» Thảo luận Bài 4
» Phát biểu bài toán Sản xuất-Tiêu thụ với thuật giải đồng bộ hoá bằng 3 đèn hiệu semFull, semEmpty và Mutex
» Phát biểu bài toán Sản xuất-Tiêu thụ với thuật giải đồng bộ hoá bằng 3 đèn hiệu semFull, semEmpty và Mutex.
» Phát biểu bài toán Sản xuất-Tiêu thụ với thuật giải đồng bộ hoá bằng 3 đèn hiệu semFull, semEmpty và Mutex
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