ALGORITMA OSTRICH
algoritma ini dapat digunakan dalam menangani deadlock pemograman concurrent jika deadlock di yakini sangat jarang terjdi. Dan Algoritma
Ostrich adalah strategi untuk mengabaikan masalah yg mungkin terjadi
atas dasar bahwa masalah itu mungkin jarang terjadi "menempelkan kepala
di pasir dan berpura-pura bahwa tidak ada masalah" dengan mengasumsikan
bahwa lebih efektif untuk memungkinkan masalah itu terjadi di bandingkan
upaya pencegahan
ALGORITMA SAFETY
~ Let Work and Finish be vectors of length m and n,respectively. Initialize:
Work := Available // resource yang free
Finish [i] = false for i = 1,3, …, n.
~ Work := Work + Allocationi // proses dapat selesai
Finish[i] := true
go to step 2.
~ If Finish [i] = true for all i, then the system is in a safe state.
~ Terdapat 3 proses: n = 3, 1 resource: m = 1
~ Jumlah resource m = 12.
~ Find and i such that both: // penjadwalan alokasi resource
(a) Finish [i] = false // asume, proses belum complete
(b) Needi £ Work // proses dapat selesai, ke step 3
If no such i exists, go to step 4.
ALGORITMA BANKER
Algoritma
banker diemukakan oleh edsger W.Djikstra dan dy merupakan salah
satumetode untuk menghindari deadlock .Algoritma ini disebut algoritma
banker karena memodelkan sebuah bank dikota kecil yang berurusan dengan
sekumpulan nasabah yang memohon kredit .Analogi dan algoritma banker
dengan sistem operasi adalah nasabah merupakan proses-proses.
* Secara umum algoritma banker dapat dibagi mejadi 4 struktur data
- Tersedia: jumlah sumber daya/dana yang tersedia
- Maksimum: jumlah sumber daya maksimum yang diminta oleh setiap proses
- Alokasi: jumlah sumber daya yang dibutuhkan oleh setiap proses
- Kebutuhan: sumber daya yang sedang dibutuhkan oleh setiap proses
pas banget pak saya ada tugas tentang apa itu algoritma banker dan ostricht, ijin copas ya pak, terima kasih.. ^^ bermanfaat sekali ilmunya.. ^^
BalasHapus