Distribuovaný systém je takový systém propojení množiny nezávislých počítačů, který poskytuje uživateli dojem jednotného systému.



Podobné dokumenty
OPS Paralelní systémy, seznam pojmů, klasifikace

Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací.

Procesy a vlákna (Processes and Threads)

Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek

VYSOKÁ ŠKOLA BÁŇSKÁ TECHNICKÁ UNIVERZITA OSTRAVA FAKULTA STROJNÍ DATABÁZOVÉ SYSTÉMY ARCHITEKTURA DATABÁZOVÝCH SYSTÉMŮ. Ing. Lukáš OTTE, Ph.D.

OPERAČNÍ SYSTÉMY. Operační systém je prostředník mezi hardwarem (technickým vybavením počítače) a určitým programem, který uživatel používá.

Operační systémy: funkce

Principy operačních systémů. Lekce 1: Úvod

Operační systémy. Přednáška 1: Úvod

Principy operačních systémů. Lekce 7: Obrana proti deadlocku

VÝUKOVÝ MATERIÁL. 3. ročník učebního oboru Elektrikář Přílohy. bez příloh. Identifikační údaje školy

Principy operačních systémů. Lekce 5: Multiprogramming a multitasking, vlákna

MASSIV. Middleware pro tvorbu online her

Systémy pro sběr a přenos dat

Stavba operačního systému

Wonderware Historian 10.0

Management procesu I Mgr. Josef Horálek

Paralelní výpočty ve finančnictví

Pokročilé architektury počítačů

monolitická vrstvená virtuální počítač / stroj modulární struktura Klient server struktura

Vrstvy programového vybavení Klasifikace Systémové prostředky, ostatní SW Pořizování Využití

Wonderware Historian. Příklady vícevrstvých architektur. Jiří Nikl, Tomáš Mandys Pantek (CS) s.r.o.

LINUX - INSTALACE & KONFIGURACE

Replikace je proces kopírování a udržování databázových objektů, které tvoří distribuovaný databázový systém. Změny aplikované na jednu část jsou

MARIE PACS S PACSem hezky od podlahy když se data sypou!

Dílčí projekt: Systém projektování textilních struktur 1.etapa: tvorba systému projektování vlákno - příze - tkanina

Disková pole (RAID) 1

konec šedesátých let vyvinut ze systému Multics původní účel systém pro zpracování textů autoři: Ken Thompson a Denis Ritchie systém pojmnoval Brian

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Profilová část maturitní zkoušky 2014/2015

MS WINDOWS I. řada operačních systémů firmy Microsoft *1985 -? Historie. Práce ve Windows XP. Architektura. Instalace. Spouštění

Real Time programování v LabView. Ing. Martin Bušek, Ph.D.

Ukázka zkouškové písemka OSY

Windows Server 2003 Active Directory

Poslední aktualizace: 27. února 2008

Disková pole (RAID) 1

Profilová část maturitní zkoušky 2017/2018

SÁM O SOBĚ DOKÁŽE POČÍTAČ DĚLAT JEN O MÁLO VÍC NEŽ TO, ŽE PO ZAPNUTÍ, PODOBNĚ JAKO KOJENEC PO PROBUZENÍ, CHCE JÍST.

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

IT ESS II. 1. Operating Systém Fundamentals

Vzdálený přístup k počítačům

Přednáška. Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Paralelní programování

Databázové systémy. Doc.Ing.Miloš Koch,CSc.

VÝPOČETNĚ NÁROČNÉ APLIKACE S VYUŽITÍM VIRTUALIZACE PRACOVNÍCH STANIC NA BÁZI INTEGRACE TECHNOLOGIÍ MICROSOFT VDI A SUN RAY

Data Protection Delivery Center, s. r. o. JEDNODUCHOST, SPOLEHLIVOST a VÝKONNOST. DPDC Protection. zálohování dat

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

Profilová část maturitní zkoušky 2015/2016

PB169 Operační systémy a sítě

SOFTWARE A POČÍTAČOVÉ SÍTĚ. Alice Nguyenová

Co je počítačová síť?

PRINCIPY OPERAČNÍCH SYSTÉMŮ

Geografické informační systémy ArcGIS Pavel Juška (jus011) 4. března 2010, Ostrava

Aplikace je program určený pro uživatele. Aplikaci je možné rozdělit na části:

Zabezpečení v síti IP

Výukový materiál zpracovaný v rámci projektu. Základní škola Sokolov, Běžecká 2055 pracoviště Boženy Němcové 1784

