IV semestar

Predmeti:


Operativni sistemi 1

(obavezni, II godina, IV semestar)

Uvod. Pojam, namena i funkcije operativnih sistema: šta je OS, zašto postoje OS, osnovni zadaci i funkcije OS, šta sve obuhvata OS. Istorijat i vrste OS: paketni sistemi, sistemi sa multiprogramiranjem i vremenskom raspodelom, personalni računarski sistemi, multiprocesorski sistemi, distribuirani sistemi, sistemi za rad u realnom vremenu.
Upravljanje procesima.
Procesi i niti: pojam procesa, operacije nad procesima, implementacija procesa, pojam niti, implementacija niti. Sinhronizacija i komunikacija između procesa: kooperativni procesi, mehanizmi interakcije, međusobno isključenje, uslovna sinhronizacija, uposleno čekanje, semafori, implementacija semafora, upotreba semafora (međusobno isključenje, ograničeni bafer).
Upravljanje memorijom.
Vezivanje adresa: problem vezivanja adresa, prevođenje (compilation), povezivanje (linking), učitavanje (loading), dinamičko preslikavanje adresa. Deljenje memorije: problem deljenja memorije, dinamičko učitavanje, preklopi (overlays), biblioteke sa dinamičkim vezivanjem (DLL), zamena (swapping). Organizacija i alokacija memorije: kontinualna alokacija, stranična organizacija, segmentna organizacija. Virtuelna memorija: pojam virtuelne memorije, učitavanje stranica na zahtev (demand paging).
Ulazno/izlazni sistemi. Sistemske I/O usluge: arhitektura I/O podsistema, klasifikacija I/O uređaja, aplikativni programski interfejs (API) prema I/O. I/O podsistem: raspoređivanje, baferisanje, keširanje, spooling, zaštita, obrada I/O zahteva, performanse.
Fajl sistemi. Interfejs fajl sistema: pojam fajla, struktura direktorijuma, montiranje (mounting), deljenje fajlova, zaštita. Implementacija fajl sistema: struktura fajl sistema, implementacija direktorijuma, metode alokacije, rukovanje slobodnim prostorom, efikasnost i performanse, oporavak od otkaza.

Arhitektura računara

(obavezni, II godina, IV semestar)

Arhitektura. CISC i RISC arhitekture. Elementi arhitekture. Programski model. Tipovi podataka. Formati instrukcija. Načini adresiranja. Skup instrukcija. Standardne instrukcije. Uslovni skokovi. Nestandardne instrukcije. Instrukcije za rad sa stringovima i kontrolu petlji. Mehanizam prekida. Spoljašnji i unutrašnji prekidi. Prioriteti prekida. Selektivno i kompletno maskiranje prekida. Gneždenje. Prekid posle svake instrukcije. Instrukcija prekida.
Magistrala.
Osnovni pojmovi. Gazda i sluga. Adresne linije, linije podataka i upravljačke linije. Adresiranje lokacija u slugi. Arbitracija. Procesor. Arbitrator sa paralelnom i serijskom arbitracijom. Arbitracione politike. Ciklusi. Asinhrone i sinhrone magistrale sa atomskim i podeljenim ciklusima. Sistemi sa više magistrala.
Ulazno/izlazni sistem.
Osnovni pojmovi. Uređaji. Kontroleri. Periferije. Registri kontrolera. Kontroleri bez direktnog pristupa memoriji. Struktura i funkcionisanje. Programiranje ulaza/izlaza sa ispitivanjem statusa i sa prekidom. Kontroleri sa direktnim pristupom memoriji. Struktura i funkcionisanje. Programiranje ulaza/izlaza. Prekidi ulazno/izlaznih uređaja. Ispitivanje statusa, vektorisanje i kombinovani.
Sistem diskova.
Struktura diska. Mehaničke komponente. Elektronika. Tehnološki aspekti. Karakteristike diskova i kontrolera. Oblici podataka. Komponente pristupa disku.. Obrada komandi. Keširanje. Baferski, keš i RAID kontroleri. Interfejsi. Paralelni i serijski ATA i SCSI interfejsi. Mrežno bazirani sistemi. NAS i SAN arhitekture.

Objektno-orijentisano programiranje 2

(obavezni, II godina, IV semestar)

