31
Programiranje 1 Milena Vujoˇ sevi´ c Janiˇ ci´ c www.matf.bg.ac.rs/~milena Raˇ cunarstvo i raˇ cunarski sistemi

Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

Programiranje 1

Milena Vujosevic Janicic

www.matf.bg.ac.rs/~milena

Racunarstvo i racunarski sistemi

Page 2: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Pregled

1 Racunarstvo

2 Racunari fon Nojmanove arhitekture

3 Hardver i softver

Milena Vujosevic Janicic Programiranje 1

Page 3: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Racunarstvo i informatikaOblasti racunarstva

Pregled

1 RacunarstvoRacunarstvo i informatikaOblasti racunarstva

2 Racunari fon Nojmanove arhitekture

3 Hardver i softver

Milena Vujosevic Janicic Programiranje 1

Page 4: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Racunarstvo i informatikaOblasti racunarstva

Racunarstvo i informatika

Racunarstvo i informatika predstavljaju jednu odnajatraktivnijih i najvaznijih oblasti danasnjice.Zivot u savremenom drustvu ne moze se zamisliti bezkoriscenja razlicitih racunarskih sistema.Sta su racunarski sitemi? Primeri?

Milena Vujosevic Janicic Programiranje 1

Page 5: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Racunarstvo i informatikaOblasti racunarstva

Racunarski sistemi

Primeri:Stoni i prenosivi racunari, tableti, pametni telefoniRacunari integrisani u razlicite masine (automobile, avione,industrijske masine, itd)

Da li postoje elektronski uredaji koji nisu racunari? Da li ce za10 godina postojati elektronski uredaji koji nisu racunari?

RacunarPod digitalnim racunarskim sistemom (racunarom) podrazumeva semasina koja moze da se programira da izvrsava razlicite zadatkesvodenjem na elementarne operacije nad brojevima.

Milena Vujosevic Janicic Programiranje 1

Page 6: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Racunarstvo i informatikaOblasti racunarstva

Racunarstvo

RacunarstvoRacunarstvo se bavi izucavanjem racunara, ali i opstije,izucavanjem teorije i prakse procesa racunanja i primene racunara uraznim oblastima nauke, tehnike i svakodnevnog zivota.

Vazno: Racunari nisu sami po sebi svrha i samo su sredstvo kojetreba da pomogne u ostvarivanju razlicitih zadataka.

Milena Vujosevic Janicic Programiranje 1

Page 7: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Racunarstvo i informatikaOblasti racunarstva

Oblasti racunarstva

Savremeno racunarstvo ima mnogo podoblasti, kakoprakticnih, tako i teorijskih.Savremene oblasti racunarstva nije jednostavno sistematizovatii klasifikovati.Koje su osnovne oblasti racunarstva?

Milena Vujosevic Janicic Programiranje 1

Page 8: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Racunarstvo i informatikaOblasti racunarstva

Klasifikacija americke asocijacije ACM — Association forComputing Machinery

Algoritmika — procesi izracunavanja i njihova slozenostStrukture podataka — reprezentovanje i obrada podatakaProgramski jezici — dizajn i analiza svojstava formalnihjezika za opisivanje algoritamaProgramiranje — proces zapisivanja algoritama u nekomprogramskom jezikuSoftversko inzenjerstvo — proces dizajniranja, razvoja itestiranja programa

Milena Vujosevic Janicic Programiranje 1

Page 9: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Racunarstvo i informatikaOblasti racunarstva

Klasifikacija americke asocijacije ACM

Prevodenje programskih jezika — efikasno prevodenje visihprogramskih jezika, obicno na masinski jezikOperativni sistemi — sistemi za upravljanje racunarom iprogramimaMrezno racunarstvo — algoritmi i protokoli za komunikacijuizmedu racunaraPrimene — dizajn i razvoj softvera za svakodnevnu upotrebuIstrazivanje podataka — pronalazenje relevantnih informacijau velikim skupovima podataka

Milena Vujosevic Janicic Programiranje 1

Page 10: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Racunarstvo i informatikaOblasti racunarstva

Klasifikacija americke asocijacije ACM

Vestacka inteligencija — resavanje problema u kojima sejavlja kombinatorna eksplozijaRobotika — algoritmi za kontrolu ponasanja robotaRacunarska grafika — analiza i sinteza slika i animacijaKriptografija — algoritmi za zastitu privatnosti podatakaTeorijsko racunarstvo — teorijske osnove izracunavanja,racunarska matematika, verifikacija softvera, itd.

