A folyamatállapotok diagramja

Egy folyamat létrehozása - egy olyan információs struktúra létrehozása, amely tartalmaz mezőket:

1. A folyamat azonosítója határozza meg a folyamat helyét;

2. Szülői folyamatazonosító (szülőprocesszus → gyermekfolyamat), egy folyamat létrehoz egy másik folyamatot;

3. A végrehajtható modul helyére vonatkozó adatok a memóriában;

4. A folyamat privatizációjának mértéke;

6. Statisztikai adatok (a folyamat létrehozásának ideje, a folyamat befejezési ideje).

A 2. ábra bemutatja a folyamat létrehozására szolgáló algoritmust:

A folyamat kontextusa és leírása

A folyamat fennállása alatt, annak végrehajtása többször is megszakítható és folytatható. A folyamat folytatásához vissza kell állítania a működési környezet állapotát. State of the működési környezet állapotát jelzi a nyilvántartások és program számláló, processzor módban a mutatókat fájlok megnyitásához, információkat folyamatban lévő IO műveletek hibakódok rendszer hívások által végrehajtott folyamat, stb Ezt az információt a folyamat kontextusának nevezik.

Ezenkívül az operációs rendszer további információkat igényel a folyamat tervezésének végrehajtása érdekében: folyamatazonosító, folyamatállapot, folyamat jogosultsági szint információ, kódszegmens hely és egyéb információ. Bizonyos operációs rendszerekben (például UNIX operációs rendszerben) az operációs rendszernek a folyamat tervezéséhez használt adatait folyamatleírónak nevezik.

A folyamatkezelés a kontextushoz képest több operatív információt tartalmaz, amelyeknek könnyen elérhetőnek kell lenniük a folyamat tervezési alrendszer számára. A folyamatkörnyezet kevesebb lényeges információt tartalmaz, és az operációs rendszer csak akkor használja fel, ha a megszakított folyamat folytatására vonatkozó döntés meghozatala megtörtént.

Az eljárási sorok az egyes folyamatok leíróinak, listákra kombinálva. Így minden egyes leíró például többek között legalább egy mutatót tartalmaz a várólista melletti másik leíróhoz. A sorok szervezete megkönnyíti a folyamatok újrarendezését, beillesztését és kizárását, a folyamatok átjutását egyik államról a másikra.

A programkód csak akkor kerül végrehajtásra, ha az operációs rendszer létrehoz egy folyamatot.

Hozzon létre egy eljárást:

1. hozzon létre információs struktúrákat, amelyek leírják ezt a folyamatot, azaz leíróját és kontextusait;

2. Tartalmazza az új folyamat leíróját a kész folyamatok sorában;

3. Helyezze a folyamat kódszegmensét a RAM vagy swap területre.

Egy többfeladatos (többfolyamatú) rendszerben a folyamat három alapállapot valamelyikében lehet:

VÉGREHAJTÁS - a folyamat aktív állapota, amely során a folyamatnak minden szükséges forrása van, és amelyet közvetlenül a processzor hajt végre;

VÁRAKOZÁS - passzív állapotban a folyamat, a folyamat le van tiltva, akkor nem tudja futtatni a saját belső okok miatt, ő várja a végrehajtás bizonyos események, mint például a befejezése IO művelet, akkor kap egy üzenetet egy másik folyamat, engedjen minden erőforrást igényel;

READY - passzív állapotban a folyamat is, de ebben az esetben a folyamat miatt blokkolt a külső körülmények ahhoz képest: a folyamat az összes szükséges forrásokat, ő készen áll, hogy végre kell hajtani, de a processzor van elfoglalva végrehajtó egy másik folyamat.

Az életciklus során az egyes folyamatok egyik állapotról a másikra az ebben az operációs rendszerben végrehajtott folyamat-ütemezési algoritmusnak megfelelően mozognak. A folyamatállapotok jellemző grafikáját a 2.1 ábra mutatja.

A végrehajtás állapot egy egyprocesszoros rendszer lehet csak egy folyamat, és minden állam készen várja - különböző eljárásokkal, ezek a folyamatok képeznek sorban várakozó rendre és kész folyamatokat. Az életciklus a folyamat kezdődik készenléti állapotot, amikor a folyamat végrehajtásra kész, és vár a sor. Bekapcsolt állapotban, a folyamat halad a futó állapotát, és van benne, amíg vagy ő felszabadítja a CPU, megy, a várakozási állapot egy esemény, vagy kénytelen lesz „kizárták” a CPU-tól, például kimerülése miatt az elkülönített eljárásban kvantum CPU idő . Az utóbbi esetben a folyamat visszatér a READY állapotba. Ugyanebben az állapotban a folyamat a WAITING állapotból indul, miután a várható esemény bekövetkezik.

Ábra. 2.1. A folyamatállapotok ábrája egy multitask környezetben

Kapcsolódó cikkek