Što je Bankarski algoritam?
Bankarski algoritam koristi se uglavnom u bankarskom sustavu kako bi se izbjegla zastoj. Pomaže vam utvrditi hoće li se zajam dati ili ne.
Ovaj algoritam koristi se za testiranje sigurne simulacije dodjele za određivanje maksimalne količine dostupne za sve resurse. Također provjerava sve moguće aktivnosti prije utvrđivanja treba li dodjelu nastaviti ili ne.
Na primjer, postoji X broj vlasnika računa određene banke, a ukupan iznos novca na njihovim računima je G.
Kada banka obrađuje zajam za automobil, softverski sustav oduzima iznos zajma odobren za kupnju automobila od ukupnog novca (G + fiksni depozit + shema mjesečnog dohotka + zlato, itd.) Koji banka ima.
Također provjerava je li razlika veća od ili ne G. Obrađuje automobilski zajam samo kada banka ima dovoljno novca, čak i ako svi vlasnici računa istovremeno povuku novac G.
U ovom vodiču za operativni sustav naučit ćete:
- Što je Bankarski algoritam?
- Oznake bankarskog algoritma
- Primjer bankarskog algoritma
- Karakteristike bankarskog algoritma
- Nedostatak Banker-ovog algoritma
Oznake bankarskog algoritma
Evo važnog zapisa koji se koristi u Banker-ovom algoritmu:
- X: Označava ukupan broj procesa u sustavu.
- Y: Označava ukupan broj resursa prisutnih u sustavu.
Dostupno
[I: Y] označava koji je resurs dostupan.
Maks
[l: X, l: Y]: Izražavanje maksimalnog broja resursa tipa j ili procesa i
Dodjela
[l: X, l: Y]. Navedite gdje ste proces dobili resurs tipa j
Potreba
Izrazite koliko se više resursa može dodijeliti u budućnosti
Primjer bankarskog algoritma
Pretpostavimo da imamo sljedeće resurse:
- 5 pogona olovke
- 2 Pisači
- 4 skenera
- 3 tvrda diska
Ovdje smo stvorili vektor koji predstavlja ukupne resurse: Dostupno = (5, 2, 4, 3).
Pretpostavimo da postoje četiri procesa. Dostupni resursi su već dodijeljeni prema matričnoj tablici u nastavku.
Naziv procesa | Pogon olovke | Pisač | Skener | Tvrdi disk |
---|---|---|---|---|
Str | 2 | 0 | 1 | 1 |
P | 0 | 1 | 0 | 0 |
R | 1 | 0 | 1 | 1 |
S | 1 | 1 | 0 | 1 |
Ukupno | 4 | 2 | 2 | 3 |
Ovdje su dodijeljeni resursi zbroj ovih stupaca:
Dodijeljeno = (4, 2, 2, 3).
Također stvaramo Matricu za prikaz broja svakog resursa potrebnog za sve procese. Ova se matrica naziva Need = (3,0,2,2)
Naziv procesa | Pogon olovke | Pisač | Skener | Tvrdi disk |
---|---|---|---|---|
Str | 1 | 1 | 0 | 0 |
P | 0 | 1 | 1 | 2 |
R | 2 | 1 | 0 | 0 |
S | 0 | 0 | 1 | 0 |
Dostupni vektor bit će:
Dostupno = Dostupno- Dodijeljeno
= (5, 2, 4, 3) - (4, 2, 2, 3)
= (1, 0, 2, 0)
Algoritam zahtjeva za resursima
Algoritam zahtjeva za resursom omogućuje vam predstavljanje ponašanja sustava kada određeni proces izrađuje zahtjev za resursom.
Shvatite to u sljedećim koracima:
Korak 1) Kada je ukupna tražena instanca svih resursa manja od procesa, prijeđite na korak 2.
Korak 2) Kada je tražena instanca svake vrste resursa manja u odnosu na dostupne resurse svake vrste, ona će se obraditi na sljedeći korak. Inače, postupak zahtijeva čekanje zbog nedostupnosti dovoljno resursa.
Korak 3) Resurs se dodjeljuje kao što je prikazano u dolje navedenom Pseudocodeu.
Available = Available - Request (y)Allocation(x) = Allocation(x) + Request(x)Need(x) = Need(x) - Request(x)
Ovaj posljednji korak izvodi se jer sustav treba pretpostaviti da su resursi dodijeljeni. Tako da bi nakon dodjele trebalo biti dostupno manje resursa.
Karakteristike bankarskog algoritma
Ovdje su važne karakteristike bankarskog algoritma:
- Zadržite mnogo resursa koji zadovoljavaju zahtjeve barem jednog klijenta
- Kad god postupak dobije sve svoje resurse, treba ih vratiti u ograničenom razdoblju.
- Kada proces zatraži resurs, treba pričekati
- Sustav ima ograničen broj resursa
- Napredna značajka za maksimalnu dodjelu resursa
Nedostatak Banker-ovog algoritma
Evo slabosti / nedostataka korištenja bankarskog algoritma
- Ne dopušta procesu da promijeni svoju maksimalnu potrebu tijekom obrade
- Omogućuje odobrenje svih zahtjeva u ograničenom vremenu, ali jedna godina je za to određeno vrijeme.
- Svi procesi moraju unaprijed znati i navesti svoje maksimalne potrebe za resursima.
Sažetak:
- Bankarski algoritam koristi se uglavnom u bankarskom sustavu kako bi se izbjegla zastoj. Pomaže vam utvrditi hoće li se zajam dati ili ne.
- Oznake korištene u bankarskim algoritmima su 1) Dostupne 2) Maks 3) Dodjela 4) Potreba
- Algoritam zahtjeva za resursom omogućuje vam predstavljanje ponašanja sustava kada određeni proces izrađuje zahtjev za resursom.
- Bankarski algoritam zadržava mnogo resursa koji zadovoljavaju zahtjeve barem jednog klijenta
- Najveći nedostatak bankarskog algoritma je taj što ne dopušta procesu da promijeni svoje maksimalne potrebe tijekom obrade.