Milena Vujosevic Janicic Programiranje 1

Page 11: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Pregled

1 Racunarstvo

2 Racunari fon Nojmanove arhitekture

3 Hardver i softver

Milena Vujosevic Janicic Programiranje 1

Page 12: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Elektronski racunari

Jedan od prvih elektrnoskih racunara 1939. ABC za resavanjesistema linearnih jednacinaAlan Tjurnig — Kolos za desifrovanje nemackih porukasifrovanih masinom EnigmaTjurnig je dao i znacajne teorijske doprinose — TjuringovamasinaTjuringova nagrada

Milena Vujosevic Janicic Programiranje 1

Page 13: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Elektronski racunari

ENIAC — prvi elektronski racunar opste namene1700 vakumskih cevi, duzina 30m, masa 30tRane masine nisu bile programabilne vec je program po kojemsu radile zavisio od konstrukcije masineTo i dalje imamo npr kod digitronaProgramiranje nije bilo u danasnjem smislu, vec jeprogramiranje ENIAC-a znacilo prespajanje kablova

Milena Vujosevic Janicic Programiranje 1

Page 14: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Racunari fon Nojmanove arhitekture (1)

Konceptualna promena krajem 1940. u vidu fon NojmanovearhitektureFon Nojmanova arhitektura se i danas koristi na vecinisavremenih racunaraVezuje se za fon Nojmana i racunar EDVAC 1951, iako je onekim elementima ove arhitekture i ranije bilo reci

Milena Vujosevic Janicic Programiranje 1

Page 15: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Racunari fon Nojmanove arhitekture (2)

Osnovne karakteristike:Osnovne komponente su procesor (ALU, kontrolna jedinica,registri) i memorijaOtale komponente: ulaz-izlaz, spoljasnja memorijaProgramabilnostProgrami se skladiste u glavnoj memoriji, zahvaljujuci cemu jepostalo lako razgraniciti softver i hardverI programi i podaci se cuvaju u istoj memoriji (nasuprotharvardskoj arhitekturi)Programi i podaci se zapisuju na isti nacin (binarno)

Milena Vujosevic Janicic Programiranje 1

Page 16: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Moderni programabilni racunari (1)

Razlika u tehnologiji koja se koristi, pre svega za izraduprekidaca od kojih se gradi racunarI generacija — kraj 1930ih do kraja 1950ih — vakumske cevi imagnetni dobosiII generacija — kraj 1950ih do polovine 1960ih — tranzistori(Visi programski jezici, prva igrica, umrezavanje)III generacija — od polovine 1960ih do sredine 1970ih —integrisana kola (Koncepti timesharing, terminali, operativnisistemi, mejnfrejm racunari i mini racunari, Unix)IV generacija — visoko integrisana kola, 1971. je napravljenprvi mikroprocesor Intel 4004 (Pojava prvih personalnihracunara)

Milena Vujosevic Janicic Programiranje 1

Page 17: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

Moderni programabilni racunari (2)

Svaka generacija modernih racunara donosi sledece prednosti uodnosu na prethodnu:

Veca brzinaManji napon i manja potrosnja energijeManje zagrevanje zahvaljujuci manjoj potrosnji energijeManja povrsina kola zahvaljujuci manjem zagrevanju i manjojveliciini prekidaca

Milena Vujosevic Janicic Programiranje 1

Page 18: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Pregled

1 Racunarstvo

2 Racunari fon Nojmanove arhitekture

3 Hardver i softverHardverSoftver

Milena Vujosevic Janicic Programiranje 1

Page 19: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Hardver savremenih racunara

HardverHardver cine opipljive, fizicke komponente racunara

Koje su osnovne komponente racunara?

Milena Vujosevic Janicic Programiranje 1

Page 20: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Hardver savremenih racunara

Osnovne komponente hardvera:Procesor — Central Processing Unit (CPU)Glavna memorija — koja cuva podatke i programeRazliciti ulazno-izlazni uredaji — mis, tastatura, ekran,stampaci, diskovi...

Nabrojane komponente su povezane magistralamaMagistrala obuhvata provodnike koji povezuju uredaje ali icipove koji kontrolisu protok podataka

Milena Vujosevic Janicic Programiranje 1

Page 21: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Procesor

