1. Mrežni operativni sistemi

Mrežni operativni sistemi razvijani su od najranijih dana mikroračunara. U početku su to bile 

„crne kutije“ koje su predstavljale skup diskova sa odgovarajućom logikom za kontrolu mrežnog pristupa. 
Novell NetWare S-Net je jedna od pionirskih mreža. Napravljena je u zvezdastoj topologiji za relativno 
mali broj korisnika, a sastojala se iz kutije u kojoj je bio skup diskova kontrolisan procesorom Motorola 
68000. Na tu kutiju su se u zvezdastom rasporedu priključivali klijenti. Od samog početka S-Net mreža je 
zahtevala operativni sistem da bi pružala usluge radnim stanicama koje su koristile CP/M, a kasnije DOS. 
Novell je zaposlio razvojni tim čiji je zadatak bio izrada mrežnog operativnog sistema, koji bi egzistirao 
kao softver, nezavisno od Novell servera. Rezultat je bio NetWare. Ostale organizacije išle su sličnim 
putem. Ovi prvi sistemi prodavali su se dovoljno dobro da bi zadržali kompanije u poslu, ali zapravo nisu  
postale značajne sve do pojave IBM XT računara i njihovih klonova. 

Mnoge kompanije su u to vreme radile svoje mrežne operativne sisteme, a svi su o nečemu bili 

zavisni. Novell je zauzeo vodeće mesto prebacivši svoj mrežni operativni sistem iz S-Net kutije u XT 
računar.   Ovo   je   omogućilo   slobodan   izbor   računara,   ali   ne   i   mrežnih   kartica.   U   početku   je   Novell 
isporučivao svoje Gateway G-Net mrežne kartice, ali je odlučio da pruži podršku i ostalim proizvođačima 
hardvera. Tako su u igru ušli 

3Com Ethernet

Corvus OMNInet

 i 

Proteon Token Ring

 sa svojim mrežnim 

karticama. Budući da NetWare nije originalno razvijen kao DOS aplikacija, a bio je zamišljen da emulira 
male i srednje računare, podržavao je od samog početka višenitnost i multitasking. Novellov operativni 
sistem  postao  je  tako  popularan  da je sa samo  nekoliko  aplikacija u  1984.  skočio  na  više od  2000 
podržanih aplikacija osamnaest meseci kasnije. U početku se vodila borba između Novella, 3Coma i 
ostalih proizvođača hardverskih mrežnih uređaja za prevlast na tržištu, ali je Novell odneo veliku pobedu 
napravivši podršku u svom sistemu za 10 Mbps Ethernet, dok su se proizvođači hardvera koncentrisali na 
povećanje brzine prenosa svojih mrežnih kartica na 64 kbps. Uvidevši pobedu Novella počeli su da 
proizvode NetWare kompatibilne mrežne kartice, a Novell je i dalje uspešno razvijao svoj softver. Malo 
po malo, svi proizvođači servera su instalirali NetWare na svoje servere.

Microsoft je ovu borbu posmatrao iz ugla softvera. Ubrzo je napravio MSnet, proizvod koji su 

prihvatili proizvođači hardvera. Microsoft je u to vreme izašao i sa novom (3.1) verzijom DOS-a, koja je 
između ostalog dozvoljavala zaključavanje datoteka na nivou lokalne mreže. IBM je razvio svoj PCnet 
proizvod na Microsoft MSnet standardu i to je bio trenutak kad su se tri glavna proizvođača našla na 
tržištu u isto vreme. Za vreme razvoja svoje mrežne strategije, Microsoft je takođe radio i na novoj radnoj 
okolini da bi pomogao korisnicima na radnim stanicama i rešio mnoge nedostatke i neefiksanost DOS-a. 
Ova radna okolina nazvana je Windows, a manje ili više bazirala se na tehnologiji razvijenoj u  

Xerox 

Corp

 prihvaćenoj od strane 

Apple Computer

. Prve dve verzije Windowsa bile su jednostavne, nedorečene 

i spore, ali revolucionarne za mnoge korisnike. Microsoft je počeo na sva zvona hvaliti važnost grafičkog 
korisničkog okruženja (

GUI

). Ipak, korisnici su i dalje nastavili kupovati NetWare i ignorisali Windows. 

