You are on page 1of 19

1. Istorijat operativnih sistema 0. generacija Racunari sa enektromagnetima. Konrad Cuse 1.

generacija 1945 - 1955 Racunari su pravljeni od elektronskih cevi(diode, triode). U jednom racunaru je bilo i do 20 000 cevi. vi racunari su se jako !agrevali i cesto nisu mogli usled pregrevanja sastavili nijedan sat rada. "ili su veoma skupi i mogli su ih priustiti samo vojni vrhovi. #judi koji su radili na njima su radili sve, od pravljenja do programiranja i odr!avanja. $rogramiranje su odvijalo tako sto su se o!icavale rupe na kontrolnoj tabli kao na starim tele%onskim centralama. &os uvek nema govora o operativnim sistemu. 2. generacija 1955 1965 Racunari se sada prave od tran!istora. $ostali su manji, pou!daniji i je%tiniji pa su dostupniji mocnim %irmama. #judi se sad dele na one koji prave i one koji koriste racunare. Racunare koriste sistem operateri, operatori unosa podataka i programeri. $rogrameri pisu programe u %ortanu na papiru. 'a tih papira operateri unosa podataka prepisuju programe u busene kartice. $rogrameri !atim odnose te busene kartice u predvorje ispred racunara. 'istem operateri i!adju i! prostorije u kojoj je glavni racunar i pokupe busene kartice. (atim u racunar ubace %ortan kompajler, koji je takodje na busenim karticama, pa onda program na busenim karticama. Kompajler odradi posao i i re!ultate re!ultate ili !apamti ili i!baci u obliku busenih kartica koje se dalje mogu koristiti kao ula!ni podaci. Ra!ultat se u obliku kartica tada i!nese. ) dalje ne posttoji operativni sistem. Racunari su i dalje jako skupi i jako puno vremena se gubilo na pripremu obrade. 3. generacija (1965 1980) Racunari se prave od integrisanih kola tj cipova. 'ada su jos manji, je%tiniji i pou!daniji. $ostaje podela racunarana poslovne i naucne. ve racunare je pratio operativni sistem os*+,0. vaj operativni sistem je bio jako gloma!an i prepun gresaka (-0 000 u svakom trenutku). )pak, je bio prilicno stabilan ('to u ovom kontekstu podra!umeva da se nije blokirao kada je naisao na gresku, nego je nastavio rad sa greskama). &os jedna mana tadasnjih racunara je gubljenje procesorskog vremena dok traju ula!no . i!la!ne operacije. Kao resenje ovog problema nastaje multiprogramiranje. SPOL (Simultaneous Pheripheral Operation On Line) je jos jedno poboljsanje koje se odnosilo na prebacivanje sadr!aja busenih kartica na disk preko posebnog uredjaja. vim se gubi potreba !a racunarom koji je ranije obavljao tu %unkciju i ne gubi se vreme na premestanje magnetnih traka. Time sharing podela vremena. /o tada se vrsila paketna obrada. 0ova ideja je bila da ispred svakog korisnika postoji tastatura i monitor (terminal) koji su prikljuceni na glavni racunar i da korisnik ima osecaj da sam radi na racunaru. 'vaki korisnik bi pokrenuo svoj program a operativni sistem bi dodeljivao kontrolu jednom na osnovu dva kriterijuma1 - cekanje !bog ula!no i!la!nih operacija2 - istek do!voljenog vremena neaktivnost. 4. generacija 1980- generacija persona nih rac!nara Karakterise je sve veca integracija. $/$ racunari su sve manji, je%tiniji, pou!daniji. 0a kraju su mogli stati na sto. 0astaju Commodore ($34)2 'pectrum 5 (koji nije imao operativni sistem ali je imao ugradjen "asic koji je sve radio)2 'pectrum 562 Commodore ,5, -262 7pple -, --, ---... Page 1 of 19

