1

 

1

 

Uvod u operativne sisteme

 

Raåunarski sistem je sloæen skup tehniåkih ureœaja (hardvera), programa koji zadaju
instrukcije hardveru, i podataka koji se obraœuju. Ljudi koji koriste raåunare, bilo kao
operateri, programeri ili projektanti, u radu se pridræavaju razliåitih formalnih i nefor-
malnih procedura. Mnoge procedure se mogu pretoåiti u programe, tako da ih oba-
vàaju raåunari, a ne àudi.

Prevodioci (engl. 

 

compilers

 

) omoguñavaju àudima da programe piãu na jeziku koji

razume åovek, i da ih zatim prevedu na maãinski jezik, tj. na jezik koji razume maãina.
Povezivaåi (engl. 

 

linkers

 

) i punioci (engl. 

 

loaders

 

) omoguñavaju sprezaçe viãe maãin-

skih programa u jednu programsku celinu. Ta celina se moæe upotrebiti viãe puta i uvek
se smeãta na razne lokacije u memoriji. Pri tome, treba odgovoriti na sledeña pitaça:

• Kako se viãe programa moæe istovremeno smestiti u memoriju? 
• Ko ñe izabrati koji ñe program biti u memoriji? 
• Koji ñe program i kada koristiti procesor? 
• Kako ñemo obezbediti da svaki program dobije resurse? 

Operativni sistem sadræi odgovore na sva ova pitaça.
U ovom poglavàu je u krañim crtama opisan istorijat operativnih sistema i

navedene su çihove funkcije, karakteristike i poæeàne osobine. Operativni sistemi su
podeàeni na osnovu razliåitih kriterijuma i dat je krañi pregled çihove strukture. De-
taànije informacije o funkcijama pojedinih slojeva u hijerarhijskom modelu operativ-
nog sistema nisu predmet izuåavaça u ovom poglavàu.

 

Sadræaj poglavàa

 

1.1 Istorijat operativnih sistema
1.2 Definicija i funkcije operativnog sistema
1.3 Karakteristike operativnih sistema 
1.4 Vrste operativnih sistema
1.5 Opãti pregled strukture operativnih sistema
1.6 Operativni sistemi UNIX i Linux

 

1.7 Pitaça i zadaci

 

2

 

Poglavlje 1: Uvod u operativne sisteme

 

1.1  ISTORIJAT OPERATIVNIH SISTEMA

 

Istorijat operativnih sistema posmatrañemo prateñi istorijat samih raåunara. 

Raåunari 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. Ovi raåunari su bili jako spori, programiralo se na maãinskom jezi-
ku, dok su simboliåki jezici (ukàuåujuñi i asembler), kao i operativni sistemi, u to vre-
me bili nepoznati. Ljudi koji su radili na tim raåunarima obavàali su sve poslove – od
programiraça do odræavaça raåunara.

U prvoj generaciji raåunara, opsluæivaçe raåunarskog sistema bilo je potpuno pre-

puãteno operateru, koji je morao da pripremi sve ãto je potrebno da se zadatak obrade
moæe obaviti. Åovek je, dakle, imao punu kontrolu nad raåunarskim sistemom. Ope-
rater je bio u moguñnosti da sve potrebne radçe obavi na vreme, jer je sistem bio spor
i izvrãavao je samo jedan program, tj. obavàao samo jedan zadatak. Moæe se reñi da je
iskoriãñeçe raåunarskog sistema, tj. çegovih najvaænijih resursa – centralnog proce-
sora i centralne memorije – bilo slabo. Najveñi deo vremena troãio se na poslove ope-
ratera i ulazno-izlazne operacije, a mnogo maçi deo na rad centralnog procesora. Iako
je ovakav sistem bio krajçe neefikasan, odnos tih vremenskih perioda bio je u pri-
hvatàivim granicama zbog relativno male brzine samog centralnog procesora.

Osnovu raåunara druge generacije (1955–1965) åinili su tranzistori, pa su raåunari

