41
1 Predavanje 04: Razvoj racunarstva Gradivna jedinica prekidac Isti principi, ali se menja tehnologija Krenulo se od jednog racunara, pa se sirilo Kao svemirski program danas Hardware pre software Prvo racunar koji nije imao nista od operativnog sistema Veliki racunari u krizi i poceli mali (mini, mikro) racunari Manje, jeftinije, jednostavnije Veliki mocan na 1000 ljudi, a mali je sporiji, ali samo nas, bolje za korisnike (mlazni avion, ili svako svoj bicikl) U teoriji OS-a korak nazad Velika ulaganja i razvoj OS-a na velikim racunaraima i sada se odjednom to uproscava Najprimitivniji se razvijaju, i ponavlja se ciklus Dva ciklusa, 80 se vracamo na 45, pa ponovo pocinje razvoj Imamo izmesljenu teoriju ali cekamo razvoj hw-a da bi implementirali NT 4.0 ozbiljan sistem (on je stigao stare operativne sisteme) Potroseno dosta vremena OS-spadaju u klasifikaciji racunarskih nauka izmedju HW-a i software Mnogi pristupi u izucavanju Najcesce koriscen pristup (80% knjiga) korisnicki aspekt (prakticni XP, 1000 trikova itd., nije za vise godine) Administratorski pristup (vrlo napredni korisnik), ali i dalje korisnik Programerski aspekt, veza izmedju programera i HW-a, OS daje biblioteke i funkcije, a programer poziva sta mu treba Prdefinisao profesiju programera Postalo je nevazno na kom jeziku se programira Postaje bitan korisnicki interface Dobar programski jezik postaje onaj koji ima 10-ak naredbi koje rade algoritme i 100-ine naredbi za GUI Postaju programeri za WIN, a ne za FORTRAN ili C Proizvodjacki aspekt (nesretna rec)-pravljenje OS Danas malo OS-ova Mi radimo teoretski pristup, gde nas zanimaju: 1. Problemi koji treba da se rese 2. Algoritmi koji resavaju probleme Posmatranje sa statisticke tacke gledista (ocena i poboljsanje performansi)-teorija ali ne sa aspekta samo algoritma, vec sa statistickog modeliranja (sistem koji se sastoji iz delova koji su povezani) Ranije je to bilo bar jedno poglavlje, a sada se to vec malo smanjilo DEF: Ima ih nekoliko: 1. OS je program koji cini HW upotrebljivim, (dostupan coveku, rad coveka na racunaru ugodnijim)-bolja definicija bi bila da ga cini prakticno upotrebljivim 2. OS je menadzer resursa (resursi racunara)-podrazumevaju se CPU, RAM, HDD i ulazni podaci – obicno racunarske knjige imaju ta cetiri poglavlja:Upravljanje CPU-om, RAM-om, Ulazno-izlaznim uredjajima (misli se na disk), file sistem (podaci)

fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

Embed Size (px)

Citation preview

Page 1: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

1

Predavanje 04:

Razvoj racunarstvaGradivna jedinica prekidacIsti principi, ali se menja tehnologijaKrenulo se od jednog racunara, pa se siriloKao svemirski program danasHardware pre softwarePrvo racunar koji nije imao nista od operativnog sistemaVeliki racunari u krizi i poceli mali (mini, mikro) racunariManje, jeftinije, jednostavnijeVeliki mocan na 1000 ljudi, a mali je sporiji, ali samo nas, bolje za korisnike (mlazni avion, ili svako svoj bicikl)U teoriji OS-a korak nazadVelika ulaganja i razvoj OS-a na velikim racunaraima i sada se odjednom to uproscavaNajprimitivniji se razvijaju, i ponavlja se ciklusDva ciklusa, 80 se vracamo na 45, pa ponovo pocinje razvojImamo izmesljenu teoriju ali cekamo razvoj hw-a da bi implementiraliNT 4.0 ozbiljan sistem (on je stigao stare operativne sisteme)Potroseno dosta vremenaOS-spadaju u klasifikaciji racunarskih nauka izmedju HW-a i softwareMnogi pristupi u izucavanjuNajcesce koriscen pristup (80% knjiga) korisnicki aspekt (prakticni XP, 1000 trikova itd., nije za vise godine)Administratorski pristup (vrlo napredni korisnik), ali i dalje korisnikProgramerski aspekt, veza izmedju programera i HW-a,OS daje biblioteke i funkcije, a programer poziva sta mu trebaPrdefinisao profesiju programeraPostalo je nevazno na kom jeziku se programiraPostaje bitan korisnicki interfaceDobar programski jezik postaje onaj koji ima 10-ak naredbi koje rade algoritme i 100-ine naredbi za GUIPostaju programeri za WIN, a ne za FORTRAN ili CProizvodjacki aspekt (nesretna rec)-pravljenje OSDanas malo OS-ovaMi radimo teoretski pristup, gde nas zanimaju:

1. Problemi koji treba da se rese2. Algoritmi koji resavaju probleme

Posmatranje sa statisticke tacke gledista (ocena i poboljsanje performansi)-teorija ali ne sa aspekta samo algoritma, vec sa statistickog modeliranja (sistem koji se sastoji iz delova koji su povezani)Ranije je to bilo bar jedno poglavlje, a sada se to vec malo smanjiloDEF: Ima ih nekoliko:

1. OS je program koji cini HW upotrebljivim, (dostupan coveku, rad coveka na racunaru ugodnijim)-bolja definicija bi bila da ga cini prakticno upotrebljivim

2. OS je menadzer resursa (resursi racunara)-podrazumevaju se CPU, RAM, HDD i ulazni podaci – obicno racunarske knjige imaju ta cetiri poglavlja:Upravljanje CPU-om, RAM-om, Ulazno-izlaznim uredjajima (misli se na disk), file sistem (podaci)

3. OS je glavni deo sistemskig SW (podskup sistemskog SW, mada moze skoro da se izjednaci)-sw je skup naredbi koji govori racunaru sta da radi i deli se na aplikativni i sistemski, aplikativni sw je prirodna vizija sw-a, zbog toga se sve radi, da bi resilo neki nas problemSistemski sw cini hw malo prijateljskijim prema nama, omoucava da CPU koji moze samo da sabira, moze da mnozi, daje na fileove, a mi ne moramo da pisemo sektor 1, 23 itd.

Predavanje 05

Pojam Virtualne masinePrividna masina (nije realno, nego nam se cini)Dolazi se dosta rano do ovog pojmaNajelementarniji primerStari CPU i memorija (jednostavna masina) moze samo da sabira i to vrlo ogranicnoTipican CPU je bio 8 bita i sabira brojeve do 128 (8 bita -128 do 127)

Page 2: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

2

CPU rade jednostavne stvari (bez mnozenja i deljenja)Prvi bili 8-bitni (veci deo istorije)Sabirali su iz vise puta i na taj nacin sabirali i 32 i 64 bita itd.Sto je veci broj samo duze trajeMi pisemo programe koji sabiraju vise bajtova, sabiraju se pojedinacno i pamti se prenosRacunar vidi samo 1 bajtne brojeve ali mi programski resavamo sabiranje 4 bajta ili viseNama radi ono sto treba, ali ne postoji HW mogucnost sabiranja vise od jednog bajtaStalno nam ttreba tako nesto, a necemo svaki put da pisemo taj programcicPosto znamo da ce nam to strahovito cesto trebati mi zapisemo taj programcic u memoriju na mestu gde nam nece trebati memorija i napravimo podprogram i svaki put cemo da kazemo skoci na podprogram na adresi 500 i svaki put pisemo samo jednu instrukcijuMi mozemo da napisemo program u ROM memoriju tako da ostaje stalnoBolje je resiti da se ne pise skoci na adresu 500, tako sto cemo napisati u asembleru dodati jos jednu instrukciju koja ce se npr zvati ADD4 To nije instrukcija koja treba da se prevede na masinski jezik vec instrukcija koja znaci skoci na 500Virtualna masina znaci da je moguce lagati, to nije x6 CPU vec CPU x8 koji radi sve sto i x6 i pored toga sabira 4-bajtne brojeve pomocu instrukcije ADD4I to je onda virtualna masinaGde je granica virtualne masineDok se god ponasamo kao da je sistem crna kutija ne vidi se da je to virtualna masinaDa li je u ROM-u HW ili SW, skup instrukcija kao SW, ali je nepromenljivo kao HWPostavlja se pitanje gde je ROMMoguce ga je premestiti u CPU gde vec postoje neki ROM-oviGranica je nevidljiva, gde je CPU a gde SW nadogradnjaZavisi do kog stepena hocemo da pitamoSada mozemo svasta da dogradimoMnozenjeDeljenjeCPU + kompajler da posmatramo kao celinu i da kazemo kako je to nove genaracija procesoraHW + OS(SS) = osnovna VM tj. RacunarRanije je bilo razvodnjenije, moralo je da se naknadno instaliraKada se kupi racunar i OS to nije kupovina racunara vec kupovina virtualne masineKada se ukljuci u struju i pojavi se win, mi to smatramo praznom masinomJako je tesko dati preciznu def u ovoj oblastiMoramo se pozivati na intuiciju i dobro voljuKada se napise program u memoriju to je SW, ali ako je zapisan u ROM onda se postavlja pitanje sta se dalje desavaCip koji nema nikakvu funkciju osim da u njemu stoji SWMasinska instrukcija je u stvari programcic na nekom mikro jeziku

OPSTE KARAKTERISTIKE

Dosta veliki, dosta komplikovani i dosta jeftini programi.Veliki a jeftini deluje paradoksalnoVeliki a komplikovani je u skladuMora da bude na svakoj masini, pa se prodaje u velikim kolicinama, a mnogo da komunicira sa raznim HW pa je kompleksan a samim tim i velikVec ranije placen DOS, pa mi imamo privid da je besplatan (proizvodjaci HW-a)Stice se utisak komplikovanosti na osnovu mesta koje zauzme na HDD-uOperativni sistem sakriva komplikovane cinjenice (avion i slovo ‘A’)Nemoguce je doci do golog HW-a

Predavanje 06

Kompleksnost se meri covek-godinamaNecemo meriti broj naredbi, jer ima raznih algoritamaC-G je program koji covek napise za godinu danaLinearna ideja 1 covek 40 god ili 40 ljudi jednu godNe moze tako linearno, 1 covek ne moze nikad da savlada nesto, a 10 ljudi moze za 4 godineOno sto covek moze za 40 godina ne moze 40 ljudi za godinu zbog organizacijeIpak se uzima da bude linearno

Page 3: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

3

OS su kao vazduh, korisno a skoro besplatnoSa tastature na ekran nije direktan procesTastatura je niz horizontalnih i vertikalnih zica i kada mi pritisnemo taster dve se spojeDva procesora, 1 salje napon na horizontaln zice, i jedan koji cita napone sa vertikalnihKomunikacija tastature i racunara, serijski port (start i stop bit)Oscilacije nema idealnog prekidaca

ISTORIJA OPERATIVNIH SISTEMA

Kroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanostIstoriju cemo da iskoristimo da pokrijemo i neke koncepte

Moze se nazvati ISTORIJA I OSNOVNI KONCEPTI

U pocetku nema OS-a (mozemo da vidimo sta tada moramo da radimo)1945 ENIACVreme HW-aPrvi racunari su smesni, slabiji od najslabijih mikroracunara 1kb, 100 Hz-aOgromna revolucija jer ih treba uporedjivati sa onim pre, a ne onim posleSluzbenicko zanimanje racunar (covek koji racunar, nije matematicar)Problemi koji zahtevaju mnogo racunaSale sa 100 ljudi koji racunaju, po trojica ili petorica radi kontroleCovek nekoliko na minut a racunar nekoliko 1000 na secNe umara se i ne gresiJedina situacija u istoriji gde se radilo sa golim HW-aPrirodni ulazni uredjaji prekidaciPrirodni izlazni uredjaji sijaliceProgrami se pisu na masinskom jezikuKada je napisan program, postoji problem unosenja u racunarNiz prekidaca i niz sijalicaZa osmobitni racunar8 prekidaca i 8 sijalica za podatkeAdresni prostor 1 kb 10 sijalica i 10 prekidacaKontrolni deo gde prekidaci kazu napuni, procitaj, startuj, radi i sijalice koje to pokazujuNapuniti od adrese 100 do adrese 500 i mi punimo adresu po adresuGrozna procedura, unosi se na masinskom, cita sa masinskomNedelju dana prekidaci ili godinu dana racunanjeResavaju se problemi koji nisu ranije mogli da se rese i ne razmislja se o OS-u

Predavanje 07

Stvari koje stalno trebaju:1. Izracunavanje (male kolekcije racuna iz kojih se kasnije razvijaju kompajleri (50-ih FORTRAN-prvi visi programski

jezik))2. Kontrola racunara (brisanje memorije, rad sa busenim karticama(19 vek, tekstilne masine)) opsluzivanje periferija

Prica o popisuUbrazanje u odnosu na prekidace, citac i busac karticaStalno nam treba mali program koji upravlja citacem i busacem karticaPriprema racunara za neki posao, gubljenje vremenaU pocetku je osnovni kriterijum optimizacije bolja iskoriscenost CPUU pocetku racunar je sve, a covek je nistaStalno odnos covek-racunar, a menja se kome treba optimizovati koriscenjePrvi koncepti OS-a je batch obrada (prvi ozbbiljni OS, zadrzali se decenijama)Iz pekarstva-znaci celina partijaBatch obrada-automatizovano prelazenje izmedju poslovaOS se usavrsi i dobija komandni jezik (zadrzali decenijama), danas makroi i batchevi u DOS-uOnline i offline poslovi koji se rade na racunare ili ne na racunaruRanije je offline bio jako pozeljan jer se ne trosi CPU vremeBusene kartice bile offline i bile jako pozeljneMasina za busenje, kao pisaca masina (jeftinije od racunara, mnogo puta)

Page 4: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

4

Komandni jezik koji se sprema offlineMoze da radi bez zaustavljanjaRacunar vise ne mora da stoji jer je covek sporDanasnji ekvivalent batch-a je background obradaPogledaju iznutra i vide skrivenu neefikasnost (CPU stoji preko 90% vremena prazan)CPU i RAM jako brzi, a IO uredjaji uzasno spori (citac kartica, 20 u s jako brzo ali jako sporo za CPU)Mehanicki uredjaji jako spori za elektronskeProsecni tipicni program zahteva IOTrazeno resenje za paralelizaciju, da 100 ljudi hrani racunarMultiprogramiranje 50-ih godina, najveci efekat na OSDati CPU-u da radi nesto drugo dok se vrsi IOU memoriji treba imati spreman drugi program za izvrsavanjePrava teorija OS-a tu pocinjeBolja iskoriscenost CPU-a (sa 10 programa je skoro 100%)Komplikuju se OS (sada se pojavljuje upravljanje resursima)60-ih je doslo do tacke kada ljudi postaju vazni (da li im je tesko, da li su zadovoljni)