Profilová část maturitní zkoušky 2013/2014

Software programové vybavení. 1. část

PRODEJ Prodej je pochopitelně základní funkcí pokladního systému. Systému MERCATOR umožňuje prodej realizovat ve 3 režimech:

Hospodářská informatika

Programové vybavení OKsmart pro využití čipových karet

InTouch Příklady architektur

Operační systémy. Jednoduché stránkování. Virtuální paměť. Příklad: jednoduché stránkování. Virtuální paměť se stránkování. Memory Management Unit

Implementace systémů HIPS: ve znamení 64bitových platforem. Martin Dráb

Operační systémy. Přednáška 2: Procesy a vlákna

Zablokování (Deadlock) Mgr. Josef Horálek

Architektura a koncepce OS OS a HW (archos_hw) Architektura a koncepce OS Jádro OS (archos_kernel) Architektura a koncepce OS Typy OS (archos_typy)

Jak být online a ušetřit? Ing. Ondřej Helar

Maturitní okruhy pro 1.KŠPA Kladno, s.r.o. Počítačové sítě a komunikace

úvod Historie operačních systémů

IBM Informix 11.7 Edice

Co je Symantec pcanywhere 12.0? Hlavní výhody Snadné a bezpečné vzdálené připojení Hodnota Důvěra

Masarykova střední škola zemědělská a Vyšší odborná škola, Opava, příspěvková organizace

Virtualizace. Lukáš Krahulec, KRA556

architektura mostů severní / jižní most (angl. north / south bridge) 1. Čipové sady s architekturou severního / jižního mostu

Architektura počítače

FIREBIRD relační databázový systém. Tomáš Svoboda

POČÍTAČOVÉ SÍTĚ ZÁKLADNÍ INFORMACE

Operační systémy (OS)

Implementace systémů HIPS: historie a současnost. Martin Dráb

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Logická organizace paměti Josef Horálek

Řízení IO přenosů DMA řadičem

Obsah. Kapitola 1 Hardware, procesory a vlákna Prohlídka útrob počítače...20 Motivace pro vícejádrové procesory...21

SADA VY_32_INOVACE_PP1

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

1 Úvod 1.1 Vlastnosti programového vybavení (SW)

9. Sítě MS Windows. Distribuce Windows. Obchodní označení. Jednoduchý OS pro osobní počítače, pouze FAT, základní podpora peer to peer sítí,

METACentrum Český národní gridovýprojekt. Projekt METACentrum. Jan Kmuníček ÚVT MU & CESNET. meta.cesnet.cz

Počítač jako prostředek řízení. Struktura a organizace počítače

Komunikace mezi uživateli: možnost posílání dat na velké vzdálenosti

Témata profilové maturitní zkoušky

Činnost počítače po zapnutí

EMBARCADERO TECHNOLOGIES. Jak na BYOD chytře? Možnosti zapojování různých mobilních zařízení do podnikových informačních systémů.

Adaptabilní systém pro zvýšení rychlosti a spolehlivosti přenosu dat v přenosové síti

SÁM O SOBĚ DOKÁŽE POČÍTAČ DĚLAT JEN O MÁLO VÍC NEŽ TO, ŽE PO ZAPNUTÍ, PODOBNĚ JAKO KOJENEC PO PROBUZENÍ, CHCE

09. Memory management. ZOS 2006, L.Pešička

Inovace výuky prostřednictvím šablon pro SŠ

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Transkript:

