Kamis, 08 Desember 2011

Algoritma Banker ,, Algoritma Ostrich ,, Algoritma Safety,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

ALGORITMA BANKER

  di kemukakan oleh Edsger W.Djikstra dan merupakan salah satu metode untuk menghindari deadlock.kenapa disebut algoritma banker?? karena memodelkan sebuah bank di kota kecil yg berurusan dg sekumpulan nasabah yg memohon kredit....
Analogi dari algoritma Banker dengan sistem Operasi adalah nasabah merupakan proses proses yg sedang berjalan,uang merupakan sumber daya,dan bankir merupakan sistem Operasinya..setiap nasabah memilki batas kredit,apabila seorang nasabah sudah mencapai bataas kredit pinjaman,maka di asumsikan nasabah tersebut telah menyelesaikan semua permasalahan bisnis nya dan dapat mengembalikan semua pinjaman nya kepada bank. setiap nasabah dpt memohon pda suatu waktu dan bankir dpt menyetujui atau menolak permohonan tersebut.jika di tolak,nasabah masih menggenggam dana yg telah dipinjamkan untuk nya dan menunggu selama watu(deadlock) sampai permohonan nya disetujui. permohonan disetujui atau ditolak ditentukan dg algoritma safety dan algoritma Resource requuest..

sumber : http://www.pustakaskripsi.com/perangkat-lunak-simulasi-algoritma-banker-1076.html

ALGORITMA OSTRICH

Algoritma Ostrich adalah strategi mengabaikan masalah yg mungkin terjadi atas dasar bahwa masalah itu mungkin sangat 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 nya,,,,,,algoritma ini dapat digunakan dalam menangani deadlock pemograman concurrent jika deadlock di yakini sangat jarang terjdi,,,,,

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

sumber :  http://emilianovianti.wordpress.com/2010/11/29/deadlock/