Operativni sistemi 1. Mikroprocesor: U najnovije vreme svaki čip može da sadrži i više procesora, od kojih svaki osim registara može da sadrži i više nivoa takozvane keš memorije. 2. Registar je mala memorijska jedinica koja je deo centralnog procesora (CPU). Registrima se može pristupati znatno brže nego osnovnoj memoriji. 3. Tok podataka Podaci se učitavaju iz osnovne memorije u registre Podaci se uzimaju iz registara radi obavljanja aritmetičkih operacija u aritmetičko logičkoj jedinici (ALU) Izmenjeni podaci se smeštaju u registre Podaci se iz registara smeštaju u glavnu memoriju 4. Osnovni delovi racunara: Centralni procesor Osnovna memorija o Nestalna – pri isljučenju računara nestaje I/O Moduli o Sekundarni memorijski uređaji (disk) o Komunikacijski kanali (mreža) o Terminali (tastatura/monitor) Magistrala podataka (bus) o Komunikacija između procesora, osnovne memorije, I/O modula 5. Izvrsavanje programa: Program koji se izvršava na procesoru sastoji se od skupa instrukcija koje se čuvaju u memoriji računara Procesor preuzima 1 po 1 instrukciju i izvršava je Preuzeta instrukcija se učitava u registar instrukcija (IR)
Instrukcija se sastoji od niza bitova kojima je kodirana instrukcija 6. Program counter registar (PC) koji čuva memorijsku adresu sledeće instrukcije se povećava posle preuzimanja instrukcije (najčešće za 1, osim ukoliko sama instrukcija ne označi drugačije) 7. Vrste akcija koje procesor moze izvrsiti: Procesor ↔ memorija o Transfer podatka iz registra u memoriju Procesor ↔ I/O uređaj o Transfer podatka iz registra ka spoljnom I/O uređaju o Pri tome se koriste I/O moduli Procesiranje (obrada) podataka Aritmetička ili logička operacija na podacima Kontrola 8. Osnovni ciklus izvrsavanja instrukcija na procesoru: Dva koraka: Procesor preuzima instrukciju iz memorije Procesor izvršava instrukciju 9. Prekidi ( Interputs ): Menjaju osnovni ciklus izvršavanja instrukcija na procesoru Uloga im je da povećaju iskorišćenost procesora Većina I/O uređaja je sporija od procesora Procesor mora da čeka dok se vrši I/O operacija na uređaju 10. Obrada prekida: Prekidi omogućuju da procesor tokom izvršavanja neke I/O operacije može nastaviti izvršavanje drugih instrukcija Kada se pojavi zahtev za prekid, procesor prekida (suspenduje) izvršavanje korisničkog programa i prelazi na program za obradu prekida Kada se prekid obradi, procesor nastavlja izvršavanje korisničkog programa od trenutka u kome je bio suspendovan Korisnički program ne vodi računa o prekidima Procesor i operativni sistem (OS) vode računa o tome kako da suspenduju korisnički program, pređu na izvršavanje rutine za
obradu prekida, a potom nastave izvršavanje prethodno suspendovanog korisničkog programa 11.Obrada prekida: Tokom izvršavanja nekog programa na procesoru, obrada prekida može biti dozvoljena ili zabranjena Ukoliko je dozvoljena, posle obrade bilo koje instrukcije, procesor proverava da li je došlo do prekida (neki uređaj uputio zahtev za prekidom, ili neka druga vrsta prekida se dogodila) Ako nema signala koji označava zahtev za prekidom, procesor preuzima sledeću instrukciju Ako ima signala koji označava zahtev za prekidom, procesor suspenduje program i prelazi na izvršavanje rutine za obradu prekida 12.Sekvencijalna / Ugnjezdena obrada prekida: Tokom obrade jednog prekida može biti zabranjena obrada prekida (sekvencijalna obrada prekida), ili može biti dozvoljena (ugnježdena obrada prekida). 13. Multiprogramiranje: Procesor može imati više programa koje treba da izvršava paralelno (izvršava malo jedan, malo drugi program) Programi mogu imati prioritet Koji se program izvršava može zavisiti i od toga da li drugi programi čekaju na I/O operaciju posle završetka obrade prekida, može se desiti da se izvršavanje programa ne nastavi odmah od onog programa koji je bio prekinut kada se prekid dogodio, već od nekog koji ima veći prioritet 14. Memorija: Fizička jedinica: BIT Procesorska jedinica: Reč (WORD) o Bajt: 8 bita o Word: 16, 32, 64 bita Svaka memorijska lokacija ima jedinstvenu adresu Ako je dužina reči N, onda ima 2N adresabilnih memorijskih lokacija 15. Vrste memorije: Brzina memorije treba da bude uporediva sa brzinom procesora
Cena memorije treba da bude u skladu sa ostalim komponentama sistema 16. Odnos cene, brzine I kapacitetA: Veća brzina pristupa → veća cena po bitu Veći kapacitet → manja cena po bitu Veći kapacitet → manja brzina pristupa 17. U istom racunarskom sistemu moze se koristiti vise vrsta memorije u cilju najbolje iskoriscenosti. 18. Hijerarhija memorije ( piramida ): Smanjuje se cena po bitu Povećava se kapacitet Smanjuje se brzina pristupa Smanjuje se učestalost pristupa memoriji od strane procesora 19. Nestabilna memorija: Registri, cash i osnovna memorija Nestaje / podaci se brišu pri isklučenju računarskog sistema 20. Stabilna memorija: Sekundarna / spoljna memorija Trajno postoji Tu se čuvaju podaci i fajlovi Hard disk, kompakt diskovi, trake, optički diskovi 21. Cache memorija: Mnogo brži transfer podataka između cashe memorije i procesora nego između osnovne memorije i procesora Da bi se iskoristila cashe memorija, koristi se princip lokaliteta reference 22. Princip rada cache memorije: Sadrži kopiju dela osnovne memorije Podeljena je na memorijske blokove – sekvencijalne delove memorije Procesor prvo proverava da li je memorijska adresa koja je potrebna za izvršavanje instrukcije već u cashe memoriji Ako podatak nije u cashe memoriji, ne uzima se samo traženi podatak, već čitav blok memorije koji sadrži i taj traženi podatak i prebacuje se u cashe memoriju
Velika je verovatnoća da će podatak koji sledeća programska instrukcija bude tražila biti u istom bloku (princip koji se zove „lokalitet reference“) 23. Koriscenje principa lokaliteta reference: Više nivoa cache memorije Registri – najbrži, najmanji, najskuplji Procesor ih obično ima nekoliko desetina Cache memorija Nije vidljiva programeru, ni procesoru Program je „vidi“ kao deo osnovne memorije 24. Velicina cache memorije: Ukupna veličina cache memorije Zbog lokaliteta reference, čak i male količine cache memorije imaju veliki uticaj na performansu sistema Veličina bloka cache memorije Blok je jedinica količine memorije koja se prenosi između cache i osnovne memorije Ako je blok veći, ređa će biti potreba za učitanjem novog bloka iz osnovne memorije 25. Vise nivoa cache memorije: Level 1, 2, 3 cache memorije (L1, L2, L3) L1 – najmanja i najbrža L2 – veća i sporija od L1 L3 – veća i sporija od L2 26. Zamena blokova u cache memoriji: Kada je cache memorija puna, a traženi podatak nije u njoj, neki od postojećih blokova se briše, a umesto njega se iz osnovne memorije prebacuje blok koji sadrži traženi podatak 27. Posebne vrste procesora: Grafička procesorska jedinica (GPU) o Prikazivanje kompleksne grafike o Simulacije (fizika i proračuni) u kompjuterskim igrama i animacijama Procesori digitalnog signala (DSP)
o Streaming digitalni signal (audio i video) o Ugrađeni u prenosive računare (PDA) Drugi specijalizovani procesorski uređaji o Npr. kodiranje i dekodiranje govora i video signala 28. Simetricni multiprocesori: Dva ili više procesora sličnih karakteristika u jednom računarskom sistemu, svaki na svom silikonskom čipu Dele osnovnu memoriju i I/O uređaje Svi procesori mogu da obavljaju sve funkcije 29. Operativni sistem: Program koji kontroliše izvršavanje aplikativnih programa Interfejs između aplikacija i hardvera 30. CIljevi OS-a: Jednostavnost korišćenja (korisnici) Efikasnost (resursi) Mogućnost proširivanja 31. Usluge koje obezbedjuje OS: Razvoj programa (utilities) Izvršavanje programa Pristup I/O uređajima Kontrolise pristup fajlovima Pristup resursima sistema Detekcija i odgovor na greske Monitoring perfomansi Apllication programing interface 32. OS upravlja resursima: Funkcionise kao I svaki drugi softver, priprema processor na izvrsavanje sledeceg programa. 33. Kernel: Deo operativnog sistema koji je stalno u memoriji Najčešće korišćene funkcije Ostali delovi OS-a se učitavaju u memoriju povremeno prema potrebi 34. OS je potrebno menjati ( Novije verzije ): Razlozi:
Napredak hardware-a (npr grafički terminal u odnosu na konzolni terminal) Dodavanje novih funkcija Ispravke grešaka Zato OS kao sistem mora biti: Modularan → Interfejsi između modula → Dokumentovan 35. Serijsko procesiranje: 1940-50-ih godina Nema OS-a Konzola sa svetlima, prekidačima, printerom GLAVNI PROBLEMI Raspoređivanje poslova (programa) – ručno, na papiru Mnogo vremena da se pripremi posao (program) 36. Batch sistemi – monitor: Software koji kontroliše redosled događaja Spajaju se više poslova (batch) Kada se program (posao) završi on vraća kontrolu monitoru Dobar deo monitora je stalno u memoriji (resident monitor) Monitor učitava jedan po jedan program sa I/O uređaja (čitač kartica) 37. Hardverska podrška sistemu sa monitorom: Zastita memorije Timer Privilegovane instrukcije Interputs- nema 38. Gubici batch Sistema: Procesorsko vreme se deli između izvršavanja korisničkih programa i monotira Deo osnovne memorije koristi monitor Deo procesorkog vremena koristi monitor Uprkos gubicima, jednostavni batch sistem znatno poboljšava iskorišćenost računara 39. Nacini rada Sistema:
Korisnički mod o Korisnički programi o Neki delovi memorije zaštićeni o Neke instrukcije se ne mogu izvršavati Sistemski mod o Monitor o Privilegovane instrukcije se mogu izvršavati o Zaštićenim delovima memorije se može pristupati 40. Nedostaci batch Sistema: Procesor je često neiskorišćen I/O uređaji su sporiji od procesora 41. Batch sistemi podrzavaju uniprogramiranje 42. Multiprogramiranje Kada jedan posao čeka na I/O, procesor prelazi na drugi posao 43. Time Sharing sistemi: Procesorsko vreme se deli među korisnicima Više korisnika simultano pristupaju sistemu putem terminala (koji nisu toliko skupi) 44. Moguce greske pri radu OS-a Nadekvatna sinhronizacija Greske pri medjusobnom iskljucivanju Neodredjen iskoh programa Zakljucavanje 45. Proces: Program koji se izvršava Sastoji se iz tri komponente o Izvršni program o Podaci potrebni za izvršavanje programa o Kontekst programa 46. Thread Jedan proces (koji ima dodeljene resurse) može biti razbijen na više niti koje mogu paralelno da se izvršavaju To je novi nivo paralelne aktivnosti kojom mora da upravlja software i hardware
47.