Ekonomická informatika
Transkript
Mendelova zemědělská a lesnická univerzita v Brně Provozně ekonomická fakulta Ekonomická informatika Vypracované okruhy ke SBZ Brno 2004 2 Obsah Okruh 1 – Teoretické základy informatiky Obecná teorie systémů. Systémová věda a systémový přístup. Formalizace pojmu systém. 5 Okruh 2 – Teoretické základy informatiky Kybernetické pojmy, kybernetická abstrakce. Kybernetické metody. Modelování, simulace. 6 Okruh 3 – Teoretické základy informatiky Teorie informace. Formalizace v teorii informace. Informatika, předmět zkoumání. Signál, komunikace, komunikační řetěz. Kódování informací. 8 Okruh 4 – Výpočetní technika Základní konstrukční celky počítače a přídavných zařízení. Princip programového řízení počítače. Hlavní kvantitativní charakteristiky osobních počítačů běžně používaných v praxi. 11 Okruh 5 – Operační systémy Operační systémy. Architektura, klasifikace. Operační systémy třídy UNIX, MS Windows, MS-DOS; operační prostředí, druhy příkazů. 16 Okruh 6 – Algoritmizace Algoritmus, jeho vlastnosti a způsoby vyjádření. Odhad časové a prostorové složitosti algoritmů. Algoritmizace základních typů úloh (zpracování řady dat, souboru dat; algoritmizace řazení, rozvojů nekonečných řad; algoritmizace dialogu uživatele s počítačem). 20 Okruh 7 – Zpracování textů na počítači Typografie; typografické pojmy, logická a fyzická stavba dokumentu, realizace v konkrétním systému. 22 Okruh 8 – Aplikační programové vybavení Zpracování textu nástrojem MS Word; optimální postup pořizování textu, korekturní a editorské nástroje, formátování logickým značkováním – styly. 24 Okruh 9 – Aplikační programové vybavení Tabulkové procesory; manipulace s tabulkou, typy dat, formáty buněk, hledání řešení – výpočty iterací, scénáře, pohledy podmíněné výrazy, matematické logické a další funkce. 26 Okruh 10 – Počítačové sítě Počítačové sítě; architektura a klasifikace. Principy datové komunikace; komunikační model, přenosové technologie, síťové protokoly. Technické komponenty počítačových sítí. 29 Okruh 11 – Počítačové sítě Protokolová architektura TCP/IP; vrstvový model, komunikace mezi vrstvami, IP adresace a směrování. Bezpečnost v síti. 34 Okruh 12 – Počítačové sítě Principy a implementace elektronické pošty. Podpora vzdálených přístupů do mailboxů. 38 Okruh 13 – Databázové systémy Systémy řízení báze dat; logické modely dat. Dotazovací jazyky; DDL – definice datových struktur; DML – manipulace s daty, sdílený přístup, transakce. 42 Okruh 14 – Databázové systémy Návrh databáze; entitně-relační model, normální tvary, integrita databáze. 45 Okruh 15 – Databázové systémy Vývoj databázových aplikací; prostředky pro tvorbu aplikací. Architektura klient–server, ODBC. 47 3 4 Okruh 1 – Teoretické základy informatiky Obecná teorie systémů. Systémová věda a systémový přístup. Formalizace pojmu systém. Obecná teorie systémů Jedná se o teorii, která má do značné míry formální, logicko-matematickou a metodologickou povahu. Předmětem teorie systémů je studium abstraktních systémů, které mají význam pro analýzu systémových vlastností libovolné objektivní reality. Analýza systémových vlastností se zaměřuje jednak na vyšetřování statických strukturních vlastností, na vyšetřování dynamických vlastností (chování) a složitých kauzálních vztahů. Jádrem teorie systémů je soubor abstraktních objektů, které se nazývají obecné systémy. Jsou to formální logické konstrukce, které neobsahují žádné věcné interpretace. Užívají se jako stavebnicové prvky, z nichž se sestavují modely reálných objektů nebo koncepčních konstrukcí tak, že se obecné systémy vhodně přizpůsobují, spojují a interpretují. Obecné systémy jsou tedy poznávací nástroje, které nemají samostatný význam, ale musí být vždy vhodně interpretovány na zkoumaném objektu. Systém je komplex prvků nacházejících se ve vzájemné interakci. Systém, který je vytvářen nebo používán jako představitel objektu, často nazýváme model. Obecně je model totiž považován za jistý vztah mezi dvěma systémy, z nichž jeden se nazývá systémem modelovaným (originál) a druhý systémem modelujícím. U systémů zkoumáme dvě základní vlastnosti: strukturu a chování. Strukturou systému nazýváme množinu prvků systému a jejich vzájemný vazeb. Chováním rozumíme způsob reagování systému na vstupní podněty. Okolí systému je účelově definovaná množina prvků, které nepatří do systému, ale vykazují k němu nějaké vazby, obvykle přes hraniční prvky. Hraniční prvek je takový prvek systému, který má alespoň jednu vazbu s prvkem, který do systému nepatří. Podle vztahu systému k okolí rozdělujeme systémy na tři základní typy: 1. uzavřený – vztah k okolí není definován (perpetum mobile), 2. relativně uzavřený – jsou přesně definovány jak vztahy, kterými je systém ovlivňován z okolí, tak ty, kterými do okolí vystupuje, 3. otevřený – jsou uvažovány všechny možné účinky okolí na systém a naopak (v praxi nereálné). Vstupem systému míníme množinu vazeb a proměnných, jejichž prostřednictvím je systém ovlivňován, resp. jejichž prostřednictvím působí okolí na systém. Výstupem systému rozumíme množinu vazeb a proměnných, jejichž prostřednictvím systém ovlivňuje okolí. Z hlediska zdůraznění některých vlastností systému rozlišujeme složitý systém – systém obsahující velký počet vazeb, velký systém – systém obsahující mnoho prvků, špatně průhledný systém – obsahuje mnoho prvků i vazeb, černá skříňka – systém, jehož strukturu neznáme, nebo ji z různých důvodů zanedbáváme. Organizací systému označujeme způsob místního, časového a funkčního uspořádání struktury systému. Řízením systému rozumíme vymezování cíle systému a působení na systém s cílem dosáhnout jeho požadované funkce. Systémová věda, systémový přístup Systémová věda je vědní obor, zabývající se systémy. Systémovou vědu dělíme na systémové teorie (teorie systémů, kybernetika) a systémové aplikace (systémová analýza, systémové inženýrství, operační analýza, systémové programování apod.). Systémový přístup je takový způsob myšlení, řešení nějakého problému či způsob jednání, který se vyznačuje komplexním pohledem na problém či jev, a to jak z hlediska vnitřních, tak i vnějších souvislostí. Formalizace pojmu systém Ludwig von Bertalanffy, zakladatel obecné teorie systémů – typická snaha o co největší obecnost používaných pojmů, nevyžaduje přesnou formulaci pojmů, hlavním přínosem je, že systémy s vyšší úrovní složitosti nelze mechanicky redukovat na systémy jednodušší. M. D. Mesarovič, R. E. Kalman aj. – typická snaha o přesnou matematickou formalizaci definování systému. Ukazuje se ale, že v určitých případech je buď příliš obecný nebo při větší podrobnosti nezvládnutelný, pro praxi nepoužitelný. 5 Okruh 2 – Teoretické základy informatiky Kybernetické pojmy, kybernetická abstrakce. Kybernetické metody. Modelování, simulace. Kybernetické pojmy, kybernetická abstrakce Předmětem kybernetiky je zkoumání procesů řízení a zpracování informací v technických systémech i živých organismech a kolektivech skládajících se z živých organismů a technických systémů (Norbert Wiener). Dělení kybernetiky • teoretická – je založena na principu kybernetické abstrakce, pracuje s abstraktními kybernetickými modely (kybernetické systémy), • technická – zabývá se především konstrukcí a způsobem ovládání automatických výpočetních systémů, slouží k realizaci výsledků získaných převážně metodami teoretické kybernetiky, • kybernetické aplikace – cílem je využití výsledků teoretické a technické kybernetiky v oblastech, v nichž se studují objekty a struktury značné složitosti (bionika, robotika, umělá inteligence apod.). Teorie, které tvoří základ kybernetiky jsou teorie informace, informatika, teorie automatů, teorie řízení a teorie algoritmů. Jednou z charakteristických vlastností kybernetiky je vysoký stupeň abstrakce. Jedná se o to, že kybernetické teorie musí být zcela obecné, nezávislé na materiálních stránkách zkoumaných objektů a fyzikální podstatě v nich probíhajících procesů. Uskutečnit proces abstrakce znamená vytvořit abstraktní systémový model. Při procesu abstrakce nás zajímají dvě základní otázky: • Co je podstatné pro zkoumání? • Od čeho je možno se abstrahovat? Základním pojmem kybernetiky je pojem změna. V podstatě vyjadřuje to, že se dva objekty (systémy) navzájem znatelně odlišují, nebo že se jeden systém změnil v čase (struktura, chování). Změna znamená přechod mezi dvěma stavy. Výchozí se nazývá vzor, konečný obraz. Příčina, která změnu způsobila, se nazývá operátor. Působí-li operátor na množinu objektů, vyvolá řadu přechodů, která se nazývá transformace (relace). Podle typu relace rozeznáváme několik druhů transformací – jednoznačná, víceznačná, jednojednoznačná, uzavřená, konečná. Varieta – celkový počet vzájemně rozlišitelných prvků množiny. Má-li být přesně definována, musí být specifikován i pozorovatel a rozlišovací schopnosti. Pokud je varieta rovna počtu prvků množiny, nazývá se úplnou. Omezená varieta – z úplné variety jsou na základě platnosti nějaké podmínky některé kombinace vyloučeny. Stabilita – při studiu objektů je důležité nejen jejich chování, ale i oblast jejich aktivity, tj. za jakých podmínek jsou schopny podržet si určité vlastnosti. Regulace – udržování určité veličiny na hodnotě přibližně stálé nebo se měnící podle předem daného programu. Je to určité ovlivňování procesů v systému tak, aby se umožnil aktivní a cílový způsob chování systému. Řízení – je účelné a uvědomělé působení řídicího subjektu na řízený objekt snažící se vyvolat takové chování, stav nebo uspořádání řízeného objektu, které směřuje k dosažení předem stanovených cílů, sledovaných řídicím subjektem. Kybernetické metody Základní charakteristikou kybernetických metod je studium celku a jeho obecných rysů, projeví svoji účinnost především při studiu složitých systémů. Metoda (obecného) modelování – nejprve předpokládáme, že byl vytvořen model. Experimenty s modelem získáme různé varianty řešení. Z nich vybereme optimální řešení. Pokud se nedaří, vytvoří se nový model. Metoda blokových (grafických) schémat – vychází z grafického znázornění systému. Základním prvkem studia zde jsou komponenty systému, jejich vlastnosti a vzájemné vazby. Obvykle se nestuduje dynamika, tj. časové závislosti na systém působících veličin. Tato metodika je dnes jednou z nejpoužívanějších, například při analýze a projektování informačních systémů. Výhodou je přehlednost a srozumitelnost. Metoda černé skříňky (black box) – tato metoda se obvykle používá jako první v počátcích studia chování objektu. Využívá se tehdy, jsou-li známy pouze vstupní podněty systému a reakce systému na ně. Řešení problému černé skříňky není většinou jednoznačné a neexistuje univerzální strategie jak ji použít, aby dávala záruku absolutní úspěšnosti. 6 Modelování, simulace Model je objekt, který vždy chápeme v souvislosti s jiným objektem, který je vzhledem k modelu označován jako originál. Modelování je výzkumná metoda, jejíž podstata spočívá v tom, že zkoumaný objekt nahradíme jeho modelem a s ním děláme experimenty s cílem získat informace o zkoumaném objektu. Poznatky získané modelováním jsou vždy interpretovány na zkoumané realitě. Tím nabývají charakteru poznatků o studovaném originále. Podle zobrazovacích vlastností originálu jsou modely děleny na substanciální, strukturní, funkční a smíšené. Podle povahy zobrazující funkce je dělíme na materiální a ideální, schematické a symbolické, stochastické a deterministické. Simulace je výzkumná metoda, jejíž podstata spočívá v tom, že zkoumaný dynamický systém nahradíme jeho simulátorem a s ním provádíme pokusy s cílem získat informaci o původním zkoumaném systému (O. J. Dahl). Simulace je tedy experimentální způsob analýzy reálného objektu pomocí simulačního modelu (simulátoru). Simulace je totéž, co pokusy se simulátorem. Často se informace o zkoumaném objektu shrnou do nového modelu objektu. Důležitý požadavek, který musí simulátor splňovat je to, že musí být v jistém smyslu odlišný od simulovaného systému. 7 Okruh 3 – Teoretické základy informatiky Teorie informace. Formalizace v teorii informace. Informatika, předmět zkoumání. Signál, komunikace, komunikační řetěz. Kódování informací. Teorie informace Teorie informace tvoří jednu ze základních složek kybernetiky. Svým obsahem částečně koresponduje s teorií pravděpodobností a statistikou. Dle Norberta Wienera je informace název pro obsah toho, co se vymění s vnějším světem, když se mu přizpůsobujeme a působíme na něj svým přizpůsobováním. Při studiu informace se uplatňuje mnoho různých přístupů, přičemž při každém z nich se k informaci přistupuje z jiného hlediska. V kybernetických systémech jsou rozhodující informační procesy, tj. procesy přijímání, uchovávání, zpracování a vydání informace. Nejdůležitější otázky v teorii informace jsou: • zavedení míry množství informace, • kódování a dekódování zpráv, • přenos zpráv (nositelem informace je signál). Jestliže se teorie informace zabývá informacemi z hlediska kvantitativního, pak vědní obor informatika se zabývá hlediskem kvalitativním. Formalizace v teorii informace Podle Clauda Shannona je informace míra množství neurčitosti nebo nejistoty o nějakém náhodném ději, odstraněná realizací tohoto děje. Je zřejmé, že každá realizace náhodně probíhajícího děje odstraňuje část nejistoty o tomto ději a poskytuje o něm určité množství znalostí. Z formalizačního hlediska je tedy nutné postihnout míru neurčitosti nějakou kvantifikovanou veličinou. Shannon tuto veličinu zavedl a pojmenoval ji entropie. Entropie tak vyjadřuje míru nejistoty obsažené v nějakém náhodném ději. Předpokládejme tedy, že máme konečný počet vzájemně se vylučujících jevů, jejichž pravděpodobnosti výskytu jsou p1 (x), . . . , pn (x). Pro číselné ocenění stupně neurčitosti určitého jevu je třeba zvolit nějakou funkci, která vyhovuje následujícím podmínkám: • stupeň neurčitosti závisí na pravděpodobnosti výsledku realizace, má-li jev x n možných výsledků, je neurčitost tohoto jevu funkcí n, • je-li n = 1, jedná se o jev jistý, • buď X, Y dva jevy, které se realizují současně, míra neurčitosti složeného jevu je dána součtem neurčitostí jevů X a Y, • buďte X, Y dva jevy a nechť platí n1 > n2 , pak platí f (n1 ) > f (n2 ). Jediným typem funkcí, splňující tyto podmínky, jsou logaritmy. Buď X množina možných výsledků jevu X, X = {x1 , x2 , . . . , xn } a {p(x1 ), p(x2 ), . . . , p(xn )} množinou pravdpodobností jejich výskytu. Entropií náhodného jevu X pak nazýváme číslo X X H(x) = − p(x) · log2 (p(x)) = p(x) · I(x), x∈X x∈X kde I(x) je vlastní informace obsažená ve výsledku x. Příklad: Máme 2 urny o 10 koulích. V první je 5 bílých, 3 červené a 2 zelené. V druhé je 6 bílých, 2 červené a 2 zelené. Z každé urny vytáhneme jednu kouli. O kterém z těchto pokusů lze říci, že je méně neurčitý? H(U1 ) = −0,5 · log2 0,5 − 0,3 · log2 0,3 − 0,2 · log2 0,2 = 1,485 H(U2 ) = −0,6 · log2 0,6 − 0,2 · log2 0,2 − 0,2 · log2 0,2 = 1,37 Pokus je tím méně neurčitý, čím menší je jeho entropie. Příklad: Jaká je hodnota vlastní informace obsažené ve větě Babička jde do města? Počet osob, které přicházejí v úvahu, je 50, počet činností, které mohou konat, je 10, počet míst, kde mohou činnost konat, je 20. I(x) = − log2 (1/50 · 1/10 · 1/20) = log2 (50 · 10 · 20) = 13,288 Pozn.: Vlastní informace (částečná informace) se týká jedné konkrétní realizace, zatímco entropie (úplná informace) zahrnuje všechny možné realizace s příslušnou pravděpodobností výskytu. 8 Informatika, předmět zkoumání Informatika je vědní obor zabývající se informacemi z hlediska kvalitativního, tj. získáváním, zpracováním a hodnocením informací ve vztahu k příjemci. Informatika dnes představuje široký a progresivní obor. Ve vyspělých zemích jsou informace stejně ceněným hospodářským zdrojem jako jsou kapitál, půda, suroviny a pracovní síla. V oblasti získávání, zpracování a využití informací pracuje více než polovina zaměstnaného obyvatelstva těchto zemí. Studium tohoto oboru tedy nabízí nejen zajímavý program, ale i dobrou perspektivu uplatnění v praxi. Signál, komunikace, komunikační řetěz Základní podmínkou využívání informací je jejich výměna mezi příjemci a odesílateli. Fyzikální veličinu, která je nositelem informace, nazýváme signál. Signály jsou tedy stavy nebo procesy fyzikálního média. Matematická představa o signálech lze získat pomocí funkce s = f (x, y, z, t), kde s je libovolný signál vyjádřený nezávislými souřadnicemi místa (x, y, z) a časovým parametrem t. Pro realizaci přenosu je důležité rozdělení signálů, podle parametru t, na: • diskrétní – příslušný parametr může nabývat konečně mnoha diskrétních hodnot (telegrafní zprávy), • spojité – telefonní hovory, • statické – nezávisí vůbec na čase (kniha, mapa), • dynamické – jsou funkcemi času (televizní přenos). Je-li signál nositelem informace, pak musí obsahovat jednoznačně reprodukovatelné údaje. Platí, že signál obsahuje informace vždy jen pro vybraného příjemce. Informace pak jsou stavy upořádání signálů, kterými jsou přenášeny. Uspořádání dává signálu jeho věcný obsah – informační hodnotu. Informaci (v teorii řízení) definujeme jako údaj či zprávu o stavu systému, resp. průběhu procesu řízení v minulosti, přítomnosti nebo budoucnosti, který lze reprodukovat ze signálů a který podněcuje příjemce informace k určitému chování. Tvorbou, přenosem a výměnou informace mezi dvěma systémy se mezi nimi vytváří vazba, kterou nazýváme informační. Jedná se o vazbu, která umožňuje tzv,k̇omunikaci. Komunikací se tedy rozumí výměna informací mezi systémy, podsystémy a prvky systémů, které mohou informace vytvářet, přenášet, přijímat, zpracovávat a uchovávat. Informační vazba mezi lidmi nebo mezi člověkem a reálným objektem na zpracování informací vytváří jazykový komunikační řetěz. V mezilidské komunikaci se používají tzv. přirozené jazyky, pro formalizaci sdělené informace jsou nejvhodnější formální jazyky (umělé jazyky, vytvořené pro speciální druhy komunikace). Kódování informací Z hlediska optimalizace přenosu je vhodné, aby každý přenášený signál obsahoval co největší množství informace. Proto a také pro omezení vlivu šumů při přenosu zpráv využíváme princip kódování informací. Vzájemné přiřazování znaků dvou abeced nazýváme kódování a inverzní postup dekódování. Předpis, který toto přiřazování umožňuje, nazýváme kód. Z entropického hlediska je hospodárný takový kód, jehož každý kódový znak má maximální entropii, tj. všechny znaky mají ve zprávě stejně velkou četnost výskytu. Je-li H entropie jazyka a Hmax je maximální entropie při použití téže abecedy (všechny znaky abecedy jsou stejně možné a jejich vzájemný výskyt není závislý → v případě binárního kódování je maximální entropie H rovna 1), pak číslo R = 1 − Hmax nazýváme redundancí (nadbytečností) daného jazyka. Baudotovo dvojkové stejnoměrné kódování – nechť zdroj informace Q produkuje 4 nezávislé znaky A, B, C, D. Tyto znaky vyjádříme v binární soustavě. Počet bitů potřebných k vyjádření zjistíme tak, že vypočítáme entropii H(Q) = −(1/4 · log2 1/4 + 1/4 · log2 1/4 + 1/4 · log2 1/4 + 1/4 · log2 1/4) = 2 b/znak. To nám říká, že pro zakódování abecedy Q je optimální využít pro každý znak 2 bity. Kontrolu provedeme tím, že vypočítáme množství informace přenášené každým symbolem. Vezmeme dva kódy: • A (0), B (10), C (110), D (111) – libovolně zvolené kódování, • A (00), B (01), C (10), D (11) – Baudotovo kódování. Entropie pro kód 1 je H(Q) = −(3/9 · log2 3/9 + 6/9 · log2 6/9) = 0,918. Entropie pro kód 2 je H(Q) = −(4/8 · log2 4/8 + 4/8 · log2 4/8) = 1. Protože 1 je větší než 0,918, je kód 2 efektivnější, každý symbol přenáší více bitů. Redundance kódu 1 je 1 − 0,918 = 0,082 = 8,2 %. Shannon-Fanovo nestejnoměrné kódování – princip je založen na četnosti výskytu jednotlivých znaků abecedy. Znaky zdroje Q určené k zakódování zapíšeme do tabulky v pořadí klesajících pravděpodobností 9 výskytu. Tyto pravděpodobnosti postupně sčítáme směrem zdola nahoru. Podle získaných dílčích součtů dělíme množinu všech znaků tak, aby úhrnná pravděpodobnost výskytu znaků v každé části byla přibližně stejná, tj. v prvním kroku 0,5. Rozklad množiny znaků určuje hodnoty prvního kódového symbolu. Při stanovení druhého resp. dalších znaků postupujeme zcela obdobně s využitím vytvořených podmnožin. Příklad: Zakódujte nestejnoměrným kódem typického českého hrdinu Boodooleenecka. pravděpodobnost výsledný písmeno kódování výskytu kód O 4/13 0 0 00 E 3/13 1 01 B 1/13 1 0 0 100 D 1/13 1 0 1010 L 1/13 1 1011 N 1/13 1 0 110 C 1/13 1 0 1110 K 1/13 1 1111 Příklad: Které z uvedených kódování je vhodnější pro zakódování slova Boodooleeneck? Baudotovo – ve slově Boodooleeneck je 8 různých znaků, k jejich zobrazení je potřeba log2 8 = 3 bity. Zvolíme tedy například takový kód: B (000), O (001), D (010), L (011), E (100), N (101), C (110), K (111). Na 3 bitech lze zobrazit maximálně 23 = 8 hodnot, v našem případě je všech 8 možností využito, nevzniká žádná redundance. H(Q) = −(12/24 · log1 2/24 + 12/24 · log2 12/24) = 1. Shannon-Fanovo – ve vypočteném kódu se vyskytuje 10 nul a 16 jedniček. Spočítáme entropii: H(Q) = −(10/26 · log2 10/26 + 16/26 · log2 16/26) = 0,53 + 0,43 = 0,96. R = 1 − 0,96 = 0,04 = 4 %. Efektivnější je ten kód, který má větší entropii (menší redundanci). V našem případě je to kód Baudotův. 10 Okruh 4 – Výpočetní technika Základní konstrukční celky počítače a přídavných zařízení. Princip programového řízení počítače. Hlavní kvantitativní charakteristiky osobních počítačů běžně používaných v praxi. Základní konstrukční celky počítače Obr. 1: Základní Von Neumannovo schéma počítače Von Neumannova koncepce se od starší Harvardské koncepce zásadně liší tím, že obsahuje jednu paměť pro data i program. Harvardská koncepce počítače striktně oddělovala paměť dat a paměť programu, dodnes se tato koncepce hojně používá zejména pro jednodušší jednoúčelová zařízení. Výhoda je v tom, že paměť programu je realizována pamětí typu ROM, je tedy napěťově nezávislá a program zůstává zachován i po odpojení od zdroje napájení. Příkladem z dnešní doby může být mobilní telefon, kapesní počítač, cvikač jízdenek v šalině, video, mixér atp. Paměť dat je realizována zvlášť, nečastěji pamětí typu RAM. PC jsou typickým příkladem zařízení pracujícího dle Von Neumannovy koncepce. Při zapnutí PC je operační paměť úplně prázdná a při startu systému se teprve začíná plnit kódem programů, který je uložen v napěťově nezávislé sekundární paměti (nejčastěji na pevném disku). Obr. 2: Fyzické vyobrazení základní desky 11 Obr. 3: Funkční vyobrazení základní desky Základní deska – mainboard, tvoří základ celého počítače. Pro svoji funkčnost musí být ještě osazena procesorem a pamětí. Řada uživatelů ocení i možnost připojení grafické karty (slot AGP) a dalších přídavných zařízení jako jsou disky a disketové mechaniky, pro základní funkci počítače však nejsou nutnou podmínkou. Procesor (CPU) a paměť (RAM) jsou připojeny na sběrnici FSB (Front Side Bus), aby bylo zamezeno neproduktivnímu čekání na data, využívají se vyrovnávací paměti (Cache). Pro připojení dalších interních zařízení slouží sběrnice PCI, ISA a AGP. Rozhraním těchto sběrnic jsou sloty, do kterých se zasouvají rozšiřující karty. Parametry těchto sběrnic jsou dány historickým vývojem. Základní deska dále obsahuje diskový řadič, který obsahuje dvě IDE sběrnice umožňuje připojení na každou sběrnici dvě zařízení (HDD, CD, DVD, ZIP, . . . ). Na sběrnici FDD se připojují diskové mechaniky. USB je univerzální sériová sběrnice, která nám umožňuje připojovat externí zařízení, jako jsou tiskárny, skenery, digitální fotoaparáty atp. Obr. 4: Princip programového řízení počítače CPU – integrovaný obvod, který tvoří „srdceÿ a „mozekÿ celého počítače. Skládá se z registrů procesorů (extrémně rychlé paměťové buňky), řadiče, ALU. Podle typu zpracování instrukcí jednotkou ALU se dělí procesory na CISC a RISC. CISC jsou procesory, které obsahují obrovské množství instrukcí, každá 12 instrukce musí být před svým provedením rozdělena na řadu mikroinstrukcí, které teprve umí ALU zpracovat. Typickým příkladem je PC a třeba MMX instrukce, zatímco výkonovým trendem je architektura RISC. RISC procesory nepoužívají mikroprogramové řízení, mají podstatně menší sadu instrukcí, které jsou však implementovány přímo pomocí logických obvodů a tedy prováděny podstatně rychleji. CPU je řízen časovými pulsy, frekvence procesoru je dána násobkem frekvence FSB a značně se tedy podílí na jeho výkonu. Frekvence procesoru se dnes uvádí v GHz. Pokud však chceme srovnávat výkon různých výpočetních systémů je nutné zvolit srovnatelnou jednotku a tou je MIPS – vyjadřuje počet miliónů instrukcí, které se provedou za 1 sekundu. Paměť – memory, zařízení, které slouží k ukládání programů a dat, s nimiž počítač pracuje. Paměti v PC lze rozdělit dle jejich rychlosti a kapacity. S rostoucí rychlostí roste cena těchto pamětí a současně klesá jejich kapacita. Dělí se na: • paměť mikroinstrukcí – součást procesoru, obsahuje informace potřebné k rozkladu instrukcí strojového kódu na mikroinstrukce procesoru, které umí procesor provádět, • registry – paměťová místa na čipu procesoru, která jsou používána pro krátkodobé uchování právě zpracovávaných informací, • cache L1, L2, L3 – umístěny na procesoru nebo na základní desce, vyrovnávací paměti, obsahují často používané informace, urychlují prácí s pomalejší pamětí RAM, • RAM – hlavní (operační) paměť, každá spuštěná aplikace v ní má přiděleno místo na kód programu, data a zásobník, • disková cache – součást diskového zařízení (HDD, CD-ROM, . . . ), pomocí strategie dopředného čtení a opožděného zápisu urychluje práci s tímto zařízením, • vnější paměti – paměť napěťově nezávislá, HDD, data jsou zaznamená magneticky, • archivní paměti – k dlouhodobému uchování dat, CD-ROM, páskové jednotky. Obecně lze paměti rozdělit na paměti ROM a RWM. • ROM – paměti určené pouze ke čtení, dle použité technologie se dělí na ROM (Read Only Memory) – vyráběné průmyslově ve velkých sériích; PROM (Programmable ROM) – uživatel si ji může sám jednou naprogramovat; EPROM (Eraseable PROM) – lze naprogramovat i opakovaně, maže se pomocí UV záření; EEPROM (Electrically EPROM) – lze mazat i programovat pomocí elektrického proudu, musí se však vždy smazat celá paměť; Flash – obdoba EEPROM, navíc umožňuje blokový přístup, nemusí se tedy vždy programovat celá paměť (například dnešní BIOS na MB nebo paměť v mobilním telefonu). • RWM (Read Write Memory) – paměť umožňující čtení i zápis. Dle technologie se dělí na SRAM – statické paměti, realizovány pomocí klopných obvodů, rychlejší vybavovací doba než dynamické, ale dražší; DRAM – dynamické paměti, data uchována pomocí kondenzátoru (přítomnost/nepřítomnost náboje), paměť je nutné stále občerstvovat, aby nedošlo k vybití kondenzátoru a tak ztrátě dat – REFRESH (například RAM v PC). Dle přístupu k datům se dělí na RAM – paměť s náhodným přístupem, lze číst i zapisovat na libovolné místo; FIFO – neumožňuje adresaci, fronta, data lze číst pouze v pořadí, ve kterém byla zapsána, přečtením dat dojde k jejich destrukci; LIFO – zásobník, obdoba FIFO, jen jsou data čtena v opačném pořadí, než byla zapsána. Disková média – pevné disky jsou média pro uchování dat s vysokou kapacitou záznamu (řádově desítky až stovky GB). Jsou to nedestruktivní a napěťově nezávislá média. Uvnitř diskové jednotky se nachází několik nad sebou umístěných rotujících kotoučů (disků). Tyto disky se otáčejí po celou dobu, kdy je pevný disk připojen k napájení. Rychlost otáčení bývá u IDE (Integrated Drive Electronics) disků 5 400 nebo 7 200 rpm, u SCSI serverových disků až 15 000 rpm (otáček za minutu). Díky tomuto otáčení se v okolí disků vytváří tenká vzduchová vrstva, na níž se pohybují čtecí/zapisovací hlavy. Vzdálenost hlav od disku je asi 0,3 až 0,6 mikronu. Informace na pevném disku jsou uloženy v sektorech o velikosti 512 B. Data jsou zapisována do soustředných kružnic (HDD) nebo do spirály (CD) dle typu média. Oproti paměti je nevýhodou dlouhá vybavovací doba, tedy čas, který uplyne mezi obdržením požadavku o data a jejich vybavením na sběrnici. Softwarově (fdisk) disk může být rozdělen na několik logických disků, které pak vystupují jako samostatná disková média. Kromě dat každý disk obsahuje tabulku oblastí disku MBR, zavaděč operačního systému, tabulku lokalizující data FAT, kořenový adresář. Podle zvoleného systému souborů a celkové kapacitě disku je dána velikost clusteru. Cluster je nejmenší alokovatelná jednotka v rámci systému souborů (FS). Grafické karty – zařízení, která zabezpečují výstup dat z počítače na obrazovku monitoru. Při práci zapisuje procesor počítače obrazová data do videopaměti. Takto zapsaná data jsou potom čtena procesorem videokarty, který na jejich základě vytváří digitální obraz. Digitální obraz je posílán na vstup DAC (Digital Analog Convertor) převodníku, který z něj vytváří analogový obraz nutný pro CRT monitory, řízené 13 spojitě (analogově) měnící se hodnotou signálů tří základních barev (Red – červená, Green – zelená, Blue – modrá). Moderní LCD displeje mají přímo digitální vstup, tzv. DVI rozhraní. Dnešní grafické karty již obsahují také hardwarovou podporu 3D aplikací, tzv. 3D akcelerátor. Charakteristickým znakem grafické karty je velikost paměti (dnes 32–256 MB), typ výkon 3D akcelerátoru, sběrnice AGP (1× až 8×), ostatní doplňkové funkce jako VIVO (Video In, Video Out), TV tuner, DVI konektor. Přídavná zařízení Monitor – základní výstupní zařízení počítače, slouží k zobrazování textových i grafických informací, dle zobrazovací technologie je lze rozdělit na CRT a LCD. Charakteristické vlastnosti jsou společné a jsou to velikost obrazovky (u CRT se počítá i ta část stínítka, která je skryta za rámem monitoru, proto jsou LCD displeje s udanou stejnou úhlopříčkou větší) udávaná úhlopříčkou v palcích (dnes standard 17”) (14”, 15”, 17”, 19”, 20”, . . . ), další charakteristickou vlastností je rozlišení, které monitor umožňuje, doporučená rozlišení jsou 640×480 u 14”, 800×600 u 15”, 1024×768 u 17”, 1280×1024 u 19”. Dalším důležitým parametrem je obnovovací frekvence, vertikální frekvence udává, kolikrát za vteřinu stihne paprsek vypsat celou obrazovku, udává se v Hz, doporučené minimum je 75 Hz, optimální je 85 Hz a více. Horizontální frekvence udává, kolikrát za vteřinu nakreslí paprsek jeden řádek obrazovky, udává se v kHz. Dle technologie se monitory dělí na: • CRT – pracují na principu katodové trubice (Cathode Ray Tube – CRT). Hlavní částí každého monitoru je obrazovka, na jejímž stínítku se zobrazují jednotlivé pixely. Monitor je připojen přímo k videokartě zasílající patřičné informace, které budou na monitoru (jeho obrazovce) zobrazeny. Při práci barevné obrazovky jsou ze tří katod emitovány elektronové svazky, které jsou pomocí jednotlivých mřížek (viz obr. 5) taženy až na stínítko obrazovky. Na zadní stěně stínítka obrazovky jsou naneseny vrstvy tzv. luminoforů (látek přeměněňujících kinetickou enregii na energii světelnou). Tyto luminofory jsou ve třech základních barvách – Red (červená), Green (zelená), Blue (modrá) – pro aditivní model skládání barev RGB. Vlastní elektronové svazky jsou bezbarvé, ale po dopadu na příslušné luminofory dojde k rozsvícení bodu odpovídající barvy. Podle typu masky rozeznáváme technologie delta, inline a trinitron. Obr. 5: Řez barevnou obrazovkou • LCD – technologie TFT (Thin Film Transistor) je pouze jednou součástí trhu s plochými displeji. Každý obrazový bod (čili pixel) je aktivně ovládán jedním tranzistorem. Aby vznikl obraz, potřebujeme dvě složky – světlo a barvu. Světlo je zajišťováno podsvětlujícími katodami, které jsou u těchto displejů velice jasné. Primárně jde o světlo bílé a je na LCD (Liquid Crystal Display) technologii, aby vyprodukovala výslednou barvu. Pro každou barevnou složku každého pixelu existuje jeden tranzistor ovládající tekuté krystaly. Tekuté krystaly jsou materiály, které pod vlivem elektrického napětí mění svoji molekulární strukturu a díky tomu určují množství procházejícího světla. Každý obrazový bod je ohraničen dvěma polarizačními filtry, barevným filtrem (pro červenou, zelenou či modrou) a dvěma vyrovnávacími vrstvami, vše je vymezeno tenkými skleněnými panely. Tranzistor náležící k obrazovému bodu kontroluje napětí, které prochází vyrovnávacími vrstvami a elektrické pole pak způsobí změnu struktury tekutého krystalu a ovlivní natočení jeho částic. Klávesnice – keyboard, slouží ke vkládání dat od uživatele. Vstupem je stisknutá klávesa, výstupem je scan kód této klávesy. Tuto funkci zajišťuje mikroprocesor 8048, který je součástí klávesnice. obsahuje 101 (US standard) nebo 102 (European standard) kláves. Tyto klávesy lze rozdělit do 4 bloků: alfanumerická, funkční klávesy (F1 až F12), kurzorové a řídicí klávesy, numerická. Některé klávesnice obsahují ještě multimediální tlačítka na ovládání hlasitosti, obsluhu přehrávače hudby a další rozšiřující tlačítka na vysunutí nabídky Start, vypnutí počítače nebo obsluhu dalšího SW, jako je internetový prohlížeč atp. Myš – mouse, zařízení, které umožňuje přenášet pohyb ruky po vodorovné podložce na obrazovku počítače. Starší myši pracují tak, že ve své spodní části obsahují kuličku, která se při pohybu po podložce otáčí a toto otáčení je přenášeno na dva otočné válečky (jeden pro horizontální a jeden pro vertikální směr). Podle jejich otáčení jsou vysílány informace o pohybu myši do počítače, které způsobují patřičný pohyb kurzoru myši 14 po obrazovce. V moderních optických myších je umístěna jakási malá kamera, rychlost jejího snímání je velmi vysoká (několik tisíc snímků za sekundu). Při pohybu myši se obraz posune. K vyhodnocení posunu se v myši nalézá relativně výkonný procesor. Aby kamerka něco zachytila, musí být plocha viditelná, tedy musí ji něco osvětlovat. K osvětlení plochy slouží jedna malá svítivá dioda (LED), jejíž světlo je namířeno pomocí hranolu/zrcátka na podložku. CD-ROM/-R/-RW – na rozdíl od dříve uvedených diskových zařízení (pevné disky apod.) nejsou data ukládána do soustředných kružnic, ale do jedné dlouhé spirály podobně jako na gramofonové desce. Spirála začíná u středu média a rozvíjí se postupně až k jeho okraji. Rychlost zápisu/přepisu/čtení se uvádí v násobku rychlosti čtení audio CD (150 kB/s). Rychlost zápisu a čtení se dnes pohybuje na padesátinásobku původní rychlosti. Kapacita CD disku se pohybuje kolem 700 MB, což odpovídá 80 minutám audio záznamu. Pro čtení i zápis se používá laserová hlava. DVD-ROM/±R/±RW/-RAM – principiálně stejné jako CD, médium je fyzicky stejně velké, jen má větší hustotu záznamu, základní kapacita je 4,7 GB. Používá se však i dvouvrstvý záznam (2×4,7 GB) a případně dvoustranný záznam (2 × 2 × 4,7 = 18,8 GB). Původní záměr bylo vytvořit médium vhodné pro záznam filmů. Filmy jsou zaznamenávány v komprimovaném formátu MPEG2 a mohou být vybaveny i prostorovým zvukem (dolby digital 5.1), u většiny filmů je možno zvolit z několika dabingů a několika desítek titulků v různých jazycích. U zapisovatelných médií dlouho panoval zmatek, dnes existuje několik norem označovaných DVD-R a DVD+R, obě média mají kapacitu 4,7 GB, dnešní mechaniky podporují obě normy. Situace u přepisovatelných médií je obdobná, kromě DVD-RW a DVD+RW existuje ještě standard DVD-RAM, který však není plně kompatibilní a je asi nejméně rozšířen. Rychlosti DVD mechanik jsou dány násobkem základní rychlosti 1 385 kB/s (dnes zápis 8× a čtení 16×). DVD mechaniky jsou zpětně kompatibilní s CD. Disketová mechanika – floppy disk, dnes obvykle se používá mechanika 3,5” s kapacitou diskety 1 440 kB (2 povrchy × 80 stop × 18 sektorů/stopu × 512 B/sektor), což odpovídá 1,38 MB (nikoliv 1,44 MB, jak je na obalech chybně uvedeno). Tiskárna – výstupní zařízení sloužící pro výstup údajů z počítače. Prostřednictvím tiskárny je možné data uchovaná v elektronické formě vytisknout (nejčastěji na papír). Nejčastější typy tiskáren jsou jehličkové (maticové), inkoustové a laserové. Jehličkové tiskárny jsou velice pomalé a hlučné. Jejich pořizovací cena je poměrně vysoká, zato jejich provozní náklady jsou zanedbatelné. Tisk je realizován průklepem jehliček na barvicí pásku, kvalita tisku závisí na počtu jehliček (9, 24). Inkoustové tiskárny jsou dnes asi nejrozšířenější díky své nízké pořizovací ceně. Jejich provoz je však velice drahý, náklady na jednu stránku jsou asi 10× větší než u jehličkové tiskárny. Základem této tiskové technologie je odpařování speciálního inkoustu. Inkoustové tiskárny umožňují vysoce kvalitní barevný tisk i ve fotografické kvalitě. Laserové tiskárny mají sice vysoké pořizovací náklady, ale umožňují velice kvalitní tisk za rozumnou cenu. Laserový paprsek osvětluje selenový válec, který se v místě osvětlení elektrostaticky nabije. Následně se válec popráší tonerem a otiskne na papír. Skener – zařízení sloužící k digitalizaci dvourozměrné předlohy. Snímač obrazu osvítí předlohu světlem, odražené světlo dopadá na optická čidla, která ho převádí na elektrický signál. Skenery se dělí dle typu na ruční (skenerem se pohybuje ručně po předloze), stolní (předloha stabilní, pohybuje se snímací hlava), bubnové (profesionální, předloha rotuje na bubnu a je snímána laserovým paprskem). Dle zdroje světla rozlišujeme dvě technologie skenování – CCD (zdrojem světla je zářivka, odražené světlo zachycují čidla), CIS (zdrojem světla jsou R, G, B diody, profesionální skenery používají laserové fotonásobiče). OCR (Optical Character Recognition) je technologie umožňující převádět naskenovaný text na textový soubor. Hlavní kvantitativní charakteristiky osobních počítačů běžně používaných v praxi Na celkovém výkonu počítač se podílejí zejména tyto komponenty: frekvence CPU [2,5 GHz], FSB [400 MHz], velikost [512 MB] a frekvence [400 MHz] paměti RAM, rychlost disků [80 GB, 8 MB cache, 7200 rpm], výkon grafické karty [AGP 8×, 128 MB]. Výkon celého výpočetního systému v logických operacích a výpočtech v pevné řádové čárce lze uvádět v MIPS (Million Instructions Per Second), výpočty s plovoucí řádovou čárkou jsou prováděny zejména v FPU a uvádí se v MFLOPS (Million Float Point Operations Per Second). 15 Okruh 5 – Operační systémy Operační systémy. Architektura, klasifikace. Operační systémy třídy UNIX, MS Windows, MS-DOS; operační prostředí, druhy příkazů. Základní funkce OS • zajištění přístupu SW k HW, • řízení a zpracování programů, • údržba informací na externích pamětech, • vytváří virtuální stroj – rozhraní pro komunikaci s uživatelem (textové, grafické). Obr. 6: Základní funkce operačního systému Jádro – obsluha systémových volání, přerušení a poskytování knihovních funkcí; vytváření procesů, komunikace mezi procesy, řízení procesů; obsahuje ovladače – vazba SW → HW. Řízení I/O – komunikace s okolím; jednotné rozhraní a přístup k datům; jednotný přístup k různým zařízením HDD, CD, ZIP pomocí ovladače. Řízení paměti – fyzická paměť většinou nepostačuje, zavádí se virtuální paměť; překlad virtuálních adres na fyzickou; strategie hospodaření s fyzickou pamětí. Správa systému souborů – práce se soubory; vytvoření virtuální hierarchické struktury, symbolická jména; ochrana dat před SW a HW porušením, absolutní a relativní cesty. Interpretace příkazů – shell (rozhraní mezi uživatelem a OS), interaktivní režim × dávkové zpracování (skripty); interní příkazy (alias, cd, echo, pwd, umask) – ovlivňují chování shellu; externí příkazy (cp, dir, ls) – uložení v adresáři /bin, resp. C:\dos, C:\windows\system32. Části OS • základ operačního systému – obsahuje programy pro zavedení operačního systému do operační paměti, programy pro obsluhu periferních zařízení, pro obsluhu souborů, programy pro zavedení uživatelských programů do paměti a jejich spuštění, • rozšiřující komponenty – programy na úrovni uživatelských programů, jsou dodávány výrobcem a slouží k zajištění některých důležitých funkcí, například archivace souborů, formátování. MS-DOS MS-DOS je operační systém firmy Microsoft pro 16bitové počítače. Je monoprogramní (jednoúlohový), monouživatelský, bez prostředků pro práci v reálném části, bez prostředků na ochranu dat, umí využít pouze 640 kB operační paměti, pro více paměti je potřeba speciálních ovladačů. Struktura MS-DOSu • zavaděč systému – umístěn v prvním sektoru pevného disku, po načtení do hlavní paměti zkontroluje, zda jsou na disku soubory io.sys a msdos.sys, pokud soubory nenajde, vydá chybovou hlášku, pokud najde, předá řízení io.sys, • vazební program io.sys – zajišťuje provádění I/O operací, slouží pro zajištění obsluhy dalších přídavných zařízení, • jádro systému msdos.sys – zajišťuje správu systémových prostředků počítače, tj. operační paměti, I/O zařízení a systému ovládání souborů, 16 • interpret příkazů command.com – zajišťuje komunikaci uživatele s operačním systémem, umožňuje spouštění programů, zajišťuje provádění příkazů dávkového souboru (.bat), realizuje provádění interních příkazů, • služební programy, • externí programy. Příkazy MS-DOSu – dir – vypíše obsah adresáře, copy – kopírování a spojování, del, erase – ruší (maže) soubory, type – vypíše obsah souboru, ren – přejmenuje soubory, print – tisk souboru, move – přesunuje soubory mezi adresáři, cd, chdir – pro práci s adresáři, mk, mkdir – vytvoří adresář, rd, rmdir – ruší adresář (pouze prázdný), attrib – zobrazuje nebo nastavuje atributy souborů, xcopy – přenáší soubory nebo celé adresáře, tree – znázorní strukturu adresářů, deltree – vymaže adresář i s podadresáři, diskcopy – kopíruje celé diskety, edit – celoobrazovkový editor, format – inicializuje disk, sys – přenáší systémové soubory, ver – vypíše verzi operačního systému, cls – smaže obrazovku, date – zobrazí a nastaví systémové datum, time – zobrazí a nastaví systémový čas, doskey – zpříjemnění komunikace se systémem pomocí příkazové řádky. Filtry a propojení – sort – čte data ze vstupu, seřadí je a vypíše, find – hledá řetězce v zadaných souborech, more – čte data ze vstupu a zobrazuje po obrazovkách. Systémové proměnné – path – seznam hledacích cest pro spouštění programů, append – totéž pro datové soubory, set – nastavení systémových proměnných, dircmd – přepínače příkazu dir, temp – cesta k odkládacímu adresáři, comspec – umístění příkazového interpretu, prompt – formát systémové výzvy. Příkazy dávkového zpracování – call – volá jinou dávku s možností návratu, echo – výstup na zařízení CON, choice – interakce s obsluhou, for – opakované provádění příkazu, goto – příkaz skoku na řádek s návěštím, if – provede příkaz po splnění podmínky, pause – pozastaví průběh zpracování, textttrem – poznámka do konce řádku, shift – posunuje formální parametry doleva, – potlačuje zobrazení příkazu. Nápověda v MS-DOSu – příkaz /?, help příkaz, help. Unix Unix je víceuživatelský operační systém pro obecné použití, který vytváří shodné prostředí na různých hardwarových platformách. Použitelnost Unixu • potřebujeme-li sdílet data, • propojujeme-li počítače do sítí, • pracujeme-li s rozlehlými databázemi, • potřebujeme-li bezpečný a stabilní OS, • pracujeme-li na výkonnější technice než PC, • potřebujeme-li se orientovat na otevřené systémy. Struktura Unixu • vrstvy koordinující svoji činnost, • nejnižší – jádro (kernel), obsahuje ovladače zařízení (drivery), programy pro přidělování paměti, prostředků systému a diskového prostoru a stykovou rutinu (rozhraní mezi běžícími programy a jádrem), • systémové programy. Charakteristické rysy a vlastnosti Unixu • běžící program = proces, • každý proces může být spuštěn pouze z jiného procesu, s nějakou prioritou, • procesy spolu komunikují pomocí signálů, • víceulohový systém – běží více procesů současně, o bezpečnost se stará jádro, • základním procesem je interpret příkazů shell, • procesy, které nenáležejí žádném uživateli – démoni, čekají na výskyt události, kterou ošetřují, • udržuje seznam uživatelů, kteří mají svá omezení a přístupová práva, superuživatel – bez omezení, • současně může pracovat více uživatelů, • používá veškerou dostupnou paměť, • omezení na velikost disku – dostatečně daleko od kapacit, • umí využívat víceprocesorovou architekturu, • velmi propracované a silné prostředky pro práci v sítích, • otevřený systém – může být doplňován komponentami od dalších výrobců. Systém souborů • soubor je datová struktura uložená na vnějším médiu, 17 • jméno souboru tvoří posloupnost znaků s výjimkou / a \0, nedoporučuje se používat znaky * ? " ’ ‘ \ { } # $ & | ; < > ( ) [ ], není vhodné, aby jméno začínalo znaky + - ~, rozlišují se malá a velká písmena, • soubory začínající tečkou jsou skryté, • bývá zvykem použít tečku na konci a oddělit příponu pro specifikaci jeho typu – například .c, .p, .tex, .o, .f, • adresáře jsou zvláštní soubory obsahující informace o jiných souborech. Příkazy pro práci s adresáři – cd – změna aktuálního adresáře, pwd – výpis jména aktuálního adresáře, mkdir – vytvoření nového adresáře, rmdir – zrušení adresáře, ls – vypsání obsahu adresáře. Příkazy pro práci se soubory – file – vypisuje informaci o typu souboru, cat – spojování a výpis souborů, cp – kopírování souborů a adresářů, mv – přemístění a/nebo přejmenování souborů, rm – odstranění souborů z adresáře, pg a more – výpis souboru po obrazovkách, lp – výpis souboru na tiskárnu, find – vyhledávání souboru na disku, tar a cpio – archivace souborů do archivačního souboru nebo na archivační médium, grep – vyhledávání řetězců v textu, ln – tvorba odkazu na soubor nebo adresář, chmod – definuje přístupová práva k souboru nebo adresáři. Příkazy pro práci s procesy – ps – vypsání stavu procesů, kill – ukončení procesu, nice – změna priority procesu, nohup – vytvoří proces, který bude pokračovat i po odhlášení uživatele, time – zobrazí čas procesoru spotřebovaný procesem v uživatelské fázi, systémové fázi a celkový čas, po který byl proces zpracováván. Příkazy pro komunikaci mezi uživateli – who nebo whoami – seznam přihlášených uživatelů, finger – vypíše informace o uživatelích na lokálním i vzdáleném uzlu, write – interaktivní zpráva, mesg – nastavení přijímání zpráv, talk – interaktivní rozhovor. Systémové proměnné – home – cesta k domovskému adresáři, shell – cesta k příkazovému interpretu, user – jméno uživatelov účtu, path – seznam adresářů, ve kterých se automaticky hledají programy ke spuštění. Nápověda v Unixu – man, někdy také toolman, usage, help a interaktivní výukový program teach. Windows Windoze je operační systém fy Micro$oft, víceúlohový, jednouživatelský, grafické uživatelské rozhraní, bez prostředků na ochranu dat, umí využít celou operační paměť. Windows 3.x Typická grafická nástavba OS MS-DOS. Usnadňuje práci se systémem – uživatel může pomocí nabídek provádět operace, pro které by si jinak (na příkazovém řádku) musel pamatovat příkazy s příslušnými parametry a přepínači. Nabízí nepreemtivní multitasking, což umožňuje současně spuštěné aplikace. Aktivní je, tzn. systémové prostředky využívá, však pouze jedna. Windows 95 32bitový VMM (Virtual Machine Manager) OS, systém VxD (Virtual Device) – virtuální zařízení – řadič přerušení, časovač, DMA, řadič disků, porty, klávesnice, videokarta, . . . 16bitové a 32bitové ovladače zařízení, dynamické knihovny DLL – možnost využívaní více aplikacemi současně, registrační databáze (SRD), souborový systém – podpora FAT12, FAT16, FAT32, PnP technologie, Win32 API s jednotným GDI, mManažer oken, RPC – vzdálené volání procedur, DDE a OLE technologie. Windows 98 a 98SE Vyšší řada OS třídy Windows 95, garance vyšší stability, podpora nových technologií, nové ovladače, vylepšené uživatelské rozhraní. Windows Millenium Edition Zdokonalení domácí práce s počítačem jsou zaměřena do těchto oblastí: údržba systému, digitální média, domácí počítačové sítě, práce na Internetu. 18 Windows NT Plně 32bitový OS – neobsahuje žádný 16bitový kód, preemtivní multitasking – efektivní přidělování volných zdrojů OS jednotlivým běžícím procesům, reentrantní (kód s vícenásobným přístupem) systém virtuální paměti, memory protection – ochrana paměti – spouštění aplikací v oddělených paměťových prostorech, kdy havárie jedné běžící aplikace neohrozí běh celého systému, provozovatelnost na různých architekturách a platformách, stupeň zabezpečení C2, souborový systém FAT12, FAT16, NTFS, symetrický multiprocessing (SMP) – u NT Server je podpora čtyř procesorů a u NT Workstation dvou procesorů, stejné uživatelské rozhraní jako Windows 95. Windows 2000 Rodina produktů Microsoft Windows 2000 sestává ze čtyř produktů: Windows 2000 Server, Advanced Server, DataCenter Server a Professional. Windows 2000 Server je novou generací víceúčelového síťového operačního systému, navrženého pro správu souborů a tisku v podnikových odděleních pro Web, a jako aplikační server vstupní úrovně, který podporuje až čtyři procesory. Windows 2000 Advanced Server je serverovým operačním systémem pro kritické podnikové webové servery a pro řadu aplikačních podnikových serverů. Sjednocuje prvky clusteringu a vyvažování zátěže, a podporuje až osm procesorů. Windows 2000 DataCenter Server je serverovým operačním systémem splňující nejvyšší nároky dostupnosti a rozšiřitelnosti, jelikož podporuje další možnosti clusterování až do 32 procesorů. Windows 2000 Professional je navržen pro nejširší užití ve stolních počítačích a noteboocích v libovolném podniku a bude i nadále podporovat až dva procesory. Vlastnosti Windows 2000 • spolehlivost – spolehlivější provozuschopnost systému, konzistentní výkon aplikací, větší odolnost proti jejich chybám a výpadkům, možnost dynamické konfigurace systému, • snazší správa systému – funkce pro centralizovanou správu s novými technologiemi IntelliMirror a Active Directory, které výrazně zrychlují a zjednodušují zavádění i údržbu systému, • podpora technologií – rychlé Internetové linky DSL (Digital Subscriber Line), kabelových modemy, podpora bezdrátových technologií, USB (Universal Serial Bus), IrDA. Windows XP Vlastnosti systému • spolehlivost – jádro vzniklo z jádra Win NT/2000, vyšší odolnost pro SW chybám, ochrana systémové paměti, možnost návratu do předchozího stavu, ochrana systémových prostředků před přepsáním, automatická kontrola ovladačů zařízení na serveru Windows Update, možnost automatické aktualizace systému z Internetu, podpora nových technologií a zařízení, • vysoký výkon – rychlejší spuštění počítače, programů, rychlejší souběžné zpracování úloh, • zabezpečení – podpora NTFS, ochrana před viry, zabezpečení při práci s Internetem. 19 Okruh 6 – Algoritmizace Algoritmus, jeho vlastnosti a způsoby vyjádření. Odhad časové a prostorové složitosti algoritmů. Algoritmizace základních typů úloh (zpracování řady dat, souboru dat; algoritmizace řazení, rozvojů nekonečných řad; algoritmizace dialogu uživatele s počítačem). Algoritmus, jeho vlastnosti a způsoby vyjádření Algoritmus je postup řešení problému. Společné pro téměř všechny nám dosud známé algoritmy je skutečnost, že jak jejich řešitelem, tak i jejich uživatelem je člověk – bytost schopná vlastního uvažování. Řešitel algoritmu si může v této situaci dovolit používat i takové příkazy, jakými jsou celkem nejednoznačné, časově blíže nespecifikované příkazy. Každý algoritmus musí mít čtyři základní vlastnosti. Musí být: 1. deterministický – v každém okamžiku jednoznačný, 2. rezultativní – konečný, vedoucí k cíli, 3. obecný – hromadný, řešením úlohy pro libovolná vstupní data, 4. opakovatelný – na základě stejných vstupních hodnot poskytovat stejné výsledky. Kromě výše uvedených základních vlasností by měl algoritmus mít i odvozené vlastnosti – měl by být především srozumitelný, přehledný, modifikovatelný, což zaručí jeho další rozšiřování, upravování, vylepšování. Způsoby vyjádření algoritmu jsou tyto: 1. graficky – vývojovým diagramem nebo strukturogramem, 2. slovně – v přirozeném jazyce, 3. matematicky – vztahem mezi veličinami, soustavou rovnic, maticemi, 4. programovacím jazykem. Odhad časové a prostorové složitosti algoritmů Složitost je kvalitativní charakteristikou algoritmu. Sledujeme složitost časovou a prostorovou. Složitost se vyjadřuje jako matematická funkce, popisující závislost daného parametru (paměťového prostoru nebo spotřebované výpočetního času) na množství vstupních dat. Horní ohraničení této závislosti označujeme O(n). Stanovení složitosti můžeme provést experimentálně nebo analýzou zdrojového textu algoritmu. Složitost – závislost spotřeby systémových zdrojů na množsví vstupních dat (spotřeba času procesoru). Například funkce konstantní (spotřebovává stále stejný čas), lineární (násobení konstantou). Určení složitosti – analyticky (z algoritmu), experimentálně (měřením). Algoritmizace základních typů úloh Postup při tvorbě algoritmu (programu): 1. popis vlastností údajů ve vstupním souboru, 2. přehled požadovaných údajů na výstupu, 3. sestavení algoritmu, které obsahuje zejména způsob přečtení vstupních dat, jejich uchování v paměti, vyjádření výpočtů a tvorbu výstupní sestavy, 4. přepis do programovacího jazyka, 5. pojmenování identifikátorů, 6. určení datových typů, 7. přepis algoritmu, 8. zápis v programovacím jazyce zapíšeme editorem do souboru, 9. spustíme překladač programovacího jazyka, dokud překladač hlásí syntaktické chyby, opravujeme pořízený zdrojový text, 10. připravíme si vstupní data, na kterých program vyzkoušíme a výsledky s kontrolním výpočtem, 11. program bez syntaktických chyb spustíme, tj. provedeme se zkušebními daty, 12. získané výsledky srovnáme s kontrolním výpočtem. Zpracování řady dat – pomocí cyklů – while do, repeat until. Je nutné si uvědomit, zda budeme načítané údaje ještě v průběhu zpracování potřebovat. Záleží na zadání – vypočtěte průměr z řady čísel × vypište všechna čísla větší než průměr. Pro dočasné ukládání dat musíme zvolit nějakou datovou strukturu, při malém množství dat lze použít pole, pro větší množství použijeme lineární zřetězený seznam nebo pomocný soubor na disku, který po dokončení operace odstraníme. 20 Zpracování souboru dat – z hlediska zpracování souborů můžeme rozdělit soubory podle různých kritérií. Podle použití řídicích znaků dělíme soubory na textové, netextové s udaným typem a netextové bez udání typu (nevyskytují se v referenčním jazyce). Práce s daty uvnitř souboru probíhá stejným způsobem jako s řadou dat, navíc ještě v některých případech umožňuje měnit pozici ukazatele v souboru. Operace se soubory: • propojení skutečného souboru s identifikátorem – assign, • otevření souboru – činnost, při níž určujeme, jaké činnosti budeme se souborem dále provádět, rozlišujeme několik způsobů otevření souboru: pro čtení (reset), pro zápis (rewrite), pro zápis na konec (append), • procházení souborem – while not eof(t) do begin read (...); ... end, • uzavření souboru – close. Algoritmizace řazení – cílem je uspořádat data dle velikosti. Nejjednodušší metoda je Bubble sort, která porovnává sousední prvky a pokud je potřeba, tak je přehodí, řazení končí, pokud projdeme celou řadu bez prohození. Algoritmizace rozvoje nekonečné řady – realizuje se pomocí rekurzivního volání, algoritmus vytvoříme na základě obecného vztahu mezi dvěma po sobě jdoucími prvky a znalosti požadované přesnosti. Zarážkou rekurze bude dosažení požadované přesnosti. Algoritmizace dialogu uživatele s počítačem – komunikace uživatele s programem probíhá pomocí standardních vstupních zařízení (klávesnice, myš), odezvu je možno sledovat na standardnim výstupu (monitoru). Programátor by měl uživateli dávat jasné instrukce, co se od něj očekává a v jakém formátu má zadávat data. Ke komunikaci lze použít příkazovou řádku, výsuvné nabídky ovládané pomocí kurzorových šipek nebo pro větší komfort umožnit použití myši. Komunikace může probíhat v textovém nebo grafickém režimu. 21 Okruh 7 – Zpracování textů na počítači Typografie; typografické pojmy, logická a fyzická stavba dokumentu, realizace v konkrétním systému. Typografické pojmy Typografie – obor, který se zabývá úpravou tiskovin a současně také druh grafického umění. Proporcionální písmo – každý znak zaujímá pouze nezbytnou šířku na řádku (knižní písmo). Neproporcionální písmo – každý znak zaujímá stejnou šířku (obyčejný psací stroj). Editor – program, který pracuje s neproporcionálním textem. Akcent – diakritické znaménko, je to čárka, háček, kroužek, tečka, stříška, dvojitá tečka nad nebo pod písmenem. Nemusí být vždy na geometrickém středu. Akcidenční písmo – vhodné pro příležitostné a reklamní tiskoviny nebo titulky. Duktus – poměr tloušťky tahů písmene k jeho výšce a šířce, celková světlost nebo tmavost písmene. Font – znamená úplný soubor znaků jednoho typu písma: verzálky, minusky, kapitálky, číslice, tečky, matematické značky, závorky, znaky &, § atd. Italika – nakloněné písmo, nevzniká však jen prostým nakloněním základního písma. Kapitálka – malá verzálka na střední výšku písma (x-výška). Kurzíva – nakloněné písmo vycházejícího ze základního písma, v praxi se nerozlišuje od italiky. Minuska – písmo na střední výšku (a, n), s dolním dotahem (j, p) a horním dotahem (f, k). Písmová osnova – systém linek, na kterých je písmo utvořeno. Určuje poměr malých písmen k velkým. Skládá se z účaří (základní linky), střední dotažnice (k ní sahají malá písmena se střední výškou), horní dotažnice (k ní sahají malá písmena s horními dotahy), dolní dotažnice (k ní sahají malá písmena s dolními dotahy). Rodina – představuje jeden typ písma ve všech dostupných řezech. Řez písma – varianta daného typu písma (polotučné, tučné, jemné, lineární, úzké, široké, kurzivní, kurzivní polotučné, stínované apod.). Serify – příčná zakončení písmových tahů. Slitek – ligatura, zvláštní dvojice písmen, která se díky specifickým tvarům chápe jako jeden celek a má odlišnou kresbu, například ff × ff nebo fi × fi. Kvalitní fonty obsahují slitky jako zvláštní znaky, jenom debilní Word pak takové slovo označí za chybné. Stupeň – vyjadřuje velikost písma. Verzálka – velké písmo v abecedě, na výšku od účaří po horní dotažnici. Vyrovnání – kerning, úprava mezipísmenné mezery mezi dvojicemi písmen různých tvarů tak, aby měla opticky stejnou světlost. Mezi otevřenými písmeny (C, V, L) je menší mezera než mezi uzavřenými (N, M). Například PLAVAT × PLAVAT. Základní písmo – nejběžnější řez daného typu písma, bývá označováno jako obyčejné neboli knižní. Typografické míry – měrné jednotky v typografii. Existují dva typy: Didôtův evropský systém (1 b = 0,376 mm) a anglo-americký systém (1 pt = 0,353 mm = 1/72”). Používají se také relativní jednotky, vztažené ke stupni právě použitého písma. Jedná se zejména o čtverčík, tj. vzdálenost rovnající se bodové výšce písma. Označuje se jako em, protože je roven šířce nejširšího znaku (verzálky M). Polovina této vzdálenosti je 1 en. Velikost písma je závislá na šířce textu (sloupce), na věku čtenáře, na vzdálenosti, ze které se čte, formátu stránky a hrubostí papíru. Pro většinu tiskovin se používá písmo o velikost 9 až 12 bodů. Pro poznámky pod čarou, indexy, rejstříky 6 až 8 bodů. Pro dětské knihy a nadpisy 14 až 16 bodů. Pomlčky – existují čtyři druhy vodorovných čárek: 1. spojovník (rozdělovník) – používá se pro spojení dvou slov do sousloví, nemá nikdy kolem sebe mezery (například česko-ruský), dostane-li se na konec řádku, musí být opakována na začátku řádku následujícího, 2. pomlčka bez mezer – používá se pro vztah nebo rozsah (například 6–8, Sparta–Slavia), dostane-li se na konec řádku, musí být nahrazena slovem, jež zastupuje, 3. pomlčka s mezerami – k oddělení větných celků, například „Udělal pro to vše – a výsledek se nedostavil,ÿ 4. znaménko minus – zapisuje se u záporných čísel (−1). Mezery – základní mezera je tzv. mezislovní, odděluje od sebe slova. Vkládá se stiskem mezerníku, je však pružná podle potřeb zarovnání textu. Nezlomitelná mezera se používá tam, kde chceme dvě slova pevně svázat. Například u jednopísmenných předložek a spojek, číslic (100 000), jmen (J. K. Tyl), titulů (doc. ing. Fero Dožka, Ph. D.) apod. Způsoby sazby odstavců jsou celkem čtyři: 22 1. 2. 3. 4. na prapor vpravo – levý okraj je zarovnaný, pravý vlaje, na prapor vlevo – pravý okraj je zarovnaný, levý vlaje, na střed – řádky jsou zarovnány symetricky kolem svislé osy, do bloku – oba okraje jsou zarovnány. Počáteční řádek odstavce může začínat zarážkou, což je mezera mezi levým okrajem a prvním znakem prvního řádku odstavce. Její velikost může být od 1 až po 2 em. Chceme-li mít nulovou zarážku, pak je nutné vložit mezi odstavce svislé mezery, tzv. odstavcové odsazení. Dále existují zvláštní odstavce, které jsou součástí seznamů, a to buď číslovaných nebo nečíslovaných (označené tečkou). Ideální zarovnání vyprodukuje šedý odstavec, mezislovní mezery jsou rovnoměrné ve všech řádcích. Klasickou chybou je řeka, neboli náhodné seskupení větších mezislovních mezer pod sebou, jež vytvoří klikaté prázdné místo, představující bujný vodní tok. Hrubou chybou je tzv. švícko (sirotek), jedná se o poslední řádek odstavce, který se ocitl osamocen na začátku další stránky. Obdobnou chybou je vdova, první řádek nového odstavce na konci předchozí stránky. Proklad je mezera mezi dolní dotažnicí jednoho řádku a nejvyšší dotažnicí následujícího řádku. Doporučuje se nastavit na 20 % bodové velikosti písma (tzn. při stupni písma 12 bodů řádkování 14,4 bodů). Všechny prvky na stránce se umisťují do pomyslného obdélníka, zvaného zrcadlo. Velikost závisí na papíře. V patě stránky lze umístit folio (číslo stránky), které lze umístit na střed, okraj paty. Dále lze na stránku umístit obrázek, vzorec atd. Publikace začínají obálkou s titulem (s názvem a autory). Ve vnitřní části může následovat patitul, což je stránka s méně výraznými stejnými informacemi. Další listy obsahují předmluvu, úvod, obsah. Hlavní částí knihy je textová masa dělená do číslovaných kapitol. V zadní částí knihy je rejstřík, dodatek a informace o nakladateli, autorovi apod. – tzv. tiráž. Logická stavba dokumentu představuje význam jednotlivých prvků dokumentu (nadpis, podnadpis apod.). Fyzická stavba dokumentu je implementace dokumentu v určitém programovém prostředí (formátu, programu). Přehled programových prostředků Systémy se klasifikují podle vlastnosti WYSIWYG, tj. schopnosti příslušného programu neustále zobrazovat přesně takový tvar dokumentu, jaký by byl dosažen v případě tisku na tiskárně. Je to vzhledem rozdílnosti zobrazování monitoru a tiskárny nemožné. Značkování je příkaz pro sazbu, existují dva principy: • vizuální značkování – představuje pohled na text prostřednictvím takových příkazů, jejichž efekt má přímý optický následek (ztučnění písma příkazem), • strukturní (kontextové) značkování – je pohled na text jako na posloupnost objektů určitého významu (označení pro nadpis určité úrovně a tvaru), výhoda spočívá v jeho jednoduché modifikovatelnosti několika málo příkazy. Nejrozšířenější programové systémy: Ventura Publisher – od firmy Xerox, pracoval s proporcionálním textem (WYSIWYG). Aldus PageMaker – také postupně ustoupil (WYSIWYG). WordPerfect – textový procesor, svého času nejprodávanější na světě s velmi dobrou kvalitou, je hlavně rozšířen v USA (non-WYSIWYG). AmiPro – firmy Lotus, zahájil éru zpracování textů pod Windows, byl vytlačen Wordem (WYSIWYG). MS Word – výplod firmy Microsoft, součást balíku MS Office. Je nejrozšířenějším produktem, a to i přes své podprůměrné schopnosti (WYSIWYG). Quark XPress – profesionální systém pro počítačovou sazbu a podporou grafiky, schopen vyprodukovat typograficky bezchybné texty (WYSIWYG). TEX – profesionální programovací jazyk pro počítačovou sazbu provozovaný pod všemi operačními systémy. Je volně šiřitelný a od roku 1985, kdy byla rozšířena verze 3, nebylo potřeba provést žádné zásadní změny. Jedinou nevýhodou pro začátečníky je vlastnost non-WYSIWYG. Existuje mnoho nadstaveb, které umožňují komfortnější práci, například LATEX pro snadné vytváření běžných dokumentů, ChemTEX pro sazbu chemických vzorců, MusicTEX pro sazbu not apod. Bez většího úsilí je možné sázet japonštinu, hebrejštinu, azbuku aj. 23 Okruh 8 – Aplikační programové vybavení Zpracování textu nástrojem MS Word; optimální postup pořizování textu, korekturní a editorské nástroje, formátování logickým značkováním – styly. Dokument můžeme mít na obrazovce zobrazen v různých podobách, které jsou přizpůsobeny jednotlivým fázím práce s dokumentem: normální zobrazení pro přípravu textu a stránkové zobrazení pro vkládání obrázků. Základním nastavením by mělo být při pořizování (psaní) textu normální zobrazení a pří dalších úpravách stránkové zobrazení. Rozdělení obrazovky Při práci na delším textu je někdy potřebné vidět současně dvě od sebe vzdálené části (například obsah a některou další část). V tom případě lze okno s textem rozdělit na dvě části (umístit do něj příčku) v nabídce Okno/Rozdělit a v každé části mít zobrazenou jinou část téhož dokumentu, neboť každá část se pak chová jako samostatné okno Wordu. Způsob psaní Při psaní textů je třeba si uvědomit některé odlišnosti od psaní na psacím stroji, který klávesnice počítače připomíná. Píšeme bez ukončování řádků – konce řádků se vytvářejí automaticky, na počítači neexistuje klávesa, která by „posunovala válecÿ na konci řádku. Klávesu ENTER používáme pouze k ukončení odstavce. Při psaní je třeba rozlišovat dvojice znaků 1 (číslice jedna) a l (malé písmeno L), případně 0 (číslice nula) a O (velké písmeno O). Pokud máte zapnutou kontrolu pravopisu, vyznačují se vám vlnovkou slova, která počítač poznal jako chybná. Po opravě chyby vlnovka zmizí. Je třeba si uvědomit, že počítač porovnává námi napsaná slova se slovy ve svém slovníku. Proto některá správná slova může označit jako chybná – nemá je ve svém slovníku. Mějte na paměti, že pravopisné chyby najde počítač jen některé. Špatné koncovky i/y v příčestí minulém nebo záměnu i/y ve slovech vír a výr pochopitelně nenajde. Vkládání zvláštních znaků V textu se vždy vyskytnou znaky, které nenajdete přímo na klávesnici počítače. Jedná se například o znaky jiných abeced (ä, ô, . . . ), řecká písmena (β) i jiné speciální znaky (±). Pokud příslušný znak není na klávesnici (nenajdete jej na žádné klapce), je třeba použít nabídku Vložit/Symbol. Stejným způsobem lze také vložit některé speciální typografické symboly. Pokud nechcete tyto znaky pracně hledat, je také možné je přímo zadávat z klávesnice přes jejich ASCII kódy (levý Alt a na numerické klávesnici příslušný kód). Například rozsahovou pomlčku (–) lze vložit z klávesnice jako levý Alt + 0 1 5 0 . Psaní vzorců Pokud se při psaní textů setkáme se situací, kdy potřebujeme do textu napsat matematické či jiné vzorce, máme dvě možnosti. Jednoduché vztahy je možné přímo složit ze znaků na klávesnici a vkládaných znaků. U složitějších vzorců použijeme vložení vzorce přes Vložit/Objekt/Microsoft Equation, kde skládáme vzorec z předdefinovaných prvků. Equation editor je sice podprůměrný nástroj (ostatně jako celý Word), ale je to jediný způsob, jak vložit aspoň náznak typograficky správného výrazu. Styly Styly jsou základním kamenem všech textových editorů. Umožňují efektivní práci s delším dokumentem a jeho snadné úpravy. Pomáhají při sjednocení formálního vzhledu dokumentu. Shrnují formátovací možnosti pro písmo, odstavce, tabelátory, číslování či ohraničení stránek do jednoho pojmenovaného stylu, čímž můžeme nastavovat více vlastností odstavců (v menší míře i znaků) najednou. Pomocí stylů lze velmi efektivně dosáhnout číslování kapitol, jednotného vzhledu různých úrovní nadpisů apod. Se styly můžeme pracovat dvojím způsobem – používat je okamžitě při psaní textu nebo nejprve text napsat a potom přiřadit jednotlivým částem dokumentu styly. Obvykle kombinujeme obě tyto možnosti. Při psaní textu použijeme vlastně okamžitě styl pro základní odstavcový text a většinou i pro nejdůležitější nadpisy. Další styly potom většinou použijeme při konečných úpravách textu. 24 Styly můžeme použít předdefinované, tj. ty, které jsou připraveny ve Wordu, nebo si vytvořit vlastní styly, případně upravit ty předdefinované. Pro každý styl můžeme mít nastavenu klávesovou zkratku pro snazší přiřazení stylu vybranému textu. Je třeba si uvědomit základní výhodu stylů – oprava ve stylu (například velikosti písma) se okamžitě projeví ve veškerém textu, který má tento styl přiřazen. Styly se dělí na dvě skupiny – znakové a odstavcové. Znakové styly se uplatňují pro část odstavce, odstavcové styly pak pro celý odstavec. Stejně jako u kaskádových stylů se parametry dědí. U znakových stylů máme možnost nastavit písmo, jazyk a ohraničení. Do stylu odstavce může být zahrnuto: • písmo – máme možnost nastavit font, řez, velikost, barvu, efekty, prostrkání, umístění nad/pod účařím, • odsazení a mezery – nastavujeme levý a pravý okraj, odstavcovou zarážku, řádkování, mezeru před a za odstavcem a zarovnání odstavce, • tok textu – volíme kontrolu osamocených řádků, svázání řádků, nucené zalomení odstavce, povolení dělení slov, • tabelační zarážky – nastavujeme polohu, zarovnání a vodicí znak, • obrysy a stínování – volíme rámeček, barvu a tloušťku čáry a podklad, • odrážky a číslování – grafické nebo číselné odrážky, • další atributy – například jazyk nebo iniciálu. Pokud nastavujeme nový styl, resp. upravujeme existující styl, můžeme nastavit, resp. změnit: 1. Název – každý styl musí mít své jedinečné jméno, které by mělo vystihovat, o jaký styl se jedná (například Nadpis1, Odsazený apod.). 2. Typ stylu – můžeme jen nastavit, ne dodatečně měnit. Častěji používaný je odstavcový styl. Nastavení tohoto stylu se vždy týká celého odstavce textu. Znakový styl slouží k vyznačování jednotlivých slov (vět) v rámci jednoho odstavce. Má pochopitelně menší škálu možností omezenou na znakové vlastnosti. 3. Založit na – určuje, ze kterého stylu má být přebráno nastavení. Styl z tohoto stylu přebírá všechna nastavení a liší se jen v tom, co explicitně změníme. 4. Navazující styl – určuje, jaký styl bude mít navazující odstavec. Toto nastavení se projeví, pokud text s nastavenými styly přímo píšeme. 5. Formát – je tlačítko, které zpřístupní možnosti nastavování formátových vlastností pro tento styl. Popis jednotlivých dialogových panelů je uveden u příslušných částí (Písmo, Odstavce, . . . ). 6. Klávesová zkratka – je velmi vhodná, pokud budeme styly přiřazovat přímo z editoru a nechceme neustále rozbalovat nabídku se styly. Změny ve Wordu XP od předchozích verzí Již od začátku je patrno mnoho změn. Založení nového dokumentu je již pro každého uživatele samozřejmostí. Nyní je však tento úkon vylepšen. Funkce spojené s touto činností jsou integrované v novém podokně úloh a kromě využití známých šablon je možné založit nový dokument na základě libovolného jiného, již existujícího, aniž by bylo předem nutné definovat jej jako šablonu. Zásadní inovací prošly funkce ovládající formátování textu. Ke standardnímu nastavení a užití formátovacích prvků můžeme nyní snadněji a přehledněji použít zpětné formátování. Stačí část textu upravit dle vlastních potřeb a ihned se v panelu objeví nový styl, který můžeme dále používat. Další novinky se nabízí v případě textu přenášeného přes systémovou schránku, kde je možné volit, jakým způsobem bude vkládaný text formátován – zda si ponechá svůj originální vzhled, přijme podobu ostatního textu v cílovém dokumentu, zůstane z něj pouze text nebo na jeho základě vznikne nový styl. Samozřejmě vše může uživatel snadno ovládat a pokud si nebude jist, je tu další možnost spjatá s formátováním – podokno úloh nabízí možnost Zobrazit formátování (detailní popis formátování textu). Jednou z nejpříjemnějších novinek aplikace Word 2002 je práce s blokem. Je možné vybrat více bloků najednou, ale pracovat s nimi jako s jedním. Pak už zbývá jen pár klepnutí myší (a přidržení Ctrl + Shift ), jak vybrat do bloků například klíčová slova a zkopírovat je do obsahu textu. Pokud se jedná o práci s blokem, pak i klávesa F8 ( Shift + F8 ) a její opakované stisknutí má něco do sebe. S mnoha příjemnými zlepšeními se setkáte také, jakmile začnete na dokumentu spolupracovat společně s kolegy. Asi hlavní novinkou jsou nové možnosti revize dokumentu. V okně revizí lze zobrazit všechny korektury buď po jednotlivých oponentech, nebo ode všech dohromady. Každopádně však budou přehledně roztříděny podle logické struktury dokumentu. Přijmout, zamítnout, sloučit změny – toto všechno je velmi přehledné a pohodlné, a pokud si někdo myslí, že všechno se popsat nedá, může do revizí vložit svůj hlasový komentář. 25 Okruh 9 – Aplikační programové vybavení Tabulkové procesory; manipulace s tabulkou, typy dat, formáty buněk, hledání řešení – výpočty iterací, scénáře, pohledy podmíněné výrazy, matematické logické a další funkce. Tabulkové procesory představují třídu aplikací, určenou pro výpočty a jejich prezentaci ve formě tabulek a grafů. Použití je při řešení statistických a ekonomických úloh jako pomůcka pro plánování nebo evidenci. Mezi významné představitele tabulkových procesorů patří 1-2-3 firmy Lotus, QuattroPro firmy Borland a Excel firmy Microsoft. MS Excel Názvy souborů mají implicitně rozšíření .xls, jedná se o binární soubory, v nichž jsou kromě vlastních dat uloženy i další doprovodné informace. Soubor se automaticky ukládá po časovém intervalu. Zobrazené tabulky lze upravovat volbou měřítka (lupy). Datový typ Datový typ je specifikace souboru hodnot a povolených operací s daným objektem. Buňky mohou nabývat následujících typů: • číslo se znaménkem – reálná hodnota s přesností 15 číslic, • řetězec – text jako posloupnost libovolných znaků, • logická hodnota – literály PRAVDA a NEPRAVDA, • datum – den, měsíc a rok, • čas – hodiny, minuty a sekundy, • datum a čas – kompletní údaj o datu a času. Datový typ buněk lze stanovit explicitně určením formátu buňky. Notace adresy buňky [[’]úplné_jméno_souboru[název_listu[’]!]]buňka Úplné jméno souboru se skládá z volitelné specifikace disku, volitelné přístupové cesty a jména souboru, které je uzavřeno do hranatých závorek. Víceslovné názvy musí být ohraničeny apostrofy. Symbol buňka lze zapsat dvěma způsoby: 1. Standardní notace – [$]sloupec[$]řádek, kde sloupec je písemný kód A. .Z, AA. .AZ, BA. .IV, řádek je číslo 1. .16 384. Terminální symbol $ sděluje, že následující údaj má charakter absolutního odkazu. Například sloupec GX má pořadové číslo 7(G)×26 + 24(X)= 206. Obráceně sloupec 139 je označen EI, protože E představuje 139 div 26 = 5 a I představuje 139 mod 26 = 9. 2. Číselná notace – RrCs, kde r je číslo 1. .16 384, s je číslo sloupce 1. .256. U číselné notace jsou všechny odkazy implicitně absolutní. Pro zápis relativního odkazu je nutné číselné údaje uzavřít do hranatých závorek. Například zápis R10C28 je absolutní odkaz na buňku v 10. řádku a 28. sloupci. Zápis R[-1]C[2] je relativní odkaz na buňku v předchozím řádku a o dva sloupce dále. Zápis RC[1] je odkaz na buňku ve stejném řádku a sousedním sloupci vpravo. Notace adresy oblasti Souvislá oblast – [list:list!]buňka:buňka | řádek:řádek | sloupec:sloupec, například A:H, 5:8, nesouvislá oblast – souvislá_oblast;souvislá_oblast, například list1:list2!A1:B2;C1:C3. Formát Formát se skládá z posloupnosti tzv. zástupných znaků, které specifikují, co se na odpovídajícím místě zobrazí po dosazení skutečné hodnoty. Zápis formátu má volitelně jednu až čtyři složky oddělené středníkem. Syntaxe složky formátu je [barva][relace]popis. První složka platí u kladných, druhá u záporných, třetí u nulové hodnoty a čtvrtá pro nečíselnou hodnotu. Barva definuje barvu výpisu a může nabývat až 64 odstínů, relace umožňuje zobrazit příslušnou hodnotu tehdy, je-li splněna podmínka ve tvaru operátor hodnota, kde operátor je některý z 6 relačních operátorů, 26 popis se skládá z posloupnosti zástupných znaků, které určují masku, podle jejíhož tvaru se pak hodnota zobrazí. Všeobecný formát – číslo se implicitně zobrazí jako desetinné se zadaným počtem desetinných míst nebo v exponenciální formě, pokud se nevejde do buňky. Excel poskytuje uživateli v každém pracovním sešitě několik připravených formátů. Vlastní formáty se umísťují do tzv. šablony (obsahuje seznam definic), která se ukládá do zvláštního souboru. Formáty šablony lze použít v jakémkoli sešitu. Styly Styl obsahuje šest vlastností: formát zobrazení, písmo, způsob zarovnání, okraje, vzorky a ochrana. Styly jsou svázány ze sešitem, proto budeme mít v novém sešitě na počátku k dispozici vždy jen předdefinované styly. Úpravy vzhledu tabulky Pro úpravu rozměrů lze použít sloučení více tabulek v jednu. Předdefinované rozměry lze změnit pro celý sloupec nebo řádek. Pro zvýšení přehlednosti a strukturovanosti tabulky je velmi vhodné jednotlivé významné buňky, úseky nebo oblasti ohraničit linkami (orámování). Zrušení řádků a sloupců lze provést v nabídce Úpravy/odstranit nebo pomocí klávesového příkazu Ctrl + – . Maximální počet listů je 255. Do aktuálního sešitu můžeme vložit list pomocí Vložit/List či pomocí klávesového příkazu Shift + F11 . Nově vkládaný list získá číselné označení o jedničku vyšší, než má poslední existující list. Mezi speciální listy nepatří elementární prostředky. Patří sem list pro graf, makro, modul jazyka Visual Basic, dialog, list pro vytvoření pásma (Slides). Výrazy Vyčíslování výrazů při rekalkulaci tabulky probíhá postupně pro všechny buňky. Ve výrazech lze použít neomezený počet závorek. Vyčíslování operátorů probíhá se stejnou prioritou zleva doprava. Logické hodnoty nabývají hodnoty PRAVDA a NEPRAVDA. Logická hodnota vzniká použitím relačních operátorů =, <, >, <=, >=, <>. Priorita těchto šesti operátorů je stejná. Textový operátor & lze použít ke spojení dvou výrazů typu řetězec. Dále je k dispozici speciální operátor definovaný nad jednorozměrnými oblastmi – pomocí znaku mezera získáme průsečík dvou oblastí. Funkce Funkce jsou podprogramy, po jejichž provedení je identifikátoru funkce přiřazena hodnota získaná výpočtem uvnitř funkce. Jejich vyvolání lze kromě nabídky i klávesovou zkratkou Shift + F3 . Pro označení parametrů různých datových typů je použita následující notace: • x; y; z – libovolné reálné číslo, • γ – číslo představující úhel, • x1; x2 – seznam libovolných reálných čísel, • n – libovolné kladné číslo, vyjadřující počet, • k – libovolné číslo, vyjadřující pořadí, • A, X; Y – libovolná oblast buněk, • P – logický výraz, • P1 ; P2 ; . . . – seznam logických výrazů (podmínek), • M ; N – matice. • • • • • • • Dělení jednotlivých funkcí: goniometrické funkce – abs, tg, sin, cos, radians, arcsin, algebraické funkce – exp, faktoriál, log, mod, odmocnina, power, součin, suma, sumif, kombinatorické funkce – kombinace, permutace, součin.matic, determinant, inverse, zaokrouhlovací funkce – celá.část, useknout, zaokr.nahoru, ostatní matematické funkce – pi, roman, stavové funkce – počet, počet2, countblank, countif, statistické funkce – max, průměr, median, průmodchylka, large, harmean, 27 • logické funkce – a, ne, nebo, nepravda, pravda, • podmíněné funkce – když. Další typy funkcí: • pro práci s řetězci – podobné jako v Turbo Pascalu, • časových údajů – realizují převod zadaného časového údaje na vnitřní reprezentaci (desetinné číslo) a naopak, • vyhledávací – určeny pro práci s adresami buněk, hledání, • informační – určeny pro práci s prostředím tabulky, obsahují dotazy na kód či typ chyby v buňce, • finanční – pro finanční účely, • databázové – pracují nad položkami databázové tabulky, relace, • pro inženýrské výpočty a analytické s funkcemi predikátovými – funkce příznakové pro zjištění sudosti a lichosti čísla. • • • • • • • • 28 Chybová hlášení při výpočtech: #NULL! – kód chyby 1, zadaná dvě oblasti nemají společný průsečík, #DIV/0! – kód chyby 2, jmenovatel má hodnotu nula při celočíselném nebo reálném dělení, #HODNOTA! – kód chyby 3, nesprávný argument nebo operand, #REF! – kód chyby 4, odkaz na neexistující buňku nebo chybějící operátor, #NAZEV? – kód chyby 5, neexistující název oblasti, #NUM! – kód chyby 6, ve výrazu je zadáno nesprávné číslo, #N/A – kód chyby 7, hodnota výrazu je nedostupná (výsledek funkce NEDEF), ######## – výsledek není zobrazen, neboť má větší šířku než příslušný sloupec. Okruh 10 – Počítačové sítě Počítačové sítě; architektura a klasifikace. Principy datové komunikace; komunikační model, přenosové technologie, síťové protokoly. Technické komponenty počítačových sítí. Počítačové sítě • síť – skupina bodů navzájem propojených komunikačními kanály, • uzel – síťový prvek připojený za účelem vzájemné komunikace, • členění sítí z prostorového hlediska – LAN (Local Area Network) ∗ hub (rozbočovač) – umožňuje větvení datového spoje, zhroucená sběrnice do jednoho bodu, ∗ switch (přepínač) – přišlá data se nešíří všesměrově, ale pouze do cílového segmentu, ∗ router (směrovač) – spojuje několik podsítí, určuje optimální cestu paketu mezi sítěmi, ∗ routing switch (směrovací přepínač) – určen ke propojování segmentů i podsítí, – MAN (Metropolitan Area Network), – WAN (Wide Area Network) ∗ základní požadavky – vysoká rychlost a propustnost, ∗ přepínání přenosových spojů, ∗ přepínání datových paketů – datagramová služba, vytváření virtuálního stroje, • síťová topologie – způsob vzájemného propojení síťových uzlů – dvoubodová spojení – hvězdicová topologie, – násobná spojení – sběrnicová, kruhová, stromová topologie. Komunikační model Shannon a Weaver definovali koncem 40. let tzv. základní komunikační model, neplatí jen pro počítačové sítě. Obr. 7: Komunikační model Přenosové technologie Fyzická vrstva definuje přenosový kanál, základními charakteristikami jsou přenosová rychlost, médium, kapacita přenosu. Komunikace je realizována pomocí elektromagnetických vln. Přenosová média Vodiče – metalické a optické kabely • přenosová rychlost, • šířka pásma – baseband (základní pásmo) – pro přenos signálu s jednou frekvencí (není transponován do jiné frekvence) – LAN, – narrowband (úzké pásmo) – pro hlasové přenosy 50–64 kbps – typicky telefonní sítě, – broadband (široké pásmo) – pro multiplexované přenosové kanály (frekvenčně sdílené) – WAN, • kroucený dvoudrát – twisted pair, realizuje jeden spoj, nestíněná (UTP) a stíněná (STP) varianta, • koaxiální kabel – tvoří dutý vnější vodič stínící vnitřní pevný vodič, mezi je umístěna izolace, • optické vlákno – vnitřní světelně vodivé jádro tvořeno průzračným materiálem, obaleno světlo nepropustnou vrstvou, vysílač – laser nebo LED, přijímač – fotodioda, jednovidové (single-mode, jeden paprsek veden osou jádra, kvalitní, drahé), mnohovidové (multi-mode, přenos mnoha paprsků pod různými úhly odrazu), 29 Nevodiče – vlny nevedou, pouze jimi prostupují (vzduch) • frekvenční rozsah signálu – mikrovlnné frekvence (2–40 GHz) – point-to-point – přesně směrované paprsky, – rádiové frekvence (30 MHz–2 GHz) – všesměrové šíření, sítě Wireless LAN (WLAN), – infračervené frekvence (3 × 1011 –2 × 1014 Hz, tj. 850–950 nm) – WLAN, ale neprostupuji překážkami, • směrovost – nízké frekvence (všesměrové šíření), vysoké frekvence (směrový paprsek), Možné problémy při přenosu • zkreslení – špatné vyhodnocení signálu, • útlum – je způsobem impedancí kabelu, • zpoždění, • rušení – parazitním signálem (šum). Síťové standardy Standard Ethernet Tento standard byl vyvinut v roce 1972 v laboratořích firmy XEROX. Základní topologií používanou standarem Ethernet je sběrnice, na kterou jsou připojena síťová zařízení. Základním prvkem síťové struktury je segment (větev), jehož maximálním standardem povolená délka a maximální počet možných připojených zařízení jsou dány typem použitého přenosového média. To může být: • tenký Ethernet 10Base2 (Thin Ethernet) – tenký koaxiální kabel přímo podporující síťová zařízení za použití konektorů BNC, • tlustý Ethernet 10Base5 (Thick Ethernet) – silný páteřní koaxiální kabel, ke kterému jsou připojena síťová zařízení přes speciální adaptéry, • kroucený dvoudrát 10BaseT (Twisted Pair) – na něj je připojeno jedno komunikující zařízení k převodníku hub, který realizuje sběrnicovou strukturu. Rychlost přenosu sítí standardu Ethernet je 10 Mb/s. Technologie Ethernet je standardizovanou normou organizace IEEE, která ji opatřila označením IEEE 802.3. Další síťové komponenty nutné pro vytvoření rozsáhlejší lokální sítě jsou opakovače, které přenášené signály zesilují a tvarují. Fast Ethernet Fast Ethernet je síťovým standardem poměrně novým z počátku 90. let. Jeho hlavním přínosem do rozvoje síťových technologií je řádové zvýšení přenosové rychlosti oproti zatím nejužívanějšímu standardu Ethernet. Přenosová rychlost Fast Ethernetu je 100 Mb/s. V roce 1993 byly specifikovány standardy IEEE 802.12 (100BaseV6) a IEEE 802.14 (100BaseX). Technologie standardu 100BaseX umožňuje přepínání přenosové rychlosti mezi 10 Mb/s a 100 Mb/s a nazývá se proto někdy též přepínavý Ethernet (Switched Ethernet). Jako přenosové médium používá kroucený dvoudrát (100BaseTX), čtyřnásobný kroucený dvoudrát (100BaseT4) a optické vlákno (100BaseFX), kde maximální délka segmentu je 412 m. Standard FDDI (Fibre Distributed Data Interface) Technologie FDDI dosáhla výraznějšího uplatnění až počátkem devadesátých let. Jak je patrno z názvu, jako jediné přenosové médium bylo předpokládáno optické vlákno. Kromě něj je možno používat i kroucený dvoudrát. Přenosová rychlost je 100 Mb/s. V jedné síti může být připojeno maximálně 500 uzlů při rozloze sítě maximálně 200 km. Maximální vzdálenost mezi dvěma sousedními uzly je až 3 km. Topologie bývá kruhová (dvojitý logický okruh). Z uvedených parametrů lze soudit, že se technologie FDDI uplatňuje zvláště ve výstavbě páteřních sítí středního a většího rozsahu. V této oblasti má ale dynamicky se prosazujícího konkurenta – technologii ATM. Sítě Token Ring (IEEE 802.5) Kruhová topologie, násobný přístup k médiu, příznak oprávnění k přístupu běhá po tomto okruhu, klasicky 4 Mb/s, nově 16 Mb/s. Nevýhodou je fakt, že porucha kteréhokoliv počítače nebo větve způsobí neprůchodnost sítě. 30 Standard ATM (Asynchronous Transfer Mode) Technologie ATM je v současné době nejmodernější, i když ne nejlevnější síťovou technologií vhodnou jak pro výstavbu lokálních sítí, tak i pro budování sítí pátečních. Významná je především schopností multimediálních přenosů. Přenosové rychlosti dosahují hodnot 100 Mb/s, 155 Mb/s, 622 Mb/s a 2,24 Gb/s. Technologie ATM není závislá na určitém typu přenosového média. Lze použít buď optické vlákno nebo různé typy nestíněného krouceného dvoudrátu. Technologie se používá jak na úrovni propojování sítí, tak i pro připojování jednotlivých stanic do sítě. Zatím se prosazuje více na páteřních sítích, neboť nákup a instalace komponentů je velmi nákladou záležitostí. Quality of Service (QoS) umožňuje garantovat různé parametry a vlastosti přenosu. ATM nabízí 4 druhy služeb: 1. CBR (Constant Bit Rate) – emuluje drát nebo optické vlákno, nabízí konstantní přenosovou rychlost, využití pro nekomprimované datové přenosy (audio, video), 2. VBR (Variable Bit Rate) – pro přenosy v reálném čase, které nevyžadují konstantní přenosovou rychlost, například MPEG, ATM jim zaručuje takovou přenosovou rychlost, jakou momentálně potřebují, 3. ABR (Available Bit Rate) – v tomto režimu ATM garantuje určitou minimální (předem dohodnutou) přenosovou rychlost s tím, že pokud může, vyhoví i požadavkům na vyšší rychlost, 4. UBR (Unspecified Bit Rate) – v tomto režimu ATM negarantuje ani minimální přenosovou rychlost, což ve výsledném efektu odpovídá chování typických sítí na principu přepojování paketů. Služba ISDN (Integrated Service Digital Network) Umožňuje digitální telefonní služby a datové přenosy, používá kroucený dvoudrát, vytváří virtuální kanály. Jde o síťovou infrastrukturu existující samostatně vedle Internetu, je rozšířená hlavně v Severní Americe a západní Evropě. Bezdrátové sítě (Wireless Network) Přenosovým médiem je vzduch, šíří elektromagnetické vlny rádiové (2,4 GHz ± 83 kHz přenosový kanál) a infračervené (350 000 GHz). Používají se hlavně pro mobilní počítače – pro připojení k LAN nebo vzájemné ad-hoc propojení mobilních počítačů. Připojení je realizováno pomocí bezdrátových síťových karet (ad-hoc) nebo přes lokální síť (IEEE 802.12). Referenční síťový model OSI 1. Fyzická vrstva – realizuje fyzické propojení komunikujících systémů a vlastní přenos signálu po přenosovém médiu. 2. Linková vrstva – řídí tok dat na přenosovém médiu. 3. Síťová vrstva – zajišťuje směrování dat mezi komunikujícími systémy. 4. Transportní vrstva – zajišťuje spojení mezi vstupními body jednotlivých komunikujících subsystémů. 5. Relační vrstva – řídí tok dat mezi aplikačními procesy. 6. Prezentační vrstva – převádí jednotlivá data do standardních síťových formátů, provádí také kompresi a kódování. 7. Aplikační vrstva – obsahuje aplikační programy pro síťové služby a systémové programy vyžadující síťové procesy. Ne všechny typy počítačových sítí striktně oddělují všech sedm výše uvedených úrovní referenčního modelu OSI. Také sítě typu Internet, používající síťovou architekturu TCP/IP, pracují podle síťového modelu zredukovaného do čtyř vrstev. Jsou to: 1. Aplikační vrstva – sdružuje vrstvu aplikační, prezentační a relační v OSI modelu. 2. Transportní vrstva – je totožná s transportní vrstvou OSI modelu (protokol TCP). 3. Síťová vrstva – rovněž odpovídá síťové vrstvě OSI modelu (protokol IP). 4. Linková vrstva – sdružuje vrstvu linkovou a fyzickou OSI modelu a umožňuje přímé vysílání a příjem paketů. 31 Síťové protokoly Síťové protokoly jsou sady dojednaných pravidel, kterými se řídí komunikující systémy. Protokoly byly ustaveny proto, aby byly minimalizovány problémy plynoucí z odlišnosti technických a programových prostředků jednotlivých síťových systémů. Každé síťové vrstvě přísluší jeden nebo několik síťových protokolů. Protokoly určité vrstvy jednoho systému zajišťují potřebnou podporu pro protokoly vrstvy sobě nadřazené v témže systému. Další důležitou funkcí protokolů je zajistit ve své vrstvě adresaci, aby se příslušná data dostala na určené místo (IP adresa v síťové vrstvě, HW adresa síťového adaptéru v linkové vrstvě a čísla portů v transportní vrstvě). Přehled síťových protokolů dle jednotlivých vrstev 4vrstvého modelu 1. vrstva linková • protokoly pro lokální sítě (LAN) – Ethernet v. 2, IEEE 802.x, FDDI, jsou dány příslušnou technologií použitou při výstavbě sítě, • protokoly pro vzdálené sítě – PPP, HDLC, LAPB, SLIP, používají se pro spojení dvou nebo více lokálních sítí nebo pro připojení vzdálené pracovní stanice do lokální sítě, 2. vrstva síťová (IP vrstva) • ARP (Address Resolution Protocol) – přiřazuje HW adresu známé IP adrese, • RARP (Reverse ARP) – přiřazuje IP adresu známé HW adrese, • IP (Internet Protocol) – nosný protokol vrstvy, realizuje nespojovanou službu směrování datagramů podle IP adresy, • ICMP (Internet Control Message Protocol) – nutný pro podporu IP protokolu, umožňuje zasílat chybová hlášení o problémech vzniklých při směrování dat a řídicí zprávy, 3. vrstva transportní • UDP (User Datagram Protocol) – poskytuje nespojovanou (nepotvrzovanou), ale rychlou službu pro přenos dat mezi dvěma komunikujícími systémy, korektnost se ověřuje a zajišťuje protokoly ve vyšší vrstvě, • TCP (Transmission Control Protocol) – vytváří dvoucestné spojení mezi dvěma komunikujícími systémy, čímž zajistí spolehlivý přenos dat, využívají jej protokoly aplikační vrstvy, které podporují uživatelské síťové aplikace, 4. vrstva aplikační • TELNET – jeden z nejdůležitějších protokolů, vytváří síťový virtuální terminál (NVT) pro interaktivní přístup ke vzdáleným počítačům, • FTP (File Transfer Protocol) – umožňuje přenos souborů po síti a některé operace nad vzdáleným systémem souborů, • NFS (Network File System) – umožňuje sdílení vzdálených systémů souborů, které se pak z hlediska uživatele jeví jako systémy souborů lokálních, služba je podporována dalším z protokolů aplikační vrstvy, protokolem RPC, • RPC (Remote Procedure Call) – zajišťuje provední procedur zadaných ze vzdáleného stroje, • DNS (Domain Name Server) – provádí překlad doménových jmen strojů (symbolických adres strojů) používaných v uživatelských aplikacích do IP adres, které používají protokoly nižších vrstev pro směrování dat, DNS provádí i překlad reverzní, • RIP (Routing Information Protocol), OSPF (Open Shortest Path First), EGP (Exterior Gateway Protocol) – směrovací protokoly, které vytvářejí a šíří směrovací tabulky nezbytně nutné pro směrování dat po síti, • SMTP (Simple Mail Transfer Protocol) – zajišťuje službu elektronické pošty, • IMAP (Internet Message Access Protocol), POP (Post Office Protocol) – umožňují přístup do poštovních schránek ze vzdálených počítačů, • SNMP (Simple Network Management Protocol) – umožňuje správu určité oblasti sítě, tímto protokolem podporovaný systém správy je založen na komunikaci řídicí stanice a tzv. agentů, kteří podávají do řídicí stanice informace o stavu svých i cizích systémů a zaznamenaných síťových událostech, • PPP (Point-to-Point Protocol) – umožňuje připojení přes telefonní linku do sítě (dial-up), • RTP (Real Time Protocol) – podporuje přenosy dat v reálném čase, • NNTP (Network News Transfer Protocol), HTTP (HyperText Transfer Protocol) – skupina protokolů umožňujících přístup k distribuovaným informačním systémům (WWW, NetNews, Gopher apod.). 32 Implementace síťových protokolů Port – je identifikátor přístupu do příslušného procesu, velikost identifikátoru je 16 bitů, v rámci portu rozdělení do skupin 1. well-know porty – předem určeny určitým síťovým službám, 0–255, spravuje je organizace IANA (složka správní struktury Internetu), 2. specifické porty pro Unix, 3. alokované porty (přiřazené určitému OS) – přířadí transportu příslušný OS, 4. porty pro neinternetové služby. Socket – identifkátor uzlu rozšířený o identifikaci příslušného portu, IP:port. Informace o stavu systému a TCP spojení jsou udržovány v datové struktuře. Technické komponenty počítačových sítí Opakovač (repeater) – zesiluje signály, pracuje v nejnižší fyzické vrstvě. Mezi dvěma uzly mohou být čtyři opakovače. Je to čistě elektrické zesílení, zesiluje i chybný signál. Použití pro zvětšení prostoru pokrytého LAN a pro spojování LAN s různou kabeláží. Most (bridge) – slouží k propojení dvou LAN různých typů (Token Ring a Ethernet), LAN se liší ve dvou nejnižších vrstvách OSI modelu. Plní funkci směrovací a filtraci packetu dle hardwarových adres jejich určení. Přes most procházejí pouze data určená stanicím na druhé straně. Pracují na vrstvě datalink. Mosty přenášejí jen platné rámce, proto má vliv na zatížení sítě. Spojované sítě musejí mít alespoň podobné rámce (FDDI a IEEE 802.3). Směrovač (router) – komunikuje na síťové vrstvě. Směrovače využívají informace ze síťové vrstvy modelu, která se stará o optimalizaci cesty k cílové stanici (inteligentní mosty), pracují s adresami sítí narozdíl od mostů, ty pracují s adresami uživatelů. Rozesílá packety podle tabulek (statické, dynamické). Obsahuje hardware a software pro tento účel. Brána (gateway) – pracuje na všech vyšších vrstvách, spojuje LANy s rozdílnými operačními systémy, propojuje LAN k veřejné datové síti. Je realizována často v podobě komunikačního serveru. Brána je programové vybavení, aby určité funkce síťové architektury A převedl bez modifikace uživatelských dat na druhou síť architektury B. Routing – cílený přenos datagramů z jednosměrovacího uzlu (routeru) na další až k routeru připojeného do téže fyzické sítě jako cílového routeru. Děje se tak na základě informací obsažených v routovacích mapách jednotlivých routerů. Routovací mapa (tabulka) – určuje nejlepší cestu datagramu mezi sítěmi (podsítěmi) na základě metriky routovacího protokolu, na základě kterých je vytvářejí. Routovací protokoly – programy implementované na routerech, které šíří informace po dalších routerech, podle nichž se vytváří routovací tabulky. Metrika routeru (kritéria) – určuje charakter spoje mezi routery (nejkratší cesta, největší spolehlivost, nejmenší časové zpoždění, největší propustnost). 33 Okruh 11 – Počítačové sítě Protokolová architektura TCP/IP; vrstvový model, komunikace mezi vrstvami, IP adresace a směrování. Bezpečnost v síti. Vrstvový model TCP/IP jako soubor protokolů heterogenních sítí od různých dodavatelů byl vyvinut v 70. letech 20. století. Cílem bylo propojit různorodé počítače mnoha vojenských a výzkumných pracovišť a univerzit do rozsáhlé sítě. Prakticky do počátku 90. let 20. století byl Internet doménou výzkumných a akademických pracovišť, ale postupně o jeho přednosti začaly projevovat zájem i soukromé organizace. Došlo k jeho využívání subjekty nejrůznějšího charakteru (vládní, nevládní organizace, výrobní společnosti, poskytovatelé služeb, dealeři i soukromé osoby). Protokolová architektura TCP/IP nezahrnuje samozřejmě pouze dva protokoly, které má ve svém názvu. Na rozdíl od referenčního modelu OSI ji však tvoří jen čtyři vrstvy (vrstva linková, síťová, transportní a aplikační). Nejnižší vrstva zajišťuje přístup k přenosovému médiu a řízení datového spoje. Podrobněji není v rámci TCP/IP architektury specifikována. Její implementace závisí na přenosové technologii, kterou používá příslušná síť, ať již je to přenosová technologie LAN (například Ethernet), nebo přenosová technologie WAN (například ATM). Znamená to, že TCP/IP může být implementována na jakémkoliv typu sítě z hlediska používané přenosové technologie, tzn. na sítích heterogenních. Protokol IP je zásadním protokolem vrstvy síťové, zvané také vrstva IP. IP protokol podporuje komunikaci mezi síťovými uzly a zajišťuje na základě schématu IP adresace směrovací cesty pro pakety, které se v kontextu této vrstvy nazývají datagramy. IP protokol provádí také fragmentaci datagramů v případě, že jejich původní velikost přesahuje maximální velikost rámce, který může přijmout cílový uzel. Tu stanoví příslušná přenosová technologie. IP protokol provede případně také znovusestavení datagramu, tj. defragmentaci přijatých dat. Protokol ICMP (Internet Control Message Protocol) podporuje protokol IP v tom smyslu, že informuje vysílací (zdrojový) uzel o určitých nekorektních situacích, které nastaly v průběhu přenosu datagramu. Jedná se tedy o zprávy režijní, které se v případě korektních přenosů nevysílají. Třetí vrstva TCP/IP je vrstva transportní. Zajišťuje transportní službu pro předání dat mezi koncovými uživatelskými procesy. Transportní vrstva zahrnuje dva protokoly: TCP (poskytuje službu spojovanou, vytvoří mezi komunikujícími koncovými procesy virtuální komunikační kanál, ve kterém probíhá řízený přesun dat) a UDP (poskytuje nespojovanou službu bez potvrzování příjmu předávaných datagramů, přesun dat probíhá rychleji než v předchozím případě, korektnost transakce musí ověřit protokoly vyšší vrstvy). Aplikační vrstva je nejvyšší vrstvou TCP/IP architektury a kromě přístupu k službám Internetu, který poskytuje uživatelským aplikacím, zajišťuje také správu relací koncových aplikací (jedná se o relace typu klient– server) a přípravu dat k transakci. Aplikační vrstva TCP/IP sdružuje funkce nejvyšších třech vrstev referenčního modelu OSI. Do aplikační vrstvy je přiřazeno velké množství protokolů určených různým službám Internetu. Některé protokoly poskytují tutéž službu a programátor volí pro aplikaci, kterou vyvíjí, ten protokol, který odpovídá nejvíce jeho záměrům. Určitá skupina aplikačních protokolů jsou protokoly povinné, neboť operační systém, který by je neimplementoval, by nemohl poskytovat ani minimální síťový servis. Další skupinu tvoří protokoly doporučené, které podporují základní síťové služby a poslední skupinou jsou protokoly doporučené, podporující rozšířené síťové služby. Vývoj nových aplikačních protokolů neustává, naopak počet nových aplikačních protokolů se neustále zvyšuje v souvislosti s novými službami, které Internet nabízí (například protokoly pro podporu multimediálních přenosů v reálném čase). Popis síťových protokolů – viz Ekonomická informatika, okruh 11. Standardy TCP/IP protokolů jsou vyvíjeny a udržovány nezávisle na jakémkoliv typu hardware nebo operačního systému a jsou implementovány na mnoha systémových platformách (Intel a Macintosh osobní počítače, Sun servery a pracovní stanice, DEC servery, HP servery, IBM mainframes atd.). TCP/IP je „rodnýmÿ síťovým protokolem operačních systémů třídy Unix a je implementován ve všech ostatních současných operačních systémech. TCP/IP sítě mohou být provozovány na různých přenosových technologiích jako je Ethernet, IEEE 802.3, Token Ring, FDDI a bezdrátové síťové systémy. Dokumentace popisující protokoly sady TCP/IP je volně dostupná na serverech organizace Internet Network Information Center (InterNIC), stejně jako na serverech mnoha univerzit a dalších organizací. IP adresace Adresní schéma implementované v protokolu IP verze 4 (IPv4), který je v současnosti jedním ze základních protokolů Internetu, umožňuje jednoznačně označit více než miliardu síťových uzlů. IP adresa je 32bitové číslo 34 identifikující odesílatele a příjemce informace, která se ve formě datových paketů přenáší Internetem. IP adresa má dvě části: část označující určitou síť a část označující určité zařízení (PC, server. směrovač apod.) náležející do té sítě. Na vlastním Internetu (tj. na směrovačích, které předávají paket mezi sebou směrem k cíli) se zkoumá pouze část IP adresy označující síť. Teprve až v rámci cílové sítě se paket doručuje podle identifikátoru zařízení, zvaném také lokální adresa. Každá síť připojená k Internetu musí mít svou adresu. Organizace Network Information Center (NIC) je správcem IP adresového pole Internetu. Vzhledem k tomu, že existující sítě různých velikostí, byly pro adresní schéma IPv4 navrženy 3 třídy IP adres, označených A, B a C. Čtvrtý typ, třída D, je pro určen pro zvláštní účel. IP adresy se zpravidla zapisují jako čtveřice desítkových čísel, z nichž každé vyjadřuje hodnotu osmice bitů. Čísla jsou navzájem oddělena tečkou, například 195.178.72.10. Třída A (S.U.U.U) – určena velmi velkým sítím s velkým počtem síťových zařízení. Pro adresu třídy A platí, že první bit první osmice má hodnotu 0 a dalších 7 bitů je určeno pro identifikaci sítě (první číslo 1–126). Zbylých 24 bitů lze využít pro identifikaci síťových zařízení. Maximální počet strojů v síti je 2533 . Příklad IP adresy třídy A: 68.122.150.12. Třída B (S.S.U.U) – určena sítím střední velikosti. Pro adresu třídy B platí, že první dva bity první osmice mají hodnotu 10 a dalších 14 bitů je určeno pro identifikaci sítě (první číslo 128–191). Zbylých 16 bitů lze využít pro identifikaci síťových zařízení. Maximální počet strojů v síti je 2532 . Příklad IP adresy třídy B: 147.22.250.112. Platí, že 147.251.0.0 je adresa sítě typu B, zatímco 147.251.255.255 je adresa všech jejich strojů. Třída C (S.S.S.U) – určena pro sítě menší, tohoto typu adres je k dispozici nejvíce. V současnosti je to prakticky jediný typ IP adres, který se organizacím přiděluje. Pokud by k adresaci podnikové sítě nestačila jedna IP adresa, je podniku přidělena skupina více IP adres. Jestliže v této skupině jsou IP adresy po sobě následující, je tato skupina označena jako „blok IP adresÿ. Pro adresu třídy C platí, že první 3 bity první osmice mají hodnotu 110 a dalších 21 bitů je určeno pro identifikaci sítě. Zbylých 8 bitů lze využít pro identifikaci síťových zařízení (první číslo 192–223). Maximální počet strojů v síti je 253. Příklad IP adresy třídy C: 197.2.58.12. Třída D – určena pro skupinovou adresaci a slouží k označení určité skupiny zařízení, která byla vytvořena s určitým záměrem (například správa sítě, skupinové multimediální přenosy atd.). Jednotlivá zařízení skupiny mohou náležet do různých IP sítí. Takové zařízení má tedy současně IP adresu síťovou i IP adresu skupinovou. Pro adresu třídy D platí, že první 4 bity první osmice mají hodnotu 1110 a dalších 28 bitů je určeno pro identifikaci skupiny. Příklad IP adresy třídy D: 225.2.58.12. Protokol IPv6 definuje IP adresu jako 128bitové číslo ve formě osmi 16bitových polí, oddělovačem je dvojtečka. Je možné adresovat nepředstavitelné množství zařízení – až 296 × více než u IPv4. Jsou definovány mechanismy zajišťující autenticitu, důvěrnost a celistvost pro IP pakety. Umožňuje aplikacím označit IP pakety tak, aby jim bylo poskytnuto při přenosech speciální zacházení (například při multimediálních přenosech v reálném čase). Příklad adresy podle protokolu IPv6: FEA1:122B:0000:0000:0000:0000:4A51:1022. Kromě síťové IP adresy, která je adresou logickou, má každé síťové zařízení svou adresu hardwarovou, danou výrobcem. Tato adresa se označuje někdy jako MAC adresa nebo Ethernet adresa. Má 48 bitů a zapisuje se jako šest dvojic hexadecimálních čísel navzájem oddělených dvojtečkou (například 08:00:20:91:DC:83). Ethernet adresy používají funkce síťového rozhraní. IP adresy coby numerické identifikátory používají TCP/IP protokoly k určení uzlu TCP/IP sítě. Pro uživatelské aplikace jsou vhodnějšími identifikátory síťových uzlů symbolické adresy, neboli alfanumerické řetězce, které mohou mít nějaký význam a jsou tudíž pro člověka lépe zapamatovatelné. Každé přidělené IP adrese je možno přiřadit také takový alfanumerický řetězec, který se stává tzv. doménovým jménem zařízení. Doménové jméno zahrnuje jméno zařízení a označení subdomény a domény, ke které náleží. Jednotlivé složky doménového jména jsou odděleny tečkou. Například doménové jméno dahlia.mendelu.cz je přiřazeno zařízení s IP adresou 195.178.72.10. Jméno zařízení je dahlia a přísluší do domény mendelu.cz. Mendelu je označení části domény označené cz. Tvar symbolické adresy: jm_stroje[.jm_podsítě].jm_lokální_sítě.doména_nejvyšší_úrovně. Jméno stroje přiděluje správce sítě, existuje v rámci lokální sítě. Použití jména podsítě závisí na struktuře sítě, je to nepovinný řetězec. Jméno lokální sítě je povinná položka. Doména nejvyšší úrovně je označení oboru organizace (v USA – edu, org, gov, net, mil, com) nebo označením státu (ve zbytku světa – cz, sk, de apod.). Všechna doménová jména Internetu jsou uspořádána do hierarchie nazvané Domain Name System (DNS). Její vrchol tvoří „kořenováÿ doména, spravovaná NIC. Další úroveň tvoří státní nebo oborové domény 35 (tzv. domény nejvyšší úrovně – top level domain). Pod nimi jsou domény druhé, třetí, atd. úrovně, které jsou ve správě organizací provozujících lokální počítačové sítě. Jak bylo uvedeno, uživatelské programy používají k označení síťového zařízení spíše doménová jména, než číselné IP adresy. Protože ale protokoly nižších vrstev TCP/IP vyžadují pro svou činnost IP adresy a nikoliv doménová jména, musí být doménová jména na IP adresy konvertována. Tento převod provádí funkce implementující protokol DNS, které jsou vestavěny do každé síťové aplikace. Konverze doménových jmen na IP adresy je tedy pro uživatele aplikace zcela transparentní. Prostor doménových jmen je administrativně rozdělen do oblastí zvaných zóny (zóna často představuje podnikovou nebo univerzitní LAN). Každé zařízení náležející do určité zóny má svůj záznam v zónovém souboru, který je databází pro službu DNS. Zónové soubory jsou udržovány na určeném počítači zvaném name server nebo DNS server. DNS je tedy distribuovaný systém Internetu, protože informační zdroje podporující DNS servis jsou rozptýleny na mnoha tisících name serverech, odpovídajících za svou vlastní zónu. Směrování Směrování je děj, při kterém se provádí přenos informace mezi sítěmi od zdrojového systému k systému cílovému. Při směrování prochází paket minimálně jedním mezilehlým zařízením zvaným směrovač (router). Směrovač je zařízení propojující nejméně dvě sítě s vlastní IP adresou. Směrovač může být buď počítač k tomu určený, nebo speciální zařízení. Jestliže směrovač propojuje N sítí, musí být vybaven N síťovými rozhraními, mezi nimiž vybere směr pro přenášený paket. Směrovač nezkoumá obsah paketu, pouze obsah záhlaví IP protokolu, neboť je v něm uložena IP adresa cílového zařízení. Směrování zahrnuje dvě základní aktivity: určení optimální přenosové cesty (tato funkce, někdy označovaná jako nepřímé směrování, je značně složitá a vyžaduje řešení v širokých souvislostech) a odeslání paketu do jedné z připojených sítí směrem k cílovému zařízení (tato funkce, zvaná přímé směrování, je implementována v příslušné síťové technologii). Dále se budeme zabývat prvním typem směrování, kdy směrovač určuje optimální cestu pro paket, jehož cílem je zařízení z jiné sítě, než je síť zdroje. Směrovač shromažďuje a zpracovává směrovací informace do směrovacích tabulek, pomocí nichž určuje přenosovou cestu pro procházející pakety. Směrovací tabulky statické jsou sestavovány manuálně a jejich používání je značně omezené. Směrovací tabulky dynamické vytvářejí funkce směrovače na základě směrovacích informací, které si navzájem rozesílají směrovače. Toto šíření směrovacích informacích probíhá pod tzv. směrovacími protokoly. Oblast, která zahrnuje sítě s jednotnou směrovací strategií (tj. používající dohodnutý typ směrovacího protokolu), se nazývá autonomní systém (AS). Každý autonomní systém má organizací NIC přiděleno 16bitové identifikační číslo. Směrovací protokoly používané pro šíření směrovacích informací uvnitř autonomního systému jsou interní směrovací protokoly. Mezi jednotlivými autonomními systémy probíhá výměna směrovacích informací za podpory externích směrovacích protokolů prostřednictvím určených směrovačů, zvaných externí hraniční směrovače. V tomto kontextu se Internet jeví jako vzájemné propojení mnoha autonomních systémů. Směrování v Internetu tedy probíhá na třech úrovních: 1. v rámci téže sítě pomocí interních směrovacích protokolů, 2. mezi sítěmi náležejících do téhož autonomního systému pomocí interních směrovacích protokolů, 3. mezi sítěmi, z nichž každá náleží do jiného autonomního systému, za podpory interních i externích směrovacích protokolů. Obecně jsou tedy směrovací protokoly rozděleny do dvou skupin: interní směrovací protokoly (IRP), k nimž patří například zatím nejvíce používaný protokol RIP (Routing Information Protocol), vhodný pro malé a střední sítě s jednodušší topologií, a velmi efektivní modernější protokol OSPF (Open Shortest Path First), na který zřejmě bude přecházet většina TCP/IP sítí, a externí směrovací protokoly (ERP), k nimž patří zejména protokol BGP (Border Gateway Protocol) považovaný za standardní externí protokol sítě Internet. Bezpečnost v síti Typy uživatelů: Běžný uživatel – má vytvořen svůj uživatelský adresář se všemi právy a má potřebná práva v adresáři mail, kde má zařízenou svou poštovní schránku a eventuelně uložen loginscript. K ostatním adresářům má práva základní. Operátor – má rozšířená práva pro správu tiskových front, printserveru a pro práci na konzole serveru. 36 Supervisor – správce celého systému, má nejvyšší možná práva. Odpovídá za správný chod síťového subsystému, vytváří nové uživatele a přiřazuje je do skupin, přiděluje přístupová práva uživatelům a skupinám, instaluje síťové aplikační programy a dbá na jejich funkčnost. Zabezpečení sítě proti neoprávněnému použití: 1. Proti připojování neoprávněného uživatele – uživatelův přístup je jištěn netriviálním heslem, které se má periodicky pozměňovat buď příkazem setpass nebo pomocí nabídkového programu syscon. Supervisor může určit časové omezení uživatelovy práce na síti, omezit přístup do sítě z určitých pracovních stanic, omezit počet současných připojení k jednomu účtu, úplně potlačit připojení k určitému účtu. 2. Proti neoprávněnému použití sdílených adresářů a souborů – přístupová práva uživatelů a skupin k adresářům a souborům jsou dána konjunkcí dědické masky práv a pověřovacích práv uživatele. Maska dědických práv jsou nejvyšší možná práva k danému souboru či adresáři. Druhy přístupových práv: • Supervisory – pro správce adresáře, neplatí omezení dědickou maskou. • Read – u adresářů povoluje otevřít a číst soubory v něm obsažené, u souborů povoluje je otevřít a číst. • Write – u adresářů povoluje otevřít a modifikovat soubory adresáře, u souboru povoluje modifikovat jeho obsah. • Create – u adresáře povoluje vytvářet v něm nové soubory a podadresáře, u souboru povoluje jeho obnovu po výmazu. • Erase – povoluje výmaz adresáře, u souboru jeho výmaz. • Modify – povoluje měnit atributy adresáře/souboru (ne obsah). • File scan – povoluje prohlížet obsah adresáře, u souboru jeho jméno, i když přístup do jeho adresáře nemá povolen. • Access control – povoluje měnit přístupová práva a dědičné masky, kromě práva Supervisory. Atributy adresářů a souborů umožňují zakázat kopírování, prohlížení, sdílení, výmaz a změnu jmen adresářů a souborů. Nastavuje je supervisor nebo uživatel s právem M k souboru nebo adresáři příkazem flag, eventuelně flagdir, nebo pomocí nabídkového programu filer (program firmy Novell NetWare). Ohrožené systémy Mezinárodní počítačová síť Internet je bezpochyby nejmocnějším komunikačním a prezentačním nástrojem současnosti. Pro mnohé uživatele jsou jeho služby dostupné bezplatně. Naprostá většina uživatelů přistupuje k síti Internet s úmyslem využívat jejich služeb korektně. Najdou se ale i takoví, jejichž úmysly čisté nejsou. Jsou to lidé, jejichž cílem je zneužívat možnosti, které jim přístup do celosvětové sítě dává. Tyto síťové záškodníky můžeme rozdělit do dvou kategorií: • Hackeři – vyspělí uživatelé, kteří své vědomosti využívají k akcím, které svým charakterem přesahují hranice síťové etiky. Své zásahy neprovádějí s úmyslem vzdálený systém poškodit, stane-li se tak, je to z jejich strany neúmyslné. • Crackeři – mnohem nebezpečnější uživatelé, jejichž cílem je poškození a často i totální destrukce vzdáleného systému. Jedná se o síťový vandalismus. Dobrý cracker dokáže po sobě stopy uklidit, a tak bývá těžko identifikovatelný. Hackeři a crackeři jsou velmi inteligentní lidé, mají ale mocného protivníka. Mnoho firem se zaměřilo na vývoj programů vytvářejících ochranný val proti síťovým útokům – tzv. firewalls (protipožární stěny), které pozastaví a zaznamenají každou podezřelou akci. Programy nebývají levné, ale investice se mnohonásobně vrátí. Prostředky pro zabezpečení síťového provozu obsahují a používají i nové verze základních operačních systémů. Pro důslednou ochranu to ale často není dostačující a je potřeba použít vhodný program typu firewall. 37 Okruh 12 – Počítačové sítě Principy a implementace elektronické pošty. Podpora vzdálených přístupů do mailboxů. Elektronická pošta – princip a implementace Elektronická pošta (e-mail) je jedou ze základních a nejstarších síťových služeb. Umožňuje zasílání textových zpráv i binárních souborů mezi uživateli sítě. Ve většině případů lze (i když s určitými omezeními) elektronické zprávy doručovat i mezi sítěmi různého typu. V současnosti již není tento problém aktuální, neboť síť Internet vytvořila nad všemi dalšími počítačovými sítěmi jednotící střechu, pod kterou platí společná základní pravidla síťové komunikace. Obr. 8: Princip elektronické pošty Elektronická pošta je podporována protokolem SMTP (Simple Mail Transfer Protocol), příslušejícím do aplikační vrstvy síťového modelu. V každé lokální síti pracuje jeden nebo několik serverů, které jsou pověřeny k přijímání zpráv určených lokálním uživatelům. Došlé zprávy jsou ukládány do uživatelských schránek – mailboxů. Tyto zprávy si pak jejich adresáti mohou prohlížet prostřednictvím svých klientských poštovních programů. Eletronická pošta patří mezi velmi spolehlivé síťové služby pracující na principu „store and forwardÿ. Znamená to, že není-li možno zprávu odeslat bezprostředně, poštovní server zprávu drží ve svých frontách a opakovaně se ji snaží doručit až do vyčerpání stanoveného časového limitu. Potom s příslušným komentářem zprávu vrátí odesílateli. Takový případ ale nastává velmi zřídka a bývá zapříčiněn dlouhodobějším technickým problémem na straně přijímacího serveru. Stanovený limit, po který se odesílající server pokouší předat zprávu přijímacímu, bývá zpravidla 3 dny. Mnohem častěji dochází k případům, kdy zprávy nemohou být doručeny z důvodu nesprávně zadané elektronické adresy příjemce. Ta má obecný tvar uživatel@doménové_jméno_stroje. Jestliže odesílatel napíše nesprávné uživatelské jméno příjemce, zpráva sice dojde na místo určení, ale přijímací server neví, do jaké schránky ji má uložit, a celou zásilku vrátí s oznámením User unknown. V případě, že uživatel uvede nesprávné doménové jméno poštovního serveru adresáta, odesílající (lokální) server nemůže navázat s přijímajícím serverem spojení a zásilku vrátí s oznámením Host unknown. S elektronickou poštou souvisí služba nazývaná Listserv nebo Mailing Lists, poskytující možnost vzájemné komunikace mezi účastníky diskusního fóra, založeného za účelem diskuse na určené téma. Diskusní příspěvky mohou být archivovány. Přihlášeným uživatelům docházejí příspěvky ostatních účastníků skupiny. Tímto způsobem vedené konference jsou stále častěji nahrazovány službou NetNews. Implementace v síti Unix – mail [přepínače] [uživatelská jména], standardní klient pro přijímání a odesílání zpráv. Klientských poštovních programů se na softwarovém trhu objevuje velký počet. Dostatečné množství programů tohoto typu patří také mezi programy volně šířitelné. Pro nejrůznější operační systémy jsou vyvinuty různé klientské programy pro elektronickou poštu. Většina z nich vytváří uživatelské rozhraní na systému nabídek – menu system s kontextovou nápovědou usnadňující uživateli práci. Systém elektronické pošty Internetu zahrnuje několik logických modulů. Nejvýznamnější z nich jsou: Mail Transfer Agent (MTA) – program typu mail server, který je provozován na počítači, jehož úkolem je zajišťovat poštovní transakce. Tento program sám nedoručuje zprávy do jednotlivých poštovních schránek, pouze zprávy přebírá a zjišťuje podle jejich obálek, zda jsou přijatelné (tj. zda jejich adresát má zřízen na počítači uživatelský účet). Převzaté zprávy předá modul MTA modulu MDA, který je ukládá do určených poštovních schránek. Typickým zástupcem programů typu MTA je sendmail, který velmi často používají servery pracující pod operačním systémem třídy Unix. 38 Mail Delivery Agent (MDA) – programový modul, který od modulu MTA přebírá zprávy a ukládá je do poštovních schránek adresátů nebo je předává pro konečné doručení dalšímu modulu MTA. Mail User Agent (MUA) – program, který zprostředkuje uživateli odeslání poštovní zprávy a vyzvednutí došlých zpráv z jeho poštovní schránky. Psaní a čtení zpráv bývá zpravidla součástí tohoto programu, nicméně se mohou tyto úkony provádět samostatně pomocí textového editoru. Skupině MUA dominuje program elm, který je stejně jako pine vhodný i pro použití v prostředí znakového nebo řádkového terminálu. Uživatelé počítačů s OS třídy Windows zpravidla používají MUA program Outlook Express. Mail Retrieval Agent (MRA) – uživatelský program nebo modul uživatelského programu, který zprostředkuje přístup do jeho poštovní schránky, umístěné na vzdáleném mail serveru. Modul MRA potom předá zprávy umístěné ve vzdálené schránce modulu MUA. Modul MTA Modul MTA zajistí, že poštovní zprávy určené k přenosu mají správný formát a že jsou odeslány směrem k adresátovi. Moduly MTA implementují protokol SMTP (Simple Message Transfer Protocol), pomocí něhož si předávají zprávy. Protokol SMTP je založen na principu klient–server. Modul MTA se stává SMTP klientem v případě, že má zprávu k odeslání a pokud je vyzýván jiným MTA k převzetí zprávy, stává se SMTP serverem. Součástí protokolu SMTP je připojení tzv. obálky ke zprávě. Obálka je tedy záležitostí MTA programu na rozdíl od tzv. záhlaví zprávy, které vzniká programem MUA již během vytváření zprávy. Informace nezbytné pro korektní doručení zprávy se do obálky vkládají automaticky programem MTA. Převzaté poštovní zprávy mohou být zpracovány několika způsoby v závislosti na adrese příjemce: • pokud jméno příjemce odpovídá označení jedné z existujících poštovních schránek – zpráva je předána modulu MDA, který zprávu do té schránky uloží, • pokud adresa příjemce je neplatná (například vlivem překlepu) – chybná zpráva je vrácena odesilateli, • pokud adresa příjemce je platná, ale není lokální – předá se zpráva dalšímu mail serveru, který může zajistit její doručení do adresátovy schránky. Možnost využívat službu elektronické pošty nevyžaduje vždy instalaci lokálního MTA modulu. Poštovní zprávy určené k odeslání mohou být předány prostřednictvím modulu MUA odesílatele (pomocí protokolu SMTP) do MTA modulu poskytovatele internetových služeb (ISP), který zprávu dále předá MTA modulu adresáta. Modul MDA Každý MTA modul spolupracuje s moduly MDA, které ukládají zprávy do příslušných poštovních schránek jednotlivých uživatelů. Poštovní schránky jsou součástí souborového systému počítače, který provozuje poštovní služby. MDA moduly jsou dvojího typu: • MDA moduly pro lokální doručování zpráv, které ukládají poštovní zprávy do lokálních schránek, • MDA moduly pro vzdálené doručování zpráv, které podle pokynů uložených v určitých konfiguračních souborech předávají poštovní zprávy dalším modulům MTA. Modul MUA Moduly MUA zprostředkují uživateli přímé čtení doručených poštovních zpráv uložených v lokální poštovní schránce a také odeslání nově vytvořené poštovní zprávy na uvedenou adresu. Pokud se jedná o poštovní schránku umístěnou na vzdáleném mail serveru, spolupracuje MUA modul s MRA modulem za pomoci protokolů POP nebo IMAP. Některé typy modulů MUA umožňují dále například: • filtrovat příchozí poštovní zprávy podle nastavených pravidel, • zjišťovat periodicky stav poštovní schránky a pokud přibyla nová zprávy, vygenerovat zvukový signál, • interpretovat netextový (tzv. MIME) obsah zprávy, nebo k ní připojených souborů (například zobrazit obsah typu image, nebo přehrát obsah typu audio), • odesílat odpověď na zpáteční adresu (tzv. reply), nebo přeposílat (tzv. forwarding), • připojit k odesílané zprávě soubory libovolného typu (text, HTML dokumenty apod.), • změnit základní aktuální nastavení elektronické poštovní služby (například změnit mail server, způsob zobrazení zprávy, typ použitého kódování odesílaných zpráv), • manipulovat s lokálními i vzdálenými poštovními schránkami, • vytvářet adresář elektronických adres. 39 Modul MRA Modul MRA umožňuje přístup ke zprávám uloženým na vzdáleném mail serveru a jejich doručení na lokální MUA modul na uživatelově počítači. Modul MRA má k disposici dva protokoly z protokolové sady TCP/IP. Jsou to: • protokol IMAP (Internet Message Access Protocol) – vysoce funkční protokol, který kromě přenosu zpráv ze vzdálené poštovní schránky umožňuje i přístup do dalších schránek, ve kterých uchovává uživatel již dříve přijaté zprávy, a rovněž například jenom prohlížení záhlaví zpráv, manipulaci se zprávami ve vzdálených schránkách atd. Jeho implementace jsou ovšem značně programátorsky náročné. • protokol POP3 (Post Office Protocol) – je oproti protokolu IMAP mnohem jednodušší a umožňuje pouze přenos zpráv ze vzdálené poštovní schránky do lokálního MUA modulu uživatele. U poskytovatelů internetových služeb je oblíben pro svou snadnou konfigurovatelnost a administraci. Simple Mail Transfer Protocol (SMTP) patří stejně jako FTP a TELNET k nejzákladnějším aplikačním protokolům protokolové sady TCP/IP. Protokol SMTP představuje základní výbavu operačního systému pro síťovou službu zvanou elektronická pošta. Zajišťuje mechanismus pro předávání poštovních zpráv mezi jednotlivými hostitelskými počítači na principu klient–server. V takové transakci je klientem počítač, který iniciuje relaci za účelem předání zprávy a serverem je počítač, který zprávu přebírá. Protokol SMTP dále umožňuje vytváření uživatelských poštovních skupin, odesílání přímých odpovědí na zprávu nebo její zaslání dalšímu adresátovi, tzv. forwarding. Protokol nespecifikuje vlastní způsob vytváření zprávy, avšak její formát musí odpovídat specifikaci dle dokumentu RFC822. Jakmile je zpráva odesílatelem napsána, protokol SMTP ji převezme a pomocí transportního protokolu TCP naváže spojení s hostitelským počítačem adresáta (příjemce). Během následné SMTP transakce je zpráva předána do počítače adresáta a tam je uložena do příslušné poštovní schránky (mailbox). Podle RFC822 se jeví poštovní zpráva jako obálka a obsah. Obálka obsahuje systémové informace nutné pro uskutečnění předání a převzetí zprávy. Obsah zprávy je objekt, který má být doručen příjemci. Standardní obsah zahrnuje tzv. záhlaví zprávy, které má pevně stanovený formát a libovolný vlastní obsah zprávy, tzv. tělo zprávy. Záhlaví tvoří určená klíčová slova následovaná příslušnými argumenty. Protokol SMTP byl původně určen pro doručování jednoduchých textových zpráv. V posledních letech stoupaly požadavky na možnost doručování zpráv, jejichž obsahem jsou různé datové formáty včetně hlasových, obrazových klipů a videoklipů. Takové požadavky splňuje poměrně nový standard, který je nadstavbou protokolu SMTP. Toto rozšíření představuje protokol MIME (Multipurpose Internet Mail Extension). Specifikace podle protokolu MIME rozšiřuje záhlaví poštovní zprávy o informace, které se vztahují k obsahu zprávy. Specifikace MIME zahrnuje pět definičních polí: • MIME-version – verze protokolu (má hodnotu 1.0), • Content-type – popisuje typ dat obsažených v těle zprávy (Text, Multipart, Message, Image, Video, Audio, Application), • Content-transfer-encoding – popisuje kódovací metodu použitou při přenosu dat (7bit, 8bit, binary, base64 apod.), • Content-id – jednoznačný identifikátor zprávy použitelný pro případný odkaz na zprávu, • Content-description – memo text popisující obsah objektu, který obsahuje tělo zprávy (je využitelný v případě, že tento objekt je nezobrazitelný, například audio data). Protokol MIME specifikují podrobně standardy RFC2045–RFC2049 a implementují jej všechny novější verze klientských poštovních aplikací a samozřejmě také implementace mail serverů. Podpora vzdálených přístupů do mailboxů POP protokol umožňuje uživateli stáhnout poštu z POP serveru. POP server je počítač se stálým internetovým spojením, zatímco klient se připojuje příležitostně. Existují verze POP, POP2, POP3 (RFC 1725), vzájemně nekompatibilní. Nelze posílat zprávy. POP lze chápat jako službu store-and-forward, IMAP jako vzdálený file server. IMAP (Interactive Mail Access Protocol) je sofistikovanější protokol pro přístup k e-mailu z lokálního serveru (POP3 pouze stahuje poštu na lokální počítač a neuchovává ji na serveru). Je to klient–server protokol, e-mail obdrží lokální internetový server. Umožňuje uživateli vytvářet složky na serveru, mazat zprávy, hledat určité části, atd. 40 Obr. 9: Princip vzdáleného přístupu k mailboxu Elektronická pošta a viry Pro minimalizaci nebezpečí nákazy virem přenášeným elektronickou poštou je potřeba dodržet zejména následující kroky: • nestěhovat zprávy na lokální stroj (typickým případem prohřešku je Outlook Express), • neotevírat automaticky přílohy, • používat transparentní software (spolehlivý a pravidelně aktualizovaný antivirus). 41 Okruh 13 – Databázové systémy Systémy řízení báze dat; logické modely dat. Dotazovací jazyky; DDL – definice datových struktur; DML – manipulace s daty, sdílený přístup, transakce. Systémy řízení báze dat Přenášení a využívání stejných údajů různými agendami vedlo k nutnosti vyrábět různé konverzní programy, které byly schopny data jedné agendy převádět do tvaru dat agendy jiné. Takový konvertor si lze představit jako další aplikaci, která však je schopna pracovat s více datovými strukturami. Přirozeně se tedy přišlo na to, že když se změní formát dat tak, aby se co nejvíce přiblížil potřebám většího počtu agend, odpadnou problémy s různými konverzemi. Současně s tím se ovšem ve všech agendách budou datové zdroje obsluhovat naprosto stejně, proto by bylo výhodné, aby základní manipulace se soubory byla realizována pouze jednou a sloužila současně všem agendám. Výsledkem těchto snah bylo soutředění všech dat do jednoho celku, tzv. báze dat, se kterou manipuluje specializovaný programový systém, tzv. systém řízení báze dat (SŘBD, DBMS – DataBase Management System). Celek tvořený bází dat a odpovídajícím systémem řízení dále budeme nazývat pojmem databázový systém. Další vývoj směřoval k tomu, že byly postupně rozvíjeny systémy řízení báze dat jako obecné programové moduly, které jsou vyráběny tak, aby byly použitelné v jakékoliv aplikaci a aby pracovaly s uloženými daty co nejobecněji a co nejefektivněji. Údaje uložené v bázi dat můžeme rozdělit na dvě skupiny: Entity – objekty reálného světa, které jsou schopny nezávislé existence a jsou jednoznačně odlišitelné od ostatních objektů. Vztahy – údaje o souvislostech mezi entitami. Atributy entit stejného datového typu a sémantického obsahu můžeme soustředit do pojmenované množiny – tzv. domény. SŘBD umožňuje realizovat tři základní funkce: 1. definici databáze, 2. konstrukci databáze (odebírání, přidávání), 3. manipulaci s databází. Často umožňuje i import struktur definovaných jinde. SŘBD nabízí několik typů jazyků – jazyk pro definici dat (DDL), jazyk pro manipulaci s daty (DML), dotazovací jazyky (DQL). Logické modely dat Rozlišujeme logický a fyzický pohled na data. Logický pohled je založen na aparátu nazvaném databázový model. V tomto pohledu rozlišujeme 3 modely: 1. Hierarchický model – vztahy mezi entitami jsou vyjádřeny implicitně, a to pozicí (nadřízenosti) ve stromu entit. Má-li entita ei vztah k několika jiným entitám f1 , . . . , fk , je entita ei uzlem stromu, z něhož vychází k následníků představujících uzly entit f1 , . . . , fk . Tento model se výborně hodí k implementaci takových údajů, které mají již samy ze své podstaty hierarchickou povahu – například systém klasifikace živočichů a rostlin. Všichni uživatelé počítačů se s principem hierarchického modelu setkávají při práci se souborovým systémem – všechny běžně používané operační systémy ukládají soubory do adresářů, které tvoří adresářový strom. Nadřízené a podřízené adresáře a soubory tedy tvoří heirarchickou strukturu. Údaje o jednotlivých souborech můžeme chápat jako entity, které jsou svázány s entitami představujícími adresáře. Strom entit modeluje typ vztahu 1 : N , pro model obecného vztahu M : N je potřebné vybudovat více stromů, v nichž se tytéž entity vyskytují na více místech. Tím vzniká poměrně značná redundance a snižuje se rychlost zpracování dotazů. Základní výhodou hierarchického systému je rychlé nalezení entit, které jsou podřízeny dané entitě. Naopak nalezení entity, která je dané entitě nadřízena, znamená sekvenční (a tudíž neefektivní) procházení celého stromu. Z toho důvodu jsou operace děleny na tzv. vhodné dotazy a nevhodné dotazy. Situaci můžeme demonstrovat na souborovém systému: zjištění, které soubory jsou obsaženy v adresáři X, je velmi efektivní – jedná se o vhodný dotaz, naopak zjištění, ve kterém adresáři leži soubor Y znamená procházení všech adresářů, v nichž se nachází soubor se jménem Y . Existuje-li předpoklad, že aplikace bude potřebovat vysoké procento vhodných dotazů, je hierarchický model velmi efektivní. Pro řešení nevhodných dotazů se někdy přistupuje k náhradním způsobům, například pro efektivní vyhledání pozice souboru na 42 disku si některé systémy budují pomocnou vyhledávací tabulku, v níž jsou pozice jednotlivých souborů explicitně zaznamenány a v níž je hledání podstatně rychlejší. 2. Síťový model – snaží se řešit hlavní nevýhody hierarchického modelu, tj. redundanci a existenci nevhodných dotazů. Vztahy mezi entitami jsou zde vyjádřeny explicitně, a to souborem záznamů, v nichž první prvek tvoří odkaz na entitu z jedné množiny a následující seznam představuje odkazy na entity druhé množiny. Jeden vztahový soubor realizuje typ vztahu 1 : N , obecný vztah typu M : N se řeší pomocí dvou vztahových souborů. Model zaručuje zcela minimální redunandanci, protože každá entita je v bázi pouze jedenkrát, vystupuje-li ve více vztazích, vede k ní více odkazů v různých vztahových souborech. Z toho ovšem plyne i základní nevýhoda – velmi obtížná modifikovatelnost. Například se změnou počtu entit (zejména ubírání) je nutné procházet všechny vztahové soubory a opravovat (rušit) odkazy. Síťový model byl pro svou implementační náročnost a složitost používán poměrně málo. 3. Relační model – je postaven na pevných matematických základech (relační algebra) a je teoreticky velmi dobře propracován. V současných implementacích postupně zcela vytlačil jiné modely a těžko lze předpokládat jeho ústup. Základním prvkem je relace. Tu lze implementovat množinovým zápisem, formou tabulky nebo formou záznamů. Nad relacemi se provádějí nejrůznější operace – množinové (sjednocení, průnik, rozdíl, doplněk relací), restrikce, projekce a spojení. Operace lze kombinovat. Dotazovací jazyky Dotazovací jazyky realizují výběr dat z databází. Někdy jsou samostatné, někdy součástí jazyka pro manipulaci s daty. V současnosti bývají zahrnuty v hostitelském jazyku (programovací jazyk, Oracle, Sybase). Často i více dotazovacích jazyků je pro jeden SŘBD, často možný i import externích struktur. Vlastnosti dotazovacího jazyka • měl by být konstruován tak, aby ke každému výrazu jazyka bylo možné přiřadit dotaz (omezenost), • abychom pomocí něho mohli vyjádřit jakýkoliv databázový dotaz (expresivita), • expresivita + omezenost = úplnost, • jazyky porovnáváme pomocí vyjadřovací síly – množiny dotazů, které lze vyjádřit. Typickým příkladem dotazovacího jazyku je SQL. Příkazy SQL můžeme rozčlenit do těchto skupin: 1. DDL (Data Definition Language) – příkazy pro definici dat, souhrnně se objekty definované příkazy DDL nazývají metadata, základními příkazy jsou create table, alter table a drop table, 2. DML (Data Manipulation Language) – příkazy pro manipulaci s daty, typické příkazy insert, update, delete, 3. DQL (Data Query Language) – příkazy pro dotazování (select). Transakce – částečně uspořádaná posloupnost databázových operací, která představuje logickou jednotku práce. Cílem transakčního zpracování je, aby transakce převedla databázi z jednoho konzistentního stavu do druhého. Transakční operace: • operace přístupu k datům, • operace pro práci s daty, • START – označuje začátek transakce, • COMMIT – označuje normální ukončení transakce, • ABORT – indikuje nenormální ukončení transakce, transakci je třeba anulovat, tj. musí být uvedena do stavu před transakcí (příkazem ROLLBACK v SQL). Problémem transakčního zpracování je rozvrhování operací několika souběžně běžících transakcí tak, aby výsledek byl smysluplný a například odpovídal nějakému provedení daných transakcí po sobě. Zamezení nekonzistence zajišťuje transakce, programová jednotka zabezpečující zachování konzistence tak, aby DB splňovala všechna IO. Transakce zachovává konzistenci DB, i když například v průběhu provádění transakce může být konzistence dočasně narušena, průběh transakce se ukládá do tzv. žurnálu. Transakce končí v konečném čase. Program – transakce se tedy provede celý nebo vůbec. Transakční operace mohou být dvou typů: read-only a aktualizační. Transakce se může dostat do jednoho z pěti stavů: 1. aktivní – od začátku provádění transakce, 2. částečně potvrzený – po provedení poslední operace transakce, 3. chybný – v normálním průběhu nelze pokračovat, 43 4. zrušený – po skončení ROLLBACK, 5. potvrzený – po úspěšném zakončení COMMIT. Transakce může být ukončena pouze zrušeným nebo potvrzeným stavem. Vlastnosti ACID pro transakce: • atomicita – transakce se tváří jako jeden celek, • konzistence – transformace DB mezi konzistentními stavy, • nezávislost – dílčí efekty transakce nejsou viditelné pro jiné transakce, zabraňuje dominovému efektu – kaskádovému rušení transakcí, • trvanlivost – efekty úspěšně ukončené transakce jsou uloženy do DB. Transakce je vhodnou jednotkou zpracování i pro paralelní přístup. SŘBD používají různá kritéria korektnosti pro zajištění paralelního zpracování. Silným omezením může být vzájemná výlučnost, kdy transakce nesmí být přerušena jinou transakcí. Chybnou transakcí nemí být ohroženy ostatní transakce. Řízení souběžného přístupu zajišťuje uživatelům, že vidí konzistentní stavy databáze bez ohledu na to, že SŘBD používá více uživatelů. Prvořadou funkcí SŘBD je proto zabezpečit zotavení z chyb bez význačných ztrát. Při paralelním přístupu nelze provádět transakce za sebou, nýbrž souběžně. Je však třeba docílit transparence paralelního zpracování, tj. očekává se, že DB zůstane opět konzistentní. Při plné transparenci se uživateli zdá, že pracuje se systémem sám, bez interference s ostatními uživateli. Důležitým pojmem pro paralelní zpracování je sériovost (uspořadatelnost). Sériové rozvrhy zachovávají operace každé transakce pohromadě. Pro n transakcí existuje n! sériových rozvrhů. Pro získání korektního výsledku však lze použít i rozvrh, kde jsou operace navzájem prokládány, efekt však musí odpovídat sériovému rozvrhu. Je třeba prokázat ekvivalenci rozvrhu a sériového rozvrhu, většina způsobů je založena na pojmu konflikt operací. Operace jsou konfliktní, jestliže výsledky jejich různého sériového volání nejsou ekvivalentní (například READ × WRITE), jinak jsou kompatibilní. Uspořadatelnost lze také zajistit pomocí protokolů (testování rozvrhů je časově náročné). Protokoly jsou založeny na dynamickém zamykání a odemykání objektů v DB. Zamykání (LOCK) chrání objekt před přístupem od ostatních transakcí. Architekturu SW pro transakční zpracování lze popsat pomocí tří modulů. Komunikaci s DB pomocí požadavků na čtení a zápis dat zajišťuje manažer dat. Zodpovídá za zotavení z chyb systému, tj. zajišťuje atomicitu vzhledem k chybám. Za řízení paralelního zpracování transakcí je zodpovědný modul – rozvrhovač, zajištuje transparenci paralelního zpracování. Komunikaci mezi rozvrhovačem a aplikačním programem zajišťuje manažer transakcí. Ten vyvolává transakci a posílá požadavky na data manažeru dat prostřednictvím rozvrhovače. transakční zpracování nemusí být součástí databázového SW, může patřit pod OS nebo realizováno samostatně. 44 Okruh 14 – Databázové systémy Návrh databáze; entitně-relační model, normální tvary, integrita databáze. Návrh databáze Existuje mnoho technik analýzy a návrhu IS, například De Marco, Yourdon, Gane, Sarson. Přístup obsahující metody a metodické postupy se nazývá metodologie, techniky se staly základem produktů CASE. Data i funkce lze formálně popsat. Objektově orientované metodologie umožňují těsněji vyjádřit popis objektů a funkcí v rámci jednoho formálního aparátu. V kontextu IS se sledují dvě cesty analýzy a návrhu: funkční a datová. Návrh datových struktur v IS spočívá ve vytváření hierarchie popisů schémat: 1. konceptuální schéma – popisuje objekty aplikace, 2. databázové schéma – převodem konceptuálního schématu do prostředí DB modelu, 3. realizace databázového schématu v prostředí komerčního SŘBD, 4. fyzická implementace databázového schématu. V prvním stadiu se nejdříve realizuje formulace a shromažďování uživatelských požadavků, identifikace a dokumentace dat získávaných a generovaných firmou. V této části návrhu se vynořují entity, které se dále rozpracovávají. Probíhá zde hrubá datová a funkční analýza. Dva algoritmy návrhu schématu relační databáze: shora dolů (dekompozice relačních schémat) a zdola nahoru (systéza relačních schémat). V obou případech jde o dekompozici univerzálního schématu relace (všechny atributy). V dekompozici se postupně provádí nahrazování jednoho schématu dvěma, ve druhém případě jde o vytváření schémat syntézou přímo z funkčních závislostí. Entitně-relační model Popis významu dat je obtížně formalizovatelný. Konceptuální modely, označované rovněž jako sémantické, řeší přesnější vyjádření vztahů ve světě objektů. Jsou pokusem umožnit vytvoření popisu dat v databázi, konceptuálního schématu, nezávisle na fyzickém uložení databáze. Tento popis by měl co nejvěrněji vystihovat koncetuální pohled člověka na danou oblast. U každého konceptuálního modelu se řeší tři komponenty – strukturální, manipulace dat, specifikace IO. Otázky manipulace dat bývají řešeny v rámci funkční analýzy a návrhu uživatelských programů aplikace. Principy konceptuálních modelů • orientace na objekty – myslí se v objektech, ne v identifikátorech, • funkcionální podstata vztahů – do modelů se zahrnuje pojem atributu, dále funkce jako jediný základní konstrukt, • ISA hierarchie – umožňuje se práce s podtypy a nadtypy, • hierarchický mechanismus pro konstrukci objektů z jiných objektů (agregace, skládání fcí, vytváření tříd, . . . ). Za první konceptuální model je považován entitně-relační model. Vyskytuje se v mnoha variantách. Je to množina pojmů, které nám pomáhají na konceptuální úrovni abstrakce popsat uživatelskou aplikaci za účelem následné specifikace struktury DB. Je vhodný pro návrh schématu DB při přístupu shora dolů. Projektant na základě seznámení s projektovanou realitou: 1. identifikuje typy entit jako třídy objektů stejného typu, 2. identifikuje typy vztahů, do kterých mohou entity vstupovat, 3. přiřadí typům entit a vztahů atributy popisující blíže jejich vlastnosti, 4. formuluje integritní omezení vyjadřující soulad schématu s modelovanou realitou. Entitně-relační modely jsou založeny na pojmech entita, vztah a atribut. Entita je jednoznačně rozlišitelný, identifikovatelný a samostatné existence schopný objekt z reálného světa. Vztah je vazba mezi dvěma nebo více entitami. Atribut je funkce přiřazující entitám nebo vztahům hodnoty popisného typu (jednoduchého datového typu). V atributech jsou obsaženy význačné vlastnosti entity či vztahu. Atribut může nabývat hodnot pouze z jisté množiny – domény atributu. Atribut, jehož hodnota slouží k identifikaci entity, se nazývá identifikační klíč (primární, cizí). Zápis konceptuálního schématu v entitně-relačním modelu: • lineární textový zápis, • diagram výskytů entit a vztahů, • diagram typů entit a vztahů. 45 Integritní omezení pro vztahy • kardinalita – 1 : 1, 1 : N , N : M , • členství ve vztahu – povinné, nepovinné. Slabý entitní typ má vždy povinné členství v identifikačním vztahu, závisí na identifikačním vlastníkovi. Klíč slabého entitního typu je složen i z atributů identifikačního vlastníka, vlastní klíčové atributy tvoří částečný klíč. Pro každý entitní typ lze u atributů určit tato IO: • typ atributu, • příznak, zda je atribut klíčový, • příznak, zda může mít prázdnou hodnotu, • příznak, zda musí mít unikátní hodnotu. Kombinace entitně-relačního diagramu a tabulek s popisem atributů tvoří konceptuální schéma. Entitněrelační model je nástroj nezávislý na použitém databázovém modelu. ISA hierarchie umožňuje definovat podtypy entitního typu. Více ISA vztahů tvoří ISA hierarchii. Typ entity, která je v hierarchii nižší, dědí atributy entity, která je v hierarchii vyšší. Konceptuální model nemusí být omezen na atomické atributy, ale může podporovat skupinové atributy, vícehodnotové atributy. Normální formy Za normální formu se vždy považuje nějaký pěkný tvar, se kterým se lépe pracuje. Tento tvar je jednoznačnější než jeho jiný ekvivalent. Normalizace vychází z požadavku efektivního uspořádání dat v paměti. Cílem je minimalizovat redundance při současném zachování integrity a konzistence databáze. Normální formy musí zaručit jednoznačnost a správnost odpovědí na dotazy. Proces normalizace znamená postupné rozložení původních nenormalizovaných tabulek do soustavy více menších tabulek tak, aby nedošlo ke ztrátě informací (bezztrátová dekompozice). Codd popsal první tři normální formy, do třetí formy existuje algoritmický přechod k vyšší formě. Důvody transformace datového modelu do vyšších normálních forem: • odstranění nežádoucích závislostí při vkládání, modifikaci a rušení relací, • vytvoření relačního modelu, který je pro uživatele i programátora jednodušší na pochopení, • snížení potřeby měnit strukturu DB při zavádění nových typů dat. Normální formy vycházejí z formálních matematických definic, neformálně je lze popsat takto: 1NF – hodnoty atributů jsou atomické. Například Doc. František Novák → Doc. | František | Novák. 2NF – požadavky 1NF a navíc každý neklíčový atribut popisuje to, co je identifikováno pouze daným klíčem (každý neklíčový atribut je úplně závislý na každém klíči). 3NF – požadavky 2NF a navíc každý neklíčový atribut závisí pouze na klíči a není pouze dalším popisem jiného neklíčového atributu (není tranzitivně závislý na žádném klíči relace, neklíčové atributy jsou navzájem nezávislé). V praxi to znamená vytvoření číselníků. Například Dodavatel 1 | Praha | Čechy → Dodavatel 1 | Praha + Praha | Čechy. 4NF – požadavky 3NF a navíc hodnoty dvou nebo více neklíčových atributů se nikdy nemapují na jiný neklíčový atribut. 5NF – požadavky 3NF a navíc hodnoty dvou nebo více neklíčových atributů se nikdy nemapují na jiný neklíčový atribut ani při realizaci operace spojení. Funkční závislost je definována mezi dvěma množinami atributů v rámci jednoho schématu relace, jde tedy o vztahy mezi daty. Mějme množiny atributů B, C je podmnožinou A. Pak C funkčně závisí na B, jestliže ke každé B-hodnotě existuje nejvýše jedna C-hodnota. Funkční závislosti platí obecně a databáze je jimi vymezena. Množina všech odvoditelných funkčních závislostí se nazývá uzávěr. Závislost, která má na pravé straně jeden atribut, nazýváme elementární funkční závislost. Schéma relace je ve 3NF, jestliže každý neklíčový atribu schématu není tranzitivně závislý na žádném klíči schématu. Schéma relace je v Boyce-Coddově normální formě (BCNF), jestliže pro každou netriviální závislost Y na X platí, že X obsahuje klíč schématu R. Schéma, které je v BCNF, je také ve 3NF (všechny neklíčové atributy jsou navzájem nezávislé a všechny klíče jsou nezávislé na klíčových atributech a úplně nezávislé navzájem). 46 Okruh 15 – Databázové systémy Vývoj databázových aplikací; prostředky pro tvorbu aplikací. Architektura klient–server, ODBC. Vývoj databázových aplikací Po návrhu datového modelu je potřebné implementovat příslušnou aplikaci ve vhodném systému, který svými vlastnostmi vyhovuje zadaným požadavkům. Od doby, kdy se začaly integrovat datové soubory do bází dat, byla vyvinuta řada systémů pro různé operační i technické zázemí. Jednotlivé prostředky rozdělíme do dvou kategorií podle účelu a výkonnosti. 1. Malé „stolníÿ systémy – první kategorii vyplňují programové systémy, které jsou svým pojetím určeny spíše jednomu uživateli, přičemž se nepředpokládá velké množství dat. Pracovní označení „stolní systémÿ tedy koresponduje s technickým vybavením „na stoleÿ – nejčastěji se jedná o osobní počítač. V poslední době se však výkony osobních počítačů a s nimi i příslušných programových systémů zvyšují natolik, že se hranice mezi oběma kategoriemi poněkud stírají. Typickým rysem stolního systému je také většinou plná otevřenost a přístupnost dat – to platí v plné míře pro systémy provozovanými například pod operačním systémem MS DOS. Vzhledem k tomu, že s těmito systémy přichází do styku většina uživatelů, všimneme si jejich vlastností podrobněji. Všechny stolní systémy jsou vybaveny funkcemi pro základní ovládání jednotlivých relací, a to jak interaktivními (pomocí tabulkové vizualizace relace), tak i pomocí jednoduchých příkazů. Jednotlivé ovládací jazyky jsou však vždy pevně spjaty s daným systémem. Z dalších služeb je možné zmínit systém vkládání a editace údajů relací pomocí nejrůznějších formulářových schémat a systém tvorby výstupních sestav včetně základního ovládání tiskových zařízení. Jedním z prvních systémů pracujících na osobním počítači byl systém dBase firmy Ashton Tate. Jeho základem byla relace zobrazená jako datová struktura v souboru, kde jednotlivé prvky relace tvořily samostatné záznamy. Soubor byl opatřen hlavičkou, v níž byla kromě jiných údajů definována struktura záznamů, tedy datové typy atributů a jejich pořadí. Tento typ souboru, známý pod zkratkou DBF (DataBase File) je použitelný pro uložení relací dosud, představuje jeden z nejrozšířenějších formátů, zpracovatelný řadou jiných aplikací. Na svou dobu měl systém dBase ohromující parametry a výkon – bylo možné zpracovávat soubory až velikosti 2 GB. Každý záznam mohl obsahovat až 128 položek, každá položka pak až 254 znaků. Současně bylo možné pracovat až s 10 relacemi a 10 dalšími soubory. Systémem indexací byl zrychlen přístup k datům, jejich vyhledávání i řazení čímž byly dosahovány přijatelné výkony i na poměrně málo výkonném technickém vybavení. Oproti teoretickému modelu však vykazovala tato implementace relací jednu podstatnou odlišnost – prvky bylo možné v jedné relaci libovolněkrát opakovat, čímž byl porušen množinový charakter relace. S tím byly spojeny i operace, které se odvolávaly na fyzické uložení záznamů a respektovaly jejich posloupnost v souboru. Stejný typ souboru používal i další systém s názvem FoxBase firmy Fox Software. Později se z něj vyvinul systém FoxPro a po pohlcení výrobce firmou Microsoft se dále vyvíjí pod názvem Visual FoxPro. Parametry byly oproti systému dBase dále zvýšeny a s postupujícími verzemi se začal poněkud odlišovat i formád DBF souboru. Pro aplikace vytvářené na osobních počítačích byl systém Fox velmi populárním vývojovým nástrojem a bylo v něm implementováno mnoho systémů. Jinou cestou se vydala firma Borland International a vytvořila systém Paradox. Odlišný datový formát a jiná technika ovládání relací byla i přes poměrně značnou výkonnost patrně příčinou malého rozšíření tohoto produktu. Relace byly implementovány sice podobně jako u systémů typu FoxBase, dBase, ale implicitně se s nimi pracovalo jako s množinami. Velmi výkonný systém interaktivního ovládání obsahoval i funkci „Query by exampleÿ, kterou bylo možno jednoduše zadat projekci a restrikční podmínky pouhým vizuálním výběrem sloupců tabulky a naznačením požadových hodnot atributů pro restrikci. Odlišným prvkem byla také existence tzv. pohledu – dočasná relace, která vznikla operacemi nad jinými relacemi (spojením, projekcí, restrikcí), s níž bylo možno pracovat podobně jako s relacemi ostatními, ale nebyla trvale ukládána na disk a byla modifikovatelná změnami hodnot v původních relacích. Posledním produktem, o němž se v oblasti stolních databázových systémů zmíníme, je Access, součást balíku Office firmy Microsoft. Je pochopitelné, že odráží dobu svého vzniku a implementuje všechny nejnovější technologie databázových systémů. Příznačnou metodou hrubé síly vytlačuje postupně všechny ostatní systémy z prostoru osobních počítačů, zvláště pak v posledních verzích, kdy je vřazen do základní sestavy MS Office. Implementované služby zahrnují základní práci s relacemi, formulaci dotazů, z nichž jsou vytvářeny pohledy, práci se vstupními zadávacími formuláři, výstupními sestavami a práci s makropříkazy, usnadňující rutinní činnosti. Zatímco v předchozích uvedených produktech pojem databáze představoval 47 vždy jen jeden soubor záznamů, zde se již pojem databáze užívá pro souhrn tabulek, dotazů, formulářů a podobně. Tento komplex je ukládán do souborů s rozšířením *.MDB. Systémy pro osobní počítače můžeme ještě doplnit o vývojové nástroje které umožňují vytvářet aplikace přistupující k nějaké bázi dat. Příkladem takového prostředí je systém Deplhi firmy Borland, jež umožňuje poměrně snadno vytvořit program, manipulující s daty v různých tvarech – od jednoduchých datových souborů typu DB nebo DBF až po velké databázové systémy. 2. Velké systémy – význačnými vlastnostmi velkých systémů jsou především řadově větší kapacity a rychlosti, daleko vyšší úroveň bezpečnosti dat, schopnost práce s více uživateli – implementace přístupových práv v několika hierarchických úrovních, komunikace prostřednictvím dotazovacího jazyka atd. Jádrem těchto systémů je tzv. databázový stroj (implementace SŘBD) komunikující s datovými soubory na jedné straně a s vnějším světem na straně druhé. Vzhledem k tomu, že tento programový systém poskytuje databázové služby na vzdálené stroje, často je nazýván také databázový server. Uživatel databázového stroje je pak v roli klienta, jež může být realizován nejrůznějšími prostředky. Komunikace mezi databázovým serverem a klientem se odehrává v dotazovacím jazyce. Klient posílá textové zprávy – příkazy, server reaguje rovněž textovými zprávami – odpověďmi. Textový tvar odpovědí je základní, i když se tvar odpovědí někdy rozšířuje o binární data (například uložené obrázky), která vyžadují na straně klienta zvláštní interpretační modul. Některé velké systémy umožňují práci v tzv. transakcích. Pod pojmem transakce zde rozumíme určitou posloupnost příkazů, jejichž činnost se realizuje pouze v dočasných datových strukturách, což umožňuje vrátit některé operace zpět. Teprve po úspěšném dokončení posledního příkazu a po uzavření transakce se veškerá data modifikují v originálních souborech. Transakční přístup také umožňuje zcela bezpečné sdílení dat z různých míst, protože zabraňuje situaci, kdy se současně provádí modifikace dat ze dvou nezávislých aplikací. Mezi velké systémy lze zařadit například Oracle, systém firmy Informix, Sybase, Interbase, Progres, mySQL, PostgreSQL. Architektura klient–server Distribuovaný databázový systém je nejčastějším případem logicky centralizovaného a fyzicky decentralizovanéhoo systému. Hlavními výhodami jsou zlepšení zpracování dat a jejich lepší přístupnost. Data jsou fyzicky distribuována v počítačové síti. Uživatelé k nim přistupují pomocí jednoho logického schématu, společného pro celý systém. Je-li některý z počítačů v síti nedostupný, lze data získat z jiného. Distribucí lze předcházet možnému výpadku celé sítě, který by nastal v případě havárie centrálního systému. Pro uživatele musí distribuovaný systém vypadat stejně jako nedistribuovaný. Uživatelé nesmí na první pohled rozpoznat, kde jsou data fyzicky uložena. Distribuovaný systém zahrnuje distribuované zpracování, distribuované komunikační prostedky, distribuovanou databázi a řídící funkce systému. Vhodné komunikační spojení představuje počítačová síť, dnes stále častěji založená na internetových technologiích. každý počítač je v distribuovaném systému samostatnou jednotkou a musí být při vykonávání svých funkcí nezávislý na centrálním systému a ostatních počítačích. Z důvodů výkonnosti celého systému by nejdříve měla být využívána lokální data a teprve poté by mělo výt učiněno navázání komunikace se vzdáleným systémem. S lokálními daty úzce souvisí vytváření replik, lokálních na původním zdroji nezávislých kopií dat. Změny v replikovaných datech musí být zaznamenány do původního datového zdroje a přeneseny do ostatních replik. Podle toho, které části databázového systému jsou distribuovány rozlišujeme distribuovaný SŘBD a distribuovanou databázi. Je-li několik databází spojeno dohromady, hovoříme o nepravé distribuci. V případě, že několik databází má společně organizovaná data, hovoříme o pravé distribuci. Podle toho, zda DBS obsahuje jednotné prostředí (typ SŘBD a databáze je ve všech uzlech shodný), označujeme takový systém jako homogenní, resp. heterogenní distribuovaný DBS. Distribuce dat přináší problémy s údržbou systému, je třeba zajistit konzistenci dat. Klient–server je zvláštním případem distribuovaného systému. V systému jsou některé počítače jako klienti a některé jako servery. Veškerá data systému jsou umístěna na serverech. Všechny aplikační programy jsou spouštěny na klientech. Je porušen požadavek kladený na distribuované systémy – počítače nejsou navzájem nezávislé. Uživatel pracuje na počítači typu klient, na kterém jsou nainstalovány aplikační programy. Ty komunikují s programy na serverech. Servery umožňují zpracovat najednou požadavky mnoha klientů. ODBC Každý produkt, který hovoří jazykem SQL, by měl být schopen se domluvit s jakýmkoliv jiným produktem, který rozumí SQL. Za použití stejného databázového jazyka byste měli být schopni vytvořit aplikaci, která 48 umí pracovat s daty v několika systémech pro správu relačních databází. Ačkoliv pro SQL existují standardy, většina softwarových společností implementovala do jazyka různé variace nebo rozšíření, kterými obsluhuje konkrétní funkce svých produktů. Bylo také poměrně dobře zavedeno několik produktů, vyvinutých ještě před vznikem těchto standardů, proto společnosti, které vytvářejí tyto produkty, vyvinuly svoji vlastní syntaxi SQL, která se liší od přijatého standardu. SQL výraz, určený k provedení Microsoft SQL Serverem, bude možná před provedením jinými databázemi, které podporují SQL, jako jsou například DB2 nebo Oracle, vyžadovat modifikace. Pro vyřešení tohoto problému před několika lety skupina vlivných HW a SW společností vytvořila skupinu SQL Access Group. Úkolem této skupiny bylo definovat společnou základní implementaci SQL, kterou by produkty jejích členů mohly používat ke vzájemnému domluvení. Tyto společnosti společně vyvinuly rozhraní Common Language Interface pro všechny hlavní varianty SQL a zavázaly se zabudovat podporu pro CLI do všech svých produktů. Mezitím Microsoft formalizoval CLI pro pracovní stanice a oznámil, že produkty Microsoftu by měly používat toto rozhraní pro přístup k SQL databázím. Microsoft nazývá toto formalizované rozhraní standard Open Database Connectivity (ODBC). Ekonomická informatika – vypracované okruhy ke SBZ Autoři: Aleš Běloušek, Pavel Haluza ([email protected]), Marek Čačka ([email protected]) Korektury: Naděžda Chalupová ([email protected]) Sazba: Pavel Haluza Poslední aktualizace: 28. června 2004
Podobné dokumenty
Jiná verze vypracování, od kolegy z PZA
X36PZA - vypracované otázky [verze 2]
1 V/V brána
1.1 jako prostředek k připojení periferního zařízení: její realizace;
1.2 OC a 3S výstupy, příklady signálů vhodných pro OC a 3S inplementaci
1.2.1...
Hardware PC + úvod do OS
jednotlivých modulů jsou naopak zasílány zpět řadiči pomocí stavových hlášení.
4. Vstupní zařízení - zařízení určená pro vstup programu a dat.
5. Výstupní zařízení - zařízení určená pro výstup výsl...
Diplomová práce
podmínek. Oproti tomu podmínky, které musí být v každém řešení splněny, jsou
označovány jako silné (hard). Použití slabých podmínek je jednou z možností
vyjádření určitých preferencí, které by mělo...
Informace pro uživatele počítačů na UTEE
analýzy, která nedetekuje viry podle určitých posloupností kódu (jak to dělá většina antivirů),
ale sleduje jejich typické projevy. Proto je AVG schopen odhalit i viry dosud neznámé.
Po celou dobu ...
Sborník příspěvků
Je tomu již několik let, co oborem počítačových sítí začal rezonovat termín „Software defined networks (SDN). Ten představuje přesně takový koncept, jaký
naznačuje jeho doslovný překlad, tedy příst...