Njihova najveća prednost bila je u aplikacijama namenjenim projektovanju i crtanju. Najveća promena 
dogodila se kad je Microsoft izdao Excel za Windowse, tablični kalkulator sa 

Apple Macintosh

 sistema. 

Po prvi put je neka stvarna poslovna aplikacija bila na raspolaganju u grafičkoj radnoj okolini. Iako je 
napravio uspeh sa ovim aplikacijama, Microsoft nije uspeo da se uključi u mrežne operativne sisteme. 

U borbi za mrežne operativne sisteme Microsoft i IBM su zaostali daleko iza Novella. Da bi 

potisnuli njegovu dominaciju na tržištu, udružili su se u razvoju OS/2. Po prvi put je OS/2 predstavljen 
1987. godine, zajedno sa novom linijom IBM računara PS/2. Rame uz rame ove dve kompanije su nudile 
opremu budućnosti, izgrađenu oko OS/2. Nudili su snažne računare sa visokom grafičkom rezolucijom i 
brzim   magistralama   podataka.   Operativni   sistem   koristio   je   grafičko   okruženje,   bio   je   višenitni   i 
višekorisnički, a obećavao je sve ono što je NetWare imao i još mnogo više. Kašnjenja u izlasku i 
problemi oko kompatibilnosti zakočili su porast prodaje ovog proizvoda, a Microsoft je ubrzano radio na 
usavršavanju Windowsa i aplikacijskoj podršci za Windowse. Ubrzo je došlo do raskola u partnerstvu 

1

između   IBM-a   i   Microsofta.   Microsoft   je   nastavio   razvijati   Windowse,   a   IBM   OS/2.   Tek   izlaskom 
Windows 3.0 operativnog sistema promenio se stav industrije i potrošača prema grafičkoj radnoj okolini. 
Microsoft je poboljšao korisničko okruženje i rešio mnoge od problema u prethodnim verzijama. Zbog 
nedostatka mrežne podrške ubrzo je izšla verzija 3.1, a novi proizvod 

Windows for Workgroups

 nudio je 

sve   potrebno   za   izgradnju   peer-to-peer   računarske   mreže,   uključujući   i   podršku   tradicionalnim 
klijent/server sistemima kao što su NetWare i LAN Manager. Microsoft je počeo preuzimati vodeću 
ulogu   u   prodaji   desktop   operativnih   sistema   sa   podrškom   mrežnom   radu   i   grafičkim   korisničkim 
okruženjem.  Kako   je   prodaja   Windowsa   rasla,   Microsoft   se   potpuno   prebacio   na   izradu   operativnih 
sistema sa grafičkim okruženjem da bi sredinom 1993. objavio dva nova proizvoda: 

Windows NT (New 

Technology)

  i  

Windows NT Advanced Server (NTAS)

, zamišljen za serverske namene, a 1995. godine 

izašao je proizvod koji je preplavio svet,  

Microsoft Windows 95

.  Novel je dalje razvijao svoj mrežni 

operativni sistem do verzije 5, uključujući u njega podršku za pristup velikim računarima, mrežne servise 
za pristup Internetu i podršku novo razvijenom hardveru i sve ono što je trebalo da bi ostao na tržištu. 
Veliki bum Interneta krajem 1996. zatekao je Novell pomalo nespremnim, dok je Microsoft prilično 
agresivno preuzeo taj deo tržišta svojim Windows NT Server Sistemom. Istovremeno su na popularnosti 
dobili i UNIX Serveri, do tad upotrebljavani u krugu akademske zajednice i nešto malo u poslovnom 
svetu. Za to vreme IBM je i dalje razvijao svoj OS/2 nudeći podršku za Microsoft Windows aplikacije, 
relacijske baze, mogućnost povezivanja na velike (mainframe) sisteme i velike relacijske baze podataka, 
te je polako širio bazu instaliranih proizvoda. Stalno plivajući između velikih sistema i desktop rešenja, 
nikad zapravo nije ni ugrozio poziciju Microsofta i Novella na njihovom delu tržišta.

1.1 Osnovne karakteristike servera

U  računarskim   mrežama   razlikujemo   dve   vrste   računara:   računare   klijente   i   računare   servere 

(

client/server

). Sami nazivi govore da jedni nešto daju, serveri, a jedni nešto primaju, klijenti. U svakom 

slučaju oni razmenjuju podatke. Osim klasičnog klijent/server okruženja postoje i takozvane peer to peer, 
ili jednaki među jednakima računarske mreže. U takvim mrežama svaki računar može biti i klijent nekog 
drugog računara i server ostalim računarima spojenim u mrežu. To je moguće zato što svaki računar 
pokreće   u   sklopu   svog   operativnog   sistema   i   podršku   za   mrežu,   serverske   i   klijentske   upravljačke 
programe, a od korisnika računara zavisi šta će ponuditi drugima na raspolaganje sa svog računara. To 
može biti ceo njegov disk, neki određeni direktorijum ili štampač priključen na njegov računar.

Mrežni serverski sistemi razlikuju se po konfiguraciji zavisno od toga kakav zadatak obavljaju. To 

su obično računari koji su opremljeni velikim diskovnim prostorom, uz mnogo radne memorije (RAM) i 
brzim mrežnim karticama. Mogu poslužiti kao file serveri, serveri za štampanje (

print server

), serveri za 

elektronsku poštu (

e-mail server

), specijalni serveri strogo definisanih poslova (

domain name server  

– 

server imena u domenu), komunikacijski server (

gateway

) ili server baza podataka (

database server

). Sve 

ove vrste servera mogu se nalaziti i u samo jednom (malo moćnijem) računaru.  O svakoj serverskoj 
funkciji   brine   i   odgovarajuća   programska   podrška,   a   ceo   server   baziran   je   na   nekom   mrežnom 
operativnom   sistemu.  Danas  najpopularniji   serverski   mrežni  operativni  sistemi  su   Apple  IBM   OS/2, 
Novell Netware, UNIX operativni sistemi raznih proizvođača (SCO OpenServer, UnixWare, besplatne 
Linux distribucije ), Microsoft Windows Server i ostali manje poznati. 

Svi oni dele zajedničko tržište i bore se za što veći udeo u njemu. Dobar deo tržišta i dalje drži 

Novell Netware najčešće primenjen kao fajl server i server za štampanje u računovodstveno finansijskim 
poslovnim programima. UNIX je do sad bio praktično nezamenljiv kao komunikacijski server (e-mail 
server, gateway, DNS server i sl.). UNIX serveri čine jezgro danas toliko popularnog Interneta. Windows 
Server pronašao je svoju ulogu kao intranet/Internet server, odnosno WWW server, iako osigurava punu 
podršku za relacijske baze različitih proizvođača i sve ostale nabrojane vrste servera.

2

background image

Postoje brojne podele operativnih sistema na osnovu različitih kriterijuma: prema broju korisnika 

i/ili procesa, prema načinu obrade poslova, prema distribuciji procesorske snage i ostalih resursa, prema 
nameni i funkcionalnim osobinama.

Ono što je bitno kod mrežnih operativnih sistema je da podržavaju multasking i multiuser rad. 
Prema broju korisnika, operativni sistemi se dele na jednokorisničke (

singleuser

) i višekorisničke 

(

multiuser

). Jednokorisnički sistemi, kao što im samo ime govori, obezbeđuju virtuelnu mašinu za samo 

jednog korisnika. To su ili računarski sistemi prilagođeni za jednu funkciju ili je reč o slabijim i jeftinijim  
konfiguracijama tipa mikroračunara. Uglavnom ih karakteriše jeftin hardver, solidna prateća programska 
podrška, jednostavan sistem datoteka, jednostavan U/I sistem, a u prošlosti i relativno slabe performanse. 
Međutim, prilike su se izmenile, hardver mikroračunara je ostao jeftin, ali su se performanse drastično 
poboljšale, što je dovelo do realizacije vrlo kvalitetnih operativnih sistema koji su i dalje jednokorisnički 
ali višeprocesni, tj. sposobni da obavljaju više simultanih aktivnosti. 

Višekorisnički   sistemi   su   kvalitetni   operativni   sistemi   koji   zahtevaju   jače   hardverske 

