Operacinės sistemos OS konspektas


Kaip tvarkomos galvutes. Kaip operacines sistemos sprendzia aklavietes problema.

Informatikos konspektas. Operacinės sistemos. Egzamino klausimai. Kokius atminties valdymo uždavinius sprendžia operacinė sistema. Paaiškinkite, kaip operatyvinė atmintis tvarkoma naudojant fiksuoto dydžio skyrius. Paaiškinkite, kaip operatyvinė atmintis tvarkoma naudojant kintamo dydžio skyrius. Kaip laisvos atminties zonos tvarkomos naudojant. Kas tai yra virtuali atmintis ir kaip ji naudojama? Kokią funkciją atminties valdymo uždaviniuose atlieka atminties valdymo įrenginys (blokas) (MMU)? Paaiškinkite, koks procesas vadinamas puslapiavimu. Kokią funkciją atlieka puslapių lentelės, kaip jos panaudojamos? Kokiose situacijose naudojami puslapių keitimo algoritmai? Įvardinkite pagrindinius įvedimo-išvedimo programinės įrangos sluoksnius, paaiškinkite jų funkcijas. Apibūdinkite įrenginių draiverių paskirtį. Apibūdinkite resursų sąvoką. Kokiais atvejais kyla su resursų skyrimu susijusios aklavietės situacijos? Paaiškinkite, kaip resursų išskyrimas modeliuojamas naudojant grafus. Kokios yra su resursų išskyrimu susijusių aklaviečių išvengimo algoritmų grupės? Paaiškinkite „stručio“ algoritmo esmę. Kada jį tikslinga taikyti? Paaiškinkite, kaip aklaviečių galima išvengti, panaikinant jų susidarymo sąlygas. Paaiškinkite „aptikti ir taisyti“ metodo esmę. Kaip aptinkamos aklaviečių situacijos ir kokie veiksmai atliekami aptikus aklavietę? Paaiškinkite dinaminio aklaviečių išvengimo metodo esmę. Paaiškinkite, kaip veikia diskinio įrenginio skaitymo galvutės valdymo algoritmai. Paaiškinkite katalogų sistemos organizavimo principus. Kokiu tikslu naudojamas failų sistemų prijungimas (mount)? Paaiškinkite, kaip failai ir katalogai išdėstomi diske. Paaiškinkite, kaip tvarkoma laisva vieta diske. Nuo ko priklauso failų sistemos produktyvumas ir operacijų efektyvumas? Paaiškinkite, kaip analizuojamas failų sistemos funkcionalumas. Kokie principai realizuoti žurnalinėse failo sistemose? Kuo jos patogios klaidų atveju? Paaiškinkite mobilių OS ypatumus. Kuo jos skiriasi nuo įprastų, stacionariems kompiuteriams skirtų OS? Kas sąlygoja šiuos skirtumus?


Kas tai yra virtuali atmintis ir kaip ji naudojama? Kai didelė programa netelpa į atmintį, reikia ieškoti galimybės jos dalis saugoti diske. Dabartiniuose kompiuteriuose tokia operacija atliekama automatiškai, panaudojant virtualios atminties principą. Operacinė sistema laiko einamuoju momentu reikalingas programos dalis fizinėje (operatyvinėje) atmintyje, o likusias - diske. Panaudojant šį principą, 1 Mb dydžio programą galima vykdyti 256 Kb atminties turinčiame kompiuteryje, pasirenkant kuriuos 256 Kb programos kodo ir kada laikyti atmintyje. Virtuali atmintis ypač svarbi multiprograminėse sistemose, kai vienu metu dirba daug procesų, ir visiems jiems reikia skirti tam tikrą fizinės atminties dalį.

Kokią funkciją atminties valdymo uždaviniuose atlieka atminties valdymo įrenginys (blokas) (MMU)? Programoje naudojami adresai yra vadinami virtualiais adresais, ir visi jie sudaro virtualią adresų erdvę. Vykdant programą, šie adresai nėra naudojami tiesiogiai, o keliauja į specialų atminties valdymo įrenginį (MMU – Memory Management Unit), kuriame yra atvaizduojami į tikruosius fizinius atminties adresus.

Taikant šį algoritmą, labai realu patekti į situaciją, kai išmetami reikalingi puslapiai. Dėl šios priežasties šis algoritmas naudojamas retai.

NRU (Not Recently Used – neseniai naudoto), algoritmas yra susijęs su dviejų būsenos bitų panaudojimu kiekvienam puslapiui: R – kreipimosi bitas, kuris nuatatomas į 1 kiekvieną kartą, kai į šį puslapį yra kreipiamasi, ir M – modifikavimo bitas, kuris nustatomas kiekvieną kartą, kai atitinkamo puslapio turinys yra pakeičiamas. Galimybę naudoti tokius bitus turi dauguma kompiuterių, kuriuose yra naudojama virtuali atmintis. NRU algoritmas veikia tokiu būdu. Pradėjus vykdyti procesą, visų jo puslapių R ir M bitų reikšmės yra nustatomos į 0. R bito reikšmė papildomai yra nustatoma į nulį kiekvieno laiko pertraukimo metu tam, kad visą laiką žymėtų, kad į puslapį kreiptasi labia neseniai.

Įvykus “puslapio klaidai”, OS patikrina visus puslapius ir suskirsto juos į 4 kategorijas pagal jų R ir M reikšmes:

Toliau NRU algoritmo logika paprasta – jis išmeta atsitiktinį puslapį iš netuščios klasės su žemiausiu numeriu. Aisšku, kad geriau išmesti modifikuotą puslapį, į kurį nebuvo kreiptasi bent jau vieno laiko intervalo metu, negu “švarų” puslapį, kuris dažnai naudojamas.

Antro šanso, FIFO algoritmą galima modifikuoti, neleidžiant išmesti dažnai naudojamų puslapių. Tuo tikslu papildomai patikrinamas sąraše esančio seniausio puslapio R (kreipimosi) bitas. Jei jis lygus 0, puslapis ir senas, ir nenaudojamas, todėl jį galima nedelsiant išmesti. Jei R=1, bitas išvalomas, o puslapis patalpinamas į sąrašo galą, taip jam suteikiant Antrą šansą. Tada OS pereina prie sekančio seniausio puslapio sąraše ir jį taip pat patikrina. Procesas kartojamas, kol bus rastas puslapis, esantis sąrašo pradžioje ir turinti R=0.

LRU (Least Recently Used – seniausiai naudoto) aproksimacijos, keitimo algoritmas yra artimiausias optimaliam puslapių keitimo algoritmui. Šio algoritmo esmė: įvykus “puslapio klaidai”, išmetamas puslapis, kuris buvo nenaudojamas ilgiausią laiką. Natūralu manyti, kad tie puslapiai, kurie dažnai buvo naudojami praeityje, bus dažnai naudojami ir ateityje. Pagrindinė NFU problema yra ta, kad šis algoritmas niekada nieko neužmiršta. Pvz., jei turime keleto etapų kompiliatorių, susiduriame su situacija, kai pirmajame etape intensyviai naudoti puslapiai beveik visai nenaudojami sekančiuose etapuose, tuo tarpu jų skaitliukų reikšmės sekančiuose etapuose išlieka didelės. Puslapiai, kurie intensyviau pradedami naudoti sekančiuose etapuose, turės mažesnes skaitliukų reikšmes ir bus pasirenkami sukeitimui.

Operacinės sistemos OS konspektas. (2014 m. Liepos 12 d.). http://www.mokslobaze.lt/operacines-sistemos-os-konspektas.html Peržiūrėta 2016 m. Gruodžio 06 d. 02:58