DEADLOCK
Deadlock
•
Secara harfiah adalah
kebuntuan
•
Suatu proses dimana 2 proses/lebih
tidak dapat meneruskan eksekusinya karena saling menunggu aksi/sumber daya yang
digunakan oleh proses lain
•
Suatu kondisi dimana sekumpulan
proses tidak dapat berjalan kembali akibat kompetisi memperebutkan sumber daya
Ilustrasi
Deadlock
•
Hanya terdapat satu jalur
•
Mobil digambarkan sebagai proses
yang sedang menuju sumber daya
•
Untuk mengatasinya beberapa mobil
harus (mundur)
•
Sangat memungkinkan untuk terjadinya
starvation (kondisi dimana proses tidak akan mendapatkan sumber daya)
Penjelasan
Ilustrasi Deadlock
•
Penyebab utama terjadinya Deadlock
adalah terbatasnya sumber daya yang akan digunakan oleh proses-proses
•
Tiap proses berkompetisi untuk
memperebutkan sumber daya yang ada
•
Jadi deadlock berhubungan
erat dengan tersedianya sumber daya dari komputer
Syarat Terjadi Deadlock
1.
Mutual Exclusion
Sumber
daya yang hanya dapat digunakan oleh satu proses dalam satu waktu
Cara
Menghindari :
Menerapkan
kebijakan untuk hanya memakai sumber daya yang dapat digunakan secara konkuren
2.
Hold and Wait Condition
Proses
yang sedang menggunakan satu sumber daya menunggu untuk menggunakan sumber daya
yang lain
Cara
Menghindari:
Mengalokasikan
seluruh sumber daya yang diperlukan oleh suatu proses sebelum proses tersebut
mulai dieksekusi
3.
Non-Preeption Condition
Jika
sumber daya yang sedang digunakan oleh sebuah proses tidak dapat diambil alih
secara paksa
Cara
Menghindari :
Mengkondisikan
jika suatu proses tidak mendapatkan sumber daya dengan segera, maka sumber daya
yang sedang digunakanya harus dilepas dulu. Sehingga proses lain yang sedang
menunggu dapat menggunakannya terlebih dulu
4.
Circular Wait Condition
Terdapatnya
rangkaian sirkular dari 2/lebih proses masing-masing menunggu sumber daya yang
sedang dikuasai proses lain
Cara
Menghindari:
Memberikan
nomor urut untuk semua sumber daya yang dialokasikan untuk proses
Syarat
Terjadi Deadlock
•
Startvation
Jika
lebih dari satu proses saling menunggu alokasi sumber daya sampai waktu yang
tidak ditentukan
•
Race Condition
Suatu
keadaan dimana lebih dari satu proses menginginkan sumber daya yang sama pada
waktu yang bersamaan
Model
Deadlock
•
Sebuah sistem terdiri dari sumber
daya dengan jumlah terbatas yang didistribusikan kepada sejumlah proses yang
berkompetisi untuk mendapatkan sumber daya
•
Status proses terhadap sumber daya
yang perlu digunakannya adalah sebagai urutan berikut :
o
Meminta (request) :
Meminta layanan I/O
o
Memakai (use) : Memakai I/O device
Seap ,..
BalasHapus