Thursday, May 7, 2015

Session 9 - 10 | Deadlock

Deadlock

  • Terdapat 1 proses yang menunggu proses lain
  • Dapat saling mem-blok dimana sifatnya permanen
  • Tidak ada solusi yang efesien
  • Libatkan kebutuhan yang bertentangan untuk sumber (resource) dengan 2 atau lebih proses
Kondisi Penyebab Terjadinya Deadlock serta Pencegahannya
  • Mutual exclusion
    • penyebabnya adalah hanya satu proses pada suatu waktu yang dapat menggunakan sumber (Resources)
    • Pencegahannya adalah multiple access untuk baca (Read) tapi hanya 1 yang bisa tulis (Write)
  • Hold and wait
    • Penyebabnya adalah proses memegang setidaknya 1 sumber (Resource) yang menunggu untuk mendapatkan resource  tambahan yang dipegang oleh proses lain
    • Pencegahannya adalah yang sudah memiliki resource jangan ngambil resource lagi, jadi yang lkain harus diblok
  • No preemption
    • Penyebab adalah resource dapat dilepaskan hanya dengan sukarela oleh proses yang memegangnya, setelah proses tersebut telah menyelesaikan tugasnya
    • Pencegahannya adalah dapat menggunakan task manager
  • Circular wait
    • Penyebab adalah ada satu set {P0,P1,...,P0} proses sehingga Po menunggu resource yang dipegang oleh P1, P1 juga menunggu resource yang dipegang oleh P2, P2 juga menunggu resource yang dipegang oleh Po
    • Pencegahannya adalah P2 tidak boleh menunggu resource yang sudah dipegang ole P0
Model Deadlock
       
Grafik alokasi sumber daya:
  1. Memegang sumber daya
  2. Meminta sumber daya (Request)
  3. Deadlock
Startegi untuk Menanganu Dead lock
  1. Hanya dengan mengabaikan masalah. (Algoritma Ostrich)
  2. Deteksi dan pemulihan. Biarkan deadlock terjadi, mendeteksi deadlock, mengambil tindakan.
  3. Cari tau penyebab deadlock apa, kemudian kita alokasiin resource dengan hati - hati supaya lebih hemat
  4. Pencegahan, oleh struktural meniadakan salah satu dari empat kondisi yang diperlukan
Deteksi Deadlock

            

  1. Sebuah grafik resource
  2. Siklus diambil dari (a)
Penghindaran Deadlock


  • Mengetahui jumlah yang dibutuhkan dan jumlah yang ada
  • Didefinisikan oleh jumlah yang tersedia dan alokasi sumber (Resource), maksimum permintaan proses
Safe, Unsafe State

            

State (a) adalah Safe


www.binus.ac.id
www.skyconnectiva.com

No comments:

Post a Comment