Opredelitev

Proces je program, ki izvaja določeno zaporedje ukazov. Lahko imamo več različnih izvedb enega programa (text editor, compiler), ki se izvajajo istočasno. Predstavljajo različne procese.

Procesi so osnovne entitete, s katerimi upravlja operacijski sistem. Operacijski sistem daje vsakemu procesu občutek, da ima celoten sistem na razpolago zase (virtual machine).

Vsak proces ima določen naslovni prostor, v katerem lahko deluje. Ostali procesi nimajo dostopa do tega naslovnega prostora.

Poznamo več sopomenk za proces: opravilo (task), posel (job) ali celo program.


img73_5

Poznamo več sopomenk za proces: opravilo (task), posel (job) ali celo program.

Med časom izvajanja proces prehaja med različnimi stanji:

  • nov (new),
  • pripravljen (ready),
  • v izvajanju (running),
  • na čakanju (waiting),
  • izvršen (terminated).

Nov proces ob nastanku pridobi lasten PCB (proces control block) in naslovni prostor v glavnem pomnilniku. Tak proces je postavljen v čakalno vrsto za CPE in stoji v stanju pripravljenosti. Vsakič ko je CPE dostopen, se pripravljen proces premakne v izvajalno stanje.

Proces, ki se izvaja izgubi nadzor nad CPE v primerih ko:

  • izvede sistemski klic; operacijski sistem odstavi proces v stanje čakanja dokler klic ni dokončan,
  • pride do prekinitve; operacijski sistem postavi izvajajoč proces spet v stanje pripravljenosti. Ta prekinitev je lahko časovna prekinitev, ki operacijskemu sistemu pove, da je proces porabil svoj procesorski čas, ki ga je imel na voljo, oz. da je na vrsto prišel proces z višjo prioriteto,
  • proces je izvršen.

Ustavljen proces ostane v stanju čakanja dokler njegova zahteva ni izpolnjena (podatki so bili zapisani, datoteka je bila ustvarjena, sporočilo je bilo dostavljeno). Proces nato preide v stanje pripravljenosti.

Vsi procesi v stanju pripravljenosti so razvrščeni v prioritetni vrsti, ki se imenuje "ready queue". Prvi proces v tej vrsti je vedno proces, ki bo naslednji prišel na vrsto za izvajanje. Čakalno stanje je sestavljeno iz ene vrste za vsako napravo, vir ali dogodek.