Študentské stránky | Bazár skrípt | Odkazovač | Linky

Hľadaj aj na .sk .cz webe


Predmet

Operačné systémy

 

Obsah

 

1.      Úvod.......................................................................... 1

1.1        Literatúra................................................................ 1

1.1.1          Povinná.............................................................. 1

1.1.2          Odporúčaná........................................................ 1

1.1.3          Iná..................................................................... 2

1.2        Témy cvičení............................................................ 2

2.      Operačný systém......................................................... 2

2.1        História operačných systémov.................................... 2

2.2        Ako to nazvať?.......................................................... 2

2.3        Operačný systém ako správca prostriedkov..................2

2.3.1          Moduly operačného systému..................................3

2.4        Proces..................................................................... 3

3.      Virtuálny počítač........................................................... 3

4.      Prideľovanie pamäti....................................................... 4

4.1        Funkcie modulu prideľovania pamäti.............................4

4.2        Výber stratégií prideľovania pamäti.............................. 4

4.2.1          Prideľovanie jednej súvislej oblasti.......................... 4

4.2.2          Prideľovanie pamäti po sekciách............................. 5

4.2.3          Dynamické premiestňovanie sekcií.......................... 6

4.2.4          Techniky prideľovanie virtuálnej RAM...................... 7

 

1.      Úvod

1.1     Literatúra

1.1.1   Povinná

Autor(i)

Názov

Vydavateľ

Rok

Vydanie

 

 

 

 

 

1.1.2   Odporúčaná

Autor(i)

Názov

Vydavateľ

Rok

Vydanie

Marwick, Donovan

Operačné systémy

 

 

 

Donovan

Systémové programovanie

 

 

 

Skočovský

Princípy a problémy OS UNIX

 

 

 

Hansen

Princípy operačných systémov

 

 

 

1.1.3   Iná

1.2     Témy cvičení

1.     Podmienky zápisu.

MS-DOS

2.     Konfigurácia a optimalizácia systému (AUTOEXEC.BAT, CONFIG.SYS).

3.     Správa diskov.

4.     Dávkové súbory s parametrami, cyklami a podmienkami.

5.     Písomka z MS-DOS.

UNIX

6.     Prihlásenie do  systému a ochrana konta, zadávanie  príkazov (WHO, DATE, MORE, MAN). Systém súborov (CAT, CD, PWD, LS-).

7.     Systém súborov  (MKDIR, RMDIR, RM, CP). Prístupové  práva súboru (CHMOD, CHOWN). Presmerovania a vyhľadávanie (FIND, GREP, PS, KILL).

8.     Stránkový editor VI, príkazový a editovací mód.

9.     UNIX-SHELL

10.  UNIX-SHELL

11.  UNIX-SHELL, resp. WINDOWS NT (ak bude nainštalovaný)

12.  UNIX-SHELL, resp. WINDOWS NT (ak bude nainštalovaný)

13.  Preberanie zadaní a výsledky.

2.      Operačný systém

Operačný systém = správca prostriedkov (zjednodušene) - programové moduly vo VS, ktoré ovládajú riadenie prostriedkov, ktorými je systém vybavený; základné prostriedky systému:

 

1.     Procesor

2.     Pamäť

3.     Vstupno-výstupné zariadenia

4.     Súbory dát

2.1     História operačných systémov

Generácia

Obdobie

Príklady

Popis

0.      

50te

ENIAC

open shop - dávkové spracovanie = job-by-job

1.      

60te

 

vylepšenia + prvé terminály => timesharing

2.      

stred 60tych

IBM360

jadro OS, schopné pracovať vo viacerých režimoch, všeobecné použitie

3.      

stred 70tych

 

siete, on-line spracovanie, virtuálne počítače, databázové systémy

2.2     Ako to nazvať?

Užívateľ - úloha - kroky - procesy

2.3     Operačný systém ako správca prostriedkov

-prostriedky a spôsob ich ovládania, ich prideľovanie a základné funkcie modulov.

 

OS musí:

 

1.     Mať prehľad o prostriedkoch

2.     Realizovať pravidlá prideľovania (kedy a koľko)

3.     Prideľovať prostriedky

4.     Žiadať o vrátenie pridelených prostriedkov

2.3.1   Moduly operačného systému

-základné sú štyri:

 

1.     Modul prideľovania operačnej pamäte

2.     Modul prideľovania procesoru

3.     Modul prideľovania periférnych zariadení

4.     Modul správy súborov

 

Pre každý z týchto modulov sú všetky 4 funkcie rovnaké (t.j. napr. 3. pre pamäť = prideľovanie pamäte).

2.4     Proces

sa môže nachádzať v nasledujúcich stavoch:

 

1.     Prebiehajúci práve pracuje s pridelenými prostriedkami

2.     Čakajúci čaká na nejakú udalosť

3.     Pripravený už udalosť zaznamenal a čaká kým príde na rad

4.     Zadaný je každý, ktorý užívateľ práve spustil

5.     Prijatý znamená, že zadaný proces systém akceptoval

6.     Ukončený je ten, ktorý už skončil svoju činnosť

 

(Ja to kašlem, ten Word tie obrázky vždy poserie… :-)

3.      Virtuálny počítač

// SCHÉMA - sústredné kružnice (nechce sa mi to kresliť)

 

Jadro - holý počítač, čiže hardware (von Neuman).

Nad tým 4 správcovia v poradí:

·       modul prideľovania procesora

·       modul prideľovania operačnej pamäte

·       modul prideľovania procesov (správa procesov, ich vykonávanie a rušenie)

·       modul prideľovania zariadení (už vyššia úroveň)

Najvyššie - správa súborov.

 

Toto všetko je vrstva 0 - tzv. jadro systému, nad tým je vrstva 1 a 2. Užívateľ zadá úlohu, ktorá sa rozdelí, prejde cez 1 a 2 a na úrovni 0 sa spracuje.

4.      Prideľovanie pamäti

4.1     Funkcie modulu prideľovania pamäti

1.     Sleduje stav každého pamäťového miesta v operačnej pamäti, či je pridelené alebo voľné

2.     Určuje stratégie prideľovania pamäti, komu bude pridelená ktorá časť a v akom rozsahu

3.     Realizácia techniky prideľovania

4.     Realizácia uvoľňovania pamäti

 

Musí mať vždy prehľad o voľnej pamäti a prideľovať ju podľa určitej stratégie.

4.2     Výber stratégií prideľovania pamäti

Prideľovanie reálnej pamäti:

 

1.     Prideľovanie jednej súvislej oblasti

2.     Prideľovania po sekciách

3.     Dynamické premiestňovanie sekcií

4.     Stránkovanie

 

Prideľovanie virtuálnej pamäti:

 

1.     Stránkovanie na žiadosť

2.     Segmentácia

3.     Stránkovanie na žiadosť a segmentácia

 

Virtuálna pamäť sa používa v prípadoch, keď nemám dosť reálnej.

 

OS by sa mal snažiť sa poskytovať užívateľovi vždy čo najväčšiu flexibilitu systému.

4.2.1   Prideľovanie jednej súvislej oblasti

·       jednoduchá technika, nevyžadujúca žiadne zvláštne technické prostriedky

·       pamäť sa delí na časť trvalo pridelenú OS a zostávajúca časť je pridelená procesu

·       iba jeden proces

 

Memory management:

 

1.     Sledovanie pamäte - celá pridelená jednej úlohe

2.     Výber stratégie - to isté

3.     Pridelenie - celá

4.     Uvoľnenie - po skončení celá

 

Technické vybavenie - ochrana pamäti, HR.

Programové vybavenie

 

Výhody: jednoduchosť, žiadne tabuľky ani iné nároky.

Nevýhody: plne nevyužitá pamäť, nedostatočné využitie procesoru, obmedzenie veľkosťou pamäte.

Multiprogramovanie - swapping metódy - výmeny.

Ochrana: - len aby program neprepísal OS.

 

Programové riešenie:

 

1.     Vstup úlohy - musím vedieť, koľko pamäte požaduje

2.     Porovnanie voľného a žiadaného miesta - ak je málo = koniec

3.     Pridelenie pamäte

4.     Čakanie na ukončenie

5.     Uvoľnenie

6.     Ďalšia úloha

 

Toto riešenie možno realizovať len na monoprogramovom systéme.

4.2.2   Prideľovanie pamäti po sekciách

·       najjednoduchšia metóda multiprogramového systému

·       OP sa rozdelí na samostatné pamäťové oblasti - sekcie

 

Memory management:

 

1.     Sledovanie stavu sekcie

2.     Rozhodovanie o pridelení - plánovač úloh

3.     Vlastné pridelenie, voľná sekcia dostatočného rozsahu

4.     Uvoľnenie, po skončení úlohy

 

Niekoľko variant určenia sekcií:

 

1.     Statické určenie sekcií

2.     Dynamické určenie sekcií

3.     Prideľovanie oddelených sekcií

4.2.2.1Statické určovanie sekcií

Treba si pamätať rozdelenie sekcií - o každej začiatočná adresa, dĺžka a stav.

Sekcie sú pevné.

Pri požiadavke sa prideľuje sekcia podľa potreby pamäte.

 

Stratégie:

 

1.     First fit - vyberiem prvú voľnú, ak sa zmestí, dám ju tam, ak nie hľadám ďalšiu voľnú

2.     Best fit - vyberiem tú, ktorá má najbližšiu veľkosť

