Deadlocks


Pengertian :
proses menunggu suatu kejadian tertentu yg tidak pernah terjadi

*model deadlock
urutan kejadian pengoperasian perangkap input/output :
1. meminta (request) : meminta pelayanan perangkat input/output
2. memakai (use) : memakai perangkat input/output.
3. melepaskan (release) : melepaskan pemakaian input/output

deadlock tidak hanya terjadi pd 2 proses dan 2 sumber daya, deadlock
dapat terjadi dengan melibatkan lebih dari 2 proses dan 2 sumber daya.

karakteristik deadlock
coffman menyatakan untuk syarat terjadinya deadlock:
1.mutual exclusion
2.hold and wait
3.non-preemption condition (kondisi non preemption)
4.circular wait condition (kondisi menunggu secara sirkular)

metode2 mengatasi deadlock :
1.metode pencegahan terjadinya deadlock (deadlock prevention)
2. metode penghindaran terjadinya deadlock(deadlock avoidance)
3.metode deteksi dan pemulihan dari deadlock (deadlock detection and recovery)

pencegahan daedlock
Havendar menyarankan srategi untuk meniadakan dg syarat ;
1.setiap proses harus meminta semua sumber daya yg diperlukan sekaligus
dan tidak berlanjut sampai semua diberikan
2.jika proses telah sedang memegang sumber daya tertentu, untuk permintaan berikutnya
proses harus melepas dulu sumber daya yg dipegangnya. jika diperlukan
proses meminta kembali sekaligus dengan sumber daya yg baru
3.beri pengurutan linier terhadap tipe2 sumber daya pd semua proses,
yaitu jika proses telah dialokasikan suatu tipe sumber daya,proses
hanya boleh berikutnya meminta sumber daya -sumber daya tipe pada urutan berikutnya

Algoritma Banker oleh Djikstra
kelemahan algoritma ini :
1.proses jarang mengetahui diawal proses jumlah max sumber daya yg akan diperlukan
2.jumlah proses tidak tetap,secara dinamis beragam begitu pemakai2
baru login & logout
3.sumber daya yg dihitung sbg tersedia dapat saja tiba2 dicopot sehingga sebenarnya menjadi tidak tersedia
4.proses2 haru independen
5.algoritma menghendaki memberikan semua permintaan selama waktu yg tak terhingga
6.algoritma menghendaki client2 mengembalikan sumber daya setelah suatu
waltu yg terhingga

pendeteksian deadlock
adalah teknik untuk menentukan apakah deadlock terjadi serta mengindentifikasi
proses & sumber daya yg terlibat dalam deadlock

pemulihan dari deadlock
yaitu begitu sistem terdapat deadlock maka deadlock harus diputuskan
dengan menghilangkan salah 1 / lebih persyaratannya.

pendekatan yg dilakukan :
1.singkirkan semua proses yg melibatkan deadlock
2.backup semua proses yg terlibat deadlock ke suatu check point yg
didefinisikan sebelumnya & dijalankan kembali semua proses itu
3.secara berurutan singkirkan proses sampai tdk terjadi deadlock lagi.
4.secara berurutan preemp sumber daya tdk ada deadlock lagi.

pendekatan penanggulangan deadlock terpadu
Silberschatz menyarankan suatu pendekatan terpadu yaitu :
1. kelompokkan sumber daya menjadi kelas sumber daya
2. gunakan strategi pengurutan linier
3. dalam 1 kelas sumber daya gunakan algoritma yg sesuai untuk sumber daya tersebut.

Next Post
Leave a comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: