Hva er bankers algoritme?
Bankers algoritme brukes hovedsakelig i banksystemet for å unngå fastlåst tilstand. Det hjelper deg å identifisere om et lån vil bli gitt eller ikke.
Denne algoritmen brukes til å teste for sikker simulering av tildelingen for å bestemme maksimalt tilgjengelig beløp for alle ressurser. Den sjekker også for alle mulige aktiviteter før det avgjøres om tildelingen skal fortsette eller ikke.
For eksempel er det X antall kontoinnehavere i en bestemt bank, og den totale summen av pengene på kontoene deres er G.
Når banken behandler et billån, trekker programvaresystemet beløpet som er gitt for kjøp av bil fra de totale pengene (G + fast innskudd + månedlig inntektsordning + gull, etc.) som banken har.
Den sjekker også at forskjellen er mer enn eller ikke G. Den behandler bare billånet når banken har tilstrekkelige penger selv om alle kontoinnehavere tar ut pengene G samtidig.
I denne veiledningen til operativsystemet vil du lære:
- Hva er bankers algoritme?
- Bankers algoritme notasjoner
- Eksempel på bankers algoritme
- Kjennetegn ved bankers algoritme
- Ulempen med bankers algoritme
Bankers algoritme notasjoner
Her er en viktig notasjon brukt i Bankers algoritme:
- X: Indikerer det totale antall prosesser i systemet.
- Y: Indikerer det totale antallet ressurser som er tilstede i systemet.
Tilgjengelig
[I: Y] angi hvilken ressurs som er tilgjengelig.
Maks
[l: X, l: Y]: Uttrykk for maksimalt antall ressurser av type j eller prosess i
Tildeling
[l: X, l: Y]. Angi hvor prosessen du har mottatt en ressurs av typen j
Trenge
Uttrykk hvor mange flere ressurser som kan tildeles i fremtiden
Eksempel på bankers algoritme
Anta at vi har følgende ressurser:
- 5 pennstasjoner
- 2 skrivere
- 4 skannere
- 3 harddisker
Her har vi laget en vektor som representerer totale ressurser: Tilgjengelig = (5, 2, 4, 3).
Anta at det er fire prosesser. De tilgjengelige ressursene er allerede tildelt i henhold til matrikstabellen nedenfor.
Prosessnavn | Pennstasjoner | Skriver | Skanner | Hardisk |
---|---|---|---|---|
P | 2 | 0 | 1 | 1 |
Spørsmål | 0 | 1 | 0 | 0 |
R | 1 | 0 | 1 | 1 |
S | 1 | 1 | 0 | 1 |
Total | 4 | 2 | 2 | 3 |
Her er de tildelte ressursene summen av disse kolonnene:
Tildelt = (4, 2, 2, 3).
Vi oppretter også en matrise som viser antall ressurser som kreves for alle prosessene. Denne matrisen kalles Need = (3,0,2,2)
Prosessnavn | Pennstasjoner | Skriver | Skanner | Hardisk |
---|---|---|---|---|
P | 1 | 1 | 0 | 0 |
Spørsmål | 0 | 1 | 1 | 2 |
R | 2 | 1 | 0 | 0 |
S | 0 | 0 | 1 | 0 |
Den tilgjengelige vektoren vil være:
Tilgjengelig = Tilgjengelig- Tildelt
= (5, 2, 4, 3) - (4, 2, 2, 3)
= (1, 0, 2, 0)
Ressursforespørselsalgoritme
Ressursforespørselsalgoritme lar deg representere systematferden når en spesifikk prosess lager en ressursforespørsel.
La oss forstå dette med følgende trinn:
Trinn 1) Når en total forespurt forekomst av alle ressurser er mindre enn prosessen, går du til trinn 2.
Trinn 2) Når en forespurt forekomst av hver ressurstype er mindre sammenlignet med tilgjengelige ressurser av hver type, vil den bli behandlet til neste trinn. Ellers krever prosessen å vente på grunn av utilstrekkelige ressurser.
Trinn 3) Ressursen tildeles som vist i Pseudokoden nedenfor.
Available = Available - Request (y)Allocation(x) = Allocation(x) + Request(x)Need(x) = Need(x) - Request(x)
Dette siste trinnet utføres fordi systemet må anta at ressursene er tildelt. Slik at det skal være mindre ressurser tilgjengelig etter tildeling.
Kjennetegn ved bankers algoritme
Her er viktige kjennetegn ved bankens algoritme:
- Behold mange ressurser som tilfredsstiller kravet til minst en klient
- Hver gang en prosess får alle ressursene, må den returnere dem i en begrenset periode.
- Når en prosess ber om en ressurs, må den vente
- Systemet har et begrenset antall ressurser
- Avansert funksjon for maksimal ressurstildeling
Ulempen med bankers algoritme
Her er ulemper / ulemper ved å bruke bankers algoritme
- Tillater ikke prosessen å endre sitt maksimale behov under behandlingen
- Det gjør det mulig å innvilge alle forespørsler på begrenset tid, men ett år er en fast periode for det.
- Alle prosesser må vite og oppgi maksimale ressursbehov på forhånd.
Sammendrag:
- Bankers algoritme brukes hovedsakelig i banksystemet for å unngå fastlåst tilstand. Det hjelper deg å identifisere om et lån vil bli gitt eller ikke.
- Notasjoner brukt i bankers algoritmer er 1) Tilgjengelig 2) Maks 3) Tildeling 4) Behov
- Ressursforespørselsalgoritme lar deg representere systematferden når en spesifikk prosess lager en ressursforespørsel.
- Bankers algoritme beholder mange ressurser som tilfredsstiller kravet til minst en klient
- Den største ulempen med bankers algoritme er at den ikke tillater prosessen å endre sitt maksimale behov under behandlingen.