Bài Tập Đồng Bộ Hóa Tiến Trình
Mục tiêu của chương:Giới thiệu các phương án cụ thể để xử lý bài xích toánđồng bộ hoá.lGiải pháp « busy waiting ».lGiải pháp « sleep and wakeup ». Kiến thức sinh viên cần nắm dược sauchương này:Nhiệm vụ của việc nhất quán hóa tiến trình.Hiểu và áp dụng được các giải pháp đồng bộ,đặc biệt cùng với các giải pháp “sleep và wakeup”.
Bạn đang xem: Bài tập đồng bộ hóa tiến trình

Chương 7: Đồng bộ hóa tiến trình s 3.1. Phương án « busy waiting » q 3.1.1. Các chiến thuật phần mượt q 3.1.2. Các chiến thuật phần cứng s 3.2. Các giải pháp « SLEEP and WAKEUP » q 3.2.1. Semaphore q 3.2.2. Monitors q 3.2.3. Hội đàm thông điệp s 3.3. Những vấn đề đồng hóa hóa q 3.3.1. Vấn đề Người cung cấp – tín đồ tiêu thụ (Producer-Consumer) q 3.3.2. Phần tự lực - quy mô Readers-WritersNguyên lý hệ điều hành và quản lý 1 Nguyễn Văn Huy – KTMT - 2008 Chương 7: Đồng cỗ hóa tiến trình kim chỉ nam của chương s reviews các phương án cụ thể để xử lý bài xích toán đồng hóa hoá. Q chiến thuật « busy waiting » q phương án « sleep & wakeup »Nguyên lý hệ quản lý và điều hành 2 Nguyễn Văn Huy – KTMT - 2008 Chương 7: Đồng bộ hóa tiến trình kiến thức sinh viên buộc phải nắm dược sau chương này s nhiệm vụ của việc nhất quán hóa tiến trình. S gọi và vận dụng được các phương án đồng bộ, đặc biệt với các giải pháp “sleep và wakeup”.Nguyên lý hệ quản lý và điều hành 3 Nguyễn Văn Huy – KTMT - 2008 Chương 7: Đồng cỗ hóa quá trình Đưa ra việc s vì sao cần đồng bộ hóa tiến trình? s Đối tượng tác động? s Thuật ngữ miền găng?Nguyên lý hệ điều hành và quản lý 4 Nguyễn Văn Huy – KTMT - 2008 Chương 7: Đồng bộ hóa tiến trình Bốn đk phải thỏa mãn: s không tồn tại hai các bước cùng ở trong miền găng. S không tồn tại giả thiết nào đưa ra cho sự liên hệ về vận tốc của những tiến trình, tương tự như về số lượng bộ giải pháp xử lý trong hệ thống. S Một các bước tạm dừng bên ngoài miền bít tất tay không được chống cản những tiến trình không giống vào miền găng. S không có tiến trình nào phải chờ vô hạn để được vào miền găngNguyên lý hệ quản lý và điều hành 5 Nguyễn Văn Huy – KTMT - 2008 Chương 7: Đồng cỗ hóa quy trình 3.1. Phương án « busy waiting » s Các giải pháp phần mượt s Các chiến thuật phần cứngNguyên lý hệ quản lý 6 Nguyễn Văn Huy – KTMT - 2008 Chương 7: Đồng cỗ hóa quy trình 3.1.1. Các phương án phần mềm a) Sử dụng những biến cờ hiệu: s Tiếp cân: những tiến trình chia sẻ một vươn lên là chung vào vai trò lock , được khởi động=0. S Một quá trình muốn vào miền áp lực trước tiên đề nghị kiểm tra quý giá của đổi thay lock. Nếu lock = 0, các bước đặt lock = 1 và bước vào miền găng.
Xem thêm: Tìm Bài Hát Đi Ta Đi Lên
Xem thêm: 1 0 That Kiếm Anh Hùng Phần 5 Tập Cuối Mới Nhất 2021, Thất Kiếm Anh Hùng Phần 4
S nếu lock đã nhận giá trị 1, các bước phải chờ phía bên ngoài miền găng cho tới khi lock có mức giá trị 0.Nguyên lý hệ quản lý điều hành 7 Nguyễn Văn Huy – KTMT - 2008 Chương 7: Đồng cỗ hóa tiến trình 3.1.1. Các chiến thuật phần mềm a) Sử dụng các biến cờ hiệu: s cấu tạo của 1 tiến trình while (TRUE) while (lock == 1); // wait lock = 1; critical-section (); lock = 0; Noncritical-section ();Nguyên lý hệ quản lý 8 Nguyễn Văn Huy – KTMT - 2008 Chương 7: Đồng cỗ hóa tiến trình 3.1.1. Các phương án phần mềm bàn bạc về biện pháp sử dụng vươn lên là “Lock” s rất có thể vi phạm đk hai quy trình cùng ngơi nghỉ trong miền bao tay tại một thời điểm. S P1 s P2 while (TRUE) while (TRUE) while (lock == 1); // wait while (lock == 1); // wait lock = 1; lock = 1; critical-section (); critical-section (); lock = 0; lock = 0; Noncritical-section (); Noncritical-section ();Nguyên lý hệ điều hành 9 Nguyễn Văn Huy – KTMT - 2008 Chương 7: Đồng cỗ hóa tiến trình 3.1.1. Các giải pháp phần mượt b) sử dụng việc chất vấn luân phiên s Tiếp cận : Đây là một giải pháp đề nghị mang đến hai tiến trình. S Hai các bước này áp dụng chung đổi thay turn (phản ánh phiên các bước nào được vào miền găng), được khởi động với giá trị 0. Nếu như turn = 0, chỉ có các bước A được vào miền găng. Trường hợp turn = 1, chỉ có các bước B được đi vào miền găng.Nguyên lý hệ điều hành và quản lý 10 Nguyễn Văn Huy – KTMT - 2008 Chương 7: Đồng cỗ hóa quy trình 3.1.1. Các giải pháp phần mềm b) áp dụng việc bình chọn luân phiênNguyên lý hệ quản lý điều hành 11 Nguyễn Văn Huy – KTMT - 2008 Chương 7: Đồng bộ hóa tiến trình bàn bạc về giải pháp kiểm tra luân chuyển s ngăn ngừa được triệu chứng hai quy trình cùng vào miền găng. (?) s rất có thể vi phạm điều kiện một tiến trình có thể bị ngăn chặn vào miền căng thẳng bởi một các bước khác ko ở trong miền găng. (?)Nguyên lý hệ điều hành 12 Nguyễn Văn Huy – KTMT - 2008 Chương 7: Đồng cỗ hóa tiến trình 3.1.1. Các phương án phần mượt c) phương án của Peterson s Tiếp cận : Petson giới thiệu một giải pháp kết hợp ý tưởng của cả hai giải pháp kể trên. Những tiến trình chia sẻ hai vươn lên là chung : s int turn; // mang lại phiên ai s int interesse<2>; // khởi rượu cồn là FALSENguyên lý hệ điều hành 13 Nguyễn Văn Huy – KTMT - 2008 Chương 7: Đồng cỗ hóa các bước 3.1.1. Các phương án phần mượt c) phương án của Peterson while (TRUE) int j = 1-i; // j là quy trình còn lại interesse= TRUE; turn = j; while (turn == j && interesse