Predavanje 08

60-ih prestali da budu cudo, sire koriscenjeOrganizacija je potpuno nezgodna za veliki broj korisnikaProblem sa batch obradom je trosenje mnogo vremena (mesec dana za posao od par sati)Korisnici to rade na papiru i imaju formulare, u kojima je sve propisanoTi formulari se nose u RC gde ce da se otkucaju na kartice (kucaju ljudi koji nemaju pojma sta kucaju, ne zna ni engleski ni FORTRAN, i prave greske)Kada se otkucaju kartice, one moraju da se izvrse, nose se u predmasinsku saluOnda postoji sintaksna greska, pa sve ide nazadKompajleri su mnogo manje pametni (nece da radi i u 99,9% poslace besmislenu poruku)Trazi se greska, sto je jako napornoKucaju se nove karticePonovo sintaksne greske, i onda ispravljamo logicke greskeJedna iteracija traje nekoliko danaGubi se mnogo vremenaMnogo korisnika koji imaju po malo da racunaju, a predhodna situacija je bila malo korisnika sa velikim problemimaNa jednom mestu ogromna snaga, a nama treba manja snaga na mnogo mesta (autobus sa 50 mesta)Time shering sredina 60-ih (ogroman mocan racunar koji treba podeliti na 500 malih)Nemoguce ga je podeliti prostorno, ali moze vremenskiMultiprogramiranje je uslov za timesheringSvaki korisnik ukrug dobija 2 msKorisnik ne vidi da on nije jediniSvaki korisnik na svakih pola sekundi dobija 2 msKao da imaju 500 puta slabiji racunarRazvoj drugacijih perifernih uredjaja, kao sto su terminali (tastature i ekrani)Moglo bi da funkcionise i sa karticama, ali je nezgodnoIzmisljen je PC 10-15 godina pre pronalazenja malih racunaraOS postaju komplikovaniji60-ih godina se javlja pojam virtualne memorijeVirtualna memorija je prosirenje fizicke memorije na disk (prosirenje RAM-a)Mi bi hteli mnogo memorije koja je skupaTreba ih mnogo i zbog multiprogramiranjaCPU moze da komunicira samo sa RAM-om (uzima stvari sa diska i stavlja ih u memoriju)Disk je mnogo jeftiniji, ali i sporijiStroga definicija je razdvajanje programerskog dela memorije od fizicke memorije (od RAM-a)Programerski model je jedno, a fizicka memorija druga stvar (ne ogranicavamo se zakonima RAM-a)U istoriji smo prvo pokusavali da suzimo memoriju (paradox)Tipicne memorije su bile u kilobajtima (128, 256)Ona je mala ali je takodje skupa (a ako to uzimamo kao osnovni kriterijum)Ne daje se jednom programeru cela memorijaSvaki programer moze da ima program od max 64 kb (lazemo na drugu stranu)Programerova virtualna memorija (on vidi od 0-64kb)

Page 5: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

5

Oni ne moraju da oznacavaju od 0-64, ili od 128-192, time se bavi OSZgodno je ako su programi manji od granice (< 64kb)Stanje se preokrenulo, programeri zamsiljaju da imaju vise, nego sto ima RAM-aPosto je to tako jako dugo, obicno se uzima da je virtualna memorija prosirenje fizike memorije, ali u stvari to je razdvajanje, bez obzira na smerPojava mini racunara, i krah velikih racunara (kraj 60-ih) – prvi put da je doslo do necega bitno novoga, do sada je linearno, a sada je skokSpustanje na dole (sa konja na magarca)Problemi oko razvlacenja terminalaPocinje svaki odsek na univerzitetu da dobija svoj racunar, koji se deli na manji broj korisnikaRazlike u klasama za red velicine (miniracunari i racunari) 10 x jeftiniji, 10 x sporijiFizicki je manji (nije soba nego dva-tri ormana)Kod velikih je dominirao IBM, a kod mini DECOS se smanjuju i postaju jednostavniji

Predavanje 09

Dve revolucije1. 70 godine – prvi deo kraha velikih racunara (mini racunari postali dominantni)2. 80 godine – kompletni krah velikih racunara

Kriza u razvoju programskih jezikaPodela:FORTRAN za tehnicke primene (kraj 50)COBOL za poslovne primene (kraj 60)Ideja da se napravi nesto bolje, da se objedini, sto je bila losa ideja (losa dijagnoza)Problemi koji dolaze od postojanja F i C:

1. Zaposljavanje2. Obrazovanje3. Knjige4. Konferencije5. Racunari

Pravljenje jednog programskog jezika koji bi bio dobar i objedinjenNastao PL1 (Programing Language 1)Alfa i omega-nista pre ne valja, nista posle nece trebatiCOBOL se nije bazirao na aritmetici ali je dobro radio sa trakama (na njima su bili zapisi o racunima za struju)COBOL je bio dobar i za stampanje racunaImamo veci i sporiji kompajler (negde ne moze ni da radi)Duplo duze skolovanjeDuplo vece knjigeSvi rade kao i do sadaParalelna stvar kao i sa programskim jezicima se desila i sa OS (kraj 60-ih)Operativni sistem multix(slicna razmisljanja kao i za programske jezike)Napraviti veliki OS u koji bi bilo ugradjeno sve najnovije i najboljeVelike organizacije:

1. MIT2. Bel Labs3. GE

Previse zvezda = slaba utakmicaMIT ostao samPredugo je radjenElementarne stvari nisu uzete u obzirOS je postao sam sebi svrha, iako je on ustvari nuzno zloOS koji nije bio idealan je trosio 10% resursa a ostalih 90% deli korisnicimaMultix je trosio 90% resursa (savrsen ali skup menadzer)Krajem 60-ih PL1 i Multix su veliki promasajiNastaju znacajne stvari kao reakcija na ta dva dogadjajaNastaju Unix i C (1970 – 1971)Dokoni Keningem, Rici koji imaju krs od kompa pokusavaju da naprave igricu iz koje nastaje UNIX koji je bilo zgodno napisati na C80 dolazi do nove revolucije sa mikro racunarima (pocinje se ispocetka)

Page 6: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

6

Prvi mikro procesor napravljen 1971, ali slucajnoVeliki racunar 1 000 000$, mini 100 000$, mikro 10 000$Sve je manje za red velicineRevoluciju izazvao Synclair jer je napravio ZX 80 koji je kostao 100$Postaje kucni racunar, prodavali se kao poklon pred novu godinuImao BASICVezivao se na TVImao grafikuSiroka dostupnostZaista velika revolucijaPostojale i negativne posledice:

1. BASIC dosao na los glas (bio u ROMU, jer nisu imali disk) – ljudi konstruisali avione kod kuce, a BASIC nije predvidjen za to

Ideja sa Multixom je bila da svaki grad ima RC, (kao vodovod i TV)Monopolisticka ideja o placanju bajt po bajtMikroracunari poremetili tu idejuPC je bio reakcija na toEngleska bila centar svega (pre i posle Amerika)PC je gurnuo to u kancelarijePrvo revolucija kucnih racunara, a zatim u kancelarijeOS su se vratili unazad jer su poceli da se izvrsavaju na primitivnim HW(40-e godine) (nema virtualne memorije, nema multiprogramiranja)Kako se HW razvija mi unosimo sve vise starih stvari dok nismo dosli na nivo sistema s kraja 70-ih (sredina 90-ih NT 4.0)Teorija stagniraOnda razvoj ide daljeResavaju se isti problemi ali sa novim kriterijumima optimizacijeRanije se trazila sto bolja iskoriscenost HW, a sada se trazi sto udobniji rad korisnika i omogucavanje rada sto neukijem korisniku

Predavanje 10

Dva znacajna dogadjaja:1. Racunarske mreze (povezivanje pocelo krajem 60-ih) – sredina 90-ih internet2. Multimedija (znacajni efekti poslednjih godina) – nastala razvojem algoritama i matematickih metoda, a ne

razvojem HW-a (kompresija)U pocetku su se mnogo vise racunari koristili za racunanje, a prelaskom u kancelariju su postali unapredjene pisace masine, a sa pojavom interneta postaju kao enciklopedija

ISTORIJA POZNATIH SISTEMA

Verzije SW-aCelobrojne oznake oznacavaju krupnije promene (1.1, 1.3, 2.0)Uvedena i druga decimala (bas sitne promene)Vremenom su to trgovci (marketing odeljenje) to upropastili, zbog kupaca (uporedjuju verzije razlicitih prodavaca)Prvi sistem koji ima smisla spomenuti je UNIX (1971)Revolucaniorne stvari:

1. Prvi OS napisan na visem jeziku (jos dugo posle toga (15-god) je radjeno na asembleru)-C-najnizi visi programski jezik, koji je blizak masinskom

2. Tretirani svi uredjaji na isti nacin (RAM, HDD, tastatura)-virtualni fajloviZivot im je omogucila cinjenica da su pripadali BEL labs (bili su previse programerski orjentisani)Monopolist na telefoniji, nisu mogli da komerzijalizuju (tranzistor) pa su delili univerzitetima (cak i izvorni kod)Na univerzitetima se sve razvija jer na master i phd ima ljudi koji rade za dzNa taj nacin su se C i UNIX razvijali (U bel labs samo krenulo a na univerzitetima razvoj)Postajao sve veci, ali je gubio od pocetne elegancije i brzine (u pocetku je jedan covek mogao da bude majstor)Verzija 6.0 najpopularnija (bela knjiga) – oko 6000 naredbi (poslednji koji je mogao ceo da se razume)X na kraju je oznacavao derivat UNIX, IX, MINIX, LINUXPoznata verzija BSD – Berkley Software Developer – nadogradili za Internet (TCP/IP, socketi)Ta verzija se mnogo sirilaBell labs je dobio mogucnost da to komercijalizuje- (izgubili monopol na telefoniji)To je kvarilo koncept UNIX-a

Page 7: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

7

Ranije je bio problem kada neko doktorira on ga bataliSada je postao kvalitetniji, ali se nije vise tako razvijaoPoslednja zvanicna verzija System File realase Core (FVR4) – otprilike kao verzija 5.4Dobar sistem koji je trebalo da radi na PC-u (kraj 80-ih, pocetak 90-ih)Radilo kilavo na PC-u (386) i kostao oko 1500$SCO-Santa Cruis Operations – da komercijalizuje nadogradnjom driveraPostdiplomci su bili zatvoreni u svoje labaratorije i orjentisani na mini racunare i nisu imali mnogo sluha za prebacivanje na PCPisali su drivere samo za jednu video kartu koji nije bila narocito popularna, ali su oni smatrali da je najlepsaSCO imao vise drivera, ali su uzimali starije verzije UNIX-a (podvala sa cetvorkom 5.4, a oni 4.0)Teska vremena za U jer su PC preovladali a U je za mini racunarePojava Win NT-a koji je bio pristojanProdat Novell-uN nije imao nameru da razvija UN imao monopol na mreznim OS za PCN je hteo da kupi U i da ga baci (eliminisanje konkurencije)Prodali ga SCO-u (i dan danas njihov)Povremene tuzbeDobio novi zivot koji je poceo sa MINUX-om 1990Tanenbaum ga pravi sa zahtevima da bude dobar za fakultete, da bude mali, da moze da se nauci ceo (kao verzija 6)Razlika u primeni (1975 avangardni OS gde su ljudi motivisani da rade na njemu, a sada je mrtvo skolsko sredstvo)Nisu htele mase da ga rade kao verziju 6 1975Sluzio kao pocetni inicijator za LinuxLinus Tovarlds (finski student) je nastavio tradiciju MINUX-a ali je hteo da bude praktican, da moze da radi na PC-u, da radi sa svom HW-uOpet avangarda i velika motivacija da se radi na njemuNije originalni UNIX, vec je napisan ispocetka, ali se temelji na U principimaVremenom ostali samo L i W Povecavao % ali nikad znacajno (nije toliko pogodan za krajnje korisnike, ali ipak bolji od U)Stagnirao na niskom procentu, a sada mu zamajac daju drzave i gradovi koji kompletno prelaze na LinuxRazlog sto je besplatan i dozvoljen je izvorni kod (bezbednost)MS dozvolio izvorni kod za drzave

Predavanje 11

Razlicite distribucijeLjudi ga kontaju kao razlicite jer gledaju samo GUI, ali je to manje vise istoLinux ima textualno orjentisan konzolni interface a kasnije je nadogradjen GUI (Exwin)Unix je nastao na mini racunarima koji su blizi velikim nego malimMikro racunari su evoluirali u PCOperativni sistem za mikro racunare CPM i proizvodio ga je digital researchSinclair je sve “pokvario” svojom igrackomLjudi nisu vise zavisili ni od koga sa pojavom Sinclaira1981 IBM-ov odgovor sa PC-em1980-1981 nisu imali OS vec su u ROM-u imali neki vid toga i BASICDigital research je potcenio potrebe trzista i nije hteo da pravi OS za tako kratko vreme i za male pareDR je sebe zakopa tom odlukomIBM je poceo da saradjuje sa GatesomGates kupio OS od komsije, i prodao ga IBMPC DOS – sklepan na brzinuKrenuo sa verzijom 1.0 koja je dosta kratko trajalaIBM je izgubio monopol a za te ostale je MS poceo da isporucuje OS MS DOSBili isti a sa gubitkom IBM monopola MS DOS je poceo da preuzima primat a PC DOS je otisao u zaborav1984 sa AT racunarima DOS je poceo polako da bude neadekvatan (80286)640 kb moze da adresira, a to nece nikada nikome trebatiUsko grlo, AT je mogao da adresira 16 MbIntel 80286 je bio zapamcen kao najlosiji CPU, ali ne svojom krivicom, vec zbog loseg OS-aVerzija 3.0 podrazavala HDDNaknadno se ukljucio DR kada je video sta se desiloIgra sa verzijama (MS DOS 4, DR DOS 5)

Page 8: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

8

DR kasno stize, nije nikada usao u prakticnu upotrebuKraj MS DOS-a sa verzijom 6.22Nastavio da zivi dalje kroz WinJedan od igraca u to vreme je bio i NovellZauzeo monopol na mreznoj sceniKomplikovan i skup sistem koji je 10-ak godina kocio razvoj LAN-aVezano za 80-e, dok je DOS na individualnim, Novell je na mreziWin sve to zamenjujeDva pitanja