postali maçi, pouzdaniji i jeftiniji. Raåunare druge generacije su, osim vojske, kupo-
vale i velike korporacije i univerziteti. Raåunari su bili smeãteni odvojeno, u posebnim
sobama, koje su se delile u tri funkcionalne celine: ulazna soba, centralni raåunar i izla-
zna soba. Programeri su pisali programe na papiru, na programskom jeziku FORT-
RAN, zatim su se ti programi prenosili na buãene kartice, koje su se ostavàale u sobi sa
ulaznim raåunarom (engl. 

 

input room

 

). Operator sistema je, zatim, uzimao buãene kar-

tice 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 obavàao posao, a rezultat
se dobijao takoœe na buãenim karticama, koje su se prenosile u prostoriju s rezultatima
(engl. 

 

output room

 

). Ovde se mnogo vremena troãilo na ãetaçe izmeœu raznih prosto-

rija s buãenim karticama. Operativni sistem kao zaseban pojam joã uvek nije postojao. 

Daàe se kao poboàãaçe uvodi paketna, tj. grupna obrada (engl. 

 

batch processing

 

),

zasnovana na upotrebi magnetne trake – ureœaja mnogo bræeg od buãenih kartica. Pri
paketnoj obradi, u ulaznoj sobi s poslovima sakupàa se jedna koliåina sliånih progra-
ma (na primer, 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. s moñnijim i skupàim
raåunarom, predviœenim za izvrãavaçe programa (npr. IBM 7094). U glavni raåunar
se uåitava poseban program koji je zaduæen da s trake sa poslovima programe redom
uåitava i izvrãava. Taj program se moæe smatrati pretkom operativnih sistema. Nakon
izvrãavaça programa, rezultati se snimaju na drugu magnetnu traku koju operater pre-
nosi do treñeg raåunara, zaduæenog za prebacivaçe rezultata s magnetne trake na
buãene kartice. Maçi raåunari (ulazno-izlazni) nisu direktno vezani za glavni raåunar,
ãto znaåi da rade u 

 

off-line

 

 reæimu. 

background image

 

4

 

Poglavlje 1: Uvod u operativne sisteme

 

izvrãava programe u memoriji. Kada jedan program zavrãi rad, procesor na çegovo
mesto moæe uåitati drugi program sa diska. Sliåno, sve ãto se ãaàe na izlaz, prvo se pre-
nosi na brzi ureœaj, a zatim s çega na spore periferne ureœaje.

Podela vremena (engl. 

 

time-sharing

 

) jeste tehnika koja omoguñava da svaki kori-

snik radi s raåunarom interaktivno, i to preko posebnog terminala koji je istovremno i
ulazni i izlazni ureœaj za korisnika. Podela vremena je poseban oblik multiprogrami-
raça, gde svakom terminalu pripada dodeàeno procesorsko vreme. Posle isteka vre-
menskog kvantuma, tj. dodeàene koliåine procesorskog vremena, procesor se dodeàuje
drugom terminalu. Ukoliko je terminal blokiran zbog åekaça na ulazno-izlazne opera-
cije, procesor se i pre isteka kvantuma dodeàuje drugom terminalu. 

Kod treñe generacije raåunara posebno treba istañi pojavu dva operativna sistema –

MULTICS i UNIX. Projekat MULTICS (

 

MULTIplexed Information and Computing

Service

 

) neuspela je ideja kompanija MIT, Bell Labs i General Electric da se napravi

moñan raåunar i operativni sistem koji ñe biti u staçu da radi s velikim brojem
terminala. Osnovna ideja je preuzeta iz modela distribucije elektriåne energije – u tom
modelu, dovoàno je da svaki korisnik koji poæeli da upotrebi neki elektriåni aparat, taj
isti aparat samo prikàuåi na elektriånu mreæu. Sliåan model su pokuãali da naprave i sa
raåunarima: ideja je da u jednom gradu postoji moñan centralni raåunar, a da graœani
kod kuñe imaju terminale kojima preko modema pristupaju glavnom raåunaru. Ovaj
model se moæe smatrati preteåom raåunarskih mreæa i Interneta. Drugi operativni si-
stem, UNIX, uproãñena je varijanta MULTICS sistema, koja je doæivela praktiånu rea-
lizaciju i ekspanziju do danaãçih dana. Ken Thompson, jedan od nauånika i
programera kompanije Bell Labs, koji je radio na razvoju projekta MULTICS, napisao
je za raåunar PDP-7 mini verziju MULTICS sistema. Posle toga je nastao UNIX (UNI
= jedan, X = CS = 

 

Computing Service

 

).

Raåunari treñe generacije zvali su se mini raåunari: prvi raåunar je DEC-ov (Digital

Equipment Corporation) PDP-1, do tada najmaçi i najjeftiniji raåunar. Koãtao je tada
“samo” 120.000 dolara.

U treñoj generaciji raåunarskih sistema, zbog pojave multiprogramiraça i porasta

brzina, veliåine memorije i broja ulaznih i izlaznih jedinica, joã viãe kontrolno-upra-
vàaåkih funkcija prebacuje se sa åoveka na raåunar. Dakle, åovek definitivno gubi mo-
guñnost kontrole interne situacije u raåunarskom sistemu i upravàaça çome i sve ãto
je moguñe prebacuje se na raåunarski sistem, tj. na pojedine sistemske programe. Skup
svih tih programa naziva se jednim imenom: operativni sistem. Programer se oslobaœa
niza sloæenih rutinskih poslova i pruæa mu se moguñnost veñeg angaæovaça na krea-
tivnom delu posla. No, pored kontrolno-upravàaåkih programa u, raåunarima treñe ge-
neracije razvijen je i åitav niz usluænih programa, åiji je zadatak da daàe olakãaju i
pojednostave upotrebu raåunarskih sistema. Zbog toga, prema nameni, softver moæe-
mo podeliti na sistemski i korisniåki (aplikativni).

U åetvrtoj generaciji raåunara (1980–1990), prvi put se pojavàuju personalni raåu-

nari. Razvoj personalnih raåunara zapoåiçe pojavom LSI åipova, to jest åipova viso-
kog stepena integracije (engl. 

 

Large Scale Integration

 

). Raåunari su bili dovoàno

jeftini, tako da su ih mogli priuãtiti i viãe odseka iste firme ili univerziteta, dok su

 

1.2  Definicija i funkcije operativnog sistema 

 

5

 

personalni raåunari postali dovoàno jeftini da ih mogu imati i pojedinci. Poznatiji per-
sonalni raåunari su Spectrum, Commodore, Atari, zatim IBM PC, Apple Macintosh
itd. U prve operativne sisteme za personalne raåunare spadaju MS-DOS i UNIX.

Paralelno s razvijaçem korisniåkog softvera, razvija se i korisniåki interfejs pro-

grama, to jest korisniåko okruæeçe. Na taj naåin se osobama koje raåunarski sistem i
same programe ne poznaju detaàno, omoguñava da te programe uspeãno koriste.

Pored klasiånih operativnih sistema javàaju se i dve nove vrste, a to su mreæni ope-

rativni sistemi i distribuirani operativni sistemi. 

Mreæne operativne sisteme karakteriãu raåunari povezani u mreæu. Ovi raåunari

zadræavaju relativno visok stepen autonomije – svaki raåunar ima svoj operativni si-
stem – a u moguñnosti su da meœusobno razmeçuju podatke pomoñu odgovarajuñih
protokola. Operativni sistemi mogu biti razliåiti, potreban je samo zajedniåki protokol,
tj. zajedniåki jezik za komunikaciju. Korisnik jednog raåunara moæe se prijaviti na
drugi, preuzeti neke datoteke itd. Korisnik zna da nije sam u mreæi, tj. svestan je raz-
liåitih raåunara s kojima komunicira preko mreæe. 

Distribuirani operativni sistemi su mnogo ozbiànija varijanta u mreænom okruæeçu,

zato ãto osim deàeça i migracije datoteka i ãtampaåa omoguñavaju i deàeçe procesa,
tj. programa. Korisnici ovaj sistem vide kao jednoprocesorski sistem, ali se, u stvari,
radi o operativnom sistemu nameçenom za rad s viãe procesora koji su fleksibilno po-
vezani preko mreæe. To znaåi da postoji viãe raåunara povezanih u mreæu, ali samo
jedan operativni sistem, upravàa svim resursima u mreæi. U pravom distribuiranom si-
stemu, korisnik ne treba da vodi raåuna o tome gde su smeãtene çegove datoteke ili gde
se izvrãava çegov program – to je posao distribuiranog operativnog sistema. Distribui-
rani operativni sistem se, dakle, ponaãa kao jedinstvena celina. Korisnik ne mora znati
da je umreæen s drugim raåunarima – on ceo sistem vidi kao jedan raåunar.

 

1.2  DEFINICIJA I FUNKCIJE OPERATIVNOG SISTEMA

 

Operativni sistem objediçuje raznorodne delove raåunara u skladnu celinu i sakriva
od korisnika detaàe funkcionisaça ovih delova koji nisu bitni za koriãñeçe raåunara.
Operativni sistem radi sledeñe:

• upravàa programima, podacima i delovima od kojih se raåunar sastoji (procesor,

kontroleri, radna memorija), s ciàem da oni budu ãto celishodnije upotrebàeni;

• obezbeœuje pristupaåno radno okruæeçe za krajçeg korisnika raåunara, tako

ãto raåunar kao maãinu koja rukuje bitovima, bajtovima i blokovima pretvara u
maãinu koja rukuje datotekama i procesima.

U opãtem smislu, operativni sistem se moæe definisati kao skup programa koji

upravàaju resursima raåunarskog sistema i obezbeœuju interfejs ka korisniku. 

Prva funkcija operativnog sistema je upravàaçe resursima raåunara (engl. 

 

resour-

ce management

 

). Pod pojmom resurs podrazumevamo sve ãto je programu potrebno

za rad. Resursi mogu biti hardverski (procesor, memorija, ulazno-izlazni ureœaji) i

background image

 

1.2  Definicija i funkcije operativnog sistema 

 

7

Funkcije operativnog sistema

 

Funkcije koje treba da obavàa operativni sistem mogu se izvesti na osnovu oåekiva-
nih funkcija jednog raåunarskog sistema, kao ãto su:

[1]

Automatsko funkcionisaçe raåunarskog sistema
Operativni sistem mora da obezbedi funkcionisaçe raåunarskog sistema bez in-
tervencije operatera, iz veoma prostog razloga – àudske intervencije su mnogo
sporije od raåunara. U aktivnosti koje operativni sistem treba da izvrãava bez
àudske intervencije spadaju, na primer, puçeçe memorije programom iz se-
kundarnih memorija i izvrãavaçe jednog ili viãe programa.

[2]

Moguñnost planiraça i rasporeœivaça poslova, i postojaçe jezika za upra-
vàaçe poslovima
Pod planiraçem i rasporeœivaçem poslova (engl. 

 

scheduling

 

) podrazumeva se

odreœivaçe koji ñe se posao koji je spreman za rad izvrãavati, tj. kome ñe se do-
deliti glavni procesor. Radi kontrole automatske sekvence, operativni sistem
uvodi kontrolne naredbe, koje sluæe za upravàaçe radom celog raåunarskog
sistema. Preciznije, uvodi se jezik za upravàaçe poslovima (engl. 

 

job control

language

 

), koji se interpretira preko operativnog sistema. 

[3]

Multiprogramiraçe
Multiprogramiraçe je tehnika za pokretaçe viãe programa na istom raåunaru
istovremeno, tako ãto svaki dobije deo memorije, a procesor se dobija prema
funkciji za rasporeœivaçe poslova.

 

Slika 1.1   

 

Hijerarhijski model operativnog sistema.

J E Z G R O

H A R D V E R

Korisnik

Viãi slojevi u

hijerarhijskom modelu

Korisniåki interfejs

(komandni interpreter ili

grafiåko radno okruæeçe)

Želiš da pročitaš svih 27 strana?

Prijavi se i preuzmi ceo dokument.

Ovaj materijal je namenjen za učenje i pripremu, ne za predaju.

Slični dokumenti