UVOD Svaki složeni postupak koji se može izraziti pomoću algoritma sa konačnim brojem elementarnih operacija, može se predati računaru na izvršenje. J

Слични документи
UVOD Svaki složeni postupak koji se može izraziti pomoću algoritma sa konačnim brojem elementarnih operacija, može se predati računaru na izvršenje. J

Generated by Foxit PDF Creator Foxit Software For evaluation only. Operativni sistem U računarstvu, operativni sistem (OS

P1.0 Uvod

Računarski softver Da bi računarski sistem mogao da radi, pored hardvera mora biti opremljen i odgovarajućim programima koji će njime upravljati.ova k

RAČUNARSKI SISTEM Ne postoji jedinstvena definicija pojma računarski sistem. Računarski sistem predstavlja skup mašina i pridruženih metoda (realizova

Microsoft PowerPoint - Topic02 - Serbian.ppt

Microsoft PowerPoint - Topic02 - Serbian.ppt

JEZGRO OPERATIVNOG SISTEMA I UPRAVLJANJE PROCESIMA 1. Šta je jezgro, a šta proces? Jezgro (nukleus ili kernel) je osnovni deo svakog operativnog siste

OPERATIVNI SISTEMI

POSLOVNI INFORMACIONI SISTEMI I RA^UNARSKE

RAČUNALO

PowerPoint Presentation

P11.3 Analiza zivotnog veka, Graf smetnji

Microsoft PowerPoint - PRI2014 KORIGOVANO [Compatibility Mode]

Zbirka resenih zadataka iz arhitekture racunara

PowerPoint Presentation

I година Назив предмета I термин Вријеме II термин Вријеме Сала Математика : :00 све Основи електротехнике

I година Назив предмета I термин Вријеме II термин Вријеме Сала Математика : :00 све Основи електротехнике

I година Назив предмета I термин Вријеме II термин Вријеме Сала Математика : :00 све Основи електротехнике

I година Назив предмета I термин Вријеме Сала Математика :00 све Основи електротехнике :00 све Програмирање

Razvoj programa, Code::Blocks, struktura programa, printf, scanf, konverzioni karakteri predavač: Nadežda Jakšić

Повезивање са интернетом

Nastavna cjelina: 1. Jezik računala Kataloška tema: 1.1. Bit 1.2. Brojevi zapisani četvorkom bitova Nastavna jedinica: 1.1. Bit   1.2. Brojevi zapisan

Microsoft PowerPoint - Strukturni dijagrami, Gantogram - Planiranje [Compatibility Mode]

Slide 1

Увод у организацију и архитектуру рачунара 1

Slide 1

UNIVERZITET UKSHIN HOTI PRIZREN FAKULTET RAČUNARSKIH NAUKA PROGRAM: TIT - BOS NASTAVNI PLAN-PROGRAM SYLLABUS Nivo studija Bachelor Program TIT-Bos Aka

Microsoft PowerPoint - 06 Uvod u racunarske mreze.ppt

QFD METODA – PRIMER

Softversko inženjerstvo

06 Poverljivost simetricnih algoritama1

KATALOG ZNANJA IZ INFORMATIKE

Microsoft Word - 11 Pokazivaci

Pojačavači

Funkcije predavač: Nadežda Jakšić

Microsoft PowerPoint - Topic04-Serbian.ppt

OPIS RAČUNARSKOG SISTEMA Računarski sistem se sastoji od procesora, operativne memorije, tajmera i terminala. Sve komponente računarskog sistema su me

Microsoft PowerPoint - Programski_Jezik_C_Organizacija_Izvornog_Programa_I_Greske [Compatibility Mode]

Microsoft PowerPoint - 01 Uvod u operativne sisteme.ppt

Algoritmi i arhitekture DSP I

Школа Ј. Ј. Змај Свилајнац МЕСЕЧНИ ПЛАН РАДА ЗА СЕПТЕМБАР Школска 2018 /2019. Назив предмета: Информатика и рачунарство Разред: 5. Недељни број часова

Slide 1

Broj: 01-12/2014 Datum: Direktor preduzeća Phoneco doo, Marko Burgić dipl. Oecc., objavljuje OPŠTE USLOVE USTUPANJA PRAVA NA KORIŠĆENJE POS

Microsoft Word - Akreditacija 2013

Microsoft Word - Akreditacija 2013

Microsoft Word - Akreditacija 2013

Microsoft PowerPoint - GR_MbIS_12_IDEF

Microsoft Word - Akreditacija 2013

Satnica.xlsx

SRV_1_Problematika_real_time_sistema

STRATEGIJSKI MENADŽMENT

Projektovanje informacionih sistema i baze podataka

Microsoft PowerPoint - 1. Osnovni pojmovi - prosireno - Compatibility Mode

НАСТАВНИ ПЛАН ОДСЕКА ЗА ТЕЛЕКОМУНИКАЦИЈЕ И ИНФОРМАЦИОНЕ ТЕХНОЛОГИЈЕ 2. година 3. семестар Предмет Статус Часови (П + В + Л) Кредити 3.1 Математика 3 O

Satnica.xlsx

АНКЕТА О ИЗБОРУ СТУДИЈСКИХ ГРУПА И МОДУЛА СТУДИЈСКИ ПРОГРАМИ МАСТЕР АКАДЕМСКИХ СТУДИЈА (МАС): А) РАЧУНАРСТВО И АУТОМАТИКА (РиА) и Б) СОФТВЕРСКО ИНЖЕЊЕ

