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 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.