Előadás 8 7. fejezet
Holtpontok és hasonló problémája az alvásból - fontos tényező, hogy figyelembe kell venni az operációs rendszer fejlesztői.
Tupik (holtpont) - ez egy ilyen helyzetben egy többszörös programozásról rendszer, amikor a folyamat vár néhány esetben, soha nem fog megtörténni. Rendszer holtpont vagy „lefagy” a rendszer - ez egy olyan helyzet, amikor egy vagy több folyamatot állapotban vannak a holtpont.
Vegyünk egy egyszerű példát a zsákutcából a források elosztását.
Az operációs rendszer holtpontra a legtöbb esetben fordul elő verseny folyamatok biztosítása soros hozzáférésű erőforrások az egyes időpontokban vannak rendelve csak egy felhasználó.
Az erőforrás-allokáció grafikon mutatja a zsákutcából, amelyben minden egyes folyamat tartja a kért erőforrás egy másik folyamat, és sem a folyamatok nem akarja, hogy kiadja a forrás hozzá tartozó.
Resource 1 kiemelte Protsess_Y kérések
protsessu_H Resource 1 Resource 1
Protsess_H kért erőforrást 2
Erőforrás Forrás 2 Y 2 protsessu_
Ábra. 5 forráselosztás Count
Egy ilyen állapotban kör alakú elvárások jellemző rendszerek állapotban holtpont.
nyomtatási rendszer (input-output pufferelés) gyakran vannak kitéve a holtpont (saját példák ilyen helyzetben).
Közel a probléma előfordulásának holtpontok - a probléma végtelen halasztás, ahol a rendelkezésre a kért források, néhány folyamat késni fog határozatlan időre, abban az időben, a rendszer figyelni más folyamatok. Emlékezzünk vissza, hogy a fejlesztés az operációs rendszer szükséges a méltányos és hatékony folyamatirányítás, tétlen állapotban. Egyes rendszerekben a végtelen halasztás megakadályozza az a tény, hogy a folyamat prioritása növekszik, ahogy azt várja ki a kívánt forrást. Ezt nevezik az öregedéssel Trial.
Szükséges feltételeket előfordulása holtpontok
Előfeltételek jelenléte holtpont lehet az alábbiak szerint történik: 1 0.
Állapota a kölcsönös kizárás - amikor a folyamatok kötelezővé kizárólagos menedzsment jogokat, amelyek a nekik juttatott.
Feltétel készenléti források - ha a folyamat megőrzi a források már a nekik juttatott, arra számítva, ugyanakkor a további erőforrásokat.
Nepereraspredelyaemosti állapot - amikor a források nem veszi el a folyamatot tartja őket, amíg ezek a források nem használhatók befejezni a munkát.
Feltételek körkörös készenlét - ha van egy gyűrű alakú lánc folyamatok, ahol minden egyes folyamat megtartja egy vagy több szükséges erőforrások a következő eljárás szerint.
Harcolj az előfordulása holtpontok lehet végezni négy fő területen: megakadályozza a holtpont; megkerülve a holtpontok; holtpont felderítése; lábadozik holtpontok.
Stratégiák, hogy megakadályozzák a holtpont
Miközben megakadályozza holtpontok cél annak biztosítása, hogy a feltételek zárja ki annak lehetőségét holtpontok. Gyakran előfordul, hogy ez a megközelítés helytelen elosztását a források, de mégis, gyakran használt OS fejlesztők.
Havender január 1 művében azt mutatta, hogy az esemény a patthelyzet lehetetlen, ha megsértik legalább az egyik a fenti négy feltétel szükséges, és azt javasolta, a következő stratégiát, hogy megakadályozzák a holtpont.
Minden folyamatot kell kérnie minden szükséges forrást meg egyszerre, és nem fognak futni mindaddig, amíg nem lesz biztosított neki. Megjegyzendő, hogy ez a stratégiai elv vezet, egyes esetekben csökkentheti a rendszer hatékonysága.
Ha a folyamat tartja egyes források megtagadják iránti kérelem teljesítése további források, a folyamat kell engednie az eredeti forrásokat, és ha szükséges, felkéri őket újra együtt további forrásokat. Ez az elv megakadályozza nepereraspredelyaemosti feltételekkel. Az egyik nagy hátránya ennek a stratégiának az a lehetőség, az alvásból.
Bemutatjuk lineáris rendezés erőforrás típusok minden folyamat - más szóval, ha a folyamatot elkülönített források az ilyen típusú a jövőben ez csak kérni forrásokat a távolabbi sorrendben típusát. Ez az elv kizárja Havendera körkörös várakozás azonban negatívan befolyásolja a felhasználó képes szabadon és könnyen alkalmazásokat írni, vagyis Ez vezet zavar barát OS.