Deadlock
This presentation is the property of its rightful owner.
Sponsored Links
1 / 15

DEADLOCK PowerPoint PPT Presentation


  • 64 Views
  • Uploaded on
  • Presentation posted in: General

DEADLOCK. ilustrasi. Di dalam lingkungan multiprogramming, beberapa proses mungkin beradu cepat untuk memperoleh resource. Sebuah proses membutuhkan resource, apabila resource tidak ada maka proses akan memasuki Wait state.

Download Presentation

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


DEADLOCK


ilustrasi

  • Di dalamlingkungan multiprogramming, beberapaprosesmungkinberaducepatuntukmemperoleh resource.

  • Sebuahprosesmembutuhkan resource, apabila resource tidakadamakaprosesakanmemasuki Wait state.

  • Adakemungkinanprosestersebuttidakakanpindahke state berikutnya, karena resource yang dimintamasihdipakaiproses lain yang sedangmenunggujuga.

  • Kondisiinilahdisebut DEADLOCK


Traffic DEADLOCK


FAsepenggunaan resource

  • Request

    • PermintaanProsesuntukmenggunakan Resource

    • Jika Resource sedangdipakaiolehproses yang lain makaProsesharusmenunggusampai Request bisamemperoleh Resource

  • Use

    • Prosesbisamengoperasikan Resource

  • Release

    • Prosesmelepaskan Resource


Kondisipenyebab deadlock

  • Mutual Exclusion

    • Hanyaadasatuproses yang bolehmemakaisumberdaya,danproses lain yang inginmemakaisumberdayatersebutharusmenungguhinggasumberdayatadidilepaskanatautidakadaproses yang memakaisumberdayatersebut.

  • Hold & Wait

    • Proses yang sedangmemakaisumberdayabolehmemintasumberdayalagimaksudnyamenungguhinggabenar-benarsumberdaya yang dimintatidakdipakaiolehproses lain, halinidapatmenyebabkankelaparansumberdayasebabdapatsajasebuahProsestidakmendapatsumberdayadalamwaktu yang lama.


Kondisipenyebab deadlock

  • No PreEmption

    • Sumberdaya yang adapadasebuahprosestidakbolehdiambilbegitusajaolehproseslainnya. Untukmendapatkansumberdayatersebut, makaharusdilepaskanterlebihdahuluolehproses yang memegangnya, selainituseluruhprosesmenunggudanmempersilahkanhanyaproses yang memilikisumberdaya yang bolehberjalan

  • Circular Wait

    • Kondisi P0 menunggu P1, lalu P1 menunggu P2, P2 menunggu P0 jadisepertirantai.


Algoritmapencegahdeadlock

  • Safe State

    • Yaitumemastikansemuaprosesdalamkondisi yang tidakterjadi deadlock

    • Ex: Resource = 12


Algoritmapencegahdeadlock

  • AlgoritmaBankir

    • Yaituadabankir yang meminjamkanpadanasabah, setiapnasabahdiberibataspinjaman, tentunyanasabahmeminjamsecarabertahap, bankirmemprioritaskan yang pinjamannyalebihbesar.Faktornya :

      • SumberdayaTersedia

      • Maximum permintaan

      • Alokasi tiap2 proses

      • Kebutuhan


Resource allocation GRaph

  • Deadlock bisadenganmudahdiketahuidenganmenggambarkankedalambentuk yang disebut “Resource Allocation Graph”

  • Resource digambarkandalambentukberikut

  • Prosesdigambarkandalambentukberikut

  • Penggunaan prosesmenggunakanbentuk

.

P1


RAG

  • Mengetahui Graph apakahada yang deadlock

    • JikatidakAda Cycle/Putaranmakatidakadapotensi deadlock

    • Jikaada Cycle/Putaranmakaadapotensi deadlock

    • Resource dgn instance tunggaldanperputaranmengakibatkan deadlock


Contoh RAG

  • P(process)={P1,P2,P3} ; R(res)={R1,R2,R3,R4} ;

  • E(edge)={P1R1,P2R3,R1P2,

    R2P2,R2P1,R3P3}

    Apakahproses deadlock?


Contoh RAG

  • P(process)={P1,P2,P3} ; R(res)={R1,R2,R3,R4} ;

  • E(edge)={ P1R1,P2R3,R1P2,

    R2P2,R2P1,R3P3,P3R2}

    Apakah proses2 tsbt deadlock?


Menangani deadlock

  • MenghentikanProses

    • Menghentikanseluruhproses

    • Menghentikansalahsatuprosesdengancost terkecil, antara lain:

      • Yang memiliki prioritas terkecil

      • Berapa lama prosessudahdikerjakandanberapa lama lagiprosesmemerlukanwaktuuntukselesai

      • Berapabanyakdan resource apa yang digunakansehinggamudahuntukdihentikan

      • Berapabanyak resource yang diperlukan

      • Berapabanyakproses yang perludihentikan

      • ApakahProsesdalam mode interaktifataukah batch


Menangani deadlock

  • Resource PreEmption

    • Memilihprosessebagaikorban, dengankriteria

      • Jumlah resource yang digunakanolehproses yang deadlock.

      • Waktu yang diperlukanolehprosesuntukmenyelesaikanpekerjaan.

    • Rollback/Mengulang

      • Yaitudenganmenghentikanseluruhprosesdanmengulanginyadariawal

    • Starvation / Kelaparan Resource

      • Yaitudenganmengulangprosestetapimenghindariproses yang menyebabkankekurangan resource.


Menangani deadlock

  • Menghiraukan Deadlock tersebut (metodeAlgoritma Ostrich)

    • Sistemmenghiraukan, danjika deadlock makatabelakanpenuhsehinggaproses yang barutidakakanbisamasuklagi

    • Dipakaidisebagianbesar OS termasuk Unix.


  • Login