Upload
others
View
23
Download
2
Embed Size (px)
Citation preview
Se
m ht(A (hththththtwhtwhththththththththththththt
eznadar: OS i RM
materijali preu
ttp://www.znAutori: Eugen(Autori: Boristtp://perun.pmttp://softwarettp://www.ststtp://www.ststtp://es.elfak.
www.programttp://etsracun
www.mginformttp://www.infttp://www.infttp://www.ricttp://bs.wikipttp://bs.wikipttp://hr.wikipttp://en.wikipttp://itc.wikidttp://itc.wikidttp://carstvolottp://msdn.mittp://windowttp://technet.m
uzet sa
nanje.org/abc/nija Mihal i Bslav Đorđevićmf.uns.ac.rs/oe.sveznadar.insmihajlopupinsmihajlopupin.ni.ac.rs/Pape
mmer.co.me/Unari.wordpresmatika.com/ foteh.rs.ba/raformatika.buzchardgoyette.pedia.org/wikpedia.org/wikpedia.org/wikpedia.org/wikdot.com/istoridot.com/slojeokvanja.com/icrosoft.com/s.microsoft.cmicrosoft.com
/tutorials/opeBojan Stojkovć, Dragan Pleold/budimac/onfo n.edu.rs/dokun.edu.rs/doku
ers/DBarac%2USB.../USB%s.com/operat
ad/2012/RSS-zdo.com/s734com/SEMIN
ki/Operativni_ki/Windows_7ki/Microsoft_Wki/Unix ija-operativni
eviti-operativn/knjige/progr/en-us/libraryom/en-US/wm/en-us/maga
eratingsystemvić) eskonjić, Nemos/geller-htm
umenta/Memoumenta/Sistem20-%20RTOS
%20Monitor%ivni-sistemi/c
-6/RSS-6-10.p4.htm
NIXSecureCom_sistem 7 Windows
ih-sistema ni-sistemi-layramiranje/proy/aa450748.asindows/homeazine/2008.03
Operativni sistem
1
ms/01/operatin
manja Maček)ml/index.html
orija.pdf mi_datoteka.pS%20za%20m
%20Documentciljevi-i-zada
mputingBoot
yered-systemogramski.pdf spx e 3.kernel.aspx
mi
ngsystems.htm
)
pdf male%20embt.doc
aci-operativni
tProcess.html
s
x?pr=blog
m
bedded%20si
h-sistema/
prikupio i ob
isteme.pdf
bradio Miroslav Mihalj
jišin
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
2
Sadržaj Šta je računar i šta je OS ........................................................................................................................................... 4 Funkcije i osobine OS ............................................................................................................................................... 5 Razvoj OS ................................................................................................................................................................. 6 Klasifikacija operativnih sistema ............................................................................................................................ 10 Jednokorisnički OS-MS DOS .............................................................................................................................. 10
Proces učitavanja DOS operativnog sistema ................................................................................................. 11 Korišćenje i izvršenje naredbi DOS operativnog sistema .............................................................................. 12
Moduli kod OS ....................................................................................................................................................... 13 Modul za upravljanje procesorom ................................................................................................................. 13 Modul za upravljanje I/O kontrolerima ......................................................................................................... 13 Modul za upravljanje radnom memorijom .................................................................................................... 13 Modul za upravljanje fajlovima ..................................................................................................................... 13 Modul za upravljanje procesima .................................................................................................................... 13 Moduli i hijerajhija ........................................................................................................................................ 14
Slojeviti operativni sistemi (layered systems) ...................................................................................................... 14 Razlika između slojevite i monolitne realizacije OS ......................................................................................... 15 Tipovi jezgre ...................................................................................................................................................... 15
Monolitni OS –Monolitno jezgro- -Kernel- ........................................................................................................... 16 Mikro jezgro (Mikrokernel) .................................................................................................................................. 17 Privilegovani režim rada i sistemski pozivi ............................................................................................................ 18 Sloj apstrakcije hardvera HAL –virtuelni uređaji i particionisanje ........................................................................ 19 Osnovne karakteristike Windows OS ................................................................................................................. 20
Windows model programiranja .......................................................................................................................... 20 Sistemski pozivi i API kod Windowsa ............................................................................................................... 21 Windows ide dalje .............................................................................................................................................. 21
Upravljanje procesima ......................................................................................................................................... 22 Program i proces ................................................................................................................................................. 22 Procesi i niti ........................................................................................................................................................ 23
Kontrolni blok procesa –PCB- ....................................................................................................................... 23 “Laki” i “teški” procesi .................................................................................................................................. 24
Osnovna stanja procesa ...................................................................................................................................... 25 Operacije nad procesima .................................................................................................................................... 26
Kreiranje procesa ........................................................................................................................................... 26 Završetak procesa .......................................................................................................................................... 26
Odnosi među procesima ..................................................................................................................................... 27 Međusobno isključenje procesa ..................................................................................................................... 27 Sinhronizacija procesa ................................................................................................................................... 27 Uzajmno blokiranje procesa – zastoj ............................................................................................................. 27
Raspodjela poslova ............................................................................................................................................. 27 Konkurentni procesi ........................................................................................................................................... 28
Problem upravljanja konkurentnim procesima .............................................................................................. 28
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
3
Pojam, struktura, upravljanje i zaštita fajlova .................................................................................................. 29 Pojam fajla - datoteka (file) ................................................................................................................................ 29 Format ili tipovi datoteka ................................................................................................................................... 30
Identifikovanje i otvaranje fajla kod Unixa ................................................................................................... 30 Logički i fizički sistem za upravljanje datotekama ............................................................................................ 32 Logička struktura i organizacija datoteka (FILE SYSTEM) .............................................................................. 32
Direktorijumi ................................................................................................................................................. 32 Označavanje datoteka .................................................................................................................................... 33 Realizacija sistema datoteka .......................................................................................................................... 33
Fizička struktura sistema datoteka ..................................................................................................................... 34 Organizacija sistema datoteka kod diskova (sekundarne memorije) .................................................................. 34 Organizacija datoteka – logička struktura .......................................................................................................... 35 Upravljanje podacima (datotekama) .................................................................................................................. 37
Operacije nad datotekama .............................................................................................................................. 37 Zaštita fajlova ..................................................................................................................................................... 38
Upravljanje memorijom ....................................................................................................................................... 40 Dodjeljivanje memorije ...................................................................................................................................... 40 Problem upravljanja memorijom ........................................................................................................................ 40
Memorijski sistem sa više nivoa .................................................................................................................... 41 Logičko i fizičko adresiranje memorija .............................................................................................................. 43 Vezivanje adresa ................................................................................................................................................ 43 Privremena razmjena - SWAP ........................................................................................................................... 45 Virtuelna memorija ............................................................................................................................................ 45
Raspodjela memorije ............................................................................................................................................. 46 Multiprogramiranje i statičke particije ............................................................................................................... 46 Diskontinualno dodjeljivanje memorije-dinamička alokacija straničenjem ...................................................... 47
Straničenje ..................................................................................................................................................... 47 Segmentacija memorije .................................................................................................................................. 48 Segmentacija sa straničenjem ........................................................................................................................ 49
Fragmentacija memorije ..................................................................................................................................... 50 Zaštita memorije ................................................................................................................................................. 51
Upravljanje uređajima ......................................................................................................................................... 52 U/I moduli .......................................................................................................................................................... 52 Blok dijagram U/I modula .................................................................................................................................. 53 Tehnike izvršavanja U/I operacija ...................................................................................................................... 53
Programirani U/I model ................................................................................................................................. 53 Prekidina tehnika U/I – Interapt U/I model ................................................................................................... 54 Razlike između programiranog i prekidnog modela pristupa U/I uređajima ................................................. 54 Direktan pristup –DMA model pristupa U/I uređajima ................................................................................. 55
Zaštita operativnih sistema .................................................................................................................................. 56 Vrste napada ....................................................................................................................................................... 57
Virusi ............................................................................................................................................................. 58 Crvi ................................................................................................................................................................ 58 Trojanski konj ................................................................................................................................................ 59
Mehanizmi zaštite i autentikacija ....................................................................................................................... 59
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
4
Šta je računar i šta je OS Računar je uređaj (hardware) koji obrađuje, pamti ili razmjenjuje informacije. Način na koji to radi je određen u programski. Program je niz komandi koje određuju šta treba uraditi sa podacima. Dva neodvojiva dijela računara su:
• hardver – uređaj (hardware ) i • softver – program (software).
Pošto hardver ne može da radi bez softvera, a softver nema smisla bez hardvera jasno je da oni čine računar. Na primjer, ako zamislimo da je ljudsko biće računar, onda bi hardver predstavljale ćelije (tkiva, organi, ...), a misli i ideje bi predstavljali softver. U širem smislu računar (computer) se definiše kao matematička mašina. Češće se koristi nešto uža definicija koja računar definiše kao elektronsku, digitalnu, reprogramibilnu mašinu koja može da obavlja logičko matematičke operacije, unos, obradu i pamćenje podataka.
• elektronska znači da osnov građe računara čine elektronske komponente • digitalna da obavlja operacije sa brojevima (digit - broj) • reprogramibilna znači da se redoslijed operacija može programirati i mijenjati.
Najrašireniji tip računara poznat kao PC (Personal Computer - lični računar), je univerzalan računar namijenjen za jednog korisnika koji na njemu obavlja različite, ali relativno proste poslove unosa obrade i pamćenja (čuvanja) podataka. Računar čini jedinstvo fizičkih i programskih resursa. Teoretski, svaki korisnik, može sam da bira i odlučuje o načinu i konceptu rada računara. No, to bi od korisnika zahtijevalo multidisciplinarno znanje: od matematike, elektronike, komunikacija, mehanike do ergonomije i ko zna čega još. Praktično od takvog računara bi rijetko ko imao stvarne koristi. Hardverom treba upravljati, tj. na neki način treba „natjerati“ procesor da sabere dva broja, disk da zapamti određenu sliku, monitor da prikaže podatke kako treba, pointer da prati kretanje miša, štampač da odštampa željene podatek itd. To je posao softvera ili programa. Dakle, ispravan hardver ne radi ako nema softvera. Tip softvera koji upravlja hardverom zove se sistemski softver (jer upravlja sistemom).
Softver ne služi samo da upravlja hardverom nego i za pružanje usluga korisniku (čovjeku). Tako su za razne poslove kreirani različiti programi. Ako želite da otkucate neki tekst određeni program vam nudi tu mogućnost. Ako želite da kreirate neku sliku koristićete neki drugi program. Čak i korisnik može napraviti neki svoj program za neku posebnu svrhu. Ova vrsta softvera koja pruža razne usluge korisnicima tj. ima konkretnu primjenu (application) u svakodnevnom poslu se zove aplikativni softver (primijenjeni ili upotrebni program). Softver dijelimo na:
• sistemski (operativni sistem za upravljanje hardverom) i • aplikativni (primjenjivi).
Softver se kreira pomoću nekog programskog jezika. Najpoznatiji programski jezici su: Basic, Pascal, Fortran, C, C++, Java, Delphi, VisualBasic itd. Većina današnjih operativnih sistema je kreirana („napisana“) u C-u. Generalno, ne postoji kompletna i adekvatna definicija operativnog sistema. Operativni sistem se može uporediti sa vladom. Komponente računarskog sistema su hardver, softver, i podaci, a operativni sistem osigurava sredstva za pravilno korištenje navedenih komponenti. Poput vlade operativni sistemi ne izvršavaju operacije radi sebe samih, nego jednostavno osiguravaju okruženje u kojem drugi programi mogu obavljati koristan posao. Operativni sistem se može vidjeti i kao raspoređivač resursa (resource allocator), koji se u računarskom sistemu ponaša kao upravitelj (manager) kompjuterskih resursa kao što su CPU time ili ciklusi na procesoru, memorija, ulazno-izlazni uređaji itd., koje operativni sistem dodjeljuje specifičnim programima i korisnicima kako bi oni obavili "koristan" posao.
Se
Ppr Nk Pkp*
In Milko F PHp Orapr
AtaAAopPprsl
OSciSra
eznadar: OS i RM
od pojmom orograma i za
Najčešća definompjuteru, po
rema međunkoji može pru
odacima. ISO/IEC pre
nternacionaln
Međutim po mlustruje primjorisničkih ala
Funkcije
od pojmom rHardverski r
odaci, to jest
OS kontrolišeačunara ondarojektuje, rač
Aplikativni soabelarni pror
Aplikacije su oAplikacije kor
perativne sistoznate aplikarezentacija, zlike, za kreira
Operativni sist jedne straneiljem da oni b druge straneačunar od ma
operativnog skoordinaciju
nicija operatioznatiji pod n
arodnom stanužati servise
edstavlja zajena komisija za
modernom shjer Microsoftata, kalkulato
e i osobin
računarski rresursi su pro
fajlovi.
e i upravlja ra bi to izgledčuna, ...). Apl
oftver ili proračuni, crtanjonaj dio račuriste operativnteme. Drugmacije koje se sza kreiuranje anje grafika i
tem ima dvose, on upravljbudu što cjelie, operativni sašine koja ruk
sistema u klasu aktivnosti ra
vnih sistema nazivom kern
ndardu ISO/I(usluge), ka
ednički tehniča elektrotehn
hvatanju opert Windows-a, ora, programa
ne OS
esursi podrazocesori, oper
računarom udalo kao na likacija korist
osto aplikacije, obrada sl
unara koji krajni sistem da b
m riječima, aplsvakodnevnobaza podatakcrteža, za ob
SličnPoredevideKoriprenoDa bsistem
struku ulogu. a dijelovimaishodnije uposistem stvara
kuje bitima, b
sičnom smislačunarskog si
kaže da je onel, s tim da s
IEC*, Operato što su dodj
čki komitet kniku (IEC).
rativni sistemgdje pod opea za crtanje i
zumjevamo srativna memo
uz pomoć insslici 1. Naimti operativni s
je se koristeike, obrada jnji korisnik nbi pristupile hlikacija izrađe
o koriste su: zka, za kreiran
bradu zvuka, ine aplikacije pd njih, postoencija građanisnici kroz aos informacijbi aplikacije mu i da koris
od kojih se otrebljeni. a za krajnjeg kajtima i bloko
Operativni sistem
5
lu podrazumjistema".
operativni sistse svi ostali d
tivni sistem jeljivanje re
koji čine Inter
m je “Sve štoerativnim sisti sviranje, Int
sve što je progorija i ulazno
strukcija korme, korisnik sistem da bi i
e za izvršavazvuka, kompnajviše koristhardveru. Zboena za Windo
za unos i obranje WEB stritd. postoje za sveoje aplikacij
na, statistika, aplikacije kja. pravilno fun
ste njegove pr
sastoji račun
korisnika račovima u maši
mi
eva se "softv
tem jedan prodijelovi softve
je softver ksursa, raspo
rnacionalna
o proizvođač temom dobijaternet mejlera
gramu potrebo/izlazni uređ
isnika. Ako radi na nekozvršila obrad
anje određeniponovanje, kti. og toga se apows obično nadu teksta, zaanica za čitan
e OS. Ovo sue za posebnfinansijko po
koriste funkc
nkcionisale trrednosti.
nar (proceso
čunara pristupinu koja ruku
er potreban z
ogram koji seera posmatraju
oji kontrolišređivanje, U
organizacija
isporuči podamo: od “stvaa i čitača...
bno za rad. đaji, a softve
bi grafički poj aplikaciji du podataka n
ih poslova nkreiranje anim
likacije kreirneće raditi na a tabelarnu obnje WEB stra
u aplikacije opne namjene oslovanje, itd)cije računar
reba da su pr
or, I/O kont
pačno radno ouje datotekam
prikupio i ob
za izvršavanje
e cijelo vrijemu kao aplikat
še izvršavanjU/I kontrola
a za standard
d tim nazivomvarnog” OS-a
erski resursi
prikazali odn(unosi tekst,
na hardveru.
na računaru: macija, učenj
raju i prilagođPC koji koris
bradu podatakanica, za kre
pšte namjene(bankarsko ). ra: obrada, p
rilagođene o
troleri, radna
okruženje, tama i procesim
bradio Miroslav Mihalj
e (aplikativni
me izvršava ntivni program
je programai menadžme
dizaciju (ISO)
m”što najbola do standarn
i su programi
nos korisnikasluša muzik
obrada tekstje, zabava it
đavaju za raznsti Linux OS.ka, za kreiraniranje i obrad
e. poslovanje,
pamćenje i
operativnom
memorija),
ako što pretvaa.
jišin
ih)
na mi.
a i nt
) i
lje nih
i i
a i ku,
ta, td.
ne . nje du
sa
ara
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
6
Osobine OS Iz niza osobina koje mogu posjedovati OS naglašavamo:
• Istovremenost - paralelizam (Concurrency) • Zajedničko korišćenje, odnosno dijeljenje resursa (Sharing) • Pouzdanost (Reliability) • Sigurnost (Security) • Upotrebljivost (Usability) i • Djeljivost - modularnost (Modularity)
Funkcije OS Za razliku od karakteristika, koje su poželjna svojstva, funkcije sistema su zadaci koje sistem mora da realizuje. Navešćemo samo globalne funkcije koje moraju biti rješene u svakom OS:
• upravljanje računarskim resursima: 1. upravljanje procesorom (CPU), 2. upravljanje memorijom (RAM), 3. upravljanje I/O uređajima, 4. upravljanje podacima i 5. upravljanje aplikacijama
• interpretiranje i izvođenje kontrolno upravljačkih komandi i programa, • upravljanje poslovima i zaštitu, • podršku daljinske obrade i rada u mreži.
Kako bi se omogućila efikasnost svih računarskih resursa, u svakom operativnom sistemu moraju biti na određen način riješene opšte funkcije, a to su: • upravljanje zadacima obrade (Job Managment) • upravljanje podacima (Data Managment) • upravljanje ulazom i izlazom (Device Menagment) • upravljanje memorijom (Memory Menagment) • obrada prekida (Interrupt Handling) • dodjeljivanje procesora (Processor Scheduling) • zaštita (Protection) • podržavanje daljinske obrade (TP Monitoring) • interpretiranje i izvođenje kontrolno-upravljačkih naredbi (J/CL)... Moduli koji upravljaju svakim od navedenih resursa računarskog sistema je da treba da obezbjede:
• vođenje evidencije o resursu • donošenje odluke o dodjeli resursa • alokaciju resursa i • dealokaciju resursa.
Razvoj OS U prvoj generaciji računarskih sistema operativni sistemi nisu postojali, tako da je operater koji je opsluživao računarski sistem, bio u obavezi da sve potrebne radnje, prije svega vezane za ulaz i izlaz podataka nekog programa, obavi sam.
Kompjuteri prve generacije (1945–1955), čiju su osnovu činile vakuumske cevi (do 20.000 cevi po računaru), bili su ogromnih dimenzija i veoma skupi. Koristila ih je uglavnom vojska.
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
7
Ovi računari su bili jako spori, programiralo se na mašinskom jeziku, dok su simbolički jezici (uključujući i asembler), kao i operativni sistemi, u to vrijeme bili nepoznati. Ljudi koji su radili na tim računarima obavljali su sve poslove – od programiranja do održavanja računara. U prvoj generaciji računara, opsluživanje računarskog sistema bilo je potpuno prepušteno operateru, koji je morao da pripremi sve što je potrebno da se zadatak obrade može obaviti. Čovjek je, dakle, imao punu kontrolu nad računarskim sistemom. Operater je bio u mogućnosti da sve potrebne radnje obavi na vrijeme, jer je sistem bio spor i izvršavao se samo jedan program, tj. obavljao se samo jedan zadatak. Može se reći da je iskorišćenjee računarskog sistema, tj. njegovih najvažnijih resursa – centralnog procesora i centralne memorije – bilo slabo. Najveći dio vrijemena trošio se na poslove operatera i ulazno-izlazne operacije, a mnogo manji dio na rad centralnog procesora. Iako je ovakav sistem bio krajnje neefikasan, odnos tih vrijemenskih perioda bio je u prihvatljivim granicama zbog relativno male brzine samog centralnog procesora. U drugoj generaciji računarskih sistema dolazi do nastanka prvih kontrolnih programa koji su pomagali operateru da opslužuje računarski sistem. Tada su, dakle, prvi put funkcije opsluživanja i upravljanja sistemom podijeljene između operatera i kontrolnih programa. Ali ti kontrolni programi nisu bili toliko sofisticirani da bi ih mogli nazvati operativni sistem.
Osnovu računara druge generacije (1955–1965) činili su tranzistori, pa su računari postali manji, pouzdaniji i jeftiniji. Računare druge generacije su, osim vojske, kupovale i velike korporacije i univerziteti. Računari su bili smješteni odvojeno, u posebnim sobama, koje su se dijelile u tri funkcionalne celine: ulazna soba, centralni računar i izlazna soba.
Programeri su pisali programe na papiru, većjina na programskom jeziku FORTRAN, zatim su se ti programi prenosili na bušene kartice, koje su se ostavljale u sobi sa ulaznim računarom (input room). Operator sistema je, zatim, uzimao bušene kartice i ubacivao ih u računar, i to prvo kartice sa prevodiocem FORTRAN-a, a potom bušene kartice s programom koji treba izvršiti. Glavni računar je obavljao posao, a rezultat se dobijao takodje na bušenim karticama, koje su se prenosile u prostoriju sa rezultatima (output room). Ovde se mnogo vrijemena trošilo na šetače izmedju raznih prostorija sa bušenim karticama. Operativni sistem kao zaseban pojam još uvek nije postojao. Dalje se kao poboljšanje uvodi paketna, tj. grupna obrada (batch processing), zasnovana na upotrebi magnetne trake – uređaja mnogo bržeg od bušenih kartica. Pri paketnoj obradi, u ulaznoj sobi sa poslovima sakuplja se jedna količina sličnih programa (na Primjer, svi programi koji zahtevaju prevodilac FORTRAN-a), koji se pomoću jeftinijeg računara (npr. IBM 1401) s bušenih kartica prenose na magnetnu traku. Posle toga se magnetna traka prenosi u sobu s glavnim računarom, tj. sa moćnijim i skupljim računarom, predvidjenim za izvršavanje samog programa (npr. IBM 7094). U glavni računar se učitava poseban program koji je zadužen da sa trake sa poslovima 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. Manji računari (ulazno-izlazni) nisu direktno vezani za glavni računar, što znači da rade u off-line režimu (u režimu gdje nisu bili u medjusobnoj komunikaciji). U drugoj generaciji računarskih sistema povećava se brzina rada centralnog procesora, kapaciteti centralne memorije i eksternih (masovnih) memorija, pojavljuju se nove i brže ulazno-izlazne jedinice. Programi se pišu na simboličkom mašinskom jeziku, asembleru ili na višem programskom jeziku (FORTRAN). Operater više nije u stanju da efikasno opslužuje računarski sistem, jer su njegove reakcije suviše spore. Jedino rješenje se moglo naći u prebacivanju niza kontrolnih funkcija sa operatera na sam računarski sistem, to jest na posebne kontrolne programe. Otuda su funkcije opsluživača i upravljača sistemom bile podjelljene izmedju operatera i kontrolnih programa. Ti programi se uključuju u odredjenim situacijama, kao što su, na Primjer, priprema programa za izvodjenje, kontrola ulaznih i izlaznih uredjaja i razni poslovi oko učitavanja programa i pripreme za njegovo izvodjenje. Dakle, u računarima druge generacije razlikuju se dvije osnovne vrste programa: kontrolni i korisnički. U trećoj generaciji računarskih sistema, kontrolno upravljačke funkcije se još više prebacuju na sam računar i zbog toga dolazi do nastanka većeg broja kontolnih i upravljačkih programa velike kompleksnosti. Skup svih tih programa nazvan je operativni sistem.
Se
NtejeprraRgrfu• • • KPLtekpimraDekra(URdzbkksiPdprso URinsuCspPtak
eznadar: OS i RM
Novi korisniciek nakon izvee serija komprimenu, pa jačunara.
Računari iz serešaka. S razunkcije:
multipvišestpodjel
Kod treće generojekat MUL
Labs i Generaerminala. Osnorisnik koji pokušali da namaju terminaačunarskih m
Drugi operativkspanziju do azvoju projekUNI= jedan, X
Računari trećeo tada najmabog pojave ontrolno-upraontrole internistem, tj. na rogramer se ijelu posla. Nrograma, čijioftver možem
U četvrtoj genRazvoj personntegracije. Rau personalni r
Commodore, padaju MS-Daralelno s raz
aj način se osoriste.
i računara naesnog vrijemepatibilnih račje time podje
erije System/zvojem discip
programiranjetruke ulazno-ila računarsko
eracije računLTICS (MUal Electric da novna ideja jpoželi da upotaprave i sa račale kojima p
mreža i Internevni sistem, Udanašnjih da
kta MULTICSX = CS = Coe generacije zanji i najjeftinmultiprogramavljačkih funne situacije upojedine sistoslobadja niz
No, pored koni je zadatak dmo podijeliti n
neraciji računalnih računaačunari su bilračunari postAtari, zatim DOS i UNIXzvijanjem korobama koje r
ajpre žele slabena. IBM taj čunara različela računara
/360 radili supline poznate
e, (multiprogizlazne (U/I) og vrijemena
ara posebno tULTIplexed In
se napravi me preuzeta iztrebi neki elečunarima: idepreko modemeta. UNIX, uprošana. Ken ThoS, napisao je
omputing Servzvali su se miniji računar. Kmiranja i ponkcija prebacu računarskomtemske progrza složenih rntrolno-upravda dalje olakna sistemski i
unara (1980–ara započinje li dovoljno jetali dovoljno j
IBM PC, AX.
risničkog softračunarski sis
bije modele kproblem pokčitih snaga. S
na ove dvij
u pod operate pod imenom
gramming) operacije (sp(time-sharing
treba istaći ponformation a
moćan računarz modela distrektrični aparateja je da u jedma pristupaju
šćena je varijompson, jedaza računar P
vice). ini računari:Koštao je tadarasta brzina,cuje se sa čm sistemu i urame. Skup srutinskih poslvljačkih progršaju i pojedni korisnički (a
–pa nadalje),pojavom LS
eftini, tako dajeftini da ih m
Apple Macint
ftvera, razvijastem i same p
Operativni sistem
8
Računari trintegrisanih proizvođačaa• jedn• jednšto je skup pkoji su jeftinikušava da razSvaki od ovie vrste nesta
tivnim sistemm softversko
pool) g).
ojavu dva opeand Computinr i operativni ribucije elektt, taj isti apardnom radu pou glavnom r
janta MULTan od naučnikPDP-7 mini ve
: prvi računara “samo” 120, veličine mčovjeka na rupravljanja njsvih tih proglova i pruža rama u, računnostave upotraplikativni).
, prvi put se pSI čipova (lara su ih moglimogu imati i tosh itd. U p
a se i korisničprograme ne p
mi
reće generakola (IC). P
a pravi dvije vnu bržu verzijunu slabiju (kaooduhvat. iji, dok će im
zreši uvodjenjih računara jala. Ovaj ko
mom OS/360inženjerstvo
erativna sisteng Service) sistem koji ć
trične energijrat samo priljuostoji moćan cračunaru. Ov
ICS sistema,ka i programeerziju MULT
r je DEC-ov (0.000 dolara.
memorije i brračunar. Dakjome i sve štgrama nazivamu se mogu
narima treće grebu računars
pojavljuju perrge scale intei priuštiti i vipojedinci. Poprve operat
ki interfejs prpoznaju detal
cije (1965–Početkom šezvrste računaru (kao IBM 7o IBM 1401),
m jači, brži i jem klase račje pogodan incept su pre
, koji je bio (software en
ema : MULTneuspela je iće biti u stanjje – u tom muči na elektricentralni račuvaj model se
, koja je dživera kompanijeTICS sistema.
(Digital EquipU trećoj gen
roja ulaznih-le, čovjek dto je moguće a se jednim ićnost većeg ageneracije razskih sistema.
rsonalni računegration), to jše odseka istoznatiji persoivne sisteme
rograma, to jeljno, omoguća
prikupio i ob
–1980) pravzdesetih godra: 7094) i ,
skuplji modečunara IBM Si za naučnu euzeli i ostal
veoma glomngineering ),
TICS i UNIXideja kompanu da radi sa v
modelu, dovoljičnu mrežu. Sunar, a da grae može sma
vela praktične Bell Labs, k. Posle toga j
ipment Corponeraciji račun-izlaznih jedidefinitivno gue prebacuje seimenom: opeangažovanja zvijen je i čitZbog toga, p
nari. jest čipova vte firme ili unonalni računare za persona
est korisnčkoava da te pro
bradio Miroslav Mihalj
ve se od dina većina
eli biti potrebSystem/360. T
i za poslovnli proizvoođa
mazan i prepuuvode se nov
. nija MIT, Bevelikim brojeljno je da svaSličan model adjani kod kuatrati pretečo
nu realizacijukoji je radio ne nastao UNI
oration) PDP-narskih sisteminica, još viubi mogućnoe na računarserativni sistemna kreativno
av niz uslužnprema namen
visokog stepenniverziteta, dori su Spectrumalne računa
o okruženje. Nograme uspešn
jišin
bni To nu ači
un ve
ell em aki su
uće om
u i na IX
-1, ma, iše ost ski m.
om nih ni,
na ok m,
are
Na no
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
9
Sada se razmatra što će biti peta tehnološka generacija. Smatra se da će računari u petoj generaciji biti izgrađeni pomoću organskih sastavnih dijelova.
Karakteristike savremenih OS Raniji OS (MS DOS, UNIX, VMS, ...) su radili u tzv. tekstualnom modu. To znači da je korisnik kucao tekstualne naredbe koje su uglavnom bile komplikovane. Korišćenje računara je bilo dosta nepraktično i teško za učenje. To je bio jedan od razloga zašto je malo ljudi tada koristilo računare. Poznato je da obrada jedne slike traži mnogostruko više računarskih resursa od obrade bilo kog teksta. Razvojem hardvera računari su imali sve bolje performanse i rad sa grafikom je postajao sve lakši. To je bio preduslov za pojavu tzv. grafički orjentisanih operativnih sistema (Windows, Linux, Mac OS). Prije dvadesetak godina (krajem osamdesetih) se isprofilisalo, a i do danas se zadržalo da rad u tekstualnom modu označava računare stare generacije. Novi OS su uveli pojam pokazivača (pointer) koji se koristi kao kažiprst. Pomjeranje ovog pointera se obavlja pomoću miša. Ovim pointerom se biraju komande ili sličice koje se zatim startuju nekim od tastera miša. Ova grafička veza između korisnika i računara se naziva GUI (Graphical User Interface). Prva (ali svakako ne najvažnija) osobina modernih računara je korisnički grafički interfejs. Prednosti pri korišćenju GUI-a su jednostavnost pri radu, intuitivno i brzo učenje. Korišćenje GUI-a liči na sporazumijevanje „rukama“. Dakle, umjesto da se kucaju komplikovane naredbe prosto se prstom pokazuje na njih. To je doporinijelo ogromnom povećanju broja korisnika PC računara. Danas ne postoji OS koji nema, ili ne podržava GUI. Naglasimo još jednom šta OS treba da radi - omogući: Izvršavanje programa OS puni glavnu memoriju programom i počnje njegovo izvršavanje. Korisnički programi ne mogu da sami sebi dodijele procesor. U\I operacije Sistem mora da komunicira sa diskovima, USB uredjajima, magnetnim trakama i drugim uredjajima niskog nivoa. Korisnik zadaje uredjaj i operaciju koju treba izvrsiti a sistem konvertuje taj zahtjev u specificne komande uredjaja i ili kontrolera. Korisnicki programi ne mogu da pristupe nedjeljivim uredjajima svaki put kada im je to potrebno vec samo kada se ti uredjaji ne koriste od strane nekog drugog uredjaja. Komunikacija Slanje poruka izmedju sistema zahtijeva da se poruke dijele u pakete podataka, salju do mreznog kontrolera, prenose preko komunikacionih medijuma i na mjestu odredista isporuce kao cjelina.Korisnicki programi nisu u mogucnosti da koordiniraju pristupom mrezi vec je to zadatak OS. Upravljanje sistemom datoteka Postoji puno detalja o kojima korisnici ne moraju da vode računa pri kreiranju datoteke, brisanju, dodjeli memorije... Npr. potrebno je voditi evidenciju o blokovima na disku koji se koriste za datoteke. Brisanje datoteke zahtijeva brisanje informacija o imenu datoteke i oslobadjanje dodijeljenih blokova. Da bi se obezbijedio autorizovan pristup datoteci potrebno je provjeriti zastitu. Korisnicki programi ne mogu da obezbijede zastitu niti dodijele ili oslobode memoriju. Popularnost PC računara dovode do masovnosti što opet omogućuje nova tehnioloških poboljšanja zasnovana je na konstrukciji paralelne arhitekture koji omogućavaju istovremeni rad više kompjutera (procesora) na rešavanju određenog zadatka. Oco opet dovodi do masovne upotrebe Interneta.
Se
Ook K PnoO KP
KPop
KP
J Mslko Kved Omap Pstpr
eznadar: OS i RM
Ovo znači dakruženju, da
Klasifikaostoje brojneačinu obradesobinama.
Ovdje ćemo da
Klasifikacija rema broju k
• •
Klasifikacija rema broju perativni sist
• jednop• višepr
Klasifikacija odjela OS pre
• • •
Jednokor
MS DOS (Mlobodnom preoriste D u svo
Kao uvod, da eć zaboravlje
da je njegov ke
Operativni sismašina raspolaplikacijskim p
o svojoj strutructure). štoristupaju I/O
a savremeni rsu pouzdani,
acija opee podjele opere poslova, p
ati samo tri o
prema brojukorisnika, ope
jednokorisvišekorisn
prema brojusimultanih aemi se dijele procesne (sinrocesne (mult
po strukturiema strukturi
Slojeviti OOS sa monOS sa mik
risnički
icrosoft Diskevodu DOS zom nazivu, je
se ne kaže zenim DOS-omernel.
tem DOS se aže, rad sa njprogramima
ukturi DOS o se može vi
uređajima.
računari trebzaštićeni, po
erativnihrativnih siste
prema distrib
osnovne klasif
u korisnika ierativni sistemsničke (singleničke (multius
u simultanihaktivnosti, tj.
na: ngle tasking, stitasking, mu
i i:
OS nolitnim jezgkro jezgrom (M
OS-MS
k Operating znači operati
er rade mnog
zagrijavanje zm. Neki tvrde
koristi, kao egovim vlastkoje korisnik
spada u moidjeti na slik
ba da imaju modržavaju GU
h sistemama na osnovu
buciji proceso
fikacije, a pro
i procesa mi se dijele nae user) i ser).
aktivnosti prema broju
singleprocessultiprocess).
grom (KernelMikrokernel
DOS
System) je vni sistem za
go više poslov
za moderne Oe da nije baš
i ostali OS, zitim program
k instalira na s
nolitne slojekama ispod. P
Operativni sistem
10
mogućnost vUI, jednostavn
a u različitih korske snage
oširenu klasif
a:
u procesa ko
s) i
OS) OS)
nastao 1981a diskove (flova od samog u
OS, upoznaćezaboravljen,
za pokretanjemima i podacim
svoju mašinu
evite operativPošto slojevi
mi
višekorisničkoni za rad (user
riterijuma: pri ostalih re
fikaciju sa obj
oji se mogu
godine i ozopi disk i harupravljanja d
emo se sa najveć ukopan
e sistema, upma, manipula
u.
vne sisteme i nisu dobro
og i višeprogr frendly).
rema broju koesursa, prema
bjašnjenjima,
izvršavati pa
značio je pord disk). Novdiskovima.
jslavnijim pru temelje Win
pravljanje haraciju datoteka
mada je pseodvojeni, p
prikupio i ob
gramskog rad
orisnika i/ili pa nameni i
pogledaj u D
aralelno ili k
očetak ere Pvi operativni
redstavnikom indows-a, i to
rdverskim resama i podršku
eudovišeslojnprogrami mog
bradio Miroslav Mihalj
da u mrežno
procesa, premfunkcionalni
Dodatku.
kvaziparaleln
C računara. sistemi više n
OS XX vijeko toliko dubok
sursima kojimu u izvršavan
ni (pseudolaygu da direktn
jišin
om
ma im
no,
U ne
ka, ko
ma nju
yer no
Se
D
Ndop P NutBPnUUApInRkri
P
eznadar: OS i RM
DOS se može • Modu• Proce• DOS j• DOS B
Na ilustracijamodatno objašperativnog si
Proces učita
Nakon uključetvrdio da su s
BOOT programrvo BOOT pašao dalje ins
Ukoliko je nađUkoliko je ne Ako BOOT p
odizanja sistenstrukcije koj
Radi se o filovako ih ne bi iječ o Microso
Proce
rocesor se sa
podijeliti na ul eksternih kosor naredbi (cjezgra (kerneBIOS.
ma je prikazašnjeno u poglistema i Doda
avanja DOS
enja računarasve komponem, po zadatimprogram pretrstrukcije. đe BOOT pronađe BOOT
program ni taema, proces pje BOOT provima io.sys i greškom izrioftovom DOS
es učitavanja
ada okreće adr
četiri dijela: orisničkih (uscommand pro
el)
an način kakolavljima Procatku.
S operativn
a, dolazi do pnte sistema p
m instrukcijamražuje disketn
ogram je očitaprogram nast
amo ne nađe podizanja sistogram traži nmsdos.sys. Osao. Oni se nS operativnom
sistemskih faj
resi 7C00 u r
ser) naredbi ocessor)
o korisnik prisces učitavanj
nog sistema
pokretanja Bpriključene. ma, nastavlja nu jedinicu u
ava i nastavljtavlja sa pretrsledeće instr
tema se prekinalaze se na dOni su ustvarine vide ni u Dm sistemu do
ajlova
radnoj memor
Operativni sistem
11
stupa OS i kaja DOS oper
a
BIOS-a i testa
a proces podizu nadi da će
a dalje. raživanjem terukcije, odnoida i korisnik dva sistemskai sakriveni takDOS-fajl kataok se kod drug
Kad je Bpročitao jtvrdog disNa svim DOS. To kako ce Bje BOOTradnu meBOOT prda je sadaza instruk
riji i radi dalj
mi
ako pojedini rativnog siste
a hardvera s
zanja sistematamo pronać
e pretražuje tvosno sistemsk
obaviještenja fila koja suko da korisnikalogu. pod ovgih proizvođa
BOOT prograje program pska kopirao ihformatiranimse zove BO
BOOT prograT program pemoriju na rogram kontra BOOT recokcije. e po instrukc
dijelovi međuma Korišćenj
sa kontrolom
. ći jednu form
vrdi disk kao ke fajlove poe o grešci na
u inače smjesk nikad ne mvim imenima ača drugačije
am pronašao odatke koji sh na određenu
m diskovima jOT record km postupiti srenio informhexadecimal
rolu BOOT rerd taj sto vod
ijama.
prikupio i ob
usobno komunje i izvršenje
svih kompo
matiranu disk
sljdeću jedinotrebne za naa sistemu. stena na sekto
može doći u ko ovi fajlovi s
e zovu.
ta dva fajla se nalaze na u adresu u radje prvi sekto
koji ima inforsa ta dva sakr
macije iz BOlnu adresu 7recordu i ukadi igru te da s
bradio Miroslav Mihalj
uniciraju, što e naredbi DO
nenti sistema
etu na kojoj
nicu. astavak proce
oru 0 i tragu ontakt sa njimsu samo ako
na hard diskprvom sektodnu memorijur rezervisan rmacije o tomrivena fila. K
OOT recorda 7C00 prepusazuje procesose njemu obra
jišin
je OS
a i
bi
esa
0. ma
je
ku oru u. za
me ad u
sta oru ati
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
12
Tako BOOT record preuzima kontrolu nad računarom i očitava ona dva sakrivena fila. Prije se očitava fil IO.SYS i prenosi u radnu memoriju. IO.SYS sadrzava podatke koji kompletiraju BIOS. Jedan dio fila se naziva SYSINIT koji preuzima na sebe brigu o nastavku BOOT procesa. Sada kontrolu na racunaru preuzima SYSINIT i prvo sto radi je da ocita fil msdos.sys te isti pohrani u radnu memoriju. Fil msdos.sys u nastavku zajedno sa BIOS preuzima rukovanje fajlovima te rukovanje signalima između pojedinih jedinica sistema. SYSINIT traži u korijenskom direktoriju na tvrdom disku fajl config.sys. To je fajl koji pravi korisnik. On sadrži informacije o podešavanjima u računaru kao što smo opisali ranije. On ima takođe instrukcije o tome koje zadatke SYSINIT dozvoljava msdos.sys da izvrši. To mogu biti instrukcije o tome kako povecati moc BIOS-a da rukuje memorijom racunara ili nekim od prikljucaka racunara npr. misom. SYSINIT daje nalog msdos.sys da očita fajl command.com te istog pohrani u radnu memoriju. Fajl command.com se sastoji iz tri dijela. Prvi dio je ustvari uvecanje mogućnosti BIOS za unošenje i iznošenje podataka. Ovaj dio se polaže u memoriju kao permanentni dio operativnog sistema. Drugi dio fajla command.com sadrzi interne DOS komande kao DIR, COPI, i TYPE. One se memorisu u gornjem dijelu radne memorije i mogu biti upisani preko drugih programa. Treći dio fajla command.com upotrebljava se samo jedanput i kasnije se izbacuje iz memorije. Taj dio traži u korijenskom direktoriju fajl autoexec.bat. Očitanjem fajla autoexec.bat i config.sys sistem je konfigurirsan i spreman je za podizanje operativnog sistema /Windows naprimjer/ a nakon toga i za upotrebu. Program COMMAND.COM se mora nalaziti na svakoj sistemskoj disketi. I pored toga, on ne spada u operativni sistemi (vidi POZICIJU U PREDHODNOM POGLAVLJU). Radi se o izvršnom (.COM) programu koji je sličan svakom drugom izvršnom programu, ali je on zadužen za vrlo bitne operacije.
Kod DOS-a je COMMAND.COM je procesor naredbi ili tzv. korisnička ljuska (shell). Predstavlja vezu između korisnika i operativnog sistema. On interpretira naredbe i omogućava izvršavanje sistemskih datoteka Nakon što je sistem izvršio zadane naredbe i nakon što je COMMAND.COM izvršio odgovarajuće pripreme i postavio odzivni znak (prompt) računar i operativni sistem su spremni za rad. Korišćenje i izvršenje naredbi DOS operativnog sistema DOS se koristi na dva načina:
• kroz linijske naredbe, ili • kroz druge programe, u kojima preko menija koristimo mogućnosti DOS-a, a da pritom ne poznajemo način
rada DOS naredbi niti sintaksu pisanja istih. Komandna linija je linija u kojoj kucate komande (naredbe). Komandni prompt (odzivnik) pokazuje da ste u komandnoj liniji. Prompt može biti slovo za logičku oznaku disk jedinice praćeno obrnutom kosom crtom (backslash; "beksleš") (c:\ ili a:\, na Primjer) i nazivom direktorijuma (na Primjer, c:\dos). Slovo pokazuje koja je disk jedinica aktivna jedinica. MS-DOS pretražuje aktivnu disk jedinicu kako bi pronašao informaciju koja je potrebna da bi procesirao komande koje ste otkucali. Da biste naveli MS-DOS da izvrši zadatak, vi kucate komandu (na monitoru desno od komandnog prompta pojavljuju se znaci koje kucate), a zatim pritiskate taster sa natpisom "Enter". Sve naredbe DOS-a prolaze kroz proces navođenja:
• Svaki put kad se zada naredba (preko tastature ili programski), DOS najprije provjerava da li naredba postoji u listi internih naredbi. • Ako je naredba prisutna u memoriji, odmah se izvršava. • Ako naredbe nema u popisu internih naredbi (znači da je eksterna), DOS pretražuje tekući direktoriji traži datoteke koje imaju ekstenziju .EXE, .COM ili .BAT. • Ako se pronađe tražena datoteka, ona se učitava u memoriju, te se izvršava. • U slučaju da DOS ne nađe traženu eksternu naredbu, šalje i ispisuje na monitoru: Bad command or file name. • Kada je završen proces koji je pokrenula eksterna naredba, oslobađa se dio u memoriji u kojem je učitana eksterna naredba.
Poziv batch datoteke (tip BAT) uzrokuje čitanje svake linije u datoteci i izvršenje navedenih naredbi, redoslijedom navođenja. Više detalja o DOS-u, kao i nekoliko primjera i način izrade bach fajlova vidi u Dodatku.
Se
M K• • • • • Z(ffu
MPdUov MOPkopek MMVoIz MMO(mBprIz MMOis
eznadar: OS i RM
Moduli kKao što je nag
upravupravupravupravuprav
Zadatak OPERfajlovi i procunkcije.
Modul za upriključenje povodi do prek
U toku prekljvakvo preklju
Modul za upOvaj modul po
ošto upravljaomponenti, nperacije ulazkran, štampač
Modul za upModul za upraVodi evidenc
slobađanja prz modula za u
Modul za upModul za upraOmogućava otmasovne mem
Brine se i o prrebacivanje sz modula za u
Modul za upModul za upraOmogućava sstovremeno p
kod OS glašeno savremljanje procesljanje memorljanje U/I ureljanje datotekljanje mrežomRATIVNOGcesi) djelovim
pravljanje procesora sa ključivanja pručivanja proučivanje brže
pravljanje oziva operacanje I/O urenazvanih drajza i izlaza. Upč, odnosno ur
pravljanje avljanje radnociju o slobodrethodno zauzupravljanje ra
pravljanje avljanje fajlovtvaranje i zat
morije) u kojirebacivanju dsu potrebni baupravljanje fa
pravljanje avljanje procestvaranje i upostojanje više
meni OS se mima rijom eđajima kama m.
G SISTEMA ma kompjute
procesoromjedne na drurocesora sa j
ocesora izmeđe (kraće) nego
I/O kontrocija preključieđajima zavisveri. Modul pravlja raznimređaji masovn
radnom mom memorijodnoj radnoj zetih zona radadnom memo
fajlovima vima ima opetvaranje fajloima se nalazedjelova sadržaferi, pa se poajlovima pozi
procesimaesima ima opuništavanje pe procesa (viš
može dekomp
je da upravlera, pa se o
m ugu nit je zaedne niti na đu niti istog o preključivan
olerima ivanja. si od vrste uza upravljanjm ulazno/izlane memorije
memorijomom ostvaruje s
memoriji radne memorije
orijom pozivaj
eracije čitanjova, odnosno e sadržaji fajloaja fajlova izoziva i operacivaju operacij
peracije stvarprocesa, kaošeprocesni re
Operativni sistem
13
ponovati (pod
lja fizičkim operativni sis
Posto•jer pr••defin
adatak ovog drugu, koje procesa ne
nje procesora
uređaja, modje kontrolerimaznim uređajkao što su di
svoj zadatak adi zauzimane.
aju se operacij
ja i pisanja.čitanje i pisa
ova. zmeđu radne cija zauzimanje oslobađanj
ranja i uništao i stvaranjeežim rada), tj.
mi
dijeliti) u mod
(procesor, kotem može p
oji nekoliko plakše je
romjene utičuinformacinformac
nisane i ogran
modula.Uvodmogu pripaddolazi do iz
a između niti
dul za upravma ostvaruje ima koji su pskovi, diskete
tako što uvodnja zona slo
je ulaza i izla
anje njihovog
i masovne mnja dovoljno va, ulaza i izla
avanja. i uništavan više niti.
dule koji obez
ontroleri i raodijeliti na m
prednosti modmodifikovatiu samo na nekije se čuvaju ijamma se
ničene oblasti
di operacijuati istom ili r
zmene adresnraznih proces
vljanje kontrosvoj zadatak priključeni nae, CD/DVD R
di operacije zobodne radne
aza.
g sadržaja i v
memorije (druvelikog baferaza.
nje njihovih
prikupio i ob
zbijeđuju slje
adna memorimodule, koji
dularnih OS: i sistem i ispke dijelove sisamo gdje je
pristupa i.
u preključivaraznim procesnog prostora sa.
olerima se stako što uvo
a kontrolere ROM-ovi, itd
zauzimanja e memorije,
vodi evidencij
uge dvije funkrskog prostor
niti, odnosn
bradio Miroslav Mihalj
edeće funkcije
ija) i logičkii izvršavaju
pravljati greškistema,
e to potrebno,samo unut
anja čiji pozsima. procesa, pa
sastoji od niodi (drajversk(tastatura, m
d.).
i oslobađanjodnosno ra
ju o blokovim
kcije), a za ova.
no omogućav
jišin
e:
im te
ke
tar
ziv
je
iza ke) iš,
a. adi
ma
vo
va
Se
PjeIz M KgrGup
S PES
Npr(mSSSurS MSdPnmse Ssi
eznadar: OS i RM
oziva operace za stvaranjez modula za u
Moduli i hij
Korišćenje morupisani u hij
Generalno, mpravljaju raču
Slojeviti Prvi operativnEindhoven) od
istem je imao
Nulti sloj (prorocesa kada mogućnost daloj 1 obavlja loj 2 upravljaloj 3 upravljaređaja. loj 4 je sloj n
Moduli ovakvvaki od slojeiktira pravilorimjena pomiži sloj dospe
memorijom. Pe modul za up
vrha predstaistema raščlan
iju čitanja, rae slike procesaupravljanje pr
jerajhija
odularnog prijerarhijske niv
možemo reći dunarima koji
operativni sistem koji d strane E.W.o 6 slojeva ka
ocessor schese desi prek
a se pokrene vupravljanje m
a komunikacia ulaznim izla
na kome se na
ih operativniheva je predodo koje nalaže
menutog pravieva modul za
Predposlednji pravljanje pro
avljanja operani na više jed
adi preuzimana potrebna rarocesima poz
istupa kod Ovoe. da jednostavobavljaju kom
vni sistemje napravljeDijkstre.
ao što je prika
duling–raspokid ili istek taviše programmemorijom. Oijom izmedjuaznim(I/O) u
alaze korisnič
h sistema fordređen da sada se iz sva
la dovodi do a upravljanjesloj hijerarh
ocesorom.
ativnog sistednostavnijih m
nja sadržaja izadna memorijzivaju se oper
OS čiji kodov
vni operativnimpleksnije za
mi (layern na ovaj na
azano na sled
ored rada prajmera. Uz o
ma od jednom)On alocira (dsvakog proc
uredjajima i p
čki programi a
miraju hijeraadrži jedan odkog sloja posmještanja m fajlovima, d
hije sadrži mo
ma kao hijermeđusobno ne
Operativni sistem
14
zvršnih fajlova, pozivaju se
racije čitanja,
vi imaju više
i sistemi moadatke) slojev
red systečin je operat
dećim slikama
rocesora-)namovo sloj 0 ob).
dodjeljuje) proesa i operator
privremeno m
a na sloju 5 o
arhiju. d modula op
ozivaju samomodula za updok je sledećodul za uprav
rarhije slojevezavisnih zad
mi
va, koji su poe i operacije z pisanja, zauz
miliona instr
ogu imati movitu hijerarhij
ems) tivni sistem sa
a:
mijenjen je pbjezbjeđuje o
ostor procesimrske konzole.
memoriše (BU
obavlja se pro
perativnog siso operacije uravljanje proi niži sloj na
vljanje I/O ko
va je motivisdataka i zatim
otrebni za stvazauzimanja, ozimanja i oslo
rukcija nije b
onolitnu strukjsku realizaci
a imenom TH
oslovima aloosnovne funk
ma u glavnoj .
UFFERING) i
oces sistemsk
stema. Raspouvedene u nicesima u sloj
amjenjen modontrolerima, a
sana željom m svaki od njih
prikupio i ob
aranje slike podnosno osloobađanja.
bilo dovoljno
kturu, a složiju.
HE (Technisc
okacije procekcije za mult
memoriji.
informacioni
kog operatora
odjelu modulaižim slojevimj na vrhu hijedulu za uprava u poslednje
da se zadataih objasni zas
bradio Miroslav Mihalj
procesa, a pošobađanja.
o, pa su modu
ženiji (oni ko
he Hogescho
esora, promjetiprogramiran
tok ka i od I/
.
a po slojevimma hijerarhijerarhije. U prvljanje radnoem sloju nala
ak operativnosebno.
jišin
što
uli
oji
ool
eni nje
/O
ma je. rvi om azi
og
Se
PR Ohsv MopTmKpmdza V T ŠD(m
eznadar: OS i RM
Primjeri OS sRazlika iz
Osnovna razliijerarhije, a kvaki sloj ima
Monolitni opeperativnih sis
To znači da smodula. Kod slojevitih
ozivaju samomodula za ruk
ok je sledeći a rukovanje k
Većina modern
Tipovi jez
to se samog dDva najinteresmicrokernel).
sa slojevitomzmeđu sloj
ka je u tomekod slojevite tačno određe
erativni sistestema. e iz svakog
h modularniho operacije ukovanje proceniži sloj nam
kontrolerima,
nih sistema je
zgre
dizajna i narasantnija i uje.
m organizacijjevite i m
e, što se OS k realizacije O
enu funkciju (
emi se sasto
od modula m
h sistema rasuvedene u niesima u sloj
menjen modul a u poslednj
e neka vrsta h
avno same imedno najviše
jom : THE (monolitne
kod monolitnOS se dijeli n(upravlja tačn
oje od modu
monolitnih op
spodjelu modžim slojevimna vrhu hijeru za rukovanjem sloju nala
hibrida i najč
mplementacijesuprotstavlje
Operativni sistem
15
(6 layers), Mrealizacij
ne strukture sna više slojevno određenim
ula čija sarad
perativnih sis
dula po slojevma hijerarhijerarhije. U prv
nje radnom mazi se modul z
češće koristi
e jezgre tiče, pena tipa su m
mi
MS-DOS (4 laje OS
astoji od skuva od kojih s
m resursima).
dnja nije og
stema mogu s
vima diktira pe. Primena povi niži sloj doemorijom. Prza rukovanje
neke elemena
postoji nekolmonolitna jez
ayers).
upa procedurase svaki oslan
graničena pra
slobodno poz
pravilo koje nomenutog praospeva moduredposlednji sprocesorom.
ata slojevite i
iko tipova. zgra ( monol
prikupio i ob
a bez ikakvognja na slojev
avilima kao
zivati operac
nalaže da se ravila dovodiul za rukovansloj hijerarhij.
i monolitne st
lithic kernel)
bradio Miroslav Mihalj
g grupisanja ve ispod, i gd
kod slojevit
ije svih ostal
iz svakog slo do smještan
nje datotekamje sadrži mod
trukture.
) i mikrojezg
jišin
ili dje
tih
lih
oja nja
ma, dul
gra
Se
M OoO
VizGpPdd KmopkopPp Iz
O123 U
eznadar: OS i RM
MonolitnOperativni sist
d kojih svakaOS je realizov
Visok nivo mzmeđu samih
Glavna mana oad cijelog sisoznatiji primizajnu jezgreio jezgrinih m
Korisnički promesta, kao što
peracija preborisničkom rperacije poznoslije pozivaozvati i poziv
z svakog od m
Ovakva organ. Postoji glav. Postoji skup. Postoji skup
U ovom mode
ni OS –Mtemi koji kora može pozvavan kao skup p
međusobne indijelova kao ovakvog pris
stema, budućimjeri monolite), BSD jezgrmodula imple
ogrami serviso su registri bacuje procerežimu rada nnate od stranea jezgru, OS pva tu procedu
modula mono
izacija odgovvni program kp servisnih prp pomoćnih p
elu za svaki si
Monolitniste monolitn
ati svaku ako procedura, od
KuZ(bUrn
ntegracije svii visoke efik
stupa je prveni da sve komptnih jezgri sure, Solaris, Dementiran u v
se OS-a koriprocesora ili
esor iz korisnisu dozvolje
e procesora. preuzima kon
uru i na kraju
olitnih operati
vara označenokoji poziva serocedura koji procedura koj
istemski pozi
no jezgronu kernel strukje to potrebnd kojih svakaKod monolitnupravo u sisteZa takvu jezg(i hardverskibogatim skupUprkos činjerazličitim dijenemoguće zb
ih dijelova ukasnosti koja jnstveno problponente nužnu: Linux (poOS, većina Uidu korisničk
iste na sledei stek, pa slesničkog režimene neke kom
ntrolu, na osnse kontrola v
ivnih sistema
oj strukturi zaervisnu proced
izvršavaju sie pomažu sev
iv postoji jedn
Operativni sistem
16
o- -Kerneukturu (npr. Uno. vidi Jezgroa može pozvane jezgre se emskom (zaštgru je karakteim i softver
pom sistemskenici da su raelovima jezg
bog ispreplete
utiče na dobje posljedica lem da greška
no vjeruju jedstojanje mod
Unix jezgri kakih aplikacija
eći način: paredi specijalnama rada u mande proce
novu paramevraća korisnič
a mogu slobod
pp
ppp
a OS: duru istemske pozivisne procedu
na servisna p
mi
el- UNIX) realizoo operativnog
ati svaku ako jcijela jezgratićenom) načeristična vrlorskim) i inte
kih poziva. azne funkcio
gre, stvarno oenosti izvorno
bre performantakvog dizajna u bilo kojemna drugoj.
dula ne mijenao i Window, no smatra se
rametri sistema operacija –sistemski re
esora, a u sis
tara poziva očkom program
dno pozivati Ovo je dosadse sa punim pMess” or spaStruktura je t
OS je napisasvaka možeprocedura parametara i ipak se možeServisi (sistzahtijevaju pDa se prenoprebacuju mprebacuju upparametre i realizuje.
ive ure
rocedura koja
ovani su kao sg sistema: KEje to potrebno
a izvršava u jinu rada.
o snažna apstrerfejs prema
nalnosti najčodvajanje takvog koda i stru
nse zbog mina. m dijelu ovak
nja činjenicuws jezgra (hib
e u osnovi mo
mskog poziv– poziv jezgrežim rada i stemskom rež
određuje kojumu.
operacije svihd najviše korpravo nazvatiaghetti code).takva da uopš
an kao koleke pozvati bima definisrezultata. M
e uočiti neka memski poziv
parametre o ose putem s
mašinu iz kpravljanje nutvrđuje ko
a realizuje taj
prikupio i ob
skup proceduERNEL, u Doo. jezgrinom pr
trakcija nad sa aplikacijam
češće implemvih dijelova j
uktura podatak
inimalnih niv
kve jezgre na
u da je riječ bridnog dizajnonolitnom jez
va se smještara OS-a (kerkontrolu prežimu mogu s
u sistemsku p
h ostalih modrišćena organi “Velika zbr. šte nema struk
kcija procedbilo koju dsan interfej
Međutim i u omala strukturvi) objezbjeđutvrdjenim psteka). Ovak
korisničkog nna OS. OS oji sistemski
j poziv.
bradio Miroslav Mihalj
ura (tj. modulaodatku.
rostoru i to
sklopovima ma sa vrlo
mentirane u je u praksi ka.
voa apstrakci
ajčešće utiče n
o monolitnona budući da zgrom).
aju u određenrnel call). Ovedaje OS-u. se koristiti sv
proceduru treb
dula. nizacija i morka” (“The B
kture.
dure takvih ddrugu. Svakjs u smis
ovim sistemimra. đeni od OSpravilima (npkve instrukcinačina rada tada pribavl
i poziv da
jišin
a),
ije
na
om je
na va U ve
ba
že Big
da ka slu ma
S-a pr. ije
i lja se
Se
P(FprŠdrm
Dpdv M AOu
ZkraZloDsipr Gdn P(G
eznadar: OS i RM
omodne (utilFETCHING) rikazana na sto se tiče sakrugu procedu
modula, tako d
Da bi se konojedinačne patoteku korisidljiva za sva
Mikro jeAlternativa strOsnovna zami
takozvani ko
Zbog pojave omunikacijomada.
Zbog toga što ošije perform
Dodatni servisistema: jedinrocesima.
Glavni problefinisanog staedefinisano s
Primjeri primGNU Hurd, X
lity) procedupodatak iz k
slededoj slici:krivanja infouru, za razlikuda se samo u
nstruisao stvaprocedure, ili steći sistemskaku proceduru
ezgro (mrukturi monolisao je napravorisnički pros
takvih servim među proc
se daleko višanse od monosi su u praksina njihova pr
em takvog panja kao kod
stanje. Za spre
mjene arhitekXNU odnosno
ure se bave pkorisničkog p: ormacija, to ou od strukturodređenim ta
aran objektni datoteke ko
ki povezivač. u.
ikrokernlitnog operativiti minimalnstor (user spac
isa van proscesima (inter-
še poruka preolitnih jezgrii obične korisrivilegija je
pristupa gdje d monolitnih ječavanje pad
kture mikrojo Mac OS X)
problemima kprograma). P
ovdje uopšte e koja sadrži ačkama mogu
program opoje sadrže te
Pri tome, m
nel) ivnog sistemano i pouzdanoce).
Mikrojezgrpružaju tekveć spomennitima (thr Sve ostale ugrađene ((servers, pa
stora kernela-process comm
enosi iz kerne. sničke aplikacda mogu pis
se neki sistjezgri. Zato je
da sistema uvo
ezgri su prisu), QNX, L4 fa
Operativni sistem
17
koji su važnPodjela proce
ne postoji, ti module ili pu pozvati van
perativnog siprocedure, a
mogućnost skr
a je arhitekturo jezgro visok
ra je primjerk najosnovnijnuto upravljareads) pojedin
dodatne uslu(implementiraa se ovaj tip
a, kod mikromunication)
ela u korisnič
cije koje se msati i čitati n
temski servise moguće da odi se moguć
utni u moderamilija OS, S
mi
ni za nekolikedura se mož
tj. svaka procpakete, u kojon modula.
stema pomoća zatim se svrivanja inform
ra sa mikro jekih performan
r kernela mije nužne usluanje adresnimnog procesa t
uge poput graane) u korisnjezgra pone
ojezgri dolazkako je preno
čki prostor i o
mogu pokretaneke dijelove
i mogu gasitće u nekom
ćnost pauze i
rnim operativSymbian OS,
ko servisnih pže izvršiti u t
cedura je vidoj je većina in
ću ovog prisve zajedno pmacija ne pos
ezgrom (micrnsi, a sve osta
inimalističkoguge (odnosnom prostoromte komunika
afičkih interfničkom prostokad naziva i
zi do izražajošenje poruka
obrnuto, mikr
ati i gasiti beze memorije k
ti i paliti po trenutku nekčekanja do po
nim sistemimSingularity.
prikupio i ob
procedura (ntri sloja (lay
dljiva u odnosnformacija sa
stupa, prvo spovezuju u jstoji jer je sv
rokernel) ale funkcije j
g dizajna: ao sistemski p
m, vremenskiacijom među
fejsa, mrežnooru u vidu poi klijent serv
aja potreba za jedan od gl
rojezgre obič
z loših posljekoji su nedo
potrebi je nki servisi jednovratka uslug
ma: Minix, Am
bradio Miroslav Mihalj
npr. Prikupljeers) kao što
su na bilo koakrivena unut
se prevode svjednu objektnvaka procedu
jezgra potisnu
aplikacijama pozivi), a to im prekidimprocesima.
og steka i sl. osebnih servier kernel).
za efikasnolavnih aspeka
čno imaju neš
edica za ostatostupni ostali
nestanak strognostavno doćige.
migaOS, Ma
jišin
eni je
oju tar
ve nu
ura
uti
se su
ma,
su isa
om ata
što
ak im
go i u
ch
Se
K KMKta MKmNseT O• • • • • P Oksa CupflP
AmSsoSpr
eznadar: OS i RM
Korisnički mo
Kod arhitekturManje važni seKomponente Oako što šalju p
Mikro jezgro vKomponente memorijom... Npr. ako apliervera može d
Tako je ostvar
Osnovne prednDodavSistemPredsPredsOmog
PrivilegoOS radi u sist
orisničkom (na privilegovan
Cilj uvođenja pada u sistemlag u kome se=0, korisničk
Ako korisničkmora da korist
istemski pozoftverski prekamo prekidorelazi u privil
oduli međusob
re sa mikro jeervisi i aplikaOS izvan mikporuke preko
vrši validacijumogu biti d
ikacija treba da pošalje porena klijent-se
nosti OS sa mvanje novog m je bezbjedntavlja podršktavlja podrškgućava jedno
ovani režtemskom - pneprivilegovanim registrim
dva režima m. Ovaj režime nalazi informki režim rada;
Način reali
kom programuti takozvane sziv je specijakid.
om se može plegovani reži
bno komunic
ezgrom samoacije su van jkro jezgra se o mikro jezgra
u poruka, predrajveri uređ
da otvori daoruku drugim erver arhitekt
mikro jezgromservisa ne zah
niji jer se višeku distribuiranku objektno-ostavnije proje
žim radaprivilegovanoanom) režimu
ma, za I/O...) j
rada računarm rada mora macija o režim; P=1, privile
izacije prelas
u treba uslugsistemske pozalna instrukcij
preći iz korisim rada i onda
iraju slanjem
o najvažnije fezgra i izvršaimplementiraa.
enosi poruke iđaja, server
atoteku tada serverima i m
tura unutar je
m su sljedeće:htijeva modif
e operacija izvnim sistemimrijentisanim Oektovanje jez
a i sistemom režimu rau rada. Tu se jer bi inače O
ra je obezbeđbiti hardversmu rada (trengovani režim
ska iz korisnič
ga programa kzive. ja kojom se
sničkog u pria operativni s
Operativni sistem
18
m poruka (mes
funkcije OS-avaju se u koraju kao serve
između kompdatoteka, se
ona šalje pormože da poziednog računar
: fikovanje jezvršava u kori
ma, OS, gra i pouzdan
mski pozada (sve nare
neke naredbOS mogao ost
đivanje zastitski podržan, mnutnom, u kom
m rada.
čkog u privile
koji radi u pr
pokreće neka
ivilegovani rsistem izvršav
mi
ssage passing
a se nalaze u risničkom režr procesi. Ov
ponenata i dajerver procesa
ruku serveru va primitivnera.
gra OS, isničkom reži
niji OS.
zivi edbe izvršive ne izvršavatati bez "kont
e racunarskomora spostojme se nalazi
egovani mod
rovilegovano
a rutina iz pr
režim rada. Kva operacije k
g).
jezgru. žimu rada. ve komponent
je komponena, programi
datoteka pree funkcije unu
mu rada,
e), a korisničaju (npr. za prrole".
g sistema odati indikatorsračunar).
rada kod mo
m režimu rad
rivilegovanog
Kad se desi pkoje je zahtje
prikupio i ob
te komunicira
ntama pristup za upravljan
eko mikro jeutar mikro jez
čki procesi sromjenu režim
d namjernih iski registar, k
onolitnih OS
da onda kori
g režima rada
prekid, proceevao korisničk
bradio Miroslav Mihalj
aju međusobn
hardveru. nje virtuelno
ezgra. Svaki ozgra.
se izvršavajuma rada, za r
ili nenamjernkoji će sadrža
snički progra
a, to je u stva
esor automatski program.
jišin
no
om
od
u u ad
nih ati
am
ari
ski
Se
S RkHUfour
VZhN POa)hsepbsoprup(h
eznadar: OS i RM
Sloj apstRazvojem hard
omponente oHAL). Uloga HAL-a ormata podatređaja.
Virtuelni uređZahvaljujući o
ardvera i razmNa ovaj način
Podjela resurOsnovni tipov
) hardverskoardverskih ure ne preporučarticionisanja) logičko paroftverskoj imredstavljaju pravljanje pahipervizor).
rakcije hdvera i softve
operativnog s
jeste da obetaka (mada j
đaj predstavlovoj komponmjenu podatase adaptacija
rsa sistema nvi particionisao (fizičko) paređaja. Aplikačuje paralelna. rticionisanjemplementacijsamostalna oarticijama vr
hardverera, a u veliksistema, koja
zbjedi interfee potreba za
lja standardiznenti operativaka, bez obzira operativnog
na virtuelna oanja su: articionisanjacije koje su
no korištenje
e – predstavlji particija. okruženja u rši putem p
a HAL –oj mjeri i anaje dobila na
ejs između kea tim zanema
zaciju načina vnom sistemura na hardver
g sistema za d
okruženja je
e – predstavljprojektovanefizičkih resu
a razdvajanjeNa sličan nokviru kojih
posebnog sof
Operativni sistem
19
–virtuelnalizom na kojaziv sloj ap
ernela i samoarljiva), a naj
na koji se priu se omogućar koji se ispoddrugu arhitekt
e poznat pod
lja fizičko raze tako da radeursasa drugim
e radnih okrunačin kao kh je mogućeftverskog me
mi
ni uređajji način se onstrakcije ha
og hardvera. ajbitniji zadat
istupa hardveava da koristd njega nalazituru računara
nazivom pa
zdvajanje resue samostalno
m aplikacijam
uženja unutar kod hardverse izvršavanjeeđusloja koji
ji i partini koriste, došrdvera (Har
HAL se bavitak jeste obe
rskim uređajiti iste mehanii. svodi na pisa
rticionisanje
ursa sistema ku okviru oper
ma) imaju najv
računarskog skog particio odvojenih oi se naziva
prikupio i ob
icionisanšlo je do izdvrdware Abstr
i eventualnimezbjeđivanje
ima. nizme za posm
anje novog H
e.
korištenjem oerativnog sisteviše koristi o
g sistema, pri onisanja, kreoperativnih smonitor vir
bradio Miroslav Mihalj
nje vajanja posebnaction Layer
m konverzijamtzv. virtuelno
matranje stan
HAL-a.
odvojenih ema (ili za kood hardversko
čemu se radieirane particisistema, ali rtuelne mašin
jišin
ne r –
ma og
nja
oje og
i o ije se ne
Se
O DomNvranP WkG
Opm W PvrprUDdGdud
eznadar: OS i RM
OsnovneDanas je Wind
d preko 90%mrežni serveriNastao je kao
erziji i ne pračunarima zaajpoznatiji suostoje takođe
Windows jezgorisničkih ap
Govrimo o hib
Ovakav konceoboljšanja v
mikroprocesor
Windows
rogrami pisarha prema dredvidljiva.
Unix i WindowDok se UNIX
ogađajima. Glavni program
ugmadi na mogađajem. Ti
karaktedows najpop
%. Takođe je i ili serveri bao grafička naredstavlja viš
asnovanim nau firme AMDe i varijacije z
gra (Windowplikacija, no sbridu jer se m
ept sa neznatnvezana za rima.
model pr
ani za tradiciodnu. Putanja
ws se fundamX program sas
m čeka da semišu, ubačeni handleri pro
eristike Wpularniji opera
značajno rasaza podataka.dogradnja Mše samo graf
a procesorimaD. Postoje ili sza procesore
ws kernel) jematra se u os
mikrokernel na
B
nim izmjenammrežne ap
rogramira
onalne operaizvršavanja
mentalno razlistoji od koda
e desi neki doa fleš memo
ocesiraju doga
Windowativni sistemsprostranjen .
MS DOS operfičko okružena firme Intel isu postojale vsa 32 i sa 64
e hibridnog dsnovi monolitalazi unutar k
Blok šema koj
ma zadržan jplikacije i
anja
ativne sistemeprograma m
ikuju što se tia koji nešto i
ogađaj, kao štorija ili sličnoađaj, ažuriraju
Operativni sistem
20
ws OS , uživajući oi u segmentu
rativnog sistenje već uistini njima sličnivarijante kojebita.
dizajna budućtnom jezgromkernela.
oja odgovara
je i u aktuelnvišenitno u
e koriste promože zavisi
iče modela prizvršava ili p
to je pritisnuo, i onda zovu ekran, ažur
mi
gromnu nadmu malih i sre
ema. Današnjnu potpuni oim. Oznaka ze rade na proc
ći da je dio jm.
Windowsu XP
nim verzijamaupravljanje p
ceduralni moo ulaznim p
rogramiranja.pravi pozive s
uta taster na tave procedururiraju unutrašn
moć na svetskednjih servera
je verzije se operativni sisa takve procecesorima DE
jezgrinih mo
XP
a Windowsa.procesima o
odel u kojemparametrima,
sistema, Win
astaturi, pomu koja dalje pnje stanje pro
prikupio i ob
kom tržištu sa u primjena
baziraju na stem. Windowesore je h86 k
EC Alpha, MI
odula implem
. Izmjene su omogućeno
m se programi, ali uglavno
ndows progra
mak miša, pritpreuzima ko
ograma.
bradio Miroslav Mihalj
stonih računaama kao što
prvobitnoj Nws OS radi nkompatibilni,IPS i PowerP
mentiran u vid
se odnosile nvišejezgreni
i izvršavaju oom je priličn
am je upravlj
tisnuto neko ontrolu nad ti
jišin
ara su
NT na , a C.
du
na im
od no
an
od im
Se
Wp Ualwpr W(mpr PkobM Zza S WoZMkWBsinŠobWb WUdzaW
eznadar: OS i RM
Windows progoruke koje ša
Ulazna tačka li većina pos
window procerozoru.
WinMain kreimessage loorikladnim wi
etlja porukaojom aplikabično pojavl
MENIJA ili kl
Završetkom peavršava sa rad
Sistemski
Windows korisvrnuti i na p
Zasad treba reMicrosoft je d
oriste da bi dWindows-a poBroj Win32 Aistema, ali daemoguće vidtaviše, ono šbrnuto.
Win32 API imarovima i slič
Windows U Dodatku s
etaljima koriasad pogleda
Windowsa 9 n
grami koristalje operativn
Windows prsla se obavljaedure. One ob
ira taj prozorop) gdje sindow proced
a završava dcija završavljuje jer je kliknuo X u go
etlje poruka, dom.
pozivi i A
isti pozive siprocese kod Wći da su kod W
definisao skupdobili odgovaočev od WindAPI poziva jaleko veći brodjeti koji pozšto je poziv
ma velik bročno, što se mo
ide dalje se možete uišćenja, realizajte kako je nema...
te model dogni sistem. Dog
rograma je fua u funkcijambrađuju poru
r i onda ulazse poruke pdurama.
dolaskom Wa sa radomkorisnik odaornje desnom
WinMain za
API kod W
stema. O uprWindowsa. Windowsa prp nazvan Winarajuće uslugdows-a 95. e vrlo velik
oj poziva se pzivi su pozivisistema u je
oj poziva zaože (a najčeš
upoznati sa zacije i konst
najavljena
gađaja prikazgađaj može bi
unkcija WinMma koje naziuku koja je po
zi u petlju poprihvaćaju i
WM_QUIT po. Ova se po
abrao Exit izm uglu.
vršava i aplik
Windowsa
ravljanju proc
rocedure iz bn32 API procge operativno
i mjeri se hpotpuno izvrši sistema (tj. dnoj verziji
upravljanje će i jeste) pod
nekim (samtrukcije Wind
verzija 8 o
.
Operativni sistem
21
zan na slici uiti pritisak tas
Main, ivamo oslana
oruka šalju
oruke oruka
z File
kacija
a
cesima, uopš
biblioteke i pcedura (Aplikog sistema. O
hiljadama. Mnava u korisniono što odraWindows-a,
prozorima, dvesti pod tip
mo sa nekimdows OS-a, a
ovog OS-a; a
mi
u kojem aplikstera, pomak
šte biće kasni
pravi pozivi skacioni prograOvaj interfejs
nogi od tih pičkom prostorađuje kernelmože se odr
geometrijskimpično korisnič
m) a a
kacija odgovamiša, ili neka
ije nešto više
sistema bitnoamski interfejje (djelimičn
poziva koristru. Kao poslj), a koji nisuraditi u koris
m figurama, čko okruženje
prikupio i ob
ara na događa druga stvar
e rečeno, a u
o različiti. js) koje progrno) podržan
te da bi se aedica toga je
u. sničkom pros
tekstom, foe.
bradio Miroslav Mihalj
đaje obrađujur.
dodatku ćem
rameri treba od svih verzi
ažurirali pozičinjenica da
storu drugog
ntovima, skr
jišin
ući
mo
da ija
ivi je
, i
rol
Se
U P PnZ
O
Spr OsiPevPpprPprpr OJeKre
eznadar: OS i RM
Upravlja
Program i
rocesi predsteki algoritam
Znači: program
Od ideje do pr
vaki proces revođenjem (
Operativni sisistemima sa r
Program je faventualno po
Proces (ili tasosebna struktrocesa.
Posao (job) jerograme. Njerograme.
Ovo su samo nednostavno re
Kada se progegistara i mem
anje proc
i proces
tavljaju jedanm. Proces je pm je fajl na di
rocesa
gleda svoju (određivanjem
stemi izvršavrazdijeljenim fajl koji sadrždataka. Kao tsk) je dinam
ktura podatak
objekat pakeegova obrad
neke od moguečeno, progr
gram učita u morije.
cesima
n od najvažnprogram u staisku. Kada se
memoriju km) logičkih a
vaju različitevremenom –
ži nizove nartakav on je op
mičke prirode.a koje se naz
etne obrade i a se odvija
ućih definicijram je pasiva memoriju, p
nijih koncepatatusu izvršavae taj fajl učita
kao granični dresa u odgov
e programe: – korisnički predbi mašinskpisan samo sv. To je objekziva kontroln
obuhvata nizsekvencijalno
a za programan objekat, tpostaje proc
Operativni sistem
22
ata operativnianja, zajednoa u memoriju
skup logičkvarajuće fizič
u sistemimarogrami ili zakog jezika (kvojim sadržajkat multiprogni blok proce
z naredbi kono, tako što
m, proces i posto jest datoteces, tj. aktiva
mi
ih sistema. P sa svim resui počinje da s
kih memorijsčke adrese ko
a sa paketnoadaci (tasks). koji se može jem i ima statgramiranja i esa PCB (Pro
trolno-upravlse izvršava n
sao. eka na disku.an objekat ko
rogram je niursima koji suse izvršava do
kih adresa. oje su rezervis
om obradom izvršavati natičku strukturpredstavlja p
ocess Control
ljačkog jezikaniz naredbi
. oji ima svoje
prikupio i ob
iz instrukcijau potrebni zaobijemo proc
Operativni ssane za proce
to su poslo
a posmatranoru. program koml Block) ili P
a, programa ikoji pokreće
e resurse popu
bradio Miroslav Mihalj
a koji ostvarua rad programces.
sistem upravles.
ovi (jobs), a
m procesoru)
me je pridodaPD - deskript
i podataka za e odgovaraju
ut procesorsk
jišin
uje ma.
lja
u
) i
ata tor
te uće
kih
Se
P NNNGpd
KpPbjeNNnP K SobobobloOrapr KkU
eznadar: OS i RM
Procesi i n
NajjednostavnNit (thread)seNit i proces prGrubo govore
odprogramimijele zajednič
Kako jedan prodršku i na kodrška za koiblioteka obeezgra(kernel)
Najznačajnije Niti jezgra (k
iti, raspoređirimjeri : Win
Kontrolni b
vaki proces iblast koda (pblast podatablast steka (okalne promje
Osim memorijaznih ulazno rocesom. Ove
Kontrolni blokoje operativn
U informacije - ime ili jed - kontekst (o - prioritet pr - informacij - lista otvore - status zauz - trenutno st
niti
nija definicijae može shvatiredstavljaju meći nit možemma ima veću čke resurse, št
Ilust
roces može dkorisničkom norisničke nitezbeđuje pod. vrste niti su :
kernel) direktvanja niti i up
ndows 95/98/N
blok proces
ma tri fundamprogramska s
aka (sekcija p(stek sectionenljive. je proces korizlaznih uređe podatke gen
k procesa je ni sistem koris
iz kontrolnoginstveni idenokruženje) prrocesa; je o memorijienih datotekazetih ulazno-itanje procesa
a procesa (tasiti kao proces
moguće metodmo shvatiti kmodularnostto često dovo
tracija za pokkorišć
a se izvršavanivou za koristi realizuje sdršku za stv
: POSIX Pthrtno podržavapravljanja nitNT/2000, So
a –PCB-
mentalna memsekcija –read podataka datan) u kojoj se
risti i procesđaja. dio procneriše i korist
dio radne msti za upravljg bloka spada
ntifikator procrocesa;
i procesa; a; izlaznih resur
a.
k) je da je to s unutar procede realizacijekao podprogr, brži je i ma
odi do kolizije
kazuje razne mćenjem niti i p
a i u korisničksničke niti (usse preko biblvaranje niti,
reads, Mach Ca operativni stima u prostorlaris, Tru64 U
morijska dijelonly)u kojoj
a section) u kočuvaju privr
orske registrcesa su i podati operativni s
memorije, to janje tim procaju: cesa (PIO);
rsa;
Operativni sistem
23
program kojesa.
e paralelnog izram, a task kanji, ali i nese, pada progr
modele multipprocesa (thre
kom režimu iser threads), lioteke za radraspored izv
C-threads i Sosistem. Konkru jezgra. UNIX , BeOS
la (sekcije): se čuvaju ins
ojoj se čuvajuremeni podac
re poput brojaci koji ga opsistem.
est memorijscesom.
mi
i se izvršava.
zvršavanja prkao programstabilniji –težrama i sistema
iprocesiranjaeads and proc
i u režimu jezi na nivou jezd sa korisničvršavanja nit
olaris UI-threkretno, jezgro
S, Linux.
strukcije progu globalne proci poput para
ača naredbi, pisuju, to jest
ska struktura
rograma. . Program ko
ži za kontrolua.
kod različitihcesses)
zgra (kernel),zgra za niti ječkim nitima ti i upravljan
eads. o (kernel) izv
grama, omjenljive i ametara potpr
ulazno izlaznpodaci koji s
sa osnovnim
prikupio i ob
oji ima mogu, jer pojedin
ih OS
, potrebno je ezgra (kernel (user threadnje nitima, a
vršava oper
programa, adr
ne resurse posu neophodni
m informacija
bradio Miroslav Mihalj
ućnost rada ni podprogram
obezbediti isthreads).
d library). Ovali bez utica
racije stvaran
rese povratka
oput datotekai za upravljan
ama o proces
jišin
sa mi
stu
va aja
nja
a i
a i nje
su,
Se
“ PprP123 P- n- ndp Asiizi NTalsiKad PU
eznadar: OS i RM
“Laki” i “te
ostoje dva grocesa razlikuostoje operat. samo teš. samo lak. podržava
odjela proces svaki te dijeli ni sa laki pre može dijelolazi proces odaci procesa
Ako neka aplistemskog pozvršni kôd, pomaksimalnu
Nasuprot tomeTask ili procesli svi thread-oistemskog vre
Kontekst “lakdresnom pros
rogramski jezU M2 laki pro
eški” proce
glavna tipa pruju se uglavntivni sistemi, ške procese (Uke procese (Oaju i teške i la
sa na teške i leški proces (tkim, pristup
rocesi (niti, thliti jer ne moB i on isto sa B… Znači l
ikacija treba oziva). Svaki podatke, moduveličinu radn
e, u operativs sastoji se oovi istog procemena nego p
kog” procesa storu matično
zici, koji omoocesi su zapak
Kontr
esi
rocesa u svijnom po načinukoji podržav
UNIX) Oberon) ake procese (W
lake procese vtask) ima sopp tim djelovihreads) mogožemo unaprestavi nešto nalaki procesi im
da izvrši viproces obezb
ule za rukovannog prostora.
nim sistemimd jednog ili vcesa dijele kôprelazak sa jeuključuje sku
og procesa.
ogućavaju krekovani u teške
rolni blok pro
etu multitasku kako upravaju:
Windows)
vrši se na osnpstveni memima ima samu dijeliti meed znati koji a stek, A je zmaju sopstve
še funkcija sbeđuje resursenje objektima
ma Windows više thread-ovôd i podatke uednog “teškogup procesors
eiranje lakih pe procese, ko
Operativni sistem
24
ocesa PCB: s
kinga - threavljaju memori
novu toga, kamorijski prostmo dati proceemorijski pro proces koriszavršio svoj
eni stek a mog
simultano, dije potrebne zaa - hendlere,
osnovna jedva (jedan je mu memoriji, pg” procesa naskih registara
procesa: Javaompajler dijel
mi
struktura i ele
ads ili “laki” ijom.
ako koriste metor za kod, ges. ostor za kod,sti stek: procrad i sad su gu dijeliti kod
jeli se u višea izvršavanje penvironment
dinica izvršavmain). Svaki pa prelazak sa drugi. a, kernel stek
a, Modula-2, i vrijem e izm
ementi
procesi i “te
emoriju (kojeglobalne prom
, globalne pres A stavi nemu potrebni
d, globalne pr
e procesa (npprograma - impromjenljive
vanja je threaod njih ima ra jednog na d
, thread envi
Concurrent Pmeđu više pro
prikupio i ob
eški” procesi
e dijelove memjenljive, st
romjenljive iešto na stek podaci sa st
romjenljive i
pr. korišćenjema virtualni ae, bazni priori
ad - nit ili torazličit stek idrugi thread o
ironment blo
Pascal, Ada, iocesa.
bradio Miroslav Mihalj
. Ova dva tip
morije): ek i heap koj
i heap. Stek i nastavlja rateka, a tamo heap.
em UNIX foadresni prostoitet, minimaln
ok izvršavanji status mašinoduzima man
k i user stek
itd.
jišin
pa
ju
se ad, su
ork or, nu
ja. ne, nje
k u
Se
OP
• pr• d• prse
Um
PmbprIzpr
eznadar: OS i RM
Osnovna sroces se mož
Novi (new) ripravan. Spreman -pobije pravo kAktivan – (rebacuje u ste zapamti tren
STA
U složenijim memorije na e
START
roces koji je može da nasta
lokira, u merelazi iz stanjz stanja suspereći samo exp
stanja prože nalaziti u je
– stanje u k
pripravan (reakorištenja pro(run) označavanje pripravanutno stanje p
REAART
OSNOVSTANJ
Osnovna
OS se pojaeksternu. U O
READY
OSNOVNASTANJA
SW-READY
Slika 2 - St
u stanju susavi sa radom eđuvremenu sja suspendovendovan i bloplicitno, tj. za
ocesa ednom od sta
kojem se proc
ady) – označocesora, proceva proces kojan, a ukoliko popunjavanje
RUN
ADY
VNAJA
a stanja proce
avljuju još dvOM ostaje sam
RUN
WAIT
SW-WA
tanja procesa
spendovan i b(npr. proces se suspendiraan i blokiran okiran u stanahtjevom kor
anja:
ces nalazi na
ava proces kes prelazi u stji se trenutnoproces mora
em PCB-a).
WAIT
esa
va stanja. Sumo PCB proc
STOP
IT
a
blokiran prelapošalje zahtea, pa postajeu stanje susp
nje blokiran i risnika.
Operativni sistem
25
akon što je st
koji se nalazi tanje aktivan.o izvršava. U
obaviti neku
STOP
U(odoUprIzkvIznedapr
uspendovanjecesa.
P
Na
Proresui da
azi u stanje sev skeneru dae suspendovapendovan i sp
iz stanja sus
mi
tvoren, kreira
u redu za iz.
Ukoliko OS pu I/O operacij
stanju RUNonaj koji se odijelio CPU) stanjima RErocesa. z stanja RUNvanta vremenz stanja RUNeki resurs koja dobije) ili roces završi p
e procesa po
taj način dob
• proces jdo suspend• proces jdo suspend
oces koji je surse, oslobađalje proces.
suspendovan a skenira slikuan i blokiranpreman.) spendovan i s
a se PCB i p
zvršavanje. N
rekine aktivaju, tada ide u
N se nalazi utrenutno izv
). EADY i WA
N u READYna (tj. po prekN u WAIT pi je u tom treako mora da
posao.
odrazumeva
bijamo još dva
e suspendovovanja u stane suspendovovanja u stan
suspendovan,đaju se resurs
i spreman, au, čeka da sk, kada skene
spreman u sta
prikupio i ob
proces ide u
Nakon nekog
an proces tadu stanje čeka.
uvijek samovršava - kom
AIT se može
Y proces prekidu od časovproces prelaz
enutku zauzeta sačeka da m
prebacivanje
a stanja:
van i spremanju spreman) van i blokiranju blokiran).
, prestaje dasi koje je zaou
ako postaje spkener završi ser završi sken
anje spreman
bradio Miroslav Mihalj
sljedeće stan
vremena, ka
da se taj proc(U oba sluča
jedan proceme je dispeče
e nalaziti viš
lazi po isteknika). zi ako zatražt (koji ne možmu neki drug
e iz operativn
an (ako je doš
n (ako je doš
se takmiči uzeo, ali osta
preman, tj. aksa radom, pa niranje, proc
n procesi mog
jišin
nje
da
ces aja
es er
še
ku
ži že gi
ne
šlo
šlo
za aje
ko se
ces
gu
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
26
Operacije nad procesima Operativni sistem može da izvrši sledeće operacije nad procesima:
o kreiranje procesa o uništavanje procesa o izrada veza proces – proces roditelj o promjena stanja procesa o promjena prioriteta procesa.
Kreiranje procesa Za svaki program odnosno posao OS kreira bar jedan proces. U okviru tog procesa može se realizovati niz radnji, npr. editovanje, prevođenje, povezivanje i izvršenje (za vrijem e kartica se radilo slično tome). Povoljnije rješenje je da se navedene faze kreiraju kao posebni procesi, odnosno editovanje, prevođenje, eventualno povezivanje i obavezno izvršenje. Svi prethodno pomenuti procesi su kreirani od strane OS. Korisnik ne mora uopšte da zna da je za njegov program formiran bilo koji proces. Međutim, za složenije programe se pokazuje da je izuzetno korisno da se razbiju na dijelove i da se za te dijelove formiraju procesi. Programski jezici imaju sredstva za kreiranje procesa koja stoje na raspolaganju programeru (npr. funkcije CreateProcess, CreateThread u C++) Proces u toku svog izvršavanja može, odgovaraqjućim sistemskim pozivom (npr. fork u UNIX-u), da kreira nove procese. Proces koji proizvodi nove procese naziva se roditeljski proces (parent process), dok se tako dobijeni proces naziva dijete proces (child process) i može i sam da kreira svoje naslednike. Tako nastaje stablo procesa. Odnosi proces roditelj – proces dijete mogu se opisati na osnovu načina dijeljenja resursa i načina izvršavanja. Postoje sledeći načini dijeljenja resursa: • Roditelji i djeca procesi dijele sve resurse • Djeca procesi dijele podskup roditeljskih resursa • Roditelji i djeca ne dijele resurse. Kao što smo ranije rekli, svaki proces za svoj rad koristi različite resurse – procesorske registre, memorijski prostor za kod, podatke i stek, datoteke i ulazno/izlazne uređaje. Specijalno je osejtljiv memorijski adresni prostor koji se između procesa roditelja i djece može raspodjeljivati na sljedeće načine: • Dijete duplikat roditelja • Dijete ima program učitan u sebe Prema načinu izvršavanja, odnos između procesa roditelja i djece mogu biti sledeći: • Roditelji i djeca nezavisno i konkurentno rade • Roditelji se blokiraju i čekaju da djeca završe sa radom. Završetak procesa Proces završava svoju aktivnost kada izvrši poslednju instrukciju svog koda i traži od OS da ga završi tako što mu upućuje sistemski poziv exit. Pri tome, proces dete može da vrati izlazne podatke roditeljskom procesu preko sistmskog poziva wait Operativni sistem zatim dealocira resurse pridružene procesu i tako proces na tzv. normalan način završava sa radom. Proces se može završiti i nasilno. Procesi roditelji mogu da prekinu izvršavanje procesa djece koju su kreirali korišćenjem sistemskog poziva abort iz jednog od sledećih razloga: • Djeca prevazilaze dodijeljene resurse • Task pridružen dijetetu više nije potreban • Roditelji završavaju rad Operativni sistemi ne dozvoljava dijetetu da nastavi sa radom, ako je roditelj završio i nasilno uništavaju sve procese potomke što se naziva kaskadno završavanje (cascade termination).
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
27
Odnosi među procesima Procesi mogu biti međusobno nezavisni ili zavisni. Ako se procesi izvršavaju uporedo i nezavisno onda nema interakcije niti razmjene informacija između njih, nasuprot kooperativnim procesima koji moraju da razmenjuju informacije ili da se međusobno sinhronizuju - dijele stanje (podatke). U multiprocesnom OS izolovanih procesa praktično nema – svi oni dijele resurse sistema (memoriju, fajlove, I/O uređaje) Kod nezavisnih procesa rezultat izvršavanja procesa ne zavisi od redosljeda izvršavanja i preplitanja sa drugim nezavisnim procesima – ne zavisi od raspoređivanja. Kod procesa koji dijele podatke rezultat izvršavanja zavisi od redosleda izvršavanja i preplitanja – dakle, zavisi od raspoređivanja. Odnose među procesima koje ćemo analizirati možemo svrstati u tri osnovne grupe:
• međusobno isključenje procesa (mutual exclusion) • sinhronizacija procesa (synchronization) • uzajamno blokiranje - zastoj (deadlock)
Međusobno isključenje procesa Međusobno isključenje procesa je takav odnos među procesima koji ne dopušta istovremeno izvođenje dva procesa u pojedinim njihovim djelovima (kritičnim sekcijama), dok se u ostalim djelovima procesi mogu bez problema uporedo izvršavati. U ovakav odnos dolaze nezavisni procesi koji treba da koriste neki nedjeljiv resurs, npr. datoteku ili područje u memoriji u koje oba mogu da upisuju podatke. Na primjer, pretpostavimo da procesi p1 i p2 rade u nekom sistemu za rezervaciju avionskih karata. Pri tome bi rezervaciji karate odgovarao upis u neko memorijsko područje R. Onaj proces koji prvi dobije resurs R mora izvršiti rezervaciju, odnosno upisati rezervaciju u području R, ili ako je neki proces već ranije izvršio rezervaciju i upisao svoje podatke u područje R, proces mora odustati od rezervacije. Zbog toga, svaki proces kada pristupi u područje R mora pre rezvisanja provjeriti da li je područje slobodno i ako jeste, upisati svoje podatke. Problem može nastati ako proveru da li je područje R slobodno proces izvrši nakon što je istu proveru izvršio, a pre no što je izvršio rezervaciju neki drugi proces. Da bi se ovo sprečilo, od trenutka kada neki proces P krene u proveru, mora se zabraniti pristup području R drugim procesima sve dok proces P ne završi sa rezervacijom. Ovaj dio koda u kome neki proces koristi nedjeljivi resurs naziva se kritična sekcija. OS mora da posjeduje mehanizam koji će vremenski uskladiti izvođenje procesa i pri svakom korišćenju nedjeljivog resursa provoditi međusobno isključivanje procesa. Ukoliko procesi istovremeno ulaze u svje kritične sekcije treba takođe provesti međusobno isključenje, dakle propustiti samo jedan proces. Sinhronizacija procesa Uopšteno gledano, procesi unutar računarskog sistema teku asinhrono. Međutim, u pojedinim slučajevima mogu postojati djelovi procesa, pa i čitavi procesi čiji rad neophodno uskladiti. To usklađivanje tokova dvaju ili više procesa međusobno nazivamo sinhronizacijom procesa. Sinhronizacija procesa sastoji se u tome da se djelovi procesa koji treba da budu sinhronizovani odvijaju prema određenim pravilima, odnosno prema određenom redosledu. Taj redosled može biti od slučaja do slučaja različit, pa imamo različite vidove sinhronizacije procesa. Sinhronizacija nije jed noznačan odnos kao međusobno isključenje. Uzajmno blokiranje procesa – zastoj Treća vrsta odnosa je tzv. deadlock - zastoj. Ovakav odnos je nepoželjan u sistemu i treba ga, ako je moguće sprečiti ili, ako se dogodi, intervencijom operativnog sistema razrešiti. Do međusobnog blokiranja dolazi zbog konkurisanja za resure računarskog sistema ili zbog čekanja na događaj koji ne može nastupiti. Raspodjela poslova Mehanizam raspodjele poslova OS omogućava predaju upravljanja između taskova. Multitasking se izvršava između dva ili više procesa.
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
28
Konkurentni procesi Nit (thread) je entitet koji se izvršava koristeći program i druge resurse od pridruženog procesa. Svaka nit je pridružena nekom procesu. Jednom procesu se može pridružiti više niti. Rad sa više niti (multithreading) se odnosi na mogućnost operativnog sistema da podrži izvršavanje više niti u okviru jednog procesa. Tradicionalan pristup je izvršavanje jedne niti po procesu. Primjeri operativnih sistema sa takvim pristupom su MS-DOS i više verzija UNIX-a. Većina savremenih operativnih sistema podržava niti. Na primjer, sve novije verzije operativnog sistema Windows i Solaris podržavaju rad sa nitima. Takođe, savremeni programski jezici kao što su Ada i Java podržavaju niti. Paralelno (uporedno, istovremeno, konkurentno) izvršavanje više procesa je moguće samo ako se računarski sistem sastoji od više centralnih procesora. Za takav računarski sistem se kaže da je višeprocesorski. Na sistemu sa jednim procesorom moguće je samo kvaziparalelno izvršavanje procesa. U bilo kom trenutku izvršava se samo jedan proces. Primjer kvaziparalelnih procesa R1, R2 i R3 je prikazan na slici dole.
Primjer paralelnih procesa R1, R2 i R3 je dat na slici dole desno. Pretpostavljeno je da sistem ima 3 procesora i da se na svakom od njih izvršava samo po jedan proces.
Slika 1. Slika 2. Jedna nit može da zahtjeva servis neke druge niti. Tada ta nit mora da sačeka da se pozvani servis završi. Potreban je mehanizam sinhronizacije jedne niti sa drugom niti ili sa hardverom. To se može uraditi pomoću signala koji ima značenje da je pozvani dio posla završen. Konkurentne niti su niti koje se izvršavaju u isto vrijeme. Konkurentne niti mogu da se takmiče za ekskluzivno korišćenje resursa. Niti mogu da postavljaju istovremene zahtjeve za istim resursom ili istim servisom. Operativni sistem mora da obezbijedi interakciju između konkurentnih niti. Kritična sekcija je segment koda čije instrukcije mogu da utiču na druge niti. Kada jedna nit izvršava kritičnu sekciju ni jedna druga nit ne smije da izvršava tu istu kritičnu sekciju.
Slika 3.
Teškoće koje nastaju u softverskoj realizaciji algoritama za upravljanje kritičnim sekcijama su:
• stalno testiranje promjenljivih ili stanja čekanja, što troši procesorsko vrijeme, • svi detalji implementacije direktno zavise od programera i mogućnost greške je uvijek prisutna, • ne postoji način da se nametne protokol koji zavisi od kooperacije, programer može da izostavi neki dio, • ovi protokoli su suviše komplikovani.
Problem upravljanja konkurentnim procesima Za upravljanje konkurentnim procesima potrebno je da:
• Metod za dijeljenje vremena mora da bude implementiran tako da omogući svakom od kreiranih procesa da dobije pristup sistemu. Ovaj metod uključuje mogućnost prekidanja onih procesa koji ne ustupaju procesor dovoljno. • Proces i sistemski resursi moraju da imaju zaštitu i moraju da budu zaštićeni međusobno. Veličina memorije koju dati proces može da koristi mora da bude ograničena za bilo koji proces, kao i operacije koje može da izvršava na uređajima kao što su diskovi. • Sistem ima ugrađene mehanizme unutar jezgra za prevenciju potpunog zastoja između procesa.
Se
P B P DF
N
ZslTpZnjeBkUfuUskdZSAKPNpZraVnpr
eznadar: OS i RM
Pojam, stBilo koji opera
Pojam fajla
Datoteka, fajl Fajl (file) znač
Naglasimo dat kao lo koo fi
Za datoteku logova.
Tip podataka podatka, kao i
Za razliku od akon isključeedino otkazom
Bitne karakteorišćenja. Na
Upisivanje logunkcija sistem
U opštem slukladišti. Datoatoteke može
Za pojam fajlaadržaj fajla o
Atributi fajlaKontrolni blok
rimjer, indekNajvažniji atr
odataka, itd. Zaštita datoteačunaru i da t
Važno je i spračina: hardvromjene vlaž
trukturaativni sistem
a - datotek
(file) predstači papir, doku
fascikle.
toteke se mogogička sliku
fizička slika use može reć
podrazumijevoperacije kojpodataka ko
enja napajanjm uređaja na ersitike sistema jednom disgičke datotek
ma za upravljučaju veličinaoteka nije uve da bude razba su vezani saobrazuju korisa se čuvaju u k datoteke na
ksni čvor u sisributi datotek
eka je važna tim informaciriječiti da ne
verske greškežnosti, softver
a, upravtreba da omo
ka (file)
avlja osnovnuument unutar
gu posmatratikoja prikazuj
u kojoj se dati i da je to a
va skup vrijeoje mogu da soji se nalaze ja ili ponovnkojima se da
ma datoteka ku se može nke na momoanje datoteka
a logičkog slvijek memorisbacan u više badržaj i atribusnički podacideskriptoru fajčešće je dirstemu datotekke su: ime, v
osobina OS ijama mogu ddođe do gub
e, otkazi naprske greške, v
vljanje i zogući jednosta
u organizacionr Pojam fajl
izlaznim uPod fajlom(disk, cd, Datoteke svojim popovezanihZa operatmemoriji
i na dva načinje datoteku katoteka sastoji apstraktni ti
dnosti koje pe izvrše nad pu operativno
nog uključenjtoteke nalazesu: struktur
nalaziti više rorijski uređajama. loga je različsana kao cjelblokova koji
uti. i. fajla poznatimrektorijumskaka ext2). veličina, datu
koja omogućda pristupe sabljenja podatapajanja, otkavandalizam dr
Operativni sistem
29
zaštita faavno organiz
nu cjelinu, u kl je uveden zbuređajima kojm nazivamousb) koji sad
omogućuju kotrebama. Zah informacijativni sistem,i.
na: kao redove inf
iz reda informip podataka
podatak možepodatkom. oj memoriji, a sistema. Po
e. ra, imenovanrazličitih sisj je jedna od
čita od veličilina na jednonisu susjedni
m pod imenoa struktura, a
um i vrijeme
ćava da različamo vlasnici taka. Datotekeazi glava disrugih korisni
mi
ajlova zovanje i pretr
koju smještambog potrebe pji omogućavaimenovani p
drži određene
korisnicima da korisnika, d, tj logičku cj to je objek
formacijskih macionih blokoji OS def
e da ima, mem
podaci u datodaci koji se
nje, zaštita, tema datotekd osnovnih f
ine fizičkog om mjestu nai, odnosno m
m kontrolni bali se može i
e posljednjeg
čiti korisnici tih podataka e ili dijelovi ska, prašina, ka, prisustvo
raživanje pod
mo podatke. povezivanja paju memorisaprostor na minformacije.
da organizujudatoteka (filejelinu sa značkat koji se
cjelina kova iste velifiniše i impl
morijski pros
toteci su pose čuvaju u da
fizička orgaka. funkcija oper
sloga na urea disku, već kože doći do f
blok datotekeimplementira
g ažuriranja,
skladište svoji autorizovandatoteka mogvelike tempjakih magnet
prikupio i ob
dataka na raču
programa sa uanje podataka
memorijskom
u podatke u e) predstavljačenjem. čuva u sek
ičine lementira ka
stor potreban
stojani, tj. osatotekama se
anizacija dat
rativnih siste
eđaju na komkod realnih sfragmentacije
e (file controati i kao zase
vlasnik, do
je informacijni korisnici. gu da budu uperaturne proetnih polja, itd
bradio Miroslav Mihalj
unaru.
ulazno-a. medijumu
skladu sa a kolekciju
kundarnoj
ao niz logičk
n za smiještan
taju sačuvanimogu izgub
oteka i nači
ema, tj. glavn
me se datoteksistema sadrže podataka.
ol block, FCBebna tabela (n
zvole, lokaci
e na djeljeno
uništeni na viomjene, velikd.
jišin
kih
nje
i i biti
ini
na
ka žaj
B). na
ija
om
iše ke
Se
F FFTm Ujefip8UprstetIzn DpUpr
Tipnast(extDOU sekstsist
Izilek
eznadar: OS i RM
Format ili
ormat ili tip dormati su neo
Takve ograničmoraju intepreU početnom ednostanan - irme strogo čozadini. Prvi 0-tih godina n
U posljednje rograma i prtandarda. U ntablirali. U prz razloga uštaprimjer Ope
Datoteke se nodacima, koj
U većini operreliminarno d
datoteke stavka imentension), što
OS/Windows.sledećoj tabeltenzija koje emima.
z komandnogli izvršna datokstenzije i otv
i tipovi da
datoteke odreophodni zbogčene, linearneetirati putem kstadiju računskupocjenostčuvale format koraci u pranpr. WAV fovrijeme sve roizvodjača nekim oblastreostalima je tede memorien Document
najjednostavne mogu biti t
rativnih sistemda odredi vrst
se može rena datotekje slučaj u o
. li navedene s
se koriste
g intepretera Uoteka). Međuvara datoteku
atoteka
eđuje na koji g činjenice dae strukture nekonvencija. Snara, komplet memorije nate kao poslov
avcu slobodneormat za audi
se više kor- XML. Pretima (npr. prrazvoj i prim
ije, XML daXML za svo
nije mogu poekstualne i bima, posle izrtu datoteke i d
alizovati koke tj eksoperativnim s
su neke od zu ovim op
UNIX ne preputim, Linux u u pridruženom
način se vrši a su datoteke e mogu jasno Sve konvencijksni i kompra čvrstom disvne tajne. Rae razmjene poo datoteke. risti metoda duslov za k
rikaz vektorskmjena ovih i slatoteke su čeoje datoteke.
dijeliti na izvinarne. rade, datotekda je poveže
orišćenjem stenzijom sistemima
značajnijih perativnim
poznaje ekstegrafičkom ok
m aplikacijom
Operativni sistem
30
memorisanjesa stajališta oopisati različ
ije za jednu vrimirani, takosku. Dodatni azmjena podaodataka izme
koja omogukorištenje ovekih grafika iličnih standaresto komprim
zvršne datotek
ka osim imens nekom apli
Kod Unixnekim ka
Ova metosistemimadatoteke o
enziju (datotekruženju prel
m.
mi
e računarskih operativnog sčite vrste pod
vrstu datotekaozvani binarnrazlog predst
ataka sličnih eđu različitih
ućava memore tehnologijeili matematičrda u toku.
mirane (npr.
ke (tj preved
na dobija i tipikacijom.
xolikih OS tarakterističn
oda zadavanja – magični bodređuju njen
eka sa ekstenzliminarno odr
podataka. sistema jednodataka što zna
označavaju sni formati sutavljala je i čprograma iz programa sač
risanje podate je upotrebakih formula)
ZIP). Slobod
dene i poveza
p. Pomoću ti
tip datoteke sim zapisom.
ja tipa primbrojevi koji s
n tip.
zijom txt bez ređuje vrstu d
prikupio i ob
o-dimenzionaači da se komse formatom.u bili standarčinjenica da sz različitih firčinjavali su R
taka koje je a internacion) slični stand
dni OpenOff
ane program
ipa, operativn
se alternativn
menjuje se nase nalaze na s
problema modatoteke na os
bradio Miroslav Mihalj
lni redovi bajmpleksni poda
rdni. Razlog u komercijalnrmi je stajalaRIFF formati
nezavisno onalno priznatdardi su se ve
fice.org koris
e) i datoteke
ni sistem mo
no može zad
a UNIX/Linsamom počet
ože biti arhivsnovu
jišin
jta aci
je ne
a u iz
od tih ec
sti
e s
že
dati
nux tku
va
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
31
Prepoznavanje i otvaranje fajla kod Unixa Na UNIX sistemima postoji nekoliko osnovnih tipova datoteka:
• tekstualne datoteke - ASCII (neformatiran tekst), English text (tekst sa interpunkcijskim karakterima) • izvršni shell programi. Ovaj tip datoteka se može pro čitati korišćenjem programa za pregled sadržaja tekstualnih datoteka (cat, less) ilimodifikovati pomo ću editora teksta (kao što su vi i joe); • izvršne (binarne) datoteke; • datoteke u koje su smješteni podaci (na primjer, Open Office Writer dokument). Ove datoteke mogu se pročitati korišćenjem programa iz koga su kreirane i programakoji je kompatibilan sa tim formatom datoteka (na primjer, Open Office može daotvori dokumente kreirane Microsoft Office paketom).
Kako bi bez otvaranja datoteke u nekom editoru (koji inače služe samo za pregled tekstualnih datoteka) saznali o kakavoj se datoteci radi, možemo se poslužiti naredbom file: $ file /bin/ps Prilikom određivanja tipa datoteke komanda file izvršava slede će testove:
• Test specijalnih datoteka se na osnovu sistemskog poziva stat() određuje da li jedatoteka regularna ili specijalna (odnosno node, simbolički link, imenovani pipe). Ukolikodatoteka prođe ovaj test na ekranu se prikazuje tip datoteke, a dalje izvršenje komande seobustavlja. • Test magičnih brojeva određuje se programski paket kojim je datoteka kreirana. Svaki program prilikom kreiranja datoteka upisuje neke kontrolne informacije (overhead) koje ovaj test posmatra kao identifikator tipa datoteke, odnosno magični broj. Bilo kojadatoteka sa nepromenjenim identifikatorom, koji se nalazi na fiksnom ofsetu od početka datoteke, može biti opisana na ovaj na čin. Magični brojevi se smještaju u datoteke/usr/share/magic.mgc i /usr/share/magic i prilikom izvršavanja ovog testa redom traže nafiksnom ofsetu u datoteci. Ukoliko se određeni magi čni broj poklopi sa magi čnim brojemdatoteke, program file prekida dalje izvršenje i na ekranu ispisuje informaciju o programukojim je datoteka kreirana.Ukoliko datoteka ne prođe ni test magi čnih brojeva, program file će pokušati da odredi dali je datoteka tekstualna i u tom smislu ćenajpre izvršiti test seta karaktera. • Test seta karaktera (character settest). U datoteci postoje tri tipa karaktera:
normalni karakteri (karakteri koji mogu biti prikazani na ekranu), kontrolni karakteri, kao što su space i tab (karakteri koji ne mogu biti prikazani naekranu, ali se
pojavljuju u običnim tekstualnim datotekama), binarni karakteri (karakteri koji se ne mogu prikazati direktno na ekranu, i ne pojavljuju se u običnim
tekstualnim datotekama • Karakter set (character set) je jednostavna deklaracija normalnih, kontrolnih i binarnihkaraktera. Na osnovu karaktera koji se u datoteci pojavljuju komanda file određuje karakter set kome datoteka pripada. Ukoliko datoteka pro đe ovaj test komanda file naekranu prikazuje ime karakter seta datoteke (ASCII, ISO-8859-x, UTF-8, UTF-16,EBCDIC). • Nakon toga se izvršava jezički test (language test) kojim će komanda file pokušati da odredi programski jezik u kome je datoteka napisana - u datoteci se traženizovi karaktera koji su karakteristi čni za određene programske jezike. Na primjer, ukolikose u datoteci pojavi riječ keyword.br, to znači da se ispitivanje vrši nad troff(1) ulaznom datotekom, dok riječ struct nagoveštava da se radi o C programu. U slučaju da program file jezičkim testom ne može da odredi programski jezik, datoteka se smatra tekstualnom
Se
L N1)2)3) S
Ssi
K L Utj
UprdDstje
DgSsvRjeD
eznadar: OS i RM
Logički i f
Najvažnije akt) planir) dodjel) uprav
istem za upra• • •
istem za upristem za upra
Komponente s
Logička st
U najjednostav bajtova.
U jednostavnijromjenljive dokumenti.
Datoteka sa ltrukture, nprednostavan te
Datoteke se godina studija kupu datotekvih datoteka k
Radi razlikovednodjelna imDirektorijum
fizički sist
tivnosti operaranje dodjele la slobodne sljanje slobod
avljanje podaidentifikovkorišćenjeopis kontr
ravljanje podaavljanje podac
sistema za up
truktura i
vnijem slučaj
ije logičke stdužine. Primj
logičkom strr umetanjemekstualni doku
grupišu u skuistog smjera
ka pristaje nakoje su obuhv
vanja direktormena, jer nemmi
tem za up
ativnog sistemsekundarne m
sekundarne mdnim memorij
acima ima sljevanje i locirane direktorijumrole pristupa k
acima upravljcima.
pravljanje pod
i organiza
ju, datoteka n
trukture spadmjer zapisa je
rukturom možm kontrolnih
ument.
upove datotekpripadaju jed
aziv direktorijvaćene pomerijuma, svak
ma potrebe za
pravljanje
ma u dijelu zamemorije,
memorije, skim prostor
edeće funkcijnje izabranih
ma za opisivankorisniku u dj
lja radom sek
dacima
Pointoborg NaZapreZapodrDrNakoU/op DrčitmeKaup
acija dato
nema svoju lo
aju strukturee red u tekstu
že se simulirznakova Lin
ka. Na primjdnom skupu djum (directornutim skupom
ki od njih poklasifikacijom
Operativni sistem
32
e datoteka
a upravljanje
rom na sekund
e: h datoteka, nje lokacije s
djeljenom sist
kundarne mem
ostoje dva odterfejs ka
buhvata datoganizaciju po
a slici su prikadatak OS je eko datoteka a svaki uređaotreban je poriver). rajver uređajaamjenjen je ontrolerom ili/I operacije nperacijom.
rajver diska tajućim glavehaničkim dada drajver dpisuje u regist
oteka (FIL
ogičku struktu
e zapisa, pri čualnoj datote
rati umetanjne Feed (LF
er, prirodno datoteka. ry, folder), akm. osjeduje imem direktoriju
mi
ama
podacima na
darnoj memo
vih datoteka emu, rad sa b
morije i mož
dvojena aspekrajnjem ko
oteke i direodataka.
kazane kompoda preslika na fizički ure
aj koji se poseban progra
a je ili dio Oza direktn
i kanalom. Dna uređaju i p
pristupa sevama diskaijelovima koiska zna kojutre kontrolera
LE SYST
uru i predstav
čemu jedan zeci. Složenije
jem kontrolnF) i Carriag
je da datotek
ko se prihvati
e koje bira kuma (pogotov
a sekundarnoj
oriji.
i njihovih atrblokovima rad
že se dekomp
ekta sistema orisniku i ektorijume,
onente sistempodatke sa keđaj ili više fivezuje sa da
am koji se zo
S ili je raspou komunika
Drajver uređajprocesiuranje
ktorima, sta, nosačima
oji obezbjeđuu komandu tra diska.
TEM)
vljena je kao k
zapis u datote strukture pr
ih znakova uge Return (C
ke sa podaci
i gledište da
korisnik. Za o ne po njiho
prikupio i ob
j memoriji su
ributa, di pristupa da
ponovati na l
za upravljaimplementaa implemen
ma za upravljakojima radi kfizičkih uređajatim računarsove drajver u
oloživ operatiaciju sa dataja je odgovoe završetka z
azama, cilindglava i
uju da disk reba proslijed
kolekcija reči
teci može bitredstavljaju f
u datoteke bCR) u tekst,
ima o studen
skup datotek
direktorijumovom sadržaju
bradio Miroslav Mihalj
u:
atotekama.
ogički i fizič
anje podacimcija. Interfe
ntacija fizičk
anje podacimakrajnji korisnja. skim sistemouređaja (devic
ivnom sistemtim uređajem
oran pokretanzahtjeva za U
drima, upisnsvim drugiispravno rad
diti disku, on
i,
ti fiksne ili formatirani
bez logičke dobijamo
ntima pojedin
ka sadrži imen
me su dovoljnu).
jišin
čki
ma: ejs ku
a. nik
om ce
mu. m, nje U/I
o-im di. je
nih
na
na
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
33
Direktorijum ili katalog je struktura podataka koja sadrži listu datoteka i poddirektorijuma. Direktorijum omogućava automatsko vođenje evidencije o datotekama i preslikavanje između imena datoteka i samih datoteka. I sam direktorijum je datoteka. Direktorijum je posebna datoteka koja sadrži jednu ili više datoteka. Osnovna razlika u odnosu na korisničke datoteke je da podaci unutar direktorijuma nisu korisnički podaci, već sistemski podaci o sistemu datoteka. Direktorijum sadrži informacije o atributima, lokaciji i vlasniku datoteke. Direktorijumi uspostavljaju logičku organizaciju sistema datoteka koja je nezavisna od organizacije uređaja. Za pristup datotekama koje se nalaze u direktorijumima koriste se sistemski pozivi koji odgovaraju osnovnim operacijama za rad sa datotekama. Datotekama se može pristupati pomoću apsolutne staze i pomoću relativne staze. Datoteke na različitim putanjama mogu imati isto ime. Diskovi mogu da sadrže na stotine hiljada ili više miliona datoteka. Direktorijum obezbjeđuje sistematičan način za imenovanje i lociranje tih datoteka. Dio sistema za upravljanje datotekama omogućava administraciju organizacije datoteka koje se mogu nalaziti na više uređaja uključujući uređaj koji se samo povrijemeno povezuju na dati sistem. Postoji nekoliko načina za izbor strukture podataka kojom se predstavlja sadržaj direktorijuma. Prva mogućnost je da direktorijum podržava linearni prostor imena, kao što je prikazano na slici 2.
Slika 2. Linearni prostor imena
Slika 3. Hijerarhijski prostor imena sistemi direktorijuma DOS/Windows
Druga mogućnost je hijerarhijski prostor imena, kao što je prikazano na slici 3. Najjednostavniji oblik hijerarhijskog direktorijuma je struktura podataka u obliku stabla. Na svaki direktorijum sem korijenog direktorijuma i na svaku datoteku pokazuje tačno jedan direktorijum. Direktorijumi koji imaju hijerarhijsku strukturu u obliku stabla se često primjenjuju u različitim OS. Ovakav način omogućava da datoteke sa istim imenom mogu da se pojavljuju u različitim direktorijumima.
Slika 4. Aciklični graf
Treći mogući način za strukturu podataka koja se koristi kao sadržaj direktorijuma je aciklični graf, kao što je pokazano na slici 4. Grafovi u opštem slučaju mogu biti ciklični i aciklični. Kod cikličnih grafova postoji zatvorena putanja. Kod acikličnih grafova to nije slučaj.
Označavanje datoteka Svaka datoteka posjeduje ime koje bira korisnik. Poželjno je da ime datoteke ukazuje na njen konkretan sadržaj, ali i na vrstu njenog sadržaja (radi klasifikacije datoteka po njihovom sadržaju). Zato su imena datoteka dvodijelna, tako da prvi dio imena datoteke označava njen sadržaj, a drugi dio označava vrstu njenog sadržaja, odnosno njen tip. Ova dva dijela imena datoteke obično razdvaja tačka. Realizacija sistema datoteka Prilikom realizacije sistema datoteka, definiše se:
• Logička struktura sistema datoteka – logička struktura je način predstavljanja sistema datoteka korisniku; pod ovim se podrazumjeva definicija datoteka, direktorijuma, njihovih atributa i operacija dozvoljenih nad njima tj. sve što predstavlja logičku sliku sistema datoteka. • Fizička struktura sistema datoteka – čine je strukture podataka na disku koje služe za skladištenje podatakač u ove strukture spadaju, npr blokovi (UNIX, Linux) i klasteri (clusters (sistem datoteka FAT)) • Preslikavanje logičke strukture sistema datoteka u fizičku – pod ovim preslikavanjem podrazumjeva se
Se
PP Om SSsi Npp M(D
Ninb PobO BvJSsu
eznadar: OS i RM
uspostavljodređuje d
o pravilu, sisrimjer, sa dat
Organizamemorije
istemi datotevaki disk se mistemi datotek
Nulti sektor diarticija koja articija je ozn
MBR je nezavDOS, Window
Slika
Nakon startovnformacije u oot blok u op
rogram iz bobzira da li se
Osim boot blo
Bitan dio parteličina sistemezgro operat obzirom dauperbloka na
janje veze izmda se sadržaj
stem datotekatotekama – po
acija i fize (diskov
eka se skladištmože podijelka.
iska se nazivase nalazi na načena kao ak
visan od operws, Unix...) i
a 1. Primjer s
vanja računaglavnom starperativnu me
oot bloka punna njoj nalaz
oka struktur
ticije je i supma datoteka, btivnog sistema superblok disk za sluča
među sadržajdatoteke myd
a se realizujeotrebno je pre
zička strva) te na diskovimiti na jednu il
a glavni startnkraju glavno
ktivna.
rativnog siste vrsti fajl sist
strukture siste
ara BIOS (Brtnom slogu lmoriju.
ni operativni zi operativni sra particije d
perblok koji broj slobodnih
ma održava ssadrži kritič
aj da otkaže d
ja konkretne doc.txt iz dire
e u više nivoeći put od im
ruktura
ma ili nekomli više particij
ni slog (Mastog startnog sl
ema, dok je Btema (FAT, N
ema datoteka
asic Input-Olocira se akti
sistem koji ssistem koji sediska zavisi o
sadrži ključnh blokova u s
superblok u one podatke
dio diska na k
Operativni sistem
34
datoteke ili dektorijuma c:
oa, tj slojeva mena datoteke
sistema
m drugom medja, kao na slic
ter Boot Recologa sadrži po
BOOT SECTNTFS, FreeB
Output Systemivna particija
se nalazi na e može boot-iod sistema do
ne parametre sistemu datotoperativnoj neophodne z
kome je upisa
mi
direktorijuma\1, nalazi u b
(layers). Pri do konkretno
datoteka
dijumu sekunci 1, pri čemu
ord, MBR) i kočetnu i krajn
TOR aktivne BSD...)
m) čita i izvna disku i uč
aktivnoj partirati ili ne. o sistema.
o sistemu dateka i drugi admemoriji i pza rad sisteman superblok.
a i struktura nlokovima 15,
radu sa objekog fizičkog b
a kod se
ndarne memoru na particijam
koristi se za snju adresu sv
particije zavi
vršava glavnčitava se u nj
ticiji. Svaka p
atoteka kao šdministrativn
periodično gama, operativn
prikupio i ob
na disku; npr,16 i 25...
ktima sistembloka na disku
kundarn
rije. ma mogu da
startovanje ravake particije
isan o operat
ni startni slonjen prvi blok
particija ima
što su: tip sisni podaci. a upisuje na ni sistem rep
bradio Miroslav Mihalj
r, preslikavan
ma datoteka –nu.
ne
budu nezavis
ačunara. Tabee i jedna od t
tivnom sistem
og. Na osnovk koji se naziv
a boot blok b
stema datotek
disk. plikuje sadrž
jišin
nje
na
sni
ela tih
mu
vu va
ez
ka,
žaj
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
35
Pozicija superbloka
Pored superbloka u particiji se nalaze podaci o slobodnim i zauzetim blokovima datog sistema datoteka u obliku bitmape ili povezane liste pokazivača. Takođe, u svakoj particiji se nalaze direktorijumi i datoteke koji pripadaju datom sistemu datoteka. Particije mogu da budu primarne, logičke i dodatne. Primarne particije su one sa kojih je moguće podizanje operativnog sistema. Svaki disk mora da ima bar jednu primarnu particiju. Upotrebom više primarnih particija moguće je instalirati i koristiti više operativnih sistema na istom disku. Logičke particije su particije čija je namjena skladištenje podataka. Sa logičkih particija se ne može podizati operativni sistem. Dodatne particije omogućavaju prevazilaženje ograničenja koje postoji po pitanju maksimalnog broja mogućih particija na jednom disku. Dodatna particija može da sadrži više logičkih particija. Logička struktura i organizacija datoteka Organizacija datoteka označava logičku strukturu slogova datoteke na osnovu načina na koji im se pristupa.
Kriterijumi koji se koriste kod izbora organizacije datoteke su:
brz pristup podacima, jednostavnost ažuriranja, jednostavnost održavanja, pouzdanost.
Operativni sistemi podržavaju datoteke koje na implementacionom nivou mogu biti nizovi bajtova, nizovi slogova ili nizovi složenijih organizacija podataka.Postoji veliki broj organizacija datoteka koje su implementirane ili predložene za implementaciju. Od svih do sada poznatih organizacija datoteka, najčešće se koriste sljedeće: • Serijska organizacija datoteke omogućava da se podaci upisuju redosljedom kojim nastaju. Mogu se upisivati slogovi promjenljive dužine i promjenljiv skup polja unutar sloga. Unutar serijske organizacije ne postoji struktura. • Sekvencijalna organizacija. Razlika između serijske i sekvencijalne organizacije datoteka je u tome što kod sekvencijalne organizacije postoji informacija o vezama između slogova logičke strukture datoteke. I kod jedne i kod druge organizacije slogovi se upisuju u susjedne lokacije unutar memorisjkog prostora dodjeljenog datoteci. Svi slogovi su iste dužine. • Kod spregnute organizacije se koriste pokazivači. Postoje jednostruko, dvostruko i višestruko spregnute datoteke. • Rasuta organizacija. Za rasutu organizaciju je karakteristično da se adresa lokacije dobija transformacijom vrijednosti identifikatora sloga. Neophodno je da svaki slog ima svoj ključ. • Indeks-sekvencijalna organizacija datoteke uvodi tri zone: primarnu zonu (ili zonu podataka), zonu indeksa i zonu prekoračenja. Zbog poboljšanja performansi indeks-sekvencijalne datoteke se periodično reorganizuju. • Indeksna sa B stablima otklanja potrebu periodičnog obnavljanja. Ovaj nedostatak je otklonjen kod indeksne organizacije sa B- stablima koja ima primarnu zonu i zonu indeksa. Osnovna karakteristika indeksne organizacije sa B-stablima je da postoji automatska reorganizacija po potrebi. • Organizacija sa više ključeva. Datoteke sa više ključeva su najčešće indeksne datoteke sa B-stablom ili nekom varijantom B-stabla. Za svaki ključ postoji po jedna zona indeksa.
Se
M Dmp NobprKtavrPp
SpZ
DdunDd
PzabprMzaSurprPin
Pkppr M JenmT
eznadar: OS i RM
Metode pristup
Da bi se podamemoriju raču
odacima se z
Najjednostavnbliku trake. rocesuiraju sl
Kod sekvencijačnim redoslrijednost tekuosle svakogokazivača se
ekvencijalni okazivača bu
Znači, pri sekv• • •
Drugi metod južine. Direktiz blokova il
Direktan pristuatotekama na
• • • • •
ostoje i drugasniva na primlokove datoteristupa željen
Metoda pristua pristup odvakoj datotređena po rilikom čitanjrilikom upis
ndeksna datot
erformanse omponentamodataka sa srebacuju, tak
Metode dodjel
edan od proba disku tako
mogućih metoTri glavne met
1. Metoddiska. Dtaj način
upa datotekam
aci iz datotekunara. Inform
zovu metode p
niji metod priKod sekven
log po slog. Ojalnog pristupledom, jednaućeg pokaziv
g pristupa ažurira. pristup zaht
ude nula (CP=vencijalnom p
čitanje sleupis u sledpozicionir
je direktan ptan pristup jeli slogova i zup omogućav
a disku je direčitanje n-tupis u n-tipozicionirčitanje slečitanje pre
ge metode pmjeni indekseke. Kod taknom slogu. upa pomoću idgovarajućemeci pridruženekom kritja brzo možea novog zapteka.
pristupa podma računara, k
porijeg uređako da povećan
le prostora n
blema koji se da im se mo
oda za dodjelutode za dodjeda dodjele sodjela susjed
n ova implem
ma i podacim
ke koristili pmacijama u pristupa.
istupa je sekncijalnog priOvakav načinpa informacija iza drugevača (currendatoteci, vr
teva da posto=0). pristupu datodećeg bloka deći blok ranje na početpristup ili re
e zasnovan nazbog toga se va korisniku ektan. U opertog bloka i blok ranje na n-ti bdećeg bloka
ethodnog blokpristupa kojea. Kod indek
kvih metoda p
indeksnih datm zapisu u ena je indeterijumu, poe naći odgovapisa u datote
dacima direkkoje imaju raaja na brži u
njem veličine
a disku
riješava u okože brzo pristu prostora. elu prostora nsusjednih m
dnih blokova mentaciona m
ma
potrebno je ddatoteci se
kvencijalni pstupa postoji
n pristupa se kje se prosljeđ, u odnosu
nt pointer, Cednost teku
oji mogućnos
teci, mogu se
tak elativni pristua modelu dato
slogovima uda prustupi k
racije koje se
blok
ka e se zasnivajusiranog pristupristupa prvo
toteka koristibazi podata
eksna datoteomoću koje arajući zapis. ku, ažurira s
ktno zavise azličite brzinuređaj. Keš mkeš memorij
kviru sistamatupiti i da ko
na disku su: memorijskih
je jednostavnmetoda omogu
Operativni sistem
36
da se podacimmože pristu
pristup. Sekvi pokazivač koristi kod edđuju
na CP). ućeg
st premotava
e izvesti slede
up. Pretpostavoteke u obliku datoteci mokrajnjem blomogu izvesti
u na direktnoupa za datu do se pretražuj
i se aka. eka,
se se i
od toga gdne rada, da efmemorija je je cijena siste
a za upravljanorišćenje pros
lokacija za na za realizacućava brzo i
mi
ma pristupi i upiti na više
vencijalni prina trenutnu
ditora i progra
anja datoteke
eće operacije
vlja se da se ku diska. Datoože pristupatku datoteke bi ukoliko je p
om pristupu, datoteku se krje indeks, a z
dje se podafikasnije kumskuplja od u
ema raste.
nje datotekamstora na disku
skladištenje ciju. Susjedno
jednostavno
da se nakonnačina. Nač
stup je zasnolokaciju un
amskih prevo
na početak,
:
u datoteci naoteka se možeti brzo i to pbez čitanja p
pristup datotec
kao što je inreira indeks. Izatim se na o
aci nalaze. Kmuniciraju priuređaja sa ko
ma je kako dou bude što je
date datotekost blokova p izračunavan
prikupio i ob
n toga učitajučini pristupa
ovan na modnutar datotekodilaca.
, tako da vre
alaze logički e posmatrati
po proizvoljnprethodnog saci direktan sp
ndeksirani pIndeks sadržiosnovu pokaz
Keš memorijrivrijemenim ojih se podac
odijeliti prose moguće bolj
ke koristi suspoboljšava penje adrese blo
bradio Miroslav Mihalj
u u operativnuskladišteni
delu datotekeke i podaci
ednost tekuć
slogovi fiksnkao numerisom redosljedadržaja. Pristupadaju:
pristup koji i pokazivače nzivača direktn
ija omogućavpremještanje
ci privrijemen
tor datotekamje. Postoji vi
sjedne blokoverformanse. Noka u kome
jišin
nu im
u se
eg
ne an
du. up
se na no
va em no
ma iše
ve Na se
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
37
nalaze podaci. Za pristup podacima potreban je samo pomjeraj od početka datoteke. Moguć je sekvencijalan i direktan pristup podacima. Nedostatak strategije dodjele susjednih memorijskih lokacija jeste eksterna fragmentacija. 2. Metoda dodjele povezanih blokova fiksne veličine omogućava skladištenje svih datoteka tako što se koriste blokovi fiksne veličine. Susjedni blokovi se povezuju u povezanu listu. Osnovna prednost ove implementacione metode je da nema eksterne fragmentacije. Upravljanje memorijom je pojednostavljeno jer su svi blokovi iste veličine. Ne postoji potreba za premještanjem ili kompakcijom neke datoteke. Blokovi mogu da budu razbacani bilo gdje na disku. Nedostatak može da bude degradacija performansi kod direktnog pristupa podacima, jer je potrebno slijediti pokazivače od jednog bloka diska do sljedećeg. 3. Metode koje koriste šemu sa indeksima svakoj datoteci pridružuju tabelu indeksa. Svaki indeks u tabeli indeksa pokazuje na blokove diska koji sadrže stvarne podatke date datoteke. Slog za svaku datoteku unutar direktorijuma sadrži broj bloka indeksa i ime datoteke. Za male datoteke neiskorišćenost bloka indeksa može da bude velika, jer i u slučajevima kada se mali broj pokazivača stvarno koristi cio blok indeksa mora da bude dodijeljen.Ovakav način implementacije sistema datoteka obezbjeđuje brz direktan pristup podacima.
Upravljanje podacima (datotekama) Upravljanje podacima je jedna od osnovnih funkcija operativnih sistema.
Korisnici savremenih računarskih sistema ne moraju da vode računa o upravljanju podacima, koje je neophodno kod aplikacija koje pristupaju datote-kama memorisanim na sekundarnoj memoriji. Dio operativnog sistema koji upravlja podacima naziva se sistem za upravljanje podacima ili sistem za upravljanje datotekama (File Manager). Njegov zadatak je da omogući organizaciju podataka na takav način da krajnji korisnik može da im pristupi brzo i lako.
Upravljanje datotekom obuhvata ne samo upravljanje njenim sadržajem, nego i upravljanje njenim imenom. Tako, na primjer, stvaranje datoteke podrazumijeva i zadavanje njenog sadržaja, ali i zadavanje njenog imena (što se dešava u toku editiranja, kompilacije, kopiranja i slično). Takođe, izmjena datoteke može da obuhvati ne samo izmjenu njenog sadržaja, nego i izmjenu njenog imena (što se dešava, na primjer, u editiranju). Operacije nad datotekama Operacije nad datotekama su dio operativnog sistema. Najčešće komande sistema za upravljanje podacima su: • kreiranje datoteke, • čitanje i pisanje unutar datoteke, • pozicioniranje unutar datoteke radi operacije čitanja i pisanja, • postavljanje i korišćenje mehanizma zaštite, • promjena vlasništva nad datotekom, • listanje datoteka u datom direktorijumu, • brisanje datoteke. Mogu se podijeliti na osnovne i izvedene. Zbog lakšeg snalaženja daćemo pregled nekih komandi za upravljanje podacima sa orginalnimm (engleskim) nazivima osnovne open close read write seek
izvedene create delete append get attributes set attributes rename
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
38
Zaštita fajlova Fajlovi su namjenjeni za trajno čuvanje podataka. Za uspešnu upotrebu podataka neophodna je zaštita fajlova, koja obezbjeđuje da podaci, sadržani u fajlu, neće biti izmjenjeni bez znanja i saglasnosti njihovog vlasnika, odnosno, koja obezbijeđuje da podatke, sadržane u fajlu jednog korisnika, bez njegove dozvole drugi korisnici ne mogu da koriste. Podaci, sadržani u fajlu, ostaju neizmjenjeni, ako se onemogući pristup fajlu i radi pisanja (radi izmjene njegovog sadržaja). Takođe, podaci, sadržani u datoteci, ne mogu biti korišćeni, ako se onemogući pristup datoteci, radi čitanja (radi preuzimanja njenog sadržaja). Na ovaj način uvedeno pravo pisanja i pravo čitanja datoteke omogućuju da se za svakog korisnika jednostavno ustanovi koja vrsta upravljanja datotekom mu je dozvoljena, a koja ne. Tako, korisniku, koji ne posjeduje pravo pisanja datoteke, nisu dozvoljena upravljanja datotekom, koja izazivaju izmjenu njenog sadržaja. Ili, korisniku, koji ne posjeduje pravo čitanja datoteke, nisu dozvoljena upravljanja datotekom, koja zahtijevaju preuzimanje njenog sadržaja. Za izvršne datoteke uskraćivanje prava čitanja je prestrogo, jer sprečava ne samo neovlašteno uzimanje tuđeg izvršnog programa, nego i njegovo izvršavanje. Zato je uputno, radi izvršnih datoteka, uvesti posebno pravo izvršavanja programa, sadržanih u izvršnim datotekama. Zahvaljujući posjedovanju ovog prava, korisnik može da pokrene izvršavanje programa, sadržanog u izvršnoj datoteci, i onda kada nema pravo njenog čitanja. Pravo čitanja, pravo pisanja i pravo izvršavanja datoteke predstavljaju tri prava pristupa datotekama, na osnovu kojih se za svakog korisnika utvrđuje koje vrste upravljanja datotekom su mu dopuštene. Da se za svaku datoteku ne bi evidentirala prava pristupa za svakog korisika pojedinačno, uputno je sve korisnike razvrstati u klase i za svaku od njih vezati pomenua prava pristupa. Iskustvo pokazuje da su dovoljne tri klase korisnika. Jednoj pripada vlasnik datoteke, drugoj njegovi saradnici, a trećoj ostali korisnici. Nakon razvrstavanja korisnika u tri klase, evidentiranje prava pristupa datotekama omogućuje matrica zaštite (protection matrix) koja ima tri kolone (po jedna za svaku klasu korisnika) i onoliko redova koliko ima datoteka. U presjeku svakog reda i svake kolone matrice zaštite navode se prava pristupa datoteci iz datog reda za korisnike koji pripadaju klasi iz date kolone. Na slici 2 je prikazan primjer matrice zaštite.
owner group other
file1 r w x r - x - - x
file2 r w x - - x - - x
file3 r w - - w - ----
file4 r w x ---- r - -
Slika 2. Matrica zaštite
U primjeru matrice zaštite sa slike 2 vlasnik (owner) datoteke file1 ima sva prava pristupa, njegovi saradnici (group) nemaju pravo pisanja, a ostali korisnici (other) imaju samo pravo izvršavanja (pretpostavka je da je reč o izvršnoj datoteci). Ima smisla uskratiti i vlasniku neka prava, na primjer, da ne bi nehotice izmjenio sadržaj datoteke file2, ili da ne bi pokušao da izvrši datoteku koja nije izvršna (file3). Primijetite i malu nelogičnost za file4.
Za uspjeh izloženog koncepta zaštite datoteka neophodno je onemogućiti neovlašteno mijenjanje matrice zaštite. Jedino vlasnik datoteke smije da zadaje i mijenja prava pristupa (sebi, svojim saradnicima i ostalim korisnicima). Zato je potrebno znati za svaku datoteku ko je njen vlasnik. Takođe, potrebno je i razlikovanje korisnika, da bi se među njima mogao prepoznati vlasnik datoteke. To se postiže tako što svoju aktivnost svaki korisnik započinje svojim predstavljanjem. U toku predstavljanja korisnik predočava svoje ime (username) i navodi dokaz da je on osoba za koju se predstavlja, za šta je, najčešće, dovoljna lozinka (pasword). Predočeno ime i navedena lozinka se porede sa spiskom imena i (za njih vezanih) lozinki registrovanih korisnika. Predstavljanje je uspešno, ako se u spisku imena i lozinki registrovanih korisnika pronađu predočeno ime i navedena lozinka. Predstavljanje korisnika se zasniva na pretpostavci da su njihova imena javna, ali da su im lozinke tajne. Zato je i spisak imena i lozinki registrovanih korisnika tajan, znači, direktno nepristupačan korisnicima. Jedina dva slučaja, u kojima ima smisla dozvoliti korisnicima posredan pristup ovom spisku, su: • radi njihovog predstavljanja i • radi izmjene njihove lozinke. Za predstavljanje korisnika uvodi se posebna operacija, koja omogućuje samo provjeru da li zadani par ime i lozinka postoji u spisku imena i lozinki registrovanih korisnika. Slično, za izmjenu lozinki uvodi se posebna operacija, koja omogućuje samo promenu lozinke onome ko zna postojeću lozinku. Sva druga upravljanja spiskom imena i lozinki registrovanih korisnika (kao što su ubacivanje u ovaj spisak parova imena i lozinki, ili njihovo izbacivanje iz ovog spiska) nalaze se u nadležnosti poverljive osobe, koja se naziva administrator (superuser. root, admin, ...).
Se
ZdadkNmDnunjizPsvUseNbZčijesaPkNN
U
UK
D
eznadar: OS i RM
Zaštita datotea on neće oddministratoraoristi.
Nakon prepozmoguće je ustaDa bi se poje
umeričku oznjih označava z iste grupe mrema tome, rvi korisnici k
U ostale korisne rezerviše za
Numerička ozi obavljala pr
Zato se uvodiitanje datoteke njegova namamo u granicaored operacijorišćenje dato
Nakon zatvaraNumerička ozn
U Unix/Linux • Def
o o o
• Defo o o
U Windows opKorisnika i Gr
• Nasle• Sabira• Jače z
Dozvole za rad• Čitanj• Pisanj• Čitanj• Modif• Puna ko
eka potpunodavati lozink
a ima smisla p
znavanja koranoviti koja pednostavila pnaku. Radi klgrupu kojoj k
međusobno saredni broj gru
koji imaju isti nke spadaju
a administratonaka korisnikrilikom svakoi posebna opeke). Pomoću omjera u skladama iskazanije otvaranja, oteke. anja datoteke,naka vlasnika
sistemima zafinisanja vlas
VlaGruSvi
finisanje prisČitPišIzv
perativnim sirupa. Korisnikđivanja anja dozvola zabrane d sa određenije je je i izvršavanfikacija ontrola
o zavisi od odke, niti ih kopotpuno izuz
risnika (odnoprava pristupaprovjera korilasifikacije kokorisnik pripa
aradnici. upe i redni brredni broj grsvi korisnici ore. ka pojednostaog pristupa daeracija otvaraoperacije otvdu sa njegoviih namjera.
potrebna je
, pristup datoa datoteke i p
aštita se uglavsničke kategoasnik (korisniupa (korisnički (svi korisnictupnih prava
taj (Read) i (Write)
vršavaj (Execu
istemima, admk pripada Gru
im datotekam
nje
dgovornosti ioristiti, radi peti iz zaštite
osno, nakon a korisnik posničkih pravaorisnika zgodada, a drugi o
roj člana gruprupe kao I vlačiji redni bro
avljuje provjeatoteci, umesnanja datotekearanja se saoim pravima, o
i operacija z
teci nije dozvprava pristupa
vnom ostvaruorije ik koji je naprka grupa kojoci sistema) se formira ka
ute)
ministracija kupi koja može
ma se formiraj
Operativni sistem
39
i poverljivospristupa koridatoteka, s ti
njegovog uosjeduje za sva pristupa, u
dno je da ovuod njih označ
upe zajedno jeasnik. oj grupe je ra
eru njegovog no je takvu pe, koja pretho
opštava i na kotvaranje dat
zatvaranja dat
voljen do njena korisnika iz
uje pomoću d
ravio datotekoj je datoteka
ao proizvolja
kontrole priste pripadati na
ju kao standa
mi
sti administrisničkim datom da on tada
uspešnog predvaku datotekuuputno je, um numeričku oava člana gru
ednoznačno o
azličit od redn
prava pristupprovjeru obavodi svim druoji način koritoteke je uspe
toteke, pomo
nog narednogz pojedinih kl
dva mehanizm
ku) a formalno pr
an kombinacij
tupa i prava nadgrupi itd. P
ardne dozvole
atora, odnosotekama. Zboa svoje nadlež
dstavljanja), .
mjesto imenaoznaku obrazuupe. Podrazum
određuju vlas
nog broja gru
pa datoteci. Ipiti samo pre p
ugim operacijisnik namjeraešno, a pristu
oću koje kori
g otvaranja. asa predstavlj
ma:
iključena)
ja osnovnih p
nad datotekamPri određivanj
e u koje spada
prikupio i ob
sno od tačnosog prirode njžnosti mora v
uz pomoć m
a korisnika, uuju dva rednamijeva se da
snika. Saradn
upe vlasnika.
pak, da se takprvog pristupjama (kao štoava da koristiup datoteci je
isnik saopštav
ljaju atribute
prava:
ma je ostvareju prava se po
aju:
bradio Miroslav Mihalj
sti pretpostavkjegovog posl
vrlo oprezno
matrice zašti
uvesti njegova broja. Prvi osu svi korisni
nici vlasnika
Posebna grup
kva provjera npa. o su pisanje i datoteku. Ake dozvoljen, a
va da završav
datoteke.
ena kroz sisteoštuju princip
jišin
ke la, da
ite
vu od ici
su
pa
ne
ili ko ali
va
em pi:
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
40
Upravljanje memorijom Upravljanje memorijom je jedna od osnovnih funkcija operativnih sistema. Memorija se sastoji od niza memorijskih reči, a svaka ima jedinstvenu adresu. Prilikom izvršavanja procesa, procesor na osnovu programskog brojača (Program counter, PC) čita instrukciju iz memorije (fetch). Pročitane instrukcije u toku izvršenja dodatno mogu zahtjevati čitanje operanada ili upisivanje podataka na druge memorijske lokacije. Razni operativni sistemi koriste različite metode upravljanja radnom memorijom. Ove metode mogu biti krajnje jednostavne, ali i veoma složene, poput straničenja (paging) i segmentacije, a svaka ima svoje prednosti i mane. Izbor metode za upravljanje memorijom u velikoj mjeri zavisi i od hardverske podrške, tj od procesorske arhitekture. Savremeni operativni sistemi omogućavaju svakom procesu da dobije više virtuelne memorije, nego što je ukupna veličina stvarne (fizičke) memorije na datom računarskom sistemu. Glavni cilj kod upravljanja memorijom je da se kombinovanjem velike spore memorije sa malom brzom memorijom ostvari efekat velike brze memorije. Za upravljanje memorijom bitni su programski prevodilac, operativni sistem i hardver.
1. Programski prevodilac struktuira adresni prostor date aplikacije. 2. Operativni sistem preslikava strukture programskog prevodioca u hardver. 3. Na kraju, hardver izvršava stvarne pristupe memorijskim lokacijama.
Dodjeljivanje memorije U radnu memoriju se, pored korisničkih procesa, smješta i rezidentni dio operativnog sistema (npr jezgro). Da bi u višeprocesnom okruženju obezbjedio stabilan i pouzdan rad sistema, neophodno je što efikasnije dodjeliti različite dijelove memorije. Mamorija se dijeli na najmanje dvije particije od kojih je jedna (najčešće niži deo) namenjena rezidentnom dijelu operativnog sistema (kernel space) a druga particija (viši dijelovi) – korisničkim procesima (user space). Obično se u najnižem dielu memorije nalazi tabela prekidnih rutina. U korisničkom adresnom prostoru nalazi se više procesa koji formiraju red čekanja na procesor. Takođe, postoje i procesi koji nastoje da uđu red čekanja, obično sa diska. Da bi proces ušao u red čekanja na procesor, neophodno je da najpre dobije potrebnu memoriju. Glavni problem pri upravljanju memorijom jeste dodjela slobodne memorije procesima koji se u ulaznom redu (alokacija memorije). Tehnike za dodjelu memorije procesima grubo se mogu podijeliti na dvije vrste:
Kontinualna alokacija (contiguous allocation) – i logički i fizički adresni prostor procesa sastoje se od kontinualnih niza memorijskih reči, pri čemu memorijske particije koje se dodjeljuju procesima po veličini mogu biti jednake ili razčličite
Diskontinualna alokacija (discontiguous allocation) – fizički adresni prostor procesa nije realizovan kao kontinualan niz memorijskih adresa; diskontinualna alokacija obuhvata metode straničenja, segmentacije i straničenja sa segmentacijom.
Dodjela memorije može da bude kontinualna i diskontinualna. Ako se za dati proces koriste susjedne memorijske lokacije u okviru datog dijela memorije, tada je to kontinualna dodjela memorije. Ukoliko se za dati proces koriste dijelovi memorije kod kojih postoji diskontinuitet u pogledu susjednosti lokacija, tada je to diskontinualna dodjela memorije. Vremenski i prostorni problem upravljanja memorijom Najvažnije aktivnosti operativnog sistema u dijelu za upravljanje memorijom su:
1) vođenje evidencije o tome koji se dijelovi memorije trenutno koriste i ko ih koristi, 2) donošenje odluke o učitavanju procesa u memoriju, odnosno koje procese prebaciti u memoriju kada
memorijski prostor postane raspoloživ, 3) dodjela i oslobađanje memorijskog prostora po potrebi.
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
41
Da bi se jedan program izvršio neophodno je da se u memoriju unesu i njegove instrukcije i podaci, kako bi bili dostupni centralnom procesoru. To ne znači da sve instrukcije i svi podaci moraju da budu u memoriji sve vrijeme tokom izvršavanja programa. Moguće je unijeti u memoriju samo jedan dio instrukcija programa sa podacima neophodnim za njihovo izvršavanje. Po izvršavanju tog dijela programa u memoriju se može unijeti, u sve lokacije, sljedeći niz naredbi sa podacima potrebnim za njihovo izvršavanje. U uslovima višeprogramskog rada ovakva mogućnost je posebno zanimljiva. Držanjem u memoriji dijelova, a ne cijelih programa, moguće je aktivirati više programa u jednom vremenskom intervalu čime se povećava stepen višeprogramskog rada, a time i stepen iskorišćenja ostalih resursa računara. Naravno, ovakav način rada zahtijeva dodatne hardverske komponente i povećava složenost operativnog sistema. Sa stanovišta operativnog sistema memorija je podijeljena u dva nivoa. Prvi nivo čini primarna (glavna) memorija u kojoj se nalaze trenutno aktivni dijelovi različitih programa, dok drugi nivo čini sekundarna (pomoćna) memorija sa relativno brzim pristupom, na kojoj se čuvaju kompletne kopije svih aktivnih programa. Operativni sistem problem upravljanja memorijom svodi na problem vremenske i prostorne raspodjele programa ili dijelova programa između dva nivoa memorije. Drugim riječima, upravljanje memorijom se sastoji od sljedeće tri komponente:
1) upravljanje unošenjem ("fetch policy") – u smislu donošenja odluke o tome kada će se program ili njegovi dijelovi unijeti u memoriju,
2) upravljanje smještanjem ("placement policy") – u smislu donošenja odluke o tome gdje će se program ili njegovi dijelovi smjestiti u memoriji,
3) upravljanje zamjenom ("replacement policy") – u smislu donošenja odluke o tome koji će se program ili dijelovi programa izbaciti iz memorije da bi se oslobodio prostor za unošenje drugog programa ili dijelova drugog ili istog programa.
Različite metode i tehnike upravljanja memorijom koje se primjenjuju u operativnim sistemima razlikuju se upravo po tome kako i na osnovu čega donose neku od navedenih odluka. Samo upravljanje memorijom može da bude statičko i dinamičko. Statičko upravljanje memorijom je kada se cio program unosi u memoriju prije izvršavanja programa. Dinamičko upravljanje memorijom je kada se veličina memorije određuje na osnovu veličine programa u trenutku unošenja programa u memoriju ili kada se dijelovi programa mogu unostiti u memoriju u toku izvršavanja programa.
Načini upravljanja memorijom
Prema tome, u opštem slučaju postoje sljedeći načini upravljanja memorijom:
pomoću statičkih particija, pomoću dinamičkih particija, pomoću statičkih stranica, pomoću statičkih segmenata, pomoću dinamičkih stranica, pomoću dinamičkih segmenata, pomoću dinamičkih stranica i segmenata.
Memorijski sistem sa više nivoa Da bi procesor mogao da čita instrukcije ili izvršava operacije nad podacima potrebno je da te instrukcije, odnosno podaci budu smješteni unutar fizičke (RAM) memorije. Procesor i RAM memorija su povezani pomoću magistrale podataka veoma velike brzine. Magistrala podataka najčešće može imati širinu 32, 64 ili 128 bita. Širina magistrale podataka definiše količinu podataka koja se može prenijeti u toku jednog ciklusa magistrale. Širina magistrale podataka ne definiše maksimalnu veličinu programa ili maksimalnu veličinu podataka. To je određeno širinom adresne magistrale.
Se
A
IaizrasenNRap
Takou fiziU opmemolokacrazlič ProgrizvršamemoPonekpromveliči
eznadar: OS i RM
Adresna magis
ako brzina przmeđu procesad aplikacija.e nalazi u glaekoliko poda
Na datom račuRAM memoriplikaciji dodj
đe, operativnički memorijsštem slučaju oriju on će
cijama. Odnočitih nivoa me
ram za uprava dvije oorijskog prokad se korist
mijeniti veličiina dodjeljen
strala može d
Slika 2. M
renosa podatasora i RAM m. Iz ugla krajnavnoj memorataka. unaru najčešćiji. Da bi omjeljuje virtuel
ni sistem presski prostor.
svaki put kae da bude os između bemorije prika
avljanje memosnovne opeostora i oslti i treća opina već dodje memorije s
da ima bilo ko
Memorijska p
aka između prmemorije se knjeg korisnik
riji, a oko 1%
će postoji višmogućio različlni adresni pro
likava virtuel
ada se prograna različit
brzine pristuazan je na slic
morijom (meracije: dodjlobađanje zaeracija pomoeljene memomanji ili pov
oju širinu u za
piramida
rocesora i RAkoristi keš m
ka keš memor% programa se
še programa čitim procesiostor.
lni adresni pr
am učita u glim memorij
upa i cijene ci 3.
memory manaelu kontinuaauzete memoću koje se morije, tako šteća.
Operativni sistem
42
avisnosti od p
AM memorijememorija. Keš
rija je nevidlje nalazi u ke
ili procesa kima da koegz
rostor
lavnu jskim
kod
ager) alnog
morije. može to se
M
mi
procesora.
Memorijssistema je Memorijs
r k g m
Za svaki vrijeme pKapacitetpoboljšavTakođe, nkomprom
e može da buš memorija jejiva. U prosjš memoriji. U
koji su aktivnzistiraju na d
Memorijski s
ski sistem e više nivoski
ski sistem je pegistri,
keš memorija,glavna memormagnetni disk
nivo prikazristupa i nazi
t i prosječvaju. na svakom m
mis brzine i cij
de veoma vele mnogo bržaeku oko 10%U registrima
ni u isto vrijedatom računar
Slistem kod sav
prikupio i ob
savremenihi sistem, kao
podijeljen na
, rija (RAM) i
kovi. zan je kapaciv memorije. čno vrijem
memorijskomjene.
lika, u mnogia, ali i skuplja
% ukupne velise nalazi jed
eme i svaki oaru operativni
lika 3. vremenih rač
bradio Miroslav Mihalj
h računarskna slici .
četiri nivoa:
citet, prosječn
me se staln
m nivou posto
im slučajevima. Ona ubrzavičine programna instrukcija
od njih pristupi sistem svak
čunarskih siste
jišin
kih
no
no
oji
ma va
ma a i
pa koj
ema
Se
L RAnFPFpr
U VF Kuprfije Uup V PPmmKUmkpropVdrP• Kre• U
eznadar: OS i RM
Logičko i
Razlikujemo lAdresa koju g
aziva fizička izička adresareslikavanje izičke i logičrevođenja i p
Upravljanje m
Virtuelna adreizička adresa
Kod savremenpravljanje mreslikavanje izičke adreseedinica za upr
U okviru jedinpisana u regi
Vezivanje
rogram se narogram sa di
metode upravlmemorija. Kolekcija procU sistemima smože unapred
oje će memorograma i zaperativnog si
Vezivanje adrrugi. ovezivanje in
VrijemKako nije pozelativne, a ne
VrijemU fazi učitava
fizičko ad
ogički i fizičkgeneriše procadresa.
a je adresa oplogičkih adrečke adrese su punjenja progr
Preslikav
memorijom ob
esa je adresa ua je adresa na
nih računara pmemorijom ili translacija
e i na taj načravljanje mem
nice za upravstar za relocir
adresa
alazi na diskuiska se moraljanja memor
cesa na diskusa omogućen
d znati koji ćeorijske lokacato koristi reistema je da presa se može
nstrukacija i pm e prevođenznato gdje ćeapslolutne ad
m e učitavanjanja poveziva
dresiranje
ki memorijskcesor naziva
erativne memesa u fizičke j
identične akrama.
vanje virtueln
buhvata presli
u programu i računarskom
preslikavanje(Memory M
a iz logičke čin vrši adremorijom je ug
vljanje memranje se doda
u kao binarna a mora učitatrijom koja se
u, koja čeka ponim multiproge procesi biticije biti sloboelativne ili sprevede relati
shvatiti kao
podataka sa mnja (compile te proces kojdrese. Prograja u memorij
ač (linker) i p
e memorij
ki adresni prose logička a
morije. e obavezno. o se primjene
ne adrese u fiz
ikavanje adre
nju generiše m hardveru.
e iz virtuelne Management
u stvarnu (fiesiranje glavngrađena u čip
orijom nalazaje svakoj virt
izvršna datotti u memorijukoristi, proce
ovratak u megramiranjem,
zastupljeni uodne. On ne imboličke (zvne u fiksne transformac
memorijskim time) i će izvršava
am se kasnije ju (load time)punilac (load
Operativni sistem
43
ija
stor. adresa, dok s
e metode vez
izičku, pomoć
esa kao što je
procesor.
u fizičku adUnit, MMU
fizičku) adresne memorije
p procesora.
zi se posebantuelnoj adresi
teka (binary eu, unutar adres se u toku i
emoriju i nast veći broj pru memoriji p
može unaprzavisno od pprilikom učit
cija, tj prevođ
adresama ob
ati generisanimože smesti
e) der) na bazi r
mi
e adresa kojo
zivanja adre
ću posebnog h
to prikazano
dresu vrši posU). Za ovo psu. Hardver š. Kod većine
n registar zai.
executable). resnog prostoizvršavanja m
tavak izvršenjrocesa dijeli rprilikom izvršred odrediti programskog tavanja progrđenje adrese
avlja se u sle
i kod biti smti bilo gdje u
relokatibilnog
om se puni m
sa (address b
hardvera MM
na slici.
seban hardverpreslikavanje šalje jedinici e savremenih
relociranje
ora novostvomože više put
ja, naziva se uradnu memoršenja programfiksne memojezika i kon
ama u memosa „jezika“ j
dećim fazam
mješten u mememoriji.
g koda generi
prikupio i ob
memorijski a
binding meth
MU jedinice
r koji se naziadresa se kza upravljan
h mikroračun
adresa (TL
orenog procesta pomjerati n
ulazni red (inriju računara
ma u takvom orijske lokacnkretne upotroriju. jednog adres
ma:
emoriji, prevo
rišu apsloutne
bradio Miroslav Mihalj
adresni regist
hods) u vrijem
iva jedinica zkaže i da je nje memorijonarskih sistem
LB). Vrijedno
sa. Zavisno ona relaciji dis
nput queue).. Programer nokruženju, nije za smještrebe). Dužno
nog prostora
odilac generi
e adrese i pun
jišin
tar
me
za to
om ma
ost
od sk-
ne niti taj ost
a u
iše
ne
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
44
memoriju programom. Povezivač može povezati korisnički program sa drugim relokatibilnim modulima (object modules). • Vrijem e izvršavanja (execution time) Za vrijeme izvršavanja, proces se može pomjerati s jednog segmenta na drugi (uključujući i disk, ukoliko se koristi i virtuelna memorija)
Faze koje prethode izvršavanju programa
Adresa koju generiše procesorska instrukcija je logička, a adresa same memorijske jedinice je fizička. Logičke i fizičke adrese su potpuno iste u fazi prevođenja i u fazi učitavanja programa, ali se razlikuju u fazi izvršavanja (u fazi izvršavanja nazivaju se i virtuelnim adresama). Skup svih logičkih adresa koje generiše program naziva se logički ili virtuelni adresni prostor, a skup svih fizičkih adresa koje njima adgovaraju naziva se fizički adresni prostor.
Relokacioni registar definiše adresu fizičkog početka programa. Svaka logička adresa koju generiše progrma se sabira s vrednošću relokacionog registra i tako se dobija fizička adresa. Korisnički program uvijek počinje od nulte adrese i ne treba voditi računa o svom fizičkom prostoru, osim o gornjoj granici programa (max). Logički adresni prostor koji se nalazi u opsegu [0,max] mapira se u opseg [R+0, R+max], gdje je R vrijednost relokacionog registra, tj fizička adresa početka programa.
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
45
Privremena razmjena - SWAP Prilikom izvršavanja, proces se mora nalaziti u radnoj memoriji. Postoje situacije kada se proces može privremeno prebaciti iz memorije na disk, kako bi se oslobodila memorija. Oslobođenja memorija puni se drugim procesom. Razmena (swap) koristi se u prioritetnim šemama za raspoređivanje procesa gdje se procesi visokog prioriteta čuvaju u memoriji, dok se svi procesi niskog prioriteta upisuju na disk i čekaju da se oslobodi memorija. Ova varijanta razmjenjivanja naziva se roll out, roll in. Proces koji se razmenjuje mora biti potpuno oslobođen aktivnosti - ne sme da radi, niti da čeka kraj neke ulazno-izlazne operacije (stanja WAIT i READY). Virtuelna memorija Koncept virtuelne memorije je jedna od najboljih ideja primjenjenih na računarske sisteme. Glavni razlog za uspjeh ove ideje je da virtuelna memorija radi automatski, tj. bez intervencija programera aplikacija. Osnovna prednost korišćenja virtuelne memorije je mogućnost izvršavanja programa koji zahtijeva memorijski prostor veći od fizičke (operativne) memorije, raspoložive na datom računarskom sistemu. Koncept virtuelne memorije stvara utisak korisniku da je njegov program u potpunosti učitan u memoriju i izvršen. Prije nastanka koncepta virtuelne memorije programer je morao da vodi računa da njegov program može da stane u fizičku memoriju. Osim toga, primjenom virtuelne memorije moguće je dijeljenje računara između procesa čija je veličina ukupnog adresnog prostora veća od veličine fizičke memorije. Ako se primjeni vezivanje adresa u vrijeme izvršavanja programa fizička i logička adresa su različite i tada se logička adresa naziva virtuelna adresa. Program za upravljanje memorijom proširuje RAM memoriju sa rezervisanim dijelom memorijskog prostora na disku. Prošireni dio RAM memorije se naziva zamjenski ( swap) prostor. Proširenje RAM memorije zamjenskim prostorom ima isti efekat kao instaliranje dodatne RAM memorije. U mnogim slučajevima dovoljno je povećati zamjenski prostor kako bi se izvršavali veći programi. Operativni sistem jedino mora da obezbjedi da program i podaci budu raspoloživi u RAM memoriji u trenutku kada su potrebni. Dijelovi programa kojim se ne pristupa često i dijelovi programa koji se koriste za upravljanje greškama se prenose na zamjenski prostor. Kada bilo koji od tih dijelova zatreba, program za upravljanje memorijom taj dio prenosi u RAM memoriju. Koncept virtuelne memorije posebno dolazi do izražaja kod višekorisničkih operativnih sistema, jer kod prenošenja dijelova programa ili podataka u/iz operativne memorije procesor ne mora da čeka, vec odmah prelazi na izvršavanje drugog posla. Svaka aplikacija ima svoj virtuelni adresni prostor koji operativni sistem preslikava u fizičku memoriju. Veličina virtuelne memorije je ograničena samo veličinom zamjenskog prostora na disku. Jednostavno rješenje korišćeno kod prvih Unix sistema je posebna particija diska koja se koristi samo kao zamjenski prostor. Kod takvog rješenja prostor diska se dijeli na dva glavna dijela: jedan koji se koristi za straničenje i drugi koji se koristi za file sistem. Problem sa ovakvim pristupom je nefleksibilnost. Postoje sljedeće osnovne vrste organizacije virtuelne memorije:
• segmentna, • stranična, • segmentno-stranična.
Tehnika razmjene zahtjeva postojanje 3 komponente: • Prostor na disku (swap space) na koji će se smještati
uspavani procesi • Mehanizam swap-out koji prebacuje proces iz
memorije na disk • Mehanizam swap-in koji vraća uspavani proces sa
diska u memoriju
Najveći dio vremena u ciklusima razmene otpada na prenos podataka između memorije i diska. Trajanje jedne razmene zavisi od količine podataka za prenos, karakteristike diskova i pratećeg hardvera. Kako je to vrijem e ogromno u odnosu na vrijem e izvršavanja memorijskih ciklusa, ne preporučuje se često korišćenje tehnike razmjenjivanja. Swap postoji na svim modernim operativnim sistemima i to u različitim modifikovanim varijantama. Rijetko se razmenjuju cjeli procesi - uglavnom se razmenjuju manji dijelovi memorije (npr stranice).
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
46
Raspodjela memorije Ukoliko se koristi kontinualno dodjeljivanje memorije, i logički i fizički adresni prostor procesa se sastoje od kontinualnog niza memorijskih adresa. Prosto rečeno, svaki proces dobija jedan kontinualni dio memorije. Metode kontinualnog dodjeljivanja memorije su: • Multiprogramiranje sa fiksnim praticijama • Multiprogramiranje sa particijama promjenljive veličine
Uvođenje particija je jednostavan metod koji omogućava višeprogramski rad, tj. da više programa koji se izvršavaju bude u isto vrijeme u operativnoj memoriji.
Multiprogramiranje i statičke particije
statičke particije-unaprijed nepromjenjvo izdjeljene
Upravljanje memorijom pomoću statičkih particija je jedan od najosnovnijih načina upravljanja memorijom. Za višeprogramski rad neophodna je dodjela više particija. Memorija se dijeli u particije fiksne veličine, kao što je to pokazano na slici 1.
Slika 1. Statičke particije
Particije su fiksirane u vrijeme inicijalizacije sistema i ne mogu se mijenjati u toku izvršavanja programa. Svakoj particiji se dodjeljuje po jedan proces. Programi se raspoređuju tako da budu smješteni u najmanjoj particiji koja je dovoljno velika da prihvati cio program. Izvršni program koji je pripremljen za izvršavanje u datoj particiji ne može da se izvršava u nekoj drugoj particiji bez ponovnog povezivanja (relinking). Kod ovog načina upravljanja memorijom postoji potreba zaštite koda operativnog sistema od mogućih promjena od strane korisničkih procesa. Zaštita se može uraditi pomoću baznog i graničnog registra.
Jedan od najstarijih i najprostijih metoda dodjeljivanja memorije je ovakva podjela cjele fizičke memorije na više dijelova fiksne veličine, pri čemu se u jednom dijelu može nači samo jedan proces. U ovakvoj organizaciji, stepen multiprogramiranja je jednak broju memorijskih particija. Ova metoda je korišćena u sistemu IBM OS/360. Cijela memorija se izdijeli na više dijelova. Svi procesi se stavljaju u red čekanja (input queue) koji može biti jedinstven za cjeli operativni sistem ili poseban za svaku particiju. Višestruki redovi čekanja običmo se formiraju za opsege veličina Q=1 KB, Q=2 KB, Q=4 KB. Ukoliko za proces koji je došao na red nema dovoljno memorije, uzima se sledeći manji proces iz liste. Kada postoji više redova čekanja, veći broj malih procesa može čekati u redu za male particije, dok su velike particije neiskorišćene. U tom slučaju ima dovoljno memorije, ali se ne koristi. Bolji je jedinstveni red čekanja, jer ako nema mjesta u memoriji u redu čekanja za particiju koja odgovara veličini procesa, procesu se dodjeljuje veća particija. Dva procesa ne mogu biti smještena u jednoj particiji. Multiprogramiranje sa fiksnim particijama korišćeno je u sistemima s grupnom obradom (batch). Ova metoda je nepogodna za interaktivne sisteme zbog postojanja većeg broja procesa promjenljive veličine (obično malih) koji se pojavljuju po slučajnom rasporedu. Ova metoda se više ne koristi.
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
47
Diskontinualno dodjeljivanje memorije- dinamička alokacija straničenjem Umesto fiksnih particija, memorija se dijeli dinamički, a svaka šupljina (hole), tj slobodan kontinualni dio memorije, može se iskoristiti za smještanje procesa - pod uslovom da je dovoljno velika. Šupljine dinamički nastaju i nestaju, zajedno sa procesima, mogu biti bilo gdje u memoriji i imati bilo koju veličinu, što odgovara procesima na interaktivnim sistemima. Kada proces naiđe u sistem, traži se šupljina dovoljno velika za proces. Sav prostor koji proces ne zauzme od cijele šupljine, predstavlja novu šupljinu u koju se može smestiti novi proces. Alokacija memorije je dinamička - memorija se sastoji od procesa i šupljina, a OS dinamički vodi evidenciju o zauzetosti memorije na jedan od sledećih načina:
• Bit mape (bit maps) • Povezane liste (linked lists) • Sistem udruženih parova - drugova (buddy system)
Koriste se dvije metode: straničenje (paging) segmentacija (segmentation), kao i njihove kombinacije straničenje sa segmentacijom i segmentacija sa straničenjem. Straničenje Straničenje je metoda sa hardverskom podrškom na nivou procesora koja se koristi u svim operativnim sistemima i na svim računarskim arhitekturama. Gotovo da ne postoji nijedan savremeni procesor koji hardverski ne podržava straničenje. Fizička memorija, tj fizički adresni prostor, podijeli se na blokove fiksne veličine, koji se nazivaju fizičke stranice ili okviri (page frames). Logički adresni prostor takođe se podijeli na blokove istih veličina koji se nazivaju logičke stranice (pages). U daljem tekstu, pod terminom stranice podrazumevaćemo logički stranicu, a pod terminom okvir - fizičku. Veličine stranica su po pravilu stepen broja 2, najčešće u opsegu od 512 B do 8 KB, mada mogu biti i veće, 16 MB. Swap prostor na disku takođe se dijeli na stranice koje po veličini odgovaraju memorijskim stranicama.
Straničenje
Metoda straničenja funkcioniše na sledeći način: svakoj logičkoj stranici odgovara jedna fizička, a korespodencija između njih se čuva u tabeli stranica (page table). To omogućava da se kontinualni logički prostor procesa razbaca svuda po memoriji. Svaka logička adresa koju generiše procesor dijeli se na dva dijela:
• broj stranice (p, page number) - koristi se kao indeks u tabeli stranica koja sadrži baznu adresu okvira. Bazna adresa predstvlja viši dio adrese
• pomjeraj unutar stranice (d, page offset) - definiše položaj u odnosu na samu stranicu i - u kombinaciji sa baznom adresom (čisto sabiranje) - definiše punu fizičku adresu koja se šalje memorijskoj jedinici.
Naglasimo da je osnovna adresabilna jedinica bajt i da je pomjeraj isti i za logičku i za fizičku adresu Ako je veličina logičkog adresnog prostora 2m, a veličina stranice 2n, tada viši dio adrese dužine m-n definiše broj stranice, dok najnižih n bitova adrese predstavljaju pomjeraj unutar stranice.
Se
PZUlo• • • • LPstbrlololo
Pmok Sfizasw ZK MOu Od S Ppr SNsed Spr L
Kh
eznadar: OS i RM
Primjer stranZamislimo da Uzmimo korogičke stranic
stranicstranicstranicstranic
Logička adresomoću brojatranica i nalaroj 1, i tako rogička stranicogička stranicogička stranic
roces koji ulamu stranica m
kvira, koji se
vako straničeizičke memoapisom u tabwap tehnike s
Značajan aspeKorisnik svoj
Mapiranje logOperativni sist
tabeli okviraOperativni sis
efiniše mapir
Segmentacij
rethodno razrostor.
ama strukturaNpr, sam kodegmenata dobefiniše logičk
egmentacija jrostor sastoji
Logička adres• imena• pomje
Kod straničenjardver.
ničenja: imamo mem
risnički procce, sa logičkimca 0 (0-3) ca 1 (4-7) ca 2 (8-11) ca 3 (12-15)
a 0 ima broj la logičke straazimo da je oredom: ca 1 smještenca 2 u okvir 3ca 3 u okvir 7
azi u stanje izmemorije trebae pune proces
enje predstavorije. Smanjebeli. Kao possa stranicama
ekt straničenjdio memorije
ičkog i fizičktem mora da
a (frame tabletem mora i d
ranje za taj pr
ja memorij
matrani sluča
a programa nd se sastoji obija ime pomke segmente u
je metoda upse od kolekc
a se sastoji oda segmenta (ueraja unutar s
nju logička ad
moriju veličineces koji zam adresama:
logičke stranianice ulazimoona smješten
na je u okvir 43 i 7.
zvršavanja ma. Svaka stranom, pri čemu
vlja dinamičknje stranica
sljedica, povea, poželjnije s
nja je jasno re doživljava k
kog prostora zprati koji su
e) u kojoj je sda za svaki proces.
je
ajevi odnose
nije kontinualod više cjelin
moću koga seu izvornom p
pravljanja memcije segmenat
d dva dijela: umesto imenasegmenta
dresa jednodi
e 32 B. Definauzima 4
ice 0. o u tabelu na u okvir
4,
mora da dobijenica mora da u se mapiranje
ku relokaciju,dovodi do p
ećava se kašnsu veće strani
razdvajanje kkao kontinual
zadatak je OSokviri slobod
svaki okvir opproces generiš
se na korisni
na, jer prograna kao što s
e referencira programu, a p
morijom kojata, a svaki seg
a segmenta ob
imenzionalna
Operativni sistem
48
nišemo 8 okvi
e potrebnu mese mapira u oe stranica - ok
, a tabela strpovećanja njnjenje peilikoice zato što je
korisničkog lni prostor iak
S i korisnik gadni, a koji su pisan jednim še tabelu stra
ičke procese,
ami se logičksu tabele, poi može nezav
prevodilac na
a podržava logment ima jed
bično se zada
a, pri čemu r
mi
ira veličine 4
emoriju, takookvir. Ako prkvir upisuje u
ranica predstajihove tabeleom mapiranje rad sa disko
pogleda na mko su stranice
a ne vidi. dodjeljeni i tzapisom.
anica koja se
, tj programe
ki dijele na višolja, stek, provisno da se uosnovu toga
ogički korisnidinstveno ime
aje broj koji p
razdvajanje
B, što znači d
o da se za datroces zahtevau tabelu stran
avlja relokaci, jer je svaka ili pretraživvima efikasn
memoriju i ae raznih proce
to kom proce
odnosi samo
, koji zahtev
še nezavisnihomjenljive, itučita u memopravi memor
čki pogled nae i dužinu.
predstavlja ide
dijelova adr
prikupio i ob
da je m=6, a
ti proces preraa n stranica, tanica.
ioni registar ka stranica ovanja. U sluč
niji kada su tra
aktuelne fiziesa razbacane
esu. Sve se to
o na njegove
vaju kontinual
h cjelina. td. Svaki odoriji. Po pravrijske segmen
a memoriju. L
entifikator se
rese i transli
bradio Miroslav Mihalj
n=2.
ačunava kolikada se alocira
za svaki okvopisana jedničaju korišćenansferi veći.
ičke memorije po memorij
o čuva u jezgr
stranice i ko
lan memorijs
d ovih logičkvilu, programnte.
Logički adres
egmenta)
iranje obavl
jišin
ko a n
vir im nja
je. ji.
ru,
oja
ski
kih mer
sni
lja
Se
PSobn
Mapisegmmikro
Nza
S Ni dP P(sst• •
eznadar: OS i RM
ri segmentaclobodna membzira na količailaska proce
iranje se menata a ima
oprocesora.
Na slici je prika 5 segmenata
Segmentacij
Najpopularnijeza straničenjijeliti na fizičri tome, stran
rocesor Intelselector) i potranica. Stran
ciji, kao i primorija se ne činu slobodneesa, može se s
obavlja prea podršku i
kazan slučaj sa, čije su defi
tabeli
ja sa strani
e serije proceje, tako da očki diskontinuničenje poništ
l 80386 koriomjeraja u o
ničenje je realspoljna tabunutrašnja
i multiprogramože iskori
e memorije. Psmanjiti sažim
eko tabele u hardveru
segmentacije nicije date u i segmenata.
ičenjem
esora Intel (80mogućavaju ualne logičketava eksternu
isti segmentaokviru segmelizovano u dvbela se zove ka - tabela stran
amiranju s pastiti za smjeProblem ekstmanjem mem
0x86 i Pentiuprimenu kom
e celine. u fragmentacij
acije sa stranenta (offest).va nivoa: katalog straninica
Operativni sistem
49
articijama preštaj segmenaterne fragmen
morije.
um) i Motorombinovanih m
ju segmenata
ničenjem. LoIz tabele se
ica (page dire
mi
romjenljive data ukoliko nntacije, koja z
la (68000) immetoda disko
a.
ogička adresaegmenata čita
ectory)
dužine, javlja ne postoji dozavisi od veli
maju ugrađenuontinualne alo
a se sastoji a se adresa l
prikupio i ob
a se eksterna ovoljno velikičine segmena
u podršku i zokacije pa se
od identifikalogičke stran
bradio Miroslav Mihalj
fragmentacija šupljina, bata i raspodje
za segmentacie procesi mog
atora segmennice u katalog
jišin
ja. ez
ele
iju gu
nta gu
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
50
Fragmentacija memorije Fragmentacija se odnosi na neiskorišćenu memoriju koju sistem za upravljanje memorijom ne može da dodijeli procesima. Uz nju je povezan i sljedeći problem. Neka postoji više (m) slobodnih segmenata u koji se može upisati sljedeći proces. Postavlja se pitanje koji od njih odabrati. Moguća su sljedeća rješenja:
Prvi koji zadovoljava (first-fit): Procesu se dodjeljuje prvi segment koji zadovoljava postavljene memorijske zahtjeve. Obično pretraživanje počinje od početka liste slobodnih segmenata ili se nastavlja od mjesta gdje je prethodno ispitivanje zaustavljeno.
Najbolje poklapanje (best-fit): Procesu se dodjeljuje onaj segment koji nabolje odgovara njegovim memorijskim zahtjevima. Iako na prvi pogled ovim pristupom se najbolje iskorištava slobodna memorija, rezultat je stvaranje malih segmenata, šupljina, koji su posljedica razlike veličine segmenta i programa.
Najlošije poklapanje (worst-fit): Procesu se dodjeljuje najveći slobodni segment. Ovaj algoritam ima za cilj stvaranje što većih šupljina, suprotno prethodnom algoritmu.
Provedene simulacije pokazale su da su prva dva algoritma bolja od posljednjeg u smislu bolje iskoristivosti memorije kao i prosječnog vremena izvođenja procesa. Postoje dva tipa fragmentacije: interna i eksterna. Interna fragmentacija je dio memorije unutar regiona ili stranice koja je dodjeljena datom procesu i ne koristi se od strane tog procesa. Interna fragmentacija je prouzrokovana različitom veličinom dodjeljene memorije i programa koji je učitan u taj dio memorije. Taj dio memorije nije raspoloživ za korišćenje drugim procesima sistema sve dok dati proces ne završi sa radom ili ne oslobodi dodjeljenu memoriju. Interna fragmentacija ne postoji kod upravljanja memorijom pomoću dinamičkih particija, kod statičkih segmenata i kod dinamičkih segmenata. Eksterna fragmentacija je neiskorišćena memorija između particija ili segmenata. Ova memorija nije kontinualna, već se sastoji iz više manjih dijelova. Eksterna fragmentacija ne postoji kod upravljanja memorijom pomoću statičkih i pomoću dinamičkih stranica. Za prevazilaženje problema eksterne fragmentacije koristi se tehnika sažimanja ili kompakcije (compaction). Kompakcija se izvršava u tri faze.
1. Prvo se određuje nova lokacija za svaki blok koji se premješta.
2. Zatim se ažuriraju svi pokazivači na taj blok u skladu sa novom lokacijom.
3. U trećoj fazi se podaci premještaju na novu lokaciju
Primjer spajanja memorije, premještanjem procesa P3 i P4
OPERATIVNISISTEM
OPERATIVNISISTEM
Se
Z KkmAd Vp Z HHreUdoppr
Odd Je
O
eznadar: OS i RM
Zaštita me
Kada programompletnog si
memoriju. Ako nekoliko
odjeljene. Ov
Važna karakteojavljuju u nj
Zaštita memor
Hardversko rjeHardverska zegistar.
U baznom regati program psega memorrikazano na s• Prvo se
vrijednos• Ako je o
adresa m• Ako je
memorij
Ovakvom harijelu memorijozvoljenog a
edino operativ
Operativni sist
emorije
m šalje podatkistema. Jedan
o procesa dijvim se ostvaru
eristika sistemjegovoj tabel
rije se može i
ešenje je preszaštita memo
gistru se nalazsmješten, dorije unutar k
slici. provjerava d
sti koja se naovaj uslov ispmanja od zbira
i ovaj uslovi.
rdverskom zaije koji je izvdresnog pros
vni sistem m
tem takođe, s
ke na pogrešnn od osnovn
jeli memorijuje određeni
ma sa stranii stranica.
implementira
slikavanje adrorije se može
zi najmanja aok se u grankoga program
da li je genealazi u baznompunjen tada sea vrijednosti uv ispunjen d
aštitom elemivan njegovog tora tada će d
ože da napun
sprečava prog
ne adrese ili iih zadataka
u, procesimaoblik privatn
ičenjem je d
ti hardverski
resa (addresse ostvariti kor
adresa fizičkeničnom regist
m može pristu
erisana adresam registru. e provjerava u baznom i grdozvoljava s
inisana je modozvoljenog
doći do sistem
ni bazni i gran
grame da mije
Operativni sistem
51
ih smješta nasistema za u
a se ne smijnosti procesa
da svaki proc
i softverski.
s translation) rišćenjem dva
e memorije gtru nalazi ve
upati, kao što
a veća ili je
da li je generaničnom reg
se pristup fiz
ogućnost da adresnog pro
mske greške,
nični registar
enjaju sadržaj
mi
a nedozvoljenupravljanje m
ije dozvoliti a.
ces može da
i ovo rješenja registra koj
gdje je eličina o je to
dnaka
risana gistru. zičkoj
neki korisniostora. Ako jtj. do takozv
korišćenjem
j ovih regista
ne lokacije domemorijom je
da mjenjaju
a pristupi sam
e je opisano ui se zovu: ba
Logičk
čki program e generisana ane fatalne g
specijalne pr
ara.
prikupio i ob
olazi do zastoe zaštita proc
u lokacije ko
mo onim ok
u nastavku teazni ( base) i
ki adresni pro
m nakon adresadresa datog
greške.
riviliegovane
bradio Miroslav Mihalj
oja ili čak pacesa koji dije
oje nisu njim
kvirima koji
eksta. granični (lim
ostor
siranja pristug programa v
instrukcije.
jišin
da ele
ma
se
it)
upi an
Se
U Urasiup
U SUsekksajeurUi kp G
eznadar: OS i RM
UpravljaUlazni i izlaznačunarom. Uistemu. Izlaznpotrebljivom
U/I modul
poljašnji uređU većini račune naziva U/I omunikaciju omunikacija a određenim pedne strane biređaja.
U/I modul je dobezbjeđuje
ontrolu njihoerformanse ra
Glavne funkcij• • • • •
anje uređni uređaji su
Ulazni uređajini uređaji pre
m za ljude.
Različiti m
li
đaji računarsknarskih sistem
modul. U/I sa U/I uređ
sa procesoropravilima. Nii to znatno us
direktno prikrazmjenu in
ovog rada naačunarskog s
ije U/I modulKontrola iKomunikaKomunikaPrihvatanjOtkrivanje
đajima Uveoma važn
i prikupljaju euzimaju pod
odeli realizac
kog sistema sma procesor nmodul komuđajima. Perif
om i memorijije isplativo usporilo operac
ključen na sistnformacija saa način koji nistema.
la su: i usklađivanjeacija sa proceacija sa uređajje podataka e grešaka
U/I proceni za efikasno
podatke iz odatke dobijen
RačTo (nprtast Svapod Spo
cije pristupa
se još nazivajne kontroliše unicira direktferni uređajiom znatno usuključivati u pcije procesor
temsku magia U/I uređajinajmanje utič
e saobraćajaesorom ajima
Operativni sistem
52
essing&co korišćenje rokoline i prene obradom i
čunari rade sasu: uređaji zar. modemi), tatura, monito
aki od ovih udatke iz račun
oljašnji uređaj
U/I uređajim
u i periferni u direktno pertno sa procei su znatno sporila cio siprocesor logi
ra, dok bi sa d
istralu ima i če na
mi
control računarskog vode ih u obprosljeđuju i
a velikim broja memorisanjuređaji koji
or, štampač) i
uređaja treba narskog sistem
ji se priključu
ma i njiov odn
uređaji ili perriferne uređajsorom i procsporiji od pstem. Osim tiku rada velikdruge strane o
sistema. Oni blik pogodanih na dalju ob
jem različitihje (npr. disko omogućuju drugi specije
da ima mogma.
uju na računa
nos prema OS
riferali. e, nego su on
cesor preko nprocesora taktoga, svaki pekog broja razlonemogućilo
prikupio i ob
i predstavljajun za obradu ubradu ili prik
h uređaja. ovi, trake), ur
interfejs saelizovani uređ
gućnost da po
ar preko U/I m
S (kernelu)
ni priključeninjega obavljako da bi njeriferni uređaličitih periferdodavanje no
bradio Miroslav Mihalj
u vezu ljudi u računarsko
kazuju u oblik
eđaji za prena ljudima (npđaji.
ošalje ili prim
modula.
i na uređaj koa svu potrebnihova direktnaj radi u skladrnih uređaja. Sovih tipova U
jišin
sa om ku
nos pr.
mi
oji nu na du Sa
U/I
Se
B
T P NčeKoPm
eznadar: OS i RM
Blok dijag
Tehnike iz
Programira
Najjednostavnekanja ((busy
Kada procesordgovarajućemostoje četiri
modulu: • Kontrperifernogpreduzeti. • Test odgovaraju• Komapročita pobafer. • Komapročita po
gram U/I
zvršavanj
ani U/I mod
niji način izvry and wait). r izvršava prom U/I modulu
tipa komand
rolna komag uređaja i k
komanda kućih perifernanda za čitaodatak iz per
anda za pisdatak sa mag
modula
ja U/I ope
del
ršavanja U/I
ogram i naiđu. di koje proce
anda koja skojom se naz
ojom se ispiih uređaja. anje izdaje rifernog uređ
sanje izdaje gistrale i pren
Blok d
eracija
operacija je
đe na zahtjev
esor može da
se koristi zznačava akcij
ituje stanje U
direktivu U/đaja i smjesti
direktivu U/ese ga u perif
Operativni sistem
53
diagram U/I m
programirani
za U/I opera
a pošalje U/
za aktiviranjeija koju treba
U/I modula
/I modulu dai ga u intern
/I modulu daferni uređaj.
mi
modula
i U/I (Progra
acijom, on od
/I
e a
i
a ni
a
mmed I/O: P
dređuje potreb
prikupio i ob
PIO), poznata
bne adrese i
bradio Miroslav Mihalj
a i kao meto
šalje komand
jišin
da
du
Se
P PmPn
R SRsa Kuppbr Opovmse MKpr
eznadar: OS i RM
Prekidina te
rekidima uprmogu da budu
rimjer obavlja slikama dol
Razlike izm
uštinski razlkRazlika je u naamog program
Kod programipravlja U/I oodataka. Kadrži od U/I int
Osnovni mehaodataka se invaj način ne p
može takođe ke (javila se) o
Moglo ni se reKod modernih
ristup ne razl
ehnika U/I
ravljan U/I seu jedino računjanja U/I opele.
među progra
ka između ovačinu pokretama (procesa),
ranog U/I preoperacijom, kda procesor izterfejsa, evide
anizam koji snicira od strapostoji više pkoristiti mehaodređena greš
eći da je razlih OS-a i prolikuju bitno.
– Interapt
e primjenjuje narski sistemiracije sa peri
amiranog i
va dva pristupanju procedur, a kod interap
enosa vrši se kao što je čitazda komanduentno je da pr
se koristi kodane U/I uređapotreba za peranizam prekidška, ukazuje n
ika istorijska,grama za ob
U/I model
na skoro svimi sa vrlo ogranifernim uređaj
prekidnog
pa nema. re pristupa urpt modela zah
razmjena poanje statusa spu U/I uređajurocesor suviše
d prekidne U/aja, koji korisrmanentnim tda kada želi dna/ završetak
, i da se odnobradu U/I zah
Operativni sistem
54
l
m računarskimničenom funk
ajema (diskov
g modela pr
ređaju. Kod pahtjev za kom
dataka izmeđpoljnjeg uređ
u on zatim čee mnogo vrem
/I je isti kao isti prekidni mtestiranjem stda CPU obratlokalne oper
osi na vrijemehtjeva proces
mi
m sistemima,kcijom. vima, štampač
ristupa U/I
programskog munikacijom s
đu CPU-a i Uđaja, izdaje keka sve dok smena gubi na
i kod programmehanizam dtatusa U/I ureti njemu pažnracije i dr.
e kad se procsi se obavljaj
bez obzira n
čem...) uz ko
I uređajima
modela zahtja U/I uređaje
U/I interfejsa. komande REAse U/I operaca testiranje sp
mirane U/I. Ka ukaže CPU
eđaja. U/I uređnju iz drugih r
ces izvršenja u paralelno p
prikupio i ob
na njihovu vel
orišćenje prek
a
tjev je implemem dolazi izv
CPU izvršavAD ili WRITcija ne završipremnosti za p
Kod prekidnoU-u na svoju eđaj razloga, kao
programa stvpa se progra
bradio Miroslav Mihalj
ličinu. Izuzet
kida je prikaz
mentiran unutana.
va program koTE i vrši pren
. Kako je CPprenos.
og U/I-a prenspremnost. N
što su: očeku
varno prekidamski i intera
jišin
ak
an
tar
oji nos PU
nos Na
uje
ao. apt
Se
D NpbrizprUD
DkKpprM
DbrKurZDpDdsvciPp
eznadar: OS i RM
Direktan pr
Nedostaci obaodataka izmerzinom kojomzvrši veliki brrenosu veliki
U tom slučajuDMA), kod ko
Direktan pristukontroler preKod PC-a DM
odataka. Svakrenose podata
Moguća su raz memo I/O po memo
Da bi se izvrši
roj bajtova koKada procesor
ređaja sa kogZatim procesoDMA kontrole
omoći centraDMA dobija k
a bude slobodvoje operacijikluse na mago završetku rocesoru se š
ristup –DM
a prethodno oeđu memorijem procesor mroj instrukcijaih količina pou je efiksnijeoje se prenosp
up memoriji edstavlja speMA prenos ki od DMA kaka. Svaki odzličiti tipovi Dorija -> I/O port -> memororija -> memo
io prenos potroje treba prenr treba da izvga se vrši prenor predaje adrer nastavlja
alnog procesokontrolu nad dna kada je pe sa magistragistrali od cenoperacije, Dšalje samo je
MA model p
pisana načinae i U/I modu
može da testira zbog čega o
odataka. e primjeniti tpodataka obav
zahtijeva dodcijalizovani obavlja se p
kontrolera imd kanala možeDMA prenosaort, rija i orija
rebno je defnnijeti. vrši U/I opernos ili na kojiresu DMA konizvršavanje o
ora. magistralom
procesor ne koalom. Ovakavntralnog proc
DMA šalje predan prekid,
pristupa U/I
a izvršavanjaula. Prenos pra i servisira ostali program
tehniku prenovlja u jednom
datni modul procesor koj
posredstvom a po četiri kae se programia:
nisati tip pren
raciju, on upii treba upisatintrolnog blokoperacije i p
samo kada ooristi ili kadav način rada Dcesora. rekid proceso, bez obzira n
Operativni sistem
55
I uređajim
a U/I operacijpodatak se od
U/I modul. Pmi moraju da
osa nazvanu m koraku.
priključen naji može da izposebnog m
anala – četiri nmirati da u dato
nosa, početnu
še DMA koni podatke. ka DMA kontprenosi jedan
ona nije zauza DMA kontroDMA kontrol
oru kojim gana količinu p
mi
ma
a su što zahijdvija preko pPri izvršavanjčekaju. Ovi
direktan pris
a sistemsku mzvršava prog
mikrokontrolernezavisne cjeom trenutku o
(ili krajnju) a
trolni blok u
roleru i prelan po jedan b
zeta od straneoler zahtijevalera se naziva
a obavještavaprenesenih p
evaju interverocesora i brju svake U/I nedostaci pos
stup memorij
magistralu kogramirani U/ra specijalizoeline koje omobavi prenos
adresu u mem
memoriju. K
zi na druge pajt radeći dir
e centralnog pa od procesoraa krađa ciklu
da je operacpodataka.
prikupio i ob
enciju procesrzina prenosaoperacije prosebno dolaze
ji ( Direct m
oji se DMA k/I. ovanog za p
mogućavaju zabloka podata
moriji gdje se
Kontrolni blok
poslove. irektno sa m
procesora. Ma da privreme
usa, jer u sušt
cija izvršena
bradio Miroslav Mihalj
ora pri prenoa je ograničenocesor mora do izražaja p
memory acces
kontroler. DM
prenos blokovasebne direktnaka.
nalazepodac
k sadrži adre
agistralom b
Magistrala moeno suspendutiniDMA kra
a. Na taj nači
jišin
su na da pri
ss,
MA
va ne
ci i
su
ez
že uje de
in,
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
56
Zaštita operativnih sistema Problem zaštite postoji kod svih računarskih sistema, a posebno kod sistema koji su povezani na Internet. Pitanje zaštite je postalo jedno od najvažnijih pitanja u svakom poslovnom sistemu. Operativni sistem ima značajnu ulogu u riješavanju problema zaštite. Apsolutna zaštita računarskih sistema se ne može ostvariti. Osnovni cilj je obezbjediti visok nivo zaštite i zato pristup riješavanju problema zaštite mora biti sveobuhvatan sa stalnim razvijanjem novih mehanizama zaštite u skladu sa bezbjednosnim problemima koji nastaju. Kod savremenih računarskih sistema primjenjuje se sistem zaštite na više nivoa, tj. zaštita se primjenjuje:
1. na nivou mreže, 2. na nivou operativnog sistema, 3. na nivou aplikacije, 4. na nivou baze podataka, 5. kao proceduralna zaštita.
Osnovna potreba za zaštitom u okviru operativnog sistema nastaje zbog dijeljenja resursa kao što su memorija, U/I uređaji, programi i podaci. Operativni sistem može da obezbjedi sljedeće načine zaštite: Bez zaštite – kada se dijelovi koda sa kritičnim sekcijama izvršavaju u različito vrijeme; Izolaciju – kada se svaki proces izvršava nezavisno od drugih procesa bez dijeljenja resursa i bez međusobne komunikacije. Svaki proces ima svoj adresni prostor, datoteke i druge objekte; Sve je djeljivo ili nema dijeljenja resursa – vlasnik objekta deklariše objekat kao javni ili privatni. Ako je objekat javni svako mu može pristupiti, ako je privatni može mu pristupiti samo vlasnik; Dijeljenje preko ograničenja pristupa – kada operativni sistem obezbjeđuje da samo autorizovani korisnik može da pristupi datom objektu. U ovom slučaju operativni sistem kod svakog pristupa datog korisnika nekom objektu provjerava dozvolu pristupa; Dijeljenje preko dinamičkih sposobnosti – kada se koncept kontrole pristupa proširuje tako da omogući dinamičko kreiranje prava za dijeljenje objekata; Ograničeno korišćenje objekata – kada se ograničava ne samo pristup datom objektu, već operacije koje se mogu vršiti nad objektom. Svaki višekorisnički operativni sistem mora da obezbjedi zaštitu od neautorizovanog pristupa jednog korisnika resursima drugog korisnika. Sistem lozinki koji se uglavnom primjenjuje nije potpuno siguran. Korisnici obično biraju lozinke koje se lako pogađaju ili biraju složenije, ali ih zapisuju i ostavljaju na vidljivim mjestima. Narušavanjem sistema lozinki dolazi se do neautorizovanog pristupa resursima datog sistema. Zahtjevi sistema zaštite savremenih sistema Kod današnjih sistema koji se zasnivaju na komunikaciji korisničkog procesa i servisa koji obezbjeđuju neku vrstu usluge ili obrade podataka postoje sljedeći zahtjevi sistema zaštite:
1) Međusobna autentikacija, 2) Kontrola pristupa ili autorizacija, 3) Zaštićena komunikacija, 4) Neporicanje slanja, odnosno prijema podataka, 5) Ne ponavljanje slanja, 6) Nema odbijanja servisa.
Međusobnom autentikacijom se obezbjeđuje verifikacija identiteta obe strane koje učestvuju u komunikaciji. Tek nakon završene međusobne autentikacije se može nastaviti dalja komunikacija. Kontrolom pristupa se obezbjeđuje da samo autorizovani korisnici mogu pristupiti traženim podacima. U suprotnom, neautorizovani korisnik bi mogao da naruši integritet podataka, tako što bi mogao da ih mjenja. Zaštićena komunikacija garantuje tajnost podataka koji se prenose preko komunikacionog kanala. Neporicanje ima značenje da ni jedna strana koja učestvuje u komunikaciji ne može da poriče slanje, odnosno prijem podataka prenijetih u toku procesa komunikacije. Ne ponavljanje slanja obezbjeđuje sistem od mogućnosti da treća strana kopira cijelu ili neki dio poslate poruke i nakon toga vrši ponovo slanje tih istih podataka. Zahtjev da nema odbijanja servisa obezbjeđuje da nema degradacije performansi datog sistema i garantovanje legitimnim korisnicima sistema da mogu da koriste potreban servis.
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
57
Vrste napada Dati računarski sistem ili dio mreže možemo posmatrati sa aspekta obezbjeđivanja informacije. Uobičajen tok informacija kada zaštita sistema nije narušena je od izvora do odredišta kao na slici 1.
Slika 1. Uobičajen tok informacija kada zaštita sistema nije narušena
Kada je zaštita sistema narušena, tada postoje sljedeće mogućnosti:
• prekid toka informacija, • modifikacija informacija, • presretanje informacija, • fabrikacija informacija (slika 2).
Napadi koji prouzrokuju prekid toka informacija se nazivaju napadi na raspoloživost sistema. Primjeri takvih napada su: prekid komunikacione linije, uništenje neke hardverske komponenete ili nedostupnost datog sistema za upravljanje datotekama. Napadi koji imaju za cilj modifikaciju informacija pripadaju klasi napada na integritet podataka. Primjeri takvih napada su: modifikacija sadržaja elektronske pošte, modifikacija sadržaja date datoteke, modifikacija elektronskih dokumenata koji se prenose preko mreže. Treća vrsta napada su napadi na tajnost ili povjerljivost podataka. Oni su prouzrokovani presretanjem informacija koje se prenose, tako što neautorizovani subjekt dobija pristup tim informacijama. Primjeri takvih napada su: korišćenje sniffer programa, nedozvoljeno kopiranje datoteka ili programa koji se prenose. Četvrta vrsta napada su napadi na autentičnost, koji su prouzrokovani fabrikacijom informacija. Nastaju tako što neautorizovani subjekt generiše falsifikovane ili lažne informacije unutar datog sistema. Primjeri napada na autentičnost su: dodavanje sadržaja unutar nekog elektronskog dokumenta, generisanje nepostojeće elektronske pošte ili ponovno slanje pošte poslatih u nekom prethodnom periodu
Slika 2 Tok informacija kada je zaštita sistema narušena.
Napadi na računarske sisteme se mogu takođe klasifikovati u dvije grupe: pasivni i aktivni. Kod pasivnih napada nema promjene podataka, dok kod aktivnih može biti promjene podataka, generisanje novih podataka, može se vršiti ponovno slanje i može se primjeniti masovno slanje podataka čime se ugrožava raspoloživost napadnutog sistema. Krajnji efekat zlonamjernih programa mogu da budu veoma različiti uključujući i obaranje operativnog sistema.
Slika 3. Klasifikacija zlonamjernih programa
Se
Ntr
UkLnBre V RRbrprCbrddT
UnvfafaNseprredo C CvprtrIzZPra
eznadar: OS i RM
Napade na oprojanske kon
U opštem slučoji se instalir
Logička bombedokumentov
Bakterije su zesurse.
Virusi
Računarski virRazultat izvrš
risanje neke rogram može
Ciljevi autora rzo širenje via se virus teška odbrana od
Tipičan virus u• • • •
U fazi spavanjekog drugog irusa. Identičazi trigerovanaza izvršavan
Najpoznatiji tie uvijek nalazrograma i inecord) i šire setekcije od sstvaruju da d
Crvi
Crv je računarirusa ili za zrenose prekoroše puno mezmeđu crva i
Za razliku odropagacija cračunara.
perativne sistenje.
čaju postoje raju i izvršavaba je zlonamvani dio kodazlonamjerni p
rus je programavanja virusadatoteke, po
e uraditi. virusa su:
irusa, ko detektuje,
d virusa bude u toku svog ž
faza spavafaza propafaza trigerfaza izvrša
ja virus je beprograma ili
čna kopija virnja dolazi donja u kojoj viripovi virusa sze kao dio ne
nficiraju sve se nakon pod
strane antivirudetekcija na o
rski program zamjenu pos
o računarske morije na hovirusa ne po
d virusa, za rva može bit
eme od stran
zlonamjerni aju kao dodatmjeran progra koji omogućprogrami koji
m koji se moa može biti i
oziv nekog te
što kompliko
životnog cikluanja, agacije, rovanja, avanja. esposlen. Iz oi datoteke, itdrusa se smješ
o aktiviranja vrus može samsu: paraziti, stekog izvršnogprograme ko
dizanja sistemusnih softversnovu karakt
koji kopira stojećih datotmreže koristest računarima
ostoji baš uvijaktiviranje c
ti mnogo brž
ne zlonamjern
programi kojtni dijelovi neram koji se ćava pristup ni se replikuju
že sam reproispisivanje neelefonskog br
ovanija. usa prolazi kr
ve faze virusd. Ova faza nta unutar nekvirusa i tada
mo ispisati nektalno prisutnig programa.
oji se izvršavma sa diska. Sra. Polimorfnerističnog uzo
samog sebe steka verzijameći nedostatka. Najčešće sejek jasna grancrva nije pota od propaga
Operativni sistem
58
nih programa
ji mogu postekih drugih p
aktivira na neželjenim kou sve dok ne
odukovati takoeke poruke nroja, itd. Dru
roz sljedeće f
s se može aktnije obaveznakog programa
on započinjeku poruku nai u operativnoStalno prisut
vaju. Boot seStealth virusi ni virusi su vorka virusa n
sa jednog račma datoteka kke operativnihe prenose uz nica. Crvi su treban korisnacije virusa.
mi
a možemo po
tojati nezavisrograma. neki događ
orisnicima. napune cio
o što dodaje sna ekranu, prugim riječima
faze:
tivirati na neka za sve virua ili datoteke e funkciju zaekranu ili izv
oj memoriji, bni virusi u m
ektor virusi insu posebno pirusi koji mu
nije moguća
čunara na drukoje predstavh sistema u pelektronsku pdosta slični v
nik i oni skrBrzina propa
odijeliti u nek
no od drugih
aj (npr. na
disk ili dok
sopstveni kodrikaz slike naa, virus može
ki događaj, kase. U fazi proi na taj način
a koju je i navršiti neku deboot sektor, s
memoriji su obnficiraju glavprojektovani utiraju priliko
ugi. Crvi se mvljaju Trojanpogledu zaštipoštu i uz dodvirusima, ali rivaju svoje agacije je pro
prikupio i ob
koliko grupa
h programa, k
neki datum)
ne potroše sv
d nekom druga ekranu, moe uraditi sve
kao što je datuopagacije se n se vrši daljeamjenjen. Posestruktivnu opstealth i polimbično dio nekvni boot slogda budu nevi
om svakog in
mogu koristitinske konje. Oite. Crvi se bdatke elektronizmeđu njih širenje na doporcionalna
bradio Miroslav Mihalj
a: virusi, crv
kao i program
). Trapdoor
ve procesorsk
gom programodifikovanje
što računars
um, prisustvovrši klonirane inficiranje. sljednja faza peraciju. morfni. Parazkog sistemskog (master boidljivi priliko
nficiranja, čim
i za prenošenObično se crbrzo replikujunskoj pošti. postoji razlik
druge računara broju ranjiv
jišin
i i
mi
je
ke
mu. ili
ski
om nje
U je
ziti og
oot om me
nje rvi u i
ka. re.
vih
Seznadar: OS i RM Operativni sistemi prikupio i obradio Miroslav Mihaljišin
59
Trojanski konj Trojanski konj je program koji se najčešće prenosi na ciljni računar kao nevidljivi dodatak uz neki drugi program, a zatim dolazi do njegovog aktiviranja. Mogu se prenijeti kopiranjem programa, skidanjem sa Interneta, kao i otvaranjem dodatka u elektronskoj pošti. Aktivnosti Trojanskih konja mogu biti veoma različite. Mogu da obrišu podatke, pošalju svoju kopiju na sve računare sa liste elektronske pošte i da omogući dodatne napade na dati računar. Obično ostvaruju povezivanje sa nekim udaljenim računarom i prenose informacije sa računara na kome su instalirani. Trojanski konji koji se izvršavaju u okviru jezgra operativnog sistema su najopasniji. Tada ovi programi imaju potpunu kontrolu nad datim sistemom. To znači da programi kao što su, na primjer, drajver uređaja, screen saver i bilo koji drugi programi koje operativni sistem izvršava predstavljaju potencijalni izvor napada. Trojanski konji se najčešće prikazuju kao korisni programi, ali u suštiti oni uvijek imaju neku neželjenu aktivnost po onoga ko ih koristi. Oni se koriste za indirektno izvršavanje funkcija koje neautorizvani korisnici ne bi mogli da ostvare direktno.
Mehanizmi zaštite i autentikacija Zaštita sistema može biti implementirana na više različitih načina. Pod fizičkom zaštitom podrazumijeva se obezbjeđenje zgrada, obezbjeđenje prostorija i neki način kontrole identiteta korisnika sistema. Glavni problem zaštite kod svih operativnih sistema je autentikacija (proces određivanja identiteta nekog subjekta). Tradicionalan mehanizam zažtite je sistem kod koga se koristi korisničko ime i lozinka kojim se verifikuje identitet korisnika i na taj način isključuje mogućnost rada neidentifikovanih korisnika. Tajnost lozinke je glavni dio sistema kojim se naovaj način obezbjeđuje zaštita. Od načina implemenatacije sistema lozinki najviše zavisi koliko će sistem biti zaštićen. Zato većina današnjih sistema ne omogućava korisnicima unos onih lozinki koje nisu dovoljno sigurne i koje se nazivaju slabe lozinke. Primjeri slabih lozinki su ime i prezime, riječ iz riječnika, ime člana porodice, itd. U cilju bolje zaštite, potrebno je da operativni sistem podrži jake lozinke, odnosno:
1. kontroliše da lozinke budu riječi koje se ne mogu naći u riječniku, 2. kontroliše da lozinke budu riječi najmanje 6 karaktera dužine, 3. kontroliše da lozinke budu sastavljene i od slova i brojeva, 4. obezbjedi da lozinke imaju period važenja, 5. ograniči broj pokušaja prijavljivanja na sistem sa pogrešnom lozinkom, tako što će nakon maksimalnom broja pokušaja automatski zabraniti korisnički nalog.
Najvažnija lozinka u datom sistemu je lozinka sistem administratora, jer ona ima kompletnu kontrolu nad sistemom. Upravo zbog toga najveći broj napada na sistem ima za cilj pronalaženje lozinke sistem administratora. Sistem zaštite koji se zasniva na lozinkama se može narušiti pogađanjem lozinki. Drugi način je metodom grube sile gdje se korišćenjem današnjih računara veoma brzo može pretražiti kompletan skup mogućih lozinki čija je maksimalna dužina unaprijed poznata. Narušavanje sistema zaštite koji se zasniva na lozinkama se može narušiti kao rezultat vizuelnog ili elektronskog monitoringa. Vizuelni monitoring nastaje gledanjem u tastaturu prilikom unosa korisničkog imena i lozinke. Elektronski monitoring se može uraditi pomoću sniffing alata kojim se može snimiti identitet korisnika i njegova lozinka. Kriptovanje podataka koji sadrže lozinku rješava ovaj problem.