A folyamat és a program között sok-két kapcsolat áll fenn, ami azt jelenti, hogy egy program több folyamatot is kezdeményezhet, vagy más szóval több folyamat is lehet ugyanannak a programnak a része.
Összehasonlító táblázat
Az összehasonlítás alapja | Program | Folyamat |
---|---|---|
Alapvető | A program utasítások halmaza. | Amikor egy program végrehajtásra kerül, akkor ezt folyamatnak nevezzük. |
Természet | Passzív | Aktív |
Élettartam | Hosszabb | Korlátozott |
Kötelező erőforrások | A program bizonyos fájlokban tárolódik a lemezen, és nem igényel más erőforrásokat. | A folyamat olyan erőforrásokat tartalmaz, mint a CPU, a memóriacím, a lemez, az I / O stb. |
A program meghatározása
Egy program egyszerű szavakkal rendszerszintű tevékenységnek tekinthető. A kötegelt feldolgozó rendszerben ezeket úgy hívják végrehajtó feladatoknak, hogy egy valós idejű operációs rendszerben feladatnak vagy programnak nevezzük. A felhasználó több programot is futtathat, ahol az operációs rendszer megkönnyíti a saját belső programozott tevékenységeit, például bizonyos technikákkal történő memóriakezelést.
A program egy passzív entitás, például egy fájl, amely a végrehajtandó utasításcsoportot (végrehajtható fájl) tartalmazza. Ez úgynevezett, mert önmagában nem végez semmilyen lépést, azt az abban meghatározott műveletek megvalósításához kell végrehajtani.
A program címterülete az utasítás, az adat és a verem. Tegyük fel, hogy P az a program, amit írunk, a P végrehajtásának megvalósításához az operációs rendszer a memóriát a P címtartományának elhelyezésére osztja fel.
A folyamat meghatározása
A folyamat egy program végrehajtása. Aktív entitásnak tekintik és megvalósítja a programban meghatározott műveleteket. Ugyanazon programhoz több folyamat is kapcsolódik. Az operációs rendszer tevékenységeit a PCB (Process Control Block) segítségével kezeli, amely tartalmazza a programszámlálót, a stacket, az állapotot stb. A program számláló tárolja a később végrehajtandó utasítássorozatot.
Erőforrásokra van szükség, mint például a feldolgozás, a memória és az I / O erőforrások a felügyeleti feladatok elvégzéséhez. A program végrehajtása során olyan processzort vagy I / O műveletet végezhet, amely a folyamattól eltérő folyamatot tesz lehetővé.
Megértjük ezt egy példából; C-programot írunk. A program egy fájlban történő írásakor és tárolásakor ez csak egy szkript, és nem hajt végre semmilyen műveletet, de amikor végrehajtásra kerül, a folyamat folyik, így a folyamat dinamikus jellegű. Az erőforrások megosztását több folyamat között az aktuális gépek használják, de ténylegesen egyetlen processzor oszlik meg több folyamat között.
A program és a folyamat közötti különbségek
- A program egy meghatározott csoport a megrendelt műveleteknek, amelyeket végre kell hajtani. Másrészt a végrehajtandó program példánya egy folyamat.
- A program jellege passzív, mivel nem tesz semmit addig, amíg végrehajtásra nem kerül sor, míg a folyamat dinamikus vagy aktív a természetben, mivel ez egy végrehajtó program példája és végrehajtja a konkrét műveletet.
- A program hosszabb élettartammal rendelkezik, mivel azt a memóriában tárolják, amíg nem törlődik manuálisan, míg a folyamat rövidebb és korlátozottabb élettartammal rendelkezik, mert a feladat befejezése után megszűnik.
- Az erőforrásigény sokkal nagyobb a folyamat esetében; a sikeres végrehajtáshoz feldolgozásra, memóriára, I / O erőforrásokra lehet szükség. Ezzel szemben a program csak memória tárolására van szükség.
Következtetés
A program és a folyamat releváns, de eltérnek egymástól. A program csak a lemezen tárolt parancsfájl, vagy úgy tűnik, mint a folyamat előző szakasza. Éppen ellenkezőleg, a folyamat egy program végrehajtása.