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
5 NIVO VI[IH 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) 1 MIKROPROGRAMSKI 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)

PARADIGME 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 virtuelne maine Operativni sistem virtuelne maine

Komunikacioni softver virtuelne maine

Struktura VM/370
Aplikacija
CMS

Aplikacija
OS/360 VM/370 HW 370 serije

Aplikacija
CMS

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 interfejsa Hardver korisnikog interfejsa

Sistem korisnikog interfejsa Aplikativni softver "Totalni" softver Pomoni programi Operativni sistem Hardver za izraunavanje Pomoni programi Operativni sistem Hardver za izraunavanje Raunski Komunik. Hardver Aplikativni softver

Komunikacioni hardver Komunikacioni softver I NIVO (1945-1965) Aplikativni softver II NIVO (1965-1985) Softver interfejsa III NIVO (1985-...) Komunikacioni softver

Hardver

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 proces proces proces Server Mem. server Kom. server

Jezgro OS

RAUNARSKA MREA
Hardver korisnikog interfejsa Hardver korisnikog interfejsa Hardver korisnikog interfejsa

Sistem korisnikog interfejsa

Sistem korisnikog interfejsa

Sistem korisnikog interfejsa

Aplikativni softver

Aplikativni softver

Aplikativni softver

Ljuska distribuiranog operativnog sistema Pomoni programi Operativni sistem Raunski Komunik. Hardver Pomoni programi Operativni sistem Raunski Komunik. Hardver Pomoni programi Operativni sistem Raunski Komunik. Hardver

Komunikacioni softver NIVO IV

Komunikacioni softver

Komunikacioni softver

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