Langsung ke konten utama

Contoh Soal Safe/Unsafe State untuk menghindari Deadlock

Diketahui terdapat 2 proses yaitu P1 dan P2. Ada 2 tipe Resource A dan B masing-masing sejumlah 5 dan 3. Selanjutnya diketahui sumber daya yang telah dialokasikan dan kebutuhan maksimum masing-masing proses :
Hitunglah sisa kebutuhan untuk masing-masing proses, selanjutnya jadwalkan penggunaan sumber daya yang ada agar terhindar dari kondisi deadlock!
Jawab:

Untuk menentukan sisa kebutuhan masing-masing proses dapat dilakukan dengan cara sebagai berikut: 
Kolom need berisikan kebutuhan daripada proses A dan proses B. 

Sekarang kita lakukan penjadwalan penggunaan sumber daya yang ada agar tidak terjadi deadlock, penjadwalannya dapat dilakukan dengan cara sebagai berikut: Yang pertama R akan dialokasikan ke P1:
Dari tabel di atas dapat di atas jumlah R (sumberdaya) yang dibutuhkan melebihi sumberdaya yang ada, jadi akan terjadi deadlock karena P1 tidak pernah selesai untuk di proses. Nah sekarang kita coba untuk merubah pengalokasian daripada memorynya, kita akan alokasikan memory ke P2 terlebih dahulu.
Disini juga terjadi deadlock. Karena alokasi B pada P2 melebihi sumberdaya yang ada, dimana cuma ada 3 sumberdaya, sedangkan yang dibutuhkan sebanyak 4. 
Dari uraian di atas dapat disimpulkan bahwa kondisi memory unsafe atau akan terjadi deadlock. 


Artikel Terkait:

Mohon untuk membaca Kebijakan Privasi sebelum mengambil data dari blog ini atau sebelum berkomentar.

Komentar

  1. Bagaimana cara menentukan Urutan safe state nya ?

    BalasHapus
    Balasan
    1. Yang saya ketahui terkait pengurutan safe state nya yaitu dengan melihat jumlah alokasi, kebutuhan resouce (need), dan maksimal resource yg bisa digunakan (max). dari sana kita dapat melihat dan mulai menganalisa proses mana yang bisa dijalankan terlebih dahulu.

      Cari proses yang tidak melebihi jumlah kebutuhan untuk dijalankan terlebih dahulu.

      CMIIW

      Hapus

Posting Komentar

Tolong berkomentar yang baik dan sopan