1. UI2. OS

Razne kombinacije, napredan interface na nazadnom sistemu i obrnutoUNIX dobar sa slabim InterfaceomXerox je zasluzan za GUI (mis)Istrazivacki centri uz velike kompanijeX je to drzao na experimentalnom nivouPrvi racunar sa GUI je Lisa 1983 (zadrzao kratko samo 1 godina)1985 pocinju MacApple je poceo sa kampanjom kako sve od njih pocinje, i to je islo do nekih potpuno nerazumnih obecanja (pocetak sveta, ono pre potpuno neupotrebljivo, radice i nepismeni)U prvo vreme su se isporucivali bez tastature?!! (extremizam)Buran period kraj 80-ih na nekih 10-ak frontova bespostedna borbaOstra podeljenost i netrpeljivost izmedju Mac i PC-aPC preovladao, jer toliko naglasavanje GUI i misa je bilo kontraproduktivnoPrimer pisanja knjiga i radovaPrevise forsiran GUIGUI stekao popularnost pa je MS resio da odgovori (nadogradnja svog sistema)Win verzija 1.0 1985-86Bio uzasan i nikakav efekat na realan svet88-89 Win 2.0 i isto tako neupotrebljivoRazlaz IBM-a i MS-aIBM je zastupao ideju da se napravi ozbiljniji OS (da se DOS penzionise) sa GUIMS se unervozio klrajem 80-ih i zakljucio da ce predugo da traje i da treba skrpiti nesto sto ce poboljsati win (da se prezivi) a da se razvoj odvojiIBM i MS se nisu nagodili i doslo je do svadje i odvajanjaPojavljuju se sa posebnim proizvodimaMS Win 3.0 – veliki uspeh (1990)IBM OS2 – veliki neuspehIBM nastavlja arogantnu politiku da bi sve podredio sebi (graficke kartice, OS2 radi samo sa IBM grafickim)Win 3.0 prevazisao Mac (monohromni) a win u bojiPoboljsao i DOSPitanje printera i video karte se resava u OS sa driverima, a ranije je bilo na nivou programa (text procesor i program za crtanje), svaki je morao da prepoznaje svaki printer i video kartuPojava karata kao jedine prakticne aplikacijeCeo svet se zarazio (igranje karata)Sledece godine 3.1 gde su vec svi presli na WinPosle 3.11 koja je znacajna zbog dodatka WFW (Win for workgroup) win za mreze – kraj Novella (za 80$ je moglo da se kupi ono sto je ranije kostalo 10 000$)Nije bilo za servere ali je bila drasticno jeftinijeNastavak razvoja boljeg OS-a, angazovani ljudi iz kompnije DEC koji su pravili Vax racunare (mini racunari) i koji su propadaliPC je stigao po HW-u mini racunare i oni prave Win NT 3.0 (nema manjih verzija)U pocetku nije bio preterano uspesanBio je po principu UNIX-a Virtualna memorija, multiprograminigIma prozoreIzgledaju isto ali je jedan prosirenje DOS-a, a jedan noviBio je sporiji, narocito za igreBolji za ozbiljnije stvariBezbednost je bila vecaOS3 je bio jako dobar i bio je za dz ali bilo je kasno

Page 9: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

9

Od sredine 90-ih dominacija MSDve grane:

1. Kucni korisnici, nadogradnja DOS-a (prvo se instalira DOS, pa Win)-DOS nastavio da se razvija kroz win, postajao sve manje vidljiv kroz njih se razvio win 95, 98, sada su service pack u stvari verzije

2. NT 4.0 a onda je presao u win 2000Win ME je nasledio 98Win 2000 je nasledio NT 4.0Od pocetka je isla prica da ce to da se spoji (proslo je 10 godina)XP je to objedinioKucna je izumrla, XP je naslednik NT-aDOS je nastavio da bude u prozoruXP je pravi OS, ali se prilagodio, omogucio direktan pristup HW-u (graficka i igrice)Izasli SP1 i SP2Longhorn, tj. Vista

Predavanje 12

Prica o besplatnom i placenom software

Predavanje 13

ODNOS OPERATIVNOG SISTEMA I KORISNICKOG INTERFACEA

Kod najsire publike se izmedju toga ne pravi razlikaNa svaki OS moze da se stavi svaki UIOS pre svega dela prema odnosu prema multitaskingu i prema stepenu zastiteVrste:

1. Najjednostavniji koji nemaju multitasking (obicno se ni ne zovu OS, vec monitori, kontrolni programi) – DOS ipak citav niz problema koji lice na multitasking (aplikacija i OS)Sakriveni multitasking (nedokumentovani)Nedokumentovani delovi OS kod MS da bi ostali teze pisali SW za win, USA vlada ih tuzilaTSR – Terminate and Stay Resident – svaki program bi trebalo posle izvrsenja da ode iz memorije, ali ova komanda zavrsava program i ostavlja ga u memoriji sto je osnova multitaskinga jer ih je moguce pozvati kasnije-veoma prosirilo DOS (multitasking mogucnosti)Ranije smo morali da otvaramo i zatvaramo (text editor, kalendar, calculator)Povecavanje produktivnosti korisnikaNa pocetku napunimo memoriju programima koje cemo koristiti, tako sto ih pozovemo da ne urade nista (samo da ostaju u memoriji)Kasnije preko tastature zovemo jedan po jedan

2. Imaju kooperativni multitasking – ima ali moraju da rade kooperativno, sto nije izvodljivo jer programe pisu razni proizvodjaci, moraju da se izvrsavaju kooperativno (aplikacije umesto sistema brinu o multitaskingu), “sebicnost programa”Radio je samo sa MS SW

3. Imaju klijentski multitasking i multiprogramiranje ali je OS gazda (on prepusta kontrolu, ali je uzima nazad bez pogovora)

Moze bilo ko sa bilo kim (OS i UI)Podela UI-a:

1. Konzola, operaterska, koja je bila kao pult i imala je glavu za stampanje i rolnu papira, stampa se i nema povratka nazad (linijski komandni interface) – neudoban za rad, ali je decenijama bio jedini (textualni ali linijski)

Predavanje 14

2. Ekranski textualni interface (sa pojavom terminala), omogucava setnju, za razliku od papiraTerminal 80x25Ogranicenja na slovaOvo je znacajniji skok (sa linijskog na ekranski nego sa ekranskog na graficki)Moguce je na primitivnom U pokrenuti nekoliko konzola izmedju kojih se setamo (primitivni prozori)Moguce je imati i grafiku, ASCII je prvo bio 7-bitni a kasnije je prosiren na 8-bita i na taj nacin su dobijeni novi karakteri, koji su mogli da se koriste zza grafiku (tu su i nasa slova)Programeri pravili grafiku s zvezdicama

Page 10: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

10

********* ** ** *********

Cim je ekranski orjentisan sistem moguce je koristiti misa (ne zahteva grafiku)Sistem menija (ne zahteva grafiku)Dugacka imena fajlova (mogucnost informativnih imena), ali je problem sa kopiranjem (treba kucati dugacko ime)Pocetkom 90-ih je postojao desk view (nadogradnja DOS-u kao win, koji je bio bolji i kvalitetniji i koristio je textualni mod)Win je bio sporiji dosta zbog te grafike (npr pisanje pisama)

3. Graficki – razlika je samo vizualna, ali trosi mnogo resursaKada se razvio HW da je ta grafika postala neosetna, onda je uzela maha jer je ipak bila lepsa

ODNOS OPERATIVNIH SISTEMA I PROGRAMIRANJA

Jedna od osnovnih ideja kod visih programskih jezika jeste da se dobija masinska nezavisnostLakse za ljude (prevodjenje sa jedan na mnogo)Koliko CPU – a toliko masinskih jezikaPreko programskog jezika se to unifikujeSvaki CPU svoj kompajlerDok je izlaz bio textualni bila je masinska nezavisnostKada ima grafike, mora se oslanjati na dodatkePostalo je vezano za OSOS je poznavao HW i nudio je pristup HW kroz serviseU pocetku jednostavne (odstampaj karakter), a kasnije slozenije (pomeri kursor za pet mesta ulevo, promeni boju)Kada se programira moraju da se pozivaju ti servisi, a to su delovi interface-a OS, koji moraju da se uceSve vise stvari moraju da se uce (mesec dana za programski jezik i godinu dana za funkcije OS – a)Da nema OS-a igrali bi se sa pixelima, sto je gora kombinacijaProgramiranje gubi smisao (nema pascal i c programer vec win i os2 programer)Spas je bio u vizualnim kompajlerimaKod bude automatski generisan od kompajlera (programer bira boju, a kompajler generise kod i oznaku za boju)Programiranje se vraca na ono sto je bilo zahvaljujuci vizualnim kompajlerima

Predavanje 15

KOMPONENTE I STRUKTURA OPERATIVNIH SISTEMA

1. Monolitni sistemi u pocetku (nepravilni)Nema prave organizacije (sve ide kako programeru padne na pamet)Programer pise komponentu po komponentu (kao veliki programski projekat)Manji projektiMnogo povezanih delova koji se kasnije kompajliraju u jedan objekatNa manjim projektima ovo funkcioniseSve je sakrivenoTakvi su bili stariji i manji sistemiNekad je to brze i efikasnije i lakse je da se tako napravi na manjim projektimaAko hocemo da sirimo, nastupaju problemiSkup procedura gde svaka moze da poziva bilo koju druguVelika zbrka

2. Slojeviti operativni sistemiTHE – visoka inzenjerska skola i MULTIXKoncentricni krugovi (neki ga tako nazivaju)Nece se praviti bez redaUvodi se organizacijaNajnizi sloj ili centralni krug je KERNELNajuzi deo OSNe mogu se precizno definisati graniceObicno upravlja CPU-omCPU-ovi daju podrsku OS-u jer imaju vise modova

Page 11: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

11

Modovi su rezimi rada gde je u nekim sve dopusteno, a u nekim nije sve dopustenoKoliko ih ima i sta je dopusteno, to variraUvek ima jedan najnizi koji se zove kernelski mod ili sistemski mod (Puna snaga CPU-a gde moze da se radi bilo sta)Iznad ima jedan ili vise mod u kojima nije sve dozvoljeno koji se zovu aplikativni, korisnickiKada se startuje racunar on krene u kernelskom modu I na taj nacin on zadrzava kontrolu, jer ne da nikome da udje u kernelski modAko se podje od toga da je OS samo program, i da je aplikacija program, sta vraca OS-u kontrolu?Sat moze da se navija samo u kernelskom modu i zato je OS glavniIdeja je da se funkcije OS-a podele na slojeve i da nizi imaju visu kontroluCPU je obicno na najnizem nivou, dok je memorija na malo visem nivouDobra ideja koja je prihvacenaMalo manje je efikasna, jer se delegira, i gubi se vreme u trazenju da se nesto uradi i vracanju rezultata (i danas su u upotrebi)

3. Sistemi sa mikro kernelom-ista ideja kao kod slojevitih, samo se kernel pravi sto manji (mozda samo upravljanje CPU-om)Prednost mikro kernela je sto je taj deo mali i lako se kompajlira, nezavisan je od drivera (mozemo da instaliramo druge drivere za graficku karticu)Ostali delovi se mogu naknadno dodavatiProblem je sto ostali delovi onda idu u korisnicke slojeve, pa se vise gubi na komunikaciju

4. Virtualna masina-(HW dogradjen SW-om i predstavljen kao VM)Ovde je osnovna ideja umnozavanje HW-aS jedne strane je to unapredjen timesheringSimulira ceo racunarDaje se iluzija da korisnici imaju kompletan racunarOS SW-ski dogradi iluziju cele masine i to smatra HW-omPrvo napravi nizi deo koji je simulacija HW-a i onda odande pocinje OSMoguce je instalirati razne OSProduzenje ideje timesheringa, ali je dovedeno do kraja, jer se to uopste ne vidiPocelo od IBMNa novijim intel CPU, postoji virtualni mod (od 386)On moze da simulira vise starih 8086 masina, vise DOS masina, tako da je moguce pokrenuti vise DOS sesijaI dan danas se koristi i svi danasnji CPU imaju to ugradjenoMoguce je koristiti i za druge stvari, moguce je simulirati jedan racunar na drugomEmulacija PC na Mac-u (za PC ima vise programa)Ako se emuliraju 4 iste masine, to je relativno jednostavnoAko se emulira jedan CPU na potpno drugacijem CPU, onda je dosta sporijeEmuliranje starih racunara (stare igre iz nostalgije)Virtualna masina za prilagodjavanje pojedinim programskim jezicimaPoceto sa LISP-om (star jezik koriscen za AI)Bio pozeljan sto jaci HWDoslo se do ideje da se HW prilagodi LISP-uLISP je cesto bio implementiran kao interpretator, pa je bio jos sporijiLISP prilagodjene masineBilo je takvih ideja i za druge jezike (PASCAL) radi uniformnostiQ-PASCALKompajler koji radi na masinama koje su dobre za PASCALKopija nekog stvarnog ili neki izmisljen CPUImamo odlican kompajler i jedan medju slojMoze da se kompajlira do nekog medju koda (Q koda, a ne do masinskog jezika) i da se nosi na bilo koju masinuJava VM (Portabilan)Znacajan za internetPrevodi se na Java bajt kodDodatni zahtev je sigurnost, jer je kod izolovan u JVMNeke stvari ne mogu da se rade (komunikacija sa lokalnim fileovima)

5. Sistemi koji rade u realnom vremenu (Real time system)Sistemi koji kontrolisu realne procese (avion, centralu, fabriku)Mora pravovremeno da se zavrsi neka akcija (zatvaranje ventila)DEF: Sistem radi u realnom vremenu ako za sve njegove akcije moze da se definise krajnje vreme izvrsavanja (dokle ce sigurno da bude gotovo)

Page 12: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

12

Ne mora da bude brzo, ali mora garantovanoMora bez obzira na uslove da garantuje vreme (bez obzira na opterecenje)Koriste se u industriji

Predavanje 16

HARDWARE-ska PODRSKA OPERATIVNIM SISTEMIMA

HW i SW uzajamno uticu jedan na drugiLjudi su uvideli da je programe dobro razbijati na podprogrameHijerarhijaLakseSamo ono sto staje na stranicuDa bi bilo podprograma potrebnaje HW podrskaNa prvim CPU-ima dosta nezgodnoProblem povratka na program koji je pozvao podprogramPrimer sa 4-bajtnim sabiranjemCitanje svoje pozicije i kada se pozove podprogram prosledi mu se i trenutna adresaDva programa pozivaju podprogramPodprogram pooziva drugi podprogramDolazi se do ideje StekaPUSH i POP (PULL)Adresa se stavlja na stek kada se poziva podprogram, i vraca se ta adtresa po izlasku iz podprogramaBez HW implementiranog steka nema podprogramaBitno je da OS ima takvu podrsku i nesto malo jaceOvo je pod kontrolom programeraZa OS je potrebna interakcija sa realnim svetomNije vise pod kontrolom programera vec OS treba da podrzava ove poziveOvo se zove sistem prekida (interrupt)Paralelan sistemu podprograma (u velikoj meri)Prekidi su specijalna vrsta podprgrama, ali postoji sustinska razlika “Podprogrami se zovu od strane programera onda kada on to hoce”Sistem prekida deluje pod kontrolom spoljnih dogadja, bez znanja racunara i programera, i to se desava u proizvoljnom trenutku i proizvoljnim redomStanje racunara se mora sacuvati bolje nego kod podprogramaKod podprograma je trebalo sacuvati samo adresu podatakaRazni registri unutar CPU-a (akumulatori)Moraju se sacuvati registriDve vrste prekida, brzi (ne dira registre da ne moraju da se pamte) i spori (gazi registre jer se cuvaju u memoriji)Moze da se desi i ako se sve sacuva da opet ne bude ok (instrukcija skoka)Prekid kod uslova (ne zna se sta je bio uslov)Moraju se sacuvati i flegovi (pojedini bitovi koji registruju stanje, da li je poslednja operacija bila nula, da li je bilo prekoracenja itd.)Mora se sacuvati kompletno stanje procesora i to se zove PSW (processor status word)PSW – skup tih bitova Flagova a tu mogu da budu i akumulatori i uvek mora biti adresa povratkaNa raznim CPU-ima se to implamentira na razne nacine, ali ga moraju imatiOS se baziraju na sistemu prekida i CPU to mora da omoguciPostoji na CPU-ima jos jedna podrska – SW prekidi (SWI)SWI – podprogram (nije prekid), ali se zove prekid jer nije klasican podprogram koji je pozvan od strane programera kada mu treba, vec su to podprogrami koji imaju izvesnu HW podrskuSWI – unapred dogovoreni podprogrami (predefinisani i podrzani od HW)Proizvodjac HW-a daje nekih npr 128 podprograma koji su zajednicki za sve i koji su podrzaniObicno se stavljaju na vrh memorije (0 adrese – niska adresa)Napravi se neki stepen dvojke (64, 128 ili 256 podprograma)Oni zauzimaju adrese od 0 i zovu se SWI1, SWI2, i adrese su ima 0, 4, 8, 12 itdNa tim mestima se cuvaju adrese, a podprogram moze biti negde drugde u memorijiSvi znaju gde su (niske adrese), sto je fiksno, ali imaju pokazivace na mesto u memoriji (moze biti bilo gde), sto je flexibilnoTu stoje stvari koje imaju veze sa OS (procitaj tastaturu, stavi ovaj karakter na ekran)NPR. SWI2 je procitaj tastaturu

Page 13: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

13

Postoji i fixirani deo (svi znaju gde da traze) i flex deo (mogu da se unapredjuju tastature)DOS se na tome baziraoBIOS (do njega se dolazi sistemom SWI)Virtualna memorija zahteva HW podrskuGenerisanje OS-a – prilagodjavanje konkretnom racunaruIsti os na razlicitim masinama bice razlicitOS je komplikovan jer mora da ima mogucnost prepoznavanja razlicitog HW-aInstalacioni paket je samo potencijalni OS jer on u sebi ima podrsku za razni HW, a tek kada se instalira on se prilagodi konkretnom HW-u (generisanje, tj. Instalacija (blazi termin))Na mini racunarima procedura koja je mogla da traje dva danaSada jednostavno (ubaci se CD i opusteno)

PODIZANJE OPERATIVNOG SISTEMA

Kako se od nule dolazi do podignutog OS-aVisestepena procedura – bootstrapovanje (podizanje OS-a)Prvo pravilo – svaki sistem mora da ima trajnu memoriju (mora da ima dve memorije trajnu i obicnu)Trajna sluzi za inicijalizaciju (nuzna je trajna memorija i nuzan je inicijalni program)Dva pitanja – gde da se stavi ta trajna memorija i sta da se staviOd nule je kao punjenje sobe od vrataTrajna mora da bude na vrhu adresnog prostoraobicna od nule do nekla, a trajna od vrha do nekle i mozemo da prosirujemo dok se ne sretnuKoliko velik inicijalizacioni program trba da budeKod intela je 1mb – 16 (20 bitne adrese, dva 16 bitna dela koji su pomereni za 4 bita (jedan deo sa svim 1, a jedan sa svim 0)) (FFF0)U tom delu memorije na koji pokaze JUMP instrukcija ne sme da bude nista specificno zbog razlicitih OS-aOsposobljava samo goli HWNema strukture na discu, zato ovaj program pokazuje na fizicki prvi sektor, koji ce biti donet u memoriju i bice mu predata kontrolaMali program koji moze nesto sitno da uradi, ali koji zna sve o OS-uFloppy mora biti bootabilan da bi se to desilo, ima odredjena sifra na sektoruKompleksan sistem se podize stepenicu po stepenicu

Deo po deo1. HW

Memorija je praznaCPU ne radi nistaMora da resi proizvodjac HWKada dodje struja u CPU, on mora nesto da uradiCPU moze da napuni broj u brojac naredbiPosle toga je sve automatskiIz brojaca naredbi se cita ta instrukcijaNajlogicnije da to bude 0, ali nije takoCPU mora biti vezan na memoriju koja nije zavisna od strujePrvo pravilo – CPU mora da ima dve memorije, jednu regularnu, i jednu koja ne gubi podatkeOva trajna treba da dodje na kraj (vrh) (da ne bi bilo zauzeto prvih x adresa (da stvar u spajizu ne bude na vratima))Trajna se stavlja na vrh, a redovna ide od 0 pa nadaljeDrugo pitanje je kolika ta trajna memorija treba da budeProizvodjac CPU-a to ne zna, ali to resava tako sto ce CPU da pokaze na vrh memorije – 4 (-8, -16 itd.) – on ne zna gde ce se ugraditi taj CPUNa tako mali prostor moze da stane jedna JUMP instrukcijaJUMP instrukcija vraca na pocetak trajne memorije (odgovornost proizvodjaca racunara)Tu se stavljaju elementarne rutine za inicijalizaciju nekih stvari, (npr citanje prvog sektora sa diska (nema file systema))Procitacu fizicki pocetak diska (sektor od 512) i da ga ucitam u memoriju i da mu predam kontrolu a proizvodjac OS tu treba da smesti nesto pametnoProgramcic koji ce da ucita jos nekoliko sektoraPravi file system i ucitavaju se svi fileovi

Page 14: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

14

Predavanje 17

UVOD U RACUNARSKE MREZE

Postavlja se pitanje cemu sluze mrezeKroz vreme se menjalo (Jako mnogo)Lukava definicaja koja kaze da sluze za deljenje resursa (ne kaze nista)Resursi se menjajuPrezivljavanje nuklearnog rata (komandovanje vojskom su resursi)Kasnije HDD i stampaca2 floppy-a (A i B), zato je disc uvek C (komforan rad sa dva)HDD i stampaca pojeftiniliTrosim 500$ na mrezu da bih delio nesto sto kosta 100$Deljenje komunikacionih linija, da bi racunari izasli na internetDva pristupa u izucavanju

1. korisnikci (kako korisnik danas to vidi: lokalne-kancelarija i siroke-Internet) danas se spominje i treci element (metropoliten mreze)

2. racunarske mreze kao sistemi koji se sastoje od sw i hw se dele na nivoe i to se izucavaLogican redosled bi bio lokalne, metropoliten, siroke, ali to nije tako

Pojam paketnih mreza

Sve racunarske mreze su paketne mrezePostojale su razne druge mreze kada su racunarske postajale interesantne (zeleznicke, putne, vodovodne, telefonske)Sve mogu da se izracunavaju na isti nacin (cvorovi, sa linkovima)Ideja da se iskoriste postojece mreze (telefonske, kasnije struja)Mreza je preneti informaciju, a postav;lja se pitanje parametara (cena i brzina)Prenos CD-ova izmedju dve filijale banke (mnogo podataka za relativno kratko vreme)MOJA PRICA o golubovima pismonosama i kablovimaTelefonske mreze su pravljene za ljudski govor (1 govori ili drugi govori) ravnomernoRacunarski saobracaj je mnogo drugaciji – neravnomeranMalo prenese pa pauze (1% pricamo, a 99% cutimo)

Predavanje 18

Obicne mreze (ne paketne) su na principu virtualnih konekcijaKako radi telefonDecija igrackaNezgodno razvuci toliko ziceCentrala (svi imaju svoje dve zice koje vode do nje)Zanimanje telefonista (tabla do koje dolaze parovi zica od svake kuce, postoje po dve buxne)Zovete centralu i kazete joj da vas spoji sa ZikomSvako vuce samo do centraleNa nivou sela postoje telefoni igrackePostoji konekcija – spojeni suVirtualna jer se stvara i raskidaDo sledeceg grada postoji jos jedan par zicaTelefonista prespoji zice na izlaz iz gradaSvaki spaja sve dalje i daljeSamo jedan moze da razgovara sa spoljnim svetomKonekcija je jer postoji privatni par zica koji je posvecen toj komunikaciji, a virtualna je jer se konekcija uspostavlja na zahtev i raskida posle upotrebeKasnije relejiAlternativa virtualnim konekcijama su paketne mrezeVec postojale, (slanje pisma)Postanska mreza sa pismima je primer paketne mrezeNe drzi se konekcija stalnoRoman se salje pismo po pismoAdresa primaoca, adresa posaljioca, i pozeljno je staviti redni brojPostar ih nosi vise u isto vreme

Page 15: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

15

U posti se vrsi razvrstavanje (rutiranje)Do jednog mesta moze da bude vise putevaRuta nije ni fixirana ni jedinstvenaPostoje problemi, da se izgubi, da stigne razlicitim redosledomJeftine su, ne zahtevaju poseban kanalNe garantuju da ce stici ni kojim redosledom ce sticiNemamo posvecenog kuriraOvo je pogodno za racaunarski saobracajKada ima sta da salje salje, a kada nema ne zadrzava kanalZa racunare se od pocetka koriste paketne mreze jer su pogodnije

LOKALNE I GLOBALNE MREZE

Prirodnije da se krene od vecih jer su starijeIdeja o povezivanju je nastala 60 – ih godinaParanoja oko nuklearnog rataRazne mere (predvojna obuka)Preduslov za lokalne mreze je da ima vise racunara na jednoj lokaciji (istorijski nije bilo tako, jedan racunar na svetu, pa dva itd.)U pocetku su morali da se povezuju veliki racunariJako dinamicna oblastU vrlo kratkom periodu (nekoliko godina) stvari pod istim imenom postaju potpuno razlicitePovezivanje racunara nije bilo ni lako ni priordno ni nuznoNije delovala prirodna ideja o povezivanju racunara60-ih u vreme hladnog rata a u vezi sa mogucim vrucim ratomMogucnost rata stalno prisutnaKako da se izvede sistem organizacijeUvek se smatralo da je bolja hijerarhija i kontrola i organizacija od haosaU uslovima sa mnogo nozeva je bolje biti glista nego covek (jednostavnije, ali nista se ne gubi)Doslo se do ideje da se napravi haos bez organizacije jer ce se u vanrednim uslovima ponasati bolje od jasne hijerarhije – Testiranje cudnog konceptaIdeja vodilja je bila da je u normalnim uslovima dobro biti normalan, a u nenormalnim je bolje biti nenormalanDa se povezu racunari za prenos vojnih informacija, bez centralne kontrole, bez hijerarhijeMana je da nece 100% efikasno funkcionisati, a prednost je sto nema centralnog mesta gde bi sve stalo, ako bi bilo unistenoSistem ce biti najzilaviji, ali nece biti preterano efikasan sa stanovista dugih parametaraIdeja hrabra i revolucionarnaIdeja kako da se uradi je bila takodje nova i revolucionarna (kao sa UNIX-om ali je bilo namerno)Uglavnom je brzo bilo uradjenoPozvali postdiplomce u odmaraliste u Jutu i predocili ima u par reci sta i kakoIspalo je mnogo korisnoNapravio se neki pocetni HWSkromno i sa telefonskim linijamaNezavisni cvorovi koji funkcionisu sami za sebeDok poslednja dva postoje, oni mogu da komunicirajuNamena: prezivljavanje nuklearnog rataPrincip: anarhicni konceptPocetak kasnih 60-ih69 napravljeni prvi poceciPocetak ARPANetaDato je postdiplomcima (kao UNIX kasnije)HW se sastojao od mini racunara sa po 8 kb memorije, bez diska (da nema mehanike)Nekoliko centara, pa je pocelo da se siri medju najvecim univerzitetima i institutimaPrvo zapadna obala, pa se sirilo ka istocnojSa porastom broja prikljucenih, menjao se profil tih univerziteta (sve manji i manji)Uskoro Engleska, pa Australija

1. Polako geografski2. Smanjivala se velicina institucije3. Povecavao se broj

E-mail nastao kroz testiranje sistema (slanje poruka)

Page 16: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

16

Razni testovi, preko raznih cvoristaPrvo tehnicke pa zatim i licne porukeARPANET (DARPA)Adnaced Research Project Agency (Defanse)Kao sto se UNIX vezuje za Bell Labs, tako ljudi vezuju Internet za DARPA – u, sto je pogresno (to su razvijali post diplomci, a odavde je samo finansirano)Birokratska kancelarija sa par zaposlenih koja daje pare univerzitetima za istrazivanjeNapredni projekat je blazi izraz za fantaziju (sulude ideje) – projekat gde se bacaju pare bez mogucnosti da se vrateU medjuvremenu se cilj menja (nije vise prezivljavanje nuklearnog rata), sada se koristi za razmenu fajlova80-ih se razdvaja – na Milnet i InternetInternet nije neka struktura koja moze da se pokaze, vec je sustina u protokolimaKablovi sluze i za druge stvariMoze modem, kabl, adslNe moze se nacrtati topologija internetaSustina interneta su nacini komunikacije (protokoli) – TCP/IP (Barkley), to je najbitnijePostoje racunarski i komunikacioni cvoroviNa univerzitetima veliki racunari pored kojih su mini racunari (kao danasnji modemi)Tesko je postalo pohvatati koji je HWTako da je protokol najvaznijiNamena se menja, rat, testiranje, mail, razna dopisivanja, diskusione grupeDo 95 uglavnom akademski nivoPostoje glavni linkovi, koji cine kicmu Interneta – nije jasno kome to pripadaRazdvajanje sa Milnetom nije neka dramaticna tackaDramaticna tacka se desila 1995 godine – expanzija u svim smerovima

1. Geografska (zbog telefonskih linija kojih ima svuda)2. Tip korisnika (prvo univerziteti, pa skole, pa komercijalne organizacije, pa pojedinci)

Potpuna promena koriscenjaUstolicena akadamska mreza – svi servisi radiliU to neko vreme postaje i WWW aktuelan (Hyper Text)Prolazak kroz tri faze:

1. Vojna2. Univerzitetska3. Siroka

INTERNET SERVISI

Posto globalne mreze povezuju razlicite racunare, mora da se napravi neki protokol za komunikacijuServisi Interneta – najznacajnija e-postaDanas su uglavnom sakriveniMoraju se definisati protokoli – opis kako ce dva racunara da komuniciraju (podrazumevajuci da imaju razlicite OS i file systeme)Najcesce se ne radi o binarnim podacima, vec o karakterimaDa bi se posta razmenjivala moraju se definisati formati fajlovaPravi se skup zahteva i ako file to zadovoljava on moze biti poslat kao mailZa postu je SMTPZa vesti NNTPZa file-ove FTPZa Web HTTPProtokol je skup pravilaStvari vezane za internet su razvijane na nacin koji je drugaciji od ostalih oblastiNije preko naucnih casopisa – nego u elektronskoj formi na samoj mreziRFC - Request for commentsJedno mesto na jednom racunarau koje se ponasalo kao diskusiona grupa gde su diskutovali o idejamaSve stvari krecu kao neki pocetni RFC koji polako sazrva i postaje standard

Predavanje 19

DEF: Racunarske mreze se postavljaju radi deljenje resursaDovoljno opsta definicija koja ce svuda da vazi (zbog dinamicnog menjanja mreza)Resursi u opstem smislu

Page 17: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

17

Kod LAN resursi su ranije bili stampaci i diskovi (besmisleno)Zavisi sta smatramo resursimaPitanje adresiranjaZa svaki cvor na mrezi mora da postoji jedinstvena adresaBSD (najvise uradjeno po pitanju interneta) – IP – tada je to uradjeno (ovo je verzija UNIX-a u kojoj je najvise uradjeno po pitanju interneta)IP adrese – jedinstven nacin oznacavanja svakog cvora na internetuDa bi racunar bio cvor na internetu on mora imati jedinstvenu IP adresuIP adresa je 32-bitni brojPretvaramo u dekadni brojCetiri broja razdvojena tackama147.91.65.2 – primer IP adreseOgranicenja:

1. Izmedju 0 i 255 jer su nastali iz bajtova2. Jos neka

Preko IP adresa se zna i od koga je paket i kome ide4 odvojena broja da bi se lakse organizovale mrezeKlase mrezaMali broj cvorova jer su bili samo veliki racunari na univerzitetimaNema nikakve veze sa brojem racunara jer je broj racunara bio mali, 32 je uzeto jer je jubilaran binarni brojAko prvi bajt fixiramo a gledamo ostala tri, dobijamo mreze klase APrvi bajt pokazuje o kojoj mrezi se radi, a sledeca tri pokazuju o kom racunaru se radiMoze biti 255 mreza, i skoro 17k racunara unutar svakeHijerarhijsko razlaganjeMalo mreza (255) sa mnogo razunaraKontinentalne mreze (mozda bi bilo bolje da se zovu drzavne mreze)Vrlo brzo napusteneFixiraju se prva dva bajta i to je mreza klase BPrva dva bajta odredjuju mrezu a druga dva odredjuju racunar65000 mreza i 65000 racunaraDodeljena drzavi kao sto je nas (sitno drzavna mreza)Tri bajta za mrezu i jedan za racunar unutar mreze – mreze klase CMnogo mreza sa malo racunaraOtprilike odgovara jednoj lokalnoj mreziDrzavi klasa B, a unutar drzave se dele mreze klase C (po gradovima i ustanovama)Problem je nedostatak IP adresa (uzasno pogresne procene)U pocetku je prica bila o umrezavanju velikuh univerziteta i zato se nije brinulo o adresamaMreze klase A ukinuteLjudi ima vise od 4 500 000 000 koliko ima IP adresaOtezavajuce je sto se i u nestasici rasipa4 mreze klase C za Matematicki FakultetNe mogu svi brojevi da se koriste (sve 0, ili sve 1)Uvodjenja jos podmreza, jos sitnijeOsim IP adrese se uvodi pojam maske (pod mreze)Sami pravimo podmreze pomocu maskiFunkcija maske je da IP adresu koja je 4 bajtni broj prekrije sa 0 i 1Tamo gde je 1 deo je zamaskiran (izvan dometa mreze ), a tamo gde je 0 taj deo je vidljiv kao lokalna mrezaUmesto grube podele na klase A B C, mozemo sada da uzimamo bit po bitStandardna maska je maska klase C i izgleda kao 255.255.255.0Ako hocemo manje mreze, dodajemo jedinice255.255.255.128 – mrezu klase C smo podelili na jos dve podmreze, sa po 128 racunaraJednu C mrezu smo iskoristili za pravljenje 2 manje mreze (7-obitna mreza)255.255.255.192 – 4 podmreze (jos sitnije mreze, klasa C podeljena na 4 podmreze)Donekle je popravilo stvar ali ne do krajaDva resenja:

1. Uvodjenje novog standarda, koji je gotov, ali implementacija ide polakaSada se koristi 4. Verzija IP adresaVerzija 5 od koje nista nije biloIP verzija 6 – buduca verzija IP adresa koja resava problema16-bajtni standard

Page 18: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

18

Trebalo bi da bude dovoljno, ali se postavlja pitanje koliko ce se rasiriti upotreba (bombone)

2. Ne mora svaki racunar na internetu da ima svoju IP adresuNije svaki kablom vezan s svim ostalimU LAN-u je dovoljno da jedan bude vezan na spoljni svetNe moraju svi da imaju jedinstvene IP adrese na svetskom nivou, vec samo taj jedanNa zajednicku tacku (taj jedan) moze da se stavi mehanizam koji ce da deli pakete sta kome ide i oni ce dobiti lokalna imenaPrezime i imePrezimena su jedinstvena unutar sveta a imena su jedinstvena unutar grupeDobijamo situaciju kao na pocetkuProblem je odlozen

Predavanje 20

Drugi nacin adresiranja racunara na internetu, koji je pogodniji za ljudeBinarne adrese, koje su nezgodne za covekaDa se daju adrese na koje smo navikliHijerarhijske adrese (ali od najpreciznije ka najsiroj (kao klasicno pismo))Paralelno na InternetuKada je adresa cudan niz simbola, teze ju je zapamtitiStvarno se koriste IP adrese, tako da se jedno preracunava u drugoTabele, koje se nalaze na DNS masiniAko ima zahteva u tabeli on se obradi, a ako ne onda se on obraca nekom drugom ko mozda ima taj podatak

SERVISI INTERNETA

Kada je isti OS na povezanim racunarima, onda je lako-sistem se ponasa kao jedan prosireni racunarMora da se napravi mehaznizam za rad sa povezanim racunarima koji imaju razlicite OS (razmena fileova)Kakva je struktura fileova, kolika su imena dozvoljena itd.

ELEKTRONSKA POSTA

Jedan od najstarijih i najkoriscenijih je e-postaMalo resursa, a mnogo nudiKombinacija telefona (brza) i pisma (jeftina, moze da skine do bilo koga, moze da odgovori kada hoce) Indirektna komunikacija, ali jako brzaJunk mail je nastao iz redovne poste, a nema veze sa racunarimaRanije su e-mail poruke bile jako sitne, pa su zato resursi koje su trazili bili maliASCII poruke, za celu zemlju oko 1-2 MB (sat vremena kroz modem, sto na nivou zemlje nije nista)Sada kada su tu attachmenti, to se vec povecalo, jer to su sada FTP, a ne SMTPElektronska posta se bavi razmenom file-ova medju cvorovima (SMTP), a kada je sva na jednom mestu, kako se rasporedjuje, onda je to stvar nizeg nivoa i to se resava preko POP3

TELNET

Dao zamajac InternetuKoriscenje udaljenog racunara sa lokalnim IO jedinicama70-ih (narocito 80-ih) bila jako vazna stvarSve se radilo na ozbiljnim racunarima (veliki, mini), koji su imali ozbiljne programe80-ih sa pojavom PC-ija jos uvek nema ozbiljnih stvari za PC-juNe moraju ljudi da putuju do velikog racunara, vec poveze PC na veliki racunar i tamo se radiPC sluzi kao ekran i tastatura a veliki racunar kao CPU i memorija90-ih je telnet odumro – PC dobio dobar software

FTP

Yugoslavia u pocetku imala kapcitet veze sa svetom od 64kbsKasnije je prosireno na 128 i o tome su novine pisale, to je bila senzacijaVeliki file se ne dovlaci svaki put sa microsoft-a vec treba da bude na nekom lokalu

Page 19: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

19

Povecanje kapaciteta je jedno resenjeA drugo je proxy serveriUkratko, princip funkcionisanja svodi se na pravljenje lokalnih kopija sadržaja Interneta, tačnije onih web stranica kojima su korisnici nedavno pristupiliKada korisnik ponovo zatraži neku od keširanih, stranica proxy mu daje stranicu sa diska umesto da je ponovo dovlači sa MrežeNa taj način smanjuje se upotreba kanala ka Internetu, a korisnik dobija željenu stranicu gotovo trenutnoRacunarska snaga je do sada bila vrlo jeftina, a komunikacije su bile veoma skupeCPU je otprilike dostigao limitA kod komunikacija stvari su skroz obrnute (opticki kablovi su kompletna revolucija)Oni su nekoliko miliona puta brziKomunikacije ce biti uskoro skoro besplatneNecemo neku udaljenu stranicu kompresovati i kesirati jer ce biti jeftinije ponovo je pozvati kroz jeftinu komunikaciju, nego trositi CPU cikluse na kompresovanje i kesiranjeProblem sa ucenjem zastarelih stvari (deljenje printera)Treba stavljati pricu u kontekst

Predavanje 21

NEWS

Diskusione grupeNNTP (network news transfer protocol)Vrsta posteTextualni file-ovi koji imaju odgovarajucu strukturuNe usmerava se od pjedinca ka drugom pojedincu, vec od pojedinca ka nekoj centralnoj tacki gde je dostupno svimaIzgubilo smisao s vremenom, jer je s jedne strane zgodno da ih ima mnogo, a sa druge strane to moze da gusiIma dosta smece na tim temamaPre 20 godina je taj servis ima mnogo vise znacaja

HTTP

WebDanas najpopularnijiIdeja Hyper text je dosta starija (i nije se bas primila u to vreme)To je bila ideja knjige buducnostiOgraniceni smo tehnologijom, inace bismo imali bolje knjigeNelinearno citanjeNije bas pametno jer dolazi do rasplinjavanjaHT je zgodan za sadrzaj knjige (hijerarhijsku navigaciju) – kao takav je zgodan za Web

LOKALNE MREZE

Nastale kasnije iako su jednostavnije80-ih sa pojavom PC-ja (bez PC-ja nije bilo uslova za lokalne mreze)Definicija o deljenju resursa uvek vazi samo je pitanje sta su resursiRanije su to bili stampaci i HDDLokalne mreze su u pocetku bile jako skupe i skoro nedostupne80-te su bile godine price o lokalnim mrezama, malo ih je bilo u praxiNovell imao monopol, SW skup i sporWin for workgroups je doneo revolucijuKrajemo 80-ih doslo do jake potrebe za umrezavanjem racunara (veliki fajlovi, a za prenos se koristi floppy)Npr. Borland C je dolazio na 104 disketeDisproporcija izmedju programa i floppy-a je postala jako izrazena krajem 80-ihFloppy se povecavao, ali se velicina programa povecavala mnogo brzeHDD-ovi oko 40-80 Mb pa je trebalo imati 50 floppy-a za bekapLjudi su dosli do ideje da vezu dva racunara privremeno povezuSkup OS (Novell), skupe karticeLjudi izucili sta im treba za povezivanjePotrebna je zica za povezivanje

Page 20: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

20

Definisati standarde:1. Fizicko – mehaniski2. Elektricni3. Logicki (SW)

Ideja je da se prodje sto jeftinije, znaci nesto sto vec ima na racunaruSerijski i paralelni portSerijska ima jedni zicu (prenosi bitove)Paralena 8 (prenosi bajtove)Upotreba zavisi od potrebeVec su definisani i mehanicki i elektricni standardVec postoje konektori DB9 (serijski) i DB25 (paralelni)Elektricni 0 i 1 (+/-12V ili +/-5V, zavisi od standarda)U komunikacijama bajtovi imaju 10 bitova, dva dodatna za sinhronizacijuLako za preracunavanje (deli se sa 10)

1. Start bit pre svih (0)-prekida aktivno cutanje2. Stop bit posle svih (1)

Ovim se obezbedjuje:1. Sigurno se zna kada je pocela transmisija2. Nema zabrojavanja jer je 8 bitova, a ne 50003. Iako idu sve 0, povremeno ce se prekinuti sa stop bitom, iako idu sve 1 povremeno ce se prekinuti start bitom

Losa ideja je da 0 bude stanje bez signala, jer se nikad ne zna kada je kvar (u vojsci se cuje zujanje, kada nema nicega)U tehnickim sistemima se kao neutralno stanje uzima aktivno stanjeGubitak veze se odmah detektujeProblem kod asinhronog transfera je sto nemaju oba racunara isti satTreba napisati neki SW za komunikacijuTebalo je samo napraviti kablSW podrska je dolazila od strane raznik nezavisnih proizvodjaca, a od verzije 4.0 je postalo deo DOS-aKomande u DOS-u (interlink)Nezgodno, mora da se startuje kao sistemski driver, mora da se restartujeOvo nije mnogo brzo, ali je zgodnijeStandard za serijski port je 19.2 Kb/s a na PC-ju je to bilo iznad standarda (oko 100 Kb/s)Nije brzo, ali moze da se izadjeParaleni nije bio zamisljen kao bidirekcioni (bio je zamisljen za stampac), brzina oko 400Kb/sKoja je razlika izmedju ovoga i prave mreze?Ovde nema problema sa adresiranjem, jer ih ima samo dvaNa pravoj mrezi postoji problem adresiranjaPrava mreza je isto to, ali samo kmalo brzeOvo je pravljeno da bude besplatno, a kod prave mreze je trebalo da bude bolj, ali smo spremni i da platimoOvo je besplatno, a mrezna je bolja ali je skupljaMrezna karta je u stvari samo nabildovani serijski port10 Mb/sPrincip je istiStandard je uspostavljen u XEROX-ovim lab 1973-1975EthernetTamo je radio i Robert Metcalfe koji je kasnije osnovao tricom (3com)

