1 / 24

OPERATIVNI SISTEMI

1. DEO. OPERATIVNI SISTEMI. Prof. dr Milorad K. Banjanin. softver namenjen specifičnim upotrebama od strane korisnika za rešavanje konkretnih problema.

manjit
Download Presentation

OPERATIVNI SISTEMI

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 1. DEO OPERATIVNI SISTEMI Prof. dr Milorad K. Banjanin

  2. softver namenjen specifičnim upotrebama od strane korisnika za rešavanje konkretnih problema. softver za upravljanje kompjuterskim sistemom na osnovnom nivou, nezavisno od konkretne primene kompjutera od strane korisnika i od konkretnog kompjuterskog sistema. Bez svog softvera, kompjuter je beskorisna gomila metala. Aplikativni programi Sistemski programi • može da • skladišti, obrađuje i pronađe informacije; • reprodukuje muziku i video; • šalje e-mail, pretražuje Internet; • obavlja mnoge druge aktivnosti SOFTVER KOMPJUTER Najosnovniji sistemski program je operativni sistem, čiji je posao da kontroliše sve resurse kompjutera i da obezbedi osnovu na kojoj se aplikativni programi mogu pisati.

  3. Pisanje programa koji prate sve ove komponente i koriste ih korektno, a kamoli optimalno, je ekstremno težak posao. Moderni kompjuterski sistem Mrežni intrfejsi Procesori Memorija Diskovi Štampač Monitor Tastatura Postalo je jasno da se mora pronaći neki način da se programeri sačuvaju od kompleksnosti hardvera. Način koji se konačno pojavio je da se postavi jedan sloj softvera preko golog hardvera, da upravlja svim delovima sistema, i da se predstavi korisniku interfejs ili virtuelna mašina koju je lakše razumeti i programirati. Ovaj sloj softvera je operativni sistem.

  4. Na primer, disku se može izdati komanda da očitava unošenjem vrednosti adrese diska, adrese glavne memorije, brojem bajtova, i usmerenjem (očitavanje ili pisanje) u njegove registre. Praktično, mnogo više parametara je potrebno, i status koga vrati drajv nakon operacije može biti kompleksan. Pored toga, za mnogo I/O (Input/Output-ulazno/izlazni) uređaja, tajming ima značajnu ulogu kod programiranja. U svakom taktu, jedan ili dva operanda se uzimaju od registara i kombinuju u aritmetičkoj logičkoj jedinici. Rezultat se skladišti u jednom ili više registara. Na nekim mašinama, operacije staze podataka se kontrolišu softverom, koji se naziva mikroprogram. Na drugim mašinama, kontrolišu se direktno hardverskim kolima. Glavna funkcija operativnog sistema je da sakrije svu tu kompleksnost i pruži programeru pogodniji set instrukcija sa kojima će raditi. Mašinski jezik obično ima između 50 i 300 instrukcija, većinom za pomeranje podataka kroz mašinu, vršeći aritmetiku, i poredeći vrednosti. Na ovom nivou, ulazno/izlazni uređaji se kontrolišu unošenjem vrednosti u specijalne registre uređaja. Svrha staze podataka je da izvršava neki set instrukcija. Neke od njih se mogu izvršiti u jednom ciklusu staze podataka; druge mogu zahtevati višestruke cikluse staze podataka. Ove instrukcije mogu koristiti registre ili druge hardverske kapacitete. Zajedno, hardver i instrukcije su vidljive za programera asemblerskog jezika iz arhitektura instrukcijskog seta (engl. Instruction Set Architecture - ISA ). Ovaj nivo se često naziva mašinski jezik. Fizički uređaji se grupišu i formiraju funkcionalne jedinice. Ovaj nivo sadrži neke registre interne za centralnu procesorsku jedinicu (engl. Central Processing Unit-CPU) i stazu podataka koja sadrži aritmetičku logičku jedinicu. Operativni sistem je (obično) onaj deo softvera koji se pokreće u modu jezgra ili supervizor modu. Od korisničkih grešaka je zaštićen hardverom . Sastoje se od čipova integrisanih kola, žica, električnog napajanja, katodnih cevi, i sličnih fizičkih uređaja. Nad sistemskim programima dolaze aplikativni programi. Ove programe kupuju (ili pišu) korisnici za rešavanje svojih problema, kao što je obrada teksta, radne liste, inženjerski proračuni, ili skladištenje informacija u baze podataka. Na vrhu operativnog sistema je ostatak sistemskog softvera. Ovi programi definitivno nisu deo operativnog sistema, iako se obično dobijaju unepred instalirani od strane proizvođača kompjutera, ili u paketu sa operativnim sistemom ako se on instalira nakon kupovine. Bankarski sistem APLIKATIVNI PROGRAMI Rezervacija avio karata Web pretraživač Kompajleri SISTEMSKI PROGRAMI Editori Komandni interpreter Operativni sistem HARDVER Mašinski jezik Mikroarhitektura Fizički uređaji Položaj OS-a u softverskoj hijerarhiji

  5. obavlja dve odvojene funkcije • ŠTA JE OPERATIVNI SISTEM • Operativni sistem kao menadžer resursa • Operativni sistem kao proširena mašina

  6. Operativni sistem kao proširena mašina PRIMER PRIMER Na nivou mašinskog jezika, arhitektura (set instrukcija, organizacija memorije, I/O, i struktura magistrala) većine kompjutera je primitivna i teška za programiranje, posebno za ulaz/izlaz. Kako se radi I/O flopi diska koristeći NEC PD765 kompatibilni kontroler čipovi koji se koriste na mnogim personalnim kompjuterima zasnovanim na Intelu? Kako se radi I/O flopi diska koristeći NEC PD765 kompatibilni kontroler čipovi koji se koriste na mnogim personalnim kompjuterima zasnovanim na Intelu? PD765 ima 16 komandi, gde je svaka specifikovana unošenjem između 1 i 9 bajta u registar uređenja. Ove komande služe za pisanje i čitanje podataka, pomeranje ruke diska, i formatiranje staza, kao i inicijalizaciju, prepoznavanje, resetovanje i rekalibracija kontrolera i drajvova. Najosnovnije komande su read i write, od kojih svaka zahteva 13 parametara, pakovanih u 9 bajta. Ovi parametri specifikuju stavke kao što su adresa bloka diska koji treba da se pročita, broj sektora po stazi, mod snimanja koji se koristi na fizičkom mediju, raspoređivanje intersektorskih praznina, itd. Kada se operacija kompletira, čip kontroler pokazuje status 23 i polja grešaka pakovana u 7 bajta. Bez ulaženja u detalje, jasno je da prosečan programer verovatno ne želi da se previše uključuje u programiranje flopi diskova (ili hard diskova, koji su isto tako kompleksni). Umesto toga, programer želi jasnu apstrakciju visokog nivoa.

  7. Operativni sistem kao proširena mašina Program koji krije istinu o hardveru od programera i predstavlja fin, jednostavan pregled imenovanih datoteka koje se mogu čitati i pisati je, naravno, OPERATIVNI SISTEM. Takođe, operativni sistem skriva mnogo napornog posla u vezi sa prekidom, tajmerima, upravljanjem memorijom, i ostalim stavkama niskog nivoa. U svakom slučaju, apstrakcija koju nudi operativni sistem je jednostavnija i lakša za korišćenje nego ona koju nudi osnovni hardver. Funkcija operativnog sistema je da predstavi korisniku ekvivalent proširene mašineili virtualne mašinekoja je lakša za programiranje od osnovnog hardvera. Drugim rečima, operativni sistem obezbeđuje razne usluge koje programi mogu da postignu koristeći specijalne instrukcije koje se nazivaju sistemski pozivi.

  8. Operativni sistem kao menadžer resursa Operativni sistem postoji da upravlja svim delovima kompleksnog sistema. Moderni kompjuteri se sastoje od procesora, memorija, tajmera, diskova, miševa, mrežnih interfejsa, štampača, i drugih uređaja. Zadatak operativnog sistema je da obezbedi redovnu i kontrolisanu alokaciju procesora, memorija, i I/O uređaja za razne programe koji se nadmeću za njih. Primer. Kada kompjuter (ili mreža) ima više korisnika, potreba za upravljanje i zaštitu memorije, I/O uređaja, i drugih resursa je još veća, jer bi korisnici u suprotnom smetali jedni drugima. Pored toga, korisnici često imaju potrebu da dele ne samo hardver, nego i informacije (datoteke, baze podataka, itd.). Ovaj pregled operativnog sistema govori da je njegov primarni zadatak da prati ko koristi koji resurs, da dodeljuje zahtevane resurse i da posreduje kod konflikta sa zahtevima od različitih programa i korisnika. Šta bi se desilo kada bi za tri programa koja rade na nekom kompjuteru svi pokušali da štampaju svoj rezultat istovremeno na istom štampaču? Prvih nekoliko redova štampe bi mogli biti od programa 1, sledećih nekoliko od programa 2, onda nešto od programa 3, itd. Rezultat bi bio haos. Operativni sistem može doneti red za potencijalni haos ispisivanjem svih rezultata namenjenih štampanju na disk. Kada jedan program završi, operativni sistem može zatim kopirati njegov rezultat sa diska gde je smešten na štampač, dok u isto vreme drugi program može nastaviti da generiše rezultate.

  9. Operativni sistem kao menadžer resursa Upravljanje resursima uključuje multipleksiranje (deljenje) resursa na dva načina: Multipleksiranje resursa u vremenu Multipleksiranje resursa u prostoru Ako se resursi vremenski multipleksiraju, različiti programi ili korisnici ih po redu koriste. Prvo jedan od njih koristi resurs, onda drugi, itd. Na primer, sa samo jednom CPU i više programa koji žele da se pokrenu sa njom, operativni sistem prvo dodeljuje CPU jednom programu, zatim kada dovoljno dugo radi, drugi dobija da koristi CPU, zatim sledeći, a zatim na kraju prvi ponovo. Određivanje kako se resurs vremenski multipleksira – ko ide sledeći i koliko dugo – je zadatak operativnog sistema. Umesto da korisnici čekaju red, svaki dobija deo resursa. Na primer, glavna memorija se normalno deli između nekoliko programa koji rade, tako da svaki može da ima svoje mesto u isto vreme . Pretpostavljajući da postoji dovoljno memorije da sadrži više programa, efikasnije je sadržati nekoliko programa u memoriji odjednom umesto da se jednom od njih da cela memorija, posebno ako mu je potreban samo mali deo. Naravno, to dovodi do pitanja pravednosti, zaštite itd., i na operativnom sistemu je da ih reši.

  10. ISTORIJA OPERATIVNIH SISTEMA Pošto su operativni sistemi istorijski blisko povezani sa arhitekturom kompjutera na kojima rade, dat je pregled generacija kompjutera kako bi se pokazalo kakvi su bili njihovi operativni sistemi. Prvi pravi digitalni kompjuter je dizajnirao engleski matematičar Čarls Bebidž (Charles Babbage, 1792-1871). Iako je Bebidž proveo veći deo svog života pokušavajući da napravi svoj „analitički motor“, nikad nije uspeo da napravi da radi pravilno jer je bio čisto mehanički, a tehnologija njegovog vremena nije mogla da proizvede odgovarajuće točkove, zupčanike i zupce do visoke preciznosti koja mu je bila potrebna. Nije potrebno naglašavati da analitički motor nije imao operativni sistem. • IV generacija (1980-...) Personalni kompjuteri • III generacija (1965-1980) integrisana kola i multiprogramiranje • II generacija (1955-65) tranzistori i paketni sistemi • I generacija (1945-55) vakuumske cevi i utikačka ploča

  11. Računari su izgrađeni na bazi vakuumskih elektronskih cevi. Tipični predstavnici UNIVAC I Programiranje se radilo u apsolutnom mašinskom jeziku. Programski jezici su bili nepoznati (čak je i asemblerski jezik bio nepoznat). Za operativne sisteme se nije čulo. Uobičajen način rada je bio da se programer upiše za neki blok vremena na upisnoj listi na zidu, zatim siđe u prostoriju sa mašinom, ubaci svoju utikačku ploču u kompjuter, i provede sledećih nekoliko sati nadajući se da nijedna od oko 20.000 vakuumskih cevi ne izgori tokom rada. EDSAC (Maurice Wilkes, 1949) BINAC (Eckert's i Mauchly's Electronic Control Company ‐1949) SEAC (Samuel Alexander i Ralph Slutz, 1950) SWAC (Harry Huskey, 1950) IAS (Institute of Advanced Study, 1952) IBM701(1952.) Mašine su bile velike, skupe i nepouzdane; zahtevale su klimatizaciju i obučeno osoblje za rad i programsko upravljanje. Iako su bile ogromne i ispunjavale čitave prostorije sa desetinama hiljada vakuumskih cevi, mašine su ipak bile milione puta sporije čak i od danas dostupnih najjeftinijih personalnih kompjutera. • I generacija (1945-55) vakuumske cevi i utikačka ploča Računari I generacije su bili dostupni velikim organizacijama i državnim agencijama, ali su postali i nezamenljiv alat za naučnike, inženjere i druge profesionalce.

  12. Računari su izgrađeni na bazi tranzistora. Računari druge generacije sadržali su oko 10000 pojedinačnih tranzistora koji su ručno pričvršćivani na ploče i s drugim elementima povezivani žicama. Računari druge generacije su uglavnom bili programirani u FORTRAN-u i asemblerskom jeziku. Tipični operativni sistemi su bili FMS (engl. Fortran Monitoring System - Fortran sistem za praćenje) i IBSYS, IBM-ov operativni sistem za 7094. Da bi pokrenuo neki posao (tj. program ili set programa), programer bi prvo napisao program na papiru, a potom ga izbušio na kartici. Zatim bi to odneo do prostorije za unos i prosledio jednom od operatera. Kada kompjuter završi zadati posao, operater bi otišao do štampača i iscepio rezultat i odneo ga u izlaznu prostoriju, tako da ga programer kasnije uzme. Zatim bi uzeo jedan dek kartica koje su doensene iz ulazne prostorije i učitao ga. Veći deo vremena se gubilo dok operateri šetaju kroz mašinsku prostoriju. S obzirom na velike troškove opreme, ljudi su tražili načine da smanje utrošak vremena. Rešenje koje je usvojeno je bio paketni sistem (engl. batch system). Ideja je bila da se sakupi nekoliko poslova u ulaznoj prostoriji i zatim da se učitaju na magnetnu traku koristeći mali (relativno) jeftin kompjuter, kao što je IBM 1401, koji je bio veoma dobar u čitanju kartica, kopiranju traka, i štampanju rezultata, ali uopšte nije bio dobar u numeričkim obračunima. Druge, mnogo skuplje mašine, kao što je IBM 7094, su se koristile za prave proračune. Kompjuteri su postali dovoljno pouzdani da su mogli da se proizvode i prodaju kupcima sa očekivanjem da će nastaviti da funkcionišu dovoljno dugo da urade neki koristan posao. Prvi put je postojala jasna odvojenost između dizajnera, konstruktora, operatera, programera i osoblja za održavanje. • II generacija (1955-65) tranzistori i paketni sistemi Ove mašine, koje se sada nazivaju mejnfrejmovi (engl. mainframes), su bile zatvorene u posebno klimatizovanim kompjuterskim prostorijama, sa posebno obučenim profesionalnim operaterima koji su radili na njima. Samo su velike korporacije, vladine agencije ili univerziteti mogli platiti njihovu multimilionsku cenu. Kompjuteri druge generacije su se uglavnom koristili za naučne i inženjerske proračune, kao što je rešavanje parcijalnih diferencijalnih jednačina koje se često pojavljuju u fizici i inženjerstvu.

  13. Do početka 1960-tih, većina proizvođača kompjutera su imali dve odvojene, i potpuno nekompatibilne, proizvodne linije. System/360 je bio serija softverski kompatibilnih mašina (od 1401 pa do 7094). Mašine su se razlikovale jedino po ceni i performansama. Pošto su sve mašine imale istu arhitekturu i set instrukcija, programi pisani za jednu mašinu su se mogli pokretati na svim ostalim. Pored toga, 360 je bio dizajniran da podrži i naučne (tj., numeričke) i komercijalne proračune. Tako je jedna porodica mašina mogla da zadovolji potrebe svih korisnika. na znakove orijentisani, komercijalni kompjuteri, kao što je 1401, koji su se uglavnom koristili za sortiranje traka i štampanje u bankama i osiguravajućim kompanijama • III generacija (1965-1980) integrisana kola i multiprogramiranje na reči orijentisani, veliki naučni kompjuteri, kao što je 7094, koji su se koristili za numeričke proračune u nauci i inženjerstvu 360 je bio prva prava kompjuterska linija koja je koristila (mala) Integrisana kola (engl. Integrated Circuits-IC), i tako obezbedio veliku prednost nad drugom generacijom mašina. Primerci ovih mašina se još uvek koriste u kompjuterskim centrima. Danas se oni često koriste za upravljanje velikim bazama podataka (npr., za avionske sisteme rezervacija) ili kao serveri za WWW sajtove koji moraju da obrade hiljade zahteva u sekundi. Najveća prednost ideje „jedna porodica“ je istovremeno bila i njena najveća slabost. Namera je bila da ceo softver, uključujući operativni sistem, OS/360, mora da radi na svim modelima. Morao je da radi na malim sistemima i na veoma velikim sistemima. Morao je biti dobar na sistemima sa nekoliko perifernih uređaja i na sistemima sa mnogo perifernih uređaja. Morao je da radi u komercijalnim okruženjima i u naučnim okruženjima. Iznad svega, morao je biti efikasan za različite upotrebe. Uprkos svojoj enormnoj veličini i problemima, OS/360 i slični operativni sistemi treće generacije su prilično dobro zadovoljili potrebe većine svojih korisnika. Oni su popularizovali nekoliko ključnih tehnika koje nisu postojale u operativnim sistemima druge generacije, od kojih je najvažnija multiprogramiranje. Razvoj, održavanje i marketing za ove dve potpuno odvojene proizvodne linije je bilo skupo za proizvođače kompjutera. Pored toga, korisnici kompjutera su tražili nove mašine koje su imale istu arhitekturu kao i dotadašnji a na kojima bi mogli pokretati stare programe, ali brže. Oba problema je rešio IBM uvođenjem System/360

  14. Želja i potreba za brzim odgovorom prokrčila je put za tehnici timesharing (deljenje vremena), koja predstavlja varijantu multiprogramiranja, gde korisnik ima onlaj terminal. Time je postignuto da kompjuter može obezbediti brzu, interaktivnu uslugu jednom broju korisnika i takođe da radi na velikim paketnim poslovima u pozadini kada CPU inače nije upotrebljen. Prvi ozbiljni sistem deljenja vremena je CTSS (engl. Compatible/Time Sharing System). Deljenje vremena u praksi nije postalo popularno sve dok neophodni zaštitni hardver nije ušao u raširenu primenu tokom treće generacije. MIT, Bell Labs, i General Electric su razvili napredniji model MULTICS (engl. MULTiplexed Information and Computing Service), koji je bio dizajniran za podršku stotinama korisnika na mašini samo malo jačoj od Intel 80386 PC-a, iako je imao mnogo više I/O kapaciteta. Međutim, iako je MULTICS bio previše ambiciozan za to vreme, on je uveo mnoge početne ideje u kompjutersku literaturu, koje su imale ogroman uticaj na kasnije operativne sisteme. Iako je bilo malo korisnika MULTICS-a, njegovi korisnici su bili lojalni (npr. General Motors, Ford, i Agencija za nacionalnu bezbednost SAD su tek krajem 1990-tih ugasili svoje MULTICS sisteme). Treća generacija računara se odnosi i na ideju „kompjuterski uređaj“. U svojoj najjednostavnijoj formi, PC-jevi ili radne stanice(engl. workstations) u firmi ili školi se mogu povezati preko lokalne mreže (engl. Local Area Network-LAN) sa fajl serveromna kom se nalaze svi programi i podaci. Administrator mora da instalira i zaštiti samo jedan set programa i podataka, i lako može da reinstalira lokalni softver na PC-u ili radnoj stanici koja ima grešku bez potrebe da brine o pronalaženju ili zaštiti lokalnih podataka. U heterogenijim okruženjima, klasa softvera koja se naziva midlver (engl. middleware) je razvijena da premosti jaz između lokalnih korisnika i datoteka, programa i baza podataka koje koriste sa udaljenih servera. Midlver čini da umreženi kompjuteri izgledaju lokalno za pojedinačne korisnike PC-jeva ili radnih stanica i predstavlja konzistentan korisnički interfejs iako može da postoji mnogo različitih servera, PC-jeva i radnih stanica u upotrebi. Primer je WWW. Spooling tehnika (engl. Simultaneous Peripheral Operation On Line) koja podrazumeva sposobnost da se poslovi sa kartica očitavaju na disk čim se donesu do kompjuterske prostorije, i da po završetku nekog posla operativni sistem može učitati novi posao sa diska u sada praznu particiju i pokrenuti ga. Iako su operativni sistemi treće generacije bili dovoljni za velike naučne obračune i masivne komercijalne obrade podataka, ipak su u osnovi bili paketni sistemi. Sa sistemima treće generacije, vreme između pokretanja posla i dobijanja rezultata se često merilo satima, pa je i pogrešno postavljen zarez mogao izazvati neuspeh, i da programer izgubi pola dana. POSAO 3 Ostale karakteristike operativnih sistema treće generacije POSAO 2 POSAO 1 MULTIPROGRAMIRANJE OPERATIVNI SISTEM Memorija se delila na nekoliko delova, sa različitim poslom na svakoj particiji. Dok jedan posao čeka da I/O završi, drugi posao može da koristi CPU. Ako dovoljno poslova mogu da se drže u glavnoj memoriji u jednom trenutku, CPU bi se mogao koristiti skoro 100 % vremena. Bezbedno smeštanje više poslova istovremeno zahtevalo je poseban hardver za zaštitu svakog posla od krađe i štete, sa čime su 360 i drugi sistemi treće generacije bili opremljeni. Particije memorije • III generacija (1965-1980) integrisana kola i multiprogramiranje Multiprograming sistem sa tri posla u memoriji

  15. Ostale karakteristike operativnih sistema treće generacije Još jedan glavni razvoj tokom treće generacije je fenomenalan rast minikompjutera, počinjući sa Digital Equipment Company (DEC) PDP-1, 1961. godine. PDP-1 je imao samo 4K 18-bitnih reči, ali po ceni od 120.000 dolara po mašini, prodavao se odlično. Za određene vrste nenumeričkih poslova, bio je zadovoljavajuće brz i doveo je do rađanja jedne potpuno nove industrije. • III generacija (1965-1980) integrisana kola i multiprogramiranje Jedan od kompjuterskih naučnika u Bell Labs koji je radio na MULTICS projektu, Ken Tompson (Ken Thompson), je kasnije pronašao mali PDP-7 minikompjuter koga niko nije koristio i napisao osiromašenu verziju MULTICS-a za jednog korisnika. Ovaj posao se kasnije razvio u UNIX operativni sistem, koji je postao popularan u akademskom svetu, sa vladinim agencijama, i sa mnogo kompanija. Dve glavne verzije UNIX operativnog sistema su System V i BSD, (engl. Barkley Software Distribution). Da bi bilo moguće pisati programe koji bi se mogli pokretati na bilo kom UNIX sistemu, IEEE je razvio standard za UNIX, koji se naziva POSIX, koga većina verzija UNIX-a podržava.

  16. IV generacija (1980-...) Personalni kompjuteri Porodice mikrokompjutera 64-bitni mikroprocesor Doba mikroprocesorskih personalnih kompjutera je počelo sa razvojem LSI (engl. Large Scale Integration-integracija visokog stepena) kola, čipova koji sadrže hiljade tranzistora na kvadratnom centimetru silicijuma. Personalni kompjuteri (u početku nazivani mikrokompjuteri) su omogućili da pojedinci imaju svoje sopstvene kompjutere. 32-bitni mikroprocesor 16-bitni mikroprocesor 8-bitni mikroprocesor

  17. 16-bitni mikroprocesor 16-bitni sistemi - Intel se pojavio sa 8086, a početkom 1980-tih, IBM je dizajnirao IBM PC oko Intelovog 8088. Microsoft je ponudio IBM-u paket koji je uključivao Microsoftov BASIC i operativni sistem DOS (engl. Disk Operating System) koje originalno bio razvijen od strane druge kompanije (Microsoft je kupio proizvod i zaposlio originalnog autora da ga poboljša). Revizirani sistem je preimenovan u MS-DOS (engl. MicroSoft Disk Operating System) i ubrzo je počeo da dominira IBM PC tržištem. 8-bitni mikroprocesor • IV generacija (1980-...) Personalni kompjuteri 8-bitni mikroprocesor (1974. god.) – Intel-ov 8080, namenjen za opštu upotrebu. 8080 je služio kao osnova za dalji razvoj kompletnih sistema, od kojih je najznačajniji CP/M (engl. Control Program for Microcomputers - Kontrolni program za mikrokompjutere) operativni sistem iz kompanije koja se zvala Digital Research. Stiv Džobs (Steve Jobs) iz Apple-a je početkom 1984. god. predstavio Apple Macintosh (istinski korisnički personalni kompjuter). Koristio je Motorolin 16-bitni 68000 CPU, i imao je 64 KB ROM (engl. Read Only Memory) memorije, da bi podržao GUI. CP/M, MS-DOS, i Apple DOS 8-bitni mikroprocesor kompanije Motorola sa oznakom 6800. Napredna i poboljšana verzija ovog mikroprocesora je 6502 , koji je zasnovan na MOS Technology . 6502 je bio CPU za nekoliko ranih sistema. Jedan od njih, Apple II, je postao glavni konkurent za CP/M sisteme na tržištima kućnih i obrazovnih kompjutera. CP/M kartice je prodavala mala firma koja se zvala Microsoft, koja je takođe imala tržišnu nišu prodajući BASIC interpretere koje je koristio jedan broj mikrokompjutera koji pokretali CP/M. * Sistemi sa komandnom linijom (korisnici su kucali komande na tastaturi) Naredni Motorolini CPU su bili pravi 32-bitni sistemi, a kasnije je Apple prešao na IBM PowerPC CPU, sa RISC 32-bitnom (a kasnije, 64-bitnom) arhitekturom. 2001 Apple je napravio veliku promenu operativnog sistema, predstavljajući Mac OS X, sa novom verzijom Macintosh GUI-a preko Berkley UNIX-a. 2005. godine Apple je prešao na Intel procesore. * Nekoliko godina kasnije, Dag Engelbart (Doug Engelbart) sa Istraživačkog Instituta Stanford je izumeo grafički korisnički interfejs (engl. Graphical User Interface –GUI) sa prozorima, ikonama, menijima i mišom. Kao konkurencija za Macintosh, Microsoft predstavlja Windows. U početku je Windows bio samo grafičko okruženje preko 16-bitnog MS-DOS . Međutim, trenutne verzije Windows-a su naslednici Windows NT, punog 32-bitnog sistema.

  18. Zanimljiv razvoj koji se počeo odvijati sredinom 1980-tih je rast mreža personalnih kompjutera na kojima se pokreću mrežni operativni sistemii distribuirani operativni sistemi. Kod mrežnog operativnog sistema, korisnici su svesni iskustva višestrukih kompjutera i mogu se ulogovati na udaljene mašine i kopirati datoteke sa jedne mašine na drugu. Svaka mašina pokreće svoj lokalni operativni sistem i ima svoje korisnike. U osnovi, mašine nisu zavisne jedna od druge. Još jedan glavni takmičar u svetu personalnih kompjutera je UNIX (i njegove verzije). UNIX je najjači na radnim stanicama i drugim jakim kompjuterima, kao što su mrežni serveri. Posebno je popularan na mašinama pokretanim sa RISC čipovima visokih performansi. Na Pentium-kompjuterima, Linux postaje popularna alternativa za Windows, za studente i mnoge korporativne korisnike. • IV generacija (1980-...) Personalni kompjuteri Mrežni operativni sistemi se ne razlikuju fundamentalno od operativnih sistema sa jednim procesorom. Njima očigledno treba kontroler mrežnog interfejsa i neki softver nižeg nivoa za upravljanje, kao i programi koji bi postigli daljinsko logovanje i daljinski pristup podacima, ali ovi dodaci ne menjaju suštinsku strukturu operativnog sistema. Distribuirani operativni sistem je onaj koji se pojavljuje za svoje korisnike kao tradicionalni jednoprocesorski sistem, iako je u stvari sastavljen od više procesora. Korisnici ne moraju biti upoznati sa tim gde se njihovi programi pokreću ili gde su njihove datoteke smeštene; to sve se automatski i efikasno upravlja sa operativnim sistemom. Mrežni operativni sistemi Distribuirani operativni sistem

  19. ISTORIJA MINIX 3 Kada je UNIX bio mlad (Verzija 6), izvorni kod je bio široko dostupan, pod AT&T licencom, i često proučavan. Džon Lajons (John Lions), sa Univerziteta Novi Južni Vels u Australiji je napisao malu brošuru sa opisom njegovih operacija, koja je korišćena kao tekst na mnogim univerzitetskim kursevima iz operativnih sistema. Međutim, kada su u AT&T predstavili Verziju 7, polako su počeli da uviđaju da je UNIX bio vredan komercijalni proizvod, pa su objavili Verziju 7 sa licencom koja je zabranjivala da se izvorni kod proučava na kursevima, da bi izbegli ugrožavanje njegovog statusa kao poslovne tajne. Da bi se prevazišla opisana situacija, autor Tanenbaum je odlučio da napiše novi operativni sistem koji bi, sa korisničkog gledišta, bio kompatibilan sa UNIX-om. Ne koristeći ni jednu liniju od AT&T koda, ovaj sistem je izbegao ograničenja licence, pa se mogao koristiti na nastavi ili u individualnom proučavanju. Taj sistem je nazvan MINIX i predstavljen je 1987. god. sa svojim potpunim izvornim kodom da ga svako može proučavati i modifikovati. Naziv MINIX znači mini-UNIXjer je dovoljno mali da čak i laik može shvatiti kako radi.

  20. ISTORIJA MINIX 3 Prednost MINIX -a nad UNIX-om Uklanjanje pravnih problema u njegovom korišćenju. Strukturiran je na modularniji način. Na primer, od prvog predstavljanja MINIX-a sistem datoteka i menadžer memorije nisu bili deo operativnog sistema uopšte, nego su pokretani kao korisnički programi. U kasnijim izadnjima (MINIX 3) ova modularizacija je proširena na drajvere I/O uređaja, koji (sa izuzetkom drajvera takta) su takođe pokretani kao korisnički programi. UNIX bio dizajniran da bude efikasan, dok je MINIX je dizajniran da bude čitljiv. Npr. MINIX kod ima hiljade komentara u sebi. MINIX je u početku dizajniran da bude kompatibilan sa Verzijom 7 UNIX-a (zbog svoje jednostavnosti i elegancije). Sa pojavom POSIX-a, MINIX se počeo razvijati ka novom standardu, dok je zadržao kompatibilnost sa postojećim programima. Ova vrsta razvoja je uobičajena u kompjuterskoj industriji, jer ni jedan prodavac ne želi da uvodi novi sistem koga ni jedan od njegovih postojećih korisnika ne može koristiti bez velikih promena.

  21. ISTORIJA MINIX 3 Prednost MINIX -a nad UNIX-om Kao i UNIX, MINIX je bio napisan u C programskom jeziku i bio je namenjen da bude lak za postavljanje na razne kompjutere. Početna upotreba je bila za IBM PC. MINIX je kasnije postavljen na nekoliko drugih platformi. Za prosečnog korisnika koji sedi za IBM PC-jem, pokretanje MINIX-a je slično pokretanju UNIX-a. Svi osnovni programi, kao što su cat, grep, ls, make su prisutni i obavljaju iste funkcije kao i njihovi UNIX dubleti.

  22. ISTORIJA MINIX 3 MINIX 3 MINIX 2 MINIX 3 jezgro je pod 4000 linija izvršnog koda, prema miliona izvršnih linija koda za Windows, Linux, FreeBSD,i druge operativne sisteme. Mala veličina jezgra je značajna jer su greške jezgra daleko razornije nego greške u korisničkim programima i više kodova znači više grešaka. To je razlog što su drajveri uređaja pomereni sa jezgra u MINIX-u 3, odnosno što manje štete mogu napraviti u korisničkom modu. MINIX Za ljude koji su malo naučili o MS-DOS-u, postojanje MINIX-a (sa izvornim kodom) kao alternativa je čak bio razlog da konačno kupe PC.

  23. ISTORIJA MINIX 3 Nedugo nakon predstavljanja MINIX-a, formiran je za diskusiju USENET - comp.os.minix. Za nekoliko nedelja, imao je 40.000 potpisnika, od kojih je većina htela da doda mnogo novih karakteristika MINIX-u da bi bio veći i bolji . Svaki dan, nekoliko stotina njih je dalo predloge, ideje, i često delove izvornog koda. Za ljude koji su malo naučili o MS-DOS-u, postojanje MINIX-a (sa izvornim kodom) kao alternativa je čak bio razlog da konačno kupe PC. Jedan od tih ljudi je bio finski student Linus Torvalds. Torvalds je instalirao MINIX na svoj novi PC i proučio pažljivo izvorni kod. Torvalds je hteo da pročita USENET grupe na svom PC-u umesto na univerzitetu, ali neke stavke koje su mu trebale nisu postojale u MINIX-u, pa je napisao program da to radi. Ubrzo je otkrio da mu treba drugačiji drajver terminala, pa je i to napisao. Zatim je hteo da preuzme i sačuva komentare, pa je napisao disk drajver, a zatim sistem datoteka. Do avgusta 1991, napravio je primitivno jezgro. Sve to je objavio na comp.os.minix. Ova objava je privukla druge ljude da mu pomognu, pa je 13. marta 1994. objavljen Linux 1.0.

  24. Nastaviće se... Prof. dr Milorad K. Banjanin

More Related