PPT

Prezentácia

Formát
PPT
Veľkosť
63 kB
Pridané
Stiahnutí
2 741
Hodnotenie
2,0/5
Stiahnuť PPT · 63 kB

Preber si túto poznámku so svojou AI

Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto poznámky.

Otvoriť AI: ChatGPT · Claude · Gemini

Náhľad poznámky

Operačné systémy

História OS

Čo je OS

Operačný systém (OS) je program fungujúci ako prostredník medzi

používateľmi a hardvérom (technickým vybavením) počítačového systému.

Vytvára prostredie pre spúšťanie programov používateľov. Hlavným cieľom

je zabezpečenie pohodlného prístupu používateľov k programom a

efektívne využívanie hardvéru. Podľa širšej definície je operačný systém

všetko, čo dostanete v krabici s OS – kompilátory, editory, GUI nadstavby...

Podľa odbornej definície je OS iba program, ktorý neustále beží na počítači –

tzv. výkonné jadro (kernel) operačného systému.

Počítačový systém sa dá rozdeliť na štyri časti:

hardvér: CPU, pamäť (primárna a sekundárna) a V/V (vstupno-výstupné)

zariadenia systému;

operačný systém: koordinuje celý počítačový systém, prideľuje zdroje,

kontroluje ich použitie;

aplikačné programy: prekladače, databázy, hry (špeciálne sú tzv. nástroje

na správu systému – programy na kontrolu disku, formátovanie diskiet,

zavádzanie používateľov apod.);

používatelia. (Je trochu nesympatické považovať používateľov systému za

jeho súčasť).

Privilégia – úrovne prístupu

Mikroprocesory Intel 386+ a Pentium+ majú

možnosť pracovať v štyroch úrovniach oprávnenia.

(Úroveň 0 je úrovňou s najvyššími právami.) Ich

využitie je odporúčané takto:

Privilege Level 0 jadro operačného systému

(riadenie mikroprocesora, V/V operácií,...),

Privilege Level 1 služby poskytované operačným

systémom (organizácia V/V, ...),

Privilege Level 2 systémové programy

a podprogramy knižníc,

Privilege Level 3 používateľské aplikácie.

Architektúra OS

Veľký a zložitý systém, akým je OS, sa dá vytvoriť a spravovať, ak pozostáva z menších

častí s dobre definovaným rozhraním a chovaním. Rozdelenie komponent je vo

všeobecnosti takéto:

Správa procesov

Operačný systém by mal umožniť

vytváranie a ukončovanie procesov,

pozastavenie a reaktiváciu procesov,

synchronizáciu procesov a

komunikáciu medzi procesmi (aj po sieti).

Správa (primárnej) pamäte

odkladanie stránok (odkladanie nepotrebných stránok na disk a ich spätné nahrávanie do pamäte),

simulovaná vyrovnávacia pamäť disku,

prehľad o obsadenosti úsekov pamäte,

prideľovanie pamäte novým procesom a

prideľovanie pamäte procesom žiadajúcim o ďalšiu pamäť (a jej navracanie).

Správa sekundárnej pamäte

Správa periférnych zariadení

Správa súborov

Používateľské rozhranie

Textové používateľské rozhranie používa pre vstup údajov klávesnicu a pre výstup monitor terminálu.

Grafické používateľské rozhrania (GUI – Graphical User Interface) používajú pre vstup myš a klávesnicu.

Správa súborov