Predavanje 22

EthernetPoznata je pod imenom CSMA/CD (Carrier Sense Multiple Access / Collision Detection)Carrier Sense znaci da moze da oseti signal neutralnog stanja (ima signala) – da ga ima, nije pokidano, niko drugi nije poceo da pricaMultiple Access znaci da moze vise njih da govoriCollision Detection – detekcija sudara (HW)Potoji medijum (kabl) na koji su prikaceni razni korisniciMora da se uvede red da ne bi svi pricali uglasKao razgovor kroz vazduhToken Ring – ideja da moze da govori onaj ko ima pravo (ko ima zeton (token)) (alternativa ethernetu)Pokazao se kao jako neefikasan (tr)Ne moze da se desi da dvoje pricaju istovremeno

Page 21: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

21

Pravila CSMA/CD mreza:Moze da govori ko kad hoce (osim ako ne upada u rec) – nema prioriteta, nema najave, nema redaDeluje kao haos ali nijeCemu sluzi CD, ako nema upadanja u rec, cemu detektor kolizijaMi se bojimo nereda, kojih nema, ali ima kolizijaDisproporcija kvantitativnih parametaraEthernet je brz (10 mb/s)Racunari salju pakete koji su velicine 200 bitovaMoze se poslati 50 000 paketa u sekundiU mrezi ima oko 50 racunaraSvako ima pravo da posalje oko 1000 paketa u sekundiKao time shering, ali mnogo bolje, jer radi sa nanosekundama, a ne sa milisekundamaNema monopola kada svako moze da posalje 1000 paketa u sekundiKod Tokena je veliki red, ali je cena velika (svima se nudi zeton, i onima koji nece da govore)Stalna bespotrebna garancija redaJedan hoce da govori, a ostalih 49 nece, ali taj jedan mora da saceka sve kojima se nudi zetonA token se uzima onima koji hoce da govoreDok je opterecenje ispod 99%, tokenom se ne dobija nista, a onaj extream moze da se izbegne vrlo jednostavnoFunkcionisanje mreze lici na paljenje i gasenje svetla, ali to nije takoTrajanje jednog bita je takvo da signal kroz kabal prodje oko 20 mSlanje grbe talasa naponskog od 20 mAko je kabl dugacak 200m, postoji mogucnost da se posalje 10 bitova pre nego sto se detektuje signal i zbog toga moze da dodje do kolizijeKabl mora da bude dobarNa kraju zice mora da postoji terminator koji prigusuje talas da se ne bi odbijao sam od sebe (talas od obale) i to je npr otpornik od 50 oma ako je impedansa kabla 50 omaMora da ime odredjene dinamicke osobine (impedansu)Moze da bude kabl koji izgleda dobar, ali nije dobar i to ne moze da se vidi bez odgovarajucih alataKada dodje do kolizije, ona mora da se razresiKada se sudare, obojica prestaju da emitiju, i postoji mogucnost da se ponovo sudareBBA-binary becklock algoritamSvaki generise slucajan broj koji je stepen dvojke npr. 2 i 16Pa ce jedan da krene za 2 a jedan za 16Moze da se ponovo sudare, ali ponovo se ponavlja generisanje slucajnih brojevaOvo funkcionise do zauzeca kabla od 99%Kada se udje u poslednji procenat (izmedju 99 i 100%) performanse drasticno padaju jer su sudari sve cesci, jedan izaziva drugi i onda se mnogo gubi na troskove oko razresavanja sudaraKod token ringa stalna iskoriscenost je oko 70%, ali zato nikad nema problemaBolje je imati vecu iskoriscenost i probleme samo kod poslednjeg procenta, nego dosta manju iskoriscenost i nikad probleme (davati pola plate za obezbedjenje 10 godina, ili biti opljackan jednom u 10 godina, ali cela plata)

TOPOLOGIJA MREZA

1. Magistrala2. Prsten3. Zvezda4. Svako sa svakim (uglavnom ne koristi, jako retko u praksi) – mnogougao sa svim dijagonalama5. Nepravilne topologije (interesantne kod globalnih mreza)

Kod globalnih mreza je karakteristika postojanje nepravilnih topologija (velicina gradova, geografska lokacija itd.)Kod LAN su pravilne topologije80-ih su vodjene borbe izmedju Ethernet i token ringa (IBM-ov)Propisan od IEEE i zove se 802.3DEF: LAN je povezivanje racunara na jednoj lokaciji (dopuna definiciji bi bio opis sta je to lokacija – jedna soba, stan, sprat, zgrada) – dve zgrade na obodima Sahare (zlonamernici)Prava DEF: LAN je ona mreza koja je umrezena po ovom standardu (IEEE), gde su ustvari propisani kablovi.Maximalna duzina kabla je 200 m, a maximalan broj segmenata je 5, tako da je maximalna udaljenost 1km (5 x 200 m)Tu se propisuje da je topologija Etherneta magistralaOstavlja se mogucnost za razlicita kabliranjaNajstariji sistem (sredina 80-ih) je standardni Ethernet (stari), ili Ethernet sa debelim kablovimaZasniva se na koaksijalnim (koncentricnim) kablovima

Page 22: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

22

1. Zica2. Plasticna izolacija3. Metalna (zicana) mrezica4. Plasticna izolacija

To je antenski kablDvozilni, ali je specifican po tome sto su provodnici koncentricniBio je boljeg kvaliteta (mreze mogle da idu do dva kilometra)Debeo i slabije savitljivPopularno je zvan bastensko crevo (standardno crevo zute boje u svim radnjama u Americi)Vreme mini racunaraUmrezavanje skupo jer se kabl ukopavao i vodio po zidovimaPojedinacni racunari su se vezivali drop kablomVampir prikljucak (kao zub koji probije mrezu)Klasicna magistrala (prvo jedan kabl koji je dugacak koliko je dugacak) a onda se pojedinacni racunari kace na njegaKasnije je predjeno na tanji i savitljiviji koaksijalni kabl i on je dobio naziv cheepanetIzgledao je kao danasnji tanji antenski kablNacin povezivanja je drugacijiMrezna kartica na kraju ima T konektor a kabl se vezuje na levi i desni kraj slova TTo se zove BNC konektor i koristi se za povezivanje bez alata i koristio se i za fotoaparate i za jos neke stvariBrzo i kvalitetno su odlike BNC konektoraI dalje je magistrala, ali nije iz jednog komada i to daje flexibilnost

1. Kabl jeftiniji2. Savitljiviji, tanji – ne mora da se ukopava3. Magistrala je isecena na komade, tako da nema planiranja – racunari mogu lako da se dodaju

U potupnosti lici na TV kabl za antenu, ali ne moze da se zameni zbog impedanse (antenski 75 oma, a ovaj za racunare 50 oma) (rg58 i rg59)Mreze ne rade sa antenskim kablomTreca vrsta kablova se pojavila sa idejom da se iskoristi postojeca telefonska instalacija, jer je to jeftino, ali je ovo bio promasajOva mreza se pokazala dobrom iz drugih razloga jer je njena topologija bila zvezdaAli dobra stvar je bila zvezdasta topologija jer je odredjeni broj prikljucaka isao do jednog centra, tako da su u slucaju prekida veze izmedju centrova, pojedinacni delovi mreze nastavljali da funkcionisuTo nije moglo tako kod magistrale zbog terminatora na kraju mreze, ako se prekine mreza nema terminatora i ne radi cela mreza

Predavanje 23

Telefonski kablovi twisted pearLosa ideja iz nekoliko razloga:

1. Malo zgrada koje imaju toliko telefonskih prikljucaka (10-ak u svakoj sobi)2. Kablovi za telefon nisu odgovarajuceg kvaliteta (koriscena kategorija 3, a trazena kategorija 5) – nezgodni

problemi tipa malo radi – malo ne radiShvatili da se od ovih kablova nece leba najesti, da moraju da vuku nove, sto je mnogo skupljeLjudi su shvatili da moraju kompletno nove kablove da stave sto je bilo nezgodno jer je sve moralo da se vodi do centralnog mesta – mnogo komplikovano, npr sve zice do 4 – og sprataSa aspekta sigurnosti ovaj koncept je jako dobarKablovi imaju svoja imena:

1. 10 BASE 5 – debeli Ethernet2. 10 BASE 2 – tanki Ethernet3. 10 BASE T – uvrnuti

Ovo 10 je od 10 Mb/sTopologija je magistrala uvek, iako nama izgleda kao zvezdaElektricki izgleda i ponasa se kao magistralaU racunarstvu nema svrhe poboljsavati nesto za 20-50%, pa je novi standard 100Mb/s, znaci 10 puta brziZvezda je postala popularnija kada se brzina povecala na 100Mb/sKablovi su 100 BASE TIEEE ga zove 802.3uKabliranje koaksijalnim kablom je ukinuto u novom standarduVise parova zica (nije se islo na brze signaliziranje, jer kablovi to ne bi podneli)Deblji kablovi

Page 23: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

23

Poceli su proizvodjaci maticnih ploca da ugradjuju mreznu karticu na maticnu plocu (10/100)Pojavio se Gigabitni standardOpticki kablovi su buducnostOVDE TREBA ISPRICATI KAKO SE KOJI KABL DEGENERISE

METROPOLITEN MREZE

Poslednjih godina se javlja i treca kategorija mrezaMreze velikih naselja (moze i nekoliko gradova, ili moze jedna u gradu)Pojavljuju se zbog potrebe za velikom razmenom podataka medju korisnicima (obicno su krajnji korisnici po kucama)Do sada su bili samo telefoni, koji je dostigao, pa cak i prestigao svoj teorijski razvoj, od cega leba nemaDa se mreza dovuce do svakog domacinstva (kao telefon, ali on je prevazidjen (limit je na 40 kb/s))Traze se alternative, npr kablovska televizija (ima je u skoro svakoj kuci), vec razvucenoNemaju ni funkciju siroke mreze ni funkciju lokalne mrezeNemaju funkciju razmene podatakaNije prosirena LANI LAN se razdvajaju unutar istih zgradaSamo je funkcija da krajnje korisnike spoji na InternetU poslednje vreme ADSL

OZBILJNA PRICA O MREZAMA

Hijerarhijski model slojeva pocev od fizickog nivo koji se bavi razmenom bitova, pa do korisnickog sloja koji se bavi aplikacijamaPravi nacin kako mreza funkcionise, koji krajnji korisnik ne vidiStvari se sagledavaju lakse hijerarhijskiReferentni model slojevaPitanja broja slojeva i pitanje granicaAko je premalo slojeva, nismo resili problem, a ako je mnogo, onda je tesko popamtiti sve te slojeveGranice treba da imaju svoje logicke celineOdgovori:

1. 10 – ak slojeva 2. Bitno je da granice budu sto logicnije

S jedne strane mreze su se vec razvijale, ali je s druge strane to islo stihijski bez plana i reda (opet postdiplomci)Pocetkom 80-ih se o tome ozbiljnije razmisljaMnogo velikih komisija pa nije nista ispaloNastao ISO OSI (Open Systems Interconnection)Napravljen je s 7 nivoa (zbog IBM-a koji je imao neki svoj sistem sa 7 modela, nisu hteli razlaz od velikog IBM-a) – sto nije bas srecno resenjeModel predpostavlja da postoji odredjen broj nivoa od kojih svaki resava jedan konkretan problem sa jasnim granicamaJako lici na podprograme, koji obavljaju neke funkcije, tj. nude neke serviseNizi nude visem serviseKao podprogrami (npr sortiranje nizova, kao rastuci i opadajuci, servisi)Odozdo gledano ti servisi su interface (ime niza i parametar koji oznacava da li je rastuci ili opadajuci)Razlicit broj nivoa ali na najvisem nivou je korisnik s svojim zahtevima (problemima i aplikacijama) a na najnizem nivou je fizikci sloj (kroz fizicki medijum se razmenjuju bitovi)Postoji virtuelna komunikacija izmedju odgovarajucih slojevaKako se nesto na nekom nivou radi, to se zove protokolNacin za komuniciranje izmedju nivoa istog rangaTa komunikacija je virtualna

Predavanje 24

Primer srpskog i kineskog filosofaUspostavljaju pravila koja su za njih bitna:

1. Samo o smislu zivota (nema rasplinjavanja)2. Razgovaraju svaki dan3. Naizmenicno salju poruke jedan drugom4. Da ne budu duze od 5 strana

Oni se dogovarju kao da nema tehnickih problema

Page 24: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

24

Potrebni nizi slojevi koji ce nevidljivo da rese tehnicke probleme1. Problem nerazumevanja – 2 prevodioca (srpsko – engleski i englesko – kineski) – moguca zamena (francuski

umesto engleskog) – interface – i i servisi imaju svoje protokole2. Daktilografi3. Konjanik (slanje)

Svi imaju utiske da medjusobno komuniciraju, i da se dogovarajuSvako na svom nivou resava svoje probleme (svako radi svoj posao)Postoji mogucnost zamene pojedinih slojeva (camci umesto konja, francuski umesto engleskog)

Slojevi OSI modela od

1. Fizicki – obavlja se stvarna komunikacija (prenose bitovi kroz kabl) – debljina kablova, nivo signala, start, stop bit

2. Data link (sloj veze) – pakuje podatke u pakete i daje privid savrsenog komunikacionog kanala (delovi za detekciju i korekciju greske) – ispravljeno sve sto nije valjalo (ovde se radi o paketnim mrezama)

3. Network (mrezni sloj) – rutiranje (odredjivanje puta kojim ce se ici) – radi se lokalno, svako odredjuje kuda ce da posalje, svaki cvor je vezan sa konacno mnogo drugih cvorova

4. Transportni nivo (on je network nivou ono sto je data link fizickom nivou, on obezbedjuje privid savrsenog kanala) – povezuje dve tacke koje komuniciraju savrsenim kanalom, imamo privid direktne veze