1. B4. Počítačové sítě a decentralizované systémy Jakub MÍŠA (2006) Decentralizace a distribuovanost v architekturách počítačových sítí. Centralizovaná a distribuovaná správa prostředků, bezpečnostní politika a ochrana dat. Síťové a distribuované operační systémy. Decentralizace a distribuovanost Obecně dělíme systémy na centralizované, decentralizované a distribuované: Centralizované zpracování probíhá jenom v jednom uzlu systému nebo v přístupovém místě. Centralizovány jsou i technické prostředky (procesy, paměť), data, řízení i aplikační funkce. Decentralizované systémy splňují sice podmínku distribuce zpracovatelských kapacit, dat a funkcí, ale chybí zde distribuce řízení a zajištění transparentnosti. Decentralizované zpracování zahrnuje uzly, sítě, které jsou integrované prostřednictvím nějakého média. Distribuované systémy jsou systémy rozložené na více uzlů (uživateli se jeví jako jeden celek). Distribuovány jsou technické prostředky, data, řízení, funkce a logika zpracování. Distribuovaný výpočet, u kterého se na cílovém řešení zadané úlohy podílí více procesorů schopných provádět výpočet na rozdělených datech souběžně, se stává velice častým řešením pro řadu aplikací. Distribuované systémy Rozvoj technologií umožnil vzájemné propojení velkého počtu počítačů do síťových nebo distribuovaných systémů, které umožňují sdílet jednotlivým počítačům (uzlům) dostupné prostředky, vzájemně komunikovat a spolupracovat na čemkoliv, co se uživatelům těchto systémů zdá smysluplné. Distribuovaný systém je takový systém propojení množiny nezávislých počítačů, který poskytuje uživateli dojem jednotného systému. Na této definici jsou podstatné dva aspekty. Prvním je hardwarová nezávislost jednotlivé uzly jsou tvořeny zcela nezávislými počítači s vlastní výpočetní jednotkou (jedním nebo několika procesory) a pamětí. Jedinou možností komunikace s ostatními uzly systému je přes komunikační (typicky síťové) rozhraní. Druhý aspektem je dojem jednotného systému uživatel (ať již skutečný člověk nebo nějaká vyšší softwarová vrstva) komunikují se systémem jako s celkem, nemusí se starat o počet uzlů, topologii propojení, komunikaci apod. Pojmem distribuovaný systém lze označit celou škálu různých řešení, od multiprocesorů umístěných na jedné základové desce až po celosvětový systém pro miliony uživatelů. Vlastnosti distribuovaných systémů Pravděpodobně nejdůležitější podmínkou dosažení iluze jednotného systému je transparentnost. Té může být dosaženo ve dvou úrovních na úrovni komunikace s uživatelem nebo na úrovni komunikace procesů s jádrem systému. Transparentnost Přístupová Lokační Migrační Exekuční Replikační Perzistentní Konkurenční Paralelismová Význam Proces má stejný přístup k lokálním i vzdáleným prostředkům Uživatel (proces) nemůže říci, kde jsou jednotlivé prostředky umístěny Prostředky se mohou přemisťovat mezi jednotlivými uzly Procesy mohou běžet na libovolném uzlu zapojeném do systému Uživatel se nemusí starat o to, kolik kopií daného objektu existuje a jakým způsobem jsou objekty aktualizovány Uživatel se nemusí starat o stav objektů, ke kterým přistupuje Prostředky mohou být automaticky využívány více uživateli zároveň Různé činnosti mohou být prováděny paralelně bez vědomí uživatele 1/5

Další klíčovou podmínkou dobře fungujícího distribuovaného systému je přizpůsobivost a otevřenost. Vzhledem k tomu, že distribuovaný systém běží na mnohem složitější struktuře hardwaru než klasické operační systémy, měl by být daleko méně citlivý na změnu prostředí. Přizpůsobivost může být opět vztažena na několik oblastí distribuovaných systémů. Vlastnost Autonomie Decentralizované rozhodování Otevřenost Migrace prostředků a procesů Význam Každý uzel je schopný samostatné funkčnosti Každý uzel vykonává rozhodnutí nezávisle na ostatních Lze zapojit různé komponenty vyhovující rozhraní Procesy i prostředky mohou být přemístěny na jiný uzel Výhody a nevýhody: + možnost dosažení daleko vyššího výkonu než u jednoho počítače + spojení původních distribuovaných systémů do jednoho celku + spolehlivost výpadek jedné části neohrozí funkčnost celého systému + rozšiřitelnost + sdílení společných dat a prvků málo dostupného softwaru spojení po síti, možné výpadky obtížnější řešení bezpečnosti Rozdělení distribuovaných systémů Distribuované systémy můžeme rozdělit na distribuované operační systémy a distribuované systémy na uživatelské úrovni (distribuované, distribuovaná výpočetní či vývojová prostředí apod.). Počítače s distribuovaným operačním systémem používají jako svůj základní software operační systém vyvinutý speciálně pro potřeby distribuovaných systémů. Sám operační systém poskytuje vyšším softwarovým vrstvám i uživatelům dojem jednotného systému, podporu distribuovanosti, komunikaci mezi jednotlivými entitami systému, synchronizaci apod. je kompletně součástí operačního systému. Jakýkoliv software běžící nad těmito systémy pak může transparentně využívat těchto distribuovaných služeb, z tohoto pohledu neexistuje rozdíl mezi lokální a distribuovanou aplikací. Druhá třída distribuovaných systémů (na rozdíl od distribuovaných OS nemá jednotné označení) naopak používá jako základní software libovolný lokální (nedistribuovaný) operační systém (Linux, Windows,...), nad kterým je vytvořena softwarová vrstva, která služby operačního systému rozšiřuje na distribuované prostředí a přidává další služby potřebné speciálně pro distribuované. Tato softwarová mezivrstva je někdy nazývána middleware. Distribuovaná Distribuovaná Distribuovaná mezivrstva (middleware) Distribuovaný operační systém (Linux) (Win XP) (Solaris) síť síť Při použití této softwarové architektury mohou běžet na jednom počítači zároveň jak běžné lokální využívající pouze služeb operačního systému, tak i distribuované využívající služeb operačního systému a distribuované mezivrstvy. 2/5

