Existuje mnoho vzťahov medzi procesom a programom, čo znamená, že jeden program môže vyvolať viaceré procesy alebo inými slovami viaceré procesy môžu byť súčasťou toho istého programu.
Porovnávacia tabuľka
Základ pre porovnanie | Program | proces |
---|---|---|
základné | Program je súbor inštrukcií. | Keď sa program spustí, je známy ako proces. |
príroda | pasívny | aktívny |
Dĺžka života | Dlhšie | obmedzený |
Požadované zdroje | Program je uložený na disku v nejakom súbore a nevyžaduje žiadne iné zdroje. | Proces obsahuje zdroje ako CPU, pamäťová adresa, disk, I / O atď. |
Definícia programu
Program môže byť jednoducho povedané považovaný za systémovú činnosť. V dávkovom spracovateľskom systéme sa tieto nazývajú vykonávacími úlohami, zatiaľ čo v operačnom systéme v reálnom čase sa nazývajú úlohy alebo programy. Používateľ môže spúšťať viacero programov, kde operačný systém uľahčuje vlastné interné naprogramované činnosti, ako napríklad správu pamäte pomocou niektorých techník.
Program je pasívny subjekt, napríklad súbor obsahujúci skupinu pokynov, ktoré sa majú spustiť (spustiteľný súbor). Je to tak nazývaný preto, lebo nevykonáva žiadnu akciu samo o sebe, musí byť vykonaná na realizáciu akcií, ktoré sú v ňom špecifikované.
Adresný priestor programu pozostáva z inštrukcií, údajov a zásobníka. Predpokladajme, že P je program, ktorý píšeme, na realizáciu vykonania P, operačný systém prideľuje pamäť na prispôsobenie adresového priestoru P.
Definícia procesu
Proces je vykonanie programu. Považuje sa za aktívnu entitu a realizuje akcie špecifikované v programe. Viaceré procesy môžu súvisieť s rovnakým programom. Spracováva činnosti operačného systému prostredníctvom PCB (Process Control Block), ktorý obsahuje počítadlo programov, zásobník, stav atď. Programový čítač ukladá ďalšiu postupnosť inštrukcií, ktorá sa má vykonať neskôr.
Potrebuje zdroje ako spracovanie, pamäť a I / O zdroje na splnenie úloh riadenia. Počas vykonávania programu by sa mohol zapojiť procesor alebo I / O operácia, ktorá robí proces odlišný od programu.
Chápeme to z príkladu; píšeme program C. Pri písaní a ukladaní programu do súboru ide len o skript a nevykonáva žiadnu činnosť, ale keď sa vykoná, premenuje sa na proces, a preto proces má dynamický charakter. Zdieľanie zdrojov medzi viacerými procesmi sa používa v súčasných strojoch, ale v skutočnosti je jeden procesor rozdelený medzi viaceré procesy.
Kľúčové rozdiely medzi programom a procesom
- Program je určitá skupina objednaných operácií, ktoré sa majú vykonať. Na druhej strane je inštanciou vykonávaného programu proces.
- Povaha programu je pasívna, pretože nečiní nič, kým sa nevykoná, zatiaľ čo proces je dynamický alebo aktívny v prírode, pretože je to inštancia vykonávania programu a vykonanie konkrétnej akcie.
- Program má dlhšiu životnosť, pretože je uložený v pamäti, kým nie je ručne odstránený, kým proces má kratšiu a obmedzenú životnosť, pretože sa ukončí po dokončení úlohy.
- Požiadavka na zdroje je oveľa vyššia v prípade procesu; na úspešné vykonanie môže potrebovať spracovanie, pamäť, vstupné / výstupné zdroje. Na rozdiel od toho program vyžaduje len pamäť na ukladanie.
záver
Program a proces sú relevantné, ale sú odlišné. Program je skript uložený na disku alebo sa javí ako predchádzajúca fáza procesu. Naopak proces je udalosť programu.