A független és interaktív folyamatok

Az egyik jellemzője párhuzamosan futó operációs rendszer, hogy amikor működik a rendszer fejlesztése párhuzamosan, és több számítási folyamatokat.

A szempontjából egy külső megfigyelő, minden ilyen folyamatok konzisztens, ha a hardver szerkezet a számítógép egyetlen processzoron. Mivel minden folyamat jelen a rendszerben, és különösen az OP-ban, ugyanakkor abból a szempontból, az operációs rendszer, akkor lehet értelmezni, hogy a párhuzamos. Ez azt sugallja, hogy alatti egyidejű folyamatok lehet érteni nem csak folyamatok egyidejűleg futó különböző processzorok vagy bemeneti / kimeneti csatornák, hanem azokat is, szekvenciális folyamatok, amelyek osztják a (megosztás) ugyanazt a processzort, OP, vagy más rendszer forrás, és legalább részben átfedik egymást időben.

Multiprogramming operációs rendszer logikai szinten is képviselteti magát egy sor egymást követő folyamatok, amelyek egyrészt, versenyt a források és mozgó egyik állapotból a másikba, és másrészt - működnek szinte egymástól függetlenül, és állítsa be a kívánt kapcsolatot összekapcsolódnak egymással, adatátvitel üzeneteket, vagy időzítési jeleket. Ebben az összefüggésben, az összes párhuzamos folyamatokat lehet két csoportra oszthatók:

1. Független - azzal jellemezve, hogy a több adatot használnak, nem keresztezik egymást. Az adatok megértéséhez szükséges az általános területen OP, valamint a fájlok a külső memória. Független folyamatok nem befolyásolják egymás munkáját, hiszen nem lehet módosítani a többi adatot folyamatokat. Ők csak késleltetné a végrehajtás egyéb folyamatok ossza meg együtt a rendszer erőforrásait;

2. Az interakció folyamatának megosztani a különböző rendszer erőforrásait, és különösen, általános adatokat. Végrehajtása az ilyen típusú eljárás teljesítményére is hatással lehet a többi.

Különböző rendszer erőforrásait lehet osztani több folyamat által. Ezek a források nevezik megosztott. Az egyes időpontokban, az erőforrás az ilyen típusú hozzáférhetnek csak az egyik kommunikáló folyamatok. a rendszer erőforrásait, amelyek nem teszik lehetővé egyidejű használatát több folyamat, az úgynevezett kritikus. Ha több kölcsönható folyamatok alkalmazása szükséges kritikus erőforrást, a többszörös programozásról OS kell tenni, hogy megvédje egyidejű hozzáférést a források ilyen folyamatok. Ellenkező esetben a művelet során a rendszer hibákat okozhat (holtpontok / konfliktusok / szegecs), ha több folyamat egyidejű megpróbál hozzáférést a kritikus erőforrásokat. Az ok az ilyen hibák, hogy a folyamatok többszörös programozásról rendszerek fejlődésének különböző abszolút árak, ezért azok relatív sebessége ismeretlen, és nem lehet megváltoztatni a folyamatban. Ezért, a befolyás egymást kölcsönható folyamatok, a legtöbb esetben, és kiszámíthatatlanul megismételhetetlen.

Egymással kölcsönhatásban vannak kétféle folyamat:

2) együttműködő az általános számítási munkát.

Versengő folyamatokat rendszeresen férhetnek hozzá a megosztott erőforrások, de nem kommunikálnak egymással. A folyamatok a második típusú folyamatos adatcserét egymással úgy, hogy a számítási eredmények a továbbítani az egyik eljárás a másikba. A fordított adatátvitel.

A működése az operációs rendszer potenciálisan veszélyes, mindenekelőtt helytelen végrehajtása egyidejű folyamatok miatt nem szabályozott hozzáférést a kritikus erőforrásokat. Szabályozza a hozzáférést, azaz szabályok meghatározásakor a hozzáférést az operációs rendszert kell létrehozni eszköze a kölcsönös kizárás, amely nem teszi lehetővé a két versengő folyamat egyidejű hozzáférést a megosztott erőforráshoz. Jelentése ezen termékekből, amelyek lezárása előtt a kezelés időtartama egy folyamat, hogy az erőforrás kell lenniük hozzáférni egy másik szoftver folyamat.

Hasonló a helyzet fordul elő a két folyamat között, az úgynevezett mutexek.

Más, mint a kölcsönös kizárás, a rendszert kell biztosítani, hogy a szinkronizálási feladat kölcsönható folyamatokat. Ezek szükségesek ahhoz, hogy lehetővé tegye a normális kommunikációt ilyen folyamatok.

Ezek a területek a programokban a konkurens folyamatokat, amelyekben van egy hivatkozás a kritikus erőforrások nevezzük kritikus szakaszok (kritikus időközönként).

A független és interaktív folyamatok

A probléma megoldása a helyes hozzáférést a kritikus szakaszok megszervezése ilyen hozzáférést, ahol csak az egyik a folyamatokat egy és ugyanazon pillanatban léphet be a kritikus szakaszt.

Ez a probléma, általában meglehetősen bonyolult, mert a kritikus szakasz - nem csak egy sorozata nyilatkozatok a program, és a műveletsornak hogy végzik ezeket a szereplők. Ha a folyamat már a kritikus szakaszban, majd egy másik folyamat továbbra is végre kell hajtani, de anélkül, hogy belépne a kritikus szakasz. Kölcsönös kizárás esetében szükséges, amikor a folyamatok indulnak egyidejű hozzáférést a megosztott erőforrást.

Ha a folyamat végre műveleteket, amelyek nem vezetnek konfliktusokhoz, akkor lehetőség van az állandó párhuzamos végrehajtás. Amikor a folyamat nem megy ki a kritikus szakaszába, akkor egy másik folyamat vár belépését a kritikus szakaszok lehetővé kell tenni, hogy továbbra is dolgozik a saját szakaszok.

A modern rendszerekben, hogy megoldja a problémát a kölcsönös kizárás, valamint a kapcsolódó problémák a szinkronizálás és az adatok cseréjét, speciális szerszámok úgynevezett folyamatközti kommunikáció.

Ezek az alapok két csoportra oszthatók:

1) azt jelenti, szinkronizálására a folyamatok és szálak, amelyek eszközt tartalmaz annak biztosítása érdekében, a kölcsönös kizárási probléma megoldása;

2) azt jelenti közötti adatcseréhez folyamatok és szálak.

Kapcsolódó cikkek