Tuesday, October 16, 2018

Karakteristik dan 4 metode penanganan Deadlock!




Helo sobat, pada kesempatan kali ini kita akan membahas mengenai karakteristik dan beberapa metode penanganan Deadlock yang cukup sering digunakan, oke semoga artikel ini dapat bermanfaat.

Deadlock merupakan suatu kondisi dimana dua atau lebih proses saling menunggu meminta resources untuk waktu yang tidak terbatas lamanya sampai-sampai program atau aplikasi yang kita jalankan akan stop working karna daya yang kurang didapat. Deadlock adalah efek samping dari sinkronisasi, dimana satu variabel digunakan oleh 2 proses.

Secara sederhana deadlock dapat terjadi dan menjadi hal yang merugikan, jika pada suatu saat ada suatu proses yang memakai sumber daya dan ada proses lain yang berjalan.

Karakteristik deadlock

Situasi deadlock dapat terjadi bila terdapat 4 kondisi yang berjalan serentak pada sistem, yaitu:

1. Mutual Exclusion

Sebuah resource hanya dapat digunakan oleh sebuah proses pada suatu waktu tertentu. (resource yang non-shareable.)

2. Hold and Wait

terdapat proses yang sedang menunggu dan memegang resource

3. Non-Preemtion

Resource tidak dapat digunakan sebelum proses yang menggunakan telah selesai menggunakan dan kemudian melepaskannya.

4. Circular Wait

Proses-proses berada dalam lingkaran. Terjadi saling menunggu resource yang sedang digunakan oleh proses berikutnya dalam lingkaran tersebut.

Metode Penanganan Dealock Secara umum terdapat 4 cara untuk menangani keadaan deadlock, yaitu:

1. Pengabaian

Maksud dari pengabaian di sini adalah sistem mengabaikan terjadinya deadlock dan pura-pura tidak tahu kalau deadlock terjadi. Dalam penanganan dengan cara ini dikenal istilah ostrich algorithm.

Pelaksanaan algoritma ini adalah sistem tidak mendeteksi adanya deadlock dan secara otomatis mematikan proses atau program yang mengalami deadlock.

Kebanyakan sistem operasi yang ada mengadaptasi cara ini untuk menangani keadaan deadlock. Cara penanganan dengan mengabaikan deadlock banyak dipilih karena kasus deadlock tersebut jarang terjadi dan relatif rumit dan kompleks untuk diselesaikan.

2. Pencegahan

Penanganan ini dengan cara mencegah terjadinya salah satu karakteristik deadlock. Penanganan ini dilaksanakan pada saat deadlock belum terjadi pada sistem. Intinya memastikan agar sistem tidak akan pernah berada pada kondisi deadlock.

3. Penghindaran

Menghindari keadaan deadlock. Bagian yang perlu diperhatikan oleh pembaca adalah bahwa antara pencegahan dan penghindaran adalah dua hal yang berbeda. Pencegahan lebih kepada mencegah salah satu dari empat karakteristik deadlock terjadi, sehingga deadlock pun tidak terjadi. Sedangkan penghindaran adalah memprediksi apakah tindakan yang diambil sistem, dalam kaitannya dengan permintaan proses akan sumber daya, dapat mengakibatkan terjadi deadlock.

4. Pendeteksian dan pemulihan

Tindakan yang harus diambil adalah tindakan yang bersifat represif. Tindakan tersebut adalah dengan mendeteksi adanya deadlock, kemudian memulihkan kembali sistem. Proses pendeteksian akan menghasilkan informasi apakah sistem sedang deadlock atau tidak serta proses mana yang mengalami deadlock.


Sekian pembahasan mengenai Karakteristik dan 4 metode penanganan Deadlock, semoga pembahasan kali ini dapat menambah wawasan kita semua. Terimakasih atas kunjungan kalian.
NEXT ARTICLE Next Post
PREVIOUS ARTICLE Previous Post
NEXT ARTICLE Next Post
PREVIOUS ARTICLE Previous Post
 
banner