Uvod. Motivacija. Istorijat jezika Java. Bajtkod i virtuelna mašina za Javu. Aplikacije i apleti. Prevodioci i alati. Pregled jezika Java.
Klase i objekti.
Ugovor i implementacija. Polja i metodi. Parametri. Kontrola pristupa. Konstruktori. Preklapanje metoda. Statička polja, metodi i blokovi. Sakupljanje đubreta. Glavni program. Paketi.
Proširivanje klasa.
Proširenje ugovora klase. Pojam korene klase Object. Zaštićeni članovi. Konstrukcija objekata. Redefinisanje metoda i sakrivanje polja. Referenca super. Konverzija i operator provere tipa. Konačne i apstraktne metode i klase. Metodi klase Object. Kloniranje objekata.
Interfejsi.
Definicija interfejsa. Metodi i polja interfejsa. Implementacija interfejsa. Reference na interfejse. Jednostruko i višestruko nasleđivanje. Proširivanje interfejsa. Konflikti imena.
Izuzeci. Kreiranje tipova izuzetaka. Bacanje izuzetaka. Obrada izuzetaka. Konstrukcija try-catch-finally.
Ugneždeni tipovi. Prava pristupa. Statičke i unutrašnje klase. Relacije. Proširivanje unutrašnjih klasa. Lokalne klase. Anonimne klase.
Niti.
Kreiranje, pokretanje i zaustavljanje niti. Neizvesnost trke i sinhronizacija niti. Kominikacija niti. Prioriteti i raspoređivanje niti.
Programiranje grafičkog korisničkog interfejsa.
Koncepti paketa AWT. Hijerarhija klasa. Obrada događaja. Slušaoci i adapteri. Komponente i kontejneri. Prozori i kontrole: dijalozi, meniji, paneli, rasporedi, dugmad, polja za potvrde, radio dugmad, liste, padajuće liste, natpisi, polje za tekst i prostor za tekst.
Jezik C# i multijezička platforma .NET.
Zajednički jezički interfejs. Sistem tipova i instrukcijski jezik platforme .NET/Rotor.
Pregled specifičnih elemenata jezika C#.
Identifikatori. Operatori. Naredbe. Prostori imena.
Sistem tipova u jeziku C#.
Ukazani i vrednosni tipovi. Strukture i klase. Pakovanje i raspakivanje. Svojstva. Indekseri. Delegati. Događaji.

Računarske mreže

(izborni, II godina, IV semestar)


Veb dizajn

(izborni, II godina, IV semestar)

Internet: istorija, osnovni pojmovi i koncepti. UlogaWeb čitača. Dizajn Web stranice i zahtevi korisnika.
Osnove HTML/XHTML jezika: images, tables, forms i frames. Korišćenje image maps, forms i tables tagova. Realizacija Cascading style sheets (CSS) za efikasnije formatiranje sadržaja stranica.
Osnove JavaScript jezika: Skript jezici i Web čitači. Sintaksa jezika, kontrole toka, objekti. Ponašanje JavaScript jezika u okviru različitih web čitača. Napredne tehnologije: Document Object Model (DOM). Mogućnost korišćenja multimedijalnih objekata. Korišćenje XML i XSL tehnologija.
Realizacija Web aplikacije uz korišćenje JavaScript, DOM i CSS tehnologija
Osnovni principi Grafičkog dizajna. Implementacija savremenih korisničkih interfejsa. Primeri realizacije osnovnih principa Web dizajna


Verovatnoća i statistika

(izborni, II godina, IV semestar)

Uvod u teoriju verovatnoće. Statistički eksperiment, prostor verovatnoće. Aksiome verovatnoće. Jednakoverovatni događaji. Geometrijska verovatnoća. Statistička definicija verovatnoće. Osobine verovatnoće. Primena kombinatorike. Beskonačni skupovi elementarnih događaja.
Uslovna verovatnoća i nezavisnost.
Uslovna verovatnoća. Formula totalne verovatnoće. Bayesova formula. Primene Bayesove formule u tehničkim naukama.
Slučajne promenljive.
Funkcija raspodele. Diskretne slučajne promenljive. Neprekidne slučajne promenljive. Slučajni vektori. Nezavisnost slučajnih promenljivih. Funkcije slučajnih promenljivih i slučajnih vektora.
Numeričke karakteristike slučajnih promenljivih.
Matematičko očekivanje. Momenti. Kovarijansa i koeficijent korelacije. Matrica kovarijanse. Informacija i entropija.
Karakteristične funkcije.
Definicija i osobine. Karakteristične funkcije slučajnih vektora.
Granične teoreme.
Vrste konvergencije u teoriji Verovatnoće. Nejednakost Cebiseva. Zakoni velikih brojeva. Centralna granična teorema i njene primene. Empirijske funkcije raspodele i centralna teorema statistike.
Uslovne raspodele.
Definicija uslovne raspodele u odnosu na slučajnu promenljivu. Uslovno matematičko očekivanje i varijansa. Uvod u predikciju. Primene.
Ocenjivanje parametara.
Ocene parametara: matematičkog očekivanja, varijanse, verovatnoće. Primene centralne granične teoreme. Intervali poverenja.
Testiranje parametarskih hipoteza.
Hipoteze o vrednosti parametra, Hipoteze o razlici parametara. T-test. Test jednakosti varijansi.
Neparametarsko testiranje.
Hi kvadrat test sa primenama. Test Kolmogorova i Smirnova. Testiranje nezavisnosti.
Linearna regresija.
Regresiona prava. Opšta linearna regresija. Testiranje hipoteza o regresionoj krivoj.
Monte Carlo metodi.
Generisanje pseudoslučajnih brojeva. Generisanje slučajnih promenljivih sa datim raspodelama. Primene.

Signali i sistemi

(izborni, II godina, IV semestar)