Operációs rendszerek
[Edit] fogalmak
Párhuzamos folyamatok - folyamatok, amelyek végrehajtása legalább részben átfedi az időben
Független folyamatok - folyamatok alkalmazásával független készlet források. Egy ilyen folyamat nem érinti a munka eredményeként a független munkafolyamat tőle.
Kölcsönható folyamatok - folyamatok, amelyek a források közösen.
Erőforrás-megosztás - megosztását több BC erőforrás folyamatok, ahol minden folyamatot, miközben birtokolja a forrás.
Külön kell választani mind a hardver szoftver erőforrások.
Megosztott erőforrások, amelyek rendelkezésre kell állnia az adott időpontban csak egy folyamat - az úgynevezett kritikus erőforrások. Ezeket a forrásokat lehet akár egy külső eszköz, és egy bizonyos változót, amelynek értéke változhat a különböző folyamatok.
Meg kell tudni, hogy megoldja két fő problémát:
Multiprogramming alapvető követelmény szempontjából forráselosztás a következő: az eljárás eredményét nem függhet a sorrendben kapcsolási végrehajtási folyamatok közötti, azaz A sebesség aránya a folyamat más futó folyamatokat.
Tekintsük a példát olyan helyzet, amely sérti a követelmények párhuzamosan futó. Legyen néhány egyszerű függvény, amely beolvassa a karaktert be a billentyűzetről, és megjeleníti a képernyőn:
Ebben a példában a néhány feltételes függvény input () és kimeneti (), mivel ebben a pillanatban számunkra számít, konkrétan végre I / O a rendszerben. Mivel ez a darab kódot lehet használni szinte bármilyen alkalmazás, célszerű, hogy a közös, amikor az OS terhelés egy bizonyos régióban rendelkezésre álló memória minden folyamat, egyetlen példányát a programot, és minden folyamat használja a programot együtt. Figyeljük meg, hogy ebben az esetben a változó van osztva.
- Eljárás felhívja a függvény echo (), de abban a pillanatban, amikor a bemeneti jel bekerült a változót, de előtte még meg, akkor a folyamat végrehajtása megszakad, és hogy végre betöltési folyamat B.
- A folyamat is okoz echo funkció (). Miután a függvény echo () egy változó tartalmazza sok új értéket olvasni a billentyűzetet.
- Eljárás folytatódik a ponton, ahol az megszakadt, és megjeleníti a karakter változó.
Ebben a példában a karakter olvasni eljárás egy, elveszett, és a karakter olvasni a folyamat származik kétszer. Az eredmény a folyamat itt attól függ, ekkor váltani folyamat, és milyen folyamat lesz megválasztva, hogy végre a következőket.
Az ilyen helyzetek nevezett faj (faj körülmények között) közötti folyamatok és eljárások - versenyben van.
A program része (valójában egy sor művelet), amelyben a munka kritikus erőforrást, úgynevezett kritikus szakasz. vagy a kritikus intervallumot.
Az egyetlen módja, hogy elkerüljék futam ha megosztott erőforrások - való hozzáférés szabályozására megosztott erőforrások a rendszerben. Meg kell szervezni a kölcsönös kizárás - így dolgozik egy közös erőforrás, mely abban a pillanatban, amikor az egyik folyamat dolgozik egy közös erőforrás, az összes többi folyamat nem fér hozzá.
Megjegyezzük, hogy a szóban forgó szervezet a kölcsönös kizárás releváns nemcsak az egymással összefüggő folyamatok azonosítására, amelyek bizonyos erőforrásokat az információcsere. A helyzetet, amikor a folyamatok nincsenek tisztában egymás létezéséről, használja a globális rendszer erőforrásokat, mint a bemeneti / kimeneti eszközök, nyomtatók, stb Ebben az esetben, mivel van egy verseny a forrásokért, ahová a belépés azt is figyelembe kell megszervezni a kölcsönös kizárás.
[Szerkesztés] Problémák a szervezet a kölcsönös kizárás
- Holtpontok (holtpontok)
- Blokkoló (diszkrimináció)
[Rule] holtpontok (holtpontok)
holtpontok (holtpontok) merülhetnek fel, ha a szervezet a kölcsönös kizárás, olyan helyzet, amelyben versenyez a kritikus erőforrás folyamatok lépnek a szegecs - tartósan blokkolva van.
Két A és B eljárások, amelyek mindegyike egy bizonyos ponton hozzá kell férniük a két erőforrás, R1 és R2. A folyamat az erőforrás elérését R1, ezért nincs más folyamat nem férhetnek hozzá, amíg a folyamat befejeződik A vele. A folyamat egyidejűleg kitisztult R2 erőforrás. Ebben a helyzetben minden folyamat vár egy hiányzó forrás, de mind a forrás soha nem szabadul fel, és a folyamat soha nem lesz képes elvégezni a szükséges intézkedéseket.
[Rule] Blokkoló (diszkrimináció)
Blokkolása - a helyzet, amikor hozzáférést az egyik a folyamatok a megosztott erőforrás nem áll rendelkezésre aktivitásának köszönhetően más, magasabb prioritású folyamatokat.