Kamis, 03 Januari 2013

Algoritma Banker

Algoritma banker merupakan salah satu algoritma penanganan terjadinya deadlock, algoritma tersebut di sebut algoritma banker karena simulasi dari algoritma ini mirip dengan sistem bankir di bidang perbankan. Algoritma banker ini dikemukakan oleh Edsger W. Djiksta dan merupakan suatu simulasi sistem perbankan yang diibaratkan untuk menghindari deadlock.

Disini maksudnya jika anggap saja misal :
  1. Bank : Dianggap sebagai sistem operasi.
  2. Pinjaman atau uang : Dianggap resource (resouce merupakan proses yang sedang berjalan).
  3. Nasabah : Dianggap proses yang memerlukan resource.
Implementasinya : 
Jadi algoritma banker ini di gunakan agar bank tidak kekurangan uang, sehingga pada saat nasabah melakukan penarikan sejumlah uang bank tersebut tetap pada kondisi safe state (dalam keadaan aman), jika nasabah tidak mendapat penarikan uang maka bank berada pada kondisi unsafe state (keadaan tidak aman), maka nasabah harus menunggu hingga ada tambahan uang dari nasabah lain. Nah jika bank ada pada kondisi dimana nasabah tidak dapat melakukan penarikan uang atau melakukan peminjaman uang maka disana lah terjadinya deadlock. Intinya agar tidak terjadi deadlock maka nasabah yang melakukan peminjaman uang harus segera mengembalikan uang pinjaman pada bank dengan tepat waktu.

Sehingga dapat dikatakan algoritma banker ini di jalankan oleh sebuah sistem operasi ketika ada request resource (permintaan proses yang akan di eksekusi). Nah penolakan dari algoritma ini terhadap deadlock terjadi pada saat request resource yang akan di eksekusi dapat membawa sistem pada kondisi unsafe state. Dengan kata lain ketika suatu proses masuk ke dalam sistem maka proses tersebut harus di eksekusi menggunakan jumlah maksimal resource yang di perlukan namun tidak boleh melebihi jumlah resource yang di miliki oleh sistem. Kemudian proses tersebut harus segera mengembalikan resource pada sistem dengan tepat waktu, jika tidak maka akan terjadi deadlock dimana suatu proses akan saling tunggu atau terhenti secara tiba-tiba karena resource yang akan di gunakan sedang di gunakan oleh proses lain.

Semoga bermanfaat :)

0 komentar:

Posting Komentar

are you comment my blog ? ^.^