kimutatása holtpont

Felismerni a patthelyzet, az szükséges, hogy minden folyamat meghatározása, hogy megosszák, hogy ő valaha is képes lesz újra növekedni, hogy van, hogy megváltoztassák helyzetüket. Mivel mi érdekli a lehetőségét, hogy a fejlesztési folyamat, nem pedig az állam a változás folyamatát, ez elegendő ahhoz, hogy csak a legkedvezőbb állapotában bekövetkező változásokat.







Nyilvánvaló, hogy a folyamat blokkolt (az imént érkezett az erőforrás és ez nem blokkolt) egy idő után megszabadítja minden erőforrását, majd sikeresen befejeződött. A felszabadulás korábban elfoglalt erőforrások „felébreszteni” néhány korábban zárolt folyamatokat, ami viszont, fejlesztése, képes lesz, hogy kiadja a korábban kiosztott források. Ez lehet menni, amíg vagy nem marad nyitva eljárások vagy bizonyos számú eljárások még mindig blokkolva marad. Az utóbbi esetben (ha vannak olyan folyamatok blokkolt amint elvégzik az említett műveletsornak) kezdeti állapota álló Syavlyaetsya-niem holtpont, és a fennmaradó folyamatok holtponton állapotban S. Az ellenkező esetben, ha a pro-S nem a holtpont állapot.

Holtpont érzékelő eszköz grafikon csökkentése újrahasználható források

A legkedvezőbb feltételeket kioldott Pi folyamat lehet predstavlenyreduktsiey (csökkenés) a grafikon az újrahasználható források (lásd. Az első szakaszban az e fejezet, a leírás a Holt-modell). Count mo-Jet Reduction a következőképpen írható le:

 grafikon újrahasználható források zsugorodása Fp amely sem lezárt, sem szigetelt top, eltávolítva az összes élek belépő vertex Pi és Pi kilépés. Ez a törzs-ra is megegyezik az akvizíciós folyamat Pi néhány forrást, amit korábban feltett kérdésre, majd a kiadás minden erőforrását. TogdaPi válik izolált csúcsokat.

 kiküszöbölhetetlen grafikon újrahasználható források (nem csökken), ha ez nem csökkenteni kell minden olyan folyamatot.

 erőforrás típus gróf RSyavlyaetsya teljesen megszakad, ha van egy sorozat a vágások, amely eltávolítja az összes íveket a grafikon.

Bemutatjuk a lemma, amely lehetővé teszi számunkra, hogy a patthelyzet algoritmusok.

Lemma. Erőforrások tipaSRporyadok ráta lényegtelen; Áramlási sebesség szekvencia minden előnyét azonos kiküszöbölhetetlen grafikonon.

Bizonyítás. Tegyük fel, hogy a lemma hamis. Aztán ott kell lennie a nem-állam az S, amelyet redukálunk, egy bizonyos redukálhatatlan CO-álló S1 keresztül seq1 szekvenciákat és egy nem redukálható sostoyaniyaS2 - segítségével posledovatelnostiseq2 így chtoS1 S2 (azaz minden folyamatok sostoyaniyahS1 IS2 vagy blokkolt vagy elszigetelt).

Ha teszünk ezt a feltételezést, akkor érkezik egy ellentmondás, amely megszűnt csak olyan mértékben, hogy az S1 = S2. Valóban, tegyük fel, hogy seq1 szekvencia egy rendezett listáját folyamatok (P1, P2. Pk). Ezután a szekvenciát kell tartalmaznia seq1 P folyamat, amely tartalmazza posledovatelnostiseq2. Ellenkező sluchaeS1 = S2. mert a csökkentés a grafikon csak eltávolítja az ív, a meglévő állapotban S, és az IF seq1 iseq2 szekvenciákat tartalmazzák ugyanazt az eljárás-baglyok (jóllehet más sorrendben), akkor el kell távolítani az ugyanazokat a ívek. És indukcióval bizonyítékot azt mutatja, hogy RRi (i = 1,2. K) dit-redukálható a megadott kapcsolati ellentmondás.







 P P1. mivel a vertex S lehet csökkenteni protsessomP1. sostoyanieS2 ezért is tartalmaznak protsessP1.

 Legyen P  Pi. (I = 1, 2 j). Azonban, mivel a csökkentés után protsessamiPi (i = 1, 2 j) akkor több gráf csökkentése protsessomPj + 1. Ez Ugyanez igaz az posledovatelnostiseq2 függetlenül a sor-követő folyamatokban. Ugyanezt a gráf élek segítségével eltávolítottuk protsessaPi. Így RPj + 1

Következésképpen, Pi P i = 1, 2 K és R nem létezik, és ez az anti-rechit feltételezésünk chtoS1 S2. Ezért, S1 = S2.

Tétel a zsákutcából. SostoyanieSest holtpont állapot akkor és csak akkor, ha a gráf újra felhasználható forrásokat az állam S nem teljesen együtt egyértelműen csökkent.

a) Tegyük fel, hogy az állam S állapotban holtpont és a folyamat Pi holtponton S. Ezután vsehSj. úgy, hogy S

kimutatása holtpont
Sj folyamat Pi van zárva Sj (definíció szerint). Mivel a csökkentés a grafikon megegyezik egy sor kezelő TIONS folyamatok, az utolsó irreducibilis feltétel sorba-sti vágások kell hagyni protsessPi blokkolta. Ezért a grafikon nem teljesen törölték.

b) Tegyük fel, hogy S nem teljesen kompenzálni. Ekkor létezik olyan eljárás Pi. amely továbbra is zárva az összes lehetséges szekvencia csökkentési műveleteket a lemma. Mivel bármilyen sorrendben csökkentési műveletek száma az újrahasználható források, véget nem csökkenthető feltétel biztosítja, hogy minden erőforrás tipaSR hogy valaha is el lehet bocsátani, sőt darazsak vobozhdeny majd protsessPi állandóan zárva, és ezért a holtpont.

Következmény 1. Az eljárás Pi nem egy zsákutca akkor, ha egy sor összehúzódások egy olyan állapothoz vezet, amelyben Pi. Ez nem blokkolja.

2. Következmény Ha S holtpont állapot (típusának megfelelően SR erőforrások), majd legalább két folyamat holtponton S.

A tétel a holtpont és közvetlenül következik az algoritmus holtpont felderítése. Csak azt kell, hogy megpróbálja csökkenteni a gróf lehetséges hatékony módja; Ha a gráf nem teljesen csökken, a kezdeti állapot a patthelyzet azon folyamatok, a tetejét, amelyek a nesokraschen Mr. Box. Figyelembe vett lemma lehetővé teszi számunkra egy kényelmes módja, hogy racionalizálja áfacsökkentés.

Count újrahasználható források leírható egy mátrix vagy listákat. Mindkét esetben, a memória több megtakarítás érhető el alkalmazásával súlyozott orientált multigráfokra (egyesülő bizonyos ívek kapjunk vagy lekérdezés ívek közötti az adott forrás és a folyamat adatokat egy ívet egy megfelelő súlyt, amely meghatározza, hogy hány erőforrás egységet).

Vegyük azt az esetet olyan mátrix reprezentációja. Mivel a gráf páros, akkor a jelentése két mátrix mérete nm. Egy mátrix elosztó mátrix D = || dij ||, ahol dij elem tükrözi edinitsRj erőforrás elkülönített összeget estdij folyamat Pi = | (Rj, R;) |, ahol (Rj, Pi) - egy ív közötti csúcsok Rj IPI . vezető Rj Pi. A második mátrix egy olyan mátrixkészítmény-Lock cos N = || NIJ ||, gdenij = | (P i, Rj) |.

felsorol két csoport lehet kialakítani abban az esetben segítségével kapcsolt listák megjelenítéséhez ugyanazt a szerkezetet. Elkülönített források bizonyos folyamat Pi. CPI kapcsolódó mutatók:

Hasonlóképpen, a források által kért eljárás Pi. összekapcsolva.

Hasonló a listák és az erőforrások (elosztási listát, és lock-shennyh erőforrások).

Mindkét fogalom is kényelmes, hogy egy egydimenziós tömb a rendelkezésre álló erőforrás egységben (R1, R2 rm.), Gderi számát jelzi a rendelkezésre álló (osztott kormányzati egységek resursaRi a estri = |. Ri | - | (Ri, Pk) |.

És mindegyik ellenőrző vizsgálatokat m források. Így a végrehajtási időt az algoritmus a legrosszabb esetben arányos mn 2.

Egy hatékonyabb algoritmus lehet előállítani tárolására néhány további információt a kéréseket. Minden egyes csúcsa Pi által meghatározott ún folyamat schotchikozhidany wi. megjelenítését a források összege (nem több erőforrás egységben), amely egy időben viselésére okozhat blokkok folyamatot. Ezen kívül lehetőség van, hogy fenntartsák az egyes erőforrás kérelmek méret szerint (a szám a forrás egység). Ezután a következő algoritmust vágások rögzített pszeudo-kód egy maximális futási időt arányos mn.

Minden P  L do

Kezdje minden Rj  | (. Rj P) |> 0 do

L- itt a jelenlegi folyamatok listáját, amely képes elvégezni csökkenését a grafikonon. Elmondhatjuk chtoL: = i wi = 0> gombot. A program kiválasztja a listából folyamat P L, P csökkenti a folyamat gráf, növelve a rendelkezésre álló edinitsrj minden resursovRj. P forgalmazási folyamat frissíti a számláló ozhidaniyawi Mind a folyamat Pi, amely kielégíti a kérés egy különleges erőforrás Rj. és hozzáteszi, hogy a Pi L, ha az elvárások a számláló nulla lesz.




Kapcsolódó cikkek