tailieunhanh - Bài giảng môn Hệ điều hành: Chương 3 - Tương tranh giữa các Process
Bài giảng trình bày các nội dung: Giới thiệu về tương tranh, loại trừ tương hỗ giữa các đoạn code CS, các phương pháp dừng chờ chủ động (busy waiting), đồng bộ các process : Bài toán Sản xuất-Tiêu dùng, các phương pháp dừng chờ thụ động (sleep-wakeup), các bài toán IPC kinh điển và giải quyết. Để nắm nội dung . | MÔN HỆ ĐIỀU HÀNH Chương 3 TƯƠNG TRANH GIỮA CÁC PROCESS Giới thiệu về tương tranh Loại trừ tương hỗ giữa các đoạn code CS Các phương pháp dừng chờ chủ động (busy waiting) Đồng bộ các process : Bài toán Sản xuất-Tiêu dùng Các phương pháp dừng chờ thụ động (sleep-wakeup) Các bài toán IPC kinh điển và giải quyết Tài liệu tham khảo : chương 2, sách "Modern Operating Systems", Andrew S. Tanenbaum: , 2nd ed, Prentice Hall Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Môn : Hệ điều hành Chương 3 : Tương tranh giữa các process Slide 1 Giới thiệu về tương tranh Trong hệ đa chương, thường có nhiều process chạy song hành, nhưng mỗi process c kh ng gian l m việc độc lập, không ai có thể truy xuất trực tiếp không gian làm việc của process khác => rất tốt cho việc bảo vệ ch ng lẫn nhau nhất l khi các process này là những chương trình độc lập. Nếu 2 hay nhiều process cần giao tiếp nhau để đồng bộ hay để trao đổi dữ liệu, ta cần cung cấp cơ chế cho ch ng. C 2 cơ chế giao tiếp ch nh giữa c c process : truy xuất bộ nhớ d ng chung v gởi/nhận th ng b o. Truy xuất bộ nhớ chung là 1 trong nhiều hoạt động tương tranh giữa các process. Vấn đề tương tranh trên 1 tài nguyên dùng chung là vấn đề lớn cần phải giải quyết triệt để vì nếu nhiều process truy xuất đồng thời v o 1 t i nguy n d ng chung mà không có sự kiểm soát thì dễ xảy ra lỗi làm hư hỏng tài nguyên (điều kiện Race). Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Môn : Hệ điều hành Chương 3 : Tương tranh giữa các process Slide 2 1 Giới thiệu về tương tranh Phân tích kỹ code của chương trình, ta nhận thấy chúng là danh sách liên tiếp của 2 loại đoạn code : đoạn code truy xuất các biến cục bộ của chương trình. Đoạn code này thường dài và xuất hiện nhiều. May mắn là chúng ta không cần quan tâm và kiểm soát đoạn code này. Đoạn code truy xuất tài nguyên dùng chung và có thể tranh chấp với process khác. Đây là đoạn code, mặc dù ít xuất hiện và thường rất ngắn, nhưng dễ gây .
đang nạp các trang xem trước