7. 1. 2013

H1. OS LINUX




F1. Vlákno

Vlákno-
- nazývané odľahčený proces
-je základnou jednotkou pre plánovacie činnosti procesora a pozostáva z :

  • čítača inštrukcií
  • sady registrov
  • zásobníka
PSW - proces status word (PC,Akumulátor)
vlákna nahrádzajú procesy, nevyžadujú vlastné systémové zdroje, sys.zdroje dostávajú od procesu, kt. vlákno využíva čiže volá.

STAV VLÁKNA-
  • pripravený - vlákno čaká na časové pridelenie CPU
  • bežiaci - má pridelený CPU, je vykonávaný
  • zablokovaný - odštartovanie inej systémovej funkcie, zablokovaný počas systémového volania
Vlakno1  -
             -  musi sa zablokovat                       PCB-velka datova struktura, mnoho infor.
       call vlakno 2                                           narocne na cas a pamat
             -
             .
         end vlakno
          vlakno2     -----
  • ukončený


E5.Plánovanie procesov


Cyklické plánovanie


Pi -------->/ ... , P2, P1/ -------------/CPU / ---------->Pj

1.Pi </ t  proces ukonceny tak opusta system     kratke procesy
2.Pj > t proces pripraveny    dlhe procesy
3. Pi >/ proces beziaci          dlhe procesy


Prioritné plánovanie - plánovanie závisí od priority, niekedy sú najlepšie s vysokou, niekedy s nízkou prioritou. Podľa toho či PC používa vysoké alebo nízke čísla. Vykonávaný proces... príde ďaľší : 

Preemtívne - ak má vyššiu hodnotu, tak sa prepne
Nepreemtívne- nový proces sa umiestni do frontu

Násobné fronty







E4. Operácie s procesmi.

Proces tvorí nové procesy pomocou systémového volania.
            rodič+potomok     nový proces= potomok
                           rodič
Nový proces má prostriedky od OS alebo od rodiča
- rodič beží súčasne s potomkom
- rodič čaká na ukončenie potomka

E3. Implementácia pomocou frontov


E2. Prepínanie procesov.


E1. Proces

Je to program, ktorý sa vykonáva, postupuje sekvenčne, v každom okamihu sa vykonáva len 1 inštrukcia programu.

C3.Systémové volania


Systémové volania- poskytujú Interface(rozhranie) medzi CPU a OS – proces môže využívať služby OS, volania sú prístupné v asembleri.




C1.Systémové služby,C2. systémové programy


Poskytujú služby programom a používateľom týchto programov – majú uľahčiť programovanie
1.Služby pre vykonanie programov- zavedenie programu do pamäte, spustenie, možnosť ukončenia – normálne alebo s chybou
2.Služby pre V/V operácie- prístup V/V zariadenia, chránené pred neoprávneným prístupom
3.Služby pre prácu  so súbormi – tvorba rušenie zápis modifikácia súborov
4.Služby pre komunikáciu medzi procesmi - komunikácia medzi procesmi ,vykonávajú na rôznych PC, ktoré sú spojené v PC sieti
5.Služby pre odhalenie ošetrenie chýb- OS musí mať prehľad o možných chybách –musí poskytnúť prostriedok pre ošetrenie všetkých chýb - chyba nesmie spôsobiť pád OS


Systémové programy-
Poskytujú lepšie prostredie pre vývoj a vykonávanie programov.
Poskytujú prostriedky-

  • Manipulácia so súbormi a adresármi- COMMANDER, Prieskumník
  • Programy na získanie stavovej informácie- inform. o čase, dátume, voľnej pamäti
  • Modifikácia súborov- OS musí poskytnúť editory pre tvorbu a modifikáciu súborov
  • Programy na podporu programovacích jazyko- kompilátori, asembleri, (C,Pascal,Lisp,Java,COMENIUS...)
  • Zavedenie a spustenie programov- zavádzač - LOADER , prekladač - COMPILER, spájanie(linkovanie) - spája program s knižnicou, linkovanie (debbuger) - simuluje činnosť programov
  • kominukačné programy ( email)
  • aplikačné programy (office)


