1 / 28

Operativni sistemi

Operativni sistemi. Zadaci. interfejs između korisničkih aplikacija i računara koji je zadužen za koordinaciju i upravljanje aktivnostima i resursima zahvaljujući njemu, korisničke aplikacije ne moraju da poznaju detalje rada hardvera

haley
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. Operativni sistemi

  2. Zadaci • interfejs između korisničkih aplikacija i računara koji je zadužen za koordinaciju i upravljanje aktivnostima i resursima • zahvaljujući njemu, korisničke aplikacije ne moraju da poznaju detalje rada hardvera • OS nudi niz servisa aplikacijama i korisnicima kroz standardni interfejs za aplikacije (API) • komande se zadaju kroz GUI ili CLI

  3. Istorija • razvijaju se od početka razvoja računara, posebno od 1950-ih • IBM je razvio OS/360 za seriju servera • ovo je koncept koji su svi prihvatili: OS za različite računare, koji se prilagođava hardveru • mainframe računari su imali svoje OS • mikroračunari su obično učitavali minimalističke OS-ove – monitore – iz ROM • prvi OS koji je radio sa diskom je CP/M • MS-DOS • GUI se prvi put pojavio u Mac OS 1984.

  4. Rasprostranjenost OS – 2009.

  5. Rasprostranjenost OS - 2011 • Procene • Apple: ~10.7% u US, u svetu do 5% • Microsoft: procena je da Mac i Linux imaju po ~5%, a ostalo da je Windows • procena je da je 25-35% WindowsXP ilegalnoo • Netbook: Windows, pa Linux (zbog Asus eePC) • Tablet: Mac vodi zbog iPad-a, sa rastućim udelom Androida (20%) • Mobilni uređaji:

  6. Današnji OS za desktop računare • Mac OS X • Unix • Linux • BSD • Windows • Solaris

  7. Unix • koristi se za servere i radne stanice • razvijen početkom 1970-ih zajedno sa C • razvijen je za servere i radne stanice • multi-tasking, više-korisnički, prilagodljiv za različite platforme, hijerarhijski FS, softverski alati, ... – Unix filozofija • namenjen je da bude bez GUI, ali ima razvijenih • da bi OS bio Unix mora da zadovolji “Single UNIX Specification” (POSIX) • iz Unix-a su se razvili i brojni drugi OS: Minix, Linux, Mac OS X, FreeBSD, NetBSD, OpenBSD, AIX, Solaris, HP/UX

  8. BSD • 1977. – Berkley • Unix za radne stranice • različite licence: • FreeBSD – višenamenski, prvenstveno namenjen za x86 platformu • NetBSD – za različite platforme • OpenBSD – cilj je bezbednost • DragonFly – za višeprocesorske računare; cilj je da se dobije privid jednog računara • koristi se za akademska istraživanja, ugrađen je u uređaje posebne namene • može da se distribuira, ali pod strožijom licencom nego Linux

  9. Linux1 • generički naziv za Unix-olike OS sa Linux kernelom • koristi se u serverima, ali i u kućnim računarima, uređajima posebne namene (kontrolerima, ADSL modemima, ...), mobilnim telefonima, satovima, super-računarima • razvio se od Unix-a, ali pod GNU licencom – copyleft licenca koja garantuje slobodu distribucije i modifikovanja proizvoda, pod uslovom da dobijeni modifikovani proizvodi zadovoljavaju prethodnu slobodu

  10. Linux2 • sigurna, ali jako kompleksna platforma • postoji više distribucija koje sve koriste isti kernel koji je open source • kernel kontroliše procese, mrežu, periferijske uređaje, file system

  11. Upotreba Linux-a • desktop Linux – ima GUI (GNU i KDE); siromašniji aplikacijama nego Windows; raste podrška; Wine aplikacija za izvršavanje Windows programa pod Linux-om • serveri – većina web servera je Linux; 443 u Top500 je Linux • LAMP – Linux, Apache, MySQL, PHP/Perl/Python • ugrađen – zamenjuje Symbian, WindowsCE, PalmOS

  12. Linux – Ubuntu • baziran na Debian Linux • Linux za prosečne korisnike • sastoji se od više paketa koji se distribuiraju pod GNU • osnovni ciljevi su dostupnost i internacionalizacija • distribuiran sa OpenOffice, Firefox, GIMP, LAMP • sadrži i Wine da izvršava Windows programe • postoji Microsoft Assistant, za prebacivanje sa Windows na Ubuntu instalaciju • može da se pokrene sa USB diska

  13. Mac OS X • razvijen je kao OS za radne stanice koje su imale specifičnu namenu, kao što je grafička obrada, obrada teksta, ... • bio je dosta upotrebljavan u kancelarijskim poslovima zbog jednostavnog korisničkog interfejsa • zaokružena celina sa hardverom • kvalitetan i stabilan OS u kombinaciji sa hardverom • zahteva malo održavanja, napada ga mnogo manje virusa i drugog malicioznog softvera • skup i ima slabu mogućnost nadogradnje • zasnovan je na Unix OS što se vidi u njegovoj instalaciji i administraciji • “X” znači 10

  14. Solaris • razvija se od 1992. • može da se instalira, a može i da se koristi tako što se podigne sa udaljenog servera • podržava SPARC i x86/x86-64 arhitekture • podržava višeprocesorski rad

  15. DOS • razvijao ga je Microsoft iz QDOS-a (razvijao SCP) • razvoj se obično sastojao u preuzimanju ili kopiranju mogućnosti konkurencije • poslednja verzija je 6.22 • novije verzije koje su u okviru Windows OS kao komandna linija su samo deo Windows CLI • za izvršavanje legacy programa pod Windows-om koristi se posebno virtualno okruženje • konkurencija: PC-DOS, DR-DOS, Novell DOS, Free-DOS • GUI – Norton, XTree, Windows

  16. Windows1 • razvijao se kao GUI za DOS • 3.0 i 3.1 – virtualna memorija, drajveri • Windows 95 – plug and play, duga imena • Windows NT – veća pouzdanost za poslovnu namenu • XP – spajanje običnih i poslovnih korisnika • Windows Server – od 2003. posebno izdanje • Windows CE – za telefone, GPS • 64bit – podrška još od NT, za PowerPC, DEC, MIPS4000 • Windows 8

  17. Windows2 • projektovan da bude lak za upotrebu i za jednog korisnika • od NT počinje da se vodi računa o bezbednosti i više da se radi sa mrežom • mnogo grešaka u programiranju i popularnost su doveli do pojave virusa i malicioznog softvera • ove probleme Microsoft rešava periodičnim zakrpama i service pack-ovima • ima široku podršku u third-party softveru

  18. React OS • open-source Windows • napisan u C i C++ • distribuira se pod GNU licencom • TinyKRNL, Freedows

  19. Google Chrome OS • najvljen za 2010, ali je pomereno za 15. jun 2011 – Samsung, pa Acer • baziran je na Linux-u • minimalistički pristup sličan Chrome web-browser-u • namenjen je za specifičan hardver; firmware obavlja dosta posla • aplikacijama se pristupa remotely

  20. RTOS • real time OS • za aplikacije u realnom vremenu – industrijski roboti, svemirski brodovi, SCADA • u ovim sistemima su bitna vremenska ograničenja • složeniji mehanizmi kontrole • nemoguće maskiranje prekida da korisnik ne bi preuzeo punu kontrolu • QNX, RTLinux, VxWorks, Windows CE

  21. Osobine OS – kernel1 • kernel – centralna komponenta svih OS; upravlja sistemskim resursima • monolitski kernel se ceo izvršava u istom adresnom prostoru da bi se dobilo na brzini • mikrokernel sadrži samo funkcije niskog nivoa – upravljanje memorijom, procesima i međuprocesnu komunikaciju; prednost je što jedan servis može da ne radi, ali ostali ostaju • hibridni kernel – marketinški trik – funkcionalnosti jesu modularne, ali nema prednosti kao kod mikrokernela

  22. Osobine OS – kernel2 • podela • mikro – uglavnom specifični Unix sistemi • postoje i nano i piko kerneli • monolitski – Linux, BSD, Solaris, DOS, Windows (do Me), starije verzije MacOS, OpenVMS • hibridni – NT kernel, Plan9, BeOS, DragonFly BSD

  23. Osobine OS – prekidi • asinhroni signal o događaju • hardverski – kada stigne, procesor čuva svoje stanje i počinje obradu prekida • softverski – slično, ali implementira kao skup instrukcija • koriste se umesto polling loop – periodične provere svakog od uređaja • maskirajući – hardverski, koji može da se ignosriše maskom u registru (IMR) • nemaskirajući – nikad ne može da se maskira (sat) • interprocesorski – u višeprocesorskom sistemu • lažni – neželjeni hardverski prekidi • prekidi se koriste za sistemski sat, disk, I/O, power-of, obradu korisničkih izuzetaka

  24. Osobine OS – driver • omogućava da programi višeg nivoa koriste hardver na standardizovan način • prave se za određen hardver i određen OS • obično rade pomoću prekida • da bi se razvili, potrebno je poznavanje i hardvera i OS • u interesu proizvođača je da bude kvalitetno napisan • proizvođač piše PDD (physical device driver), a proizvođač OS piše LDD (logical device driver) • ima i open-source, obično za open-source OS • izvršava se ili u kernelu ili u korisničkoj memoriji • u kernelu je brže, ali opasnije po sistem

  25. Osobine OS – način rada • supervisor – sistem je samo pod kontrolom kernela • protected – ograničen pristup sistemu • moguć je prelaz iz zaštićenog samo pomoću prekida • zaštićenost se najčešće ogleda u tome što proces ne može da pristupi nekom registru – ako proba, kernel preuzima kontrolu i rešava problem

  26. Osobine OS – upravljanje memorijom • memorija se štiti i svaki proces ima pristup samo svojoj • tehnike zaštite – segmentacija i straničenje • memorija se deli na kernelsku (kernel, drajveri) i korisničku (korisničke aplikacije, svaka u svom prostoru)

  27. Osobine OS – multitasking • izvršavanje više programa u, prividno, isto vreme • koristi se scheduler koji dodeljuje procesorsko vreme procesu • prebacivanje kontrole naziva se context-switch • preventivni multitasking – osigurava da svi dobiju deo procesorskog vremena

  28. Osobine OS – ostali servisi • pristup disku • vrši se preko file system-a, a podaci su organizovani u stablo • disku se pristupa preko drajvera • pristup mreži • većina današnjih OS podržava različite protokole • većina koristi port/socket arhitekturu • bezbednost • OS mora da razlikuje zahteve koji treba da se izvrše od onih koji ne treba

More Related