Síťové a distribuované operační systémy AMOEBA Hlavním cílem bylo postavit rozsáhlý systém, který je co nejjednodušeji ovladatelný. Přesným opakem síťového OS, kdy má každý stroj svou identitu, přihlašuje se k PC, má na PC svá data, atd. U Amoeby uživatel ví o jednotlivých strojích, ale vystupuje jako jediný velmi výkonný počítač Uživatel se loguje do Amoeby, ne k jednotlivému počítači, spustí úlohu a systém ji automaticky distribuuje na vhodný počítač Uživatel neví o přesunech souborů, procesů Jednotlivé části mohou být rozmístěny i v několika zemích Stavba: Pole souborových serverů Pole procesových serverů Spojeno bránami, které umožňuje zapojení různých platforem a stanic v různých zemích Objektově založený systém Uživatel má svá práva, která mu umožňují pracovat s jistými objekty (procesy, soubory, ) Souborový server: Nízká cena pamětí a disků dovolila obrovské kapacity Postaveno nejčastěji na systému UNIX, ale i dalších Procesy starající se o real-time defragmentaci Operace read_file, create_file. Při změně souboru systém musí soubor přečíst, v paměti provést změny a pak zapsat nový soubor Procesový server: UNIX, standardní procesy Funkčnost: žádost / odpověď, výměna dat Procesy: Proces složen z vláken běžících paralelně, vlákna jednoho procesu mají stejný adresový prostor, ale každé v něm má svá vlastní data. Chorus objektový systém založený na velké rozsáhlosti a vysoké bezpečnosti, UNIX Uživatelé mají na výběr z několika jazyků, ve kterých mohou psát programy (C, C++, Java) Struktura: soubor počítačů spojených sítí, jednotlivé počítače se i se svými periferiemi nazývají strany Princip chování: Na jednotlivých stranách běží samostatné procesy. Ty jsou rozděleny do menších funkčních celků aktorů. Aktor má svůj privátní paměťový prostor pro běh svého kódu. Aktor může být složen z několika paralelně běžících vláken. Aktory si mezi sebou vyměňují zprávy pomocí komunikačních kanálů nazývaných porty. 3/5

Mach inspirovaný / podobný běžným distrubuovaným OS, ale doplněný o většinu vlastností, které běžné DOS postrádají 3 podmínky vzniku (aby na něm běžely UNIXovské běží na UNIXu, podpora paralelních a distribuovaných výpočtů, jednoduchá modifikace díky jednoduchému kernelu) pokročilá správa paměti navíc přístupová práva (místní/vzdálený přístup do paměti) jádro systému je postaveno s maximální jednoduchostí, přenos dat je zajišťován pouze pomocí procesů, většina funkcí se přesouvá na uživatelskou úroveň (jednotlivé uživatelské procesy) Procesy: jedno, či více vláken, má svůj adresový prostor, nikam jinam nemůže, oproti ostatním systémům, proces nemá instruction pointer, ani žádné registry Zprávy: každá zpráva má svou hlavičku (typ zprávy, délka těla, ) o dané velikosti, a samotné tělo zprávy. Velikost definovaná v hlavičce. Pro správnou funkci posílání zpráv v Machu běží proces pojmenovaný NetMsg, který se stará o přípravu zprávy k odeslání, výběr hostitele, odeslání, přijetí zprávy Centralizovaná a distribuovaná správa prostředků Prostředkem rozumíme jakoukoliv relativně stabilní HW nebo SW část systému využitelnou uživateli, resp. jejich procesy. Prostředky dělíme na: fyzické (permanentní části systému procesor, paměť, disky, I/O zařízení, apod.) logické (softwarové entity procesy, soubory, data, apod.) V distribuovaných systémech jsou prostředky fyzicky decentralizované, stavová informace je rozprostřena mezi jednotlivými uzly. Některé prostředky mohou být také z důvodu vyššího výkonu systému replikovány na více uzlech. To vše má za následek vyšší režii správy prostředků v distribuovaných systémech oproti centralizovaným systémům. Prostředky jsou většinou pasivní, jsou spravovány servery správci prostředků. Správce prostředků má za úkol: udržovat spravované prostředky lokaci, konzistenci, atd. přidělovat prostředky uživatelským procesům na jejich žádost dbát o ochranu prostředků před nepovolaným zásahem Proces Proces Proces Proces Proces Proces Správce prostředků Centralizovaná správa prostředků Distribuovaná správa prostředků 4/5

