Konkurentno programiranje Flashcards
Sta je preplitanje
- Preplitanje je mesanje izvrsavanja naredbi raznih niti, ili niti i obradjivaca prekida
- Preplitanje ima slucajan karakter jer nije poznatno kad ce se desiti prekid ili prekljucivanje
Da li preplitanje ima slucajan karakter
Da
Sta izaziva pojavu preplitanja?
- U jednoprocesorskom sistemu, u slucaju prekida procesor pokrece naredbe obradjivaca prekida sto moze da izazove prekljucivanje
Da li preplitanje moze uticati na rezultat izvrsavanja programa
Moze, stetno
Sta su deljene promenljive
Ukoliko u nekom programu razne niti pristupaju jednoj promenljivoj, ona se tad zove deljena
Sta je preduslov ocuvanja konzistentnosti deljenih promenljiva
- Obezbedjivanje medjusobne iskljucivosti. Na taj nacin se rukovanje deljenim promenljivama serijalizuje sto sprecava stetna preplitanja
Koje vrste sinhronizacije postoje
- Shinronizacija zbog medjusobne iskljucivosti
- Uslovna sinhronizacija - za izvrsavanje kriticke sekcije je potreban dodatan uslov
Sta su kriticne sekcije
- Kriticne sekcije su delovi operacija deljenih klasa cije izvrsavanje je kriticno za konzistentnost deljenih promenljiva
- Delovi kriticnih sekcija mogu da dovedu do stetnog preplitanja
Sta je sinhronizacija
Medjusobna iskljucivost kritickih sekcija koja se ostvaruje vremenskim uskladjivanjem njihovih izvrsavanja
Sta je atomski region
- Ako se u kriticnim sekcijama onemoguce prekidi tada u kriticnoj sekciji nije moguca obrada prekida pa zato ni stetno preplitanje
- Zbog neprekidnosti ove sekcije se nazivaju atomskim regionima
- Neprekidnost atomskih regiona garantuje njihovu medjusobnu iskljucivost
Sta suzava primenu atomskih regiona
- Posto su prekidi onemoguceni, odlozena je njihova obrada a samim tim i reakcija na dogadjaje
- Atomski regioni trebaju biti sto kraci, sto suzava njihovu primenu
Cemu sluzi propusnica
- Stetno preplitanje se moze spreciti preko zaustavljanja niti
- Deljena promenljiva onda mora da ima propusnicu za ulaz u njene kriticke sekcije
- Propusnica moze biti slobodna ili zauzeta
- Bez propusnice nije moguc ulaz u kriticku sekciju i zato se za nju takmice sve niti koje traze ulaz u kriticnu sekciju
- Iskljucivi regioni su kriticne sekcije koje medjusobnu iskljucivost ostvaruju preko propusnice
Sta se desava sa niti koja zatrazi a ne dobije propusnicu
Zaustavlja se aktivnost i prelazi u stanje ceka
Sta se desava kada nit vrati propusnicu
- Propusnicu dobija neka druga nit koja prelazi iz ceka u spreman.
- Ta nit ulazi u kriticnu sekciju tek kada se procesor prekljuci na nju
Kako se stiti konzistentnost propusnica
Atomskim regionima, jer su rukovanja propusnicama kratka