3.     Worst fit - vyberie najhoršiu - skoro vôbec sa nepoužíva

 

Problém: vonkajšia fragmentácia - napr. sekcia 120K a program 30K - 90K ostáva nepoužiteľných.

4.2.2.2Dynamické určovanie sekcií

Nič nie je dopredu určené, sekcie sa vytvárajú behom spracovania. OS potrebuje miesto, kde generuje tabuľky pridelených sekcií a voľných sekcií a obhospodaruje ich. Úlohy končia v nerovnakom čase - problém s fragmentáciou - vytváranie dier - na ich odstraňovanie sa využíva spájanie sekcií.

 

Stratégie prideľovania sekcií:

 

1.     First fit - do prvého voľného miesta

2.     Best fit - podľa veľkosti - zoradená

3.     Worst fit - môže mať zmysel, lebo po nej ostávajú veľké diery (to je teda výhra)

 

Spojenie sekcií - vždy dve za sebou nasledujúce uvoľnené sekcie.

4.2.2.3Prideľovanie oddelených sekcií

Zníženie fragmentácie, úloha nemusí byť v pamäti spojitá, čo kladie požiadavky na software. Technicky náročná technika, správa pamäti musí dostať informáciu o minimálnych veľkostiach spojitých úsekov - preto je zložitejšie zapamätávanie o stave pamäti.

 

Umožňuje programu žiadať už po spustení žiadať viac pamäte. Výsledok - menšie fragmenty, ale je ich viac.

 

veľmi jednoduché základné techniky

 

výhody prideľovania po sekciách:

Zjednodušuje multiprogramovanie, efektívnejšie využitie procesora a IO

Nevyžaduje technické vybavenie

Použité algoritmy sú jednoduché a ľahko implementovateľné

 

Nevýhody:

Fragmentácia

Môže sa stať, že sa úloha nemôže vykonať, lebo jej chýba pamäť

Informácie o tabuľkách, zložitejší OS (haha)

4.2.3   Dynamické premiestňovanie sekcií

 

umožňuje premiestňovať sekcie v pamäti (blitter), periodické zlučovanie

všetkých voľných oblastí do jednej súvislej oblasti

Odstraňuje vonkajšiu fragmentáciu

 

princíp je jednoduchý, ale niektoré časti programu sú pozične závislé od

umiestnenia v pamäti: obsahy relokačných bázových registrov (to je sú pekné

slovíčka), absolútne adresy, zoznamy parametrov, dátové štruktúry využívajúce

adresové ukazovatele - tieto musia byť modifikované.

 

blitter  - skratka - presun bitových blokov?

 

 

Požiadavky na technické vybavenie:

 

Typovanie dát - súčasne s uložením hodnoty do pamäťového miesta sa zaznamená aj

jej typ, napr. pridaním 2 bitov ku každému slovu. Pomalé zhusťovanie.

 

Dynamické premiestnenie, relokácia: špeciálny bázový (relokačný) a medzný register

sú 2 špeciálne registre programovo prístupné len OS. Pri každom prístupe do

pamäti sa k efektívnej adrese automatiky prepočíta obsah registra začiatku

programu. Efektívna adresa je "konečná adresa" z adresového priestoru úlohy,

vypočítaná procesorom z adresovej časti inštrukcie.

 

Zhustenie možno vykonávať hneď po uvoľnení pamäti alebo až keď nie je k

dispozícií ostatok voľnej pamäte pre novú úlohu

 

Výhody

 eliminuje fragmentáciu, umožňuje vytvorenie viacerých sekcií

 

Nevýhody: technické vybavenie zvyšuje cenu počítača, spomaľuje, môže zostať

časť pamäti nevyužitá

 

XXX

 

potrebuje si pamätať tabuľku úloh, tabuľku stránok a tabuľku blokov.

 

OS pracuje s:

 

1.     Tabuľkou úloh ?? - pre každú úlohu každá položka obsahujúca údaj o m?? a dĺžke jej tabuľky stránok + stavovú ??

2.     Tabuľkou blokov MBI?? - udáva stav každého bloku RWM (pridelený/voľný)

3.     Tabuľkou stránok MBI?? - transformácia adresového priestoru úlohy ako ??

 

Problém: reprezentácia transformácie.

 

Program má tvar, ktorý definuje program alebo úlohu, nezaujíma ho veľkosť stránok a nemá na to vplyv.

 

Funkcia modulu prideľovania RAM:

 

1.     Sledovanie stavu RAM pomocou tabuliek (PMT, MBT)

2.     Rozhodovanie o prideľovaní stránok - plánovač úloh

3.     Pridelenie stránok a zavedenie ?? ?? do tabuliek

4.     Uvoľnenie pridelených blokov a aktualizácia tabuliek

 

Technické prostriedky:

 

