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á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.

Go down

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. Empty 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.

Bài gửi  tranlamxuanhang_107H1029 23/5/2009, 15:42

-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);

tranlamxuanhang_107H1029

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