Operativni sistemi

Embed Size (px)

DESCRIPTION

operativni sistemi racunara, predavanja, prva godin.

Citation preview

  • UVOD U RAUNARSTVO

    - Operativni sistemi -

    Katedra za Raunarstvo,

    Elektronski fakultet, Univerzitet u Niu

  • 2Softver

    Aplikativni softver softver namenjen specifinim potrebama korisnika za reavanje konkretnih problema

    Programi za obradu teksta, video igre, softver za obraun plata, softver za voenje balistikih raketa, itd.

    Sistemski softver Softver za upravljanje raunarskim sistemom na osnovnom nivou, zajedniki za sve raunarske sisteme, nezavisno od konkretne primene raunara od strane korisnika

    Predstavlja osnovu za funkcionisanje aplikativnogsoftvera

  • 3Aplikativni softverPoslovni softver

    Specifine poslovne aplikacije, planiranje resursa preduzea, upravljanje odnosom sa klijentima, voenje poslovanja, upravljanje projektima, raunarsko izdavatvo, projektovanje pomou raunara (CAD), ...

    Softver za kunu i linu upotrebuLine finansije, grafiki dizajn, zabava i kompjuterske igre, ...

    Softver za poboljanje produktivnostiObrada slike, tabelarna izraunavanja, prezentacije, baze podataka, upravljanje linim informacijama

    Multimedijalni softverEditovanje slika i fotografija, kreiranje crtea i vektorske grafike, kreiranje multimedijalnih sadraja, preuzimanje i editovanje videa, kreiranje i reprodukovanje muzikih sadraja, ...

    Komunikacioni/Internet softverInternet pretraivai, e-mail klijenti, instant messenger (ICQ), chat, ...

    Edukativni softverEnciklopedije, tutorijali, turistiki vodii, ...

  • 4Sistemski softver

    Operativni sistem

    Programski sistemKompajleri programski jezika, linkeri, debageri, editori, integrisana razvojna okruenja, softverski alati za razvoj softvera (CASE)

    Komunikacioni softverSoftver za povezivanje raunara u mreu i deljenje resursa

    Usluni softverDisk doktor, sistemske informacije, anti-virusni softver, kompresovanje podataka, ...

    Grafiki sistemProgrami za proveru ispravnosti raunarskog sistema, upravljanje i unapreenje performansi raunara i za detekciju greaka u hardveru i softveru raunara

  • 5Operativni sistem

    Skup programa smetenih u memoriju prilikom boot-ovanja raunara za upravljanje radom hardvera i softvera raunarskog sistemaOperativni sistemi: Windows 7/Vista/XP/..., UNIX, Linux, Mac OS X, Solaris, Android, Symbian, itd.

    Aplikativni softver

    Operativni sistem

    Hardware

    Korisnik

  • 6Klasifikacija operativnih sistemaPrema tipu raunara

    OS za mainframe raunare, super raunare, mini raunare, radne stanice, servere, personalne raunare (PC), rune raunare (PocketPC, Palm), pametne telefone, ugraene raunare, pametne kartice, itd.

    Prema broju istovremenih korisnikaJednokorisniki (Windows) i viekorisniki (Unix, Linux)

    Prema broju startovanih programaMonoprogramski (DOS, Windows 3.x)Multiprogramski (Windows, Unix, Linux, Mac OS) Time-sharing svakom programu se dodeljuje jedan vremenski kvant(od 10 do 100ms), pa se aktivira sledei, i tako u krug; korisniku izgleda da se svi programi istovremeno izvravaju, a u stvari izvravaju se jedan po jedan smenjujui se u kratkim vremenskim intervalima (kvazi-paralelno)

  • 7Operativni sistem...

    Upravlja resursima raunarskog sistema, kako hardverskim (CPU, glavna memorija, ulazno/izlazni ureaji, sekundarne memorije), tako i softverskim (strukture podataka u glavnoj memoriji, datoteke, softver, itd.)

    Obezbeuje da svaki startovani program dobije resurse neophodne za izvrenje

    Obezbeuje interfejs za interakciju korisnika sa raunaromObezbeuje okruenje za izvrenje aplikacionih programa i njihovu interakciju sa resursima raunarskog sistema

  • 8Komponente operativnog sistemaUpravljanje procesimaUpravljanje glavnom memorijomUpravljanje U/I ureajimaUpravljanje datotekama (File system) - upravljanje podacima na sekundarnim memorijama organizovanim u datoteke i direktorijumeSigurnost i zatitaInterakcija sa korisnikom putem interpretacije komandnog jezika ili grafikim korisnikim interfejsom (GUI)

  • 9Upravljanje procesima

    Osnovne funkcijeKreiranje i terminiranje procesa Suspendovanje i ponovo aktiviranje procesaPlaniranje izvrenja procesa i upravljanje centralnim procesorom (-ima)Obezbeenje mehanizama za sinhronizaciju i komunikaciju izmeu procesaObezbeenje mehanizama za upravljanje deadlock-om (smrtni zagrljaj, uzajamno blokiranje)

  • 10

    Upravljanje procesimaProgram je skup programskih instrukcija i podataka organizovanih u obliku izvrne datoteke na disku (.exe). Startovanjem programa aktivira se proces (task)Proces predstavlja izvravanje programa. Prilikom startovanja programa u glavnu memoriju (RAM) se uitavaju instrukcije programa i podaci koji se obrauju i zapoinje izvravanje instrukcija nad podacimaMultiprogramiranje tehnika OS kojom se omoguava da u isto vreme vie programa bude u glavnoj memoriji i da procesi njima aktivirani konkuriu za dobijanje CPU radi izvrenja, a takoe konkuriu i za druge resurse raunarskog sistemaPlaniranje procesa postupak odreivanja koji e proces sledei biti izvravan na CPU (Planer procesa - Scheduler)PCB (Process Control Block) za svaki startovani proces OS odrava strukturu podataka sa informacijama o tom procesu (identifikator, prioritet, vreme kreiranja, vreme izvrenja, memorija koju zauzima, datoteke koje koristi, itd); skup PCB svih startovanih procesa ini tablicu procesa

  • 11

    Procesi

    OS je zaduen za startovanje, izvravanje i stopiranje procesa (programa) na raunaru

  • 12

    Stanja procesaStanja procesa (ivotni ciklus procesa)

    Aktivan (Running) proces se izvrava na CPU Spreman (Ready) proces se nalazi u memoriji i spreman je za izvrenje, kad mu se dodeli CPUBlokiran (Waiting) proces eka na zavretak U/I operacije ili neki dogaaj da bi mogao da nastavi sa izvravanjem

    Blokiran

    Spreman Aktivan

    Startuje se Zavren

    Dobio CPU

    Istekao vremenski kvant

    Zahtev za U/I operacijom

    Zavrena U/I operacija

  • 13

    Promena konteksta (Context switch)Postoji samo jedan CPU (jedno-procesorski raunar) i njemu pridruen skup registara koji sadre vrednosti u skladu sa trenutnim izvravanjem aktivnog procesa (kontekst procesa)Svaki put kada se proces prevodi u aktivno stanje nastaje promena konteksta:

    Vrednosti registara do tada aktivnog procesa se smetaju u njegov PCB i on prelazi u stanje SpremanPrethodno zapamene vrednosti registara novo aktiviranog procesa se iz njegovog PCB smetaju u registre procesora i novi proces nastavlja izvravanje od instrukcije koja je prekinuta kada je proces preao u stanje spreman (nakon isteka dodeljenog vremenskog perioda za izvravanje) ili u stanje ekanja (ukoliko je aktivirao neku U/I operaciju)

  • 14

    Planiranje procesa (CPU Scheduling)Postupak odreivanja koji proces spreman za izvrenje (u stanju spreman) treba da bude aktiviran

    Veliki broj procesa moe biti u stanju spremanSamo jedan proces moe biti u stanju aktivan

    Planiranje procesa se obavlja po principu raspodele vremena CPU (time sharing) primenom sledea dva algoritma:

    Kruni tok (Round Robin) - Svaki proces se izvrava odreeni vremenski interval (kvant) i nakon isteka intervala vraa u stanje spreman (ukoliko nije zavren ili aktivirao neku U/I operaciju), a sledei proces po redu se aktivira i tako u krug Prioritet - Aktivira se proces najveeg prioriteta. Statiki prioritet se ne menja tokom ivotnog ciklusa procesa, dok je dinamiki promenljiv. Sistemski procesi imaju generalno vei prioritet od korisnikih procesa

  • 15

    Kruni tok (Round robin)

    Raspodela procesorskogvremena na jednake delove svim spremnim procesimaPretpostavimo da je vremenski kvant 50 ms

    Vreme izvrenja

  • 16

    Upravljanje memorijom

    FunkcijeDodela memorije procesima za smetanje koda programa i podatakaOslobaanje memorije kada se proces zavriEvidencija gde i kako su smeteni procesi u memoriji; svaki proces u memoriji uva programski kod i podatke nad kojima se vri obradaKonvertovanje logike u fiziku adresu pri svakom referenciranju memorije od strane procesa koji se izvrava (aktivan proces) Logika adresa (virtuelna ili relativna adresa) adresa memorijske lokacije relativno u odnosu na poetak programa i ima vrednosti od 0 do Max (veliine procesa u memoriji)

    Fizika adresa - Stvarna adresa bajta (rei) u glavnoj memoriji (RAM)

  • 17

    Upravljanje memorijomMemorija je kontinualan skup bitova pri emu svaki bajt (ili memorijska re) ima jedinstvenu (fiziku) adresuMemorijske adrese poinju od 0 do N u zavisnosti od veliine glavne memorijePrimer:

    Raunar ima 128 MB memorijeSvaka re (word) je veliine 8 BKoliko bitova je neophodno za adresiranje svake rei u memoriji?Odgovor: 24 bita

  • 18

    Pojedinano (jednoprogramsko) kontinualno upravljanje memorijom

    Postoje samo dva procesa u memoriji: operativni sistem i aplikacioni programMemorija je podeljena u dve sekcije i sadrajem graninog registra zatien je pristup procesa aplikacionog programa memorijskom prostoru u koji je smeten OSLogika adresa je celobrojnavrednost relativno u odnosu na poetak procesa aplikativnogprogramaDa bi se generisala fizika adresa logika adresa se dodaje adresi poev od koje je smeten proces u glavnoj memoriji

  • 19

    Upravljanje memorijomkorienjem particija

    Memorija je podeljena na memorijske particije koje mogu biti zauzete ili slobodne

    Fiksne particije formiraju se prilikom podizanja (boot) sistemaDinamike particije - Memorijske particije se dinamiki kreiraju u memoriji na osnovu zauzimanja i oslobaanja memorije od strane procesa

    Bazni registar - sadri poetnu adresu memorijske particije koja je dodeljena trenutno aktivnom procesuGranini registar - sadri vrednost veliine memorijske particije aktivnog procesa

  • 20

    Izvravanje programa

    CPU zapoinje izvrenje programa 1 CPU zapoinje izvrenje programa 2

  • 21

    Upravljanje memorijom stranienjemStranienje Tehnika za nekontinualno upravljanje memorijom u kojoj je proces podeljen na stranice (page) fiksne veliine, uobiajeno 4KB (moe biti 512B do 64KB i vie), koje se smetaju u nekontinualnestranine okvire (page frame) iste veliine u glavnoj memoriji.

  • 22

    Upravljanje U/I ureajima

    Sakriva detalje i specifinosti svakog hardverskog ureaja od korisnikaOsnovne funkcije:

    Obezbeuje jedinstveni interfejs prema U/I ureajima Pomou drajvera ureaja vri upravljanje specifinim U/I ureajimaPlanira, dodeljuje procesima i oslobaa U/I ureajeObezbeuje efikasnost rada U/I ureaja i upravljanje grekama

  • 23

    U/I ureaji

    Elektromehaniki U/I ureaj (tastatura, mi, monitor, disk, itd.)U/I kontroler (adapter, PC kartica) ip, ili skup ipova na ploi ili kartici koji upravlja ureajem, obezbeujui jednostavan interfejs prema OS u vidu registara za kontrolu ureaja, podatke, status ureaja i adresu (itanja ili upisa)

    Magistrala

    Monitor

  • 24

    Naini izvrenja U/I operacijaProgramirani U/I aplikativni program poziva U/I funkciju (read, write), koja poziva drajver ureaja koji aktivira U/I kontroler, i povremeno proverava da li je ureaj zavrio. Ako je zavrio, smeta rezultujue podatke u memorijski bafer i vraa kontrolu aplikativnomprogramu. CPU izvrava drajver, ne radei nita drugo (busy waiting)

    Prekidima voen U/I drajver aktivira U/I kontroler i zahteva da kontroler generie prekid kada zavri. Drajver zavrava i OS taj proces aplikativnog programa postavlja u stanje ekanja i aktivira sledei proces. Kada kontroler obavi U/I operaciju, generie prekid koji se preko kontrolera prekida alje CPU. OS na osnovu broja ureaja koji je izazvao prekid aktivira proceduru za obradu prekida, koja obavlja transfer podataka, a zatim se aktivira proces koji je prekinut.U/I korienjem DMA (Direct Memory Access) Koristi se poseban DMA ip koji omoguava prenos vee koliine podataka izmeu memorije i kontrolera bez intervencije CPU. CPU aktivira DMA ip, specificirajui ureaj i memorijsku adresu, kao i broj bajtova koje treba prebaciti. DMA generie prekid kojim obavetava CPU o zavretku prenosa

  • 25

    U/I upravljan prekidimaKoraci u aktiviranju U/I ureaja i prihvatanje prekida (a)

    Drajver nalae kontroleru ta treba da uradi upisujui vrednosti u njegove registre (1)Kada kontroler zavri sa itanjem/upisom aktivira kontroler prekida (2)Kontroler prekida informie CPU o nastalom prekidu (3) i prosleuje informaciju o tome koji kontroler ureaja je aktivirao prekid (4)

    Obrada prekida (b) Tekua instrukcija programa se prekida, i izvrenje prenosi na rutinu za obradu prekida (deo drajvera)

  • 26

    Upravljanje ulazno/izlaznim (U/I) ureajima

    U/I softver

    U/I hardver

    Procedure za obradu prekida

    Drajveri ureaja (upravljaki programi)

    U/I softver nezavistan od U/I ureaja

    Aplikativni program

  • 27

    U/I softverProcedure za obradu prekida (interrupt handler) procedure koje se izvravaju u sluaju nastanka prekida (interrupt) od U/I ureaja Drajveri ureaja (device drajver) softver koji upravlja radom U/I kontrolera, izdajui mu komande i prihvatajui rezultat. Svaki proizvoa U/I kontrolera i U/I ureaja razvija drajver za svaki OS (Windows, Unix, Linux, itd.) Drajveri se prilikom instaliranja integriu u OSOS U/I softver nezavistan od U/I ureaja

    Izvrava U/I funkcije koje su zajednike za sve U/I ureajeObezbeuje aplikativnim programima jedinstven programski interfejs nezavisno od tipa ureaja i U/I kontrolera. (U aplikativnom programu poziva se funkcija read za itanje podataka sa sekundarne memorije bez obzira da li se radi o hard disku, cd rom-u, USB flash disku, itd.)

  • 28

    Upravljanje datotekama (File system)Obezbeuje organizovanje i pristup podacima na sekundarnim (trajnim) memorijama raunarskog sistemaPodaci su organizovani u datoteke, a datoteke su grupisane u direktorijume (foldere, adresare, kataloge)Osnovne funkcije:

    Prevoenje logike adrese (broj bloka) u fiziku adresu (cilindar, staza, sektor)Kreiranje i brisanje datoteka i obezbeenje operacija za rad sa datotekama (otvaranje, zatvaranje, itanje, upis, pozicioniranje,...)Evidencija blokova na sekundarnoj memoriji u kojima je smetena datotekaEvidencija slobodnog prostora na sekundarnoj memoriji za smetanje novih datotekaZatita datoteka i podataka u njima od neovlaenog pristupa, modifikovanja i brisanja

  • 29

    Upravljanje datotekamaDatoteke imenovana kolekcija logiki povezanih, homogenih podataka

    Ime datoteke, tip datoteke (ekstenzija), veliina, datum kreiranja/modifikacije, prava pristupa, itd.

    Direktorijumi (folderi, adresari, katalozi) sadre spisak datoteka i direktorijuma nieg nivoa

    Korenski direktorijum (root) C:\Hijerarhijska organizacija direktorijuma u stablo (graf)Putevi (path) do datoteka i direktorijuma Apsolutni poev od direktorijuma korena, navoenje svih direktorijuma do konane datoteke ili direktorijuma

    Relativni poev od radnog direktorijuma, korienjem simbola . (tekui direktorijum) i .. (direktorijum iznad)

  • 30

    Direktorijumi (folderi) i putevi

    Hard Disk C:

    UR Istrazivanje

    Lec1.ppt

    Lec1.doc

    Hobi

    Sport Putovanja Umetnost

    Apsolutni put C:\UR\Lec1.ppt

    Relativni put ..\UR\Lec1.pptRadni direktorijum

  • 31

    Windows Explorer