Bài giảng giúp người học hiểu được nhóm giải pháp Busy waiting bao gồm: Các giải pháp phần mềm sử dụng giải thuật kiểm tra luân phiên, sử dụng các biến cờ hiệu, giải pháp của Peterson, giải pháp Bakery, các giải pháp phần cứng,. . | HỆ ĐIỀU HÀNH Chương 5 – Đồng bộ (2) 11/2/2017 11/2/2017 Copyrights 2017 CE-UIT. All Rights Reserved. 1 Ôn tập chương 5 (1) Khi nào thì xảy ra tranh chấp race condition? Vấn đề Critical Section là gì? Yêu cầu của lời giải cho CS problem? Có mấy loại giải pháp? Kể tên? 11/2/2017 Copyrights 2017 CE-UIT. All Rights Reserved. 2 Mục tiêu chương 5 (2) Hiểu được nhóm giải pháp Busy waiting bao gồm: Các giải pháp phần mềm Các giải pháp phần cứng 11/2/2017 Copyrights 2017 CE-UIT. All Rights Reserved. 3 Nội dung chương 5 (2) Các giải pháp phần mềm Sử dụng giải thuật kiểm tra luân phiên Sử dụng các biến cờ hiệu Giải pháp của Peterson Giải pháp Bakery Các giải pháp phần cứng Cấp ngắt Chỉ thị TSL 11/2/2017 Copyrights 2017 CE-UIT. All Rights Reserved. 4 Giải thuật 1 Biến chia sẻ int turn; /* khởi đầu turn = 0 */ nếu turn = i thì Pi được phép vào critical section, với i = 0 hay 1 Process Pi do { while (turn != i); critical section turn = j; remainder section } while (1); Thỏa mãn Mutual exclusion (1) Nhưng không thoả mãn yêu cầu về progress (2) và bounded waiting (3) vì tính chất strict alternation của giải thuật 11/2/2017 Copyrights 2017 CE-UIT. All Rights .