1.     Stránkovacie registre

2.     Tabuľky stránok (výhodné pre rozsiahle adresové priestory; dynamické preadresovanie D??; rozsah, adresa a stav sa pamätá v ??) // neúplná tabuľka: stránkový register/fyzická adresa začiatku stránky

3.     Hybridná tabuľka stránok - asociatívna pamäť - kombinácia veľmi rýchlych stránkových registrov a tabuliek stránok uložených v operačnej pamäti

 

Neraz sa pozrie na viac adries a vyberie správnu. (Tieto poznámky sú teda pekne chaotické :-)

 

Výhody:

 

1.     Eliminácia fragmentácie a tým umožňuje zvýšenie počtu úloh

2.     Eliminuje zhusťovanie pri dynamickom premiestňovaní sekcií

 

Nevýhody:

 

1.     Existencia tabuliek pre transformáciu stránok (čas, miesto, cena)

2.     Efektivita závisí od voľby veľkosti stránky (znalosťou o veľkosti úloh) - vnútorná fragmentácia

3.     Adresový priestor je limitovaný rozsahom operačnej pamäte

 

4.2.4   Techniky prideľovanie virtuálnej RAM

Realizuje sa na disku.

4.2.4.1Stránkovanie na žiadosť

·       Nie všetko už bude v operačnej pamäti, preto súčet všetkých úloh môže byť väčší ako ona

·       V RAM sú len tie stránky, ktoré sa práve používajú

·       Ak ?? stránku, ?? ?? ?? výpadok stránky, preto posúvanie nejakej ?? stránky na HDD a ?? ??

 

3 techniky:

 

1.     FIFO (First In First Out) - pamätá si, že kedy stránku zaviedol do RAM a ?? ??

2.     LRU (Less Recently Used) - ???

3.     WSM (Working Set Model) - vytvorí sa pracovný model (pre stránky, ktoré sú najpoužívanejšie), ?? si časové konštanty (koľko a koľkokrát bude bola používaná) // nejasný graf

 

Výhody:

 

·       Rozsiahla virtuálna RAM

·       Efektívne využitie operačnej pamäti

·       ?? multiprogramovanie

 

Nevýhody:

 

·       Zvýšená réžia OS oproti stránkovaniu (výpadky stránok??)

·       Vnútorná fragmentácia

·       Ošetrovanie zahltenia (čas ošetrenia výpadkov - čas spracovania úloh)

4.2.4.2Segmentácia

je nový prístup (hahá, takže XT je nový systém :-), kde sa snažím pozrieť?? na programy, ktoré sa dajú deliť na logické segmenty.

 

Segment - logické zoskupenie informácií, na ktoré sa rozdelí program - úloha sa delí na segmenty pri kompilácií.

Offset - adresa v danom segmente.

 

Tabuľka segmentov - SMT (Segment Map Table), ktorá obsahuje:

 

1.     Rozsah segmentu

2.     Prístup do segmentu

3.     Stav

4.     Začiatočnú adresu

 

Príklad:

 

Typ dát

Tabuľka segmentov

 

Rozsah

Prístup

Stav

Začiatočná adresa

Main

160

E

Y

4000

Podprogram

340

E

Y

3460

Data1

100

R

Y

3800

Data2

60

R,W

N

-

 

Segment:

 

·       Logická jednotka rôznej dĺžky - je to ucelená časť

·       Je to presnejšie vyjadrenie časti úlohy

·       Je fyzická jednotka informácie pevného rozsahu

·       ??? RAM

 

Výhody:

 

1.     Eliminácia fragmentácie - premiestnením segmentov sa voľný rozdrobený priestor spojí.

2.     Vytváranie virtuálnej operačnej pamäti - sú v nej iba aktívne segmenty

3.     Dynamické zostavovanie a zavádzanie úloh, možnosť zdieľania segmentov (výpočet = odmocnina z X), ?? segmentov

 

Nevýhody:

 

1.     Dynamické rozširovanie segmentu a eliminácia fragmentácie zvyšujú réžiu.

2.     Rôzny rozsah segmentov spôsobuje ťažkosti pri manipulácii so segmentmi v záložnej RAM

 

4.2.4.3Segmentácia a stránkovanie na žiadosť

Segmentácia potlačovala fragmentáciu. Stránkovanie je výhodné pri potláčaní fragmentácie. (Tak z toho som magor, ale tak to je v poznámkach :-)

 

Program sa rozdelí sa segmenty a každý segment použije stránkovanie na žiadosť. Operačná pamäť bude rozdelená na bloky. Dvojitá hierarchia tabuliek: tabuľka segmentov a každý segment má tabuľku stránok

Projekt hostuje Slovaknet.
Ubytovanie | Kúpele | Austrália | Práca v Kanade | Catering | Last minute dovolenka