53
OPERATIVNI SISTEMI PREKIDI I NJIHOVA OBRADA

Pojam Prekida Operativni Sistemi

Embed Size (px)

DESCRIPTION

Uvod u operativne sisteme

Citation preview

  • OPERATIVNI SISTEMIPREKIDI I NJIHOVA OBRADA

  • SADRZAJta je procesta je prekidPrimerHardverske osnovePojam prekidaPrekid i njegovo reavanjeVrste prekidaProgram status wordMaskiranjeAnalizator prekida

  • Naini obrade podatakaBatch sistemi paketna obradaSistemi sa deljenjem procesorskog vremena (time sharing)Interaktivni sistemi (jednokorisniki i viekorisniki)Sistemi za rad u realnom vremenuSistemi opte namene ( time sharing, interaktivni, batch obrada)

  • Klasifikacija operativnih sistema

  • Single Program

  • Multi-Programming

  • Prelazak sa izvravanja jednogprograma na izvravanje drugogU bilo kom trenutku samo jedan program moe da se izvrava na jednom procesoruContext switching prelazak sa izvravanja jednog programa na izvravanje drugogCilj je optimizovati korienje procesora

  • Kada prei na izvravanje drugogprograma?Kada se zavri izvravanje datog programaNakon dovoljno dugog vremena izvravanja tekueg programaKada tekui program eka U/I aktivnostKada se pojavi signal prekida (na primer, klik mia)

  • Mreni i distribuirani operativnisistemiMreni operativni sistemi (deljenje resursa, kao to su tampai i baze podataka u mrei) na primer MS Windows 2000, UNIXDistribuirani sistemi (migracija podataka i programa od jednog raunara do drugog, pri emu korisnik ne upravlja ovom migracijom) grupa raunara koja radi kao jedan raunarSpecijalno projektovani operativni sistemi sistemi za rad u realnom vremenu (na primer hemijska postrojenja, ) maksimalno vremeodgovora sistema mora biti u fiksnom vremenu

  • ta odreuje cilj operativnogsistema?Relativna cena hardvera i ljudi odrenuje cilj operativnog sistema.Na poetku: skup hardver, jeftini ljudi, cilj: maksimalno iskoristiti hardver.Danas: jeftin hardver, skupi ljudi, cilj: omoguiti lako korienje raunara.Ako aplikativni softver nije efikasan, itav raunarski sistem nije efikasan.

  • Deljenje resursaCilj operativnih sistema je efikasno deljenje resursa.ta je resurs?Zato deliti resurse?Operativni sistem obezbenuje da privatni resursi budu zatieni od neautorizovanog pristupa i da deljenim resursima mogu pristupati samo relevantni procesi.

  • Deljenje resursaOmoguiti da sistem radi.Omoguiti da sistem efikasno radi (korienje ureaja, propusna mo sistema, vreme odziva sistema), Omoguiti da sistem korektno radi (ograniavanje efekata bug-ova, spreavanje neautorizovanog pristupa podacima, modifikacije podataka i korienja ve dodeljenih resursa).

  • ta je proces?

    Proces program koji se izvrava.Program predstavlja statiki pojam.Zahtevom za izvravanje odrenenog programa aktivira se odgovarajui proces. Zahtev moe biti od: korisnika, operativnog sistema, nekog drugog ve aktivnog procesa.

  • Izvravanje procesaIzvravanje procesa se odvija na sekvencijalan nain.U raunarskom sistemu se odvija proces koji menja stanje sistema.U toku izvravanja proces menja svoje stanje takoe.

  • Mogua stanja procesaNov proces je kreiran,Izvravanje instrukcije se izvravaju,ekanje proces eka da se neki doganaj dogodi,Spreman proces eka da bude dodeljen procesoru,Zavren proces je zavrio izvravanje.

  • Dijagram stanja procesa

  • Dijagram stanja procesaAko nema spremnog procesa za izvravanje procesor prelazi u takozvani prazan hod.Prelazak procesa iz stanja IZVRAVA SE u stanje EKANJAMakroinstrukcija WAIT proces mora da saeka neki doganaj i to saoptava operativnom sistemu.Ova informacija se upisuje u blok stanja procesa (jedna vrsta u tabeli procesa).Blok stanja procesa se formira u toku kreiranja procesa, a unitava se po zavretku procesa.

  • Algoritam za prelazak procesaiz aktivnog u blokirano stanjeProcedure WAIT (blok stanja procesa)BeginIf doganaj se desio thenVrati upravljanje na proces koji je poslao zahtev;ElseBeginPrevedi proces koji je poslao zahtev u blokirano stanje;DISPATCH;End;End procedure WAIT;

  • Procesi na raunaruVirus

  • Prelazak procesa iz stanja EKANJA ustanje SPREMNOSTIMakroinstrukcija SIGNAL operativni sistem obavetava procese o pojavi doganaja (na koji moe da eka vie procesa).I ova informacija se upisuje u blok stanja procesa.

  • Algoritam za prelazak procesa izblokiranog stanja u stanje spremnostiProcedure SIGNAL (blok stanja procesa)BeginIdentifikacija pojave doganaja;For svaki proces koji je ekao na pojavu dogaaja dobeginPrevedi proces u stanje spremnosti;End;Prenesi upravljanje na naredni proces;End procedure SIGNAL;

  • TA JE PREKIDSvi dogaaji koji uzrokuju prekidanje dotadanjeg posla nazivamo prekidiUnapred su nepredvidiviOdmah se moraju uzeti u postupak reavanjaReenje se nalazi kroz odreenu proceduru OPERATIVNOG SISTEMA.Po zavretku procedure izvoenje se vraa na mesto i sa podacima gde je prekid nastao

  • PRIMERitam knjiguZvoni telefon prekidObrada prekidaRazgovorOstavljam telefon idem po olovkuUzimam papirPiemVraam olovkuUzimam telefonZavravam razgovoritam knjigu

  • HARDVERSKE OSNOVEProcesora moe biti jedan ili vieKanalskih jedinica moe biti vieSelektorski kanali rade sa brzim jedinicama (eksterne memorije)Multipleksorski kanali pospuuju vie jedinica ali sporihIzvoenje kanalskih programa inicira procesor START I/OZavretak I/O operacije signalizira kanal centralnom procesoruKanali su konstruisani zbog velike razlike u brzinama izmeu centralnog procesora i ulazno/izlaznih jedinica.

  • HARDVERSKE OSNOVECentralna memorijaKanalKanalKanalskajedinicaKanalskajedinicaI/OI/OInstrukcijski registarBrojainstrukcijaInterpretatorinstrukcijaIndikator Stanja procesoraRegistriCentralni procesor

  • HARDVERSKE OSNOVECentralni procesor moe izvoditi samo mainske instrukcijeZato mora postojati kompajlerPostoje dva tipa instrukcijaProblemske instrukcije NEPRIVILEGOVANEInstrukcije operativnog sistema ili PRIVILEGOVANE INSTRUKCIJE KONTROLNI MOD

  • HARDVERSKE OSNOVERad jednog programaNema multiprogramiranja

  • POJAM PREKIDANESINHRONIZOVANI IZNENADNI DOGAAJ KOJI SE POJAVLJUJE U RAUNARSKOM SISTEMU U VIDU POSEBNOG SIGNALA KOJI HARDVERSKI ELEMENTI RAUNARA MOGU REGISTROVATI I KOJI ZAHTEVAJU REENJE OD STRANE OPERATIVNOG SISTEMA.

  • PREKID I NJEGOVO REAVANJEPREKIDI SE DELE PO SLINOSTIZA ISTI SKUP PREKIDA ISTI JE ALGORITAM OBRADEOBRADA PREKIDA JE U DVA KORAKAANALIZA PREKIDAPOSTUPAK OBRADE PREKIDA

  • PREKID I NJEGOVO REAVANJEPREBACIVANJE KONTROLE IZVOENJA OMOGUAVA HARDVERSKI MEHANIZAMANALIZU PREKIDA IZVODI SOFTVERSKI MEHANIZAMANALIZATOR PREKIDARUTINA ZA OBRADU PREKIDA

  • PREKID I NJEGOVO REAVANJEPREKID PROGRAMAPREBACIVANJE KONTROLE IZVOENJA U KONTROLNI PROGRAMVRAANJE KONTROLE IZVOENJA U PROGRAMSKI PROGRAM

  • Upravljanje prekidimaBez obzira na izvor prekida svim prekidima se upravlja na isti nain.Svaki prekid ima jedinstven broj prekida. Kod Intelovih procesora brojevi prekida su od 0 do 255. Ovi brojevi se zovu vektori prekida i za svaki vektor prekida postoji zapis u tabeli vektora prekida (interrupt vector table).Tabela vektora prekida je tabela koja sadri adrese prekidnih programa koji upravljaju servisiranjem svakog od nastalih prekida. Ovi prekidni programi se zovu i programi za servisiranje prekida (Interrupt Service Routines ISRs) ili programi za upravljanje prekidima (Interrupt handlers).

  • Veze izmenu komponenata raunara

  • Vrste prekidasoftverski prekidi,hardverski prekidi iizuzeci

  • Hardverski prekidiurenaj generie signal zahteva za prekidom,urenaj preko magistrale podataka alje broj vektora prekidaprocesor zavrava izvravanje tekue instrukcije i nakon toga izvrava rutinu za upravljanje prekidom (ISR) koja odgovara broju vektora prekida dobijenog preko magistrale podataka.nakon zavretka rada rutine za upravljanje prekidom urenaju se alje odgovor na prekid (INT acknowledge).

  • VRSTE PREKIDAUlazno izlazni prekidi (input/output interrupt)Programski prekidi (program interrupt)Prekidi zbog poziva supervizora (supervisor call interrupt)Spoljni prekidi (external interrupt)Mainski prekidi (machine check interrupt)

  • Ulazno izlazni prekidi (input/output interrupt)Dolaze od i/o jedinicaSa eksternih memorijaNa zavretku i/o operacije signal prekidaAko i/o operacija nije zavrena takoe signaliziraNema papira, kraj trake

  • Programski prekidi (program interrupt)Prouzrokuje ih sam programOverflow (prekoraenje u duini fiksnog zareza)Deljenje sa nulomNeki od prekida jer se trai podatak.

  • Prekidi zbog poziva supervizora (supervisor call interrupt)Traenje posebne aktivnostiIzvoenje aktivnosti koju program nije ustanju da izvede

    Operacije na nivou nukleusa operativnog sistema

  • Spoljni prekidi (external interrupt)Zahtevi operateraZahtev za komunikacionom linijomTajmeriKod kontrolera svi podaci sa senzora

  • Mainski prekidi (machine check interrupt)Prekidi zbog greaka na hardveru

  • PROGRAM STATUS WORDPSW registar se nalazi u centralnom procesoru i slui za kontrolu redosledaIzvoenja instrukcija i kompletnu indikaciju stanja sistema u odnosu na Program koji se trenutno izvodi

  • PROGRAM STATUS WORDBroja instrukcija ima najvaniju uloguPSW sadri u sebi opis situacije u sistemuu asu kada se instrukcija izvravaOvi podaci su dovoljni da se sa jedne instrukcije pree na druguAko doe do prekida u PSW-u moraju biti podaci upisaniKada se prekid obradi podaci iz PSW-a se vraaju i program nastavlja sa radom

  • PROGRAM STATUS WORDSistemska maska oznaava da li procesor moe da prihvati odreeni prekidAko je bit na 0 onda prekid nije dozvoljenNa osnovu maske se definie koji prekid je kada dozvoljen

  • ODNOSI KOD MASKIRANJAPrilikom maskiranja maskiraju se samo prekidi nieg prioriteta i istog prioritetaPrioriteti vieg reda mogu prekidati prioritete nieg reda

  • PROGRAM STATUS WORDPosle prekida nije neophodno da se program vrati na istiMultiprogramiranjeOdradi jedan pa drugi pa se vrati na prvi

  • PROGRAM STATUS WORD

  • ANALIZATOR PREKIDA

  • Analizator prekida i servisne rutine su deo operativnog sistemaSastavni su deo svakog OSObavezno se ugrauju u nukleus OSJednim imenom se nazivaju

    INTERRUPT HANDLER

  • PROGRAMSKO I PREKIDNO GRANANJE

  • CENTRALNI PROCESOR MOE BITI PREKIDANKANALSKI PROCESORI NEMOGU BITI PREKIDANI.

  • PITANJAHvala na panji