coba_dulu

silahkan_menikmati_blog_ini

22 Mei, 2010

Penanganan Deadlock

Di posting oleh Annaas Pamungkas

Terdapat beberapa cara dalam menangani deadlock, yang secara umumnya ada 4 cara untuk menangani keadaan deadlock, yaitu:

1.      Pengabaian. Maksud dari pengabaian dari kata tersebut yaitu sistem mengabaikan terjadinya deadlock dan berpura-pura tidak mengetahui jika deadlock telah terjadi. Dalam penanganan dengan cara ini dikenal dengan istilah ostrich algorithm. Pelaksanaan algoritma ini yaitu 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 digunakan karena masalah deadlock tersebut jarang terjadi dan relatif rumit dan kompleks untuk diselesaikan. Sehingga biasanya diabaikan oleh sistem untuk kemudian diselesaikan masalahnya oleh user atau pengguna dengan cara melakukan terminasi dengan Ctrl+Alt+Del atau melakukan restart terhadap komputer.

2.      Pencegahan. Penanganan ini dengan cara mencegah munculnya salah satu karakteristik deadlock. Penanganan ini dilaksanakan pada saat deadlock belum terjadi pada sistem. Yang terutama memastikan agar sistem tidak akan pernah berada pada kondisi deadlock.

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

4.      Pendeteksian dan Pemulihan. Pada sistem yang sedang berada pada kondisi deadlock, 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. 

Tidak ada komentar: