Hibaelhárítás és holtpontok

holtpont felderítése

Ezzel a módszerrel a rendszer nem próbálja megakadályozni a holtpont. Ehelyett, ez lehetővé teszi a holtpont fordul elő. próbálják megállapítani, hogy ez mikor történt, majd végrehajtja néhány intézkedést, hogy visszatérjen a B-STEM mint előforduló, mielőtt a rendszer leállt.







Holtpont Detection jelenlétében egy erőforrás egyes típusok

Holtpont detektáló algoritmus olyan rendszerekben, ahol csak egy erőforrás minden típusból. Alkotunk egy grafikon, ahol az erőforrások - oldalakon. A ciklus ezen grafikonban egymásba.

Ez az algoritmus viszont úgy minden csomópont a gyökér, amit ő reméli lesz egy fa, és végzi a fa mélységi keresést. Ha közben bejáráshoz visszatér a helyszínen már találkozott, nem találta a CEC l. Ha az algoritmus bejárja minden éle egy adott csomópont, akkor visszatér az előző csomópont. Ha visszatér a gyökér, és nem megy tovább, akkor a gráf az aktuális csomópont nem tartalmaz ciklust. Ha ez a tulajdonság megmarad az összes csomópontot, az azt jelenti, hogy a teljes gráf nem tartalmaz ciklust, és a rendszer nincs lezárva.

Holtpont kimutatása jelenléte többféle források egyes

Egy hasonló patthelyzet algoritmus, de ha van több erőforrás minden típusból. Tegyük fel, hogy a kezdeti helyzetben a folyamatok nem jelzett. Ahogy haladunk algoritmus folyamatokat tesz egy jelet, amely arra szolgál, mint a jele, hogy be tudja fejezni a munkát, és ezért nem a holtpont. Befejezése után az algoritmus, köztudott, hogy a jelöletlen folyamat holtpontra jutott.

Az első lépésben az algoritmus úgy néz ki, egy olyan eljárásra, amelyek módosíthatják a vége. Ezt a folyamatot jellemzi az a tény, hogy az összes szükséges forrásokat meg kell körében jelenleg rendelkezésre álló forrásokat. Ezután a kiválasztott folyamat játszódik le teljesen, majd visszatér a források, hogy ő tartotta az általános alap a rendelkezésre álló erőforrásokat. Ezután a folyamat jelölve túlzott tenni. Ha kiderül, hogy mindazok a folyamatok is üzemeltethető, míg egyikük jelenleg nem blokkolja. Ha egy részük soha nem lesz képes által üres, akkor zsákutcába. Annak ellenére, hogy az algoritmus nem determinisztikus (ahogy az a nézet folyamatok minden lehetséges sorrendben), az eredmény mindig ugyanaz.






ki holtpontok


Tegyük fel, hogy a holtpont detektáló algoritmus sikeres volt, és talált egy zsákutca. Mi a következő lépés? Módszerekre van szükség a hasznosítás és kapok vissza a végén egy működő rendszer.

Visszaállítása a kényszerű mentesítési erőforrás

Néha akkor ideiglenesen ki a forrás a jelenlegi tulajdonos, és adja meg, hogy egy másik folyamat. Sok esetben ez kézi beavatkozás szükséges, különösen az operációs rendszerek kötegelt feldolgozás futó mainframe.

Az a képesség, hogy a forrás a folyamat, hogy ez egy másik folyamatot, majd visszatér, hogy az eljárás kezdő nem veszi észre, nagy mértékben függ a tulajdonságok a forrás. Megtörni a patthelyzet, hogy gyakran nehéz vagy lehetetlen. Kiválasztás felfüggeszti az eljárást elsősorban attól függ, hogy a folyamat erőforrások könnyen lehet venni tőle.

Recovery keresztül rollback

Néha lehet szervezni a munkát, hogy a folyamatok időszakosan létrehozott ellenőrző pontok. Létrehozása egy checkpoint folyamat azt jelenti, hogy a folyamat állapotát fájlban tárolt, ahol a folyamat ezután folytatható a fájlt. Ellenőrzési pontok nem csak olyan emlék képet, hanem az erőforrások állapota, azaz információ, hogy milyen forrásokat jelenleg nyújtott a folyamatot. A hatékonyság növelése érdekében az új ellenőrzési ponton nem szabad felülírni a régi és az új fájlt, hogy az egész szekvencia referenciapontok keletkezik a folyamat során.


Amikor egy holtpont észlel, csak annyi, hogy megértsük, milyen erőforrások szükségesek folyamatokat. Megtörni a patthelyzet, egy folyamat, amely a szükséges forrás, visszaáll az időpontban, mielőtt megkapta az erőforrást. Miért fut egyik ellenőrző pont. Minden elvégzett munka után a másolatot ellenőrzés elvesztése. Ennek eredményeként, a folyamat újra kezdődik egy korábbi időpontban, amikor nem rendelkezett olyan erőforrás, amelyek most már az egyik folyamatok kidőlt a holtpontról. Ha újrakezdődött a folyamatot próbálja visszaszerezni az erőforrás, akkor meg kell várni a pillanatot, amikor az erőforrás újra elérhetővé válik.

Recovery pusztulása folyamat

Durva, de ez is a legegyszerűbb kiút a zsákutcából, hogy megöl egy vagy több folyamat. Lehetőség van, hogy megszüntesse a folyamat a holtpont ciklusban. Egy kis szerencsével, más folyamatok is járjon. Ha az első eltávolítás nem sikerül, az eljárást meg lehet ismételni, amíg a ciklus végül megdöntötték-van.

holtpontok elkerülése

Figyelembe véve a holtpont felderítése, már hallgatólagosan feltételeztük, hogy ha egy folyamat olyan erőforrást kér, ehhez őket egyszerre. Azonban a legtöbb erőforrást igényelt egyesével rendszer, egyesével. A rendszernek képesnek kell lennie annak eldöntésére, hogy neve az erőforrás nem biztonságos, vagy nem. és adja meg a folyamat csak az első esetben. Így új kérdés: van-e olyan algoritmus, amely mindig elkerülni holtpont, minden alkalommal, hogy a helyes választás? A válasz egy feltételes „igen” - el tudjuk kerülni a holtpont, de csak akkor, ha bizonyos információkat előzetesen hozzáférhető lesz.

Kulcs szavak az FKN + antitotal fórum (CS VSU):




Kapcsolódó cikkek