Existuje jeden vztah mezi procesem a programem, což znamená, že jeden program může vyvolat více procesů nebo jinými slovy může být součástí stejného programu více procesů.
Srovnávací graf
Základ pro srovnání | Program | Proces |
---|---|---|
Základní | Program je soubor instrukcí. | Když je program spuštěn, je znám jako proces. |
Příroda | Pasivní | Aktivní |
Životnost | Delší | Omezený |
Požadované zdroje | Program je uložen na disku v nějakém souboru a nevyžaduje žádné další prostředky. | Proces uchovává zdroje, jako je CPU, paměťová adresa, disk, I / O atd. |
Definice programu
Program, jednoduchými slovy, může být považován za aktivitu systému. V systému dávkového zpracování se nazývají prováděcí úlohy, zatímco v reálném čase se nazývají úkoly nebo programy. Uživatel může spouštět více programů, kde operační systém umožňuje vlastní interní naprogramované činnosti, jako je správa paměti pomocí některých technik.
Program je pasivní entita, například soubor obsahující skupinu instrukcí, které mají být provedeny (spustitelný soubor). Je tzv. Proto, že sám neprovede žádnou akci, musí být proveden k realizaci akcí v ní uvedených.
Adresový prostor programu se skládá z instrukcí, dat a zásobníku. Předpokládejme, že P je program, který píšeme, abychom realizovali provedení P, operační systém přiděluje paměť pro umístění adresního prostoru P.
Definice procesu
Proces je provedení programu. Považuje se za aktivní subjekt a realizuje akce specifikované v programu. Více procesů se může týkat stejného programu. Zpracovává činnosti operačního systému prostřednictvím PCB (Process Control Block), který zahrnuje počítadlo programů, stav zásobníku, stav atd. Počítadlo programů ukládá další posloupnost instrukcí, která má být provedena později.
K provádění úkolů správy potřebuje prostředky, jako je zpracování, paměť a I / O prostředky. Během provádění programu by mohl zapojit procesor nebo I / O operaci, která činí proces odlišným od programu.
Pochopme to z příkladu; píšeme program C. Při psaní a ukládání programu do souboru se jedná pouze o skript a neprovádí žádnou akci, ale když je prováděn, promění se v proces a proces je tedy dynamický. Sdílení zdrojů mezi více procesy je využíváno současnými stroji, ale ve skutečnosti je jeden procesor rozdělen mezi několik procesů.
Klíčové rozdíly mezi programem a procesem
- Program je určitá skupina uspořádaných operací, které mají být provedeny. Na druhé straně je instancí prováděného programu proces.
- Povaha programu je pasivní, protože nedělá nic, dokud se neprovede, zatímco proces je dynamický nebo aktivní v přírodě, protože se jedná o instanci vykonávajícího programu a provést konkrétní akci.
- Program má delší životnost, protože je uložen v paměti, dokud není ručně vymazán, zatímco proces má kratší a omezenou životnost, protože se ukončí po dokončení úlohy.
- Požadavek na zdroje je v případě procesu mnohem vyšší; pro úspěšné provedení může potřebovat zpracování, paměť, I / O zdroje. Naproti tomu program vyžaduje pouze paměť pro ukládání.
Závěr
Program a proces jsou relevantní, ale liší se. Program je pouze skript uložený na disku nebo se zdají být předchozí fází procesu. Naopak, proces je událostí programu v provádění.