Bài giảng Hệ điều hành: Chương 5.3 - Đại học Công nghệ Thông tin

52 113 0
Bài giảng Hệ điều hành: Chương 5.3 - Đại học Công nghệ Thông tin

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài giảng Hệ điều hành - Chương 5.3: Đồng bộ giúp người học biết được các giải pháp đồng bộ tiến trình theo kiểu “Sleep & Wake up” bao gồm: Semaphore, critical region, monitor, áp dụng các giải pháp này vào các bài toán đồng bộ kinh điển. Mời các bạn cùng tham khảo.

HỆ ĐIỀU HÀNH Chương – Đồng (3) 1/17/2018 1/17/2018 Copyrights 2017 CE-UIT All Rights Reserved Ôn tập chương (2)  Khi xảy tranh chấp race condition?  Vấn đề Critical Section gì?  Yêu cầu lời giải cho CS problem?  Có loại giải pháp? Kể tên? 1/17/2018 Copyrights 2017 CE-UIT All Rights Reserved Mục tiêu chương (3)  Biết giải pháp đồng tiến trình theo kiểu “Sleep & Wake up” bao gồm: Semaphore Critical Region Monitor  Áp dụng giải pháp vào toán đồng kinh điển 1/17/2018 Copyrights 2017 CE-UIT All Rights Reserved Nội dung chương (2)  Các giải pháp “Sleep & Wake up” Semaphore Các toán đồng kinh điển Critical Region Monitor  Áp dụng giải pháp vào toán đồng kinh điển 1/17/2018 Copyrights 2017 CE-UIT All Rights Reserved Các giải pháp “Sleep & Wake up” int busy; int blocked; do{ if (busy){ // =1 nếu CS bị chiếm // số P bị khóa blocked = blocked +1; sleep(); } else busy =1; CS; busy = 0; if (blocked !=0){ wakeup (process); blocked = blocked -1; } RS; } while (1); 1/17/2018 Copyrights 2017 CE-UIT All Rights Reserved Semaphore  Là công cụ đồng cung cấp bởi OS mà khơng đòi hỏi busy waiting  Semaphore S biến số nguyên  Ngồi thao tác khởi động biến chỉ truy xuất qua hai tác vụ có́ tính đơn nguyên (atomic) loại trừ (mutual exclusive)  wait(S) hay gọi P(S): giảm giá trị semaphore (S=S-1) Kế giá trị âm process thực hiện lệnh wait() bị blocked  signal(S) hay gọi V(S): tăng giá trị semaphore (S=S+1) Kế giá trị không dương, process blocked bởi lệnh wait() sẽ hồi phục để thực thi  Tránh busy waiting: phải đợi process sẽ đặt vào blocked queue, chứa process chờ đợi cùng sự kiện 1/17/2018 Copyrights 2017 CE-UIT All Rights Reserved Semaphore (tt)  P(S) hay wait(S) sử dụng để giành tài nguyên giảm biến đếm S=S-1  V(S) hay signal(S) sẽ giải phóng tài nguyên tăng biến đếm S= S+1  Nếu P thực hiện biến đếm

Ngày đăng: 30/01/2020, 03:50

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan