Distribuované algoritmy



Podobné dokumenty
Výzva pro předložení nabídek k veřejné zakázce malého rozsahu s názvem Výměna lina

Databázovéa informačnísystémy NÁVRH IMPLEMENTACE 2 KONZISTENCE DATABÁZE

Operační systém z hlediska procesu Mgr. Josef Horálek

řádově různě rostoucí rostou řádově stejně rychle dvě funkce faktor izomorfismus neorientovaných grafů souvislý graf souvislost komponenta

OBEC PERNINK Obecně závazná vyhláška č. 1/2013, o místních poplatcích ČÁST I. ZÁKLADNÍ USTANOVENÍ

Věc: Výzva pro předložení nabídek k veřejné zakázce s názvem: VÚ a ŠJ PŠOV, Nákup nového osmimístného vozidla

VÁŠ DOPIS ZN.: PŘIJATO DNE:

Knihovní řád. Středisko vědeckých informací Vysoké školy zdravotnické, o. p. s. Duškova 7, Praha 5

Město Frenštát pod Radhoštěm. OZV o místních poplatcích

MANDÁTNÍ SMLOUVA NA POSKYTOVÁNÍ PRÁVNÍCH SLUŽEB SOUVISEJÍCÍCH S PRODEJEM JEDNOTEK AAU

Obnova zámeckých alejí ve městě Vimperk

Obecně závazná vyhláška Města Březnice, o místních poplatcích č. 1/2012 ČÁST I. ZÁKLADNÍ USTANOVENÍ

Směrnice pro zadávání veřejných zakázek malého rozsahu města Poděbrady

VYHLÁŠKA ČÁST PRVNÍ STÁTNÍ ZKOUŠKY Z GRAFICKÝCH DISCIPLÍN. Předmět úpravy

METODICKÝ POKYN NÁRODNÍHO ORGÁNU

CENY ZA POUŽITÍ ŽELEZNIČNÍ DOPRAVNÍ CESTY VE VLASTNICTVÍ ČESKÉ REPUBLIKY A PODMÍNKY JEJICH UPLATNĚNÍ OD DO

Česká Republika Státní oblastní archiv v Zámrsku Státní okresní archiv Rychnov nad Kněžnou, Kolowratská 862, Rychnov nad Kněžnou

Miroslav Čepek

PROGRAM PRO POSKYTOVÁNÍ DOTACÍ Z ROZPOČTU KARLOVARSKÉHO KRAJE ODBORU KULTURY, PAMÁTKOVÉ PÉČE, LÁZEŇSTVÍ A CESTOVNÍHO RUCHU

58/2016 Sb. VYHLÁKA ČÁST PRVNÍ STÁTNÍ ZKOUKY Z GRAFICKÝCH DISCIPLÍN

Provoz a poruchy topných kabelů

Ovoce do škol Příručka pro žadatele

Školní kolo soutěže Mladý programátor 2016, kategorie A, B

Město Rožnov pod Radhoštěm

KNIHOVNÍ ŘÁD Knihovny farnosti sv. Jakuba

VŠEOBECNÉ PODMÍNKY PLATNÉ PRO

Výzva k podání nabídky

Preference v u ívání prost edk elektronické komunikace áky a studenty

Vzor pro poskytnutí dotace na vodohospodářskou infrastrukturu

OBEC JANKOV Obecně závazná vyhláška č. 1/2012, o místních poplatcích ČÁST I. ZÁKLADNÍ USTANOVENÍ

6. Ventily Cestné ventily Značení ventilů Třícestné ventily. Přehled ventilů podle funkce:

Usnesení o nařízení dražebního roku (dražební vyhláška) elektronická dražba

ZADÁVACÍ DOKUMENTACE

1. Informace o předmětu zakázky Stručný textový popis zakázky, technická specifikace

OBEC Velehrad Obecně závazná vyhláška č. 1/2015 o místních poplatcích

MĚSTO TRUTNOV ZASTUPITELSTVO MĚSTA

OBEC Horní Stropnice Obecně závazná vyhláška č.1/2010 o místních poplatcích ČÁST I. ZÁKLADNÍ USTANOVENÍ

Badatelský řád Archivu České televize v Praze

Katedra obecné elektrotechniky Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava 16. ZÁKLADY LOGICKÉHO ŘÍZENÍ

Pardubický kraj Komenského náměstí 125, Pardubice SPŠE a VOŠ Pardubice-rekonstrukce elektroinstalace a pomocných slaboproudých sítí

Čl. 3 Poskytnutí finančních prostředků vyčleněných na rozvojový program Čl. 4 Předkládání žádostí, poskytování dotací, časové určení programu

ČEZ Prodej, s.r.o., sídlem Duhová 425/1, 14053, Praha, IČ , zast. David Jünger, Mgr., sídlem 28. října 438/219, 70900, Ostrava

o místních poplatcích

OBCHODNÍ PODMÍNKY. Obchodní podmínky pro prodej zboží prostřednictvím internetového obchodu umístěného na internetové adrese

Aktivity s GPS 3. Měření některých fyzikálních veličin

Obchodní podmínky. pro prodej zboží prostřednictvím on-line obchodu umístěného na internetové adrese

Formulář pro standardní informace o spotřebitelském úvěru - vzor

Krajský úřad Jihomoravského kraje Odbor životního prostředí Žerotínovo nám. 3/5, Brno

4 DVOJMATICOVÉ HRY. Strategie Stiskni páku Sed u koryta. Stiskni páku (8, 2) (5, 3) Sed u koryta (10, 2) (0, 0)

Stanovisko k systému počátečního vzdělávání v Jihomoravském kraji

1. Úvodní ustanovení. 2. Uživatelský účet

ČÁST II. POPLATEK ZE PSŮ

ČÁST PÁTÁ POZEMKY V KATASTRU NEMOVITOSTÍ

Povinnosti provozovatelů bytových domů na úseku požární ochrany

Městská část Praha 10. vyhlašuje. v souladu s usnesením Rady m. č. Praha 10 č. 183 ze dne

t a k t o : Uvedené nemovité věci tvoří jeden funkční celek a jako jeden celek budou draženy.

INTERNETOVÝ TRH S POHLEDÁVKAMI. Uživatelská příručka

PROGRAM OBNOVY VENKOVA VYSOČINY

NÁHRADA ŠKODY Rozdíly mezi odpov dnostmi TYPY ODPOV DNOSTI zam stnavatele 1) Obecná 2) OZŠ vzniklou p i odvracení škody 3) OZŠ na odložených v cech

8. Struktura údaj na LCD displeji

Obec Petrovice Obecně závazná vyhláška č. 1/2010 o místních poplatcích. ČÁST I. ZÁKLADNÍ USTANOVENÍ Čl. 1 Úvodní ustanovení

SMLOUVA O DÍLO. Firma zapsaná v obchodním rejstříku vedeném Městským soudem v Praze, oddíl C, vložka 89598

o nakládání s elektrozařízeními a elektroodpady), ve znění pozdějších předpisů

1.7. Mechanické kmitání

Data v počítači EIS MIS TPS. Informační systémy 2. Spojení: jan.skrbek@tul.cz tel.: Konzultace: úterý

Zásady a podmínky pro poskytování dotací na program Podpora implementace Evropské charty regionálních či menšinových jazyků 2011

Regenerace zahrady MŠ Neděliště

Zadávací dokumentace k veřejné zakázce

Obchodní podmínky PRESPLAST s.r.o.

FOND VYSOČINY NÁZEV GP

Odůvodnění veřejné zakázky dle 156 zákona. Odůvodnění účelnosti veřejné zakázky dle 156 odst. 1 písm. a) zákona; 2 Vyhlášky 232/2012 Sb.

OBCHODNÍ PODMÍNKY ÚVODNÍ USTANOVENÍ

OBCHODNÍ PODMÍNKY. obchodní společnosti PIROS Czech s.r.o. se sídlem Mařanova 310, Liberec identifikační číslo:

Spolupráce škol a orgánu sociálně-právní ochrany dětí

Hasičský záchranný sbor Karlovarského kraje Závodní 205, Karlovy Vary

Vyhlášení opakované veřejné soutěže 1/6

D R A Ž E B N Í V Y H L Á Š K A

OBCHODNÍ PODMÍNKY 1. ÚVODNÍ USTANOVENÍ

OBEC KNĚŽMOST. Na Rynku Kněžmost. OBECNĚ ZÁVAZNÁ VYHLÁŠKA č. 2/2015. o místních poplatcích ČÁST I. ZÁKLADNÍ USTANOVENÍ

Konkurzní řád. Vyhlášení konkurzu a přihláška do konkurzu

Kótování na strojnických výkresech 1.část

Obec Vlasatice. SMĚRNICE č. 1 / Pravidla pro poskytování dotací z rozpočtu obce Vlasatice

OBEC JENEČ Obecně závazná vyhláška č. 1/2011 o místních poplatcích ČÁST I. ZÁKLADNÍ USTANOVENÍ

účetních informací státu při přenosu účetního záznamu,

1. Orgány ZO jsou voleny z členů ZO. 2. Do orgánů ZO mohou být voleni jen členové ZO starší 18 let.

Město Mariánské Lázně

Zásady k provádění odborné přípravy a odborné způsobilosti členů jednotek SDH obcí a jednotek SDH podniků

Zadávání tiskových zakázek prostřednictvím JDF a Adobe Acrobat Professional

S t r á n k a 1 I N V E S T I C E D O R O Z V O J E V Z D Ě L Á V Á N Í

MOBILNÍ KOMUNIKACE STRUKTURA GSM SÍTĚ

PARLAMENT ČESKÉ REPUBLIKY Poslanecká sněmovna 2009 V. volební období. Vládní návrh. na vydání. zákona

-1- N á v r h ČÁST PRVNÍ OBECNÁ USTANOVENÍ. 1 Předmět úpravy

269/2015 Sb. VYHLÁŠKA

BADATELSKÝ ŘÁD. Čl. 1. Obecná ustanovení

OBCHODNÍ PODMÍNKY Na základě registrace kupujícího provedené na webové stránce může kupující

Příloha č. 3 VÝKONOVÉ UKAZATELE

S B Í R K A O B S A H :

Program na záchranu a obnovu kulturních památek Ústeckého kraje pro rok 2014

2.1 Pokyny k otevřeným úlohám. 2.2 Pokyny k uzavřeným úlohám TESTOVÝ SEŠIT NEOTVÍREJTE, POČKEJTE NA POKYN!

Transkript:

SU Media: Student Středník ČWUT AVC SH Akropolis ikariéra Distribuované algoritmy <small>z ČWUT</small> Obsah 1 Asymetrické a symetrické algoritmy, metody interakce procesů 2 Kauzalita v distribuovaném systému, logický čas (Lamportovy hodiny) 2.1 Lamportovy hodiny (skalární logický čas) 2.2 Vektorový logický čas 3 Algoritmy výlučného přístupu a výběru 3.1 Algoritmy výlučného přístupu 3.1.1 distribuovaný semafor (Lamport) 3.1.2 Ricart - Agarwala 3.1.3 Carvalho - Roucairol 3.1.4 Ricart - Agarwala (Token Passing) 3.1.5 Logický kruh - cyklické předávání pověření 3.1.6 Klient / server s distribuovaným výběrem serveru 3.2 Algoritmy výběru 4 Zablokování při sdílení a komunikaci, detekce a prevence 4.1 Sdílení 4.1.1 Lometovy algoritmy - předcházení 4.1.2 Detekce a zotavení 4.2 Komunikace 4.2.1 Chandy - Misra - Hass 5 Detekce ukončení výpočtu 5.1 Dijkstra-Scholten 5.2 Dijkstra - Feijen - Van Gasteren 5.3 Misra 5.4 Tento článek potřebuje editovat Asymetrické a symetrické algoritmy, metody interakce procesů asymetrické procesy spolu pouze komunikují spolupráce se omezuje na předávání výsledků symetrické - všechny prvky programu jsou stejné procesy jsou si podobné, výsledek je produktem spolupráce symetrický multiprocesing difuzní algoritmy (hard-beat) periodický charakter: proces dostane vstup od sousedů, vypočte a pošle výsledek sousedům např. Floyd - Fulkerson typy symetrie strict - stejné chování i kód text - stejný kód

slabá - procesy mají delší čas odlišné chování (token - pasing) interakce procesů systém Helios - jednoduché mapování programů na procesy: programy si vyměňují data přes standardní vstup a výstup broadcast RPC sdílená paměť central server migration - po požadavku stanice na proměnnou tato putuje na stanici (migruje) read-replication - hodnotu si každá stanice po prvním přečtení čte i modifikuje u sebe (cache), při změně hodnoty invalidace full replication - kopii má každá stanice, modifikace se distribuuje všude Kauzalita v distribuovaném systému, logickýčas (Lamportovy hodiny) zprávy mohou chodit v různém pořadí kauzální uspořádání - je vidět, jak mohly události proběhnout - řídí se vztahem mezi nimi úplné - navíc všechna pozorování stejná - s přenášenými informacemi se přenáší inf. o kauzálních vazbách - logický čas je zavedena relace a předchází b, značíme a b: a a b jsou události stejného procesu, a nastala před b nebo a je odesláním zprávy jedním procesem, b je příjem této zprávy jiným procesem nebo existuje c tak, že a předchází c a c předchází b nejsou-li a a b v uvedené relaci, jsou souběžné Lamportovy hodiny (skalární logický čas) Pokud událost a předchází události b, pak lokální čas procesu Pi odpovídající události a musí být menší než lokální čas procesu Pj odpovídající události b. Podmínku lze nejjednodušeji splnit zavedením čítače v každém procesu. Čítač bude inkrementován mezi každými dvěma událostmi příslušného procesu Pi. Čítače různých procesů Pi a Pj se budou vzájemně synchronizovat tak, že při každém: 1. odeslání se časové razítko nastaví na hodnotu vlastního časovače 2. příjmu se nastaví časové razítko příchozí události na maximum z příchozího a vlastního časovače, navíc se synchronizují vlastní hodiny (ne dozadu) čítače procesů se inicializují náhodně inicializují-li se shodně - pak úplné uspořádání podle čísel procesů Vektorový logickýčas lokální čítač - vektor počet složek jako procesů proces inkrementuje pouze svou položku Algoritmy výlučného přístupu a výběru Algoritmy výlučného přístupu distribuovaný semafor (Lamport) proces chce vstoupit do kritické sekce - pošle ostatním požadavek, ostatní pošlou potvrzení

po vystoupení z kritické sekce se všem pošle zpráva zprávy nesou časové známky podmínky komunikační kanály tvoří úplný graf zachování pořadí zpráv proces si požadavky ukládá do seřazené fronty (podle čas. razítek) je-li jeho záznam na řadě - může do kritické sekce 3(n-1) zpráv Ricart - Agarwala na každý požadavek na vstup do kritické sekce proces odpoví buď hned nebo odpověď pozdží až po vykonání svého požadavku proces může rozhodnout, kterým požadavkům má dát přednost před vlastním do 2(n-1) zpráv modifikace negativní potvrzování v sítích se zaručeným časem doručení rovnou souhlas - mlčení pozdržovací odpověď pouze jednobitová, plná odpověď až jako souhlas kde to efektivně dovoluje přenosové médium - broadcast Carvalho - Roucairol udržuje přehled o poskytnutých pověřeních do 2(n-1) zpráv proces může, pokud nebylo starší pověření Ricart - Agarwala (Token Passing) předávání jediného globálního pověření registrují se požadavky ostatních * dostane-li proces peška a existuje-li starší žádost - pešek se pošle, jinak proces může vstoupit Procesy si předávají pověření (TOKEN). Požaduji-li prostředek, odešlu REQUEST a čekám na TOKEN. Až jej obdržím mohu vstoupit do kritické sekce. Po vystoupení odešlu dalšímu kdo mě žádal. Logický kruh - cyklické předávání pověření Klient / server s distribuovaným výběrem serveru Algoritmy výběru Například mám centrální řízení. Otázka, jak zvolit, kdo bude řídit: všichni vysílají, dostane-li proces zprávu s vyšším ID, přestane a pošle odpověd s nejvyšším ID, které dostal poslední vysílající, který dostane svoje ID, se stává serverem až 2N 2 zpráv Chang - Roberts modifikace předchozího odesílání zpráv po logickém kruhu 0,5N(N-1) Hirschberg - Sinclair jako Chang - Roberts, ale posílání v obou směrech Zablokování při sdílení a komunikaci, detekce a prevence K deadlocku může dojít splněním:

