27
Operacinės sistemos Donatas Bukelis

Paskaita nr3 funkcijos

Embed Size (px)

Citation preview

Page 1: Paskaita nr3 funkcijos

Operacinės sistemosDonatas Bukelis

Page 2: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos

• Vartotojui skirtos funkcijos: • įvesties ir išvesties valdymas;• failų sistemos tvarkymas;• programų valdymas;

• Sisteminės funkcijos: • atminties valdymas;• atminties apsauga;• resursų tvarkymas;• apskaita.

Page 3: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Įvesties ir išvesties valdymas• Pagrindinis principas:

• Programa nepriklauso nuo to, kur laikomi duomenys;• Unifikuota išorinių įtaisų vardų sistema, kiekviena operacinė

sistema naudoja savo vardų sistemą, nurodančią įrenginio adresą ar kietojo disko numeravimą;

• Klaidų apdorojimas - pradžioje apatiniame lygyje, jei ten nepavyksta - aukštesniame.

• Dauguma įvesties ir išvesties operacijų - asinchroninės (procesorius pereina prie kitos užduoties; apie operacijos pabaigą jis informuojamas pertraukties signalu).

• Tam skirtos programos suskirstytos į kelis lygius. Žemiausieji lygiai “ekranuoja” aparatūros ypatumus, o aukštesnieji užtikrina patogią sąsają vartotojui.

Page 4: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Įvesties ir išvesties valdymas• Įvesties ir išvesties valdymo lygiai:

• pertraukčių užklausos;• įrenginių valdymo komandos;• duomenys.

Page 5: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Įvesties ir išvesties valdymas• Tvarkyklės;• Tvarkyklių ryšys su OS branduoliu:

• Dinamiškai prijungiamos;• Statiškai prijungiamos.

Page 6: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Įvesties ir išvesties valdymas• Dinamiškai prijungiamos tvarkyklės;

Privalumai: • sistemos naudojimas paprastesnis (vartotojui)• tik tuo momentu reikalingos tvarkyklės kraunamos į atmintį.Trūkumas:• įrenginiai šiek tiek lėčiau veikia.

Page 7: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Įvesties ir išvesties valdymas• Statiškai prijungiamos tvarkyklės;

Privalumas sistema yra efektyvesnė ir pasižymi paprastesne struktūra (programuotojui).

Trūkumas naujo įtaiso pajungimas paprastai reikalauja branduolio regeneracijos.

Page 8: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Įvesties ir išvesties valdymas• Virtualūs įrenginiai (spool);• Buferiai:

• Programos palaikomas buferis;• Operacinės sistemos palaikomas buferis;• Operacinės sistemos palaikomas dvigubas buferis;• Įvestis nenaudojant buferių.

Page 9: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas• Proceso sandara:

• vykdomasis programos kodas (dar vadinamas teksto arba programos sekcija);

• duomenys - kintamieji, buferiai ir t.t. (vartotojo duomenų sekcija);

• būsenos ar konteksto informacija - duomenys, reikalingi procesui restartuoti (neprarandant informacijos).

Page 10: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas• Proceso būsenos:

Page 11: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas• Procesų planavimas:

• Procesų planavimo žingsniai: • vykdomo proceso pakeitimo kitu momento nustatymas;• proceso parinkimas vykdymui;• kontekstų perjungimas.

1 ir 2 žingsniai realizuojami programiškai, 3 - pagrindinėmis aparatūros priemonėmis.

Page 12: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas• Vienas aktyvus procesas pakeičiamas kitu,

kai:• procesas sėkmingai baigiamas ir palieka sistemą;• įvyksta klaida;• procesas pereina į laukimo būseną;• pasibaigia jam skirtas laiko kvantas.

Page 13: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas• Procesai būna:

• Vienalaikiai (Concurrent) procesai;• Nepriklausomi procesai;• Kooperuojantys procesai.

Page 14: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas• Procesų sinchronizavimas (sąveika):

• vienas procesas turi perduoti duomenis kitam procesui;• keli procesai apdoroja duomenis, esančius tame pačiame

faile.

Page 15: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas• Proceso sukūrimas:

• sukurti informacines struktūras, aprašančias procesą, t.y. jo deskriptorių ir kontekstą;

• įtraukti naujo proceso deskriptorių į paruoštų procesų eilę;• užkrauti proceso kodo segmentą į operatyviąją atmintį arba

mainų su išorine atmintimi (svapingo) sritį.

Page 16: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas• Proceso kontekstą sudaro:

• registrų ir programos skaitiklio būsena;• procesoriaus darbo režimo būsena;• atidarytų failų rodiklių būsenos;• informacija apie neužbaigtas įvedimo-išvedimo operacijas;• šio proceso vykdomų sisteminių užklausų klaidų kodai ir t.t.

Page 17: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas• Proceso deskriptorių sudaro:

• proceso identifikatorius,;• proceso būsena;• duomenys apie proceso privilegijas;• kodo segmento vieta.

Page 18: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas• Gijos;• Gijos turi savo:

• programos skaitiklį;• steką;• registrus;• gijas-palikuonis;

• būseną.

Page 19: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas• Gijos bendrai naudoja:

• adresų erdvę;• globaliuosius kintamuosius;• atidarytus failus;• taimerius;• semaforus;• statistinę informaciją.

Page 20: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas• Kuo gijos skiriasi nuo procesų:

• visos tokios gijos turi tą pačią adresų erdvę;• nėra reikalo apsaugoti vieną giją nuo kitos;• tokios gijos sprendžia tą pačią vartotojo užduotį.

Page 21: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Kritinė sekcija;• Pertrauktys;• Aklavietės.

Page 22: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Pertraukčių susidarymo priežastys:

• Vidinės;• Išorinės.

Page 23: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Pertraukties apdorojimo procedūros:

• Pertraukties signalo priėmimas;• Būsenos įsiminimas;• Pertrauktį apdorojančios programos vykdymas;• Būsenos atstatymas.

Page 24: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Sąlygos aklavietei susidaryti:

• Abipusio išskyrimo sąlyga. Bet kuris resursas yra arba laisvas arba naudojamas tik vieno proceso;

• Valdymo ir laukimo sąlyga. Procesas, jau naudojantis tam tikrus resursus gali prašyti naujų resursų;

• Pirmumo teisės sąlyga. Resursai skirti tam tikram procesui, negali būti iš jo atimti. Juos turi atlaisvinti pats procesas;

• Ciklinio laukimo sąlyga. Tarp procesų turi susidaryti ciklinė grandinė.

Page 25: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Aklavietės problemos sprendimo būdai:

• “Stručio algoritmas” (ignoravimas);• Sekimas - aklavietė “pašalinama” tik po to, kai ji jau įvyko;• Profilaktika (prevencija)- taikoma tokia resursų skirstymo

strategija, kad aklavietė negalėtų įvykti;• Vengimas - draudžiamas toks resursų skirstymas, kuris veda

į aklavietės būseną;• Sekimas - procesas naudoja tik vieną resursą (Procesų-

resursų diagramos), procesas naudoja keletą resursų.

Page 26: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Aklavietės panaikinimo būdai:

• Pirmumo teisės naudojimas;• Paskutinio veiksmo atšaukimas;• Procesų stabdymas.

Page 27: Paskaita nr3 funkcijos

Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Saugios ir nesaugios situacijos.