Deadlock pada sistem operasi

13
Oleh : Ayu Ari Andani DEADLOCK PADA SISTEM OPERASI

description

Deadlock pada sistem operasi

Transcript of Deadlock pada sistem operasi

Page 1: Deadlock pada sistem operasi

Oleh :

Ayu Ari Andani

DEADLOCK

PADA

SISTEM OPERASI

Page 2: Deadlock pada sistem operasi

Apa “Deadlock” itu . . . ? ? ? ?

Page 4: Deadlock pada sistem operasi

PENGERTIAN DEADLOCK

• 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.

Page 5: Deadlock pada sistem operasi

CONTOH KASUS

• Deadlock dapat dianalogikan lagi seperti ketika dikelas TI-1B sebanyak 29 orang

ini sedang dilaksanakan UTS mata kuliah Sistem Operasi. Soal berupa esai yang

harus ditulis tangan. Namun ternyata di kelas tersebut hanya terdapat satu buah

pulpen. Ketika seluruh mahasiswa berebut ingin menggunakan pulpen tersebut

terlebih dahulu disbanding yang lain untuk mengerjakan soal dan tidak ada yang

mau mengalah atau memberi kesempatan kepada oranglain untuk menggunakan

pulpen terlebih dahulu.

Page 6: Deadlock pada sistem operasi

• Ketika sistem operasi menjalankan beberapa program secara bersamaan sehingga

komputer menjadi “Macet”(Heng , kata anak-anak zaman sekarang).

Page 7: Deadlock pada sistem operasi

PENYEBAB DEADLOCK

• Mutual eklusif, merupakan jaminan bagi proses bahwa

hanya akan ada satu proses yang menggunakan satu

resource dalam waktu tertentu, dengan kata lain resource

tidak dapat digunakan oleh proses secara bersama-sama

sehingga akan semakin besar kemungkinan terjadi

deadlock.

• Hold & wait, dimana proses yang memiliki/ memegang

(hold) resource meminta resource tambahan untuk dapat

RUNNING, tetapi resource tambahan tersebut tidak

pernah didapatnya.

Page 8: Deadlock pada sistem operasi

• Tidak bisa disela (preemtion), resource yang dimiliki

satu proses tidak akan diberikan kepada proses lain

sebelum proses itu sendiri mendapatkan resource

tambahan dari proses lain sehingga dia akan melepaskan

resource yang dimilikinya untuk proses lain, hal ini

berlaku untuk semua proses yang ada, dengan kata lain

tidak akan ada proses yang mengalah dan membiarkan

dirinya disela proses lain.

• Menunggu sirkular, proses menunggu dalam model

sirkular yang tidak mungkin mendapatkan solusi karena

satu sama lain saling menunggu tanpa batas waktu tertentu

(tak terhingga).

Page 9: Deadlock pada sistem operasi

CARA MENGATASI DEADLOCK

• Metode pencegahan terjadinya Deadlock (Deadlock

Preventation)

• Metode ini banyak dipakai, dan metode ini berhubungan dengan

pengkondisian sistem agar menghilangkan kemungkinan

terjadinya deadlock, pencegahan adalah sulusi yang terbaik

dipandang dari sudut tercegahnya deadlock. Dan metode ini

sering menghasilkanutilisasi sumber daya yangburuk.

Page 10: Deadlock pada sistem operasi

• Metode penghindaran terjadinya Deadlock (Deadlock Avoidence)

• Tujuan dari metoda ini adalah untuk menghindari terjadinya kondisi-kondisiyang memungkinkan terjadinya deadlock, dan memperoleh utilisasi sumber daya ygbaik.Penghindaran bukan berarti menghilangkan semua kemungkinan terjadinya deadlock,

• Secara teoritis deadlock dimungkinkan.Sistem operasi memeriksa semua permintaan sumberdaya secara hati-hati, jika sistem operasi mengetahui bahwa alokasi sumber dayamenimbulkan resiko deadlock, maka sistem akan menolak pengaksesan dan dengan demikianmenghindari terjadinya deadlock

Page 11: Deadlock pada sistem operasi

• Metode deteksi dan pemulihan Deadlock (Deadlock detection and recovery)

• Metode deteksi ini digunakan pada sistem yang mengizinkan terjadinya deadlock, Tujuan darimetode ini adalah untuk memeriksa apakah telah terjadi deadlock dan menentukan prosesserta sumber daya yang terlibat dalam deadlock secara presisi setelah ditemukan sistemdipulihkan dari deadlock dengan metode pemulihan. (metode pemulihan dari deadlockadalah untuk menghilangkan deadlock sistem sehingga dapat beroperasi kembali)Proses yangterlibat dalam deadlock mungkin akan dapat menyelesaikan eksekusi dan membebaskansumber daya dari sumber dayanya.

Page 12: Deadlock pada sistem operasi

PENGHINDARAN DEADLOCK

• Gagasan dasar penghindaran deadlock adalah untuk memberi akses

kepermintaan sumber daya yang tidak menimbulkan deadlock, cara ini biasa

digunakan dengan mengalokasikan sumber daya dan memeriksa dampak

pemberian akses kesuatu permintaan. Jika pemberian akses sumber daya

tidak mungkin menimbulkan deadlock maka sumber daya diberikan

kepeminta sumber daya, jika timbul deadlock maka proses yang meminta di

suspend sampai waktu permintaan nyaman (tidak timbul deadlock) baru

diberikan, kondisi ini biasanya terjadi setelah satu sumber daya atau

lebih yang semuladipegang oleh proses-yang aktif lainnya dilepas.

• Untuk penghindaran deadlock diperlukan pengertian mengenai state

selamat (safe state) dan dan state tak selamat (unsafe state),

Page 13: Deadlock pada sistem operasi

TERIMA KASIH . . . .