Práca v konkrétnom adresári, musí dostať inštrukciu od procesora
Po preložení programu sa musí zaviesť do pamäte a spustiť. Systém musí poskytovať absolútny, relokovací –zavádzací program
Linkovací editor a ladiaci program pre vyššie programovacie jazyky.



OS
Kompilátori,                       OS
prekladač

Orientovaný      --------
program

Strojový
kód



Zavádzač-relatívny absolútny kód
Spájanie-Linkovanie
Ladenie-umožňuje simulovať činnosť programu (inštrukcia za inštrukciou)



B7.Virtuálny PC

Reálny hardvér
Keď potrebujem spostiť program, ktorý nefunguje na MS DOS naemulujem aj nasimulujem CPU Intel.
Simulácia - napodobňovanie činnosti na úrovni program. prostriedkov
Emulácia - napodobňovanie činnosti na úrovni tech. prostriedkov

B5.Objektovo orientovaná štruktúra

- služby objektu manipulujú so systémovými prostriedkami, ktoré sú zdieľané viacerými procesmi a realizované ako objekty

Výhody:

  • - OS manipuluje so zdrojmi jednotlivým spôsobom
  • - ochrana objektov rovnakým spôsobom
  • - zdieľanie objektov

Objektovo orientované programovanie ovplyvnilo tvorbu operačných systémov
Ak sa zmení hardvér, vynútia sa zmeny len tých objektov, ktoré reprezentujú hardvérové zdroje a ich služby.
Ďalšie výhody OS využívajúceho objektový prístup sú:
  • -OS manipuluje so zdrojmi jednotlivým spôsobom
  • - objekty poskytujú výhodný a jednoduchý vzor pre zdieľanie objektov medzi dvomi a viacerými procesmi
  • -všetky objekty sú chránené rovnakým štýlom, keď sa proces snaží pristúpiť k danému objektu, bezpečnostný systém skontroluje operáciu


B4.Klient - server

- oddelenie aplikačnej vrstvy od systémovej
- OS je rozdelený na skupinu serverov (server procesov)

- rozdelenie OS do niekoľkých serverov z ktorých, každý realizuje sadu služieb

- každý server beží v používateľskom režime a čaká v nekonečnej službe na požiadavky klientov

- zvyšuje spoľahlivosť systému



- klient žiada službu
- jadro vyberie zodpovedný server
- server vykoná, vráti OS
- vráti službu klientovi

B3.Viacvrstvová štruktúra

- všetky vrstvy sú striktne oddelene
- vyššia vrstva sa opiera o nižšiu
- predchádzanie vzniku chýb
- prehľadnosť z hľadiska programovania

nevýhoda - požiadavka V5 do V0 musí prejsť všetky vrstvy - ČAS
                 

  • V5 - používateľské programy
  • V4 - vyrovnávacie pamäte
  • V3 - ovládač konzoly (ľúbim ťa)
  • V2 - správa pamäte
  • V1 - plánovanie procesov
  • V0 - technické prostriedky PC

B1.Jednoduchá štruktúra,B2 Monolitická štruktúra

1.Jednoduchá štruktúra

- malé systémy, ktoré majú jednoduchú štruktúru MS DOS
- aplikačný program MS DOS má prístup k V/V
- môže zapisovať rovno na disk, obrazovku


2.Monolitická štruktúra

- aplikačné programy sú oddelené od systému
- privilegovaný režim- prístup k hardvéru a dátam
- neprivilegovaný – obmedzený prístup k systémovým dátam
Táo štruktúra je typická pre operačné systémy.
Ak v užívateľskom režime volá systémovú službu - procesor zachytí volanie a potom prepne volajúci proces do privilegovaného režimu.

