Deadlock
Deadlock
Sistem Operasi
KELOMPOK 8
• Budi Nofianto 100010761
• I Wayan Agus Wiratama 100010745
• AA Ngurah Bagus 100010767
• I Made Doni Daryanto 100010744
• Kade Bangkit Ardana 100010700
Pokok Bahasan
• Pengertian & Latar Belakang Deadlock
• Pengertian Resource
• Metode Penanganan Deadlock
• Penyebab Terjadinya Deadlock
• Kesimpulan
Pengertian dan
Latar Belakang
Keadaan dimana 2 atau lebih proses saling
menunggu meminta resources untuk waktu
yang tidak terbatas lamanya
Analoginya seperti pada kondisi jalan raya
dimana terjadi kemacetan parah
Deadlock adalah efek samping dari
sinkronisasi, dimana satu variabel digunakan
oleh 2 proses
MENU
Model Deadlock
MENU
RESOURCE
• Resource dapat berupa hardware device
(seperti tape drive, memori) atau berupa
informasi (record dalam suatu basis data,
variable global, dll).
Resource ada 2 jenis, yaitu:
– Peemptable
– Nonpreemtable.
MENU
Dua Jenis Resource :
• Resource preemtable adalah resource yang dapat
diambil (dilepas) dari proses yang sedang
memakainya tanpa memberi efek apapun pada
proses tersebut.
• Resource nonpreemtable adalah resource yang
tidak dapat diambil dari proses yang sedang
membawanya karena akan menimbulkan
kegagalan komputasi. Resource jenis ini yang
sering Menyebabkan deadlock.
MENU
Metode Penanganan Deadlock
I. Deadlock Prevention: Pencegahan adanya
faktor-faktor penyebab deadlock
II. Deadlock Avoidance: Menghindari dari situasi
yang potensial dapat mengarah menjadi
deadlock
III. Deadlock Detection: Jika deadlock ternyata tidak
terhindari maka bagaimana mendeteksi
terjadinya deadlock, dilanjutkan dengan
penyelamatan (recovery).
MENU
I. DEADLOCK PREVENTION
MENU
Penyebab Deadlock
3. Circular Waiting
– Situasi dimana terjadi saling menunggu
antara beberapa proses sehingga
membentuk waiting chain (circular)
MENU
Penyebab Deadlock
4. No Preemption
– Resource yang hanya dapat dibebaskan
secara sukarela oleh proses yang telah
mendapatkannya
– Proses tidak dapat dipaksa (pre-empt)
untuk melepaskan resource yang sedang
di hold
MENU
II. DEADLOCK AVOIDANCE
MENU
III. DEADLOCK DETECTION
• Membiarkan deadlock terjadi lalu
mendeteksinya kemudian melakukan
tindakan recovery seperlunya
• Tindakan recovery yang dilakukan adalah :
– Batalkan semua proses deadlock
– Batalkan satu proses pada satu waktu hingga
siklus deadlock dapat dihilangkan
– Lakukan preemption, membuat checkpoint untuk
MENU rollback lalu membunuh proses yang prioritasnya kecil
Fakta tentang Deadlock dalam OS
• Pada windows NT, deteksi deadlock yaitu berupa
BSOD(Blue Screen Of Death), recoverynya
adalah reboot sederhana
• Pada linux untuk mengetahui apakah terjadi
deadlock yaitu dengan menggunakan xosview
untuk mengetahui proses yang menggunakan
CPU 100%, lalu kill saja proses tersebut
MENU
Kesimpulan
• Deadlock adalah situasi dimana 1 atau lebih
proses tidak akan pernah selesai tanpa
adanya recovery
• Empat kondisi penting untuk deadlock :
mutual exclusion, hold and wait, circular wait,
and no preemption
• Deadlock bisa diatasi oleh berbagai strategi :
prevention, avoidance, detection dan recovery
MENU
SEKIAN
dan
TERIMA KASIH
MENU