Jumat, 08 Mei 2015

Deadlock


Deadlock

  • merupakan suatu kondisi dimana dua atau lebih proses memperebutkan atau mengakses satu resource yang sama
Kondisi-kondisi yang dapat menyebabkan Deadlock

1. Mutual Exclution
  • hanya ada satu proses yang bisa akses suatu resource
  • lebih  ke arah operating systemnya (aturannya)
  • operating sistem dapat mengatur agar tidak terjadi deadlock, suatu proses dapat diberikan multiple access untuk read tetapi hanya satu proses yang bisa write.
2. Hold and Wait
    ketika suatu proses hold suatu resource dan proses tersebut juga sedang menunggu resource lain.

3. No Preemption
    tidak dapat di interrupt, suatu proses tidak akan melepas suatu resource sampai proses tersebut             telah selesai atau proses tersebut mau melepas resource yang sedang di hold.       
4. Circular Wait
    kondisi dimana suatu proses saling menunggu, proses a menunggu proses b dan proses b                     menunggu proses c, dan begitu seterusnya.


Strategy dealing with Deadlock 
  • Mencegah atau menolak problem
  • Deteksi dan recovery, biarkan deadlock terjadi, deteksi deadlocknya dan ambil tindakan terhadap deadlock tersebut.
  • Jika sudah tahu kapan akses dan terjadi deadlock maka kedepannya jangan terulang lagi.
  • Pencegahan dengan meniadakan salah satu dari empat kondisi yang diperlukan.


Safe and Unsafe state










Buktikan bahwa B is unsafe, kerjakan yaah !!!




Deadlock Prevention




Starvation 
  • Algoritma untuk mengalokasikan resource
  • Bekerja dengan baik untuk shortest-job first
  • Dapat menyebabkan pekerjaan lama untuk di postpone





Tidak ada komentar:

Posting Komentar