You are on page 1of 23

AROS pitanja iz knjige za prvi kolokvijum

1. Organizacija i arhitektura raunara


1.1.

Navesti osnovnu podelu ili klasifikaciju softvera.


Osnovna podela ili klasifikacija softvera je na aplikativni i sistemski.
1.1.
Navesti primere aplikativnog i sistemskog sotfera.
Aplikativni softver se projektuje za reavanje konkretnih problema, kao na
primer: plaanje preko interneta, rezervacija avionskih karata, upravljanje
bankomatima, uenje na daljinu ili rad na berzi.
Sistemski softver predstavlja programsko okruenje koje omoguava
programerima da bre i jednostavnije kreiraju aplikacije prema zahtevima
korisnika. Na primer, operativni sistemi, programski prevodioci, linkeri i
interpreteri pripadaju sistemskom softveru.
1.2.
Objasniti ta je arhitektura raunara.
Arhitektura raunara pokazuje raunarski sistem iz ugla programera. Bitan
koncept u arhitekturi raunara je korienje razliitih nivoa apstrakcije.
Svaki nivo apstrakcije sadri interfejs (spoljanji pogled na ono to sistem
radi) i implementacije (unutranji pogled na nain kako sistem radi). Dobro
poznavanje arhitekture raunara je vano za razumevanje programskih
prevodioca, operativnih sistema i pisanje programa. Na primer, arhitektura
raunara pokazuje veliine tipova podataka i tipove podranih operacija,
dok ne pokazuje vrstu tehnologije ipa koji se koristi za implementaciju
memorije.
1.3.
Objasniti ta je organizacija raunara.
Organizacija raunara pokazuje strukturne veze unutar raunara koje nisu
vidljive od strane programera, kao to su na primer interfejsi ka
periferijskim ureajima, uestanost takta i tehnologija koja se koristi za
memoriju, tok informacija izmeu komponenata, mogunosti i
performanse funkcijskih jedinica. Dobro poznavanje organizacije raunara
je vano za logiko projektovanje raunara i optimizaciju performansi
aplikacija.
1.4.
Koje su osnovne komponente von Neumann-ove maine?
Memorija
Upravljaka jedinica
Aritmetiko logika jedinica
Ulazne jedinice
Izlazne jedinice
Slika 1.1
1.5.
Da li von Neumann-ova arhitektura podrava paralelno
izvravanje instrukcija?
Ne. Bitna karakteristika von Neumann-ove arhitekture je sekvencijalno
izvravanje instrukcija, tj. odsustvo bilo kakvog paralelizma ili preklapanja
instrukcije, tako da, na primer, nije bilo mogue istovremeno izvravanje
neke aritmetike operacije i uitavanje podataka. Druga vana
karakteristika je postojanje samo jedne putanje izmeu operativne
memorije i upravljake jedinice centralnog procesora. To direktno utie na
performanse sistema i naziva se von Neumann-ovo usko grlo.
1.6.
Koja je osnovna razlika Harvard arhitekture u odnosu na
standardnu von Neumann-ovu arhitekturu raunara?

Beborija

AROS pitanja iz knjige za prvi kolokvijum

Harvard arhitektura predstavlja varijaciju originalne von Neumann-ove


arhitekture. Harvard arhitektura je imala posebnu memoriju za instrukcije i
posebnu memoriju za podatke. Ova arhitektura takoe sadri posebne
putanje za instrukcije i podatke nezavisno od toga da li se koriste posebne
memorije.
Slika 1.3

Beborija

AROS pitanja iz knjige za prvi kolokvijum

1.7.

Prikazati savremene raunare u obliku vienivoske maine.


Slika 1.5
Objasniti princip ekvivalencije hardvera i softvera
Sve to se moe uraditi pomou softvera moe se takoe uraditi i
pomocu hardvera i sve to se moe uraditi pomou hardvera moe se
takoe uraditi i pomou softvera. Ovaj princip ne govori o brzini
implementacije. Hardverske implementacije su skoro uvek bre od
softverskih. Izbor izmeu hardverskog i softverskog reenja zavisi od
faktora kao sto su cena, brzina, pouzdanost i frekvencija oekivanih
promena.

1.8.

1.9.

Objasniti Flynn-ovu klasifikaciju sistema.


Michael Flynn je, polazei od toga da raunari koriste podatke i
instrukcije, klasifikovao sve raunarske sisteme u etiri grupe. Osnova
klasifikacije su tok instrukcija i tok podataka. Definisao je tok instrukcija
kao niz instukcija koje izvr ava data ma ina, a tok podataka kao niz
podataka koje koristi tok instukcija(ukljuujui ulazne podatke i parcijalne
rezultate). Flynn-ova klasifikacija raunara:

o SISD (Single Instruction stream, Single Data stream)


o SIMD (Single Instruction stream, Multiple Data streams)
o MIMD (Multiple Instruction streams, Multiple Data streams)
o MISD (Multiple Instruction streams, Single Data streams)
1.10. Prikazati blok emu SISD arhitekture raunara.
Slika 1.6
1.11. Prikazati blok emu SIMD arhitekture raunara.
Slika 1.7
1.12. Prikazati blok emu MIMD arhitekture raunara.
Slika 1.8
1.13. Prikazati blok emu MISD arhitekture raunara.
Slika 1.9
1.14. Koje se implementacione tehnologije mogu izdvojiti kao
najznaajnije u dosadanjem razvoju raunarskih sistema?
Tehnologija integracionih kola,
Tehnologija magnetnih diskova,
Tehnologija DRAM memorije (Dynamic Random Access Memory)
Tehnologija mrea
1.15. Objasniti znaenje jedinice mere MIPS (Millions of Instructions Per
Second).
Jedinica mere MIPS (Milion of Instruction Per Secound) oznaava izvr
enje milion mainskih instrukcija u sekundi.
1.16. Objasniti znaenje jedinica mere megaflops MFLOPS (Millions of
Floating point Operations Per Second), gigaflops GFLOPS i teraflops
TFLOPS.
MFLOPS oznaava milion operacija u pokretnom zarezu izv enih u jednoj
sekundi.

