Bài giảng Nguyên lý hệ điều hành: Chương 7 - Phạm Quang Dũng

11 152 0
Bài giảng Nguyên lý hệ điều hành: Chương 7 - Phạm Quang Dũng

Đ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 Nguyên lý hệ điều hành chương 7 trình bày về bế tắc (Deadlocks) trong hệ điều hành. Mục tiêu của chương này là mô tả bế tắc, tình trạng ngăn cản các tiến trình đồng thời hoàn thành tác vụ; giới thiệu các phương pháp khác nhau để ngăn ngừa hoặc tránh khỏi bế tắc trong một hệ thống máy tính. Mời các bạn cùng tham khảo.

Nội dung chương BÀI GIẢNG NGUYÊN LÝ HỆ ĐIỀU HÀNH „ Mơ hình hệ thống „ Mơ tả bế tắc Chương 7: Bế tắc (Deadlocks) Phạm Quang Dũng Bộ mơn Khoa học máy tính Khoa Cơng nghệ thơng tin Trường Đại học Nông nghiệp Hà Nội Website: fita.hua.edu.vn/pqdung „ Các phương pháp xử lý bế tắc „ Ngăn ngừa bế tắc „ Tránh khỏi bế tắc „ Phát bế tắc „ Phục hồi từ bế tắc „ Phương pháp kết hợp xử lý bế tắc Bài giảng Nguyên lý Hệ điều hành Mục tiêu 7.2 Phạm Quang Dũng ©2008 Vấn đề bế tắc (Deadlock) „ Mô tả bế tắc, tình trạng ngăn cản tiến trình đồng „ Trong mơi trường đa chương trình, số tiến trình tranh số tài nguyên hạn chế thời hồn thành tác vụ „ Một tiến trình u cầu tài nguyên, tài nguyên „ Giới thiệu phương pháp khác để ngăn ngừa tránh khỏi bế tắc hệ thống máy tính khơng thể đáp ứng thời điểm tiến trình chuyển sang trạng thái chờ „ Các tiến trình chờ khơng thay đổi lại trạng thái tài ngun mà u cầu bị giữ tiến trình chờ khác ⇒ ví dụ: tắc nghẽn cầu Bài giảng Nguyên lý Hệ điều hành 7.3 Phạm Quang Dũng ©2008 Bài giảng Nguyên lý Hệ điều hành 7.4 Phạm Quang Dũng ©2008 Ví dụ qua cầu 7.1 Mơ hình hệ thống „ Các loại tài nguyên R1, R2, , Rm Các chu kỳ CPU, không gian nhớ, tệp, thiết bị vào-ra „ Mỗi loại tài nguyên Ri có Wi cá thể (instance) z vd: hệ thống có CPU, có máy in ⇒ đáp ứng yêu cầu nhiều tiến trình „ Hai (hay nhiều hơn) ô tô đối đầu cầu hẹp đủ độ rộng cho „ Mỗi tiến trình sử dụng tài nguyên theo bước sau: yêu cầu (request): yêu cầu không giải (vd „ Mỗi đoạn cầu xem tài nguyên tài nguyên tiến trình khác sử dụng) tiến trình yêu cầu „ Nếu bế tắc xuất hiện, giải hay phải đợi nhận tài nguyên số ô tô lùi lại nhường đường tiến sau sử dụng (use) giải phóng (release) 7.5 Bài giảng Nguyên lý Hệ điều hành Phạm Quang Dũng ©2008 7.2 Mô tả bế tắc Bài giảng Nguyên lý Hệ điều hành 7.6 Phạm Quang Dũng ©2008 Biểu đồ phân phối tài nguyên Deadlock xảy điều kiện sau đồng thời tồn tại: „ Ngăn chặn lẫn nhau: thời điểm, tiến trình sử dụng tài nguyên „ Giữ đợi: tiến trình giữ tài ngun đợi để nhận tài nguyên khác giữ tiến trình khác „ Khơng có ưu tiên: tài ngun tiến trình (tự nguyện!) giải phóng hồn thành cơng việc „ Chờ đợi vòng tròn: tồn tập tiến trình chờ đợi {P0, P1, …, Pn, P0} Một tập đỉnh V tập cạnh E „ V chia thành loại: z P = {P1, P2, …, Pn}, tập tất tiến trình z R = {R1, R2, …, Rm}, tập loại tài ngun  Mỗi cá thể hình vng bên „ cạnh yêu cầu – cạnh có hướng Pi → Rj (tiến trình Pi đợi nhận hay nhiều cá thể tài nguyên Rj) Pi z P0 đợi tài nguyên bị giữ P1, z P1 đợi tài nguyên bị giữ P2, … „ cạnh định – cạnh có hướng Rj → Pi (tiến trình Pi z Pn–1 đợi tài nguyên bị giữ Pn, Rj giữ hay nhiều cá thể tài nguyên Rj) Pi z Pn đợi tài nguyên bị giữ P0 Rj Bài giảng Nguyên lý Hệ điều hành 7.7 Phạm Quang Dũng ©2008 Bài giảng Nguyên lý Hệ điều hành 7.8 Phạm Quang Dũng ©2008 Vd đồ thị thị phân phố phối tà tài ngun khơng chu trì trình Vd đồ đồ thị thị phân phố phối tà tài ngun có có chu trì trình Bế tắc Khơng bế tắc: P4 P2 kết thúc, khiến P1 P3 kết thúc Nếu đồ thị không chu trình khơng có tiến trình bị bế tắc Nếu đồ thị có chu trình tồn bế tắc 7.9 Bài giảng Nguyên lý Hệ điều hành Phạm Quang Dũng ©2008 Kết luận đồ thị Bài giảng Nguyên lý Hệ điều hành 7.10 Phạm Quang Dũng ©2008 7.3 Các phương pháp xử lý bế tắc „ Nếu đồ thị khơng chu trình „ Sử dụng phương thức để ngăn ngừa tránh xa, đảm ⇒ không xảy bế tắc bảo hệ thống không vào trạng thái bế tắc „ Cho phép hệ thống vào trạng thái bế tắc khôi phục lại „ Nếu đồ thị có chu trình ⇒ z loại tài ngun cá thể chắn xảy „ Bỏ qua vấn đề vờ bế tắc không xuất bế tắc z loại tài ngun có vài cá thể xảy hệ thống Giải pháp sử dụng hầu hết HĐH, bao gồm UNIX bế tắc Bài giảng Nguyên lý Hệ điều hành 7.11 Phạm Quang Dũng ©2008 Bài giảng Nguyên lý Hệ điều hành 7.12 Phạm Quang Dũng ©2008 7.4 Ngăn ngừa bế tắc Ngăn ngừa bế tắc (tiếp) Ngăn cản cách tạo yêu cầu: đảm bảo bốn điều kiện xuất „ Ngăn cản lẫn – đảm bảo hệ thống file khơng thể chia sẻ „ Khơng có ưu tiên z Nếu tiến trình giữ số tài nguyên yêu cầu tài nguyên khác mà khơng thể phân phối cho tất tài nguyên giữ giải phóng z tiến trình khơng phải chờ tài nguyên chia sẻ  vd: read-only files z Các tài nguyên ưu tiên thêm vào danh sách tài nguyên dành cho tiến trình chờ đợi z số tài nguyên chia sẻ z Tiến trình khởi động lại lấy lại tài nguyên cũ  vd: chế độ tồn hình tài nguyên mà yêu cầu „ Giữ đợi – phải đảm bảo tiến trình u cầu tài ngun, khơng giữ tài nguyên khác „ Chờ đợi vòng tròn – áp dụng thứ tự tuyệt đối cho tất loại tài nguyên: loại gắn số ngun z Địi hỏi tiến trình u cầu phân phối tất tài nguyên z tiến trình u cầu tài ngun theo thứ tự tăng dần: nhận trước bắt đầu thực hiện, cho phép tiến trình u cầu tài ngun có trọng số cao tài nguyên giữ tài ngun khơng giữ tài ngun z ⇒ Muốn có tài nguyên i, tiến trình phải giải phóng tất tài ngun có z Hiệu sử dụng tài nguyên thấp, xảy starvation Bài giảng Nguyên lý Hệ điều hành 7.13 trọng số j > i (nếu có) Phạm Quang Dũng ©2008 7.14 Bài giảng Nguyên lý Hệ điều hành 7.5 Tránh khỏi bế tắc Phạm Quang Dũng ©2008 7.5.1 Safe State „ Một trạng thái an toàn hệ thống phân phối tài Yêu cầu HĐH phải có số thơng tin ưu tiên „ Mơ hình hữu dụng đơn giản u cầu tiến trình cơng bố số lượng tài ngun lớn loại mà cần đến nguyên cho tiến trình mà tránh bế tắc „ Khi tiến trình yêu cầu tài nguyên rỗi, hệ thống phải định liệu phân phối có làm cho hệ „ Giải thuật tránh bế tắc kiểm tra trạng thái phân phối tài nguyên để đảm bảo tình trạng chờ đợi vịng trịn thống an tồn hay khơng? „ Hệ thống trạng thái an toàn tồn chuỗi an tồn tất tiến trình „ Trạng thái phân phối tài nguyên xác định số tài nguyên khả dụng phân phối yêu cầu tối đa từ tiến trình Bài giảng Nguyên lý Hệ điều hành 7.15 Phạm Quang Dũng ©2008 Bài giảng Nguyên lý Hệ điều hành 7.16 Phạm Quang Dũng ©2008 Safe State (tiếp) Safe State: thực tế dễ nhận „ Chuỗi an tồn với Pi, tài ngun mà yêu cầu cung cấp tài nguyên khả dụng tài nguyên giữ Pj, với j

Ngày đăng: 30/01/2020, 00:27

Từ khóa liên quan

Mục lục

  • BÀI GIẢNG NGUYÊN LÝ HỆ ĐIỀU HÀNH Chương 7: Bế tắc (Deadlocks)

  • Nội dung chương 7

  • Mục tiêu

  • Vấn đề bế tắc (Deadlock)

  • Ví dụ qua cầu

  • 7.1. Mô hình hệ thống

  • 7.2. Mô tả bế tắc

  • Biểu đồ phân phối tài nguyên

  • Vd đồ thị phân phối tài nguyên không chu trình

  • Vd đồ thị phân phối tài nguyên có chu trình

  • Kết luận về đồ thị

  • 7.3. Các phương pháp xử lý bế tắc

  • 7.4. Ngăn ngừa bế tắc

  • Ngăn ngừa bế tắc (tiếp)

  • 7.5. Tránh khỏi bế tắc

  • 7.5.1. Safe State

  • Safe State (tiếp)

  • Safe State: thực tế dễ nhận

  • Safe, Unsafe, Deadlock State

  • 7.5.2. Giải thuật đồ thị phân phối tài nguyên

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

Tài liệu liên quan