Danh mục

Chương 5: Đồng bộ hóa tiến trình

Số trang: 0      Loại file: pdf      Dung lượng: 284.87 KB      Lượt xem: 20      Lượt tải: 0    
Hoai.2512

Phí lưu trữ: miễn phí Tải xuống file đầy đủ (0 trang) 0
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Tham khảo tài liệu chương 5: đồng bộ hóa tiến trình, công nghệ thông tin, hệ điều hành phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Nội dung trích xuất từ tài liệu:
Chương 5: Đồng bộ hóa tiến trình Chương 5: Đồng bộ hóa tiến trình Tình trạng đua tranh „ Cơ sở „ Tình trạng đua tranh: là tình trạng mà vài tiến trình cùng truy cập và „ Bài toán miền tương trục thay đổi lên dữ liệu được chia sẻ. Giá trị cuối cùng của dữ liệu chia sẻ „ Đồng bộ hóa bằng phần cứng phụ thuộc vào tiến trình nào hoàn thành cuối cùng. „ Semaphores „ Để ngăn chặn tình trạng đua tranh, các tiến trình đua tranh phải được „ Các bài toán cổ điển về đồng bộ hóa đồng bộ hóa. „ Monitors „ Đồng bộ hóa trong Solaris và Windows 2000Hệ điều hành 5.1 Phạm Thế Phi ©2004 Hệ điều hành 5.3 Phạm Thế Phi ©2004 Cơ sở Vấn đề miền tương trục „ Truy cập cạnh tranh lên dữ liệu được chia sẻ có thể gây nên tình „ Tất cả n tiến trình đang cạnh tranh để sử dụng dữ liệu chia sẻ. trạng không nhất quán dữ liệu. „ Mỗi tiến trình có một đoạn mã lệnh, gọi là miền tương trục, mà „ Việc duy trì sự nhất quán dữ liệu yêu cầu các cơ chế để đảm bảo trong đó có hành động truy cập dữ liệu được chia sẻ. sự thực thi một cách có thứ tự của các tiến trình có hợp tác với „ Vấn đề – đảm bảo rằng khi một tiến trình đang chạy trong nhau. miền tương trục, không có một tiến trình nào khác được cho „ Ví dụ? phép chạy trong miền tương trục của mình.Hệ điều hành 5.2 Phạm Thế Phi ©2004 Hệ điều hành 5.4 Phạm Thế Phi ©2004 Giải pháp cho vấn đề miền tương trục Giải thuật 1 1. Loại trừ hỗ tương. Nếu tiến trình Pi đang thực thi trong miền tương trục, thì không có tiến trình nào khác có thể thực thi „ Các biến chung: trong miền tương trục của mình. ) int turn; 2. Tiến triển. Nếu không có tiến trình nào đang thực thi trong khởi đầu turn = 0 miền tương trục của nó và có tồn tại vài tiến trình đang mong ) turn = i ⇒ Pi có thể bước vào miền tương trục của nó muốn được thực thi trong miền tương trục của chúng, thì việc „ Tiến trình Pi lựa chọn cho một tiến trình bước vào miền tương trục của nó do { không thể bị trì hoãn mãi được. while (turn != i) ; 3. Chờ đợi hữu hạn. Không có tiến trình nào phải chờ đợi vĩnh critical section viễn để có thể bước vào miền tương trục của nó turn = j; reminder section } while (1); „ Giải pháp này thõa mãn yêu cầu về loại trừ hỗ tương nhưng không tiến triển được.Hệ điều hành 5.5 Phạm Thế Phi ©2004 Hệ điều hành 5.7 Phạm Thế Phi ©2004 Những cố gắng đầu tiên để giải quyết bài ...

Tài liệu được xem nhiều: