Procesi Flashcards

1
Q

Kaj zahtevamo od OS glede procesov?

A
  • Ustvarja procese
  • Prepleta izvajanje procesov
  • Maksimizira izrabo / minimizira odzivni čas
  • Zasega vire na zahtevo procesov
  • Zagotovi podporo za medprocesno komunikacijo. (da ne pride do bedarij)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Kaj je proces?

A

Proces je izvajanje individualnega programa (je izvajajujoči se program). Za vsak program, ki ga želimo izvršiti, se ustvari proces.
Proces je predstavljen s podatkovno strukturo v pomnilniku.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Kateri so glavni trije gradniki procesne podatkovne strukture

A
  • Koda (program)
  • Vhodni podatki
  • PCB process control block (nadzorni blok procesa)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

nariši enostaven procesni model dveh stanj in naštej njegova stanja

A

2 Stanji: Izvajanje in čakanje

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Razlogi za zaključek procesa

A
  • Uporabnik se odjavi
  • Izhod iz aplikacije
  • Napaka pri izvrševanju
  • Zaključek starševskega procesa
  • Prekoračitev časovnega okvirja
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Problem procesnega modela dveh stanj

A

Proces čaka, saj je blokiran zaradi čakanja V/I naprav. Nemoremo vedno izbrati procesa, ki je prvi v vrsti, saj mogoče ni pripravljen na izvajanje.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Nariši procesni model petih stanj in naštej njevgova stanja

A
  • Nov (new)
  • pripravljen
  • Izvajanje
  • Blokiran
  • Izhod
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Problem Procesnega modela petih stanj

A

-Ker je procesor veliko hitrejši od V/I in če bi vsi procesi čakali na njih bi nam hitro
zmanjkalo pomnilnika (še posebej če nimamo navideznega)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Nariši procesni model sedmih stanj in naštej njegova stanja

A

-Nov
-Blokiran
-Pripravljen
- Izvajanje
-Blokiran ustavljen
-Pripravljen ustavljen
-Izhod

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Kaj vsebuje Naslovni blok procesa (PCB)?

A
  1. Oznake procesa (ID)
  2. Informacije o stanju procesorja
    - vidni registri (programski dostopni registri)
    - nadzorni in statusni registri (PC, CC PSW)
    - sistemski skladovni kazalec (LIFO)
  3. informacije za nadzor procesa
    - informacije za razporejanje
    - strukturiranje podatkov / povezanost procesov (glede na njihovo stanje in prioriteto)
    -medprocesna komunkacija
    -privilegiji procesa
    -upravljanje s pomnilnikom
    -lastništvo in koriščenost virov
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Kako ustvarimo proces?

A

a. Ustvarimo identifikator
b. Postavimo proces v ustrezno vrsto
c. Vzdržuj potrebe podatkovne strukture

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Kdaj preklopimo med procesi?

A

a. Če pride do prekinitve
b. Past (recimo nima pravice do datoteke)
c. Nadzorni klic (System call?) za npr. odpiranje datoteke

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Kdaj preklopimo med procesi?

A

a. Če pride do prekinitve
b. Past (recimo nima pravice do datoteke)
c. Nadzorni klic (System call?) za npr. odpiranje datoteke

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Kaj se zgodi ob preklopu procesa

A

Context switch - je proces shranjevanja procesa ali niti, za nadaljno uporabo. To je način, da si lahko več procesov deli eno jedro.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Naštej osnovne funkcionalnosti mikrojedra

A

Preverjanje
Predajanje sporočil
Komunkacija s strojno opremo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Kako poteka Upravljanje pomnilnika na mikrojedru

A

Aplikacija pošlje zahtevo (page fault), da dobi paket nazaj zahtevane strani. Mikrojedro ve kam more naprej poslati zahtevo (to je njegovo delo) in to pošlje v pager. Pager komunicira s shemo navideznega pomnilnika.

16
Q

Kakšne so prednosti mikrojedrne organiziranosti OS

A

Prednosti mikrojedrne organiziranosti OS so:
1) API - programski vmesnik
2) Razširljivost – omogoča dodajanje novih storitev
3) Fleksibilnost – odstrani nepotrebne funkcionalnosti, doda potrebne
4) Prenosljivost
5) Prilagoditev mikrojedra ter njegovih 3 glavnih funkcionalostih
6) Zanesljivost
7) Podpora porazdeljenemu sistemu
8) Objektno usmerjen OS

17
Q

Kakšna je organizacija procesov v Windowsih?

A

Proces je zagotovo objekt

Available objekti

Access Token
- OS dodeli token (kakšne imamo pravice), ta token se predaja med vsemi procesi

Object Table
- Je zbirnik kazalcev, ki kaže na procese, ki jih pozna

18
Q

Kaj je to nit?

A

Nit je najmanjša enota izvajanja, en proces ima več niti, razporejamo v bistvu niti na procesor. Vire si pa lastijo posamezni procesi, namreč niti si same po sebi ne lastijo virov, vendar dostopajo do virov v procesu, kjer se nahajajo.

19
Q

Kaj so prednosti niti?

A

-Hitrost ustvarjanja niti (čas ustvarjanja niti je 70x hitrejši od ustvarjanja procesa)
-Hitrost zaključevanja niti
-Preklopen čas
- (context switch vsebuje veliko časovno potratnih korakov)
- (Le delček navezovanja na nit se zamenja, večina procesa pa ostane – zato je hitrejši)
- Deljenje virov medsebojna komunikacija

20
Q

Kako se imenuje izračun učinkovitosti multinitne aplikacije v večjedernem sistemu?
Napiši formulo

A

Amdahlov zakon : 1 / ((1 - f) + f / n)
where N -> Number of parallel porcesors
and f -> speedup

21
Q

Kaj je vzajemno izključevanje?

A

kadar je en proces v kritični sekciji izvajanja, ki dostopa do deljenih virov. In v kritični sekciji je lahko samo 1 proces

22
Q

Kaj je to kritično območje?

A

sekcija kode znotraj procesa, ki potrebuje dostop do deljenega naslovnega prostora, ki ne sme biti dostopana, med tem ko nek drug proces dostopa do tega dela kode.

Če je nek proces v kritičnem območju se morajo vsi drugi procesi tukaj ustaviti in počakat, da ta proces pride iz kritičnega območja

23
Q

Kako zagotovimo vzajemno izključevanje

A
  • Algoritmi v naših programih (Petersonov)
  • Algoritmi v programskih jezikih (compilerjih)
  • Omogočanje prekinitve
  • Neprekinljivi strojni ukazi (compare in swap / exchange)
24
Q

Kaj je to smrtni objem?

A

Je situacija v kateri dva ali več procesa ne moreta nadaljevati, ker čakata, da se eden izmed njiju konča.

25
Q

Katere lastnosti za zagotavljanje sočasnosti mora imeti sistem, da lahko pride do smrtnega objema

A

Prve tri so pogoji za potencialni smrtni objem. Vsi štirje skupaj so zahteve za dejanski smrtni objem.

  1. Vzajemno izključevanje
  2. Drži in čakaj
  3. Brez sprostitve
  4. Ciklično čakanje