Gruppled - Help Select

Senin, 28 Oktober 2013

Sistem Operasi : DEADLOCK


  • Deadlock adalah sebuah proses yang memerlukan satu sumber daya atau lebih mengalami penundaan ataupun menunggu sumber daya digunakan oleh proses yang lain.
  • Sumber daya bersifat :
    • Preemptible : dapat mengambil dari proses lain tanpa ada efek lain
    • Non-preemptible : tidak boleh mengambil sumber daya yang masih digunakan oleh proses lain
  • Apabila peristiwa deadlock terjadi dalam kurung waktu yang lama maka akan terjadi “starvation”
  • Sebuah proses melakukan tiga hal yang dilakukan ketika menggunakan sumber daya :
    • Meminta (Request) : sebuah proses mengajukan permohonan kepada sumber daya untuk menggunakan jasa sumber daya sebagai alat transportasi.
    • Menggunakan (Use) : proses menggunakan jasa sumber daya sebagai alat transportasi.
    • Melepas (Release) : proses melepas sumber daya sebagai jasa pengantar.

  •  Metode penanganan deadlock:
    • Deadlock Prevention: Pencegahan adanya faktor-faktor penyebab deadlock.
    • Deadlock Avoidance: Menghindari dari situasi yang potensial dapat mengarah menjadi deadlock.
    • Deadlock Detection: Jika deadlock ternyata tidak terhindari maka bagaimana mendeteksi terjadinya deadlock, dilanjutkan dengan penyelamatan (recovery).
  • Syarat dan Penyebab Deadlock
  • Mutual Exclusion : membuat file spool untuk resource yang digunakan bersama-sama.  
  • Hold and Wait : Situasi dimana suatu proses sedang hold suatu resource secara eksklusif dan ia menunggu mendapatkan resource lain (wait)..  
  • Circular Waiting : Situasi dimana terjadi saling menunggu antara  beberapa proses sehingga membentuk waiting chain (circular).  
  • No Preemption : Proses tidak dapat dipaksa (pre-empt) untuk melepaskan resource yang sedang di hold.
  • State Safe and State Unsafe
    • State safe adalah cara mengatur kebutuhan sebuah proses menurut sumber daya yang paling dibutuhkan oleh proses tersebut sehingga sumber daya tersebut dapat dilepaskan oleh proses.
    • State unsafe adalah terjadinya kesalahan dalam pengaturan pengambilan sumber daya oleh proses sehingga sebuah proses mengalami hold and wait, non-preemption.