Inženjering informacionih sistema

Drugi kolokvij iz predmeta Operacijski sustavi 2. srpnja Napomene: PISATI ČITKO! Zadatke 7-10 rješavati na ovom papiru ili uz njih napisati "na

Model podataka

PowerPoint Presentation

P9.1 Dodela resursa, Bojenje grafa

Prezentacija 1. i 2. cas

Microsoft PowerPoint - SEP-2013-CAS02

Орт колоквијум

Microsoft Word - Smerovi 1996

Microsoft Word - 13-Mreze.doc

vodič za os

Microsoft Word - Akreditacija 2008

Контрола ризика на радном месту – успостављањем система менаџмента у складу са захтевима спецификације ИСО 18001/2007

УНИВЕРЗИТЕТ У ИСТОЧНОМ САРАЈЕВУ ЕЛЕКТРОТЕХНИЧКИ ФАКУЛТЕТ ПРЕДМЕТ Почетак испита Термин Математика Основи електротехнике

Microsoft Word - Master 2013

Microsoft PowerPoint - Programski_Jezik_C_Organizacija_Izvrsnog_Programa [Compatibility Mode]

Microsoft Word - Master 2013

` 1.Врсте меморије На основу начина чувања података делимо их на меморије које привремено чувају податке (док је рачунар укључен) и меморије које трај

Орт колоквијум

Microsoft Word - Raspored ispita Jun.doc

Z-15-85

P1.2 Projektovanje asemblera

PROMENLJIVE, TIPOVI PROMENLJIVIH

Универзитет у Београду Факултет организационих наука Распоред испита за предмете мастер академских студија Испитни рок: Јун Предмет Датум Време

4 dan - DWeb

Microsoft Word - vodicitm.doc

ELEKTROTEHNIČKI FAKULTET, UNIVERZITET U BEOGRADU KATEDRA ZA ELEKTRONIKU UVOD U ELEKTRONIKU - 13E041UE LABORATORIJSKA VEŽBA Primena mikrokontrolera

P1.3 Projektovanje makroasemblera

Физика и информатика

Microsoft PowerPoint Tema 1. Osnovni informaticki pojmovi (4 casa)

PowerPoint Presentation

M-3-643

Универзитет у Београду Факултет организационих наука Коначан распоред испита за предмете Мастер академских студија Испитни рок: ОКТОБАР Предмет

Projektovanje tehnoloških procesa

STUDIJA SLUČAJA: Konsolidacija informatičkog sustava Grada Raba siječanj, Informacijske tehnologije

FAKULTET ORGANIZACIONIH NAUKA

РЕПУБЛИКА СРБИЈА МИНИСТАРСТВО ПРИВРЕДЕ ДИРЕКЦИЈА ЗА МЕРЕ И ДРАГОЦЕНЕ МЕТАЛЕ Београд, Мике Аласа 14, ПП: 34, ПАК: телефон: (011)

Studijski primer - Dijagrami toka podataka Softverski inženjering 1

** Osnovni meni

Satnica.xlsx

PowerPoint Presentation

Slide 1

Транскрипт:

UVOD Svaki složeni postupak koji se može izraziti pomoću algoritma sa konačnim brojem elementarnih operacija, može se predati računaru na izvršenje. Jedanod ključnih delova računarskog sistema koji omogućava prenošenja intelektualnog rada sa čoveka na računar jeste sistemski softver. Sistemski softver je posrednik između korisničkog(aplikativnog) softvera i hardvera koji korisniku omogućava da lakše, jednostavnije i efikasnije koristi resurse računarskog sistema. Glavni deo sistemskog softvera i osnova svakog računarskog sistema jeste operativni sistem. Poznavanje operativnih sistema je temelj znanja svih koji se ozbiljnije bave računarima i informacionim tehnologijama. Kao posledica masdovne upotrebe računara u gotovo svim oblastima ljudske delatnosti, vidljiv je trend stalnog napretka i čestih promena informatičkih tehnologija. Ipak, fundamentalni koncepti su ostali nepromenjeni, a na njima će biti zasnovana predavanja. Podrazumeva se da učenici poznaju osnove arhitekture računara, operativnih sistema i računarskih mreža kao i osnovne strukture podataka i osnove programiranja na jeziku C koji je korišćen za ilustrovanje značajnih algoritama. Izučavanje operativnih sistema podrazumeva obradu sledećih poglavlja: Uvod u operativne sisteme Jezgro operativnih sistema i upravljanje procesima Raspoređivanje procesa i dodela procesora Sinhronizacija procesora Zastoj Upravljanje memorijom Virtuelna memorija Ulazno-izlazni podsistem Sekundarne itercijalne memorije Sistemi datoteka Mrežno okruženje Distrbuirani sistemi Zaštita i sigurnost Korisnički interfejs Uvod u operativne sisteme Računarski sistem je složen skup tehničkih uređaja (hardvera), programa koji zadaju instrukcije hardveru, i podataka koji se obrađuju. Ljudi koji koriste računara, bilo kao operateri, programeri ili projektanti, u radu se pridržavaju različitih formalnih i neformalnih procedura. Mnoge procedure se mogu pretočiti u programe, tako da ih obavljaju računari, a ne ljudi. Prevodioci (compilers) omogućavaju ljudima da programe pišu na jeziku koji razume čovek, i da ih zatim prevedu na mašinski jezik, tj. na jezik koji razume mašina. Povezivači (linkers) i punioci (loaders) omogućavaju sprezanje više mašinskih programa u jednu programsku celinu. Ta celina se 1

može upotrebiti više puta i uvek se smešta na razne lokacije u memoriji. Pri tome, treba odgovoriti na sledeća pitanja: Kako se više programa može istovremeno smestiti u memoriju? Ko će izabrati koji će program biti u memoriji? Koji će program i kada koristiti procesor? Kako ćemo obezbediti da svaki program dobije resurse? Operativni sistem sadrži odgovore na sva ova pitanja. Istorijat operativnih sistema Računari prve generacije (1945-1955) osnova su im vakuumske cevi (20 000 po računaru) ogromnih dimenzija veoma skupi vojska ih koristila veoma spori programiralo se na mašinskom jeziku simbolički jezici (uključujući i asembler) kao i operativni sistemi su u to vreme bili nepoznati. Ljudi koji su radili na tim računarima obavljali su sve poslove od programiranja do održavanja računara. Iskorišćenje računarskog sistema tj. njegovih najvažnijih resursa centralnog procesora i centralne memorije je bilo slabo. Računari druge generacije (1955 1965) osnova su im tranzistori pouzdaniji su, manji i jeftiniji koriste ih vojska, velike korporacije i unverziteti smešteni su u sobe koje imaju tri odvojene, funkcionalne celine: ulazna soba, centralni računar, i izlazna soba programeri su pisali programe na papiru(progr. jezik FORTRAN), zatim su se programi prenosili na bušene kartice, koje su se ostavljale u sobu gde je računar Operator sistema je uzimao bošene kartice i ubacivao u računar: prvo kartice sa prevodiocem FORTRAN-a, a zatim bušene kartice sa programom koji treba izvršiti. Glavni računar je obavljao posao i rezultat se dobijao na bušenim karticama kje su se prenosile u sobu sa rezultatima. Ovde se mnogo vremena trošilo na šetanje izmedju soba sa bušenim karticama.. Operativni sistem kao pojam još uvek nije postojao Dalje se kao poboljšanje uvodi paketna obrada(bach processing), zasnovana na upotrebi magnetne trake uređaja mnogo bržeg od bušenih kartica. Pri paketnoj obradi, u ulaznoj sobi s poslovima sakuplja se jedna količina sličnih programa(npr. svi programi koji zahtevaju prevodilac FORTRAN-a) koji se pomoću jeftinijeg računara(npr. IBM 1401) sa bušenih kartica prenose na magnetnu traku. Magnetna traka se zatim unosi u sobu sa glavnim računarom(moćnijim i skupljim npr. IBM 1401) predviđenim za izvršavanje programa. U glavni računar se učitava poseban program koji je zadužen da sa trake sa poslovim programe redom učitava i izvršava. Taj program se može smatrati pretkom operativnih sistema. Nakon izvršavanja programa, rezultati se snimaju na drugu magnetnu traku koju operater prenosi do trećeg računara, zaduženog za prebacivanje rezultata sa magnetne trake na bušene kartice. Karakteristike druge generacije računara su: 2

1. veća brzina rada centralnog procesora, 2. veći kapacitet centralne memorije i eksternih memorija 3. nove i brže ulazno-izlazne jedinice. 4. programi se pišu na simboličkom mašinskom jeziku, asembleru ili na višem programskom jeziku FORTRAN 5. Operater više nije u stanju da efikasno opsluži računarski sistem, jer su njegove reakcije isuviše spore. Jedino rešenje prebacivanje niza kontrolnih funkcija sa operatera na sam računarski sistem. tj. na posebne kontrolne programe Dakle, kod računara druge generacije razlikujemo dve vrste programa: kontrolni i korisnički Računari treće generacije (1965-1980) prave se od integrisanih kola (IC). Početkom šezdesetih većina proizvođača pravi dve vrste računara: jednu bržu verziju(kao IBM 7094) i jednu slabiju (kao IBM 1401) što je skup poduhvat. Novi korisnici računara najpre žele slabije modele koji su jeftiniji, dok će im jači, brži i skuplji modelibiti potrebni tek nakon izvesnog vremena. IBM taj problem pokušava da reši uvođenjem klase računara IBM System 360. To je serija kompatibilnih računara različitih snaga. Svaki od ovi računara je pogodan i za naučnu i za poslovnu namenu čime je nestala podela računara na one dve vrste. Ovaj koncept su preuzeli i drugi proizvođači računara. Računari su radili pod operativnom sistemom OS/360 koji je bio veoma glomazan i prepšun grešaka. S razvojem discipline poznate pod imenom softversko inženjerstvo (software engineering), uvode se nove funkcije: multiprogramiranje (multiprogamming); višestruke ulazne-izlazne(u/i) operacije (spool) podela računarskog vremena (engl. time sharing) multiprogramiranje - Kada neki program čeka rezultate ulazno-izlaznih operacija, procesor je neiskorišćen, pa se gubi procesorsko vreme. Ovaj problem nije izražen kod programa koji retko zahtevaju ulazno-izlazne operacije (na primer, naučno orijentisani programi), ali jeste kod poslovnih programa. Multiprogramiranje je tehnika kojom se postiže bolje iskorišćenje procesora: memorija se deli na particije u koje se učitavaju različiti programi, to jest poslovi(jobs). Dok neki program čeka na ulazno/izlaznu operaciju, procesor može izvršavati drugi program. Na taj način, ako imamo dovoljan broj programa u memoriji, procesor se stalno upotrebljava. Spuling (engl. Spool Simultaneous Perpheral Operation On Line) jeste tehnika koja omogućava da se nedovoljna brzina ulazno-izlaznih uređaja kompenzuje upotrebom brzih uređaja kao što su trake, a naročito diskovi. Na taj način se omogućava istovremeno izvršenje više ulazno-izlaznih operacija. Brzi uređaj prihvata sve sa ulaza, a zatim se ulaz ka procesoru realizuje sa brzog uređaja. Ulaz se realizuje prebacivanjem sadržaja bušenih kartica na disk(traku) pomoću posebnog uređaja, a bez korišćenja procesora. To znači da se disk paralelno puni novim poslovima dok procesor izvršava programe u memoriji. Kada jedan program završi rad učitava se drugi program sa diska. 3

Slično,sve što se šalje na izlaz, prvo se prenosi na brzi uređaj, a zatim sa njega na spore uređaje. time-sharing jeste tehnika koja omogućava da svaki korisnik radi sa računarom interaktivno. Podela vremena je poseban oblik multiprogramiranja, gde svakom terminalu pripada dozvoljeno procesorsko vreme. Posle isteka vremenskog kvantuma tj. dodeljene količine procesorskog vremena, procesor se dodeljuje drugom terminalu. Ukoliko je terminal blokiran zbog čekanja na ulazno-izlazne operacije, procesor se i pre isteka kvantuma dodeljuje drugom terminalu. Kod treće generacije računara treba istaći pojavu dva operativna sistema MULTICS i UNIX. MULTICS neuspela ideja kompanije MIT, Bell Labs i General Electric da se napravi moćan računar i operativni sistem koji bi bio u stanju da radi sa velikim brojem terminala. Ovaj model se može smatrati pretečom Interneta i računarskih mreža. UNIX je uprošćena vrijanta MULTICS sistema koja je doživela praktičnu realizaciju i ekspanziju do današnjih dana. Računari treće generacije su se nazivali mini računari. U trećoj generaciji računarskog sistema, zbog pojave multiprogramiranja i porasta brzina, veličine memorije i broja ulazno izlaznih jedinica, još više kontrolno-upravljačkih funkcija se prebacuje sa čoveka na računar tj. računarski sistem, odnosno na pojedine sistemske programe. Skup svih tih programa se naziva operativni sistem. Programer se oslobađa niza složenih rutinskih poslova i pruža mu se mogućnost većeg angažovanja na kreativnom delu posla. Sem kontrolno-upravljačkih programa kod ovih računara je razvijen i niz uslužnih programa čiji je zadatak da olakšaju i uproste upotrebu računarskih sistema. Tako je nastala podela softvera na: sistemski i korisnički(aplikativni). U četvrtoj generaciji računara(1980-1990), prvi put se pojavljuju personalni računari. Razvoj personalnih računara započinje pojavom LSI čipova visokog stepena integracije(large Scale Integration). Računari su bili dovoljno jeftini, tako da su ih mogli priuštiti i više odseka iste firme ili univerziteta, dok su personalni računari postali dovljno jeftini da ih mogu imati pojedinci. Ovde spadaju Spectrum, Commodore, Atari, IBM PC, Apple Maciontosh itd. U prve operativne sisteme za personalne računare spadaju MS DOS i UNIX. Sem klasičnih operativnih sistema javljaju se i dve nove vrste: mrežni operativni sistemi(koriste ih računari povezani u mrežu. Visok stepen autonomnosti - svaki računar ima svoj operativni sistem a pomoću odgovarajućih protokola u mogućnosti su da međusobno razmenjuju podatke) i distributivni operativni sistemi(mnogo ozbiljnija varijanta u mrežnom okruženju, zato što osim deljenja i migracije datoteka i štampača omogućavaju i deljenje procesa tj. programa) 4

Definicija i funkcije operativnog sistema Operativni sistem objedinjuje raynorodne delove računara u skladnu celinu i sakriva od korisnika detalje funkcionisanja ovih delova koji nisu bitni za korišćenje računara. Operativni sistem radi sledeće: upravlja programima, podacima i delovima od kojih se računar sastoji (procesor, kontroleri, radna memorija), sa ciljem da oni budu što celishodnije upotrebljeni; obezbeđuje pristupačno radno okruženje za krajnjeg korisnika računara, tako što računar kao mašinu koja rukuje bitovima, bajtovima i blokovima pretvara u mašinu koja rukuje datotekama i procesima. Ukratko rečeno, operativni sistem je skup sistemskih programa koji posreduje između korisnikaračunara i računarskog hardvera, a cilj mu je da: izvršava korisničke programe i olakša rešavanje korisničkih problema; korišćenje računarskog sistema učini podesnijim za korisnika; omogući što efikasnijeiskorišćenje računarskog hardvera Operativni sistem je jedan od najvažnijih i najsloženijih delova računarskog sistema i sastoji se od više relativno nezavisnih celina. Pošto svaki proizvođač računara ima svoje operativne sisteme teško je dati opštu strukturu operativnog sistema. Na slici je prikazan hijerarhijski model operativnog sistema. 5

Pojedini slojevi predstavljaju nivoe operativnog sistema. Hijerarhijski model ima sledeći smisao: na posmatranom nivou operativnog sistema mogu se zahtevati usluge samo od njegovih nižih nivoa, a nikako od viših. Najniži sloj je poznat kao jezgro operativnog sistema(engl. nukleus, kernel). Ne postoje čvrsto definisana pravila koja regulišu raspodelu funkcija operativnog sistema po nivoima. Zbog odnosa veličine operativnog sistema i radne memorije, većina operativnih sistema ne može da stane u radnu memoriju. Zato se u memoriji uvek nalaze samo najvažniji delovi operativnog sistema, tzv. rezidentni delovi, koji aktiviraju i završavaju korisničke programe, dodeljuju memorije i datoteke, i obavljaju ulazno-izlazne operacije. Rezidentni deo operativnog sistema mora obavezno podržavati mehanizam prekida, jer je on osnova višeprogramskog rada i komuniciranja računara sa spoljnim svetom. DEO OPERATIVNOG SISTEMA KOJI MORA UVEK POSTOJATI uu RADNOJ MEMORIJI OBIČNO SE NAZIVA JEZGRO ILI NUKLEUS. Funkcije koje koriste svi nivoi moraju se smestiti u jezgro operativnog sistema. Ostali delovi se ubacuju u memoriju kada su potrebni i izbacuju kada više nisu potrebni. Korisnik Viši slojevi u hijerarhijskom modelu Korisnički interfejs (komandni interpreter ili grafičko radno okruženje) JEZGRO HARDVER 6

Funkcije operativnog sistema Funkcije koje treba da obavlja operativni sistem mogu se izvesti na osnovu očekivanih funkcija jednog računarskog sistema, kao što su: Automatsko funkcionisanje računarskog sistema OS mora da obezbedi funkcionisanje računarskog sistema bez intervencije operatera, iz prostog razloga ljudske intervencije su mnogo sporije od računara. Mogućnost planiranja i raspoređivanja poslova, i postojanje jezika za upravljanje poslovima Ovde se podrazumeva određivanje koji će se posao koji je spreman za rad izvršavati tj. kome će se dodeliti procesor. Ovde se uvodi jezik za upravljanje poslovima (job control) koji se interpretira preko operativnog sistema. Multiprogramiranje tehnika za pokretanje više programa na istom računaru istovremeno, tako što svaki dobije deo memorije, a procesor se dobija prema funkciji za raspoređivanje poslova Eliminisanje zavisnosti U/I operacija Kako su U/I operacije mnogo sporije od procesora, operativni sistem mora da izoluje U/I operacije od procesora, što se postiže upotrebom brzog medijuma za privremeno memorisanje svih U/I podataka. Taj uređaj u prošlosti je bila traka, a danas je to po pravilu disk. U cilju efikasnosti, U/I operacije po mogućstvu treba što više preklapati ili kombinovati sa drugim procesorskim poslovima. U tom kontekstu su realizovane dve hardverske strukture: kanal(channel) i tehnika prekida (engl. interrupt). Pod kanalom se podrazumeva uređaj koji kontroliše jedan ili više periferijskih uređaja, a sposoban je da prenosi podatke između periferijskih uređaja i memorije bez intervencije glavnog procesora. Tehnika prekida je univerzalna metoda za obaveštavanje operativnog sistema da se neka akcija, tj. U/I komanda završila. Na osnovu definicije operativnog sistema i očekivane funkcionalnosti računarskog sistema zaključujemo da operativni sistem mora obavljati sledeće funkcije: upravljanje poslovima (sekvenciranje i raspoređivanje poslova) i interpretacija komandnog jezika; rukovanje ulazno izlaznim operacijama; rukovanje greškama i prekidima; upravljanje resursima; omogućavanje višestrukog pristupa; zaštita resursa od zlonamernih napada, slučajnih grešaka korisnika, grešaka u korisničkim programima i samom operativnom sistemu; obezbeđivanje dobrog intrfejsa za operatora i korisnika; obračun korišćenja računarskih resursa; 7

Karakteristike operativnih sistema su: Karakteristike operativnih sistema Konkurentnost (engl. concurrency) - je postojanje više simultanih, paralelnih aktivnosti. Primeri su preklapanje U/I operacija i operacija izračunavanja ili koegzistencija više programa u memoriji. Konkurentnost izaziva probleme pri prelasku sa jedne na drugu aktivnost, probleme zaštite jedne aktivnosti od druge i sinhronizacije aktivnosti koje su međusobnopovezane. Deoba resursa Konkurentne aktivnosti mogu da zahtevaju deljenje(engl. sharing) resursa ili informacija. Razlozi za deljenje resursa su višestruko (npr.cena obezbeđivanje dovoljnih resursa za svakog korisnika je preskupo. Zato je poželjno nadovezivanje rada jednog korisnika na rad drugog korisnika, deljenje podataka tj. korišćenje istih podataka između različitih programa i otklanjanje redundanse resursa. postojanje dugotrajne memorije Potreba za deljenjem programa i podataka implicira potrebu za trajnim skladištenjem podataka s mogućnošću brzog pristupa (engl. long-term storage). To omogućavaju uređaji velikog kapaciteta tj. sekundarne memorije koji su uglavnom magnetni. Ovde je potrebno rešiiti sledeće probleme: obezbeđivanje jednostavnog pristupa podacima, zaštita od štetnih uticaja bilo kakve vrste(zlonamernih ili nehotičnih i zaštita od grešaka samog sistema. Nedeterminizam Operativni sistem mora biti deterministički orijentisan znači, kada izvršava isti program sa istim podacima, mora dati isti rezultat, bez obzira da li će se to raditi danas, sutra ili za mesec dana. Na drugoj strani, operativni sistem mora karakterisati nedeterminističko ponasanje(engl. nondeterminancy), što znači da mora da odgovori na masu zahteva i događaja koji se mogu desiti na nepredvidiv način(zahtevi za resursima, greške u toku izvršavanja programa, prekidni signal perifernih uređaja). Operativni sistem ne može predvideti sve situacije koje mogu nastupiti i mora biti spreman za sve moguće sekvence događaja. Poželjne osobine operativnog sistema U poželjne osobine operativnog sistema spadaju: 1. Visok nivo efikasnosti Efikasnost operativnog sistema se može precizno predstaviti samo pomoću više kriterijuma, pri čemu značaj svakog kriterijuma u globalnoj predstavi zavisi od vrste i namene operativnog sistema. 8

Kriterijumi su sledeći: srednje vreme između poslova; vreme neiskorišćenosti operativnog sistema; vreme prolaska(engl. turn-around time) za paketnu obradu; vreme odziva (engl. response time) za interaktivne sisteme; iskorišćenost rersursa (engl. resource utilisation); propusna moć (broj poslova po satu, tj. ukupna veličina posla koji može biti obavljen interaktivno u nekom vremenu) Neka je e merilo efikasnosti (engl. efficiency): e=t korisno /t ukupno gde je t korisno vreme kada procesor radi korisne stvari u nekom poslu t ukupno vreme za koje se posao obavi. e se mora nalaziti u intervalu: 0<e<1 ; Ovde se uvodi i definicija merila gubitka vremena (o) (engl. overhead) o=t odrzavanje /t ukupno gde je t odrzavanje vreme kada procesor radi poslove vezane za održavanje samog sistema (engl.housekeeping) 0<o<1 ; Ovde važi: e+o=1. 2. visok nivo pozdanosti Idealno, operativni sistem bi trebalo da bude bez grešaka, ali to u realnosti nije moguće. Merilo pouzdanosti je je broj grešaka tj. srednje vreme između dve greške ili dv otkaza. 3. Jednostavnost održavanja Treba omogućiti da sistem održava što manje ljudi. da bi se to postiglo, potrebna je modularna struktura, sa jasno definisanim interfejsima među modulima i, naravno sa dobrom pratećom dokumentacijom 4. Prihvatljiva veličina Operativni sistem treba da zauzme što manje prostora u memoriji mada sa povećanjem kapacitivnosti savremenih memorijskih sistema - to gubi važnost. Na drugoj strani veliki sistemi su podložni greškama, a i njihov razvoj traje duže. -------- U prošlosti, operativni sistemi su pisani na asemblerskom jeziku, što je imalo svoje prednosti mane. Prednosti su svakako u kompaktnosti izvršnog koda, koji je minimalan, a po preformansama 9

optimalan. Mane se ogledaju u tome što realizacija koda zahteva mnogo programerskog vremena. Zahvaljujući jeziku C i UNIX sistemu, operativni sistemi se danas pišu na višim programskim jezicima. Implementacija u u višem programskom jeziku donosi mnoge prednosti: izvorni kod se mnogo brže piše; izvorni kod je mnogo kompaktniji; kod se mnogo lakše razume i lakše se otklanjaju greške (engl. debug) operativni sistem napisan na višem programskom jeziku se mnogo lakše prenosi na drugu računarsklu arhitekturu, tj. na drugu vrstu procesora. 10