Sdílení použití prostředku je výlučné (ne více procesů) proces může používat prostředek v době žádosti o jiný přidělený prostředek nelze procesu násilně odejmout v grafu závislosti může vzniknout cyklus Lometovy algoritmy - předcházení apriorní metoda prostředky mají pořadí, procesy o ně mohou žádat jen v tomto pořadí požadavky o přidělení se opatřují časovými razítky transakce - oblast výpočtu, kde proces může používat 1 nebo více než 1 prostředek (od místa, kde používá první do místa, kde uvolňuje poslední) vstup do transakce - potenciální žádost o prostředky takový vstup může být odepřen rozhoduje buď server nebo si každý proces vede lokální graf, musí se zabránit cyklům (silnější - méně efektivní využití prostředků) jinak: Rozdělení na úseky, ve kterých je vyžadováno sdílených prostředků a ve kterých ne. Každý proces před vstupem do kritické sekce předběžně žádá o přidělení. Na jednom z procesů se vše registruje a vytváří předběžný graf závislostí. Jestliže by se v něm po přidělení objevil cyklus není prostředek přidělen. Detekce a zotavení aposteriorní - optimistické proces musí být schopen vrátit svůj výpočet před začátek transakce při detekci deadlocku se jeden proces vybere jako oběť - jeho výpočet se vrátí požadavky se opět opatřují časovými razítky jedna možnost - má-li mladší transakce již přiděleno a starší chce - starší je pozastavena do uvolnění prostředku, jinak ukončíme žádající transakci alternativa - starší transakce nikdy nečeká (mladší ano), mladší může být ukončena, má-li již přiděleno Komunikace závislost -čekání na zprávu pasivní proces - čeká na zprávu, aktivní - nečeká množina procesů, od kterých proces čeká zprávu - množina závislosti Zablokování na množině procesů: každý proces je pasivní pro množinu závislostí platí, že je podmnožinou uvažovaných (všech) procesů Chandy - Misra - Hass zjištění, zda je proces součástí množiny zablokovaných test - začíná žádostí pokud libovolný proces je pasivní a tuto žádost ještě nedostal, rozešle ji dostane-li odesílatel stejný počet zpráv jako je procesů - zablokování Detekce ukončení výpočtu Dijkstra-Scholten eviduje rozdíly mezi odeslanými / očekávanými a přijatými požadavky a odpověďmi z kořenového uzlu je odeslán požadavek na ukončení výpočtu

dostane-li startovní uzel všechny očekávané odpovědi na testovací zprávu - konec Dijkstra - Feijen - Van Gasteren Misra proces, který je první v rámci uspořádání a už skončil, pošle bílou zprávu proces, který dostane bílou zprávu a neskončil, pošle černou, pokud už skončil, bílou zprávu dostane-li pův. proc. zpět bílou - konec výpočtu procesčekající na bílého peška nesmí poslat žádnou zprávu, kterou by mohl někoho zaúkolovat, dokud odpověď nepřijde. V opačném případě, byť by přišel bílý pešek, není platný. logický kruh nahrazuje cyklem obsahujícím všechny komunikační hrany Stránka byla naposledy editována v 23:51, 7. 2. 2007.