Bài Giảng Hệ Điều Hành-Chương 6: Deadlocks ppt

42 1.3K 8
Bài Giảng Hệ Điều Hành-Chương 6: Deadlocks ppt

Đ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

Chương Chương 6: Deadlocks 6: Deadlocks 7.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 14, 2005 N N Ộ Ộ I DUNG I DUNG  Vấn Deadlock  Mô hình hệ thống  Đặctrưng Deadlock  Các phương pháp quản lý Deadlocks  Phòng ngừa Deadlock  Tránh Deadlock  Phát hiện Deadlock  Phụchồitừ Deadlock 7.3 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 14, 2005 M M Ụ Ụ C TIÊU C TIÊU  Phát triểnmộtmôtả deadlocks, hiệntượng ngăncản tập các giao dịch cạnh tranh hoàn tất nhiệmvụ của chúng  Giớithiệumộtsố phương pháp khác nhau để ngăn ngừa, tránh deadlocks trong hệ thống máy tính.  Giớithiệuphương pháp phát hiệnvàphụchồitừ deadlocks 7.4 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 14, 2005 V V Ấ Ấ N Đ N Đ Ề Ề Deadlock Deadlock  Mộttập các quá trình bị nghẽn, mỗimộtchiếmgiữ mộttài nguyên và chờđợitậu tài nguyên bị chiếmgiữ bởi quá trình khác trong tậphợp.  VD. z Hệ thống có hai ổđĩa. z P 1 và P 2 mỗimộtchiếmgiữ một ổđĩavàmỗimộtcần ổđĩa kia.  VD. z semaphores A và B, đượckhởi động là 1 P 0 P 1 wait (A); wait(B) wait (B); wait(A) 7.5 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 14, 2005 V V Í Í D D Ụ Ụ QUA C QUA C Ầ Ầ U U  Lưu thông chỉ theo mộtchiều.  Mỗiphầncủacầu được xem như một tài nguyên.  Nếu deadlock xảyranósẽ đượcgiảiquyếtnếumộtxelùi lại(trưng các tài nguyên và cuộnlại).  Một vài xe có thể bị lùi lại khi deadlock xảyra.  Có thể xảyra“sự chết đói”. 7.6 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 14, 2005 MÔ HÌNH H MÔ HÌNH H Ệ Ệ TH TH Ố Ố NG NG  Các kiểu tài nguyên: R 1 , R 2 , . . ., R m Các chu kỳ CPU, không gian bộ nhớ, các thiếtbị I/O  Mỗi tài nguyên kiểu R i có W i thể hiện.  Mỗi quá trình sử dụng một tài nguyên như sau: z Yêu cầu tài nguyên z Sử dụng tài nguyên z Giải phóng tài nguyên 7.7 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 14, 2005 Đ Đ Ặ Ặ C TRƯNG DEADLOCK C TRƯNG DEADLOCK  Loạitrừ tương hỗ (Mutual exclusion): chỉ một quá trình sử dụng một tài nguyên tạimộtthời điểm.  Giữ và chờ (Hold and wait): một quá trình chiếmgiữ ít nhấtmột tài nguyên và chờ tậu các tài nguyên bổ xung bị chiếmgiữ bởi các quá trình khác.  Không có trưng dụng: một tài nguyên chỉ có thểđượcgiải phóng bởisự tình nguyệncủa quá trình chiếmgiữ nó (sau khi quá trình đã hoàn thành nhiệmvụ củanó).  Chờđợi vòng tròn: Tồntạimộttập{P 0 , P 1 , …, P 0 } các quá trình chờđợi sao cho P 0 chờ một tài nguyên bị chiếmgiữ bởi P 1 , P 1 chờ một tài nguyên bị chiếmgiữ bởi P 2 , …, P n–1 chờ một tài nguyên bị chiếmgiữ bởi P n , và P n chờ mộttài nguyên bị chiếmgiữ bởi P 0 . Điềukiệncần để deadlock xảyra: 7.8 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 14, 2005 Đ Đ Ồ Ồ TH TH Ị Ị C C Ấ Ấ P PH P PH Á Á T T T T À À I NGUYÊN I NGUYÊN  V được phân hoạch thành hai kiểu: z P = {P 1 , P 2 , …, P n }, gồmtấtcả các quá trình trong hệ thống. z R = {R 1 , R 2 , …, R m }, gồmtấtcả các kiểu tài nguyên trong hệ thống.  Cung yêu cầu – cung hướng từ P i đếnR j : P i → R j  Cung gán – hướng từ R j đếnP i : R j → P i Mộttậpcácđỉnh V và mộttập các cung E. 7.9 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 14, 2005 Đ Đ Ồ Ồ TH TH Ị Ị C C Ấ Ấ P PH P PH Á Á T T T T À À I NGUYÊN (Cont.) I NGUYÊN (Cont.)  Quá trình  Kiều tài nguyên với 4 thể hiện  P i yêu cầuthể hiệncủa R j  P i đang chiếmgiữ mộtthể hiệncủakiểu tài nguyên R j P i P i R j R j 7.10 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 14, 2005 V V Í Í D D Ụ Ụ Đ Đ Ồ Ồ TH TH Ị Ị C C Ấ Ấ P PH P PH Á Á T T T T À À I NGUYÊN I NGUYÊN [...]... QUẢN LÝ DEADLOCKS Đảm bảo hệ thống không bao giờ rơi vào trạng thái deadlock Cho phép hệ thống rơi vào trạng thái deadlock sau đó phát hiện và phục hồi Bỏ lơ vấn đề và xem như deadlocks không bao giờ xảy ra (được sử dụng trong hầu hết các HĐH kể cả UNIX) Operating System Concepts - 7th Edition, Feb 14, 2005 7.14 Silberschatz, Galvin and Gagne ©2005 NGĂN NGỪA DEADLOCK Ngăn cản một trong bốn điều kiện... 7.17 Silberschatz, Galvin and Gagne ©2005 TRẠNG THÁI AN TOÀN Khi một quá trình yêu cầu một tài nguyên sẵn có, hệ thống phải xác định nếu cấp phát ngay, hệ thống vẫn trong trạng thái an toàn Hệ thống trong trạng thái an toàn nếu tồn tại một dãy của TẤT CẢ các quá trình trong hệ thống sao cho đối với mỗi Pi, tất cả các tài nguyên mà Pi cần được thỏa mãn bởi các tài nguyên nó hiện có +... thiết và cứ như vậy Operating System Concepts - 7th Edition, Feb 14, 2005 7.18 Silberschatz, Galvin and Gagne ©2005 SỰ KIỆN CƠ SỞ Nếu hệ thống trong trạng thái an toàn ⇒ không có deadlocks Nếu hệ thống không trong trạng thái an toàn ⇒ có thể có deadlock Tránh ⇒ đảm bảo hệ thống không bao giờ rơi vào trạng thái không an toàn Operating System Concepts - 7th Edition, Feb 14, 2005 7.19 Silberschatz, Galvin... dài m và n, tương ứng Khởi động: Work = Available Finish [i] = false for i = 0, 1, …, n- 1 2 Tìm i sao cho hai điều kiện sau thỏa mãn: (a) Finish [i] = false (b) Needi ≤ Work Nếu không tìm thấy, go to 4 3 Work = Work + Allocationi Finish[i] = true go to 2 4 Nếu Finish [i] == true với mọi i, hệ thông trong trạng thái an toàn Operating System Concepts - 7th Edition, Feb 14, 2005 7.28 Silberschatz, Galvin... theo yêu cầu của P0 Yêu cầu (3,3,0) bởi P4 được cấp? Yêu cầu (0,2,0) bời P0 được cấp? Operating System Concepts - 7th Edition, Feb 14, 2005 7.32 Silberschatz, Galvin and Gagne ©2005 PHÁT HIỆN DEADLOCKS Cho phép hệ thống rơi vào trạng thái deadlock Thuật toán phát hiện deadlock Sơ đồ phục hồi Operating System Concepts - 7th Edition, Feb 14, 2005 7.33 Silberschatz, Galvin and Gagne ©2005 MỖI KIỂU TÀI... 2005 7.30 Silberschatz, Galvin and Gagne ©2005 VD (Cont.) Ma trận Need = Max – Allocation Need ABC P0 743 P1 122 P2 600 P3 011 P4 431 Thuật toán an toàn cho ra dãy an toàn < P1, P3, P4, P2, P0>, như vậy hệ thống trong trạng thái an toàn Operating System Concepts - 7th Edition, Feb 14, 2005 7.31 Silberschatz, Galvin and Gagne ©2005 VD : P1 YÊU CẦU (1,0,2) Kiểm tra Request1 ≤ Need1 ((1,0,2) ≤ (1, 2, 2)... các kiểu tài nguyên và đòi hỏi mỗi quá trình yêu cầu tài nguyên theo thứ tự tăng Operating System Concepts - 7th Edition, Feb 14, 2005 7.16 Silberschatz, Galvin and Gagne ©2005 TRÁNH Deadlock Đòi hỏi hệ thống phải có thông tin tiên quyết Mô hình đơn giản nhất và hữu dụng nhất là đòi hỏi mỗi quá trình phải khai báo số lượng tối đa các tài nguyên cần thiết của mỗi kiểu Thuật toán tránh deadlock kiểm . Chương Chương 6: Deadlocks 6: Deadlocks 7.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 14, 2005 N N Ộ Ộ I DUNG I DUNG  Vấn Deadlock  Mô hình hệ thống . QU Ả Ả N LÝ DEADLOCKS N LÝ DEADLOCKS  Đảmbảohệ thống không bao giờ rơivàotrạng thái deadlock.  Chophéphệ thống rơivàotrạng thái deadlock sau đóphát hiệnvàphụchồi.  Bỏ lơ vấn đề và xem như deadlocks. 2005 S S Ự Ự KI KI Ệ Ệ N CƠ S N CƠ S Ở Ở  Nếuhệ thống trong trạng thái an toàn ⇒ không có deadlocks.  Nếuhệ thống không trong trạng thái an toàn ⇒ có thể có deadlock.  Tránh ⇒ đảmbảohệ thống không bao giờ rơivàotrạng thái

Ngày đăng: 28/06/2014, 15:20

Từ khóa liên quan

Mục lục

  • Chương 6: Deadlocks

  • NỘI DUNG

  • MỤC TIÊU

  • VẤN ĐỀ Deadlock

  • VÍ DỤ QUA CẦU

  • MÔ HÌNH HỆ THỐNG

  • ĐẶC TRƯNG DEADLOCK

  • ĐỒ THỊ CẤP PHÁT TÀI NGUYÊN

  • ĐỒ THỊ CẤP PHÁT TÀI NGUYÊN (Cont.)

  • VÍ DỤ ĐỒ THỊ CẤP PHÁT TÀI NGUYÊN

  • ĐỒ THỊ CẤP PHÁT TÀI NGUYÊN VỚI DEADLOCK

  • ĐỒ THỊ CÓ CHU TRÌNH NHƯNG KHÔNG CÓ Deadlock

  • CÁC SỰ KIỆN CƠ SỞ

  • CÁC PHƯƠNG PHÁP QUẢN LÝ DEADLOCKS

  • NGĂN NGỪA DEADLOCK

  • Deadlock Prevention (Cont.)

  • TRÁNH Deadlock

  • TRẠNG THÁI AN TOÀN

  • SỰ KIỆN CƠ SỞ

  • TRẠNG THÁI AN TOÀN, KHÔNG AN TOÀN & Deadlock

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

Tài liệu liên quan