Zablokování (deadlock) v distribuovaných systémech je podobný problém jako v centralizovaných systémech; ba ještě větší. Hůře se jim předchází, hůře se odstraňují, hůře se dokonce i detekují, protože potřebná informace je rozprostřena mezi několika počítači. V literatuře jsou někdy rozlišeny dva druhy deadlocků komunikační deadlock a deadlock prostředků. Komunikační deadlock nastává např. v případě, že proces A vyšle zprávu procesu B a čeká na odpověď, B pošle zprávu procesu C a C pošle zprávu zpět procesu A. Protože však proces A čeká na odpověď od procesu B, zprávu od procesu C nepřijímá, tudíž všechny procesy jsou zablokovány. Vzhledem k tomu, že oba druhy deadlocků mají stejné chování a navíc procesy lze považovat za speciální druh prostředků, nebudeme dále tyto dva druhy rozlišovat. Podobně jako v klasických nedistribuovaných systémech je i v distribuovaných systémech nejpopulárnější a nejpoužívanější tzv. pštrosí algoritmus, tj. problém ignorovat a případné řešení deadlocků nechat na uživateli, resp. na uživatelské aplikaci (např. databáze), která si vše hlídá sama. Dalšími způsoby vypořádání se s deadlocky jsou detekce a zotavení (vznik deadlocků je připuštěn, po jeho zjištění je řešen násilím) nebo prevence (vznik deadlocků je vyloučen). Prevence deadlocků v distribuovaném systému je založena na stejném principu jako u centralizovaných systémů - vytvořit takový systém alokace a držení prostředků, aby k deadlockům vůbec nemohlo dojít. První použitelnou metodou (alespoň v některých systémech) je jednoznačné uspořádání všech prostředků. Každý proces potom může alokovat prostředky pouze v rostoucí posloupnosti, tj. mohou být alokovány pouze ty prostředky, které jsou v daném uspořádání ohodnoceny výše, nežli všechny dosud naalokované prostředky daného procesu. Tímto způsobem nemohou vznikat cykly, tedy ani deadlocky. Další dva způsoby prevence deadlocků jsou založeny na tom, že každé transakci je při startu přidělena jednoznačná časová značka. V okamžiku alokace prostředku drženého jinou transakcí jsou porovnány časové značky obou transakcí. Zablokování je povoleno pouze starší transakci (tj. s menší časovou značkou), mladší transakce je zrušena. Potom budou zřetězeny transakce s rostoucí časovou značkou, nemůže tudíž dojít k deadlocku. Tento algoritmus bývá často nazýván wait-die (starší čeká, mladší umře). Druhým způsobem řešení konfliktu je ukončení transakce, která drží konfliktní. V případě, že drží starší transakce, mladší transakce čeká, v případě že drží mladší transakce, je tato ukončena a je přidělen starší transakci. Ochrana dat replikace Distribuované souborové systémy často umožňují replikaci souborů, tj. udržování více kopií všech nebo jen některých souborů na více fileserverech. To má několik dobrých důvodů: spolehlivost při výpadku jednoho serveru nejsou ztracena data dostupnost k souborům lze přistupovat i v případě výpadku jednoho nebo několika serverů výkon lze přistupovat k nejbližším datům, výkon fileserveru je rozdělen mezi několik serverů Rozlišujeme několik druhů replikačních mechanismů: explicitní replikace uživatel se sám stará o udržování konzistence odložená replikace zápis do primární repliky, aktualizace sekundárních replik později skupinová replikace zápisy jsou simultánně zasílány všem dostupným replikám explicitní replikace odložená replikace skupinová replikace 5/5