Hệ điều hành - các dịch vụ hệ điều hành - Nguyễn Phú Trường - 4

Phần chính của chương này là tập trung vào vấn đề đồng bộ hoá và cộng tác quá trình. IV Vấn đề vùng tương trục Xét một hệ thống gồm n quá trình (P0, P1, ,Pn-1 ). Mỗi quá trình có một phân đoạn mã, được gọi là vùng tương trục (critical section), trong đó quá trình này có thể thay đổi những biến dùng chung, cập nhật một bảng, viết đến tập tin, Đặc điểm quan trọng của hệ thống là ở chỗ, khi một quá trình đang thực thi trong vùng tương trục,. | Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành - trường hợp như thế xảy ra thường xuyên trong các hệ điều hành khi các phần khác nhau của hệ thống thao tác các tài nguyên và chúng ta muốn các thay đổi không gây trở ngại một sự thay đổi khác. Phần chính của chương này là tập trung vào vấn đề đồng bộ hoá và cộng tác quá trình. IV Vấn đề vùng tương trục Xét một hệ thống gồm n quá trình P0 Pb . Pn-1 . Mỗi quá trình có một phân đoạn mã được gọi là vùng tương trục critical section trong đó quá trình này có thể thay đổi những biến dùng chung cập nhật một bảng viết đến tập tin . Đặc điểm quan trọng của hệ thống là ở chỗ khi một quá trình đang thực thi trong vùng tương trục không có quá trình nào khác được phép thực thi trong vùng tương trục của nó. Do đó việc thực thi của các vùng tương trục bởi các quá trình là sự loại trừ hỗ tương. Vấn đề vùng tương trục là thiết kế một giao thức mà các quá trình có thể dùng để cộng tác. Mỗi quá trình phải yêu cầu quyền để đi vào vùng tương trục của nó. Vùng mã thực hiện yêu cầu này là phần đi vào entry section . Vùng tương trục có thể được theo sau bởi một phần kết thúc exit section . Mã còn lại là phần còn lại remainder section . do entry section critical section exit section remainder section . while 1 __ Hình 0-1 Cấu trúc chung của một quá trình điển hình Pi Một giải pháp đối với vấn đề vùng tương trục phải thoả mãn ba yêu cầu sau Loại trừ hỗ tương Mutual Exclusion Nếu quá trình Pi đang thực thi trong vùng tương trục của nó thì không quá trình nào khác đang được thực thi trong vùng tương trục đó. Tiến trình Progress nếu không có quá trình nào đang thực thi trong vùng tương trục và có vài quá trình muốn vào vùng tương trục thì chỉ những quá trình không đang thực thi phần còn lại mới có thể tham gia vào việc quyết định quá trình nào sẽ đi vào vùng tương trục tiếp theo và chọn lựa này không thể trì hoãn vô hạn định. Chờ đợi có giới hạn bounded wait giới hạn

Không thể tạo bản xem trước, hãy bấm tải xuống
TỪ KHÓA LIÊN QUAN
TÀI LIỆU MỚI ĐĂNG
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.