5. Sesija (seansa) – pitanja malo ispod aplikacije a malo iznad transporta (log in)6. Prezentacija (Dolazak do transformacija) prevodjenje iz jednog enkodiranja u drugi, kriptografija, arhiviranje7. Aplikativni nivo (sloj aplikacije) – resava se sta stvarno hocemo da radimo (servisi interneta (mail, news))

Svi se kunu da je dobro, ali svi rade drugacije (to traje oko 10 godina)Nastaje TCP/IPTCP/IP postaje DE FACTO standardOSI ostaje za teorijska razmatranjaOSI se ukalupio u TCP/IP

Mrezna kartica sadrzi fizicki sloj i deo data linkaIzbaceni sesija i prezentacijaTCP/IP – cetvoroslojni model

Malo vise o svakom sloju

Fizicki sloj

Deo koji je blizak fizici (elektrotehnici)Proucavanje medijuma (radio frekvencija, provodnika)Blizak procesiranju signalaMi zamisljamo digitalne signala kao savrsene cetvrtaste signale, cega nema u praksiObicno malo zaobljeno (deformisano)Osnovni alat su Furijeove transformacijeSvaka periodicna funkcija (svaka moze da se napravi da bude periodicna, uz pomoc beskonacnog ponavljanja) se moze predstaviti kao zbir cosinusnih funkcija ili zbir cosinusnih i sinusnihPrelazenje iz vremenskog u frekventni domenRadi se sa konacnim redovima a ne beskonacnimRadi se o diskretnim funkcijama, a ne kontinualnim (sumama, a ne integralima)Sve je u funkciji toga da se fizicki medijum iskoristi sto bolje (sto vise bitova u jedinici vremena)KAKO IZGLEDA PREDSTAVLJANJE SIGNALA, KOJE SU SLIKE, KAKO SE MENJA SA PROMENOM VELICINE TALASA, KOLIKO KOSTA PRECIZNOST

Data link

Pitanje pakovanja u paketeKao da se upakujeKako da se prepozna pocetak i krajKao da se adresiraKoliko treba da je dugacka adresaKako da se oznaci kraj (specijalna senkvenca, koja ima malu verovatnocu da se pojavi) – escape sekvence, npr. \ u C-uPitanje retransmisije (sta se desava ako kanal izgubi paket) – slanje potvrde, sto nije zgodno jer se gubi vreme

Page 25: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

25

Npr ako se za svaki paket od 200 bitova u fajlu od 100 Mb salje potvrda to je veliki gubitak vremenaDodatni problem je mogucnost gubitka potvrdePokretni prozori, salje se do npr. 50, a onda se staje i ceka se potvrda za prvi paket, da bi se nastavilo sa 51, tako se salje sledeci paket kako za koji stigne potvrda i zato se zovu pokretni prozori, kao neka vrsta baferaNece se otici predaleko da bi se sacekala potvrda, ali nece se ostaviti ni neresenoPitanje detekcije i korekcije greske – algebarska disciplinaHaninbalova udaljenostNa koliko se mesta razlikuju dva polinomaPovecanje skupa nevalidnim porukama, i pravljenje situacije da validna poruka prelazi u nevalidnu poruku i na taj nacin se vidi greska (prosirenje s 8 na 9 bitova)Npr. imamo skup od 30 slova, posalje se “A”, a vidi se “G” – nema nacina da se vidi greskaOvim prosirenjem validna poruka u slucaju greske ne prelazi nuzno u validnu poruku, vec se moze tako nastelovati da prelazi u nevalidnu (umesto “A” se primi “cudan znak”)Najjednostavniji sistem je provera parnosti (deveti bit obezbedjuje paran broj jedinica)Prosiruje se prostor sa 256 validnih na 256 validinih i 256 nevalidnihKorekcija se vrsi prepolovljavanjem, pa se odredjuje kojoj je validnoj reci blize

Predavanje 25

CRC polinomi – ciklicni redudantni kodoviAlgebarska disciplina koja je poprilicno komplikovanaPoruka se posmatra kao polinomPoruka je u sustini niz bitovaDobijaju se polinomi visokog stepenaNadje se polinom kojim se deli ovaj polinom, pa se nadopuni da mu ostatak bude nula, pa se proverava da li se nesto poremetiloRaznim mmetodama se bira taj polinom, obicno 8 ili 16 bitaHvata se jako mnogo gresakaKada se na odgovarajuci nacin izabere taj polinom dobija se velika zastita sa malom cenomNa veliki fajl sse prikaci samo 2 ili 4 bajtaMALO OBJASNITI

Network

Radi se o rutiranjuLokalno u smislu da svako odlucuje samo u odnosu na susedeNe pazi na celu rutu, samo odlucuje kome ce da posaljeRaznih grafova, heuristike i statistikeDijkstrin algoritam za nalazenje najkraceg puta u grafuDodeljuju se troskovi na svaki cvorObicno su zahtevi protivrecni

1. S tacke gledista sistema, optimalno iskorisceno i sto jeftinije2. S strane korisnika sto udobnije

Prica o gradskom saobracajnom (glediste putnika i glediste gradskog saobracajnog)Politika pre matematike (postave se politicke odluke, pa se to onda pretoci u matematiku)Najkraci put u smislu zadatog kriterijumaSve se primenjuje lokalno – nevoljaNema jedinstvene odluke, svako odlucuje sam za sebeCvorovi povremeno razmenjuju poruke o stanju saobracajaStaticko i dinamicko rutiranjeDinamicko moze biti opasno jer se zasniva na zastareloj informaciji (stanje u saobracaju u velikim gradovima)Prilagodjavanje je dobro, ako smo savrseno brzi

Transportni nivo

TCP protokol – garantuje isporuku (preporuceno pismo)UDP - User datagram protokol – cest protokol u praksi (obicno pismo)Ne isplati se preporuceno pismo, ako se pisma ne gubeMozda je UDP i cesci, ali je protokol dobio ime po TCPS prakticne tacke ovde se pojavljuju Barkleski Socketi

Page 26: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

26

Aplikacije medjusobno komuniciraju preko socketaNizi sloj se vidi kroz sockete i na taj nacin se povezuju racunari a mi imamo utisak direktne komunikacijeNpr socket 8080Portovi su kao postansko sanduce, telefon, fax, itd. a socket se odnosi na odredjeno sanduce (ime vlasnika)Resava se i pitanje uspostavljanja komunikacijeMi imamo utisak direktne konekcije medju racunarimaPrica o bankarskim transakcijamaTransportni protokol je mreznom protokolu, ono sto je data link fizickom, on ga pravi savrsenimNetwork ima mnogo manju odgovornost, a ovaj resava probleme sa greskama i gubljenjem paketaZahvaljujuci socketima sve funkcionise bez problemaTeski, a ponekad i neresivi problemiProblem uspostavljanja komunikacije, mora davati utisak savrsenog kanalaProblem raskidanja veze (npr bankovne transakcije)Obicno se obraca paznja na neovlasceni pristup, ali je takodje veoma bitno sta je bilo sa transakcijomProblem dve vojske (razdojena bela vojska plavom)-problem komunikacije bez garancije isporukeGlasnici moraju da prodju kroz plavu linijuNe moze da ima resenje, bez obzira da li saljemo 1 ili 50 glasnika, bitan je poslednjiVerovatnoca se smanjuje visestrukim slanjem poruka

Aplikativni nivo

Prica o servisima, multimedijama, kompresijama

ZASTITA

Postala kriticna sa sirenjem mrezamaStaro pitanje, ali se pitanje vaznosti menjaloU staro vreme se lako resavalo, jer je bio mali broj racunaraDva aspekta:

1. Pitanje pristupa resursima2. Zastita onoga cemu moze da se pristupi (kriptografija) – ako se pristupi da bude uzaludno

Zastita pristupa

Stara stvarFizicka zastitaNajjednostavnije i najsigurnije ali nije svida primenjivoSistem lozinke datira jos iz starih vojskiSistem dokazivanja identitetaLako je ako je direktno (na vrata moze da udje Pera)Objekat A se prosiruje da bi bio pogodniji za identifikaciju (vojska nosi uniformu)Kada sistem uniforme ne pomaze (u mraku), postoji tajna reccovek + znanje tajne reci je ta nadogradnja za prepoznavanjeKada su se racunari dovoljno prosirili krenulo se istim putemOva lekcija dosta brzo zastarevaBiometrijski metodi su najnovija vrsta zastiteNema nadogradjivanja nego se vrsi na osnovu nekih osobinaPrepoznavanje coveka bez posrednika (nadogradnje - passworda)Racunari to rade bolje od coveka (neko lici na Peru)Otisci prstiju, boja glasa, mreznjaca itd.Kod PDA i Laptopa vec je aktuelna zastita putem otiska prstaUkida se pitanje privatnostiKamere i triangulacija preko mobilnihZastita se jos uvek zasniva na passwordu

Predavanje 27

Sistem passworda je poceo na UNIX-u i poceo je naivnokasnije doteranoPostoji racujnar i terminal (sire shvatanje, moze i na jednom racunaru)

Page 27: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

27

Neko treba da radi i treba da se zna koje su njegove priviligijePrvo dodela ovlascenja (passworda) – otvaranje akauntaPassword file koji je tabela od dve kolone levo imena korisnika, desno passwordiStavi se u racunar i zastiti se da ne moze da mu se pristupiracunar ne daje OS, vec samo login aplikacijuvrti se u mrtvoj petlji i samo pita kako se korisnik zove i koji mu je passwordsistem ne garantuje da je Pera, vec samo da korisnik zna Perin passwordnaizgled je problem resenu praxi se vrlo brzo pokazalo losepassfile moze da se ukrade i to je onda kompromitovanoProblem je sto nije dobro da se zna gde stoji nesto sto je vazno (ja na toj i toj adresi drzim mnogo para u kasi koja ne moze da se provali)I banke kriju velike posiljkeU racunarstvu je islo mimo ostalog svetaPokazalo se da to tako ne mozeUvedena je sledeca faza, sifrovanje passfileNije kriptografija (nije dvosmerno) vec je jednosmernoUgradi se algoritam na taj racunar, prvi put se koristi kada korisnik otvara akaunt, a posle pri svakom logovanjuPera ukuca prozor, to se propusti kroz algoritam i dobije se bzvg koji se stavi u passfileOd zapisa u passfile nema koristi (bezvredna info) koji skoro ne mora da se cuvaDA LI JE MOGUCE ICI UNAZAD KOD JEDNOSMERNOG ALGORITMANema razloga da postoji inverzna funkcijaDruga pogodnost je sira primenljivost, isti princip moze i u bankama, nprSada nema administratora u banci koji je bog, banka nece nikome da dozvoli da bude bog, pa cak ni direktoru, a kamoli nekom sluzbeniku, kao sto je npr administratorSada samo korisnik zna sifru

Predavanje 28

sistem sa sifrovanim passom je bio relativno dobar, ali je postao nedovoljan sa razvojem tehnologijeveza izmedju terminala i racunara postaje drugacijePocelo da se siri preko telefonskih linija do udaljenih mestadug put nekriptovanog passwordamoze da se presretne na mnogim mestimaproblem se dosta lako resio jer je u to vreme doslo do zamene “glupih” terminala, “pametnim”algoritam se ugradjuje na lokalni racunar (terminal)algoritam se pokrece na glavnom racunaru samo kada se otvara nalogNe putuje cist pass kroz ziceI ovo moze da se napadne, ali mnogo tezeIdeal bi bio pass za jednokratnu upotrebu (protivrecno)Razne klasifikacije sigurnosti C1, C2 koje pojedini sistemi moraju da zadovoljeKoristi se sistem Chalange and response (izazov i odgovor) koji lici na neku varijantu jednokratnog pass-aSistem salje neki niz karaktera, koji treba pomesati sa pass-om i onda se to kombinuje na glavnom racunaru i uporedjujeOvi sistemi se smatraju dobrim, tako da veca paznja pocinje da se posvecuje covekuSistem = racunar + coveksistem je jak kao najslabija karika (covek)Ne vredi unapredjivati tehniku kada covek stojiPass je slucajan niz karaktera (bitna i tacna definicija iz knjiga)Tesko se zadovoljava ovo slucajan1000 ljudi da koriste sistem, i ispostavi se da 90% ljudi za pass uzme svoje imeDzabe tehnika kada svi uzimaju svoje imeRad nisu algoritmi vec rad sa ljudimaUputstvo od pola strane za sve varijante koje postojePrimer dobrog pass-a A3bD!c#8Ovo ne mogu da zapamte, pa ga zapisu (negde blizu kompa da mu bude zgodno)Ajde neka pass bude sucajna rec (nema veze sa korisnikom, ali ne sme besmisleno jer mora da se pamti)Sistem je bio dobar dok HW se nije razvio da moze da proceslja recnik (gruba sila)Na kraju je ideja da bude slucajan niz slogovaTreba znati da je vecina najvecih provala na racunarima nije uradjena velikom pamecu vec velikom gluposcuVec instaliran sistem

Page 28: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

28

Mora da se napravi prvi akaunt (ranije obicno system, system – fabricki sistem)Kasnije zaborave da sklone system, system

KRIPTOGRAFIJA

deo gde ne mogu da se zastite podaci (bezicna komunikacija, fileovi na racunaru)ideja je da se podaci ucine bezvrednim, da se transformisu u neupotrebljiv obliktakodje je bitno da se vrate u prvobitni oblik kasnijeJos od davnina jednostavne varijante (pomeranje za tri slova napred)Njegova celokupna vrednost se zasniva na tajnosti algoritma (mogli bi da vrate tri slova nazad)Ovo ne valjaVremenom su se iskristalisali osnovni principi – jedan je bio da tajnost podataka ne sme da se zasniva na tajnosti algoritmaExtrem je da se objavi algoritam (dobro je jer se podvrgava kritici)Ako oni kojima je to najinteresantnije nadju gresku, oni je nece objavitiKvalitet sistema ne sme da se zasniva na tajnosti algoritma, naprotiv treba da bude objavljenEnglezi su ostavili grad da bude bombardovan, da se ne bi videlo da imaju nemacke sifreJedna je od predrasuda da sto se komplikovanije muti, da ce biti teze da se provaliTo nije tacno jer analize ne idu time da on odvrti vec se analizira statistickiAko se koodira na nivou karaktera to se desifruje statisticki za par sekundiStatistika koje slovo se koliko puta pojavljuje u jezikuMorzeova azbuka je pravljena prema engleskom jezikuCesci karakteri su kraci (jedna . je slovo e)q je ---.Na taj nacin se dobija najekonomicniji kodSustinska statisticka zakonitost nije poremecenaKljucna operacija za kriptografiju je XORSvaka poruka se posmatra kao niz bitova (ne zanimaju nas reci, bajtovi itd)I onda se nad tim nizom primeni XOR sa nekim slucajnim nizom bitova koji je kljucako se dva puta primeni XOR, vraca se na pocetakSto se tice kriptografije, ova bi prica mogla da zavrsi jer je ovaj sistem savrsenDa bi se poruka sifrovala treba uzeti kljuc koji je slucajan i koji je iste duzine kao poruka i koji se koristi samo jednomSistem za jednokratnu upotrebu – one time ????Postoje razne varijante od nema nista preko komada poruke do skoro svega, za ovaj sistem se pokazuje da je nedodirljiv ni statisticki, ni analitickiE sada mi hocemo da kljuc bude kraci i da se koristi vise puta i na osnovu ovoga se pravi kriptografija (cela nauka je oko ovoga) – muka ceo zivot za nesavrsene rezultateKada je vec tako onda se svi sistemi prave na jednom principuOd svih tih mogucih mucenja, jedino imaju smisla permutacije i substitucije