konfiguracije. Tipičan višekorisnički sistem je UNIX, koji obezbeđuje simultani pristup za više korisnika 
istovremeno, pri čemu korisnici pristupaju sistemu preko posebnih terminala.  Prema broju  simultanih 
aktivnosti, tj. prema broju procesa koji se mogu izvršavati paralelno ili kvaziparalelno, operativni sistemi 
se dele na jednoprocesne (

singletasking,

 

singleprocess

) i višeprocesne (

multitasking

,  

multiprocess

).  Na 

osnovu kombinovanog kriterijuma mogu se izdvojiti tri vrste operativnih sistema: 

jednokorisnički jednoprocesni (

single-user

singletasking

), kao što je MS-DOS;

jednokorisnički   višeprocesni   (

single-user

,

multitasking

),   kao   što   su   OS/2   iMS   Windows 

3.1/9x/ME;

višekorisnički   višeprocesni   (

multiuser

,

multitasking

),   kao   što   je   UNIX,   ali   uslovno   se   mogu 

prihvatiti   i   MS   Windows   2000/XP/2003   ukoliko   obezbeđuju   terminalske   usluge   (

terminal 

services

).

Dakle,  

multitasking  

je   mogućnost   da   se   više   od   jednog   programa   izvršava   istovremeno.  Na 

primer, moguće je štampati tokom izmena teksta ili tokom slanja faksa. Naravno, operativni sistem (osim 
u slučaju kada posedujete višeprocesorski računar) daje deo vremena procesora svakom od programa, 
čime se stiče utisak paralelnog izvršavanja. Ovakva raspodela resursa je moguća zato što veliki deo 
vremena procesor ostaje slobodan iako može izgledati da ga (npr. unošenjem podataka) činimo veoma 
zauzetim.

Multitasking se može realizovati na dva načina, zavisno od toga da li operativni sistem prekida 

izvršavanje programa, a da ih prethodno ne konsultuje, ili se programi prekidaju samo onda kada su 
raspoloženi   da   prepuste   kontrolu.   Prvi   od   ova   dva   načina   zove   se  

preemtivni   multitasking

,   a   drugi 

kooperativni   multitasking

.   Stariji   operativni   sistemi,   kao   što   su   Windows   3.x   i   Mac   OS   9,   imaju 

kooperativni multitasking, isto kao i operativni sistemi na jednostavnijim uređajima, kao što su mobilni 
telefoni. Operativni sistemi UNIX/Linux, Windows NT/XP (i Windows 9x za 32-bitne programe) i Mac 
OS X su sa preemptivnim multitaskingom. Preemptivni multitasking je mnogo efikasniji iako ga je teže 
implementirati.  Sa   kooperativnim   multitaskingom   se   može   dogoditi   da   program   koji   se   loše   ponaša 
„zaglavi“ celokupan rad.
Višenitni   programi   proširuju   ideju   multitaskinga   spuštajući   je   na   niži   nivo:   izgleda   da   pojedinačni 
program istovremeno obavlja više zadataka.  Svaki od zadataka se obično zove  

nit  

(

thread

) – što je 

skraćenica za kontrolnu nit.  Programi koji mogu istovremeno izvršavati više od jedne niti nazivaju se 

višenitni 

(

multithreaded

).

1.3

 

Raspodela memorije

4

Pod   upravljanjem   memorijom   podrazumeva   se   upravljanje   radnom,   tj.   glavnom   memorijom 

računara, kojoj centralni procesor pristupa direktno, radi uzimanja instrukcija ili podataka. Na ovom 
nivou obavljaju se sledeće funkcije:

realizacija   određene   strategije   dodeljivanja   memorije   (redosled   dodeljivanja   memorije 
poslovima, statično ili dinamiĺno dodeljivanje, principi dodeljivanja itd.);

dodeljivanje memorije (algoritmi izbora početne lokacije segmenta koji se dodeljuje);

sprovođenje   određene   strategije   oslobađanja   memorije   (ukrupnjavanje   manjih   oslobođenih 
delova memorije, oslobađanje delova memorije, redosled obrade zahteva za dodelu memorije).

Memorije kod savremenih računara mogu da se klasifikuju na razne načine. S obzirom na način 

funkcionisaja (brzina, kapacitet i cena po jedinici mere) mogu se podeliti u 3 kategorija: 

1.

eksterna memorija

 (najvećeg kapaciteta, najsporija, najjeftinija), 

2.

