P1 - Operativni Sistemi

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 42

OPERATIVNI SISTEMI

odabrana poglavlja

Duan Starevi
Evolucija
sistemskog
softvera
Arhitektura slojeva
NIVO VI[IH
5
PROGRAMSKIH JEZIKA

Prevo|enje (compiler)

4 NIVO ASEMBLERA

Prevo|enje (assembler)

3 NIVO OPERATIVNOG
SISTEMA

Delimi~no tuma~enje (interpreter)

2 KONVENCIONALNI
MA[INSKI NIVO

Tuma~enje (mikroprogram)

MIKROPROGRAMSKI
1
NIVO

Tuma~enje (hardver)

0 HARDVER
Sistemski softver

Cilj: neometano odvijanje svih procesa u radu sa


raunarom na takav nain da se resursi koji ulaze
u proces - oprema i ljudi, koriste efikasno,
efektivno i ekonomino
Osnovni zadaci OS
Rad sa resursima sistema
Delenjem resursa omoguiti istovremen rad
veeg broja korisnika raunarskog sistema
Rad sa virtuelnom maine (VM)
Stvoriti uslove za primenu koncepta "podeli,
pa vladaj!" prilikom reavanja sloenih
problema uvodjenjem tehnologije VM na nivou
HCI, I/O, memorije, datoteka, zatite i obrade
greaka, upravljanje radom programa
Funkcije OS
Automatizacija poslovanja sa raunarom, od kreiranja do
izvravanja programa, na principu pokretne trake: JCL nizovi,
interpreter komandi, helperi
Podrka I/O operacijama
Obrada prekida
Planiranje poslova
Upravljanje resursima
Zatita
Simultani viekorisniki rad
Interfejs blizak korisniku
Automatizacija sistemskog knjigovodstva
Poeljne karakteristike OS
Efikasnost (viekriterijumska optimizacija):
Minimalno srednje vreme ekanja novog posla
Minimalno vreme nerada CPU
Minimalno vreme odziva (interaktivni pristup)
Maksimiranje vremena korienja resursa
Maksimiranje propusnosti(poslova/sat, transakcije/min)
Pouzdanost, ilavost, robustnost
Odravanje (jednostavnost, plug&play)
Skromni sistemski zahtevi samog OS
Osnovni pristupi operativnim
sistemima u praksi
Minimizacija trokova raunarskog vremena
OS za grupnu ( paketna, serijska," batch") obradu
Minimizacija trokova korisnikovog vremena
OS sa zajednikim korienjem vremena raunara (time
- sharing OS)
OS rad u realnom vremenu (real-time OS )
Tipovi operativnog sistema-1
(moguci pogled)
OS za jednog korisnika
Akcent na jednostavnom komandnom jeziku, sistemu
datoteka (MS DOS), I/O tastature, display,disk,
tampa
Sa jednom ili vie VM (single/multiple task)
OS za upravljanje procesima
Povratna sprega sa okruenjem u realnom vremenu
OS za pretraivanje velikih baza podataka
Primer: baze cenzusa, bibliotene baze, medicinske
Tipovi operativnog sistema-2
(moguci pogled)
OS za transakcionu obradu
OS za rad sa bazama koje se intenzivno
menjaju: rezervacioni sistemi, bankarske usluge
OS opte namene
Za paketsku obradu podataka
Proirenje na RJE
Za interaktivan rad vie korisnika sa sistemom
MM interakcija za vreme izvravanja korisnikovog
programa, privid jednokorisnikog sistema
Grupna ili paketska obrada-1
Vreme hardvera je skuplje nego vreme
korisnika!
Operativni sistem ima zadatak da
maksimizira korienje hardverskihresursa
sistema, bez obzira koliko e trajati
izvrenje pojedinog programa
Korisnici predaju svoje programe u
"paketu" posredstvom ulaznih jedinica
Grupna ili paketska obrada-2
Programi se izvravaju jedan za drugim,
pri emu korisnik nema mogunost
upravljanja izvrenjem svog programa, ali
operator sistema ima mogunost unoenja
malog broja podataka sa konzole
Vreme zavretka pojedinog programa je
neizvesno - reda nekoliko minuta
JCL niz
$JOB
$FTN
.......(PROGRAM)
$LOAD
$RUN
.......(DATA)
$END
Multiprogramski rad

Zatita korisnika od aktivnosti drugih


Spooling (uvodjenje virtuelne maine)
OS sa zajednikim korienjem
vremena raunara-1
Vie korisnika istovremeno preko
sopstvenog terminala ima pristup raunaru
Iluzija korisnika da se samo njegov
program izvrava (korisnik interaktivno
komunicira sa svojim programom)
OS dodeljuje svakom programu kratak
vremenski interval (time-slice) prava
izvravanja, reda desetog dela sekunde
OS sa zajednikim korienjem
vremena raunara-2
Po isteku vremenskog intervala zauzimanja
procesora, program se prekida, bez obzira
da li je zavrio sa radom ili ne, a procesor se
dodeljuje sledeem procesu u redu ekanja
Proseno vreme reakcije raunara na akciju
korisnika je izmedju 0.5s - 2 s
Kompromisna optimizacija trokova!
OS za rad korisnika u realnom
vremenu
OS ima zadatak da minimimizira vreme
reakcije sistema u interaktivnoj
komunikaciji oveka i raunara, reda ms
Vreme oveka je skuplje od vremena
raunara!
Primer sekretarice i PC:
USD 1000/meseno : USD 100/ meseno
Struktura OS
OS je sloen programski sistem, sastavljen od
mnotva manjih i jednostavnijih delova, a
medjusobno se razlikuju i po organizacionoj
formi - strukturi, uzoru prema kojem se
grade:
Orijentisani na proceduralne pozive ili rad sa
porukama (objektno orijentisani)
Monolitni ili slojeviti (dvoslojni i vieslojni)
ARHITEKTURE
SOFTVERA

Monolitna programska podrka


Dihotomija aplikacija - sistemski softver
Dominacija korisnikog interfejsa
Raunarska mrea
Virtuelna maina
Globalna raunarska mrea
Monolitni OS
OS je skup procedura, svaka procedura moe neposredno
da poziva ostale, bez obzira da li joj trebaju ili ne.
Prevodjenje individulano, povezuju linkerom
Obaveza je aplikacije da pre poziva funkcije OS u
odredjene registre, ili na stek, postavi vrednosti pozivnih
parametara i potom se obrati OS naredbom
supervisor_call.
Izvrenjem ove naredbe CPU se prebaci iz korisnikog u
privilegovani reim rada i predaje upravljanje glavnoj
proceduri OS
MONOLITNI SOFTVER
(1945-1965)

Hardver korisnikog
interfejsa

"Totalni" softver

Hardver za
izraunavanje
Monolitni OS
Glavna procedura OS ispituje pozivne parametre,
radi odredjivanja konkretne procedure koju treba
da pozove
Odabrana procedura pri izvravanju koristi neke
zajednike procedure OS
Upravljanje se vraa procesu koji je traio
aktivnost OS
Slojeviti OS
Ve kod monolitnih OS je zapaeno da se sve
procedure mogu klasifikovati prema zajednikim
svojstvima u grupe ili slojeve, npr. prema
privilegijama, bez medjusobnog pozivanja
Kod hijerarhijski struktuiranih OS, sloj se tretira
kao apstraktni entitet koji prua skup usluga
entitetima iz viih slojeva, a koristi skup usluga
pridruenih hijerarhijski niem sloju (Primer:
DEC VMS za Alpha)
DIHOTOMIJA APLIKACIJA
- SISTEMSKI SOFTVER
(1965-1985)

Hardver korisnikog
interfejsa

Aplikativni
softver

Pomoni programi

Operativni sistem

Hardver za
izra~unavanje i
komunikacioni hardver

Komunikacioni
softver
Primer slojeva THE OS Dijkstre
5. Procesi operatora sistema("batch")
4. Korisniki programi
3. Upravljanje ulazom/izlazom
2. Interaktivna komunikacija Korisnik-Proces
1. Upravljanje memorijom i diskom
0. Upravljanje procesorom
Podela po privilegijama i nivou zatite. Svaki sloj takodje
se moe deliti u podlojeve. Najnii sloj se naziva jezgro
(nucleus, kernel) OS, a sastoji se od modula za obradu
prekida, dispeera i P/V podrke
Time Sharing System (TSS)
Problem prelaska sa paketski orijetisanih OS ka vie
korisnikim interaktivnim time-sharing sistemima, ali sa
mogunou paketskog rada. Primer IBM OS/360 i
glomaznog propalog naslednika TTS/360 (50 M$ !)
Istraivaki projekt CP/CMS (komercijalno VM/370)
zadati problem razlae na dva potproblema:
Sloj za podrku multiprogramskog rada
Sloj aplikacije na jednokorisnikoj virtuelnoj maini
VM/370
Radom HW upravlja VM/370 jednostavni monitor virtuelne
maine koji, na principu time-slice-a, deli vreme aplikacijama -
virtuelnim mainama
Ako je svaka virtuelna maina apsolutna kopija realne maine,
onda na svakoj virtuelnoj maini moe da radi OS koji radi i na
realnoj maini, pa tako konkurentno stari, ali pouzdani, OS/360
i vei broj jednostavnih jednokorisnikih OS (CMS) za
interaktivni rad! Virtuelnih maina ima koliko i korisnika!
Samo I/O instrukcije presree VM/370 koji ih i izvodi kao deo
simulacije na sloju OS/360 ili CMS
Ista ideja i sa 80X86 mikroprocesorima!
VIRTUELNA MASINA
Sistem korisnikog interfejsa
virtuelne maine

Aplikativni
softver za
virtuelnu
mainu

Pomoni programi
virtuelnemaine

Operativni sistem
virtuelne maine

Komunikacioni
softver virtuelne
maine
Struktura VM/370

Aplikacija Aplikacija Aplikacija


CMS OS/360 CMS
VM/370
HW 370 serije
OS + UIM
Konvencionalni projektovan OS, npr. UNIX,
orijentisan ka upravljanju resursima sistema i radu
sa profesionalnim korisnicima
Personalni raunar !? Naglasak na korisniku
bliskom okruenju (GUI-->MMUI-->PUI)
Nadgradnja konvencionalnog OS menaderom
korisnikog interfejsa - UIM (Windows)
GRAFICKI KORISNICKI INTERFEJS
Hardver korisnikog
interfejsa Hardver korisnikog
Hardver korisnikog
interfejsa interfejsa

Sistem korisnikog interfejsa

Aplikativni
softver
"Totalni" softver
Aplikativni
softver
Pomoni programi

Pomoni programi
Operativni sistem

Operativni sistem
Hardver za
izraunavanje Hardver za Raunski Komunik.
izraunavanje
Hardver

Komunikacioni hardver
Komunikacioni Komunikacioni
softver softver

I NIVO II NIVO III NIVO


(1945-1965) (1965-1985) (1985-...)

Aplikativni Softver
Hardver
softver interfejsa
Jezgro OS
Najkritiniji delovi OS su oni koji se najee izvravaju, a
u slojevitoj arhitekturi to je najnii sloj, sloj koji se
oslanja na goli hardware. to se vie pojednostavi, lake ga
je optimizirati i tako smanjiti "overhead"
Minimizirani, najnii sloj OS se zove jezgro OS
Ali, sada umesto proceduralnih poziva javlja se i rad sa
porukama. Jezgro je proceduralno povezano sa ostalim
procedurama OS, pre svega u svojstvu mehanizma za
prenos poruka
Klijent/server model OS
OS po modelu klijent/server paradigme sadri samo dva
sloja: malo jezgro i "korisniki" sloj
U "korisnikom" sloju se nalaze svi mogui procesi,
sistemski ili pravih korisnika, koji rade kao klijenti ili serveri,
a samo se komunikacija izmedju njih odvija preko jezgra OS
Primeri serverskih procesa: server procesa, server datoteka,
memorijski server, server tampaa, komunikacioni server.
Pouzdani i robustni OS, jer greka ostaje lokalizovana
Primena u distribuiranim raunarskim sistemima
Klijent/server model OS
Klijent Klijent Klijent File Mem. Kom.
proces proces proces Server server server

Jezgro OS
RAUNARSKA MREA
Hardver korisnikog Hardver korisnikog
Hardver korisnikog
interfejsa interfejsa interfejsa

Sistem korisnikog interfejsa Sistem korisnikog interfejsa Sistem korisnikog interfejsa

Aplikativni Aplikativni Aplikativni


softver softver softver

Ljuska distribuiranog operativnog sistema

Pomoni programi Pomoni programi Pomoni programi

Operativni sistem Operativni sistem Operativni sistem

RaunskiKomunik. RaunskiKomunik. RaunskiKomunik.


Hardver Hardver Hardver

Komunikacioni Komunikacioni Komunikacioni


softver softver softver

NIVO IV
Jezgro klijent/server modela OS
Dva mogua pristupa jezgru OS:
Ostaviti u jezgru kritine elemente, kao to su I/O
pogonske rutine i omoguiti pristup kompletnom
HW jedinicama, i dodati mehanizam komuniciranja
Izbaciti iz jezgra u "serverske" procese sve, sem
mehanizma komuniciranja
Poslednji pristup - aktivne mree :Jezgro samo
inicijalizira mehanizam komuniciranja izmedju dva
procesa, a komunikacija je van jezgra!
HW podrka jezgru
Mehanizam prekida
Hardverski i softverski prekidi (signali)
Privilegovani skup instrukcija
Supervisor_call, Lock, Unlock
Zatitni mehanizam adresiranja memorije
asovnik realnog vremena
Podslojevi jezgra
SW mehanizam za obradu prekida (First
Level Interrup Handler - FLIH)
Dispeer, nii nivo planera poslova
Mehanizam interprocesne komunikacije -
IPC, npr. semafori
Mreni OS (NOS)
Operativni sistem za rad u mrenom
okruenju - rad vie raunara sa sopstvenim
OS prilagodjenih za rad u mrei
Delenje resursa
Korisnik je svestan postojanja vie OS
Distribuirani OS (DOS)
Operativni sistem koji skup veeg broja
prostorno distribuiranih resursa korisniku
daje u prividu jednoprocesorskog
raunarskog sistema
DNS mehanizam i LDAP protokol
FTS OS
OS koji omoguava rad sistema sa
postepenim degradiranjem performansi u
sluaju otkaza pojedinih resursa sistema
OPERATIVNI SISTEMI
odabrana poglavlja

Duan Starevi

You might also like