Upload
garran
View
100
Download
8
Embed Size (px)
DESCRIPTION
Operacinės sistemos. asist. S. Ramanauskaitė. Pseudolygiagretumas. Visi šiuolaikiniai kompiuteriai atlieka kelis darbus vienu metu; Realiai vienu laiko momentu viename procesoriuje yra vykdomas tik 1 procesas; - PowerPoint PPT Presentation
Citation preview
OPERACINĖS SISTEMOSasist. S. Ramanauskaitė
PSEUDOLYGIAGRETUMAS
Visi šiuolaikiniai kompiuteriai atlieka kelis darbus vienu metu;
Realiai vienu laiko momentu viename procesoriuje yra vykdomas tik 1 procesas;
Kadangi procesai keičiami procesoriuje labai greitai (kas 0,1-0,01 ms) – sudaromas lygiagretumo įspūdis;
Tai vadinama psaudolygiagretumu.
LYGIAGRETUMAS
Tikrasis lygiagretumas skaitomas tada, kai tai atspindi techninė įranga;
Tam reikia, kad būtų bent 2 veikiantys procesoriai, kurie dalijasi ta pačia atmintimi.
PROCESAI
Procesas yra veikianti programa; Kiekvienas procesas saugo tokią informaciją
kaip: Dabartinės programos skaitiklis; Registrų reikšmės; Kintamųjų reikšmės ir pan.
Procesai gali būti vykdomi skirtingu dažnumu;
Tai leidžia padaryti procesų prioritetai, kurie nusako, kuriems procesams skirti daugiau dėmesio.
SISTEMINIAI PROCESAI IR DEMONAI
Procesai, kurie yra paleidžiami operacinės sistemos jai užsikraunant ar valdant jos darbą, yra vadinami sisteminiais;
Procesai, kurie veikia “fone” be vartotojo sąsajos – vadinami demonais;
Kiekvienas procesas gali turėti tik vieną ar neivieno tėvinio proceso;
Kiekvienas procesas gali turėti kiek nori daug dukterinių procesų.
PROCESŲ KŪRIMAS UNIX TIPO SISTEMOSE
UNIX sistemose procesų medis turi vieną šakninį procesą, kuris paleidžiamas kraunant operacinę sistemą;
Pats aukščiausias procesas UNIX sistemoje vadinamas init;
Tuomet kuriant kiekvieną kitą procesą, šis yra dalinamas komanda fork;
Gavus tikslią kopiją, ji yra keičiama komanda exec, kad taptų nauju procesu.
PROCESŲ KŪRIMAS WINDOWS TIPO SISTEMOSE
Windows aplinkoje galima laisvai kurti naujus procesus;
Jie susiejami į medį tik nuorodų, valdytojų (handler) pagalba;
Tokiu būdu gali būti keičiamas dukterinio proceso tėvas kitu ir pan.
PROCESŲ BŪSENOS IR PERĖJIMAI
Kiekvienas procesas kiekvienu laiko momentu gali būti tik vienoje iš 3 būsenų;
Perėjimai tarp šių būsenų gali būti tik 4 (žiūrėti paveikslėlį).
PROCESŲ VALDYMAS
Kad operacinė sistema galėtų valdyti visus procesus ir juos tvarkyti, yra sudaroma procesų lentelė;
Joje saugoma informacija apie visus procesus: Proceso būsena; Programų skaitiklis; Steko rodyklė; Skirta atmintis; Atvirų failų būsena; ...
GIJOS Procesai naudojami sugrupuoti resursus; Gijos – tai atskirai valdomi elementai, kurie dirba su
procesoriumi; Gijos dar vadinamos lengvaisiasi procesias; Terminas daugiagijis nusako, kad viename procese
veikia kelios gijos, kurios naudojasi bendra adresų erdve, atvirais failais ir kitais bendrais resursias.
GIJŲ TARPUSAVIO SĄVEIKA
Gijos yra labiau susietos tarpusavyje nei procesai, nes vienu metu geba dalintis tais pačiais resursais ir adresų erdve;
Gijų veikimo pavyzdys: darbas tekstiniame redaktoriuje MS Word, kuris be to, kad leidžia jums dirbti su juo, laikas nuo laiko dar išsaugo patį failą, neįtakodamos jūsų darbo su juo ir pan.
GIJŲ PANAUDOJIMAS UŽKLAUSOMS APDOROTI
Interneto serveriuose, kad vieni vartotojai mažiau įtakotų kitus, kiekvienai užklausai aptarnauti yra kuriama nauja gija
GIJŲ LENTELĖS
Kad būtų galima susekti visas gijas, yra formuojamos gijų lentelės;
Pagal tai gijų lentelės gali būti įgyvendinamos: Vartotojo aplinkoje (kiekvienas procesas turi savo
gijų lentelę); Branduolyje (naudojama viena gijų lentelė); Hibridas (naudojamos gijų lentelės ir
branduolyje, ir procese).
ĮGYVENDINIMAS VARTOTOJO APLINKOJE
ĮGYVENDINIMAS BRANDUOLYJE
HIBRIDINIS ĮGYVENDINIMAS
LENKTYNIŲ (RACE) SĄLYGA
Kuomet keli procesai vienu metu naudojasi tuo pačiu resursu, o galutinis rezultatai labai priklauso nuo jų tikslios eigos – tokia situacija yra vadinama lenktynių sąlyga;
Jei gijos nebus tinkamai valdomos, gali sutrikti sistemos darbas (bus gauti ne tokie rezultatai.)
GIJŲ SINCHRONIZACIJA
Lenktynių sąlygoms valdyti gali būti naudojama keletas būdų: Semaforai (nustatyta kiek gijų vienu metu gali
naudotis resursu); Muteksai (jei viena gija naudoja resursą – kitai
liepiama laukti kol jis atlaisvės; tarsi dvejetainis semaforas);
Monitoriai (nuo mutekso skiriasi tuo, kad visas gijas stato į eilę, t.y. naudoja FIFO principą) ;