Upload
donatas-bukelis
View
153
Download
2
Embed Size (px)
Citation preview
Operacinės sistemosDonatas Bukelis
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).
Operacinių sistemų funkcijos/Procesų valdymas• Proceso būsenos:
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.
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.
Operacinių sistemų funkcijos/Procesų valdymas• Procesai būna:
• Vienalaikiai (Concurrent) procesai;• Nepriklausomi procesai;• Kooperuojantys procesai.
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.
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į.
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.
Operacinių sistemų funkcijos/Procesų valdymas• Proceso deskriptorių sudaro:
• proceso identifikatorius,;• proceso būsena;• duomenys apie proceso privilegijas;• kodo segmento vieta.
Operacinių sistemų funkcijos/Procesų valdymas• Gijos;• Gijos turi savo:
• programos skaitiklį;• steką;• registrus;• gijas-palikuonis;
• būseną.
Operacinių sistemų funkcijos/Procesų valdymas• Gijos bendrai naudoja:
• adresų erdvę;• globaliuosius kintamuosius;• atidarytus failus;• taimerius;• semaforus;• statistinę informaciją.
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į.
Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Kritinė sekcija;• Pertrauktys;• Aklavietės.
Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Pertraukčių susidarymo priežastys:
• Vidinės;• Išorinės.
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.
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ė.
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ų.
Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Aklavietės panaikinimo būdai:
• Pirmumo teisės naudojimas;• Paskutinio veiksmo atšaukimas;• Procesų stabdymas.
Operacinių sistemų funkcijos/Procesų valdymas/Klaidos• Saugios ir nesaugios situacijos.