Lecture Operating system concepts (Fifth edition): Module 7 - Avi Silberschatz, Peter Galvin

Module 7 - Deadlocks. After studying this chapter you will be able to develop a description of deadlocks, which prevent sets of concurrent processes from completing their tasks; to present a number of different methods for preventing or avoiding deadlocks in a computer system. | Lecture Operating system concepts Fifth edition Module 7 - Avi Silberschatz Peter Galvin Module 7 Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Combined Approach to Deadlock Handling Silberschatz and Galvin 1999 The Deadlock Problem A set of blocked processes each holding a resource and waiting to acquire a resource held by another process in the set. Example System has 2 tape drives. P1 and P2 each hold one tape drive and each needs another one. Example semaphores A and B initialized to 1 P0 P1 wait A wait B wait B wait A Silberschatz and Galvin 1999 Bridge Crossing Example Traffic only in one direction. Each section of a bridge can be viewed as a resource. If a deadlock occurs it can be resolved if one car backs up preempt resources and rollback . Several cars may have to be backed upif a deadlock occurs. Starvation is possible. Silberschatz and Galvin 1999 System Model Resource types R1 R2 . . . Rm CPU cycles memory space I O devices Each resource type Ri has Wi instances. Each process utilizes a resource as follows request use release Silberschatz and Galvin 1999 Deadlock Characterization Deadlock can arise if four conditions hold simultaneously. Mutual exclusion only one process at a time can use a resource. Hold and wait a process holding at least one resource is waiting to acquire additional resources held by other processes. No preemption a resource can be released only voluntarily by the process holding it after that process has completed its task. Circular wait there exists a set P0 P1 P0 of waiting processes such that P0 is waiting for a resource that is held by P1 P1 is waiting for a resource that is held by P2 Pn 1 is waiting for a resource that is held by Pn and P0 is waiting for a resource that is held by P0. Silberschatz and Galvin 1999 Resource-Allocation Graph A set of vertices V and a set of edges E. V is .

Không thể tạo bản xem trước, hãy bấm tải xuống
TÀI LIỆU MỚI ĐĂNG
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.