Súbory a adresáre sú organizované hierarchicky (Existuje hlavný adresár ( nazýva sa

root), ktorý je vždy ľahko detekovateľný operačným systémom. Rootovský adresár

ukazuje na ďalšie adresáre/súbory. Jeho (pod)adresáre ukazujú na ďalšie adresáre atď.

Vzniká tak tzv. stromová štruktúra adresárov.

Atribúty sú vlastnosti súboru či adresára. Bývajú uložené mimo tela (obsahu) súboru,

napríklad v adresári (u MS-DOSu a Windows 95/98/ME) či v hlavičke súboru Okrem

iného sem patria typ súboru, jeho umiestnenie, veľkosť, prístupové práva, časové údaje

a údaje o vlastníkovi. Názov súboru býva uložený v adresári.

Operácie so súbormi zabezpečované operačným systémom sú

vytvorenie/zrušenie/skrátenie súboru, zápis do súboru, čítanie dát zo súboru, presun

virtuálneho ukazovateľa pre čítanie resp. zápis na určitú pozíciu v súbore. Súbor,

s ktorým sa pracuje, označujeme ako otvorený, po skončení práce sa súbor uzavrie.

Hlavné metódy prístupu k súborom sú (z pohľadu programátora) sekvenčný prístup

(akoby bol súbor na páske) a priamy prístup (umožňuje čítať a zapisovať na rôznych

pozíciách súboru). Detaily implementácie pritom vykrýva operačný systém.

Prístupové práva: Práva sa týkajú čítania (read) súboru, zápisu (write) do súboru

a vykonávania (execute) súboru (ak je povolené vykonávanie, očakáva sa, že súbor je

programom alebo skriptom). Označujeme ich skratkami: r, w, x

Správa procesov

Proces je úloha (program) zavedená do pamäte na vykonanie. Ak

desať používateľov používa napríklad textový editor vi, spustili

jediný program (v pamäti sa nachádza iba raz), ale ide o desať

samostatných procesov.

Proces pozostáva z kódu programu (v našom príklade jediný

v pamäti) a dát procesu (globálne dáta, zásobníky zodpovedajúce

postupnosti volaní podprogramov a hromada, ktorá slúži na

prideľovanie ďalšej pamäte). Toto spolu s hodnotami registrov

počítača charakterizuje proces v operačnom systéme na danom

počítači.

Stav procesu vyjadruje vzťah OS a procesu. Proces môže byť

novovytvorený (new), bežiaci (running, práve je vykonávaný

pomocou CPU), pripravený (ready, čaká na pridelenie CPU),

čakajúci (waiting, nevykonáva sa, pretože čaká na dokončenie I/O

požiadavky, na komunikáciu s iným procesom, na uplynutie

zadaného časového úseku alebo na ukončenie činnosti svojho

potomka) a ukončený (terminated, skončil prácu alebo bol násilne

ukončený a systém ho z pamäte odstráni).

Správa primárnej pamäti

Dynamické zavedenie (dynamic loading) programov. Procedúra sa nenačíta z disku

do pamäte, kým nie je po prvýkrát volaná z programu. Je to výhodné pri málo

využívaných funkciách programu. Nevýhodou je časové zdržanie na prvé volanie

každej procedúry.

Dynamické zostavovanie (dynamic linking). Tu sa niektoré procedúry nepíšu, ale už

ich niekto umiestnil v knižniciach a tie sa k programu pridávajú až počas jeho behu (a

prvého zavolania funkcie z knižnice). Ide o dynamické knižnice Unixu či „dll“ súbory

Windows. Výhodou je menšia spotreba miesta na disku, keďže napríklad vstupno-

výstupné procedúry nemusí obsahovať každý program, stačí odkaz na ne do knižnice.

Nevýhodou je, že ak chceme zmeniť knižnice, nastáva problém kompatibility.

Prekrývanie (overlay). Často sa určité časti programov využívajú len v určitom čase

(napríklad pri štartovaní programu), potom môžu byť prepísané zvyšnou časťou

programu. Je to skôr vecou prekladača než OS, pri programovaní pre MS-DOS to

podporuje napríklad Borland Pascal i Borland C/C++.

Odkladanie stránok na disk (paging). To sme si už spomínali, má ho každý moderný

operačný systém a umožňuje využívať viac pamäte, než sa fyzicky nachádza v počítači.

Staršie operačné systémy odkladali na pevný disk celé procesy (swapovali), dnes sa

odkladajú len časti procesov – najmenej používané stránky (stránkovanie). Medzi

používateľmi a tvorcami počítačov a operačných systémov sa však zaužíval určitý

žargón, v ktorom sa procesu stránkovania nešťastne hovorí svapovanie či odkladanie

na disk. V lepšom prípade sa hovorí o odkladaní stránok do súboru resp. na

samostatnú partíciu (partícia je logický disk vytvorený na fyzickom disku, diskový

zväzok).

Prideľovanie primárnej pamäte

Existujú tri metódy alokácie primárnej (operačnej) pamäte.

Súvislá alokácia

Pri súvislej alokácii pamäte je LAP procesu uložený v súvislej oblasti FAP. Jedna oblasť FAP (typicky

oblasť nižších adries obsahujúca aj vektory prerušení) je vyhradená pre jadro operačného systému.

Zvyšok pamäte je vyhradený procesom. Rozoznávame

Stránkovanie

Stránkovanie rieši problémy fragmentácie. Program už nezaberá jednoliaty celok v pamäti ale je

rozdelený na malé stránky (o veľkosti niekoľko KB). Tabuľka stránok procesu potom určuje

pridelenie (mapovanie) stránok. Logická adresa (napríklad premennej) je určená číslom stránky (v

tabuľke stránok procesu) a ofsetom na danej stránke.

Segmentácia

Segmentácia je voči procesom menej násilná než stránkovanie. Segmenty môžu mať rôzne veľkosti,

a teda pre programátora prijateľnejšie uchovávajú navzájom súvisiace bloky programu a dát.

Segmentované stránkovanie

Segmentované stránkovanie kombinuje výhody segmentácie i stránkovania. Prvotná fáza prevodu

logickej adresy procesu na fyzickú adresu je segmentácia, kedy dostaneme lineárnu adresu. Až

priestor lineárnych adries je rozdelený na stránky, ktorým sú pridelené rámce.

Virtuálna pamäť – odkladanie stránok na disk

Najpoužívanejšou metódou rozšírenia operačnej pamäte na zdanlivo (resp. virtuálne) väčšiu je

stránkovanie na žiadosť, celým názvom operačným systémom spravované odkladanie stránok

procesov v prípade ich výpadku, t.j. iného umiestnenia, než vo fyzických čipoch primárnej (operačnej)

pamäte.

Ochrana a zabezpečenie

Ochrana

Ochrana musí procesu dovoliť prístup iba k zdrojom, ku ktorým má povolenie

(právo) pristupovať. Abstraktne hovoríme o doméne ochrany – množine

zdrojov (CPU, pamäť, súbory, I/O) a množine povolených operácií so zdrojmi.

Patrí sem napríklad implementácia súborovej ochrany (Windows NT, Unix,

Novell NetWare), pričom platí, že čím väčšia možnosť napadnutia, tým

prepracovanejšia musí byť ochrana.

Zabezpečenie

Kým ochrana je vnútorný mechanizmus operačného systému, zabezpečenie je

ochranou na vyššej úrovni (proti neoprávnenému čítaniu (krádeži) dát,

neoprávnenému vymazaniu ale aj modifikácii údajov) – môže ísť o obranu proti

zlomyseľným prístupom, chybným programom a chybujúcim používateľom.

Zabezpečenie zahŕňa vytvorenie fyzickej bariéry pre prístup ku konzole.

Autentifikácia prebieha rôznymi spôsobmi

fyzickým kontaktom (odtlačok prstu, hlasová identifikácia, snímkovanie sietnice

(očného pozadia), overenie podpisu, kontrola DNA),

predmetom (kľúč, identifikačná karta, dotykové čipy),

heslom.

Alebo (samozrejme) kombináciou použitých metód.

Narušenie bezpečnosti

Narušeniu zabezpečenosti sa dá len ťažko (z dlhodobého hľadiska) vyhnúť. K prezradeniu údajov

napríklad môže dôjsť po ukradnutí pevného disku. (Tu je riešením kódovanie citlivých údajov na

disku. Krádežou síce o dáta prídeme, nedôjde však k ich prezradeniu.

Rozoznávame niekoľko druhov programov slúžiacich na narušenie bezpečnosti:

Trójske kone sú programy sľubujúce urobiť niečo, ale robia niečo iné. Zadné dvierka. Má ich takmer

každý systém (vojenské i bankové) nevyvíjaný tímom spolupracovníkov z rôznych firiem, ktorí si

programy navzájom kontrolujú. Ako zadné dvierka je označované tajné naprogramovanie postupu

umožňujúceho nedovolené pripojenie sa autora programu do systému, na ktorom nemá konto.

Zadné dvierka si v prvých rokoch ponechali napríklad vývojári Unixu... 

Červ (worm). Červ je samostatný program, ktorý sa intenzívne množí až zahltí sieť. Často ide

o nevydarený vírus.

Antivírus je program, ktorý sa chová presne ako vírus, avšak neničí všetky programy, len odstraňuje

jeden konkrétny vírus z napadnutých programov (ak ho nájde).

Softvérová bomba je program, ktorý prenikne do operačného systému a po určitom čase (časovaná

bomba) prejaví svoju deštrukčnú činnosť..

Špión je autonómny softvérový mobilný agent. Je to program podobný vírusu. Dostane sa (aj

relatívne komplikovanými bariérami) do systému, aby odtiaľ získal nejaké informácie.

Trpaslík je „neškodný“ vírus, ktorý naopak môže používateľovi dokonca pomáhať. Existuje trpaslík

zhusťujúci dáta ukladané na disk, takže sa ich tam vojde omnoho viac...

Škriatok je menej príjemný než trpaslík. Používateľa obťažuje napríklad vypisovaním „Prosím stlačte

Enter” (a na stlačenie klávesu naozaj čaká) alebo je to mucha lezúca po obrazovke alebo ide o autíčko

čas od času s hrmotom prefrčiace po obrazovke počítača...

Document Outline


Automaticky vygenerovaný textový náhľad. Pre plné formátovanie si stiahnite súbor.