paskaita nr3 funkcijos
TRANSCRIPT
![Page 1: Paskaita nr3 funkcijos](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/1.jpg)
Operacinės sistemosDonatas Bukelis
![Page 2: Paskaita nr3 funkcijos](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/2.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/3.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/4.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/5.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/6.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/7.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/8.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/9.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/10.jpg)
Operacinių sistemų funkcijos/Procesų valdymas• Proceso būsenos:
![Page 11: Paskaita nr3 funkcijos](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/11.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/12.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/13.jpg)
Operacinių sistemų funkcijos/Procesų valdymas• Procesai būna:
• Vienalaikiai (Concurrent) procesai;• Nepriklausomi procesai;• Kooperuojantys procesai.
![Page 14: Paskaita nr3 funkcijos](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/14.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/15.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/16.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/17.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/18.jpg)
Operacinių sistemų funkcijos/Procesų valdymas• Gijos;• Gijos turi savo:
• programos skaitiklį;• steką;• registrus;• gijas-palikuonis;
• būseną.
![Page 19: Paskaita nr3 funkcijos](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/19.jpg)
Operacinių sistemų funkcijos/Procesų valdymas• Gijos bendrai naudoja:
• adresų erdvę;• globaliuosius kintamuosius;• atidarytus failus;• taimerius;• semaforus;• statistinę informaciją.
![Page 20: Paskaita nr3 funkcijos](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/20.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/21.jpg)
Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Kritinė sekcija;• Pertrauktys;• Aklavietės.
![Page 22: Paskaita nr3 funkcijos](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/22.jpg)
Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Pertraukčių susidarymo priežastys:
• Vidinės;• Išorinės.
![Page 23: Paskaita nr3 funkcijos](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/23.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/24.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/25.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/26.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022081507/587069261a28ab48378b5aaf/html5/thumbnails/27.jpg)
Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Saugios ir nesaugios situacijos.