DEADLOCK
Nama : Athaya ibnu k
Nim : SSI202202959
A. Definisi Deadlock
Deadlock yang mungkin dapat terjadi pada suatu
proses disebabkan proses itu menunggu suatu kejadian
tertentu yang tidak akan pernah terjadi. Dua atau lebih proses dikatakan berada dalam kondisi deadlock, bila setiap
proses yang ada menunggu suatu kejadian yang hanya dapat
dilakukan oleh proses lain dalam himpunan tersebut.
Terdapat kaitan antara overhead dari mekanisme
koreksi dan manfaat dari koreksi deadlock itu sendiri. Pada
beberapa kasus, overhead atau ongkos yang harus dibayar
untuk membuat sistem bebas deadlock menjadi hal yang
terlalu mahal dibandingkan jika mengabaikannya. Sementara
pada kasus lain, seperti pada real-time process control,
mengizinkan deadlock akan membuat sistem menjadi kacau
dan membuat sistem tersebut tidak berguna.
Contoh berikut ini terjadi pada sebuah persimpangan
jalan. Beberapa hal yang dapat membuat deadlock pada
suatu persimpangan, yaitu:
• Terdapat satu jalur pada jalan.
• Mobil digambarkan sebagai proses yang sedang
menuju sumber daya.
• Untuk mengatasinya beberapa mobil harus preempt
(mundur).
• Sangat memungkinkan untuk terjadinya starvation
(kondisi proses tak akan mendapatkan sumber daya).
B. Strategi Menghadapi Deadlock
Strategi untuk menghadapi deadlock dapat dibagi
menjadi tiga pendekatan, yaitu:
1. Mengabaikan adanya deadlock.
2. Memastikan bahwa deadlock tidak akan pernah ada,
baik dengan metode pencegahan, dengan men-
cegah empat kondisi deadlock agar tidak akan pernah
terjadi. Metode Menghindari deadlock, yaitu
mengizinkan empat kondisi deadlock, tetapi
menghentikan setiap proses yang kemungkinan
mencapai deadlock.
3. Membiarkan deadlock untuk terjadi, pendekatan ini
membutuhkan dua metode yang saling mendukung,
yaitu:
a. Pendeteksian deadlock, yaitu untuk meng-
identifikasi ketika deadlock terjadi.
b. Pemulihan deadlock, yaitu untuk meng-
embalikan kembali sumber daya yang
dibutuhkan pada proses yang memintanya.
C. Mencegah Deadlock
Metode ini merupakan metode yang paling sering
digunakan. Metode Pencegahan dianggap sebagai solusi
yang bersih dipandang dari sudut tercegahnya deadlock.
Tetapi pencegahan akan mengakibatkan kinerja utilisasi
sumber daya yang buruk.
Metode pencegahan menggunakan pendekatan
dengan cara meniadakan empat syarat yang dapat
menyebabkan deadlock terjadi pada saat eksekusi Coffman
(1971).
Syarat pertama yang akan dapat ditiadakan adalah
Mutual Exclusion, jika tidak ada sumber daya yang secara
khusus diperuntukkan bagi suatu proses maka tidak akan
pernah terjadi deadlock. Namun jika membiarkan ada dua atau lebih proses mengakses sebuah sumber daya yang
sama akan menyebabkan chaos.
Langkah yang digunakan ada.
D. Menghindari Deadlock
Pendekatan metode ini adalah dengan hanya memberi
kesempatan ke permintaan sumber daya yang tidak mungkin
akan menyebabkan deadlock. Metode ini memeriksa dampak
pemberian akses pada suatu proses, jika pemberian akses
tidak mungkin menuju kepada deadlock, maka sumber daya
akan diberikan pada proses yang meminta.
Jika tidak aman, proses yang meminta akan di-
suspend sampai suatu waktu permintaannya aman untuk
diberikan. Kondisi ini terjadi ketika setelah sumber daya yang
sebelumnya dipegang oleh proses lain telah dilepaskan.
Kondisi aman yang dimaksudkan selanjutnya disebut
sebagai safe-state, sedangkan keadaan yang tidak me-
mungkinkan untuk diberikan sumber daya yang diminta
disebut unsafe-state.
1. Kondisi Aman (Safe state)
Suatu keadaan dapat dinyatakan sebagai safe state
jika tidak terjadi deadlock dan terdapat cara untuk
memenuhi semua permintaan sumber daya yangditunda tanpa menghasilkan deadlock dengan cara
mengikuti urutan tertentu.
2. Kondisi Tak Aman (Unsafe state)
Suatu state dinyatakan sebagai state tak selamat
(unsafe state) jika tidak terdapat cara untuk
memenuhi semua permintaaan yang saat ini ditunda
dengan menjalankan proses-proses dengan suatu
urutan.

Komentar
Posting Komentar