Predavanje 29

Ovo su sve bili algoritmi sa jednim kljucemBesmislica je u odgovaranju proglasiti ih losim, ali to nije tacno, u svakoj klasi ima dobrih ili losihDES – los, ali se to ne odnosi na klasuJako su brziNjihove osobine su manje-vise suprotne, gde su jedni dobri drugi su losi i obrnutoNikada nema dokaza da je algoritam dobar, samo moze da se trazi kontraprimerIstorijski je prvo nastala jedna klasa algoritama – napravi se kljuc i sa tim kljucem se sifruje ili desifrujeIma raznih, boljih ili losijih, najpoznatiji DES – Data Encription StandardPropisala ga je americka vlada (ima zvanican status) – to ne znaci da je najboljiRazne stvari su bile standard, COBOL, Ada, Intel CPU – u, DOSOn se sastojao iz 16 faza – 16 puta permutovanje, substitucije i permutacijeNamerno je izabran kratak kljuc od 56 bita2 decenije bio na pozorniciMnogo radova gde se videlo da nije dobarAko je nesto standard, to ne znaci da je to dobroDES nije napravljen da bude najbolji svetski algoritam koji nikada nece biti provaljenDES je napravljen da bude standard za poslovne ljude, a ne da bude tako sigurno da niko to ne moze da procitaVlada moze da ga desifruje sa velikim racunarima

Page 29: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

29

Kasnije su se pojavili radovi koji pokazuju zasto je losAko se primeni dva puta, nije se nista uradilo pametnoAko se primeni tri puta, to vec ima smisla – trostruki DESInteresantna prica kako je provaljen DESPokazalo se da ne treba mrsitiNa racunaru se gledalo koliko neke operacije trajuNa osnovu toga se dobije dosta informacija na osnovu kojih moze da se suzi polje pretragePrimer iz zivota – sifra na biciklu (tajnost kljuca)Moze da primeni grubu silu (ne da seca vec da proba 10000 kombinacija)Iz daleka gleda pokrete ruke, jer se na taj nacin smanji prostor pretrazivanjaOn je smanji prostor na mali broj kombinacija koji nemaju istu verovatnocuNakon toga je DES otisao u penzijuOBJASNITI MERENJE CPU VREMENADES je mogao da bude dosta bolji sa duzim kljucemSvi algoritmi imaju dobre i lose straneAlgoritmi su dobri, zato sto su jednostavni i brziMoze da se napravi posveceni HW, ne mora da se resava SW pa na CPU-uTo brzo znaci da moze da se upotrebljava i tamo gde nismo nameravalinpr. razgovor telefonom – glas mora da se digitalizuje (mobilna radi tako, a vec i dobar deo fixne)Kada je niz bitova moze da se sifrujeZahtev je realno vreme (nema pogadjanja)Lako se sifruju zvucni signali, a mogu i video signaliNeki problemi koji su stajali od pocetka su ostali zauvek da vise tuPrvi problem je distribucija kljuca (nije se bavilo time, vec slozenoscu algoritma)Nisu se uzele u obzir realne potrebeProblemi koji se matematicki uopste ne razmatraju su postali ozbiljni problemiPitanje jedne zemlje i ambasadaBez obzira na napredak tehnologije ostaje problem distribucije kljucaMora se imati pouzdan kurir (ako ih ima mnogo postaje pitanje koliko je pouzdan)Drugi problem je da ostaje pitanje ko je poslao poruku (nemamo garanciju ko je to uradio)Mane su distribucija kljuca i utvrdjivanje identiteta posaljiocaPre 25 godina se doslo do ideje da se to reci radikalno drugacijeIdeja je da se naprave dva simetricna kljuca (s jednim se sifruje, a sa jenim desifruje) – kada se to kaze matematicki ne vidi se zasto je to boljeIdeja je stvarno revolucionarna i elegantna jer se oba problema potpuno resavaju (100%)Kada hoce neko (lice A) da komunicira sa nekim (licem B), on napravi dva kljuca Da, Ea, i oni to nece da menjaju vec ce imati 4 kljuca, B ce da napravi svoja dva kljuca Db, i EbPitanje distribucije se svede na davanje jednog kljuca, jer drugi zauvek ostaje kod lica A ili lica BJedan nikada ne napusta osobu koja ga je smislila, a drugi se ne mora stititi, cak moze da se objaviZato se ovaj sistem naziva jos i sistem sa javnim i tajnim kljucemJednom je cuvanje tajnosti trivijalno, a drugom ne mora ni da se cuva tajnostKada A salje B-u, on ce uzeti poruku i sifrovati ga sa Eb, a B ce ga desifrovati sa DbSistem lepo funkcionise, a ne postoji problem distribucije kljucaBonus je krajnje jednostavna identifikacija posaljiocaTo su dve posebne potrebeNekada nas ne zanima da komunikacija bude tajna vec nas zanima od koga je to stiglo (razna narucivanja – da se neko ne Sali, a moze da se procita ko je narucio)Kako se to radiA sifruje poruku svojim tajnim kljucem Ea (At), a B moze da ga desifruje Da (Aj), i na taj nacin je siguran da je poruka stigla od A, jer ako je B desifrovao poruku sa Aj, to znaci da je ona morala da bude sifrovana sa At, a samo A ima AtU praxi se ta dva kombinuju da bi se poruka zastitila od citanja i da ima identifikacijuMatematicki to ide ovako A sifruje prvo sa At, a zatim sa Bj i na taj nacin ne moze niko ni da je procita a B ima garanciju da je to doslo od AU praxi je ovo komplikovano, pa se sifruje samo deo koji se zove digitalni potpisA celu poruku zasifruje sa Bj, a samo svoj potpis sa At, i onda B desifruje celu poruku sa Bt, a samo potpis sa AjNa taj nacin je reseno i pitanje tajnosti i pitanje identifikacije (od koga je)Ovi algoritmi su dobri i oni su otklonili mane, ali njihove mane nismo spominjaliOni su jezivo sporo, do milion puta sporijiDok su oni prvi brzi (realno vreme), drugi su spori do granice neupotrebljiviZa jedno pismo se cekaju sati

Page 30: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

30

U praxi cemo koristiti sistem sa jednim kljucem, a taj kljuc cemo slati sifrovan sistemom sa dva kljucaIz oba sveta uzimamo ono najbolje (brzinu, doturanje kljuca, identifikaciju)PGP – javni sistem (servis) koji to radi, ali nikad se ne moze nikome verovatiSavet u vezi sa kriptografijom bi bio: ako ikada ista imate nameru da kriptujete, onda morate sve da kriptujeteJedna kriptovana poruka bode oci i mogla bi sigurno da se desifruje za neko vremeCak i da se ne desifruje, vidi se da je lice A poslalo licu B neku poruku

NA CEMU SE TI ALGORITMI ZASNIVAJU

Dve – tri vrste polaznih osnovaNajcesce je na faktorizaciji brojevaUzima se kao polazna osnova da ne postoji matematicka teorema ili algoritam kako da se desifrujeUzmu se prosti brojevi p i q i napravi se proizvod p x q i dobije se slozen broj n (ciji su cinioci p i q)Kada znate n, kako da znate od cega se on sastoji – nema matematike, samo gruba sila77 = 7 * 11 – mi vidimo od cega se sastoji, ali ne postoji operacija “mi vidimo”Gruba sila radi do brojeva sa nekih 100 cifaraPrvi i najpoznatiji algoritam sa dva kljuca je RSA algoritam (inicijali autora)Uzmu se prosti p i q koji imaju po sto cifara i napravi se njihov proizvod nOnda se uzme proizvod p – 1 x q – 1 = z i nadju se brojevi d i e takvi da je proizvod d * e = 1 po modulu zOni su uzajamno prosti (relativno prosti) – NZD im je 1Poruku treba podeliti na komade od kojih se svaki sifruje brojem manjim od nDelove poruke dizemo na stepen e po modulu n i to je enkripcijaa pri dekripciji dizemo na stepen d po modulu nBroj n je reda velicine 200 cifara, a brojevi e i d su brojevi reda velicine 100 cifaraNa usmenom oko ovoga zapinje:Kako se sifruje poruka?Uzmemo Pi-ove pa ih dizemo na stepeneA sta su nam to Pi-ovi, sta je to porukaZa svako sifrovanje poruka je niz bitova bez ikakve strukture – prava definicija (briga nas da li je ASCII ili video zapis ili sta)Poruku delimo na n delova – jako ozbiljna greskaIspalo bi da bilo koju poruku delimo na n delova, “Rat i mir” i jednu recenicu, sto je logicka besmislicaDrga besmislena greska, ali za nijansu blaza – uzimamo delove duzine n bitova, n je duzine reda 10^200, a takvih ima jako maloUzima se poruka u takvim komadima da je svaki taj komad broj koji je manji od nSvaki komad je broj do nKada se izracuna n i dobije se neki broj npr 65 000, to je dva bajta, treba uzimati komade po dva bajta, znaci bitova ima mnogo manje od n, njih ima 16Kada se kaze da je po modulu n, to znaci da ne moze biti veci od n, (ako je po modulu 1000, ne moze biti 1005 – ostatak pri deljenju sa 1000 ne moze da bude 1005)Svodi se na logaritam za osnovu 2, ima delova k, takvih da je 2^k <= n 2^16 je otprilike 65000 znaci imamo log265000 da bi dobili broj delova

Objasnjenje

U matematici, logaritam datog broja za datu bazu je stepen na koji treba podići bazu da bi dobili dati broj. Na primjer, logaritam od 1000 za bazu 10 je 3, jer je 10 na 3 (deset na treću) 1000. Generalno, za broj x, bazu b i stepen n se računa:

Prakticno uputstvo bi bilo sledece:Ako je n broj reda velicine 10^200 (zato sto ima 200 cifara) 10^3 ~ 2^10 znaci 10^200 = (10^3)^67 = (2^10)^67 = 2^670k = log22^670 = 670Znaci k je 670 bitova, sto iznosi oko 80 bajtovaJasno je da statisticke metode nece da rade jer su komadi od po 80 bajtovaOVO MI NIJE BAS JASNO SA STATISTIKOM I VELICINOM KOMADA PO 3 KOMADA, PO 4 KOMADAKAKO IZRACUNAVAMA e I d

PRICA O SLUCAJNOSTI

Page 31: fknmaterijali.comfknmaterijali.com/public/materijali/uvod_u_operativne... · Web viewKroz istoriju OS-a mozete da vidite razne znacajne stvari i njihovu povezanost Istoriju cemo da

31

Ponovo recenica iz price o passwordima, slucajan niz karakteraKomande u programskim jezicima koje generisu slucajne brojeve ne prave slucajne brojeve vec ih prave po nekim algoritmima, ali su ustvari pseudoslucajniSlucajni brojevi dolazi iz prirode, a to je filozofsko pitanjeBacanje novcica za slucajne bitoveU programskim jezicima, jedan od uobicajenih (teorijski popularnih) algoritama je algoritam sredine kvadrataUzme se na primer jedan 6-cifren broj i digne se na kvadrat i dobije se 12-cifren broj i onda se iz toga uzme srednjih 6 cifaraOvo se pokazuje kao dosta dobroPoslednja cifra je odredjena jer zavisi od poslednje cifre broja koji dizemo na kvadratPrva takodjeSrednje nemaju tako jaku koleracijuProblem je sto mi nikada ne mozemo da dokazemo da su neki brojevi slucajni, mi mozemo samo da dokazemo da nisuProblem se svodi na ovo: Ako imate uzorak iz uniformne raspodele na intervalu 0-1, onda cete moci da dobijete svaku drugu raspodelu.Ovo drugo ce biti kvalitetno, koliko je ono prvo kvalitetnoUniformnu raspodelu izmedju 0 i 1 nije lako dobitiTreba proveriti da li je srednja vrednost ovog niza 0.5a sta nizom 0,1,0,1,0,1,0,1, ili niz 0.5, 0.5,0.5,0.5Uvodi se disperzijaNiz 0,1,0,1,0,1,0,1 ima preveliku disperziju, a niz 0.5, 0.5,0.5,0.5 ima disperziju 0 – padaju na testu disperzije0, 0.2, 0.4, 0.6, 0.8, 1.0, 0.0, 0.2, 0.4, . . .Zadovoljava i srednju vrednost i disperziju, ali ne zadovoljava slucajnostPada na testu znakova (da li je veci prvi ili drugi)Ima nekih 35 testova koji pokazuju da li je neki niz slucajan, ali to ne znaci da je niz slucajan, vec samo da nemamo 36-ti test na kome se padaProgramski pseudoslucajni brojevi su neupotrebljivi za kriptografiju, vec samo za simulacije (npr. gradsko saobracajno)Njihova vrednost je 0 za kriptografijuImamo komplikovane uredjaje, gajgerove brojace, merenje elektrosuma – ciji se rad svodi na bacanje novcica ali nije fizicko bacanje novcica da ne bi bilo zamorno i traje brzeHW uredjaj koji je vezan na neki prirodan izvor slucajnosti, koji su skupi i koji rade brzoNa racunaru se cesto kada se instalira takav trazi da se kucaju neki karkteri.Racunar meri vreme sa jako finom merom, meri u mikrosekundamaPravi bitove na osnovu toga da li je parno ili neparno vreme izmedju dva kucanjaA kod random funkcija on uzima neku sistemsku varijablu, kao npr. sistemsko vreme