Mikä on pankkiirin algoritmi?
Pankkiirin algoritmia käytetään pääosin pankkijärjestelmässä umpikujan välttämiseksi. Se auttaa sinua tunnistamaan, myönnetäänkö laina vai ei.
Tätä algoritmia käytetään testaamaan allokoinnin turvallista simulointia kaikkien resurssien käytettävissä olevan enimmäismäärän määrittämiseksi. Se tarkistaa myös kaikki mahdolliset toiminnot ennen kuin se päättää, onko jakamista jatkettava vai ei.
Esimerkiksi tietyn pankin tilinhaltijoita on X, ja heidän tilinsä kokonaissumma on G.
Kun pankki käsittelee autolainaa, ohjelmistojärjestelmä vähentää auton ostamiseen myönnetyn lainan määrän pankin kokonaisrahasta (G + kiinteä talletus + kuukausitulojärjestelmä + kulta jne.).
Se tarkistaa myös, että ero on suurempi kuin G. Se käsittelee autolainaa vain, kun pankilla on riittävästi rahaa, vaikka kaikki tilinhaltijat nostavat rahaa G samanaikaisesti.
Tässä käyttöjärjestelmän opetusohjelmassa opit:
- Mikä on pankkiirin algoritmi?
- Pankkiirin algoritmimerkinnät
- Esimerkki pankkiirin algoritmista
- Pankkiirin algoritmin ominaisuudet
- Pankkiirin algoritmin haitta
Pankkiirin algoritmimerkinnät
Tässä on tärkeä merkintä, jota käytetään pankkiirin algoritmissa:
- X: Ilmaisee järjestelmän prosessien kokonaismäärän.
- Y: Ilmaisee järjestelmässä olevien resurssien kokonaismäärän.
Saatavilla
[I: Y] ilmoita käytettävissä oleva resurssi.
Maks
[l: X, l: Y]: Tyypin j tai prosessin i resurssien enimmäismäärän ilmaiseminen
Jakaminen
[l: X, l: Y]. Osoita missä prosessissa olet saanut tyypin j resurssin
Tarve
Ilmaise, kuinka monta muuta resurssia voidaan kohdistaa tulevaisuudessa
Esimerkki pankkiirin algoritmista
Oletetaan, että meillä on seuraavat resurssit:
- 5 kynäkäyttöä
- 2 tulostinta
- 4 skanneria
- 3 kiintolevyä
Tässä olemme luoneet vektorin, joka edustaa kokonaisresursseja: Käytettävissä = (5, 2, 4, 3).
Oletetaan, että prosesseja on neljä. Käytettävissä olevat resurssit on jo allokoitu alla olevan matriisitaulukon mukaisesti.
Prosessin nimi | Kynä-asemat | Tulostin | Skanneri | Kiintolevy |
---|---|---|---|---|
P | 2 | 0 | 1 | 1 |
Q | 0 | 1 | 0 | 0 |
R | 1 | 0 | 1 | 1 |
S | 1 | 1 | 0 | 1 |
Kaikki yhteensä | 4 | 2 | 2 | 3 |
Tässä kohdennetut resurssit ovat näiden sarakkeiden summa:
Kohdennettu = (4, 2, 2, 3).
Luomme myös matriisin, joka näyttää kaikkien prosessien edellyttämän resurssin määrän. Tätä matriisia kutsutaan nimellä Need = (3,0,2,2)
Prosessin nimi | Kynä-asemat | Tulostin | Skanneri | Kiintolevy |
---|---|---|---|---|
P | 1 | 1 | 0 | 0 |
Q | 0 | 1 | 1 | 2 |
R | 2 | 1 | 0 | 0 |
S | 0 | 0 | 1 | 0 |
Käytettävissä oleva vektori on:
Saatavana = käytettävissä - varattu
= (5, 2, 4, 3) - (4, 2, 2, 3)
= (1, 0, 2, 0)
Resurssipyyntöalgoritmi
Resurssipyyntöalgoritmin avulla voit edustaa järjestelmän käyttäytymistä, kun tietty prosessi tekee resurssipyynnön.
Anna ymmärtää tämä seuraavilla vaiheilla:
Vaihe 1) Kun kaikkien resurssien pyydetty kokonaisuus on pienempi kuin prosessi, siirry vaiheeseen 2.
Vaihe 2) Kun jokaisen resurssityypin pyydetty esiintymä on pienempi kuin kunkin tyypin käytettävissä olevat resurssit, se käsitellään seuraavaan vaiheeseen. Muuten prosessi vaatii odottamista, koska riittäviä resursseja ei ole käytettävissä.
Vaihe 3) Resurssi allokoidaan alla olevan pseudokoodin mukaisesti.
Available = Available - Request (y)Allocation(x) = Allocation(x) + Request(x)Need(x) = Need(x) - Request(x)
Tämä viimeinen vaihe suoritetaan, koska järjestelmän on oletettava, että resurssit on varattu. Jotta resurssien pitäisi olla vähemmän jaon jälkeen.
Pankkiirin algoritmin ominaisuudet
Tässä on pankkiirin algoritmin tärkeitä ominaisuuksia:
- Säilytä monia resursseja, jotka täyttävät vähintään yhden asiakkaan vaatimukset
- Aina kun prosessi saa kaikki resurssinsa, sen on palautettava ne rajoitetun ajan.
- Kun prosessi pyytää resurssia, sen on odotettava
- Järjestelmällä on rajoitettu määrä resursseja
- Ennakko-ominaisuus resurssien maksimoimiseksi
Pankkiirin algoritmin haitta
Tässä on pankkiirin algoritmin käytön haittoja / haittoja
- Ei salli prosessin muuttaa enimmäistarpeita käsittelyn aikana
- Se sallii kaikkien pyyntöjen täyttämisen rajoitetussa ajassa, mutta vuosi on sille kiinteä.
- Kaikkien prosessien on tiedettävä ja ilmoitettava enimmäisresurssitarpeensa etukäteen.
Yhteenveto:
- Pankkiirin algoritmia käytetään pääosin pankkijärjestelmässä umpikujan välttämiseksi. Se auttaa sinua tunnistamaan, myönnetäänkö laina vai ei.
- Pankkiirin algoritmeissa käytetyt merkinnät ovat 1) käytettävissä 2) enintään 3) allokaatio 4) tarve
- Resurssipyyntöalgoritmin avulla voit edustaa järjestelmän käyttäytymistä, kun tietty prosessi tekee resurssipyynnön.
- Pankkiirin algoritmissa on paljon resursseja, jotka täyttävät vähintään yhden asiakkaan vaatimukset
- Pankkiirialgoritmin suurin haittapuoli on se, että se ei salli prosessin muuttaa maksimaalista tarvetta käsittelyn aikana.