1 / 18

PENGENDALIAN DEADLOCK

PENGENDALIAN DEADLOCK. Deadlock. Deadlock merupakan kondisi dimana ada lebih dari satu transaksi berada dalam keadaan menunggu (waiting state) untuk melakukan akses / perubahan terhadap suatu item data yang rupanya sedang dikunci oleh transaksi lain yang juga sedang menunggu.

vesta
Download Presentation

PENGENDALIAN DEADLOCK

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PENGENDALIAN DEADLOCK

  2. Deadlock • Deadlock merupakan kondisi dimana ada lebih dari satu transaksi berada dalam keadaan menunggu (waiting state) untuk melakukan akses / perubahan terhadap suatu item data yang rupanya sedang dikunci oleh transaksi lain yang juga sedang menunggu.

  3. Deadlock ……(Cont..1) • Lebihjauhdapatdikatakanadasekumpulantransaksi yang sedangmenunggu (T0, T1, ….Tn) sedemikiansehingga T0 menunggupemakaiansebuah item data yang sedangdipegangoleh T1, dan T1 sedangmenunggupemakaiansebuah item data yang sedangdipegangoleh T2 danseterusnyahingga Tn-1 sedangmenunggupemakaian item data yang sedangdipegangTn, danTnsedangmenunggupemakaiansebuah item data yang sedangdipegangoleh T0.

  4. MetodeDasarMengatasi Deadlock • Deadlock Prevention (Pencegahan Deadlock) • Deadlock Detection and deadlock recovery (Pendeteksian deadlock dan pemulihan deadlock.

  5. Pencegahan Deadlock • Pendekatanpertama, menjaminbahwatidakadasikluspenantian yang terjadidenganmengantrikanpermintaanpenguncian, ataudenganmensyaratkansemuapenguncianharusterpenuhisecarabersamaan. • PendekatanKedua, mendekaticarapemulihan deadlock (deadlock recovery) danmembentukpembatalantransaksi (rollback) sebagaigantipenantianpenguncian, ketikapenantiantersebutpotensialmenghasilkankondisi deadlock.

  6. SkemaPencegahan Deadlock • Skema wait-die yang didasarkan pada teknik ketiadaan pemilikan (nonpreemption technique). • Skema Wound-wait, yang didasarkan pada teknik kepemilikan (preemption technique) dan merupakan lawan dari skema wait-die.

  7. PendeteksiandanPemulihan Deadlock • Jika terjadi deadlock, maka sistem harus berusaha memulihkan sistem tersebut dari kondisi deadlock tersebut dengan beberapa cara sebagai berikut : 1. Memelihara cukup informasi yang berkaitan dengan alokasi data yang sedang digunakan transaksi dan juga item data yang sedang dibutuhkan oleh transaksi-transaksi tersebut.

  8. PendeteksiandanPemulihan Deadlock (cont……1) 2. Menyediakan sebuah algoritma yang menggunakan informasi ini untuk menentukan apakah sistem telah berada dalam kondisi deadlock atau tidak. 3. Memulihkan sistem dari kondisi deadlock ketika algoritma tersebut dapat mendeteksi adanya deadlock.

  9. Pendeteksian Deadlock • Deadlock dapat digambarkan dengan lebih rinci dengan memanfaatkan graph yang disebut dengan Graph wait-for. • Graph ini terdiri dari pasangan G = (V,E) V mewakili sekumpulan simpul E mewakili sekumpulan busur.

  10. Pendeteksian Deadlock…cont 1 • Setiap deadlock akanterjadididalamsistemjikadanhanyajikadalam Graph wait-for tersebutterdapatbeberapasiklus. • Setiaptransaksi yang terlibatdalansiklusdikatakanterkenadedalock. • Untukmendeteksi deadlock, sistemperlumengelola graph inidansecaraperiodikmenjalankanalgoritmauntukmemeriksaadatidaknyasiklusdidalam graph tersebut.

  11. Pendeteksian Deadlock…cont 2 • Untuk mengilustrasikan konsep ini, perhatikan graph berikut yang menunjukkan situasi : a. Transaksi T12 yang sedang menunggu transaksi T13 dan T14 b. Transaksi T14 yang sedang menunggu transaksi T13. c. Transaksi T13 yang sedang menunggu transaksi T15.

  12. IlustrasiPendeteksian Deadlock • Graph diatastidakmemilikisiklus, makasistemtidakberadadalamkondisi deadlock T13 T15 T12 T14

  13. IlustrasiPendeteksian Deadlock…..cont 1 • Anggaplah sekarang transaksi T15 membutuhkan item data yang sedang dipegang oleh T14. • Busur menunjukkan T15 T14 ditambahkan pada graph. • Kondisinya akan mengalami perubahan, sehingga sistem yang baru terlihat pada gambar.

  14. IlustrasiPendeteksian Deadlock…..cont 2 • Makapadasaatini, graph mengandungsebuahsiklus T13 T15 T14 T13 yang mengakibatkantransaksi T13, T14 dan T15 mengalamikondisi deadlock. T13 T15 T12 T14

  15. Jika deadlock seringterjadi, makaalgoritmapendekteksian deadlock harusjugalebihseringdiaktifkan. • Item-item data yang dialokasikanuntuktransaksi-transaksi yang mengalami deadlock tidakakandiperoleholehtransaksi lain hinggakondisi deadlock teralamtersebutdiatasi. • Selanjutnya, jumlahsiklusdalam graph tersebutbisasajabertambah. • Dalamkondisiterburuk, makakitadapatmengaktifkanalgoritmapendeteksian deadlock inisetiap kali sebuahpermintaanpengalokasian data tidakdapatdipenuhidengansegera.

  16. Pemulihandari Deadlock • Ketika algoritma pendeteksian deadlock dapat mengetahui terjadinya deadlock, sistem harus melakukan langkah pemulihan (recovery). • Solusi yang paling umum, dengan menjalankan proses rollback pada satu atau beberapa transaksi untuk lepas dari kondisi deadlock.

  17. Pemulihandari Deadlockcont 2 • Terdapat tiga Aksi yang harus dilakukan, yaitu : 1. Pemilihan Korban 2. Rollback 3. Starvation

  18. Tugas • Simak kembali Masalah terjadinya Deadlock dengan mengacu pada pokok bahasan Deadlock yang terdapat pada Mata Kuliah Sistem Operasi. • Uraikan tentang Metode-metode Penanggulangan Deadlock dan uraikan tentang Keunggulan dan Kelemahan dari masing-masing metode.

More Related