1 / 23

Sisteme shfrytezimi

Sisteme shfrytezimi. Leksion 8 Trajtimi i Deadlocks ( vazhdim ). Algoritmi i grafit te huazimit te burimeve. Brinja e kerkeses P j  R j , nqs paraqitet me vije te nderprere do te percaktoje se procesi P j pretendon te kerkoje burimin R j ne te ardhmen

iliana-neal
Download Presentation

Sisteme shfrytezimi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Sistemeshfrytezimi Leksion 8 Trajtimii Deadlocks (vazhdim) Iralda Mitro

  2. Algoritmiigrafittehuazimitteburimeve • Brinja e kerkesesPj Rj , nqsparaqitet me vijetenderprere do tepercaktoje se procesiPjpretendontekerkojeburiminRjne teardhmen • Kjobrinje do tekonvertohet ne brinjekerkesekurprocesitekerkojerealishtburimin • Kurnjeburimleshohetnganjeproces, brinja e huazimitkonvertohetserish ne brinjekerkese Iralda Mitro

  3. Algoritmiigrafittehuazimitteburimeve – per menjanimin e Deadlock • Kurnjeproceskerkonnjeburim, kerkesanukplotesohetmenjehere • Nqsbrinja e kerkeses (---) nuk con ne formimin e njecikli ne graf, ajokonvertohet ne brinjekerkese (->) Iralda Mitro

  4. Gjendje e pasigurte ne grafine Huazimitteburimeve • Ne keterast, P2 duhetteprese, sepsenqs do tijepejburimi R2 do teformohejcikel Iralda Mitro

  5. Algoritmi me shumeinstanca • Cdoprocesiriduhettedeklarojenumrinmaksimalteinstancavetecdo tip burimiqe do tinevojiten • Kurnjeprocesbenkerkese ne njebashkesiburimesh, algoritmi do tekontrollojeneseplotesimiikerkeses do taleresistemin ne gjendjetesigurte • Kyalgoritemperbehetnga 2 pjese: • Algoritmiqekontrollonnesesistemieshte ne gjendjetesigurteosejo • Algoritmi I kerkesave per burime Iralda Mitro

  6. Algoritmi me shumeinstanca – strukturat e tedhenave • n = numriiprocesevem= numriitipeveteburimeve • Available:Vektor me gjatesim per numrin e instancavete lira • available [j] = k, kemikinstancate lira tetipitRj • Max: n x meshtematriceqetregon per cdoproces, numrin e instancave per secilinprejburimeve • Max [i,j] = k, procesiPikerkonk instancateburimittetipitRj. • Allocation: n x meshtematriceqembannumrin e instancavetecdo tipi qe ka huazuarseciliproces • Allocation[i,j] = k, Pi ka huazuaraktualishtkinstancatetipitRj • Need: n x meshtematriceqetregonedhesaburimepritettehuazojeseciliprejproceseve • Need[i,j] = k, Pi ka nevoje per k instancatetjeraRj Need [i,j] = Max[i,j] – Allocation [i,j]. Iralda Mitro

  7. Algoritmiisigurise 1. Marrim 2 vektoreWork dheFinish me gjatesimdhen. Inicializojme: Work = Available Finish [i] = false per i - 1,3, …, n. 2. Gjejmenjeitetilleqe: (a) Finish [i] = false (b) Needi Work Nqsnukekzistonnje e tille, shko ne hapin 4. • Per iqe u gjet:Work = Work + AllocationiFinish[i] = trueshko ne hapin 2. 4. NqsFinish [i] == true per cdoi, ateheresistemieshte ne gjendjetesigurte Iralda Mitro

  8. Algoritmiikerkeses per burim per procesinPi • Request = vektoriikerkesave per procesinPi. • Requesti[j] = k , Pi do k instancatetipitRj. 1. NqsRequesti Needishkotekhapi 2. Perndryshegjenerogabim (sepse ka kerkuar me shumeinstancasesamaksimumikerkesave) 2. NqsRequesti Available, shkotekhapi 3. perndryshePiduhetteprese per burimete lira, meqeburimetnukjanetedisponueshme. 3. Sistemihiqetsikurplotesonkerkesen: Available = Available - Requesti; Allocationi= Allocationi + Requesti; Needi=Needi – Requesti; • Gjendje e sigurte  burimethuazohennga Pi. • Gjendje e pasigurte Pi duhetteprese, dhegjendja e vjeter e huazimitteburimeverikthehet Iralda Mitro

  9. Shembull - Algoritmi me shumeinstanca • 5 proceseP0 deriP4 • 3 tipeburimesh: A (10 instanca), B (5 instanca), C (7 instanca) • Gjendja ne kohenT0: AllocationMaxAvailable A B C A B C A B C P0 0 1 0 7 5 3 3 3 2 P1 2 0 0 3 2 2 P2 3 0 2 9 0 2 P3 2 1 1 2 2 2 P4 0 0 2 4 3 3 Iralda Mitro

  10. Shembull - Algoritmi me shumeinstanca • Gjendja e matrices NeedpercaktohetsiMax – Allocation. Need A B C P0 7 4 3 P1 1 2 2 P2 6 0 0 P3 0 1 1 P4 4 3 1 • Ekzistonsekuenca e sigurise < P1, P3, P4, P2, P0> ndajsistemieshte ne gjendjetesigurte. Iralda Mitro

  11. Shembull - Algoritmi me shumeinstanca • Gjetja e sekuences se sigurise • Work = (3,3,2);finish[i] = false; i=1..4 • <P1 i=1 • Work = (5,3,2); <P1, P3, • Work = (7,4,3); <P1,P3,P0, • Work = (7,5,3); <P1,P3,P0,P2, • Work = (10,5,5); <P1,P3,P0,P2,P4> • Work = (10,5,7);

  12. Algoritmiqezbulon Deadlock Skema e daljesnga deadlock Zbulimii Deadlock Iralda Mitro

  13. Nje instance per cdo tip burimi • Nesesistemi ka burimevetem me nje instance, per zbulimin e Deadlock do teperdoretgrafiWAIT FOR. • Kygraf do teperftohetngagrafiihuazimitteburimeve, duke hequrnyjetqeperfaqesojneburimetdhebrinjetperkatese • Nyjetjaneproceset • BrinjetPi Pj, Pipopret per procesinPj • Kjobrinje do teekzistoje ne grafin Wait-for, nqsekzistojne ne grafin e huazimitteburimevebrinjetPi R dheR Pj • Nqs ne grafin Wait-for kemicikel, ateherekemi deadlock!!! • Duhetteekzekutohetvazhdimishtnjealgoritemqekontrollonformimin e cikleve • Njealgoritem per tegjeturnjecikel ne grafkerkonveprimeterenditn2, kuneshtenumriibrinjeve ne graf. Iralda Mitro

  14. Ndertimiigrafit Wait-for • Ndertonisipasrregullavetepermenduragrafinkorrespondues Wait-for, per grafin e dhene

  15. GrafiihuazimitteburimevedheGrafi Wait-for Grafiihuazimitteburimeve Grafi Wait-for korrespondues Iralda Mitro

  16. Burimet me meshume se 1 instance • Available:vektor me gjatesimqepercaktonnumrin e burimevetedisponueshme per secilin tip burimi • Allocation:matricen x mqepercaktonnumrin e burimevetehuazuara per cdo tip procesi • Request:matricen x mpercaktonkerkesataktuale per cdoproces • Request [ij] = k, procesiPikerkonkinstancatetjerateRj Iralda Mitro

  17. Algoritmiizbulimit 1. VektoretWorkdheFinish me gjatesimdhen, respektivishtinicializohen: (a) Work = Available (b) For i = 1,2, …, n, if Allocationi 0, then Finish[i] = false; otherwise, Finish[i] = true 2. Gjejnjeindeksitetilleqe: (a) Finish[i] == false • Requesti Work Nqsnukekzistoni, athshkotekhapi 4 • Work = Work + AllocationiFinish[i] = trueshkotekhapi 2. • If Finish[i] == true, per i, 1  i  n, nuk ka deadlock if Finish[i] == false, ateherePieshte ne deadlock Kujtese! Available – vektori me burimet e lira Allocation – vektor me instancatqe ka huazuarnjeproces per cdo tip burimi Request – kerkesatqe ka berecdoproces Iralda Mitro

  18. Shembull - Algoritmiizbulimit • 5 proceseP0deriP4 • 3 tipeburimesh: A (7 instanca), B (2 instanca), C (6 instanca). • Ne momentinT0: Allocation Request Available A B C A B C A B C P0 0 1 0 0 0 0 0 0 0 P1 2 0 0 2 0 2 P2 3 0 3 0 0 0 P3 2 1 1 1 0 0 P4 0 0 2 0 0 2 • Sekuenca <P0, P2, P3, P1, P4> do terezultoje me Finish[i] = true per cdoi. Iralda Mitro

  19. Shembull - Algoritmiizbulimit • P2kerkonnje instance shtesetetipitC. Request A B C P0 0 0 0 P1 2 0 1 P2 0 0 1 P3 1 0 0 P4 0 0 2 • Gjendja e sistemit? • Nuk ka burime per tepermbushurkerkesen • Ekziston Deadlock, I perberengaprocesetP1, P2, P3, P4. Iralda Mitro

  20. PerdorimiiAlgoritmittezbulimit • Kurdhesashpeshduhettetherritetvaretnga: • Sa e shpeshteeshtemundesiaqetendodhenje deadlock? • Sa procese do teduhetterikthehen ne gjendjen e meparshme • Nqsalgoritmiizbulimittherritet ne menyrearbitrare, ateheremundtegjendenshumecikle ne grafin e burimeve, keshtuqenuk do tekishimmundesitezbulonim se cilingaprocesetshkaktoi deadlock Iralda Mitro

  21. Rikuperiminga Deadlock: Perfundimiiproceseve • Nqsalgoritmizbulon deadlock: • Njoftohetperdoruesidheainderhynmanualisht • Rikuperimi do tebehetautomatikisht • Nderpritentegjitheproceset e bllokuar • Kjometodeeshte e kushtueshmesepseprocesiqenderpritetmundteketeqene ne ekzekutim per nje fare kohedherezultatethumbasin • Nderpritetnjeproces ne njekohederisatethyhetcikli • Kjometodekerkonqesa here tenderpritetnjeprocestethirretalgoritmi per zbulimin e deadlock. • Nderprejanukeshte e thjeshte, sepseaimundtejete duke modifikuarndonjeskedar ne ate moment

  22. Rikuperiminga Deadlock: Perfundimiiproceseve • Nqsperdoretmetoda e dyte, zgjidhetprocesi me koston me teuletteperfundimit • Faktoret e kostos: • Prioritetiiprocesit • Koha e ekzekutimitteprocesit • Burimetqeinevojiten • Burimetqe ka huazuar • Sa proceseduhettenderpriten • Eshtenjeprocesinteraktivapo batch Iralda Mitro

  23. Rikuperiminga Deadlock: marrja e burimeve • Sipaskesajmetode, disaburime I merrendisaprejprocesevedhe I jepenprocesevetetjere. Duhenmarreparasysh 3 faktore: • Zgjedhja e viktimes • Ciletburime do temerrendhengaciletprocese do temerren • Duhetpercaktuaredherendi I marrjes se burimeve me qellimminimizimin e kostos • Faktoret e kostos: numriiburimevetemarradhe per sakoheprocesieshte ne ekzekutim • Rollback • Nqsprocesitimerretndonjeprejburimet, ainukmundtevazhdojeekzekutimin e tij normal • Procesikthehet ne nje pike siguriedhevazhdonekzekutiminngakjo pike • Metoda me e thjeshteeshte Rollback total – procesifillonedhenjehereekzekutimin e tij • Starvation • Duhetqenjeprocestezgjidhetnjenumertefundemheresh per tunderprere, sepsendodhqekyprocesmosteperfundojekurreekzekutimin Iralda Mitro

More Related