oleh : Ariga Rizka Putra

Elektronika dan Instrumentasi

Universitas Gadjah Mada

Abstract: Deadock terjadi saat prosesor mengeksekusi dua atau lebih program yang mana dari masing-masing program memiliki sumber daya dan sumber daya dari masing-masing program saling diminta oleh program satu dan program kedua maka terjadilah kondisi dimana program pertama meminta dan program kedua saling meminta sumber daya yang sedang digunakan.
  1. PENDAHULUAN

Deadlock atau bahasa umumnya “hang” adalah Suatu kondisi dimana proses tidak berjalan lagi atau pun tidak ada komunikasi lagi antar proses.

Deadlock disebabkan karena proses yang satu menunggu sumber daya yang sedang dipegang oleh proses lain yang sedang menunggu sumber daya yang dipegang oleh proses tersebut

Fenomena deadlock tidak bisa dihilangkan akan tetapi masih ada cara untuk mencegahnya.

Kondisi terjadinya deadlock dipengaruhi oleh beberapa hal yaitu :

1. Mutual Eksklusif: hanya ada satu proses yang boleh memakai sumber daya, dan proses lain yang ingin memakai sumber daya tersebut harus menunggu hingga sumber daya tadi dilepaskan atau tidak ada proses yang memakai sumber daya tersebut.

2. hold and wait : proses yang sedang memakai sumber daya boleh meminta sumber daya lagi maksudnya menunggu hingga benar-benar sumber daya yang diminta tidak dipakai oleh proses lain, hal ini dapat menyebabkan kelaparan sumber daya sebab dapat saja sebuah proses tidak mendapat sumber daya dalam waktu yang lama.

3. No Preemption: sumber daya yang ada pada sebuah proses tidak boleh diambil begitu saja oleh proses lainnya. Untuk mendapatkan sumber daya tersebut, maka harus dilepaskan terlebih dahulu oleh proses yang memegangnya, selain itu seluruh proses menunggu dan mempersilahkan hanya proses yang memiliki sumber daya yang boleh berjalan.

4. Circular Wait: kondisi seperti rantai, yaitu sebuah proses membutuhkan sumber daya

yang dipegang proses berikutnya.

2. PROSES TERJADINYA DEADLOCK

Deadlock sering terjadi saat kita menjalankan aplikasi yang membutuhkan sumber daya memori yang besar. Misalnya yang saya alami adalah saat memainkan game yang membutuhkan grafik dan memori yang besar, misal beberapa game online sekarang yang membutuhkan grafis yang tinggi. Setelah bermain kira-kira 1 jam komputer mulai berjalan agak lambat, lalu saya berhenti sebentar untuk mengerjakan tugas yang menggunakan aplikasi matlab yang membutuhkan memori besar juga, seketika itu juga kedua program menjadi not responding (hang/deadlock). Komputer tidak mau merespon lagi keinginan user, tidak bisa digerakkan, dan tidak bisa memproses apapun, walaupun untuk membuka task manager (ctrl+alt+del) juga tidak merespon. Satu-satunya cara yang bisa dilakukan adalah menekan tombol restart pada cpu dan menghidupkan lagi komputer.

Deadlock pada kondisi ini disebabkan karena pemakaian sumber daya yang sangat besar pada memory dan memory VGA, sumber daya dari memori sedang dialokasikan untuk proses gaming yang membutuhkan banyak sumber daya, saat itu juga proses kedua dijalankan sedang proses pertama masih menggunakan sumber daya memori komputer dan VGA, menyebabkan kedua proses saling memperebutkan sumber daya yaitu memory dan VGA maka deadlock (hang/not responding).

Untuk menghindari terjadinya deadlock ada beberapa cara yang perlu diperhatikan, yaitu :

1. harus menjaga sumber yang tidak dapat dibagi.

2. harus menjamin bahwa kapan saja ada permintaan proses akan sumber daya, sumber daya itu tidak sedang dipakai sumber daya lain.

3. memaksakan total pemesanan dari semua jenis sumber daya, dan memerlukan tiap proses permintaan sumber daya dalam satu peningkatan order of enumeration.

Tapi hal tersebut sangat sulit, jadi kita menanggulangi saja deadlock dengan cara yaitu :

    1. Mengabaikan masalah deadlock
    2. Mendeteksi dan memperbaiki
    3. Deadlock avoidance sistem
    4. Deadlock prevention sistem

3. KESIMPULAN

Deadlock dapat terjadi saat banyak proses meminta sumber yang sama.

Pada sistem operasi permintaan terhadap sumber daya dipastikan dalam kondisi safe agar tidak terjadi deadlock.

4. REFERENSI

Silberschatz, A. dan Galvin, P. Operating System Concept Sixth Edition. Massachhussets. Addisson Wasley. 2003.

_________.Computer Science 322. Deadlock. Mount Holyoke College .2008.

http://en.wikipedia.org/wiki/Deadlock