Operacijski sistem
Most med strojno opremo in uporabniško programsko opremo:
- upravljanje z viri (procesorji, pomnilnik, V/I naprave, datotečni sistem, …)
- nadzor delovanja sistema, spremljanje porabe sredstev
Programski in izvajalni model
Sočasnost: več niti v procesu se izvaja v istem časovnem okvirju - časovne rezine
- Programski model: logična organizacija programa (programski vzorec)
Vzporednost: več niti se hkrati izvaja na različnih procesorskih jedrih
- Izvajalni model: način izvajanja v ciljnem sistemu (odvisen od sistema)
Sočasnost vzporednost
Proces
Osnovna enota, ki ji procesor dodeli vire za izvajanje funkcije main()
Dodeljevanje pomnilnika:

Nit
Osnovna izvajalna enota, zmeraj obstaja vsaj ena - glavna nit
Niti se izvajajo v poljubnem vrstnem redu (odvisno od razvrščevalnika - OS)
Na niti se procesi izvajajo sinhrono, z več niti ustvarimo več asinhrono delujočih sinhronih tokov
Vrste niti: programske / strojne
Dodeljevanje pomnilnika:

Niti se izvajajo v istem naslovnem prostoru enostavna komunikacija med njimi preko statičnih spremenljivk
Življenjski cikel niti

Pripravljena: čaka v bazenu niti, da ji razvrščevalnik dodeli procesor
Blokirana: OS jo vrne v stanje pripravljenosti, na jedru se začne izvajati druga nit
OS razvrščevalnik niti
Razvršča N niti na (N) jeder (običajno želimo N=št. jeder ni potrebnega razvrščanja)
Procesor ima več niti kot jeder, ali pa nit čaka na vire preklapljanje med nitmi je cenejše od preklapljanja med procesi (ni treba shraniti konteksta)
Naloge
Model abstrakcije - ne delamo neposredno z nitmi
- Program ustvari niti, ki čakajo v bazenu niti
- Program ustvarja naloge, ki čakajo v bazenu nalog
- Ko so niti na voljo, jim razvrščevalnik določi naloge
Naloge se izvajajo v poljubnem vrstnem redu (odvisno od razvrščevalnika - OS)
Življenjski cikel naloge je podoben niti
Programski razvrščevalnik nalog
Razvršča M nalog na N niti (M > N)
Jedro ima več nalog kot niti, ali pa naloga čaka na vire preklapljanje med nalogami je cenejše od preklapljanja med nitmi