OSNOVNE DEFINICIJE
n RACUNAR: Uređaj koji samostalno obavlja obradu podataka izvrsavajuci digitalne logicke operacije na osnovu unetog programa.
n PODATAK: Diskretna informacija o stanju i procesima oko nas (25, R, boja, ton, ...).
Svaki podatak odgovara nekoj velicini, vrednosti.
Vrednost je apstraktna, postoji samo u mislima i moze se predstaviti na mnogo nacina
(12, dvanaest, twelve, XII, 1100, ...)
n HARDVER: Fizicke (elektronske ili mehanicke) komponente od kojih se sastoji racunar ili racunarski sistem
n SOFTVER: Program koji upravlja radom racunara
ELEKTRONSKO KOLO: Set međusobno povezanih elektronskih komponenata koje obavljaju određenu funkciju u racunaru
INTEGRISANO KOLO: Kombinacije hiljada elektronskih kola napravljenih na tankom silikonskom elementu, kpji se naziva cip (chip)
KONCEPT RACUNAR
Ulaz: podaci/informacije
Instrukcije: softver, program
Izlaz: podaci/informacije
(brojevi, slike, reci,...)
STA VAM NUDI
PREDMET
“OSNOVI RACUNARSKE TEHNIKE” ?
Familijarizaciju sa racunarima, koja omogucava:
n Da poznajete ogromne mogucnosti racunara i njihova ogranicenja.
n Da znate kako racunari rade i kako se koriste.
KAKO POZNAVANJE RACUNARA UTICE NA VASU KARIJERU ?
Procenjuje se da ce 2010 godine u razvijenim zemljama za 70% radnih mesta biti neophodno poznavanje i koriscenje racunara. Oblasti primene su:
n Upravljanje kompanijama;
n Upravljanje procesima;
n Medicina;
n Nauka;
n Obrazovanje;
n Pravo;
n Vojska i policija;
n Umetnost;
n Sport; ...
POLJA RADA U
RACUNARSKOM PROJEKTOVANJU
Projektant aplikacije
|
Projektant sistema
|
Projektant racunara
|
Projektant komponenti
|
Projektant el. Kola
KAKO POZNAVANJE RACUNARA UTICE NA VAS KAO PRIVATNOG KORISNIKA ?
n Pracenje tehnoloskog napretka;
n Povoljna kupovina racunara;
n Kvalitetno odrzavanje;
n Procena rizika;
n Pametno koriscenje Interneta;
n Izbegavanje hakera i virusa;
n Zastita privatnosti.
ISTORIJAT RAZVOJA RACUNARA (1)
Abakus
ne zna se tacno vreme nastanka jedan od najstarijih uređaja za sabiranje.
Paskalova masina za sabiranje i oduzimanje (oko 1643)
Automatski prenos između dekada. Prikaz brojeva u
komplementu
Babidzova masina za izracunavanje opste namene (1834)
Automatske operacije sa vise koraka
Automatska kontrola niza operacija (program).
Herman Holerit ( kraj 19. –pocetak, 20.veka)
Osnovao kompaniju za proizvodnju komercijalnih mehanickih racunskih masina IBM (1924.)
Vakuumske cevi
Prekretnica u razvoju uređaja za racunanje. Oko 1940. nastaju prvi racunari opste namene(1. generacija racunara)
1943. - ENIGMA racunar za desifrovanje
ENIAC (razvijan od 1943. do 1946.)
Prvi racunar opste namene 18000 vakuumskih cevi, preko 30t, potrosnja 200kW. Programi i podaci u istoj memoriji (John von Neumann)
Tranzistori (1948.)
Razvijeni u Bell-ovim laboratorijama. Nasli su siroku primenu u racunarskoj tehnici(2. generacija racunara)
Veci stepen integracije, manje dimenzije racunara, manja potrosnja, niza cena.
Razvoj velikih racunarskih sistema
Oko 1955. IBM i UNIVAC razvijaju racunare sa paralelnom obradom (multiprocesiranje i multiprogramiranje).
Integrisana kola
SSI (od 1964.) – logicko kolo u jednom cipu
MSI (od 1968.) – registar u jednom cipu, …
LSI (od 1971.) – memorije, UART, CPU, ...
VLSI (od 1980.) – mikroprocesori
Razvoj racunara 3. i 4. generacije
Razvoj mikroprocesora omogucio je razvoj mini i mikroracunara.
Od 70.- tih godina na trzistu su dzepni racunari
Od 80.- tih pocinje proizvodnja personalnih racunara (1981. IBM-PC)
Od 90. – godina primenjuju se PDA
GENERACIJE SAVREMENIH RACUNARA
Prva generacija (1940 - 1956) - elektronske cevi
Druga generacija (1956 - 1963) - tranzistori
Treca generacija (1964 - 1971) - integrisana kola
Cevrta generacija (od 1971 - do danas) - mikroprocesori
Peta generacija (danas i u bliskoj buducnosti) - vestacka inteligencija
Fon Nojmanov model
John Von Neumann, konstruiše prvi elektronski računar ENIAC 1943. god.
Neumann-ov računar ENIAC je bio napravljen od 17468 el. cevi, težine 30t i potrošnje 74 kW.
Struktura ENIAC računara je bila jasno naznačena:
ulazna jedinica,
izlazna jedinica,
memorija,
kontrolan jedinica i
aritimetičko-logička jedinica
BROJNI SISTEMI (1)
n BROJNI SISTEMI
● nacin prikazivanja bilo kog broja pomocu niza simbola, koji se nazivaju cifre brojnog sistema;
● skup pravila po kojima se realizuju osnovne operacije nad brojevima.
n PODELA BROJNIH SISTEMA
● nepozicioni, kod kojih jedna cifra ima uvek istu vrednost bez obzira na poziciju u zapisu
Primer – Rimski brojni sistem: I, V, X, L, C, D, M.;
● pozicioni (tezinski), kod kojih svaka pozicija cifre ima svoju tezinu.
BROJNI SISTEMI (2)
POZICIONA NOTACIJA
gde je . = tačka, zarez (radix point)
s = osnova (radix ili base)
r+1 = broj cifara levo od tačke
p = broj cifara desno od tačke
= cifra najveće težine (most significant digit - MSD)
= cifra najmanje težine (least significant digit - LSD)
BROJNI SISTEMI (3)
POLINOMNA NOTACIJA
Decimalni brojni sistem
Cifre = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
(127.4)10 = 1 x 102 + 2 x 101 + 7 x 100 + 4 x 10-1= (127.4)10
Binarni brojni sistem
Cifre = {0, 1}
(11010.11)2 = 1 x 24 + 1 x 23 + 0 x 22 + 1 x 21 + 0 x 20 + 1 x 2-1 + 1 x 2-2 = (26.75)10
BINARNI BROJEVI
Oznake za dužinu binarnog podatka u računarskom sistemu.
1 bit = 0 ili 1 (najmanji podatak)
1 nibble = 4 bit-a = jedna tetrada
1 byte = 8 bit-a = dve HEX cifre
1 word = 16 bit-a, 32 bit-a, ... 64 bit-a,
U zapisu binarnog broja prvi sleva je bit najveće težine, a prvi zdesna bit najmanje težine.
ZAŠTO SE U RAČUNARIMA KORISTI BINARNI BROJNI SISTEM ?
◊ Lako se pamte brojevi u bistabilnim elementima
◊ Pouzdano se prenose žicama u prisustvu šuma
◊ Direktna realizacija aritmetičkih i logičkih funkcija
BIT I BAJT
Bit (Bit) - Binarna cifra 0 ili 1
Bajt (Byte) -Osam bita
ASCII kod
Svaki bajt predstavlja slovo, broj ili specijalni karakter.
8 - bitni binarni broj je jednobajtni podatak
2 na osmi = 256 različitih podataka (brojeva)
◊ Procesor ne razlikuje označen i neoznačen
podatak;
◊ Programer odlučuje:
da li se koristi označen ili neoznačen binarni podatak
koje će aritmetičke operacije da primeni nad binarnim podacima
koje će kontrolne bite da koristi za tumačenje rezultata aritmetičke operacije.
Posle svake aritmetičke operacije u ALU procesor
postavlja ili briše kontrolne bite u registru stanja
(zastavice, flag-ovi) čija vrednost može da bude 1 ili 0
C (Carry) = 1 označava da postoji prenos bita najveće težine
N (Negative) = 1 označava je rezulatat negativan broj kada su podaci označeni brojevi.
V (oVerflow) = 1 signalizira da je rezultat van opsega (-128 do +127) ako su ulazni podaci označeni brojevi
Z (Zero) = 1 signalizira da je rezultat aritmetičke operacije 0
OSNOVNE ARITMETIČKE OPERACIJE
Osnovna aritmetička operacija u računarskim sistemima je sabiranje
Pravila binarnog sabiranja:
0 + 0 = 0 1 + 0 = 1
0 + 1 = 1 1 + 1 = 10 1 = prenos (carry)
1 + 1 + 1 = 11 1 = prenos (carry)
Oduzimanje se svodi na sabiranje:
X – Y = X + (- Y)
pri čemu je (- Y) kodovana negativna vrednost
PREDSTAVLJANJE NEGATIVNIH BROJEVA
Negativni brojevi mogu da se koduju primenom
◊ Direktnog koda
◊ Komplementa
Direktan kod
MSB sadrži bit znaka, a ostali biti daju apsolutnu vrednost
MSB = 1 broj je negativan
MSB = 0 broj je pozitivan
Komplement jedinice (prvi komplement)
Invertovanjem svake cifre polaznog binarnog broja
Komplement dvojke (drugi komplement)
Uvećavanjem vrednosti prvog komplementa za 1
FORMAT ZAPISA BINARNIH BROJEVA
Svaka binarna cifra u zapisu ima svoje određeno mesto u mašinskoj reči razred
Broj je sa nepokretnom decimalnom tačkom ako je jednom određen položaj decimalne tačke u odnosu na razrede isti za sve brojeve u mašinskom jeziku
Informaciju o položaju decimalne tačke čuva programer
Položaj decimalne tačke se ne upisuje u memoriju.
Format zapisa je dužina binarnog zapisa (broj bita) i položaj decimalne tačke
Formatom je određen broj cifara ispred i iza decimalne tačke
Broj cifara ispred decimalne tačke definiše opseg brojeva koji mogu da se predstave tim formatom
Broj cifara iza decimalne tačke definiše tačnost sa kojom se prikazuju brojevi
Dužina zapisa je fiksna i određena hardverom računara
Programer pravi kompromis između tačnosti i opsega
Tačnost i opseg se menjaju promenom formata
Neoznačeni brojevi sa nepokretnom decimalnom tačkom
Q=N-R.R
N - R = broj cifara ispred decimalne tačke
R = broj cifara iza decimalne tačke
N = ukupan broj bita (dužina zapisa)
R = N zapis je normalizovan
(0 Ł broj < 1)
R = 0 zapis je celobrojan
Promena formata se svodi na množenje ili deljenje binarne vrednosti sa 2naN.
Pomeranje (šiftovanje) decimalne tačke za N mesta ulevo je deljenje sa 2naN.
Pomeranje (šiftovanje) decimalne tačke za N mesta udesno je množenje sa 2naN.
0<Xm<1 - Mantisa broja X
S - Osnova karakteristike
Xe - Eksponent karakteristike
Xb - Eksponent sa viskom a
A - Visak eksponenta
BROJEVI SA POKRETNOM DECIMALNOM TAČKOM
STANDARDNA TAČNOST
Za čuvanje označenog numeričkog podatka koriste se 32 bita (4 bajta ):
1 bit (MSB) = znak broja
7 bita = eksponent
24 bita = mantisa
STANDARDNA TAČNOST
Znak: 0=+, 1=-
Eksponent: -64<Xe<+63
Eksponent sa viskom: 0<xb<127
Visak eksponenta: a=64
PROŠIRENA TAČNOST
Za čuvanje označenog numeričkog podatka koriste se 64 bita (8 bajtova ):
1 bit (MSB) = znak broja
11 bita = eksponent
52 bita = mantisa
OPSEG BROJEVA
Prekoračenje i podkoračenje se automatski detektuje u računaru ( V flag ) i najčešće se prekida izvršenje programa.
Kao posledica zaokruživanja pri izvršavanju aritmetičkih operacija u rezultatu može da se javi:
prekoračenje (overflow) - broj je veći od najvećeg dozvoljenog broja.
potkoračenje (underflow) - broj je manji od najmanjeg dozvoljenog broja .
Binarno kodirani decimalni brojevi (BCD)
Omogućava se tačno prikazivanje racionalnih dekadnih brojeva
Nema greške usled zaokruživanja razlomljenog dela jer se svaka cifra koduje posebno.Najčešće se koriste:
KOD “8421”
KOD “više 3”
Svaka decimalna cifra se zamenjuje ekvivalentom od četiri binarne cifre.
BCD cifre koriste samo 10 od 16 mogućih kombinacija sa 4 bita
Manja je efikasnost iskorišćenja memorije
Sabiranje ne može da se izvrši direktnom primenom pravila binarne aritmetike.
Neophodna je hardverska ili softverska korekcija. Sporija je obrada od binarne aritmetike.
Programer vodi računa o pravilnoj interpretaciji kodiranih brojeva.
ASCII - American Standard Code for Information Interchange
7 - bitni kod
Skoro svi mikroračunari koriste ovaj kod za prikaz slova i simbola
IBM-PC kompatibilni računari koriste 8-bitnu ASCII verziju
EBCDIC – Extended Binary Coded Decimal Interchange Code
8 - bitni kod
Razvijen od strane IBM-a
Koriste ga samo IBM veliki računari i neki IBM kompatibilni računari.
BULOVA ALGEBRA
- elementi –
Skup S={x,y,z,…}
Binarni operandi + (logičko sabiranje, ILI, OR)
. (logičko množenje, I, AND)
Unarni operand - (negacija, NE, NOT)
Elementi 0, 1
Binarne operacije ILI i I su komutativne na skupu S,
i međusobno su distributivne tako da za svako x, y, z,
koji pripadaju skupu S, važi:
x+y=y+x
x*y=y*x
x*(y+z)=x*y+x*z
x+(y*z)=(x+y)*(x+z)
Binarne operacije ILI i I na skupu S poseduju neutralne elemente 1 i 0, tako da za svako x koje pripada skupu S postoje elementi 1 i 0, koji takođe pripadaju skupu S, tako da je:
x+0=0+x=x
x*1=1*x=x
Na skupu S, za svako x koje pripada skupu S, postoji jedinstven inverzni element, koji takođe pripada skupu S, takav da je:
x+x`=1
x*x`=0
Teoreme
T-1: Teorema idempotentnosti
x+x=x
x*x=x
T-2: Teorema o nultim elementima
x+1=1
x*0=0
T-3: Teorema o involuciji
(X``)=x
T-4: Teorema o apsorpciji
X+x*y=x
X*(x+y)=x
T-5: Teorema o asocijativnosti
X+(y+z)=(x+y)+z
T-6: De-Morganovi zakoni
(X+y)`=x`*y`
(x*y)`=x`+y`
LOGIČKA KOLA TTL
Sve familije pripadaju seriji 54/74
Standardizovano napajanje
+Vcc = +5V
Najčešće se primenjuju: 74LS
Brža od standardnih TTL. Manja potrošnja od standardnih TTL (1mA/gejtu)
- Učestanost nekoliko MHz
- Vreme prostiranja kroz gejt oko 15ns
LOGIČKA KOLA CMOS
CMOS logički gejtovi realizovani su primenom NMOS i PMOS tranzistora:
Imaju mnogo manju potrošnju od TTL kola
Veća je margina šuma (do 40% VCC)
Broj NMOS i PMOS tranzistora u gejtu je uvek jednak
Oba tranzistora rade kao naponski kontrolisani prekidači
Klasične familije CMOS logičkih kola:
CD4000
Širok opseg napona napajanja (3 - 18V)
1000 puta manja disipacija od TTL
Visok imunitet na šumove
Mala brzina rada
74HC
Opseg napona napajanja (2 - 6V)
Brzina rada i raspored pinova kao kod
LSTTL
Vreme prostiranja kroz gejt ~ 20ns (za VCC=5V
74HCT ima logičke nivoe kao TTL
Nekorišćeni ulaz ne sme da bude nepovezan jer je velika ulazna otpornost gejta (~ 1012Ω), može da se indukuje signal koji će promeniti logičko stanje na izlazu
Neiskorišćeni ulazi se vezuju se:
Na napon koji obezbeđuje osnovnu logičku funkciju kola
VDD (za NI kolo) ili 0 (za NILI kolo)
Na neki već iskorišćen ulaz.Dolazi do smanjenja brzine rada (zbog povećanja parazitne kapacitivnosti na ulazu gejta)
Vezivanje neiskorišćenih ulaza na VCC :
Ne dovodi do povećanja struje na izlazu
Ne dovodi do smanjenja brzine rada
Može da se obavi direktno ili dodavanjem na red otpornika
Vezivanje neiskorišćenih ulaza na korišćene ulaze dovodi do povećanja sink ili source struje na ulazu
Paralelnim vezivanjem više identičnih gejtova povećava se sink ili source struja na izlazu.
Slika
osma presentacija
VIŠEULAZNA LOGIČKA KOLA
Kada je potrebna primena logičkih operacija nad više ulaza, to se rešava:
Upotrebom višeulaznih logičkih kola
Povezivanjem više dvoulaznih kola
LOGIČKE FUNKCIJE
Logičke funkcije mogu da se predstave:
ŠEMATSKI - Pomoću logičkih kola
TABELARNO - Pomoću tabela istinitosti
ANALITIČKI - Pomoću osnovnih logičkih operacija
Analitičko predstavljanje
DISJUNKTIVNA FORMA (DF) je logička suma logičkih proizvoda
Logička suma potpunih logičkih proizvoda je disjunktivna normalna forma (DNF)
KONJUKTIVNA FORMA (KF) je logički proizvod logičkih suma
Logički proizvod potpunih logičkih suma je konjuktivna normalna forma (KNF)
MINIMIZACIJA
LOGIČKIH
FUNKCIJA: definicija
Minimizacija logičkih funkcija je predstavljanje logičke funkcije sa što manje operatora i promenljivih, pri čemu funkcija zadržava isto značenje
Funkcija ima isti skup vrednosti za iste kombinacije vrednosti nezavisnih ulaznih promenljivih kao originalna funkcija
MINIMIZACIJA
LOGIČKIH
FUNKCIJA: zašto se vrši?
Minimizacijom se:
Uprošćava realizacija kombinacione mreže
Smanjuje broj logičkih kola potrebnih za realizaciju
Smanjuje potrošnja energije pri radu kombinacione mreže.
MINIMIZACIJA
LOGIČKIH
FUNKCIJA: kako se vrši?
Logička funkcija može da se minimizira:
Analitički
primenom aksioma i teorema Bulove algebre
Primenom Karnoovih mapa - grafičkim putem
KARNOOVE MAPE
Broj polja u mapi mora da bude 2naN, gde je N broj promenljivih u funkciji
Karnoova mapa je kao torus razvijen u ravan
Može da se smatra da se leva ivica naslanja na desnu i gornja ivica na donju
Minimizacija se obavlja grupisanjem polja koja sadrže logičke 1 (MDF) ili 0 (MKF)
Broj grupisanih polja mora da bude stepen broja 2
Karnoova mapa se popunjava na isti način za funkcije u DNF i KNF
Pojedina polja se grupišu zaokruživanjem:
1 za DNF
0 za KNF
Na osnovu čega se određuje analitički izraz za funkcije u MDF ili MKF
MDF ima onoliko logičkih proizvoda koliko ima zaokruženih polja
MKF ima onoliko logičkih suma koliko ima zaokruženih polja.
KOMBINACIONE MREŽE
Kombinacione mreže imaju izlaze čija logička vrednost zavisi od trenutnih logičkih vrednosti ulaznih veličina. Osnovne kombinacione mreže u digitalnim sistemima su:
Dekoderi
Multiplekseri
Demultiplekseri
Koderi
Komparatori
Aritmetička kola
DEKODERI
Dekoder n/2n
n ulaza
2n izlaza
ulaz za dozvolu rada
E = 0 Ţ yi = 0 (i = 0,…,2n-1) za bilo koju kombinaciju vrednosti ulaznih promenljivih svi izlazi imaju vrednost 0
E = 1 Ţ yi = 1 (i = 0,…, 2n-1),
za odgovarajuću kombinaciju vrednosti ulaznih promenljivih
samo jedan od izlaza ima vrednost 1
Dekoder 2/4
2 ulaza
22 = 4 izlaza
E ulaz za dozvolu rada
MULTIPLEKSER 2/1
Mreža koja omogućava da se jedan od 2 izvora podatka (w0, w1), u zavisnosti od vrednosti selekcionog signala (s) logički poveže sa zajedničkim odredištem (izlazom)
MULTIPLEKSER 4/1
4 ulazna podatka
2 selekciona ulaza
DEMULTIPLEKSERI
Demultiplekser 1/4
Podatak sa ulaza (d) se u zavisnosti od selekcionih ulaza (s0, s1) prosleđuje na jedan od 4 izabrana izlaza (y0, y1, y2, y3)
Demultiplekser 1/4 može da se realizuje pomoću dekodera 2/4 i obrnuto
PRIMENA MULTIPLEKSERA I DEMULTIPLEKSERA
Demultiplekser (na prijemnoj strani) u sprezi sa multiplekserom (na predajnoj strani) nalazi primenu u serijskom prenosu podataka.
KODERI
Binarni koder 2n/n generiše na izlazu (y0,…yn)
n-bitni broj koji odgovara indeksu ulaza čija je vrednost 1
Samo jedan od ulaza (w0,…,w2n-1) sme da ima vrednost 1
KOMPARATOR
Komparator neoznačenih celih n-bitnih brojeva je mreža koja ima dva n-bitna ulaza (X i Y) i tri izlaza (G, E, L), od kojih samo jedan ima vrednost 1, dok su ostali na 0 u zavisnosti od odnosa ulaznih vrednosti:
G = 1 ako je X>Y
E = 1 ako je X=Y
L = 1 ako je X<Y
Jednobitni komparator je mreža koja ima dva ulaza i tri izlaza
OSNOVNA
ARITMETIČKA KOLA
Polusabirač (PS)
Sabira dva bita i ne sabira prenos nastao sabiranjem bita manje težine.
Potpuni sabirač (PPS)
Sabira dva bita uključujući bit prenosa nastao sabiranjem bita manje težine.
Potpuni sabirač (PPS)
Sastoji se od dva polusabirača i jednog ILI kola.
Aritmetičko-logička jedinica (ALU)
Izvršava aritmetičke i logičke instrukcije nad
binarnim brojevima
Aritmetičke operacije
Sabiranje,oduzimanje,množenje i deljenje binarnih i BCD brojeva sa pokretnim i nepokretnim zarezom.
Logičke operacije
Osnovne logičke operacije I, ILI,NE...
Pomeranje, rotacija, komplementiranje...
U sklopu ALU nalaze se i registri u koje se smeštaju operandi i rezultat operacije:
Akumulatori
Privremeni registri (međuregistri)
Registar stanja...
LOGIČKE MREŽE
Sekvencijalne mreže
Logičko stanje na izlazu ne zavisi samo od trenutne vrednosti signala na ulazu, već i od prethodnog stanja u kome se nalazila ta mreža.
ULAZI KOMBINACIONA LOGIČKA MREŽA
IZLAZE MEMORIJSKI ELEMENTI
U savremenim računarskim sistemima se primenjuje sinhrona logika
Sva digitalna kola rade pod dejstvom jedinstvenog takta za sinhronizaciju
Takt se generiše pomoću oscilatora ili takt generatora
Osnovni takt može da se podeli deliteljima učestanosti
Učestanost se meri megahercima (MHz).
OSNOVNA MEMORIJSKA KOLA
Memorijska kola mogu da zapamte prethodno stanje
Flip-flop je logička mreža koja može da zapamti samo jedan bit podatka (jednu binarnu cifru)
- flip - flop je kolo sa dva stabilna stanja
Rad flip - flopa može da se opiše:
- tabelom stanja
- analitički logičkom funkcijom
Rad flip - flopa može da se sinhronizuje sa signalom takta (clock)
RS-FF je memorijsko kolo koje ima priključke za Set i Reset
Realizuje se pomoću logičkih kola
Sastoji se od ukrštene veze izlaza i ulaza dva NILI ili dva NI kola
JK-FF nema nedefinisana stanja
D-FF ima samo jedan ulazni priključak
Pogodniji je za prihvatanje i prenos podataka od flip-flopova sa dva ulaza
Koristi se kao osnovna komponenta za realizaciju drugih memorijskih kola.
REGISTRI
Registar je element koji služi za čuvanje proizvoljnog binarnog broja ograničene dužine
Za binarni broj od n cifara potrebno je n memorijskih ćelija
Binarni broj u registru je sadržaj registra
Primena registara
Veza između blokova sa različitim brzinama
Pri realizovanju aritmetičkih operacija
Pretvaranje serijskog u paralelni kod i obrnuto...
Upis i čitanje sadržaja registra
Paralelno
Serijski
Svi registri u CPU dele se na:
Registre opšte namene
Registre specijalne namene
PODELA REGISTARA PREMA NAMENI
Registri opšte namene ( R0 - RN )
Privremeno čuvanje podataka različite namene
Registri specijalne namene:
Akumulatori (accumulator)
Čuvaju rezultate operacija sa binarnim brojevima
Međuregistri (buffers)
Pomoćni registri za prihvatanje podataka iz akumulatora, sa magistrale, iz memorije, za čuvanje memorijske adrese...
Registar stanja (status register, SR) ili registar uslova (condition code register, CCR)
Niz nezavisnih FF-ova (zastavica, flag-ova) za prikazivanje različitih stanja nastalih tokom obrade podataka
Adresni registri ( address registers )
Čuvaju adrese memorijskih lokacija u kojima se nalaze podaci ili instrukcije (brojač instrukcija)
BROJAČI
Brojači su registri koji imaju mogućnost jednostavnog uvećanja ili umanjenja vrednosti za 1
Brojač se realizuje kao sekvencijalna mreža u čijoj se konstrukciji koriste flip-flop elementi
Vrednost brojača se uvećava ili umanjuje po modulu jednakom kapacitetu registra
Uvećanje vrednosti brojača je brojanje unapred, a smanjenje brojanje unazad
Maksimalna vrednost koju može da registruje brojač od n flip-flipova je 2n-1
Nakon dostizanja maksimalne vrednosti, brojač koji broji unapred nastavlja brojanje od svoje početne vrednosti (0)
Postoje asinhroni i sinhroni brojači
Asinhroni brojači su znatno sporiji, jer izlaz jednog flip-flop elementa utiče na promenu stanja narednog
Kod sinhronih brojača se stanja svih flip-flop elemenata koji ih sačinjavaju istovremeno menjaju
Uvećanje ili umanjenje se izvršava znatno brže nego kod asinhronih brojača
U procesoru se koriste uglavnom sinhroni brojači
Nedostatak asinhronih brojača je kašnjenje zbog promene vrednosti u flip-flopu
Kašnjenje je proporcionalno broju flip-flopova (dužini brojača)
Kod sinhronih brojača takt se dovodi na svaki flip-flop
Izlazi flip-flopova od kojih je napravljen brojač menjaju se istovremeno.
Sinhroni brojač se projektuje kao mašina stanja na osnovu tabele stanja i dijagrama stanja
Tabela se formira na osnovu karakteristične tabele flip-flopa koja može da se napiše u skraćenom obliku (eksitaciona tabela)
Za realizaciju 3-bitnog brojača potrebna su tri JK flip-flopa. 3-bitni brojač ima ukupno 8 različitih stanja (000-001- . . .-111).
MAGISTRALE
Pojam arhitekture računara označava glavne sastavne delove računara i njihovu povezanost u jednu funkcionalnu celinu.
Glavne komponente tipične arhitekture računara su:
memorija
procesor
periferije (komunikacioni sistem)
Neki računarski sistemi dozvoljavaju povezivanje svake komponente računarskog sistema sa svakom - od tačke do tačke
Prednost je velika brzina prenosa i pouzdanost.
Komplikovano je dodavanje novih komponenata u sistem, jer je potreban veliki broj veza.
Kada se koristi magistrala, broj veza ne zavisi od broja komponenata
adresna magistrala (jednosmerna)
magistrala podataka (dvosmerna)
upravljačka magistrala (dvosmerna)
Većina računarskih sistema ima multiple-bus (unutrašnja i spoljašnja magistrala)
U hardverskoj realizaciji CU upravljački signali se generišu pomoću posebnih digitalnih mreža
Ovakve upravljačke jedinice su brze
Često su vrlo složene
Nisu fleksibilne
Nisu dostupne korisniku da ih modifikuje prema svojim potrebama
Ovakvu organizaciju imaju RISC procesori (Reduced Instruction Set Computers)
U mikroprogramskoj (firmverskoj) realizaciji CU upravljački signali su memorisani u mikroprogramskoj memoriji (ROM-tipa)
Mikroprogramski CU su sporiji od hardverskih
Generisanje upravljačkih signala se obavlja pomoću mikroprograma koji se sastoji od mikroinstrukcija
Za svaku mašinsku instrukciju postoji niz mikroinstrukcija pomoću kojih se generišu upravljački signali.
U nekim sistemima korisnik može da kreira mikroprogram prema svojim potrebama
Ovakvu organizaciju imaju CISC procesori (Complete Instruction Set Computers)
Procesor sa 1 internom magistralom
Jednom magistralom se multipleksirano u vremenu prenose svi podaci
U jednom trenutku vremena može da se obavi samo jedan prenos.
Procesor sa 2 interne magistrale
Jednom magistralom se dovode podaci u ALU
Rezultati obrade iz ALU dolaze na drugu magistralu odakle mogu da se upute bilo gde
Podaci se istovremeno prenose preko obe magistrale, pa se ubrzava rad.
Procesor sa 3 interne magistrale
Postoje dve magistrale za ulazne podatke, preko kojih podaci mogu da se prenose istovremeno
Povećana je brzina rada računara
MEMORIJE
U okviru CPU nalaze se primarne memorije RAM i ROM tipa i registri
Sekundarne memorije (za čuvanje velike količine podataka) nalaze se izvan CPU.
Veliki broj registara povezanih u celinu čini memoriju
Memorije služe za smeštanje binarnih podataka i programskih instrukcija
Kapacitet memorije je broj adresabilnih lokacija na kojima mogu da se čuvaju podaci
1MB=220 =1,048,576 lokacija
1GB=230 =1,073,700,000 lokacija
Pristup memoriji (memory access) je čitanje ili upis podataka
Što je kraće vreme pristupa memorija je brža
Prema vremenu pristupa razlikuju se:
Sekvencijalne memorije ( magnetne trake, CCD, ... )
Memorije sa direktnim pristupom ( RAM, ROM )
ORGANIZACIJA MEMORIJE
Adresa lokacije podatka prikazana u obliku rednog broja vrste je fizička adresa podatka
Podacima i adresama mogu da se dodele simbolička imena
Svaki računarski sistem ima razne vrste memorijskih uređaja
Po uključenju napajanja:
Računar učitava podatke iz ROM memorije i vrši početno testiranje rada osnovnih delova sistema
Iz ROM memorije se učitava BIOS (Basic Input/Output System)
Operativni sistem se učitava sa hard diska u RAM
Sve aplikacije i fajlovi koji se koriste u aplikaciji nalaze se u RAM-u
Nakon zatvaranja aplikacije, rezultat obrade može da se sačuva na hard disku, a aplikacija se briše iz RAM-a
Virtuelna memorija je deo hard diska koji čuva kopiju sadržaja RAM memorije koji se ređe koristi i tako oslobađa RAM za nove aplikacije
Keš memorija ubrzava rad CPU sa RAM memorijom (keš L1, L2 i L3).
Operativna memorija je RAM (random access) tipa
Podaci u toku rada mogu da se upisuju u memoriju i da se čitaju iz nje sa proizvoljnih adresa
Poluprovodnička RAM memorija gubi sadržaj po isključenju napajanja
SRAM (statički RAM) su nedestruktivne.Zadržavaju svoj sadržaj i posle čitanja. Realizuju se pomoću FF-ova.
DRAM (dinamički RAM) su destruktivne.Posle čitanja se gubi podatak. Podatak posle čitanja mora da se ponovo upiše.
Realizuju se kao kapacitivnost MOS tranzistora. Sadržaj memorije mora povremeno da se osvežava.
Tipovi DRAM memorije:
SDRAM (Synchronous DRAM)
Takt memorijskih čipova i CPU-a su uzajamno sinhronisani
DDR1 SDRAM (Double Data Rate SDRAM)
Podaci se prenose duplo većom brzinom u odnosu na SDRAM, jer je pristup na uzlaznoj i silaznoj ivici takta
DDR2, DDR3 SDRAM
Rade na većim učestanostima takta od DDR1 SDRAM-a.
Memorije ROM (read only) tipa
Neizbrisive (non - volatile)
Nedestruktivne (non - destructive)
Koriste se za čuvanje stalnih programa
ROM
Sadržaj je upisan u toku izrade čipa
Isplativo za količinu preko 1000 komada
Vreme pristupa 500 - 850ns
PROM
Korisnik može da programira samo jednom pomoću uređaja za programiranje
Konfiguracija sa bipolarnim poljem dioda ili sa bipolarnim tranzistorima
Programiranje impulsima koji tope pregorljive metalizovane veze u PN-spoju (u polju dioda) ili vezu B-E (u tranzistoru)
Vreme pristupa < 100ns
EPROM
Može da se programira i briše više puta
Briše se UV zracima (RPROM se briše električno)
Izrađuju se primenom MOS tehnologije
Kapacitet reda 64, 128, 256, 512KB
Vreme pristupa reda 150 - 1200ns
EEPROM
Moguće je čitanje i upis
Operacija upisa je reda ms
Kapacitet nekoliko desetina KB
Operacije čitanja su reda ms
STEK memorija
Sastoji se od niza registara koji su složeni jedan na drugi
Podaci mogu da se upisuju ili čitaju samo po nekom definisanom redu
Može da bude realizovana kao:
Softverski stek
Hardverski stek
Hardverski realizovan stek
Za upis ili čitanje dostupan je samo registar koji se nalazi na vrhu (Last In First Out)
Podatak se fizički pomera pri upisu i čitanju
Softverski realizovan stek
Menja se adresa koja odgovara vrhu steka
Podaci u toku čitanja i upisa ne menjaju mesto.
PROCESOR
PROCESOR je funkcionalna jedinica računara koja interpretira i izvršava instrukcije (naredbe)
PROCESOR se naziva i Centralnom Procesorskom Jedinicom (Central Processing Unit – CPU)
Svaki PROCESOR ima jedinstven set instrukcija
PROCESOR izvršava sledeće aktivnosti:
pribavlja instrukciju (naredbu) iz memorije
pribavlja podatke (operande) iz memorije
izvršava operaciju nad operandima
smešta rezultat u memoriju
pribavlja sledeću instrukciju
DR: Registar Podataka (Data Register)
AR: Adresni Registar (Adress Register)
AC: Akumulator (Accumulator)
PC: Brojač Naredbi (Program Counter)
IR: Registar Naredbi (Instruction Register)
ALU: Aritmetičko Logička Jedinica (Arithmetic Logic Unit)
PCU: Jedinica za Upravljanje Programom(program Control Unit)
KOMPONENTE PROCESORA:
Operacione ili procesne jedinice i logicke operacije ili aritmeticko-logicka jedinica, kontrolne jedinice, skup registara
ALGORITMI
Muhammad ibn Musa Al'Khowarizmi (oko 825) opisao je pravila koja se moraju poštovati u aritmetici koja koristi Hindu brojeve.
Pisani proces koji se mora poštovati da bi se postigao cilj
Preveo na latinski 1202. Leonardo Fibonacci
Algoritam je procedura rešavanja problema u smislu :
Akcija koje se moraju izvršiti (iskazi - statements)
Redosleda po kome se akcije moraju izvršiti
Algoritam je nezavisan od bilo kog specifičnog računara i jezika koji bi se mogao koristiti za njegovu implementaciju
Često se neformalno naziva pseudocode.
Iskazi
Šta nam je potrebno za “iskaze” ?
Sintaksa - Forma u kojoj se iskaz može napisati
Semantika - “značenje” koje je priključeno konstrukcijama iskazanim sintaksom.
Algoritam – matematička definicija
Procedura za rešavanje problema korak-po-korak, sa konačnim brojem koraka
Precizno pravilo (ili skup pravila) koji specificira kako se rešava određeni problem
Konačan skup nedvosmislenih instrukcija koje se izvršavaju po definisanom redosledu, sa posebno definisanom matematičkom procedurom i pravilima kojima se izračunava rezultat
Konačan broj koraka, koji se može proračunati, za dobijanje rezultata
Ciklus razvoja programa
U inžinjerskoj praksi najčešće se koriste 4 koraka za razvoj računarskih programa :
Projektovanje rešenja za dati problem (projektovanje/design a solution)
Implementacija rešenja (kodiranje/code the program )
Testiranje rešenja (testiranje/test the program)
Otkanjanje otkrivenih nedostataka (otklanjanje grešaka/debug the program).
POUZDANOST I SIGURNOST
Zašto treba da brinemo?
◊ Računari se koriste u mnogim oblastima gde greška
izaziva ogromne troškove ili ugrožava ljudske živote:
bankarstvo, medicina, mobilna telefonija, vazdušni
saobraćaj, atomske centrale, naoružanje, ...
◊ Učenje na greškama mnogo košta, zato o sigurnosti
mora da se brine stalno, pre nego šteta nastane.
Rizik = cena*mogucnost hazarda
Cena može biti izražena u novcu, životima, povredama,...
Mogućnost hazarda je verovatnoća da će se određeni hazard aktivirati i
i da će se dogoditi nepoželjan rezultat
Računarski sistem karakteriše 5 fundamentalnih osobina:
Funkcionalnost
Upotrebljivost
Performanse
Cena
Opšta pouzdanost
Opšta pouzdanost (dependability) računarskog sistema je njegova mogućnost da izvrši zadatak na način kome se može
proverljivo verovati.
RASPOLOŽIVOST (availability) – spremnost sistema da korektno
izvršava zadatke (izražava se u %)
POUZDANOST (reliability) – verovatnoća da će sistem korektno izvršavati zadatke u određenom vremenskom periodu
BEZBEDNOST (safety) – odsustvo katastrofalnih posledica po korisnika i okolinu
POVERLJIVOST (confidentiality) – odsustvo neautorizovanog oticanja podataka
INTEGRITET (integrity) – odsustvo nepropisnih (nepredviđenih) stanja sistema
POGODNOST ZA ODRŽAVANJE (maintainability) – mogućnost sistema da se vrše servisiranja, opravke i modifikacije
BEZBEDNOST i POUZDANOST:
1. Sistem može biti nepouzdan ali bezbedan (ne ponaša se se u skladu sa specifikacijom, ali ne pričinjava štetu korisniku ili okolini).
2. Sistem može biti pouzdan ali nebezbedan (veoma mala
verovatnoća otkaza, ali su posledice katastrofalne pri pojavi otkaza).
SREDSTVA ZA POSTIZANJE OPŠTE POUZDANOSTI
PREVENCIJA NEDOSTATAKA:
1. Izbegavanje grešaka projektovanja
2. Robusno projektovanje
TOLERANCIJA NEDOSTATAKA:
1. Detekcija greške (error detection)
2. Oporavak sistema (recovery)
3. Rukovanje nedostatkom (fault handling)
OTKLANJANJE NEDOSTATAKA:
1. Testiranje i verifikacija
2. Preventivno i korektivno održavanje
PREDVIĐANJE NEDOSTATAKA:
1. Simulacija, modeliranje, predikcija
2. Baze podataka, ubrzano ‘starenje’
ZLONAMERNI PROGRAMI
1988: Poznato manje od 10 virusa
1990: Svakog dana otkrije se 1 novi virus
1993: 10-30 novih virusa nedeljno
1999: 45,000 virusa i njihovih varijanti
Podela zlonamernih programa
Zamke(insajder), logicke bombe(insajder), trojanski konji, virusi(repliciraju se), crvi(repliciraju se i samostalni su).
Koji su simptomi inficiranog računara?
Računar prikazuje vulgarne ili uznemiravajuće poruke
Računar prikazuje neobične zvučne i vizuelne efekte
Pojavljuju se teškoće sa pamćenjem fajlova, fajlovi misteriozno nestaju
Računar se iznenada sam restartuje
Računar radi veoma sporo
Izvršni fajlovi narastaju nebrojeno puta po veličini
Računar počinje sam da šalje mnogo e-mail poruka
Zlonamerni programi – Maliciozni kod
Virus (virus)
Program koji može da prenese zlonameran kod na drugi nezaražen kod, modifikujući ga
Crv (worm)
Program koji širi sopstvene kopije kroz računatsku mrežu
Zamka
Program koji ima osobinu da omogući pristup računarima(trap door)na prikriven, indirektan način i da neovlašćeno omogući korišćenje privilegija
Trojanski konj
Program koji obavlja predviđenu funkciju, ali istovremeno(trojan hors) na prikriveni način obavlja i neku zlonamernu funkciju
Logička bomba
Program koji počinje da vrši zlonamernu funkciju kada (logic bomb) se dogodi neki specificiran uslov, kao okidač (trigger) Vremenska bomba
Progarm koji počinje da vrši zlonamernu funkciju u (time bomb) specificirano vreme ili određenog datuma.
OPERATIVNI SISTEM
Operativni sistem je deo sistemskog softvera
Operativni sistem je skup programa koji upravljaju resursima računarskog sistema I obezbeđuju interfejs ka korisniku.
Operativni sistem je deo sistemskog softvera koji je najbliži hardveru računara
Razvoj operativnog sistema je vezan za razvoj hardvera
Svaki proizvođač računara ima svoje operativne sisteme
Operativni sistem upravlja
Programima
Podacima
Memorijom
Resursima računarskog sistema
Operativni sistem obezbeđuje pogodno radno okruženje za krajnjeg korisnika, koji umesto da upravlja bitima i bajtovima upravlja datotekama i procesima.
Operativni sistem je veza (interface) između samog hardvera računarskog sistema i korisnika kojima omogućava da lakše:
Kreiraju programe
Testiraju programe
Izvode i održavaju programe
Kontrolišu međusobno deljenje resursa računarskog sistema u cilju efikasnog rada
Uloga operativnog sistema je da:
Upravlja poslovima i interpretira komandni jezik
Rukuje ulazom-izlazom
Upravlja greškama i prekidima
Upravlja resursima i prati korišćenje računarskih resursa
Omogućava višestruki pristup
Štiti resurse od raznih grešaka i zlonamernih akcija
Obezbeđuje interfejs za korisnika
Većina operativnih sistema ne može da stane u operativnu memoriju
Jezgro (nukleus) je deo operativnog sistema koji mora uvek da bude prisutan u operativnoj memoriji
U memoriji se nalaze samo najvažniji delovi operativnog sistema, rezidentni deo koji:
Aktivira i završava korisničke programe
Vrši dodelu memorije i datoteka
Obavlja operaciju ulaza i izlaza
Podržava mehanizam prekida
Jezgro operativnog sistema obezbeđuje realizaciju sledećih funkcija:
Upravljanje prekidnim sistemom računara i obradu prekida
Planiranje i evidenciju izvršavanja procesa
Proces je program koji je unet u računar i nalazi se u fazi izvršavanja
Manipulaciju nad programima i komunikaciju između programa
Digitalna logička kola koja obezbeđuju izvršavanje funkcije jezgra operativnog sistema podržavaju realizaciju:
Mehanizma prekida
Dodela zajedničkih resursa procesora različitim procesima
Privilegovanog skupa instrukcija
Privilegovane instrukcije se izvršavaju kada je sistem u kontrolnom ili privilegovanom stanju
Neprivilegovane instrukcije se izvršavaju u problemskom ili korisničkom stanju
Zaštitnog mehanizma adresiranja memorije
Zaštita od pogrešnog adresiranja i uticaja jednog procesa na drugi na nedozvoljen način
Real-time satnog mehanizma
Brojač vremena koji služi za kontrolu i evidenciju korišćenja resursa za svaki proces
Jezgro je realizovano delimično hardverski, a delimično softverski
Hardverski deo obezbeđuje potrebnu brzinu
Softverski deo obezbeđuje fleksibilnost
Jezgro može da se podeli na tri osnovna dela:
Prvi nivo obrade prekida (First Level Interrupt Handler)
Sadrži analizator i servisne rutine za obradu prekida
Dispečer
Odlučuje da li se prekinuti program nastavlja ili ne
Prebacuje procesor između programa po prioritetu (daje ga programu sa najvećim prioritetom)
Rutine za komunikacije među procesima
Operativni sistem sačinjavaju četiri grupe programa:
Upravljanje procesorom
Nivo neposredne dodele procesora nekom procesu (programu)
Nivo odlučivanja koji program ima najviši prioritet
Upravljanje memorijom
Redosled statičkog/dinamičkog dodeljivanja memorije poslovima
Izbor početne lokacije segmenta koji se dodeljuje
Oslobađanje delova memorije, obrada zahteva za dodelu,
Upravljanje ulazno/izlaznim uređajima
Nezavisnost programa od tipa uređaja za U/I operacije
Efikasan rad uređaja, dodeljivanje uređaja, kontrolnih jedinica i kanala poslovima
Oslobađanje uređaja
Upravljane podacima
Formiranje, brisanje, čitanje datoteka i upis u datoteku preko imena
Zaštita podataka od uništenja, neovlašćenog pristupa
Deoba datoteka između poslova.
Većina operativnih sistema upravlja procesima (process) ili zadacima (tasks)
U sistemu sa jednim CPU u jednom vremenskom trenutku može da se izvršava samo jedna instrukcija
Operativni sistem vodi računa da svi korisnici dobiju pristup do CPU
Sam operativni sistem se sastoji od niza procesa
Proces je dinamičkog karaktera i čini niz aktivnosti koje se odvijaju unutar računarskog sistema
Program je statičkog karaktera i sastoji se od niza instrukcija
Svi procesi prolaze kroz niz stanja tokom boravka u računarskom sistemu
Operativni sistem obavlja prevođenje procesa iz jednog stanja u drugo (state transition)
Proces se sastoji od niza koraka koji slede jedan za drugim
Između dva koraka proces može da bude prekinut, a njegovo izvršavanje može da se nastavi u nekom drugom trenutku vremena ili na nekom drugom procesoru
Promena stanja procesa:
Deo operativnog sistema koji se zove upravljač zadacima obavlja raspoređivanje procesa (scheduling) i uvodi proces iz stanja ulaza u stanje spremnosti
Operativni sistem daje procesu resurse koji su mu neophodni za rad (operativnu memoriju, datoteke, prostor u tabelama operativnog sistema,...)
Proces u stanju spremnosti ima sve osim CPU
Interaktivni zadaci se prihvataju direktno u stanje spremnosti
Ako je sistem prepunjen, sprečava se priključenje novih korisnika
Promena stanja procesa:
Deo operativnog sistema koji se zove dispečer uvodi proces iz stanja spremnosti u stanje izvođenja
Računarski sistemi sa jednim CPU mogu da imaju samo jedan proces u stanju izvođenja
Proces ostaje u stanju izvođenja i koristi CPU sve dok ne završi svoj posao ili dok ne bude blokiran (u stanju čekanja)
Interaktivni procesi napuštaju sistem po završetku njihovog izvođenja
Grupni procesi napuštaju računar tek nakon završetka svih izlaznih aktivnosti
Promena stanja procesa:
Proces u fazi izvođenja može da zahteva korišćenje resursa koji nisu odmah raspoloživi (pristup datoteci na disku ili traci, štampanje,...)
Dok čeka na resurse proces je u fazi čekanja
Neki operativni sistemi dozvoljavaju procesima da zadrže kontrolu nad CPU iako su blokirani
Procesi se deblokiraju kad se oslobode resursi
Dok se ne obave ulazno/izlazne operacije i dok se proces ne deblokira CPU je u fazi zaposlenog čekanja
Neki operativni sistemi oduzimaju CPU od blokiranog procesa i dodeljuju ga drugom procesu koji je u stanju spremnosti
Bolje se koristi računarski sistem
Kontrola pristupa resursima, odnosno dodela resursa, obavlja se uz pomoć redova za čekanje
Operativni sistem za svaki aktivan uređaj formira red čekanja u koji se upisuju procesi koji zahtevaju korišćenje tog uređaja
Uređaj se obraća operativnom sistemu kada završi opsluživanje nekog procesa
Operativni sistem uzima sledeći proces iz reda čekanja, izvodi ga iz blokiranog stanja i uvodi u stanje spremnosti
Uređaj se stavlja na raspolaganje tom procesu
Oduzimanje CPU od procesa naziva se pretpražnjenje (preemption)
Kada se proces deblokira ponovo prelazi u stanje spremnosti i može da se bori za CPU
CPU može da bude dugotrajno zauzet od strane programa koji rade obimna izračunavanja nad podacima u memoriji
Neki operativni sistemi vreme zauzeća CPU ograničavaju tajmerom, koji se startuje kada proces pređe u stanje izvođenja i generiše prekid posle nekog definisanog vremena
Proces nakon prekida gubi kontrolu nad CPU i vraća se u procesorski red, a dispečer bira neki drugi proces
Međusobni odnosi procesa u toku njihovog boravka u računarskom sistemu se stalno menjaju
U toku svog izvođenja procesi mogu da se nađu u sledećim odnosima:
Međusobno isključenje (mutual exclusion)
Nije dozvoljeno istovremeno izvođenje dva procesa u pojedinim njihovim delovima
Pri korišćenju nedeljivog resursa propušta se samo jedan proces
Sinhronizacija procesa (synchronization)
Obezbeđuje se određeni redosled u izvođenju delova dva razna procesa
Zastoj (deadlock)
Deo operativnog sistema koji izvršava razne funkcije nad procesima nalazi se u jezgru koje je rezidentno u memoriji
U jezgru se nalazi dispečer i razne tabele potrebne za upravljanje procesorom i memorijom
Centralna tabela ili sistemski kontrolni blok (SCB, System Control Block) sadrži informacije o svim procesima koji se trenutno nalaze u sistemu
Za svako moguće stanje procesa postoji po jedan red u tabeli
Većina informacija u SCB je u formi pokazivača na razne redove u tabeli.
Centralna tabela je memorisana uvek na istoj fiksnoj adresi
Prioritet procesa formira deo operativnog sistema koji se zove upravljač procesora
Svi redovi su realizovani kao povezane liste
Red se formira tako da je prvi proces u redu sa najvećim prioritetom
U Centralnoj tabeli dispečer nalazi adresu procesorskog reda i pristupa mu
Pri dodeli CPU, dispečer uzima prvi proces iz procesorskog reda
Poslednji proces u redu je null-process i služi samo za oznaku završetka reda
Svaki proces u računaru ima jedinstven identifikator koji se čuva u SCB
Kontrolni blok procesa (PCB, Process Control Block) je pokazivač na tabelu i smešta se u SCB
Sadrži razne informacije koje generiše operativni sistem
PREKIDI
Vrste prekida u većini sistema mogu da se podele u pet vrsta:
Izlazno-ulazni prekidi (Input/Output interrupt)
Programski prekidi (Program interrupt)
Prekidi zbog poziva “supervizora” (Supervisor call interrupt)
Spoljni prekidi (External interrupt)
Mašinski prekid (Mashine check interrupt)
Potiču od raznih U/I uređaja I kanala i kontrolera
Najčešće je to signal da je završena neka ulazno-izlazna operacija
Prekidom može da se signalizira i da nije izvršena neka ulazno-izlazna operacija
Koriste se za signaliziranje greške u podacima koje su detektovali kanali ili uređaji
PROGRAMSKI PREKIDI nastaju tokom izvođenja programa i generiše ih:
Sam program koji se izvodi
Ako nisu ispunjeni uslovi za normalno izvršavanje programa (deljenje sa nulom, prekoračenje, podkoračenje, ...)
Ako operacioni kod ne spada u važeće kodove za instrukciju
Program supervizor koji obrađuje prekide i kontroliše ostale programe
Može da generiše supervizorski prekid ako mu se obrate programi specijalnom komandom
SPOLJNI PREKIDI - izvor je izvan tekućeg ra#269;unarskog sistema:
Prekidi koje operater izaziva sa svoje konzole
RESTART, odnosno resetovanje računara na početne uslove, pri čemu se gube programi i podaci koji su bili u glavnoj memoriji)
Prekidi koji dolaze iz drugih CPU
Prekidi od strane uređaja za merenje intervala vremena.
MAŠINSKI PREKIDI nastaju kada se u sistemu detektuje hardverska greška
Sistem kontrole memorije može da obavesti prekidom o narušenoj parnosti
Sistem za kontrolu napajanja može da otkrije prestanak napajanja i da uključi rezervno napajanje.
OBRADA PREKIDA
Postoje dva načina obrade prekida i to:
Prvi način: svi prekidi isto započinju, a posle se određuje tip prekida i njemu odgovarajuća konkretna rutina za obradu
Drugi način: već pri nastanku prekida se zna o kom je prekidu reč i odmah se ide na rutinu za taj tip prekida – vektorski prekid
Bez obzira na vrstu prekida mora da se spasi sadržaj registara PC, SR (ili PSW), a kasnije i sadržaj svih drugih registara koje će koristiti rutina za obradu prekida.
Hardverski sklopovi prepoznaju koje je vrste prekid
Sama rutina za obradu prekida mora da se sastoji od dva dela:
Prvi deo je analizator prekida koji utvrđuje koje je vrste prekid
Drugi deo se aktivira u zavisnosti od vrste prekida i služi za samu obradu prekida
Analiza prekida je u nekim sistemima rešena hardverski
Sistemski Softver
Operativni sistemi
Upravljaju funkcijama računara :
Hardver
Memorija
Aplikativni programi
Sistemsko održavanje
Obezbeđuju interfejs sa korisnikom
Systemski programi Program i koji obezbeđuju normalno funkcionisanje računara :
Upravljaju sistemskim resursima
Poboljšavaju efikasnost
Štite računar od napada
Kategorije operativnih sistema
Četiri kategorije :
Real-Time (RTOS)
Single-User, Single-Task
Single-User, Multitask
Multi-user
Real-Time Operativni sistemi
Sistemi sa specifičnim namenama i pouzdanim rezultatima
Primena:
Industrijske mašine
Robotika
Automobili
Video igre
Upravljanje sistemima
Single-User Operativni Sistemi
Single-task sistemi
Izvršava jedan posao u jednom trenutku
PDAs:
Pocket PC
Palm OS
MS-DOS
Multitask sistemi
Izvršava više poslova simultano
Windows
MAC OS
Linux
Multi-user Operativni Sistemi
Poznati su kao mrežni operativni sistemi
Omogućavaju da više od jednog korisnika istovremeno pristupi računarskom sistemu
Upravlja zahtevima korisnika
Primeri:
UNIX
Novell Netware
Windows Server 2003
Desktop Operativni Sistemi
Operativni sistem kombinovan sa određenim procesorom naziva se platforma
Microsoft Windows / Intel
Apple Macintosh / Motorola
Najpoznatiji Desktop operativni sistemi:
Microsoft Windows
MAC OS
UNIX
Linux
MAC OS
Prvi operativni sistem sa izaberi-i-klikni tehnologijom (Graphical User Interface)
Odličan je za:
Grafičke displeje
Procesiranje
Pouzdanost sistema
Oporavak dokumenata
UNIX
Multi-user, multitask operativni sistem
Koristi se pretežno na velikim računarima (mainframes)
Linux
Open-source operativni sistem
Baziran na UNIX-u
Stabilan sistem
Besplatan
Može da se skine sa Internet-a
Korisnički Interfejs
Omogućava komunikaciju korisnika i računara
Tipovi interfejsa:
Komandne linije
Meni
Grafički
Startovanje Računara
(Boot Proces)
Korak 1: Basic input/output system (BIOS) je aktiviran
Korak 2: Power-on-self-test (POST) proverava priključeni hardver
Korak 3: Operativni sistem se prebacuje u memoriju
Korak 4: Podešava se konfiguracija i setovanje koje je postavio korisnik.
Otklanjanje grešaka tokom startovanja računara
Nesistemski disk ili greška na disku
Ukloni flopi-disk i pritisni bilo koju dirku na tastaturi
POST Greške
Jedan zvučni signal: Sve je u redu
Serija zvučnih signala: Hardverski problem
Safe mode
Windows se ne butira propisno
Isključi novi hardver ili deinstaliraj novi softver
Upravljanje fajlovima
Operativni sistem obezbeđuje organizacionu strukturu za kompletan sadržaj računara
Hijerarhijska struktura direktorijuma:
Drives -Folders -Subfolders –Files>
Korisnički programi (Utility Programs)
Male aplikacije koje obavljaju specijalne funkcije:
Upravljaju resursima sistema
Kreiraju ugodno okruženje za rad
Poboljšavaju efikasnost
Display Utilities
Menja izgled:
Desktop-a
Windows boja
Veličine slova
Tema na ekranu
Rezolucije ekrana