Beborija

AROS pitanja iz knjige za prvi kolokvijum

GFLOPS oznaava milijardu operacija u pokretnom zarezu izv enih u


jednoj sekundi.
TFLOPS oznaava bilion operacija u pokretnom zarezu izvr enih u jednoj
sekudi.
1.17. Navesti kvantitativne podatke za vreme izvrenja jednog ciklusa
instrukcije za najsporije i najbre raunare danas.
Za najsporije raunare milisekunda (0.001s), a za najbre pikosekunda
(10-12 s).
1.18. Objasniti znaenje jedinice mere GHz.
GHz oznaava brzinu takta milijardu ciklusa u sekundi.
1.19. Objasniti ta za procesore znai kompatibilnost nanie.
Kompatibilan nanie(backward compatible ili downward
compatible), oznaava da je procesor u mogunosti da izvrava
prevedeni kod za bilo koji prethodni model procesora. Kompatabilnost
nanie ima znaenje da vi i model u istoj seriji procesora moe da izvr
ava sve sistemske i korisnike programe koji se mogu izvr iti na
predhodnim modelima.
1.20. Objasniti Murov zakon (Moor's Law).
Performanse raunarskih sistema se pobolj avaju geometriski, a ne
linearno.

2. Struktura raunara opte namene


2.1.
Prikazati i objasniti osnovne komponente raunara opte
namene.
Raunar op te namene pored procesora i memorije ima vi e razliitih U/I
ureaja.
(Slika 2.2)
2.2.
Na koji nain se procesor povezuje sa ostalim komponentama
raunara?
Procesor je sa ostalim komponentama povezan pomou sistemske
magistrale. Sistemska magistrala je skup paralelnih ica za prenos
podataka, adresa i upravljakih signala.
2.3.
emu slui sistemska magistrala?
Sistemska magistrala se sastoji od: magistrale podataka, magistrale
upravljakih signala i adresne magistrale.
Preko magistrale podataka se prenose podaci.
Preko adresne magistrale se vr i adresiranje gde se prenose podaci ili
odakle.
Upravljaka magistrala se koristi za upravljanje funkcijama magistrale i ona
omoguava korisnicima magistrale da signaliziraju kada su podaci
raspoloivi.
2.4.
emu slui memorijska magistrala?
Memorijska magistrala se koristi za komunikaciju izmeu procesora i
primarne memorije.
2.5.
emu slui U/I magistrala?
U/I magistrala se koristi za komunikaciju izmeu procesora i U/I ureaja.

Beborija

AROS pitanja iz knjige za prvi kolokvijum

2.6.

Koje su osnovne komponente procesora?

Procesor se sastoji od: upravljake jedinice, aritmetiko-logike jedinice


(ALU-Arithmetic Logical Unit) i registra.
2.7.
emu slui upravljaka jedinica?
Upravljaka jedinica upravlja izvr enjem pojedinanih instrukcija i
upravlja izvr enjem programa u celini. Ona treba da obezbedi da se po
izvr enju jedne instrukcije izvr i sledea instrukcija programa.
2.8.
emu slui aritmetiko-logika jedinica?
Aritmetiko-logika jedinica na osnovu signala upravljake jedinice
izvr ava potrebne operacije nad operandima instrukcije i generi
e rezultat.
2.9.
Ako je za itanje instrukcije iz memorije potrebno 5ns, za
dekodiranje 2ns, za itanje registarske datoteke 3ns, za izvravanje
instrukcije 3ns i za upisivanje rezultata u registarsku datoteku 2ns,
kolika je maksimalna brzina takta procesora?
1/(5+2+3+3+2)= 1/15ns (zbir brzina na minus prvi)
1/15ns = 66,6 MHz

Beborija

AROS pitanja iz knjige za prvi kolokvijum

2.10. Objasniti namenu registra procesora koji se zove broja naredbi


(BN)?
Njegov zadatak je da u svakom trenutku izvr enja programa sadri
adresu sledece instrukcije programa.
2.11. Objasniti namenu registra procesora koji se zove registar naredbi
(RN)?
Registar naredbi sadri kopiju mainske instrukcije koja je uitana iz
glavne memorije i koja se trenutno izvr ava.
2.12. Skicirati i objasniti itanje instrukcije iz memorije korienjem
registara BN, RN, MAR, PRM i upravljake jedinice?
Broja naredbi sadri adresu sledee instrukcije koju treba uitati iz
memorije. Ta adresa se upisuje u MAR(memorijski adresni registar), a
zatim na adresnu magistralu. Nakon toga, upravljaka jedinica zahteva
itanje iz memorije. Proitana vrednost se upisuje na magistralu podataka,
kopira u PRM (prihvatni registar memorije) i prenosi u registar naredbi RN.
Broja naredbi se poveava za jedan (tanije za duinu instrukcije) i na taj
nain priprema za itanje sledee instrukcije.
2.13. ime je odreena arhitektura procesora?
Arhitektura procesora je odreena sa:
Skupom registara
Skupom tipova podataka koje procesor podrava
Formatom instrukcija
Nainima adresiranja
Mehanizmom prekida
2.14. Koje su osnovne operacije nad memorijskim lokacijama primarne
memorije?
Nad memorijskim lokacijama se obavljaju dve operacije: operacija itanja i
operacije pisanja (upisivanja u lokaciju).
2.15. Kako se moe izbrisati sadraj jedne memorijske rei bez korienja
instrukcije CLEAR?
primenom AND operacije i drugog operanda 0 (dobija se 0):
o npr. 0101 and 0000 = 0000
primenom XOR operacije sa istom rei (dobija se 0):
o npr. 0101 xor 0101 = 0000
primenom mainske instrukcije ADD A1 0 0 (drugi i trei operand su 0,
rezultat se upisuje na adresu A1):
o npr. a1 = 0 + 0; (moe i da se oduzme sam od sebe, SUB A1, A1, A1)
2.16. zadatak
2.17. Koje su najvanije karakteristike memorije raunara?

Najvanije karakteristike memorije raunara su brzina, veliina (kapacitet),


cena i postojanost. Za brzinu i veliinu memorije poeljno je da budu to je
mogue vee, a za cenu to je mogue nia. Bolje je da memorija bude
postojana, ali kod brzih memorija to nije sluaj. Sve etiri navedene osobine
su odreene tehnologijom implementacije memorije i vremenom postaju
sve bolje.

Beborija

AROS pitanja iz knjige za prvi kolokvijum

Beborija

AROS pitanja iz knjige za prvi kolokvijum

2.18. ta je asocijativna memorija i gde se koristi?


Asocijativna memorija je specijalna, mala ke memorija sa brzim
pretraivanjem koja se koristi za memorisanje tabela stranica (page
tables). Kori enje asocijativne memorije moe da ubrza pristup, tj. da
smanji efektivno vreme pristupa.
2.19. Objasniti uzmi analiziraj izvri ciklus (fetch decode
execute cycle), tj. kako se izvravaju instrukcije programa.
Za svaki procesor je karakteristian uzmi analiziraj izvri ciklus koji se
stalno ponavlja od trenutka ukljuenja napajanja do trenutka iskljuenja
napajanja. Najese se ovaj ciklus realizuje u sledeih est koraka ili faza:
1. procesor iz primarne memorije uzima instrukciju koju treba da izvr i na
osnovu adrese u BN
2. dekodira se operacioni kod instrukcije
3. procesor uzima iz memorije operand ili operande ako je to potrebno
4. izvrava se instrukcija
5. rezultat se upisuje ili u registar ili u operativnu memoriju
6. ponovo se prelazi na korak 1
2.20. Kako se podaci upisuju na magnetni disk?
Podaci na magnetnom disku se zapisuju u obliku koncentrinih krugova koji
se zovu staze (tracks).
2.21. Poveanje kapaciteta magnetnih diskova se moe ostvariti tako
to se na osnovu poveanja rastojanja od centra diska povea i broj
sektora po stazi. Objasniti kako se skladite podaci kod magnetnih diskova
sa zonama.

Ovakav nain skladi tenja podataka predstavlja kompomis izmeu


kapaciteta memorije i sloenosti hardvera diska.
2.22. Prikazati strukturu magnetnog diska.
Slika 2.10
2.23. Prikazati organizaciju diska na jednoj povrini magnetne ploe.
Slika 2.11
2.24. Navesti i objasniti komponente vremena pristupa magnetnom disku.

Vreme pristupa disku ima tri komponente: vreme traenja (seek time),
vreme usred rotacije diska (rotatiomal latency) i vreme prenosa podataka
sa diska u operativnu memoriju.

Vreme traenja je vreme potrebno za pokretanje glave diska od adresiranog


cilindra.

Vreme usred rotacije diska je dodatno vreme potrebno da disk rotira do


adresnog sektora, tj da glava diska bude iznad adresiranog sektora.

Vreme prenosa podataka sa diska u operativnu memoriju direktno zavisi


od koliine podataka koja se prenosi

2.25. Koja je namena RAID tehnologije?


Kori enjem RAID tehnologije podaci se, umesto samo na jedan, upisuje
na vi e magnetnih diskova. Na taj nain moe se poveati brzina,
pouzdanost i kapacitet memorisanja podataka.
Beborija

AROS pitanja iz knjige za prvi kolokvijum

Beborija

AROS pitanja iz knjige za prvi kolokvijum

2.26. Opisati kako radi RAID 0.


RAID 0 je najjednostavniji nivo RAID tehnologije. Podaci se distribuiraju na
sve diskove sekvencijalno (u delovima). Primenom RAID 0 moe se smanjiti
vreme pristupa podacima u poreenju sa sistemima sa jednim diskom i
ostvaruje se najnia mogua cena primene RAID tehnologije. Meutim, kod
RAID 0 nivoa ne koriste se tehnike redundantnosti. Samim tim, nulti nivo
RAID tehnologije ne obezbeuje zatitu od otkaza pojedinih diskova.
Otkazom bilo kog diska u nizu diskova gube se svi podaci. Zato se ovaj nivo
ne preporuuje za aplikacije kod kojih su podaci kritini.
2.27. Opisati kako radi RAID 1.
Kod RAID 1 nivoa za svaki disk postoji identina kopija diska (mirroring).
Podaci se mogu itati ili sa originalnog diska ili sa kopije. Upisivanje
podataka se mora uradii na oba diska. Otkazom bilo kog diska podaci ostaju
sauvani na kopiji i oporavak sistema je jednostavan. U odnosu na sistem
bez primene RAID tehnologije za implementaciju RAID 1 nivoa, potreban je
dvostruki broj magnetnih diskova. Relativna jednostavnost i niska cena
implementacije su poveale popularnost RAID 1 nivoa. Ovo reenje se
preporuuje za aplikacije koje koriste kritine podatke.
2.28. Opisati kako radi RAID 2.
Kod RAID 2 nivoa svi diskovi se koriste za svaki pristup. Postoje diskovi za
podatke i diskovi za korekciju greaka. Kodovi za korekciju greaka izraunati
na osnovu podataka na svim diskovima za podatke se upisuju na dodatne
diskove. Svi diskovi su meusobno sinhronizovani za bilo koju operaciju
upisa ili itanje podataka. Mogu se koristi razliite tehnike koje omoguavaju
paralelni pristup podacima. Greke na nivou bita se detektuju i koriguju
trenutno. Broj dodatnih diskova je proporcionalan logaritmu broja diskova na
kojima su podaci. Meutim, sloen i skup RAID kontroler, kao i minimalni broj
diskova koji su potrebni predstavljaju glavni razlog zato se RAID 2 nivo
danas ne koristi.
2.29. Opisati kako radi RAID 3.
RAID 3 nivo koristi sekvencijalnu distribuciju podataka na nivou bajta lime se
staruje poboljanje performansi. Takoe postoji jedan redundantan disk za
kontrolu parnosti, ime se poveava otpornost sistema na mogue otkaze.
Ne koriste se kodovi za korekciju greke, ve se izraunavaju informacije o
parnosti. Potrebna su najmanje 3 magnetna diska: 2 za podatke i 1 za
kontrolu parnosti. Iako su performanse dobre dodatni disk za parnost malo
usporava upis podataka. Naime, kod svakog upisa podataka mora se upisati
i informacija o parnosti. Zato softversko reenje nije praktino i neophodan je
hardverski kontroler. Kada neki disk otkae, tada se podaci koji nedostaju
mogu rekonstruisati. Za sluaj veeg broja aplikacija koje se izvravaju
istovremeno, disk parnosti moe postati usko grlo sistema.
2.30. Objasniti kako radi RAID 4.
RAID 4 je veoma slian RAID 3 nivou. Jedina razlika je da se podaci
sekvencijalno distribuiraju na nivou bloka, a ne na nivou bajta. To i jeste
prednost, jer veliina bloka se moe podeavati prema potrebama aplikacije.
Kod RAID 4 nivoa biti parnosti se takoe skladipte na redundantnom disku.
Jedan logiki upis podataka zahteva dva fizika upisa. Parnost se rauna za
svaki bit odgovarajuih delova podataka na diskovima i zato je i ovde
neophodan hardverski RAID kontroler. Disk parnosti moe postati usko grlo
sistema pri istovremenom radu vie aplikacija.
Beborija

AROS pitanja iz knjige za prvi kolokvijum

Beborija

AROS pitanja iz knjige za prvi kolokvijum

2.31. Objasniti kako radi RAID 5.


RAID 5 nivo sekvencijalno distribuira podatke na nivou bloka i informacoja o
parnosti se upisuje na sve diskove na kojima su podaci (round-robin ema).
Drugim reima, nije potreban poseban namenski disk za parnost. Manji
nedostatak je da je oporavak sistema neto sloeniji zbog distribuirane
prirode informacija o parnosti. Veliina bloka podataka se takoe moe
menjati prema potrebama aplikacije kao kod RAID 4 nivoa. RAID 5 nivo je
jedan od najpopularnijih nivoa RAID tehnologije koji se danas koriste, jer se
za mnoge aplikacije ostvaruje najbolja kombinacija performansi,
redundantnosti i efikasnosti memorije.
2.32. Objasniti kako radi RAID 6.
Kod RAID 6 nivoa poveana je sloenost obrade za kontrolu parnosti, jer se
dve eme za kontrolu parnosti koriste istovremeno. Za razliku od prethodnih
nivoa RAID tehnologije, RAID 6 nivo omoguava rekonstrukciju podataka i
kada dva diska istovremeno otkau.
2.33. Navesti i objasniti tri osnovna naina za komunikaciju centralnog
procesora sa U/I ureajima.

Procesor moze da periodino proverava status ureaja (pollin). Mogua


stanja ureaja su na primer: KOMANDA_SPREMNA, ZAUZETA I GREKA. Na
taj nain ostvaruje se ciklus ekanja (busy-wait cycle) U/I aktivnosti na
datom ureaju.

Drugi nain komunikacije sa U/I ureajima je kori enje sistema prekida.


Signal prekida prihvata funkcija za upravljanje prekidima. Prekidi se mogu
maskirati kada je potrebno da se prekid odloi ili ignori e.

Trei nain je da se koristi direktan pristup memoriji(DMA Direct Memory


Access). Kod ovog naina nije potreban programiran U/I, ali je neophodan
DMA kontroler. U ovom sluaju podaci se direktno prenose izmeu U/I
ureaja i memorije, bez potrebe da procesor uestvuje u procesu. Na kraju
prenosa podataka DMA kontroler prekidom obave tava procesor da je
prenos podataka zavr en.

2.34. Koja je osnovna namena prekida u raunarskim sistemima?


Prekidi se koriste za komunikaciju periferijskih ureaja sa centralnim
procesorom. Omoguavaju korienje servisa operativnog sistema, koriste
se za merenje vremena i vremensku kontrolu poslova koju izvr avaju
mikroprocesori.
2.35. Koje vrste prekida postoje kod raunarskih sistema?

Postoje tri vrste prekida:


o Softverski prekidi
o Hardverski prekidi
o Izuzeci
2.36. Koja je namena sistemskih poziva?
Sistemski pozivi omoguavaju korisnikim procesima da zahtevaju servise
operativnog sistema.
2.37. Kako se vre dozvola i zabrana rada maskirajuih prekida?

Beborija

AROS pitanja iz knjige za prvi kolokvijum

Za maskirajue prekide dozvola rada se vr i softverski postavljanjem


odgovarajueg bita u statusnoj rei.
2.38. Kako se reava upravljanje prekidima nakon pojavljivanja vie
prekida u isto vreme?

Nastanak takve situacije se moe re iti ili zabranom vi e prekida u


isto vreme ili uvoenjem prioriteta prekida.
2.39. Objasniti ta je vreme reakcije kod sistema prekida?
Vreme reakcije predstavlja vreme koje protekne od trenutka pojave signala
prekida do trenutka prelaska na prekidni program.
2.40. Navesti i objasniti mogue naine za uvoenje paralelizma na
nivou instrukcije.
Zadatak paralelizma na nivou instrukcije je da na datom raunarskom
sistemu izvr i sto vie instrukcija.
o Jedan pristup je uzimanje instrukcija unapred.
o Drugi pristup je korienje tehnike protone obrade (pipeline
processing).
o Trei pristup je kori enje superskalarnih arhitektura.
2.41. Objasniti princip rada protone obrate (pipelining - a).
Koncept industrijskog toga ili tehnika protone obrade (pipelining) deli
izvravanje instrukcije u vie delova (od 4 do 18 nezavisnih koraka), pri
emu za izvravanje svakog tog dela postoji namenski deo hardvera i to
je najbitnije svi ti delovi se mogu izvravati paralelno (istovremeno).
2.42. Prikazati primer superskalarne arhitekture raunara sa 2
pipelining - a.
Slika 2.16
2.43. Objasniti superskalarnu arhitekturu raunara.
Proirenjem ideje pipelining a, nastale su superskalarne arhitekture
raunara. Superskalarne arhitekture nisu savreno reenje, jer drugi ili
trei pipelining mogu da se izvravaju samo ogranien skup instrukcija
koji je nezavisan od instrukcija koje izvrava prvi pipelining.
2.44. Prikazati primer superskalarnog procesora sa vie funkcionalnih
jedinica.
Slika 2.17
2.45. Navesti i objasniti probleme koji mogu da nastanu kod protone
obrade (pipelining - a) instrukcija.
Problemi koji mogu da nastanu kod pipelining a su: strukturni hazardi,
kontrolni hazardi i hazardi nad podacima.
Strukturni hazardi su prouzrokovani nedostatkom hardvera, tj. potrebom
nekoliko pristupa istom hardveru u isto vreme. Ovo se moe otkloniti
dodavanjem redundantnog hardvera ili promenom redosleda instrukcija.
Kontrolni hazardi su prouzrokovani instrukcijama grananja i uslovnog
grananja. To se moe prevazii tanijim predvianjem grananja ili
strategijama pomerenog grananja.
Hazardi nad podacima su prouzrokovani zavisnou podataka od rezultata
izvravanja prethodne instrukcije. Mogu se izbei restruktuiranjem koda

Beborija

AROS pitanja iz knjige za prvi kolokvijum

tako da se eliminiu zavisnosti ili nemogunosti izvravanja takvih


instrukcija sve dok se ne zavri prethodna instrukcija.
2.46. Prikazati blok emu GMSV (Global Memory, Shared Variable)
arhitekture sistema.
Slika 2.19

Beborija

AROS pitanja iz knjige za prvi kolokvijum

2.47. Kod vieprocesorskih sistema se moe desiti da vie procesora


konkurentno pristupa globalnoj memoriji (zajednikoj deljenoj
memoriji). Navesti i ukratko objasniti modele koji se koriste za
razreavanje mogueg nastanka kolizije kod pristupa istoj
memorijskoj lokaciji.
Moe se desiti da vi e procesora konkurentno pristupa globalnoj
memoriji. Tada se za re avanje mogueg nastanka kolizije kod pristupa
istoj memoriskoj lokaciji koriste sledea tri modela:
EREW(Exclusive Read Exclusive Write) - eksluzivno itanje, ekskluzivno
pisanje ne dozvoljava nastajanje konflikta niti za itanje niti za pisanje. Ako
prilikom izvr avanja programa do konflikta ipak dodje, stanje programa je
tada nedefinisno.
CREW (Concurrent Read Exclusive Write) - konkurentno itanje,
ekskluzivno pisanje dozvoljava konkurentno itanje za vi e procesora, tj.
vi e procesora moe istovremeno da ita podatke sa iste memorijske
lokacije. Meutim, ako doe do konkurentnog pisanja, stanje programa je
nedefinisano.
CRCW (Concurrent Read Concurrent Write) - konkurentno itanje,
konkurentno pisanje dozvoljava istovremeni pristup vi e procesora i za
operaciju pisanja. U sluaju da vi e procesora poku ava da istovremeno
upi e neku vrednost u istu memorijsku lokaciju potrebno je definisati koji e
od tih procesora izvr iti upis.
2.48. U sluaju da vie procesora pokuava da istovremeno upie neku
vrednost u istu memorijsku lokaciju, potrebno je definisati koji e od tih
procesora stvarno izvriti upis. Navesti i objasniti reenja koja se
primenjuju u toj situaciji.
Mogua su sledea tri sluaja:
o svi procesori koji poku avaju da izvr e operaciju pisanja moraju da
upi u istu vrednost, tako da e rezultat upisa biti isti bez obzira koji je
procesor to uradio (COMMON CRCW).
o bilo koji procesor moe da izvr i operaciju pisanja i nema ogranienja
za vrednost koje se upisuje (ARBITARY CRCW). Ovde je mogue da
svaki procesor promeni vrednost koju je neki drugi procesor pre toga
upisao.
o svaki procesor ima unapred definisan prioritet i u datom trenutku
operaciju pisanja izvr ava procesor sa najvi im prioritetom
(PRIORITY CRCW).
2.49. Prikazati blok emu DMSV (Distributed Memory, Shared Variable)
arhitekture sistema.
Slika 2.20
2.50. Prikazati blok emu DMMP (Distributed Memory, Shared Variable)
arhitekture sistema.
Slika 2.21
3. Konvencionalni mainski nivo
3.1.

ime je definisan format instrukcije?


Beborija

AROS pitanja iz knjige za prvi kolokvijum

Format instrukcije je definisan ukupnom duinom instrukcije


izraenom u bitovima, brojem, duinom i znaenjem svakog njenog
polja.
3.2.
Koji se kriterijum koristi za duinu instrukcije prilikom
projektovanja formata instrukcija?
duina instrukcije potrebno je da instrukcija bude to kraa jer tada
zauzima manje memorije i prenos instrukcije iz memorije u procesor se
izvrava bre.

Beborija

AROS pitanja iz knjige za prvi kolokvijum

3.3.
Koji se kriterijum koristi za duinu koda operacije prilikom
projektovanja formata instrukcija?
duina koda operacije za skup od 2n instrukcija duine polja za kod
operacije u okviru instrukcije ne moe biti manja od n bitova.
3.4.
Koji se kriterijum koristi za duinu adresnog dela instrukcije
prilikom projektovanja formata instrukcija?
duina adresnog dela instrukcije potrebno je da adresa bude to dua, to
je u suprotnosti sa prvim zahtevom.
3.5.
zadatak
3.6.
Koji formati instrukcija postoje?
troadresne instrukcije
dvoadresne instrukcije
jednoadresne instrukcije
nulaadresne instrukcije
3.7.
Navesti sve mogunosti za broj razliitih instrukcija i
maksimalni broj razliitih memorijskih lokacija koje se mogu adresirati
ako imate na raspolaganju dvoadresni tip instrukcije duine tri bajta
(pri projektovanju formata instrukcije ne postoje dodatna ogranienja).
3B = 3 * 8 = 24b (pretvaranje bajtova u bitove);
24 6 = 18 (oduzima se duina operacionog koda);
Znai da treba rasporediti 218;
217 memorijskih lokacija
21 instrukcija
16
2 memorijskih lokacija
22 instrukcija
15
2 memorijskih lokacija
23 instrukcija
.
.
.
21 memorijskih lokacija
217 instrukcija
3.8.
Navesti dva osnovna nedostatka formata instrukcija sa tri
memorijske adrese (troadresnih instrukcija).
Dva osnovna nedostatka formata instrukcija sa tri memorijske adrese su:
velika duina instrukcije i
tri memorijska pristupa.
3.9.
Navedite osnovne tipove instrukcija na konvecionalnom
mainskom nivou.
Prva grupa operacije nad
podacima:
o instrukcije za prenos podataka
o unarne operacije
o binarne operacije
Druga grupa upravljanje redosledom izvr avanja instrukcija programa:
o poredjenje i uslovni skokovi,
o upravljanje iterativnom programskom strukturom,
o poziv podprograma,
o aktiviranje korutina
Trea grupa razmena podataka sa ulazno/izlaznim ureajima:
Beborija

AROS pitanja iz knjige za prvi kolokvijum

o ulazno/izlazne instrukcije
3.10. zadatak
3.11. zadatak
3.12. Navesti vrste adresiranja.

Postoje sledei naini adresiranja: trenutno, direktno memorijsko,


direktno registarsko, indirektno memorijsko, indirektno
registarsko, bazno registarsko i indeksno adresiranje.

3.13. Objasniti trenutno adresiranje.

Kod trenutnog adresiranja operand se nalazi u samoj instrukciji.


Trenutno adresiranje se koristi za rad sa konstantama.

3.14. Objasniti direktno memorijsko adresiranje.

Direktno memorijsko adresiranje se koristi kada se pristupa


operandu koji se nalazi u memoriji. Tada se u adresnom delu
instrukcije nalazi memorijska adresa operanda. Direktno
memorijsko adresiranje se koristi za pristup statinim podacima.

3.15. Objasniti direktno registarsko adresiranje.

Direktno registarsko adresiranje se koristi kada se pristupa


operandu koji se nalazi u datom registru. Tada se u adresnom delu
instrukcije nalazi adresa registra u kome se nalazi operand.

3.16. Objasniti indirektno memorijsko adresiranje.

Kod indirektnog memorijskog adresiranja u adresnom delu


instrukcije se nalazi adresa memorijske lokacije koja sadri
memorijsku adresu operanda.

3.17. Objasniti indirektno registarsko adresiranje.

Kod indirektnog registarskog adresiranja u adresnom delu


instrukcije se nalazi adresa registra koji sadri memorijsku adresu
operanda.

3.18. Objasniti bazno registarsko adresiranje.

Kod baznog registarskog adresiranja memorijska adresa operanda


se dobija kao zbir vrednosti koja se nalazi u registru ija je adresa
data u prvom delu adrese instrukcije i pomeraja ija je vrednost
data u drugom delu iste adresne instrukcije. Koristi se za pristup
lokalnim promenjivama.

3.19. Objasniti indeksno adresiranje.

Indeksno adresiranje se koristi za adresiranje nizova.

3.20. Kako se na konvencionalnom mainskom nivou realizuje


bezuslovni skok?

Naredba bezuslovnog skoka u sebi sadri adresu instrukcije na


koju se vri prelazak (skok). Simboliki operacioni kod ove naredbe
na konvencionalnom mainskom nivou razliku se od raunara do
raunara pa se najvie koristi oblik GOTO.

Beborija

AROS pitanja iz knjige za prvi kolokvijum

Slika 3.17

3.21. Kako se na konvencionalnom mainskom nivou realizuje


uslovni skok, tj. uslovno grananje?

Slika 3.19

Beborija

AROS pitanja iz knjige za prvi kolokvijum

3.22. Kako se vri upravljanje iterativnom programskom


strukturom na konvencionalnom mainskom nivou?

Upravljanje iterativnom programskom strukturom se kod veine


raunara na konvecionalnom mainskom nivou realizuje pomou
instrukcija poreenja i uslovnog grananja (na ovom nivou po
pravilu ne postoje eksplicitne instrukcije za upravljanje iterativnom
strukturom kao to su instrukcije while_do, repeat_until i druge na
nivou viih programskih jezika).

3.23. Kako se vri upravljanje tokom izvravanja modula na


konvecionalnom mainskom nivou?

Realizacija pozziva podprograma i povratka u pozivajui modul


moe se, u zavisnosti od naina uvanja adrese povratka,
realizovati na tri naina pomou unapred odreene lokacije (ili
fiksne rei), pomou prve rei pozvanog podprograma i pomou
steka.

3.24. Navesti naine uvanja adrese povratka kod poziva


podprograma.

uvanje u prvoj rei pozvanog modula ili na steku.

3.25. Kako se kod rekurzivnih modula spreava gubljenje adrese


povratka?

Reenje problema direktne i indirektne rekurzije moe se


realizovati uvanjem adrese povratka na steku.

3.26. Gde se koriste korutine?

Korutine se koriste u projektovanju i implementaciji programa


prevodioca (kompajlera) i u simulaciji uporednih procesa.

3.27. Koji neophodni elementi su potrebni da se nau u memoriji


kod realizacije asemblera?

tabela instrukcija koja sadri simbolike i binarne operacione


kodove svih instrukcija koje procesor moe da izvri

jedna memorijska lokacija koja treba da igra ulogu posebnog


brojaa koji se naziva broja lokacija (BL)

dovoljno slobodne memorije tako da asembler moe u toku rada


da formira jednu posebnu tabelu koja se naziva tabela simbola

Beborija

AROS pitanja iz knjige za prvi kolokvijum

3.28. Objasniti princip rada asemblera na primeru asemblera sa


dva prolaza.

Na poetku rada asemblera, BL se postavlja na nulu, oznaavajui


na taj nain da je prva slobodna lokacija u memoriji lokacija sa
adresom 0. Sledei korak je da se inicijalizuje tabela simbola, koja
je u tom trenutku jo uvek prazna. Asembler zatim uzima prvu
instrukciju simbolikog programa, LOAD B, i na osnovu tabele
instrukcija pronalazi odgovarajui binarni opkod 0001, a zatim
uzima simboliku adresu B i proverava da li se ta adresa ve nalazi
u tabeli simbola. Kako to nije sluaj, simboliku adresu B upisuje u
posmatranu tabelu, a zatim instrukciju prepisuje u memoriju u
binarno-simbolikom obliku. Kako jedna instrukcija zauzima jednu
memorijsku lokaciju, prva instrukcija programa zauzee lokaciju sa
adresom 0. Zbog toga se sadraj BL-a poveava za 1, ukazujui da
je sledea slobodna lokacija na adresi 1. Opisani postupak se
ponavlja za sve instrukcije simbolikog programa, ime se zavrava
tzv. prvi prolaz asemblera kroz program.

U drugom prolazu, asembler prolazi kroz binarno-simboliki oblik


programa i u svakoj instrukciji simboliku adresu zamenjuje
odgovarajuom memorijskom, fizikom adresom na osnovu tabele
simbola.
3.29. Koja je namena, tj. emu slue programski prevodilac (compiler),
program za povezivanje (linker) i program za punjenje (loader)?
Programski prevodilac (compiler) slui da program sa vieg programskoj
jezika prevede na asemblerski jezik, a zatim ga preuzima asembler i prevodi
na mainski jezik.
Program za povezivanje (linker) slui za povezivanje glavnog programa i
svih podprograma u jednu celinu kako bi se omoguio prelazak iz jedne
programske celine u drugu.
Program za punjenje (loader) se koristi kada korisnik sistema zahteva
izvravanje prevedenog i povezanog programa.
3.30. Kako se dobija relokatibilni binarni kod?
Relokatibilni binarni kod se dobija nakon rada programa za povezivanje koji
na svom ulazu dobbija programske module u binarno-simbolikom obliku a na
izlazu daje programsku celinu u binarnom kodu relokatibilni binarni kod.
3.31. Koja je osnovna karakteristika relokatibilnog binarnog koda?
Moe se uneti (relocirati) u bilo koji slobodan deo memorije.

4. Mikroprogramski nivo
4.1.

Objasniti ta je mikroprogram ili mikrokod.


Skup mikroinstrukcija na osnovu koga je napravljen potpun skup
instrukcija se zove mikroprogram ili mikrokod.
4.2.
Zato se mikroprogramiranje intenzivno koristili na
mnogim prvim procesorima?

Beborija

AROS pitanja iz knjige za prvi kolokvijum

Mikroprogramiranjem se pojednostavljuje projektovanje, lake se vri


modifikacija, ali je to sporije reenje.
4.3.
Objasniti ta je mikroinstrukcija (ili mikrooperacija) i
ta je mikroprogramiranje.
Mikroinstrukcija je skup mikrooperacija koje se izvr avaju u isto vreme,
mikroinstrukcije se mogu koristiti za implementaciju stvarnog skupa date
ma ine.
4.4.
Da li se dati skup instrukcija na konvencionalnom
mainskom nivou moe implementirati pomou razliitih
mikroarhitektura? Obrazloiti odgovor.
Dati skup instrukcija moe biti implementiran pomou razliitih
mikroarhitektura.
U okviru svake mikroarhitekture se moe ostvariti zadati cilj, kao na
primer: obezbediti to veu brzinu izvravanja instrukcija, obezbediti
manju potronju napajanja, odnosno to manju disipaciju snage ili
obezbediti nisku cenu procesora.
4.5.
Prikazati blok emu uzimanja i izvravanja instrukcija (a).
Prikazati blok emu ciklusa uzimanja i izvrenja instrukcija sa
prekidima (b).
Slika 4.1
Slika 4.2
4.6.
Prikazati detaljniju blok emu Intel 8086 procesora sa
prikazom registara, upravljake jedinice, aritmetiko-logike jedinice
i magistrala.
Slika 4.3
4.7.
Objasniti ta je firmver (firmware) i koja je njegova
osnovna namena.
Mikroprogram se esto zove i firmver (firmware), jer povezuje
hardver i softver, odnosno smanjuje razliku izmeu hardvera i softvera.
Osnovna namena firmvera je interpretiranje skupa instrukcija koji je
vidljiv krajnjem korisniku.
4.8.
Gde se skladiti firmver?
Firmver se skladiti u upravljakoj memoriji.
4.9.
Mikroarhitektura se moe podeliti u dve sekcije: sekciju
podataka (datapath) i upravljaku sekciju. Objasniti ta ini
sekciju podataka, a ta upravljaku sekciju.
Sekciju podataka ine registri i ALU, a upravljaku sekciju upravljaka
jedinica. Mikroprogram koji nije vidljiv krajnjem korisniku sistem vr i
mikroprogramsko upravljanje, tj. izvr ava operacije nad registrima i
drugim komponentima date ma ine.
4.10. emu slui mikroasembler i da li je on vidljiv krajnjem korisniku
sistema?
Koristi se za programiranje firmvera, i nije vidljiv krajnjem korisniku
sistema.

Beborija

AROS pitanja iz knjige za prvi kolokvijum

4.11. Da li promena u skupu instrukcija na konvencionalnom mainskom


nivou prouzrokuje promenu i na firmveru?
Bilo koja promena u skupu instrukcija na konvencionalnom mainskom
nivou prouzrokuje promenu i na firmveru.
4.12. Da li promena u softveru na aplikativnom nivou (na nivou
korisnika) prouzrokuje promenu i na firmveru?
Promena softvera na aplikativnom nivou ne utie na firmver.
4.13. Objasniti ta je HDL (Hardware Description Language) i emu
slui.

HDL (Hardware Description Language) je poseban jezik za opis


hardvera. Jedan primer HDL jezika je VHDL, koji je akronim za
VHSIC (Very High Speed Integrated Circuit) HDL. VHDL koristi se
za opis arhitekture na veoma visokom nivou i moe se prevesti u
projekat hardvera pomou procesa koji se zove silikonsko
prevoenje (silicon compilation). Za projektovanje hardverskog
re enja za upravljaku jedinicu podesniji je HDL jezik nieg nivoa
koji se zove RTL (Register Transfer Language).
4.14. Objasniti ta je stek.
Struktura podataka tipa LIFO (Last In First Out) - sastoji se od skupa
memorijskih lokacija u koje se upisuju vrednosti podataka. Kada se
vrednost podataka upisuje na stek to se radi unutar lokacije koja je na
vrhu steka i tada se sve do tada upisanje vrednosti pomeraju za jednu
lokaciju nanie. Podaci se mogu itati samo sa vrha steka. Tada se svi do
tada upisani podaci pomeraju za jednu lokaciju navi e.
4.15. Opisati hipotetiku stek mainu.
Hipotetika stek ma ina je ma ina sa apstraktnom strukturom podataka
tipa LIFO, pri emu program ne pristupa registarskoj datoteci, ve
iskljuivo steku.
4.16. Prikazati realizaciju steka u memoriji.
Slika 4.4
4.17. Kako se moe ubrzati rad sa stekom koji se realizuje korienjem
bafera u memoriji?
Radi ubrzanja pristupa steku korsti se registarska datoteka unutar
procesora gde se memorie prvih N vrednosti sa steka, gde je N veliina
registarske datoteke.
4.18. Objasniti ta je upravljaka memorija na mikroprogramskom nivou.
Upravljaka memorija na mikroprogramskom nivou je ROM memorija
(64x27 bita).

Beborija

You might also like