Sastoji se od kontrolne jedinice i aritmeticko logicke jediniceSadrzi registre u kojima se privremeno smestaju podaciRegistri sirine 8, 16, 32 ili 64 bitaBrzina procesora meri se u milionima operacija u sekundiMIPS, tj u broju operacija u pokretnom zarezu u sekundiFLOPS ( 10GFLOPS u sekundi)Vise jezgara — paralelno izvrsavanje (1,2 ili 4)Radni takt GHz

Milena Vujosevic Janicic Programiranje 1

Page 22: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Memorija

Memorija je linearno uredeni niz registara (najcesce bajtova),pri cemu svaki registar ima svoju adresu.Osnovne karakteristike memorije: kapacitet, vreme pristupa,protokUnutrasnje memorije — koriste se samo kada je racunarukljucenSpoljne memorije — skladistenje podataka kada je racunariskljucenProcesor komunicira sa unutrasnjom, podaci se prebacuju izspoljne u unutrasnju

Milena Vujosevic Janicic Programiranje 1

Page 23: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Memorijska hijerarhija

Registri procesoraKesRAMROM/BIOSUSB diskoviHard diskoviCD, DVD, Blu-ray, magnetne trake

Milena Vujosevic Janicic Programiranje 1

Page 24: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Ulazni i izlazni uredaji

Ulazni uredaji: tastatura, mis, tacpad, skener, dzojstikIzlazni uredaji: monitori (LED, CRT), stampaci (laserski,ink-dzet, 3D)Veze: bezicna veza (BlueTooth), kablovi preko USB prikljucaka

Milena Vujosevic Janicic Programiranje 1

Page 25: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Softver

SoftverSoftver cine racunarski programi i prateci podaci koji odredujuizracunavanja koje vrsi racunar.

Program specifikuje koje operacije treba izvrsiti da bi se resioneki zadatakPrvi racunari: samo masinski zavisni jeziciPolovinom 1950ih godina — jezici viseg nivoa

Milena Vujosevic Janicic Programiranje 1

Page 26: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Klasifikacija softvera

Osnovna podela je na aplikativni i sistemski softver.Aplikativni softver je softver koji krajnji korisnici racunaradirektno koriste u svojim svakodnevnim aktivnostima.Koji su primeri aplikativnog softvera?

Milena Vujosevic Janicic Programiranje 1

Page 27: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Aplikativni softver

Pregledac Veba, klijenti elektronske posteMultimedijalni softver — programi za reprodukciju i obraduslika, zvuka i video sadrzajKancelarijski softverVideo igre

Milena Vujosevic Janicic Programiranje 1

Page 28: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Klasifikacija softvera

Sistemski softver je softver cija je uloga da kontrolise hardver ipruza usluge aplikativnom softveruKoji su primeri sistemskog softvera?Granica izmedu sistemskog i aplikativnog softvera nije kruta ipostoje programi za koje se moze smatrati da pripadaju obemagrupama

Milena Vujosevic Janicic Programiranje 1

Page 29: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Sistemski softver

Operativni sistemRazliciti usluzni programi

editori teksta,alati za programiranje (prevodioci, dibageri, profajleri,integrisana okruzenja)

Milena Vujosevic Janicic Programiranje 1

Page 30: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Operativni sistem

Korisnici OS cesto identifikuju sa izgledom ekrana tj. saprogramom koji koriste da bi pokrenuli svoje aplikacije iorganizovali dokumente.To je korisnicki interfejs ili skoljka — tanak sloj na vrhuoperativnog sistemaNajveci i najznacajni deo OS naziva se jezgro.Jezgro kontrolise i apstrahuje hardver, sinhronizuje rad viseprograma, rasporeduje procesorsko vreme i memoriju, brine osistemu datoteka na spoljasnjim memorijama itd.Koje operativne sisteme znate?

Milena Vujosevic Janicic Programiranje 1

Page 31: Programiranje1...Raˇcunarstvo RaˇcunarifonNojmanovearhitekture Hardverisoftver Moderniprogramabilniraˇcunari(1) Razlikautehnologijikojasekoristi,presvegazaizradu

RacunarstvoRacunari fon Nojmanove arhitekture

Hardver i softver

HardverSoftver

Literatura

Slajdovi su pripremljeni na osnovu materijala iz prvog poglavljaknjige:Predrag Janicic, Filip Maric: Programiranje 1

Milena Vujosevic Janicic Programiranje 1