8remenom se dola!i do )"9 $C i 9acintosh (i! 7pple:a). 'to se operativnih sistema !a $C:je tice, bitka se vodila i!medju C$*9:a i 9':/ ':a. U to vreme, C$*9 je vec imao mogucnost i!vrsavanja vise programa u isto vreme ali su njegovi predstavnici !akasnili na sastanak i )"9 je i!abrao 9':/ ' !a operativni sistem. 0akon / ':a pojavljuju se ra!ne ver!ije ;indo<s:a koje do ver!ije ;in=> i ;in04 ne predstavljaju operativni sistem. $ored klasicnih operativnih sistema i! trece generacije postoje dve nove vrste1 distribuirani ili mre!ni, koji su najstali kao posledica sustinskog momenta pove!ivanja racunara u lokalne*globalne mre!e. Korisnici racunara u ovoj generaciji su mnogobrojni. 've vise korisnika nije kompjuterski obra!ovan pa se ra!vija korisnicki inter%ejs koji olaksava njihov rad. Korisnicki inter%ejs dakle prestavlja ve!u i!medju korisnika i operativnog sistema. Kao posledica masovnosti javljaju se i programi opsteg tipa sa ra!vijanim korisnickim inter%ejsom, npr tekst procesorom. 5. generacija, (nikad nije reali!ovana po nasoj literaturi, ali po !apadnoj literaturi vec postoji kao posebna generacija) U ovoj generaciji se takodje ra!vijali i mre!ni i distribuirani operativni sistemi. 9re!e mogu biti lokalne i globalne a granica i!medju njih je cesto %ilo!o%sko pitanje. 9re!ni operativni sistem je nadogradnja operativnog sistema koji se vec nala!io na nekom racunaru. (a ra!licite operativne sisteme postoje njima odgovarajuce nadogradnje i va!i da su sve te nadogradnje kompaktibilne. Korisnik je svestan da nije sam na mre!i, tj sve stanje ra!licitih masina sa kojima stupa u kontakt preko terminala. /itribuirani oparativni sistema je jedna celina. Korisnik nije svestan postojanja ostalih racnara, iako mo!e koristiti podatke i i!vrsavati programe koji se nala!e mo!da i na drugom kontinentu. perativni sistemi pete generacije, su operativni sistemi mobilnih tele%ona(npr. 7ndroid, '?mbian. . .). 2. "on #ojmanova arhite$t!ra dnosi se na di!ajn racunara koji koristi jedinstvenu strukturu !a skladi@tenje u kojoj cuva i instrukcije i podatke. :3lementarni %i!icki objekat %on 0ojmanove masine ( pa i savremenih elektronskih racunara) je elektronska cev (tran!istor). :9o!e da bude u 2 diskretna stanja . protice struja* ne protice struja, (AregulisanjeB binarnu ci%ru 0 ili -) i na!iva se celija. :Celije se u %on 0ojmanovoj masini organi!uju u ni!ove %iksne du!ine koji se na!ivaju registar. svi podaci su predstavljeni u binarnom obliku instrukcije slede jedna !a drugom racunar ra!menjuje podatke i!medju memorije i aritmeticke jedinice preko akumulatora

Page 2 of 19

3. % ementi arhite$t!re ra&!nara 3 emente arhite$t!re ra&!nara &ine arhite$t!ra procesora' arhite$t!ra memorije i arhite$t!ra ! a(no)i( a(nog sistema. 7rhitektutu procesora Cine1 programski dostupni registr? tipovi podataka %ormat instrukcija naCini adresiranja skup instr!$cija mehani(am pre$i*a

+a ,i processor i(vr-io nare*,! on najpre tre,a *a je *ohvati i( memorije. .otom je potre,no o*re*iti a*res! operana*a na* $ojima se i(vr-ava operacija. / sva$om procesor! postoji vi-e registara $oje se *e e na a*resi,i ne registre i registre ne*ost!pne programer!. +va najva0nija interna registra s! 123(1emor42**ress3egister) i 1+3(1emor4+ata3egister). / sva$om procesor! postoji aritmeti&$o ogi&$a je*inica (25/) $oja i(vr-ava sve aritmeti&$e operacije. 6om!ni$acija i(me7! memorije i procesora se o*vija pre$o magistra a. 8va$a instr!$cija ima *va *e a. .rvi &ini operacioni *eo instr!$cije' a *r!gi a*resni *eo. D7#) /3 4. 6ara$teristi$e operativnih sistema [1] Kon urentnost Konkurentnost (engl. concurrenc?) je postojanje vi@e simultanih, paralelnih aktivnosti. $rimeri su preklapanje U*) operacija i operacija i!raCunavanja ili koeg!istencija vi@e programa u memoriji. Konkurentnost i!a!iva probleme pri prelasku s jedne aktivnosti na drugu, probleme !a@tite jedne aktivnosti od druge i sinhroni!acije aktivnosti koje su meEu so,no (avisne. [!] "eo#a resursa Konkurentne aktivnosti mogu da !ahtevaju deljenje (engl. sharing) resursa ili in%ormacija. Ra!lo!i !a deljenje resursa su vi@estruki. $re svega, to je ukupna cena, jer je obe!beEivanje dovoljnih resursa !a svakog korisnika najCe@Fe preskupo. $oGeljno je nadove!ivanje rada jednog korisnika na rad drugog korisnika, deljenje podataka, tj. kori@Fenje istih podataka i!meEu ra!liCitih programa, i otklanjanje redundanse resursa. [$] Postojanje dugotrajne memorije $otreba !a deljenjem programa i podataka implicira potrebu !a trajnim skladi@tenjem podataka s moguFno@Fu br!og pristupa (engl. long:term storage). 4o omoguFavaju ureEaji velikog kapaciteta, tj. sekundarne memorije, koji su uglavnom magnetni. $ri tome treba re@iti sledeFe probleme1 obe!beEenje jednostavnog pristupa podacima, !a@tita od @tetnih uticaja bilo kakve vrste (!lonamernih ili nehotiCnih) i !a@tita od gre@aka samog sistema. [%] &edetermini'am perativni sistem mora biti deterministiCki orijentisan . !naCi, kad i!vr@ava isti program sa istim podacima, mora da daje isti re!ultat, be! ob!ira na to da li Fe to raditi danas, sutra, ili !a mesec dana. 0a drugoj strani, operativni sistem mora karakterisati nedeterministiCko pona@anje (engl. nondeterminanc?), @to !naCi da mora da odgovori na masu !ahteva i dogaEaja koji se mogu desiti na nepredvidiv naCin (!ahtevi !a resursima, gre@ke u toku i!vr@avanja programa, prekidni signali peri%ernih ureEaja). perativni sistem ne moGe predvideti sve situacije koje mogu nastupiti i mora biti spreman !a sve moguFe sekvence dogaEaja. Page 3 of 19

5. 9I:8 ") ' ("asic )nput utput '?stem) predstavlja prvi so%tver koji se pokreFe prilikom pokretanja raCunara. (aduGen je !a inicijali!aciju, proveru i upravljanje peri%ernim ureEajima, a pre svega onima sa kojih se moGe pokrenuti operativni sistem. ") ' do!voljava kon%iguraciju hardvera. $osebno su bitni parametri koji se odnose na samo boot:ovanje. "oot:ovanje se sastoji od sledeFih %a!a1 pokretanje ") ':a, i!vr@avanje bootloader:a i pokretanje operativnog sistema. "oot:ovanje predstavlja proces inicijali!acije raCunara i pokretanja operativnog sistema. ") ' se nala!i na $R 9, 3$R 9 ili D#7'H memoriji na matiCnoj ploCi. 9I:8 ima mog!;nost samoprovere. 1o0e se $oristiti (a !prav janje ! a(no)i( a(nim !re7ajima' ma*a mo*erni operativni sistemi $om!niciraj! *ire$tno sa har*verom. 9I:8 je (a*!0en (a na a0enje !re7aja $oji je pogo*an (a po*i(anje sistema i i(vr-avanje ,oot oa*er-a sa njegovog ,oot se$tora. 6. 1ati&ne p o&e 9atiCna ploCa je osnovni deo raCunara. na pove!uje procesor, memoriju i ula!no:i!la!ne ureEaje. na sadrGi i R 9 memoriju u kojoj se kod $C raCunara nala!i ") ' (osnovni programi !a rad raCunara), kao i upravljaCke Cipove (t!v. kontrolere) koji upravljaju radom peri%erijskih ureEaja (npr. hard diska, C/: R 9:a...). 9atiCna ploCa takoEe pove!uje raCunarski sistem sa elektriCnim napajanjem. 'a stanovi@ta arhitekture, pove!ivanje delova mikroraCunarskog sistema obavlja se preko tri magistrale (put kojim se kreFu signali, podaci, naredbe u raCunaru)1 I magistrala podataka : sluGi !a prenos podataka kro! raCunar I adresna magistrala : magistrala kojom se predaju adrese memorijskih lokacija I upravljaCka magistrala : magistrala kojom se prenose upravljaCki signali 'a ra!vojem raCunara, menjali su se i i!gled i %i!iCka konstrukcija matiCne ploCe. 4ako nove matiCne ploCe imaju drugaCiju arhitekturu, drugaCije slotove !a pove!ivanje kartica (npr. gra%iCke karte), spoljne memorije ()/3, '747), drugaCije portove !a pove!ivanje peri%erijskih ureEaja (npr. U'", Dire;ire...). KonaCno, matiCna ploCa je ta od koje !avisi radni takt na kome Fe raditi procesor i memorija, kao i br!ina protoka in%ormacija. Jipset je skup Cipova, odnosno kontrolera i! kojih se sastoji matiCna ploCa. Kod dana@njih $C raCunara deli se na *va *e a< = >severni> *eo mati&ne p o&e (north,ri*ge) - veoma $omp e$san i ,r( $ontro er $oji pove(!je procesor sa memorijom i magistra om = >j!0ni> *eo mati&ne p o&e (so!th,ri*ge) - $ontro er $oji pove(!je magistra ! sa peri?erijs$im !re7ajima (*is$etne je*inice' har* *is$ovi' @+ i +A+ 3:1-ovi' mi-' tastat!ra' /89...). 7. Bar* *is$ovi "eleGenje i i@Citavanje ubeleGenih podataka !asnovano je na elektronskom manipulisanju magnetnim promenama na tankim okruglim ploCama koje se nala!e unutar tvrdog diska. 'avremeni hard:diskovi su veliCine manje dGepne knjige, a u njima se, poreEane jedna do druge, nala!e aluminijumske ploCe prekrivene velikim brojem sitnih magnetnih !rnaca. )!nad i ispod svake ploCe nala!i se KglavaK njenog magnetnog pisaCa koji moGe da sluGi i kao CitaC. JitaC, odnosno pisaC, podseFa na ruCku gramo%ona, tj. nosaC gramo%onske igle, ali !a ra!liku od njegovog %unkcionisanja, CitaCi tvrdog diska lebde i!nad svojih ploCa na rastojanju koje je > 000 puta manje od debljine proseCne ljudske dlake. 'a tako malog rastojanja (manjeg od dva stota dela mikrona) vr@i se Citanje stanja magnetnih !rnaca na odgovarajuFoj ploCi, ili pak pogodno namagnetisavanje odnosno ra!magnetisavanje istih !rnaca pomoFu elektriCnih struja koje protiCu kro! glavu pisaCa*CitaCa. Page 4 of 19

8. :p-ti preg e* str!$t!re operativnih sistema Upravljanje osnovnim resursima raCunarskog sistema obe!beEuje vi@e %unkcionalnih grupa programa namenjenih !a1 I upravljanje procesorom2 I upravljanje memorijom2 I upravljanje ula!om i i!la!om2 I upravljanje podacima2 I upravljanje sekundarnom memorijom2 I umreGavanje2 I !a@titu2 I korisniCki inter%ejs. $rocesor je jedan od najvaCnijih resursa raCunarskog sistema, mada u pojedinimsituacijama neki drugi resursi mogu biti vaCniji. Upravljanje procesorom moCe se podeliti na dva nivoa1 I nivo neposredne dodele procesora nekom programu, tj. predaje kontrole nadprocesorom nekom programu2 I nivo ra!re@avanja prioriteta, tj. odluCivanja koji od moguFih programa ima najveFi prioritet da bi postao proces i da bi u nekom sledeFem trenutku dobio kontrolu nad procesorom. $od upravljanjem memorijom podra!umeva se upravljanje radnom, tj. glavnom memorijom raCunara, kojoj centralni procesor pristupa direktno, radi u!imanja instrukcija ili podataka. 0a ovom nivou obavljaju se sledeFe %unkcije1 I reali!acija odreEene strategije dodeljivanja memorije (redosled dodeljivanja memorije poslovima, statiCno ili dinamiCno dodeljivanje, principi dodeljivanja itd.)2 I dodeljivanje memorije (algoritmi i!bora poCetne lokacije segmenta koji se dodeljuje)2 I sprovoEenje odreEene strategije oslobaEanja memorije (ukrupnjavanje manjih osloboEenih delova memorije, oslobaEanje delova memorije, redosled obrade !ahteva !a dodelu memorije). 0a nivou upravljanja ureEajima reali!uju se sledeFe %unkcije1 I obe!beEivanje ne!avisnosti ureEaja (programi treba da budu ne!avisni od tipa ureEaja koji se koriste !a ula!no:i!la!ne operacije)2 I obe!beEivanje eLkasnog rada ureEaja (po@to U*) operacije predstavljaju Cesto usko grlo raCunarskog sistema, poCeljno je da se @to eLkasnije preklapaju i i!oluju od procesora)2 I obe!beEivanje jedinstvenog koncepta anali!e rada svih ureEaja raCunarskog sistema2 I reali!acija odreEene strategije dodeljivanja ureEaja (na primer, redosled dodeljivanja ureEaja poslovima, naCin dodeljivanja ureEaja1 namenski, s deobom, kao virtuelni itd.)2 I dodeljivanje ureEaja (L!iCko dodeljivanje ureEaja, kontrolnih jedinica i kanala poslovima)2 I reali!acija odreEene strategije oslobaEanja ureEaja (na primer, ureEaj se oslobaEa tek kad se posao kojem je dodeljen !avr@i). 0ivo upravljanja podacima treba da obe!bedi so%tverska sredstva !a organi!ovanje podataka i pristupanje podacima na naCin koji odgovara korisniku raCunarskog sistema. Koncepcija upravljanja !avisi, pre svega, od vrste podataka i reCima njihovog kori@Fenja. 0a ovom nivou reali!uju se sledeFe %unkcije1 I %ormiranje i brisanje osnovnih struktura podataka (datoteka)2 I Citanje datoteka i upisivanje u datoteke2 I obe!beEivanje uslova !a simboliCko obraFanje datotekama (prema njihovim imenima)2 I !a@tita podataka od namernog i nenamernog uni@tavanja (usled otka!a sistema)2 I !a@tita podataka od neovla@Fenog pristupa i kori@Fenja2 I deoba datoteka (podataka) i!meEu vi@e poslova (korisnika). Page 5 of 19

9. 8ta je je(gro operativnog sistemaC (e'gro (nu)leus* )ore* ernel) &e!gro operativnog sistema je osnovni deo operativnog sistema koji obavlja najosetljivije i najvaGnije operacije. U hijerarhisjkom (slojevitom) modelu, je!gro je najbliGe hardveru i predstavlja ve!u tj inter%ejs i!meEu hardvera i ostalih slojeva operativnih sistema. 4o je deo oprativnog sistema koji omoguFava programima da na siguran naCin pristupe hardveru.&e!gro se uvek nala!i u glavnoj memoriji i bavi se1 upravljanjem prekida kreiranjem i uni@tavanjem procesa !amenom jednog procesa drugim rasporeEivanjem procesa sinhroni!acijom procesa manipulacijom $C":a ($rocess Control "lock) ula!om*i!la!om sistemom %ajlova upravljanjem memorijom (unutra@njom) obraCunom tro@kova (Cuvnaje podataka u statistika o korisnicima i procesima) &e!gro operativnog sistema se na!iva Kernel. Kernel kontroli@e resurse (upravlja procesima, memorijom, diskom i pruGa pristup drugom hardveru). /a bi je!gro ostavarilo svoju osnovnu %unkciju, neophodno je da sam hardver ispunjava odreEene preduslove tj da na nivou hardvera postoje komponente koje omoguFuju nadogradnju hardvera je!grom. U te komponente spadaju1 9ehani!am prekida (a@titni mehani!am adresiranja memorije 'kup privilegovanih instrukcija Jasovnik realnog vremena 10. Dta je virt!e na ma-ina i $oja je njena osnovna ?!n$cijaC 'truktura virtuelnih ma@ina je i!raEena od strane %irme )"9 na sledeFi naCin1 imamo na najniGem nivou hardver, i!nad hardvera imamo sistem koji se !ove monitor virtuelnih ma@ina (virtual machine monitor) i koji obe!beEuje ni! virtuelnih ma@ina : to nisu pro@irene ma@ine kao operativni sistemi koji pruGaju ni! pro@irenih i jednostavnijih operacija !a pristup hardveru, veF su taCne kopije hardvera ispod monitora virtuelnih ma@ina. (atim se na te virtuelne ma@ine mogu biti instalirani operativni sistemi . koji mogu biti i ra!liCiti. 'istemske po!ive korisniCkih programa primaju odgovarajuFi operativni sistemi, a hardverske operacije koje @alju ti ':ovi prema svojim virtuelnim ma@inama hvata monitor virtuelnih ma@ina i reali!uje ih u skladu sa hardverom ispod sebe. Kao primer moGemo navesti )"9:ov 89*+M0.

11. .re$i*i. Dta je mehani(am pre$i*aC Cekanja na dogadjaj ili prekidanje. Kontroleri su u neku ruku osiromaseni procesori koji su sposobni da autonomno i!vrsavaju neke !adatke. 'vaki kontroler ima dva slabija procesora. Page 6 of 19

$ostoje dva nacina upravljanja ula!no*i!la!nim uredjajima1 'pooling i $rekidi(interapt) Kod spooling:a, program koji se i!vrsava na centralnom procesoru u nekim vremenskim intervalima provera stanje spoljih uredjaja intervalima provera stanje spoljnih uredjaja (mis, stampac) i ako postoji neka promena, on je obradi. $rogram koji se i!vrsava na centralnom procesom u nekim vremenskom intervalima proverava stanje spoljasnjih ili spoljnjih uredjaja. Kod upravljanja spojnim uredjajem pomocu prekida, program koji se i!vrsava na centranomk procesoru, radi neormalno dok se ne dasi prekid. tada operativni sistem preu!ima kontrolu sacuva stanje postojecih procesa, stane stanje tekuceg procesa, onemoguci dalje prekide ili obradi prekide u tabeli prekida u kojoj se nala!e oadrese svih prekida. 8rste prekida1 - sistemski prekid - ula!no*i!la!ni prekidi - greske u programu - greske u hardveru 'vi sitemski po!ivi se reali!uju sistemom prekida. ni se reali!uju tako sto korisnik so%tverski eksplicitno generise prekid. $ri tome procesor prela!i i! korisnickog u supervi!orski nacin rada i u njemu se obradjuju prekidi. $'; ($rogram 'tatus ;ord)1 $'; j< registar(ili skup registara) centralnog procesora koji je usko ve!an !a prekide, n sadr!i adresu tekuce instrukcije i ostale in%ormacije o tekucem procesoru kao i stanje prekida (omoguceni ili ne) (a svaki prekid pravi se novi $';. 9ehani!am prekida obe!beEuje i!vr@enje upravljaCkog programa (prekidna rutina) tj prebacivanje kontrole i!vr@avanja s korisniCkog na upravljaCki program. 0ajmanje @to mehani!am prekida treba da uCini jeste da saCuva vrednosti programskog brojaCa prekinutog programa i pokrene upravljaCki program s %iksne lokacije u memoriji. UpravljaCki program dalje odreEuje i!vor prekida i reaguje na odgovarajuFi naCin. 12. 8istems$i po(iv 7plikacioni programi komuniciraju sa operativnim sistemom pomoFu sistemskih po!iva (engl. s?stem calls), tj. preko operacija (%unkcija) koje deLni@e operativni sistem. 'istemski po!ivi se reali!uju pomoFu sistema prekida1 korisniCki program postavlja parametre sistemskog po!iva na odreEene memorijske lokacije ili registre procesora, inicira prekid, operativni sistem preu!ima kontrolu, u!ima parametre, i!vr@i traGene radnje, re!ultat stavlja na odreEene memorijske lokacije ili u registre i vraFa kontrolu programu. 'istemske po!ive Cesto podrGava i hardver, tj. procesor, na taj naCin @to ra!likuje dva reGima rada1 korisniCki reGim (engl. user mode) i sistemski reGim (engl. supervisor mode). KorisniCki programi mogu raditi iskljuCivo u korisniCkom reGimu rada procesora, sistemski reGim rada je predviEen !a operativni sistem. 7ko korisniCki program poku@a da i!vr@i neku operaciju koja je do!voljena samo u sistemskom reGimu rada, kontrola se predaje operativnom sistemu. $rilikom sistemskih po!iva procesor prela!i i! korisniC : kog reGima rada u sistemski, a vraFa se u korisniCki reGim posle obrade po!iva. 'istemski po!ivi obe!beEuju inter%ejs i!meEu programa koji se i!vr@ava i operativnog sistema. Neneralno, reali!uju se na asemblerskom je!iku, ali noviji vi@i programski je!ici, poput je!ika C i COO, takoEe omoguFavaju reali!aciju sistemskog po!iva. $rogram koji se i!vr@ava moGe proslediti parametre operativnom sistemu na tri naCina1 I prosleEivanjem parametara u registrima procesora2 I postavljanjem parametara u memorijskoj tabeli, pri Cemu se adresa tabele prosleEuje u registru procesora2 I postavljanjem parametara na vrh steka (push), koje operativni sistem AskidaB(pop).

Page 7 of 19

13. :,jasniti pojam procesa .roces - je u osnovi program u i!vr@enju. 'astoji se od i!vr@nog programa, podataka, steka, programskog brojaCa, stek pointera, skupa registara i svih ostalih in%ormacija potrebnih !a pokretanje programa. 've in%ormacije o procesima operativni sistem sme@ta u ta,e ! procesa koja je ni! ili pove!ana lista struktura, gde se svaka struktura dodeljuje jednom od postojeFih procesa. $roces moGe kreirati vi@e drugih procesa koji se na!ivaju procesi potomci. snovni !adaci slojeva !a rukovanje sa procesima su stvaranje i unistavanje procesa.'ignal je so%tverska analogija hardverskog prekida i moGe biti generisan ra!liCitim uslovima ili istekom tajmera. 'ignali se koriste !a meEuprocesnu komunikaciju. .rocesi'osnovna stanja'sinhroni(acija . snova stanja procesa su 1 i!vrsava se (RU0), kada je procesu dodeljen procesor i on i!vrsava procese,spreman(R37/P) kada proces ceka na procesor da ga primi i blokiran (;7)4) kada nisu ispunjeni neophodni preduslovi !a obradu podataka. d prioriteta procesa !avisi kada ce spreman proces da postane aktivan.$odra!umeva se da je aktivan uvek proces sa najvisim prioritetom.7ko postoji nekoliko procesa najviseg prioriteta tada se ravnomerna raspodela procesorskog vremena i!medju aktivnog i spremnog procesa najviseg prioriteta posti!e ako aktivni proces prepusta procesor spremnom procesu najviseg prioriteta cim istakne unapred odredjeni vremenski interval. vaj interval se na!iva kvantum. 14. 6a$ve vrste procesa postojeC $rocesi se dele na te@ke i lake procese. (a ivr@avanje nekog procesa potrebno je 5 dela memorije1 H37$, deo memorije $oji je re(ervisan (a *inami&$e promen jive' tj. (a promen jive $oje se stvaraj! ! to$! i(vr-avanja programa. .rist!pa im se pom!;! po$a(iva&a. 6reira se pomo;! ?!n$cije 255:@2E%. :s o,a7anje se ostvar!je es$p icitno i i pomo;! F2392F% @:55%@E:3a. Far,age je a!tomats$i mehani(am (a os o,a7anje memorije. '47CK, deo memorije re!ervisan !a Cavanje lokalnih promenljivi h' parametara proce*!ra'... Ae i&ina m! je promen jiva. .rincip ra*a< nast!pi po(iv proce*!re' na ste$ se g!raj! parametri' o$a ne promen jive i povratna a*resa tren!tne proce*!re. #a$on (avr-enog pos a sa ste$a se s$i*aj! te in?ormacije. memorija !a globa ne promen jive memorija (a $o* procesa sva$i te-$i proces ima sopstveni memorisj$i prostor (a $o*' g o,a ne promen jive' ste$ i heap $oj! ne *e i ni sa $im' prist!p tim *e ovima ima samo *ati proces. a$i procesi (niti) mog! *e iti memorijs$i prostor (a $o*' g o,a ne promen jive i heap. 8te$ se ne mo0e *e iti jer ne mo0emo !napre* (nati $oji proces $oristi ste$. perativni sistem odluCuje da li Fe proces biti teGak ili lak. .ostoje operativni sistemi $oji po*r0avaj! samo a$e procese (/#IG)' samo te-$e procese (:,eron)' o,e vrste procesa (Hin*oIs). 15. .o*e a operativnih sistema ! o*nos! na procese perativni sistemi mogu podrGavati1 monotasking (jednoprocesni, monoprogramiranje)1 u memoriji istovremeno imamo samo jedan program, tj istovremeno se i!vr@ava samo jedan proces multitasking (vi-eprocesni' m! tiprogramiranje)< ! memoriji istovremeno imamo vi-e program' istovremeno se i(vr-avaj! i vi-e procesa perativni sistem moGe da i!vr@i sledeFe operacije nad procesima1 o o o kreiranje procesa uni@tavanje procesa i!rada ve!a proces . proces roditelj Page 8 of 19

.o*e a procesa na te-$e i a$e vr-i se na osnov! toga' $a$o $oriste gore nave*ene *e ove memorije<

o o

promena stanja procesa promena prioriteta procesa.

16. :,jasniti pojmove ne(avisnih' $ompetitivnih i $ooperativnih procesa ) sami procesi mogu kreirati nove procese. U tom sluCaju proces koji kreira novi proces !ove se roditelj, a novi proces dete, pa je odnos hijerarhijski (u obliku stabla). )!meEu roditelja i deteta moGemo imati dve vrste ve!e1 proces . roditelj kreira novog procesa i Ceka dok proces . dete !avr@i sa radom proces . roditelj kreira novog procesa i nastavljaju sa radom oba procesa (rad e para e no) ne(avisne procese' !$o i$o ne !ti&! na i(vr-enje *r!gih procesa i a$o na njegovo i(vr-enje ne !ti&! *r!gi procesi $ooperativne procese' oni $oji je*ni na *r!ge !ti&!' a to s! svi procesi $oji *e e po*at$e i i ,i o $a$ve res!rse. 6ooperativni procesi s!< *e jenje in?ormacija' !,r(avanje ra*a' mo*! arnost' pogo*nost.

/ o*nos! na me7!so,n! (avisnost to$a i(vr-avanja' procesi se mog! po*e iti na<

dnos proces . proces roditelj moGe se opisati na osnovu naCina deljenja resursa i naCina i!vr@avanja. $rema deljenju resursa, procesi ro*ite j i *ete mog! se na;i ! s e*e;im re acijama< .rocesi ro*ite j i *ete *e e sve res!rse .rocesi ro*ite j i *ete *e e po*s$!p res!rsa ro*ite js$og procesa .rocesi i ro*ite j ne *e e res!rse

d resursa, svaki proces !a svoj rad najCe@Fe koristi registre procesora, memorijske sekcije, datoteke i ula!no:i!la!ne ureEaje. $osebno je osetljiv memorijski adresni prostor, !a Cije se kori@Fenje primenjuju sledeFe tehnike1 $roces dete duplicira adresni prostor roditelja 7dresni prostor *eteta generi-e se prema program! $ojim se taj a*resni prostor p!ni

17. 8inhroni(acija procesa Upravljanje aplikacijama sa vie niti se obavlja pomou objekata za sinhronizaciju. Za sinhronizaciju se koriste sledei objekti: oga!aj " event # - $riti%na sekcija " critical section # - &ute' - (emafor " semaphore # )in*+ ,P- podr.ava set funkcija koje se mogu koristiti za %ekanje sve dok se neki objekat ne oslobodi za korienje . Postoje mnogo vrsta ovakvih objekata na koje se ove funkcije mogu primeniti. /eki od njih su pravi sinhronizacioni objekti0 a drugi su objekti za druge namene "fajlovi0 U1- kanali0 ure!aji# koji ne mogu biti u signaliziranom ili nesignaliziranom stanju. (inhronizacioni objekti koji mogu biti signalizirani su: semafori0 event objekti0 mute' objekti i objekti kriti%ne sekcije. (emafor (emafor " semaphore # je objekat koji se koristi da ograni%i broj konkurentnih pristupa do deljenog objekta. -nterno se semafor ponaa kao broja%. (emafor se nalazi u signaliziranom stanju ako je stanje njegovog internog broja%a vee od nule0 a ako je jednako nuli smafor je nesignaliziran. Page 9 of 19

(emafor objekat se kreira funkcijom 2reate(emaphore i tada se specificira maksimalni broj pristupa0 tj maksimalna vrednost koju mo.e imati interni broja% . (vaki put kada se nit koja %eka semafor realizuje0 broja% semafora se dekrementira za jedan. 3roja% se mo.e inkrementirati funkcijom 4elease(emaphore. ,ko je stanje internog broja%a 5 " nula # sve koje %ekaju na semafor su blokirane. 6snovne operacije nad semaforom su: 6)/ - dekrement internog broja%a0 indikacija da je nit pristupila zatienom resursu i da on vie nije dostupan UP - inkrement internog broja%a0 indikacija da je zatieni resurs ponovo dostupan Prilikom pristupa resursu zatienom pomoi semafora nit mora %ekati na semaforov handle0 to blokira nit dok se semafor ne signalizira.

count = 0

in itia liz a tio n

R e le a s e S e m a p h o r e count = 1 r e s u r s d o s tu p a n U P

re s u rs u u p o tre b i count = 0 D O W N W a it fo r s e m a p h o r e h a n d le

Page 10 of 19

oga!aj 7vent se koristi za slanje signala nit da se neki doga!aj desio. 8o je sinhronizacioni objekat upravljan od strane operativnog sistema0 i mo.e mu se pristupiti iz vie procesa0 ako je imenovan. $oristi se kada jedna nit mora %ekati da druga nit zavri neki posao0 ili kada nit %eka da se nazna%i da se neki doga!aj desio. 7vent mo.e biti u dva stanja: - signalizirano - zahtev za %ekanje je zadovoljen - nesignalizirano - zahtev za %ekanje nije zadovoljen i nit je blokirana 7vent se obi%no posle signalizacije odmah vraa u nesignalizovano stanje. (tanje event objekta mo.e eksplicitno postavljeno na signalizovano ili na nesignalizovano. $ada se event objekat kreira funkcijom 2reate7vent specificira se njegovo stanje i njegov tip. Postoje dva tipa event objekata: manual-reset event &ora se resetovati u nesignalizirano stanje funkcijom 4eset7vent. ok je stanje signalizirano0 sve niti koje %ekaju ili niti koje su specificirale ime objekta u funkciji %ekanja mogu se izvriti. auto-reset event (tanje objekta se resetuje u nesignalizirano svaki put kada se izvri nit koja %eka na objekat. ,ko nema niti koje %ekaju0 stanje ostaje signalizirano. (tanje event objekta se mo.e prevesti u signalizirano funkcijom (et7vent.

n itA

n it

W a it! o r S in " le O b #e c t$ h % & e n t' n it #e b lo ( ir a n a n it #e o d b lo ( ir a n a S e t% & e n t$h % & e n t'

&ute' &ute' je objekat za sinhronizaciju koji dozvoljava samo jednoj niti da pristupi zatienom resursu0 niti koja poseduje mute'. &ute'-om upravlja operativni sistem. &ute' se kreira funkcijom 2reate&ute' koja vraa handle kreiranog mute'-a. &ute' " mutual e'clusion 9 me!usobno isklju%ivanje # je nesignalizovan kada je posedovan od neke niti0 asignalizovan kada je dostupan. /it dobija vlasnitvo nad mute' objektom specifikacijom handle-a objekta u funkciji %ekanja. &ute' objekat se osloba!a " signalizira # funkcijom 4elease&ute'.

Page 11 of 19

(inhronizacioni objekti se mogu koristiti i za me!u-procesnu sinhronizaciju. (emafori0 event objekti i mute' objekti mogu biti imenovani kada se kreiraju odgovarajuom funkcijom. rugi proces mo.e dobiti handle od ovih objekata korienjm funkcija 6pen(emaphore0 6pen7vent i 6pen&ute' 18. 6riti&ni segment procesa bjekat kritiCne sekcije ( Critical section ) je varijacija muteQ objekta. bjekat kritiCne sekcije moGe biti kori@Fen samo od strane niti istog procesa, ali on pruGa mnogo e%ikasniji mehani!am meEusobnog iskljuCivanja od muteQ:a. KritiCnom sekcijom upravlja proces u okviru koga se koristi, a ne operativni sistem. KritiCna sekcija se obiCno koristi da !a@titi deo koda koji moGe biti kori@Fen samo od jedne niti u bilo kom trenutku.

n iti

( r itic n a s e ( c i#a

/ok je jedna nit u kritiCnoj sekciji ostale niti su blokirane i Cekaju oslobaEanje kritiCne sekcije da bi joj pristupile.

KritiCna sekcija je o!naCena tipom CR)4)C7#R'3C4) 0 i mora biti inicijali!ovana pre upotreba. 9ora biti dostupna svim nitima u procesu i !bog toga se de%ini@e u globalnom dosegu. $o!ivom %unkcije 3nterCritical'ection nit !adobija vlasni@tvo nad objektom kritiCne sekcije, a vlasni@tvo otpu@ta po!ivom %unkcije #eaveCritical'ection. 7ko je objekat kritiCne sekcije posedovan od strane druge niti kada se po!iva %unkcija 3nterCritical'ection, ova %unkcija Ceka neograniCeno dugo sve dok se objekat kritiCne sekcije ne oslobodi, a ako se po!iva 4r?3nterCritical'ection nit Fe samo proveriti da li je kritiCna sekcija slobodna, i uFi u nju ako jest, a ako nije nastaviFe dalje svoje i!vr@avanje. 0e postoji nikakva garancija oko redosleda kojim niti istog prioriteta dobijaju vlasni@tvo nad kritiCnom sekcijom, ali sistem je A%erA prema svim nitima. 19. 3aspore7ivanje procesa $roces u toku svog Givota prola!i kro! nekoliko redova Cekanja. 0akon nastanka, proces se ubacuje u red Cekanja !a poslove (job Sueue), koji obuhvata sve postojeFe procese na sistemu. $rocesi se mogu nala!iti u ra!nim stanjima i u ra!nim lokacijama (u memoriji, disku, delimiCno u memoriji, delimiCno na disku). 'vi procesi koju su spremni !a rad i nala!e se u radnoj memoriji, Cuvaju se u redu Cekanja na procesor, tj u redu Cekanja spremnih procesa. Redovi Cekanja na procesor po pravilu se reali!uju kao pove!ane liste, %ormirane od kontrolnih blokova procesa sa de%inisanim redosledom i!vr@avanja procesa. Redosled se Page 12 of 19

!adaje preko !aglavlja liste (Sueue header), koje sadrGi in%ormacije o poCetnom i poslednjem kontrolnom bloku u listi, i poka!ivaCa na sledeFi kontrolni blok. perativni sistem uvodi i poseban red Cekanja !a svaki ula!no:i!la!ni ureEaj ()* Sueue). 'vaki red Cekanja na ureEaj sadrGi pove!anu listu kontrolnih blokova procesa koji ureEaj !ahtevaju.$ostoje 2 vrste redova Cekanja1 Red Cekanja na processor Redovi Cekanja na ula!no*i!la!ne ureEaje

0ovi proces se inicijalno postavlja u red Cekanja !a spremne procese u kome Ceka dodelu procesora, nakon Cega napu@ta red i poCinje da se i!vr@ava. $roces koji se nala!i u stanju i!vr@avanja moGe1 stati be! procesora kada mu istekne vremenski kvantum 0apraviti novi proces i Cekati u blokiranom stanju da se novi proces !avr@i stati be! procesora kada se desi prekid $ostavi U*) !ahtev, nakon Cega se prebacuje u red Cekanja na ula!no*i!la!ni ureEaj, tj postaje blokiran

$roces se vraFa u red Cekanja na procesor sve dok se ne !avr@i, posle Cega oslobaEa sve !au!ete resurse. 20. #iti 0iti (engl. threads), to jest laki procesi (engl. light<eight processes, #;$), predstavljaju osnovne celine !a i!vr@avanje koda pod savremenim operativnim sistemima. 0iti su programska celina koja treba da obavi jedan posao. 0iti (jedna ili vi@e) pripadaju jednom klasiCnom, tj. te@kom (engl. heav!<eight) procesu. U klasiCnom kontekstu, jedan teGak proces ima svoj programski brojaC i druge procesorske registre, tri memorijske sekcije (kod, podaci i stek) i )* resurse kao @to su datoteke i ureEaji. /obre osobine 1 T 8reme od!iva (Responsiveness) T /eljenje resursa (Resource 'haring) T 3konomiCnost T "olje iskori@Fenje vi@eprocesorske arhitekture 0iti kao laki procesi i delovi jednog istog procesa, imaju svoje unikatne resurse i !ajedniCke resurse sa ostalim nitima istog procesa. d unikatnih resursa imaju poseban identi%ikator niti (engl. thread )/), posebnu vrednost programskog brojaCa vrednosti drugih registra procesora, i poseban stek. 've ostalo (sekcija koda, sekcija podataka, otvorene datoteke, signali) !ajedniCki su resursi !a sve niti jednog procesa. 21. :,jasniti pojam mrtve ta&$e i i (astoja. 6oji s! !s ovi nastan$a (astojaC Kada dva ili vi@e procesa meEusobno interaguju, mogu doFi u pat:po!iciju i! koje se ne mogu i!vuFi. vakva situacija se na!iva mrtva ta&$a (deadlock). 1rtva pet ja . opisuje situaciju u kojoj je trajno !austavljena aktivnost medjusobno !avisnih procesa. $ojava mrtve petlje je ve!ana !a !au!imanje resursa. (a pojavu mrtve petlje moraju biti ispunjeni uslovi1 !au!imani resursi se koriste u re!imu medjusobne iskljucivosti2 resursi se !au!imaju jedan !a drugim, tako da proces, nakon !au!imanja i!vesnog broja resursa, mora da ceka da !au!me preostale resurse2 resurse oslobadjaju samo procesi koji su ih !au!eli2 postoji cirkularna medju!avisnost procesa (prvi proces ceka oslobadjanje resursa koga dr!i drugi proces, a on ceka oslobadjanje resursa koga dr!i treci proces, i tako redom do poslednjeg procesa i! lanca procesa, koji ceka oslobadjanje resursa koga dr!i prvi proces). (amislimo kompjuter sa tape drajvom i C/:rekorderom. 'ad !amislimo dva procesa od kojih svaki treba da napravi C/:R 9 od podataka sa trake. $roces - !ahteva i odobren mu je tape drajv (drajv je ureEaj koji omoguFuje rotaciju diskova ili traka radi Citanja i upisa podataka), a proces !ahteva i odobren mu je C/:rekorder. nda proces - !ahteva C/:rekorder i biva suspendovan dok ga proces 2 ne vrati. KonaCno, Page 13 of 19

proces 2 !ahteva tape drajv i takoEe biva suspendovan jer je drajv u posedu procesa -. koje nema i!la!a. 22. 321' 3:1 memorija

vo je situacija i!

R79 memorija, odnosno memorija slobodnog ili proi!voljnog pristupa je dobila na!iv prema naCinu na koji joj procesor pristupa : svakoj memorijskoj lokaciji se pristupa ravnopravno, !a isto vreme. /a bi se neki program i!vr@io, mora se uCitati u R79. /anas je uobiCajeno da se u R79 memoriju uCitavaju i operativni sistem i aplikativni so%tver. 4u se uobiCajeno nala!e i podaci sa kojima radimo na na@em raCunaru (slike, tekstovi...). $odaci u R79 memoriji ostaju !apisani samo dok postoji elektriCno napajanje. (bog toga se sve @to radimo na raCunaru gubi pri nestanku struje ili iskljuCivanju ukoliko nije bilo snimljeno. Kada se govori o koliCini memorije u raCunaru, misli se na R79 memoriju. 0jena najvaGnija karakteristika jeste kapacitet, a na drugom mestu br!ina. )pak, br!ina rada raCunara Fe prvenstveno !avisiti od koliCine R79 memorije. Kapacitet memorije se i!raGava u bajtovima (odnosno kilobajtima, megabajtima, gigabajtima...). 8i@e o jedinicama mere moGete proCitati u poglavlju o predstavljanju podataka na raCunaru. Ukoliko memorije nema dovoljno, operativni sistem mora koristiti t!v. virtuelnu memoriju, @to !naCi da se podaci i! R79a se stalno moraju snimati i uCitavati sa medija spoljne memorije (taCnije hard diska), @to !natno usporava rad raCunara. Ukoliko memorije ima dovoljno, postavlja se pitanje njene br!ine, koja !avisi od radnog takta matiCne ploCe. )ako je R79 memorija uvek sporija od procesora i ke@a, ukoliko moGe da radi na vi@em radnom taktu, to moGe da doprinese ukupnoj br!ini sistema. R 9 predstavlja memoriju Ciji sadrGaj je trajan i nepromenljiv. R 9 se moGe samo Citati, ne moGe menjati ni brisati. R 9 sadrGi najosnovnije programe i podatke neophodne !a %unkcionisanje raCunarskog sistema na najniGem nivou. /rugim reCima, pre nego @to se bilo @ta uCita u memoriju na@eg kuFnog raCunara, programi i! R 9:a su aktivni i oni su ti koji ustvari Cine moguFim na@ poCetak rada na raCunaru. 0a $C raCunaru je ovaj osnovni sistemski so%tver po!nat kao ") '("asic )nput* utput '?stem). 23. Airt!e na memorija 8irtuelna memorija je tehnika koja do!voljava i!vr@avanje procesa Ciji delovi mogu biti sme@eteni na sekundarnim memorijama, tj diskovima. 8irtuelna memorija %ormira apstrakciju u vidu logiCke memorije, koju Cine radna memorija i sekundarna memorija i ra!dvaja korisniCku logiCku memoriju od %i!iCke. KoliCina raspoloGive %i!iCke memorije vi@e ne ograniCava program, pa programeri mogu da pi@u programe be! kori@Fenja tehnike preklapanja (overla?). $ri tome, virtuelna memorija omoguFava i!vr@avanje programa veFih od same %itiCke memorije. Koncept virtuelne memorije omoguFava sme@tanje osetno veFeg broja procesa u memoriju (konkretno delova procesa), Cime se poveFavaju iskori@Fenje i propusna moF procesora, a be! poveFanja vremena od!iva (response time) i vremena i!vr@avanja (turnaround time). 8irtuelna memorija omoguFava deljenje datoteka i memorije i!meEu ra!liCitih procesa na isti naCin kao i kod deljenja stranica, @to omoguFava u@tedu memorije i pobolj@anje per%ormansi. Koncept virtuelne memorije posebno dola!i do i!raGaja kod vi@ekorisniCkih operativnih sistema, jer kod preno@enja dijelova programa ili podataka u*i! operativne memorije procesor ne mora da Ceka, vec odmah prela!i na i!vr@avanje drugog posla. 'vaka aplikacija ima svoj virtuelni adresni prostor koji operativni sistem preslikava u %i!iCku memoriju. 8eliCina virtuelne memorije je ograniCena samo veliCinom !amjenskog prostora na disku. &ednostavno rje@enje kori@Feno kod prvih UniQ sistema je posebna particija diska koja se koristi samo kao !amjenski prostor. Kod takvog rje@enja prostor diska se dijeli na dva glavna dijela1 jedan koji se koristi !a straniCenje i drugi koji se koristi !a +ile sistem. $roblem sa ovakvim pristupom je ne%leksibilnost. $ostoje sljedeFe osnovne vrste organi!acije virtuelne memorije1

segmentna, straniCna, Page 14 of 19

segmentno:straniCna. 24. Dta je !n!tra-nja a -ta spo ja-nja ?ragmentacija (memorije)C Dragmentacija se odnosi na neiskori@Fenu memoriju koju sistem !a upravljanje memorijom ne moGe da dodijeli procesima. $ostoje dva tipa %ragmentacije1 interna i eksterna. )nterna %ragmentacija je dio memorije unutar regiona ili stranice koja je dodjeljena datom procesu i ne koristi se od strane tog procesa. )nterna %ragmentacija je prou!rokovana ra!liCitom veliCinom dodjeljene memorije i programa koji je uCitan u taj dio memorije. 4aj dio memorije nije raspoloGiv !a kori@Fenje drugim procesima sistema sve dok dati proces ne !avr@i sa radom ili ne oslobodi dodjeljenu memoriju. )nterna %ragmentacija ne postoji kod upravljanja memorijom pomoFu dinamiCkih particija, kod statiCkih segmenata i kod dinamiCkih segmenata. 3ksterna %ragmentacija je neiskori@Fena memorija i!meEu particija ili segmenata. va memorija nije kontinualna, veF se sastoji i! vi@e manjih dijelova. 3ksterna %ragmentacija ne postoji kod upravljanja memorijom pomoFu statiCkih i pomoFu dinamiCkih stranica. (a preva!ilaGenje problema eksterne %ragmentacije koristi se tehnika saGimanja ili kompakcije (eng. )ompa)tion). Kompakcija se i!vr@ava u tri %a!e. $rvo se odreEuje nova lokacija !a svaki blok koji se premje@ta. (atim se aGuriraju svi poka!ivaCi na taj blok u skladu sa novom lokacijom. U treFoj %a!i se podaci premje@taju na novu lokaciju. Kod segmentacije program dobija komad memorije koji tra!i, npr. prvi tra!i 2 9", drugi + 9", treci K". Kad drugi !avrsi imas rupu u sredini od + 9" i to je pojava spoljne %ragmentacije. Kod pejd!inga se memorija podeli na komade odredjene velicine npr. 5 K" i kad programu treba - 9" on dobije 2>, KstranicaK od po 5 K". 7li ako programu treba > K" on ce dobiti 2 stranice. 4o je unutrasnja %ragmentacija. perativni sistem koji bi podr!avao oba pristupa verovatno ne bi nikako radio, ili bi eventualno radio poput 9ultiQ:a, vise bi vremena trosio na sebe nego na korisne stvari. 25. /prav janje memorijom' sIapping' paging 9oGemo ra!likovati + vrste memorije 1 -. eksterna memorija (najveFeg kapaciteta, najsporiji, najje%tiniji) 2. interna memorija (manjeg kapaciteta, brGi, skuplji) +. ke@ (cache) memorija (najmanjeg kapaciteta, najbrGi, najskuplji) $rocesor moGe i!vr@avati samo procese koji su u internoj memoriji. Kako je operativna memorija relativno malog kapaciteta, dola!imo do sledeFih problema1 -. proces je veFi od interne memorije (i kod monoprogramiranja i kod multiprogramiranja) 2. nemamo dovoljno memorije da uCitamo sve spremne procese (kod multiprogramiranja) /eo operativnog sistema koji upravlja kori@Fenjem memorije !ove se upravljaC memorije (memor? manager). 0jegov !adatak je da vodi raCuna o tome, koji delovi memorije su !au!eti, koji delovi su slobodni, da !au!me potrebnu koliCinu memorije !a nove procese odnosno da oslobodi memoriju !au!etu od strane nekog procesa, i da upravlja prebacivanjem procesa i! interne u eksternu memoriju i obrnuto . pri tome mora voditi raCuna o tome, da procesi ne @tete jedni drugima, a ni operativnom sistemu. U sluCaju kada nemamo dovoljno interne memorije, koriste se sledeFe tehnike1 -. ';7$$)0N (prebacivanje procesa) . ako nemamo dovoljno mesta u operativnoj memoriji !a sme@tanje svih spremnih procesa, neki se i!bacuju na disk. Kada je potrebno, celi spremni procesi i! interne memorije se prebacuju na disk, odnosno spremni procesi sa diska se prebacuju u internu memoriju.

Page 15 of 19

2. .2FI#F (strani&enje) *e ove procesa *r0imo na *is$!' !&itavaj! se po potre,i. $osmatrajmo sada sledeFi primer1 imamo raCunar koji radi sa -,:bitnim adresama, @to !naCi da !na adresirati ,5K" virtuelne memorije. $retpostavimo da ovaj raCunar ima ukupno +2K" operativne memorije. (naCi i pored toga da AvidiB ,5K", be! virtuelne memorije ne moGemo uCitati programe veFih od +2K". 0eka su virtuelne stranice (pa i okviri stranica) veliCine 5K". 0eka imamo neki proces kome treba ,5K" virtuelne memorije i imamo sledeFe preslikavanje virtuelnih stranica u okvire !a stranice (U o!naCava da data virtualna stranica nije uCitana u internu memoriju)

26.

.articije 'istemi datoteka se skladi@te na diskovima ili nekom drugom medijumu sekundarne memorije. 'vaki disk se moGe podijeliti na jednu ili vi@e particija, kao na slici -, pri Cemu na particijama mogu da budu ne!avisni sistemi datoteka. 0ulti sektor diska se na!iva glavni startni slog (eng. ,aster -oot .e)ord* ,-.) i koristi se !a startovanje raCunara. 4abela particija koja se nala!i na kraju glavnog startnog sloga sadrGi poCetnu i krajnju adresu svake particije i jedna od tih particija je o!naCena kao aktivna.

0akon startovanja raCunara ") ' (eng. -asi) /nput0Output S1stem) Cita i i!vr@ava glavni startni slog. 0a osnovu in%ormacije u glavnom startnom slogu locira se aktivna particija na disku i uCitava se u njen prvi blok koji se na!iva boot blok u operativnu memoriju. $rogram i! boot bloka puni operativni sistem koji se nala!i na aktivnoj particiji. 'vaka particija ima boot blok be! ob!ira da li se na njoj nala!i operativni sistem koji se moGe boot:irati ili ne. sim boot bloka struktura particije diska !avisi od sistema do sistema. "itan dio particije je i superblok koji sadrGi kljuCne parametre o sistemu datoteka kao @to su1 tip sistema datoteka, veliCina sistema datoteka, broj slobodnih blokova u sistemu datoteka i drugi administrativni podaci. &e!gro operativnog sistema odrGava superblok u operativnoj memoriji i periodiCno ga upisuje na disk. ' ob!irom da superblok sadrGi kritiCne podatke neophodne !a rad sistema, operativni sistem replikuje sadrGaj superbloka na disk !a sluCaj da otkaGe dio diska na kome je upisan superblok. $ored superbloka u particiji se nala!e podaci o slobodnim i !au!etim blokovima datog sistema datoteka u obliku bitmape ili pove!ane liste poka!ivaCa. 4akoEe, u svakoj particiji se nala!e direktorijumi i datoteke koji pripadaju datom sistemu datoteka. $articije mogu da budu primarne, logiCke i dodatne. $rimarne particije su one sa kojih je moguFe podi!anje operativnog sistema. 'vaki disk mora da ima bar jednu primarnu particiju. Upotrebom vi@e primarnih particija moguFe je instalirati i koristiti vi@e operativnih sistema na istom disku. #ogiCke particije su particije Cija je namjena skladi@tenje podataka. 'a logiCkih particija se ne moGe podi!ati operativni sistem. /odatne particije omoguFavaju preva!ilaGenje ograniCenja koje postoji po pitanju maksimalnog broja moguFih particija na jednom disku. /odatna particija moGe da sadrGi vi@e logiCkih particija. 27. 8istema *atote$a i ?aj sistem 'vakom programu je potrebna moguFnost da saCuva neke in%ormacije . neke podatke procesi mogu Cuvati unutar svog adresnog prostora (promenljive, konstante). (a neke procese to je dovoljno, !a neke je potrebno neko drugo re@enje. 0edostaci Cuvanja podataka u internoj memoriji1 mali kapacitet kada proces !avr@i sa radom, podaci se gube raCunar se blokira ili nestane struja . podaci se gube Page 16 of 19

Cesto je potrebno da istim podacima istovremeno pristupi vi@e procesa

(bog ovih nedostataka, postoji potreba da se neki podaci Cuvaju odvojeno od adresnog prostora u eksternoj memoriji u obliku %ajlova. /eo operativnog sistema koji je !aduGen !a rad sa %ajlovima !ove se %ajl sistem (%ile s?stem). 8odi raCuna o strukturi, naCinu imenovanja, naCinu kori@Fenja, o !a@titi i o implementaciji Citavog %ajl sistema. "aj ovi mog! ,iti o,icni ?aj ovi' *ire$torij!mi i specija ni ?aj ovi. :,i&ni ?aj je ni( ,ajtova. Ae icina ?aj a je je*na$a !$!pnom ,roj! (na$ova $oje ?aj sa*r(i. "aj ! se mo0e prist!piti (&itati i i pisati) po&ev o* ,i o $og ,ajta. .o*aci !n!tar ?aj a nemaj! ni$a$v! str!$t!r! osim one $oj! sam $orisni$ *e?ini-e. / samom ?aj ! se ne na a(e ni$a$ve in?ormacije o tom ?aj !' ve; s! one ! ?aj sistem!. "aj sistem &!va s e*e;e in?ormacije o ?aj ovima< ime ?aj a' je*instven ,roj ?aj a na(van ino*e' ve icin! ! ,ajtovima' vreme $reiranja' vreme pos e*nje i(mene' vreme pos e*njeg prist!pa' prist!pne *o(vo e' v asni$a ?aj a i gr!p! $ojoj pripa*a v asni$ ?aj a. +ire$torij!mi *aj! hijerarhijs$! organi(acij! ce og ?aj sistema. +ire$torij!m s! o,i&ni ?aj ovi' a i pose*!j! str!$t!r!. +ire$torij!m je ista imena ?aj ova i *r!gih *ire$torij!ma $oji se na a(e ! njem!. 6erne ne *o(vojava procesima *a preprav jaj! *ire$torij!me. 8pecija ni ?aj ovi se na a(e ! )*ev *ire$torij!m! i pre*stav jaj! har*vers$e !re*jaje. Jesto se pod pojmom %ajl sistem podra!umeva struktura direktorijuma i %ajlova. 3a( i$!jemo ne$o i$o tipova ?aj sistem< - D74+2 bolje organi!uje disk prostor i particije mogu biti veliCine do 2 4". - %ajl sistem koristi ,5 bit:ne adrese i teoretski radi sa particijama do 2 64 ,ajta. 6ori-;enje #E"8 tehno ogije (na&i ve;! sig!rnost' tj. (a-tit! i ve;! to erancij! (i $ore$cij!) gre-$i. Dajl sistem je smje@ten na disku. 9nogi diskovi mogu biti podeljeni na jednu ili v@e particija. 28. 8$riptovi i sistems$i po(ivi 29. 18 +:8 operativni sistem 9':/ ' je bio originalni operativni sistem !a )"9:ove $':a i njihove klonove. vaj -,:bitni operativni sistem, sa inter%ejsom na tekst:osnovi, sada je skoro u potpunosti !amenjen sa NU) operativnim sistemima kao sto je ;indo<s 2000 i ;indo<s U$. 18 +:8(1icroso?t +is$ :perating 84stem) je nastao -=6godine i ova ver!ija je bila na disketi i !ato je ostao taj na!iv.0eki programi ' su u R79:u a nekki na disku. 8a!an je program koji interpretira naredbe ', koje unosi korisnik, nala!i se na disku i !ove C 9970/.C 9."e! njega je rad na racunaru nemoguc.7ko dodje do kvara bilo kojeg tipa, racunar se ponovo startuje sa C4R#O7#4O/3#, t!v.so%tverski reset racunara. 9' / ' je ' ra!vijen prije ;indo<s ' kod koga korisnik komunicira sa racunarom u gra%ickom okru!enju.Kod 9' / ':a komande i !ahtjev !a startovanje programa ispisuju se na komandnoj liniji unosom sa tastature,sto podra!umijeva po!navanje sintakse ovog '."ilo kakav drugi tekst 9' / ' tretira kao nera!umnjivu poruku i ispisuje na ekranu "ad command or %ile name. 0akon ukljucenja racunara testira se hardver i ucitava ' .0akon prelaska u / ' pojavljuje se t!v.prompt C1VW koji o!nacava aktivnu jedinicu (C1aktivna jedinica,Vo!naka korijenog direktorija,Wo!naka kraja od!ivnog !naka). d!ivni !nak uka!uje da je racunar spreman da i!vrsi neku komandu.)!a od!ivnog !naka nala!i se kursor.9' / ' dopusta ispisivanje ) malih ) velikih slova ) sve ih tretira kao velika.$ritiskom na 3nter po !avrsetku ispisa komande korisnik saopstava racunaru da treba da i!vrsi komandu. $odaci se moraju organi!ovati radi cuvanja ) e%ikasnijeg koristenja.'kup srodnih podataka !ove se %ajl ili teka.(a svaki %ajl se mora uvesti identi%ikacija. na sadr!a ime i tip %ajla.)me cini niska od 6 !nakova, a tip(eksten!ija) tri !naka.4ip opisuje sadr!aj %ajla.0pr.7rj:arhiva,"at:ni! naredbi upravljackog je!ika,Com: Page 17 of 19

i!vrsni program, 3Qe: i!vrsni program, '?s:sistemski program, /at:podaci, /b%:datoteka, /oc:dokument u ;ord:u,Uls:dokument u 3Qcel:u, Ni%:slika, 4Qt:tekst. 'pisak %ajlova je direktorij./irektorij je prostor u memoriji u kojem se evidentiraju poddirektoriji i %ajlovi. 30. A18 operativni s4stem 31. HI#+:H8 operativni s4stem 32. /#IG operativni sistem /#IG - je jos jedan operativni sistem koji obe!bedjuje mnogo so%isciranije karakteristike radne povrsine, ukljucujuci visestruku obradu i rasavanje visestrukih !adataka. U0)U je dragocen !a poslovne organi!acije !bog toga sto mo!e biti koriscen na mnogo kompjutera ra!licite velicina ( ili ra!licitim plat%ormama), mo!e da podr!i ra!licite hardverske uredjaje (npr. stampace, plotere, itd) i ima brojne aplikacije napisane da rade na njemu. 33. 5I#/G operativni sistem 5I#/G je mocna ver(ija /#IG operJativnog sistema' $oja je $orisnicima postupno potpno besplatno. n nudi resavanje visestrukih !adataka, menad!ment virtuelne memorije i 4C$*)$ umre!avanje. #inuQ je bio originalno napisan od strane #inus 4ovards na Univer!itetu u Hesinki u Dinskoj -==-.g. n je tada objavio i!vorni kod svetu (na!van otvoreni i!vrni so%tver). d tog vremena, mnogi programeri sirom sveta su radili na #inuQ:u i pisali so%tver !a njega. #inuQ je klon UniQ:a koji se besplatno moGe nabaviti i to u vi@e distribucija (!birki ra!liCitih autora). #inuQ je jedan od retkih sistema koji je doGiveo veliki uspeh i popularnost kao alternativa skupim i nedovoljno stabilnim sistemima. Kod #inuQ:ovog je!gra (kernel) je dostupan (open source) i i!dat pod op@tom javnom licencom koja se o!naCava kao N$# (Neneral $ublic #icense). 0a!iv A#inuQB se odnosi samo na kernel (core) operativnog sistema. Kernel predstavlja so%tver koji upravlja pristupom korisniCkih programa hardverskim i so%tverskim resursima. 'ami programi koji se koriste na linuQ sistemima su proi!vod N0U (N0U is 0ot UniQ) i drugih ne!avisnih open source projekata.

Page 18 of 19

34. +istri,!irani operativni sistemi /istribuirani operativni sistemi upravljaju meEusobno pove!anim raCunarima, koji su prostorno udaljeni. $otrebu !a pove!ivanjem prostorno udaljenih (distribuiranih) raCunara nameFe praksa. ' jedne strane, prirodno je da raCunari budu na mjestima svojih primjena, na primjer, u! korisnike ili u! delove industrijskih postrojenja, koje opsluGuju. 0a taj naCin raCunari mogu biti potpuno posveFeni lokalnim poslovima, koji su ve!ani !a mjesta njihove primjene, pa mogu e%ikasno obavljati ovakve poslove. ' druge strane, neophodno je omoguFiti saradnju i!meEu prostorno udaljenih korisnika, odnosno obe!bijediti usagla@eni rad prostorno udaljenih djelova istog industrijskog postrojenja. (a to je potrebno obe!bijediti ra!mjenu podataka i!meEu raCunara, posveFenih pomenutim korisnicima, odnosno posveFenih pomenutim djelovima industrijskog postrojenja. Radi toga, ovakvi, prostorno udaljeni raCunari se pove!uju komunikacionim linijama, koje omoguFuju prenos (ra!mjenu) podataka, organi!ovanih u poruke. 0a ovaj naCin nastaje distribuirani raCunarski sitem (distributed computer s?stem). (a svaki od raCunara, pove!anih u distribuirani raCunarski sistem, je neophodno da sadrGe procesor, radnu memoriju i mreGni kontroler. $risustvo masovne memorije i ra!nih ula!nih i i!la!nih ureEaja u sastavu ovakvih raCunara !avisi od mjesta njihove primjene i, u op@tem sluCaju, nije obave!no, pa !ato nema ni potrebe da ih podrGava operativni sistem, prisutan na svakom raCunaru i! distribuiranog raCunarskog sistema. vakav operativni sistem se na!iva i mikrokernel (microkernel), jer ima smanjenu %unkcionalnost u odnosu na AobiCanB operativni sistem. 9ikrokernel ne sadrGi sloj !a upravljanje %ajlovima, jer on nije potreban !a svaki od raCunara i! distribuiranog raCunarskog sistema i jer se on, be! problema, moGe prebaciti u korisniCki sloj (i!nad mikrokernela), predviEen !a korisniCke procese. 'loj !a upravljanje procesima se oslanja na sloj !a ra!mjenu poruka, da bi pristupio i!vr@noj datoteci (lociranoj na nekom drugom raCunaru). 'loj !a ra!mjenu poruka se oslanja na sloj !a upravljanje radnom memorijom, radi dinamiCkog !au!imanja i oslobaEanja ba%era, namjenjenih !a privremeno smje@tanje poruka. 'loj !a ra!mjenu poruka nije samo na raspolaganju sloju !a upravljanje procesima. n sadrGi sistemske operacije, koje omoguFuju ra!mjenu poruka, odnosno saradnju i!meEu procesa, aktivnih na ra!nim raCunarima (ali i i!meEu procesa, aktivnih na istom raCunaru). 35. Hin*Ios 1o,i e i 9 ac$9err4 operativni sistem 36. 2n*roi*' 8I19I2# operativni sistem 37. 8ig!rnost i (a-tita operativnih sistema

Page 19 of 19

You might also like