interna memorija

 (manjeg kapaciteta, brža, skuplja), 

3.

keš (Cache) memorija

 (najmanjeg kapaciteta, najbrža, najskuplja).

Najinteresantnija   je  

interna   (operativna)

  memorija   i   njen   odnos   sa   eksternom   memorijom. 

Procesor   može   izvršavati  samo  procese   koji   su   u   internoj   memoriji.   Kako   je   operativna   memorija 
relativno malog kapaciteta, pojavljuju se sledeći problemi:

proces je veći od interne memorije (i kod monoprogramiranja i kod multiprogramiranja), 

nema dovoljno memorije da bi se učitali sve spremni procese (kod multiprogramiranja). 

Upravljač memorije (

Memory Manager

)

  je deo operativnog sistema koji upravlja korišćenjem 

memorije. Njegovi osnovni zadaci su da:

vodi računa o tome koji delovi memorije su zauzeti,

vodi računa o tome koji delovi memorije su slobodni, 

da zauzme potrebnu količinu memorije za nove procese,

da oslobodi memoriju zauzetu od strane nekog procesa, 

da upravlja prebacivanjem procesa iz interne u eksternu memoriju i obrnuto.

Pri tome mora voditi računa o tome da procesi ne štete jedni drugima, ni operativnom sistemu. U slučaju 
da nema dovoljno interne memorije, koriste se sledeće tehnike: 

Swapping

  (prebacivanje   procesa)   –   ako   nema   dovoljno   mesta   u   operativnoj   memoriji   za 

smeštanje svih spremnih procesa, neki se prebacuju na disk.  Kada je potrebno, celi spremni procesi iz 
interne   memorije   se   prebacuju   na   disk,   odnosno   spremni   procesi   sa   diska   se   prebacuju   u   internu 
memoriju;

 

Paging

 (straničenje) – delovi procesa se drže na disku i učitavaju po potrebi.

Postoje i tehnike upravljanja memorijom bez swapping-a i bez paging-a. 

Monoprogramiranje (

Monoprogramming

):  

u internoj memoriji računara se istovremeno može nalaziti 

samo jedan proces. 

Prvi  (najjednostavniji)  način  

je  kada   korisnik   učita   program   po   želji   i   taj   program   dobija 

apsolutnu kontrolu nad računarom. Kod ovog pristupa nije potreban ni OS, ni posebni drajveri za razne 
uređaje; program koji se učitava u memoriju je potpuno sam i oslanja se isključivo na sebe. Mora znati 
kako da koristi memoriju, uređaje i sve ostalo što mu je potrebno da izvrši svoj zadatak. Kada taj program 
završi sa radom, može se učitati sledeći program, koji takođe mora sve znati.  Ova metoda je davno 
napuštena, kao vrlo nepraktična – programeri moraju ugraditi sve potrebne drajvere u svaki program. Ako 
nema   dovoljno   memorije,   mora   se   naći   neko   rešenje:   optimizuje   kod,   ili   razbija   program   na   manje 
funkcionalne delove koji se mogu samostalno izvršavati ili nešto treće. 

5

background image

Slika 3. Particionisanje memorije

Rešenja 

za izbegavanje navedenih nedostatakas su sledeći

definiše se dovoljan broj dovoljno malih particija (u koje mogu stati samo mali procesi, ne i 
veliki); 

uvodi se pravilo: ni jedan proces ne može biti preskočen više od 

k

 puta. Svaki proces dobija po 

jedan brojač, svaki put kad se dati proces preskoči, povećava se brojač. Ako pri traženju procesa 
upravljač memorije vidi da je proces preskočen k puta, učitava ga u particiju, a brojač se resetuje. 
Veličinu broja 

k

 određuje sistem operator. 

Može se Swapping realizovati i sa fiksnim particijama: svaki put kada se neki proces blokira, prebaci se 
na disk, a u tako oslobođenu particiju se učita drugi spreman proces. Praktično posmatrano, neće se dobiti 
dobri rezultati u iskorišćavanju memorije: mogu postojati mali procesi koji se učitavaju u veće particije, 
pa se gubi mnogo memorije. To se zove 

unutrašnja fragmentacija 

(

Internal Fragmentation).   

7

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

Prijavi se i preuzmi ceo dokument.

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

Slični dokumenti