A6.Distribuované systémy


  • -nezdieľajú hodiny a pamäť
  • -každý procesor ma vlastnú pamäť= môžu to byt - PC notebook server
  • -umožňuje zdieľanie prostriedkov, zvýšenie rýchlosti výpočtov, spoľahlivosti, zlepšenie komunikácie pre výmenu dát medzi jednotlivými systémami


A5.Paralelné systémy


- niekedy PC mali jeden procesor, dnes vývoj smeruje k viacprocesorovým systémom
*zdieľajú hodiny, zbernicu, pamäť, periférne zariadenia
- snaha zväčšiť priepustnosť, výkon a spoľahlivosť

  • -symetrické- ak je počet procesorov malý, tak je výhodná architektúra
  • -asymetrické- je vhodná pre veľký počet procesorov – je lepšia


Rozdiel medzi sym. a asym. modelom môže byť výsledkom návrhu hardware a software.



A4.Timesharing - zdieľaný čas


- multiprogramovanie pomocou terminálu
- vykonáva sa viac úloh súčasne (každej úlohe sa pridelí krátky časový interval)

  • prepínanie medzi úlohami sa deje rýchlo
  • používateľ môže komunikovať s programom počas jeho behu

- zdieľaný viacerými používateľmi naraz – (príkazy zadávané z klávesnice)
- v OP je naraz viacero procesov - disk slúži ako záložná pamäť
- poskytuje online súborový systém( je uložený na disku sprava diskov musí byť)
- v systéme so zdieľaným časom beží naraz viacero procesov



A3.Multiprogramové dávkové systémy

- využitie spoolingu umožňuje mať niekoľko úloh pripravených na spustenie
OS si môže vybrať úlohu, ktorú spustí ďalšiu tak, aby sa zvýšilo využitie CPU
Ak má OS už vstupné úlohy uložené na disku, tak OS môže plánovať.
OS si udržiava v pamäti niekoľko úloh naraz.


  1. - do OP vstupuje úloha - uloženie na disk - čakanie na zavedenie. Počet úloh v pamäti je menší ako počet úloh čakajúcich na spracovanie.
  2. - do OP sa uloží viac programov z dôvodu urýchlenia spracovania viacerých programov v súvislosti s vykonávaním V/V operácii
  3. - správa disku - organizácia vzťahu medzi vstupnou dávkou a uložením do OP
  4. - spracovanie programu - čakanie na V/V, prepnutie na ďalšiu úlohu
  5. - OS uloží v pamäti viac úloh naraz - využíva spooling

A2.Systém spooling

- používal sa v počítačoch, ktoré mali systém s diskovými periférnymi pamäťami

- disky značne urýchlili offline operácie
  * z čítača DŠ idú DŠ rovno na disk
  * program vojde do OP, aby mohol prejsť do CPU
  * program sa spracuje v CPU a vráti sa do OP
  * z OP sa uloží späť na disk
  * z disku idú výsledky do tlače

- načítavanie rovno zo snímača na disk

- vystúp sa zaznamenával na disk, neskor sa tlačil

- disk - BUTTER - najprv sa do neho načítavajú a potom zapisujú výstupy



A1.Dávkové systémy

Dávka pozostáva z niekoľkých úloh, ktoré mali rovnaké požiadavky na prekladač - takto sa zmenšil čas pre vykonanie programov, lebo nebolo treba pre každú úlohu znova zavádzať prekladač.
Neskôr sa práca pre spustenie programov zefektívnila použitím rezidentného monitora t.j. programu, ktorý bol trvale uložený v pamäti. Rezidentný monitor bol vlastne prvý operačný systém.
- úlohy sa vykonávajú po dávkach označených RŠ
- prečíta sa RŠ, vstúpi dávka - spracuje sa - výsledky sa zhromaždia vo výstupnej dávke a idú na tlač
- žiadna interakcia medzi človekom a spracovaním
- jazyk riadenia práce JCL (job control language) - vznik jazyka 
- cieľom bolo skrátiť a eliminovať čas operátora
- neskôr monitor nahradzuje OS