Pankuri algoritm sisse Operatingimissüsteem [näide]

Mis on Pankuri algoritm?

Pankuri algoritm kasutatakse ummikseisu vältimiseks peamiselt pangandussüsteemis. See aitab teil kindlaks teha, kas laenu antakse või mitte.

Seda algoritmi kasutatakse kõigi ressursside jaoks saadaoleva maksimaalse summa kindlaksmääramiseks eraldamise ohutu simuleerimise testimiseks. Samuti kontrollib see kõiki võimalikke tegevusi, enne kui otsustab, kas eraldamist tuleks jätkata või mitte.

Näiteks konkreetse panga kontoomanikke on X arv ja nende kontode kogusumma on G.

Kui pank tegeleb autolaenu töötlemisega, lahutab tarkvarasüsteem panga käsutuses olevast rahasummast (G+ fikseeritud sissemakse + igakuine sissetuleku skeem + kuld jne) auto ostmiseks antud laenusumma.

Samuti kontrollib see, kas erinevus on suurem või mitte G. Autolaenu töötleb ainult siis, kui pangal on piisavalt raha, isegi kui kõik kontoomanikud võtavad raha G korraga välja.

Pankuri algoritmi tähistused

Siin on Pankuri algoritmis kasutatav oluline märge:

  • X: näitab süsteemi protsesside koguarvu.
  • Y: näitab süsteemis olevate ressursside koguarvu.

Mudelipõhine

[I: Y] näitab, milline ressurss on saadaval.

max

[l:X,l: Y]: j tüüpi või protsessi i ressursside maksimaalse arvu väljendamine

Jaotamine

[l:X,l:Y]. Märkige, kuhu protsessi olete saanud j-tüüpi ressursi

Vajadus

Väljendage, kui palju ressursse saab tulevikus eraldada

Pankuri algoritmi näide

Oletame, et meil on järgmised ressursid:

  • 5 pliiatsi draivi
  • 2 printerit
  • 4 Skannerid
  • 3 kõvaketast

Siin oleme loonud vektori, mis esindab koguressursse: Saadaval = (5, 2, 4, 3).

Oletame, et on neli protsessi. Saadaolevad ressursid on juba alloleva maatriksitabeli järgi eraldatud.

Protsessi nimi Pliiatsi ajab Printer Skanner kõvaketas
P 2 0 1 1
Q 0 1 0 0
R 1 0 1 1
S 1 1 0 1
Summa 4 2 2 3

Siin on eraldatud ressursid järgmiste veergude kogusumma:

Eraldatud = (4, 2, 2, 3).

Samuti loome maatriksi, mis kuvab kõigi protsesside jaoks vajaliku ressursi arvu. Seda maatriksit nimetatakse Vajadus=(3,0,2,2)

Protsessi nimi Pliiatsi ajab Printer Skanner kõvaketas
P 1 1 0 0
Q 0 1 1 2
R 2 1 0 0
S 0 0 1 0

Saadaolev vektor on:

Available=Saadaval- Eraldatud

= (5, 2, 4, 3) -(4, 2, 2, 3)

=(1, 0, 2, 0)

Ressursitaotluse algoritm

Ressursipäringu algoritm võimaldab teil kuvada süsteemi käitumist, kui konkreetne protsess esitab ressursipäringu.

Mõistke seda järgmiste sammudega:

Step 1) Kui kõigi ressursside nõutud eksemplar on protsessist väiksem, liikuge 2. sammu juurde.

Step 2) Kui iga ressursitüübi taotletud eksemplar on iga tüübi saadaolevate ressurssidega võrreldes väiksem, töödeldakse seda järgmise sammuna. Vastasel juhul nõuab protsess piisavate ressursside puudumise tõttu ootamist.

Step 3) Ressurss eraldatakse nii, nagu on näidatud allolevas pseudokoodis.

Available = Available – Request (y)
Allocation(x) = Allocation(x) + Request(x)
Need(x) = Need(x) - Request(x)

See viimane etapp tehakse, kuna süsteem peab eeldama, et ressursid on eraldatud. Et pärast eraldamist peaks olema vähem ressursse.

Pankuri algoritmi omadused

Siin on pankuri algoritmi olulised omadused:

  • Hoidke palju ressursse, mis rahuldavad vähemalt ühe kliendi nõuded
  • Kui protsess saab kõik oma ressursid, peab see need piiratud aja jooksul tagastama.
  • Kui protsess nõuab ressurssi, peab see ootama
  • Süsteemil on piiratud arv ressursse
  • Täiustatud funktsioon ressursside maksimaalseks eraldamiseks

Pankuri algoritmi puudus

Siin on pankuri algoritmi kasutamise miinused / puudused

  • Ei luba protsessil muuta oma maksimaalset vajadust töötlemise ajal
  • See võimaldab rahuldada kõik taotlused piiratud aja jooksul, kuid üks aasta on selleks kindel periood.
  • Kõik protsessid peavad eelnevalt teadma ja väljendama oma maksimaalset ressursivajadust.

kokkuvõte

  • Pankuri algoritmi kasutatakse peamiselt pangandussüsteemis, et vältida ummikseis. See aitab teil kindlaks teha, kas laenu antakse või mitte.
  • Pankuri algoritmides kasutatavad tähised on 1) Saadaval 2) Max 3) Jaotus 4) Vajadus
  • Ressursipäringu algoritm võimaldab teil kuvada süsteemi käitumist, kui konkreetne protsess esitab ressursipäringu.
  • Pankuri algoritm säilitab palju ressursse, mis rahuldavad vähemalt ühe kliendi nõuded
  • Pankuri algoritmi suurim puudus seisneb selles, et see ei lase protsessil töötlemise ajal oma maksimaalset vajadust muuta.

Võta see postitus kokku järgmiselt: