Z Studentská wiki
			
												
			
- 1 Příklady písemných prací ke zkoušce z DS
- 1.1 Načrtněte architekturu multiprocesorového systému se čtyřmi procesory a čtyřmi pamětmi s omega architekturou
 
- 1.2 Zakreslete obrázek s možnými typy třívrstvé architektury klient/server, uveďte příklady použití a zhodnoťte je.
 
- 1.3 Nakreslete
 diagram komunikace mezi klientem a serverem s použitím 
synchronního a asynchronního posílání zpráv s potvrzováním.
 
- 1.4 Co je to sémantika volání vzdálených podprogramů, jaké sémantiky znáte a čím se liší.
 
- 1.5 Nakreslete schéma souběžného přenosu dvou zpráv mezi dvěma uzly pomocí protokolu ABCAST. Co protokol zaručuje.
 
- 1.6 V zadaném obrázku doplňte hodnoty logických maticových hodin.
 
- 1.7 Popište Christiansův algoritmus synchronizace hodin mezi dvěma uzly.
 
- 1.8 Co
 jsou to vektorové časové značky a čím se liší od časových značek dle 
Lamporta. V zadaném schématu označte vektorové časové značky a 
určete, které události jsou konkurentní a které ne.
 
- 1.9 Naznačte
 jak bude fungovat algoritmus pro určení globálního stavu pro tři 
procesy s tím, že každý proces může komunikovat s oběma svými 
sousedy.
 
- 1.10 Naznačte
 jak probíhá 3 fázový Lamportův algoritmus pro řešení úlohy 
distribuovaného vzájemného vyloučení s pomocí časových značek pro 2 
procesy.
 
- 1.11 Jsou
 dány dvě transakce T1 {R(x); R(y); W(y); W(x) } a T2 {R(x); R(y)}. 
Naznačte algoritmus řízení souběhu pomocí časových značek.
 
- 1.12 Je dána transakce {z  x; x  y; y  z }. Rozepište, co se uloží do logu a jak se obnoví data v případě zrušení transakce.
 
- 1.13 Jak
 se řídí provádění transakcí pomocí časových značek. Uveďte příklad 
souběžného přístupu dvou procesů, provádějících identickou transakci nad
 dvěma proměnnými X a Y pomocí operací čtení a zápis. Prováděné operace 
jsou následující: r(X), r(Y), w(X),X+Y.
 
- 1.14 Popište 2-fázový commit.
 
- 1.15 Popište realizaci operací P a V nad semafory s využitím nedělitelných operací advance(E), await(E,v) a ticket(S).
 
- 1.16 Jaký rozdíl je mezi striktní a sekvenční konzistentností. Ukažte na kontra příkladech.
 
- 1.17 Na obrázku ilustrujte jak se od sebe liší sekvenční konzistentnost od FIFO konzistentnosti.
 
- 1.18 Co je to PRAM (Pipelined RAM) konzistentnost. Určete možné (správné) výsledky v zadaném příkladě.
 
- 1.19 Popište
 jak se provádí operace write-update a jak write-invalidate. Na obrázku 
naznačte, jak lze zajistit pomocí write-invalidate sdílení dat v 
případě, že vyžadujete vícenásobný přístup pro čtení a výhradní přístup 
pro čtení a zápis.
 
- 1.20 V zadaném příkladě popište výměnu zpráv algoritmus vhazování (Bully algoritmus).
 
- 1.21 Popište decentralizovaný algoritmus vzájemného vyloučení s použitím pověření, které je předáváno v logickém kruhu.
 
- 1.22 Naznačte algoritmus detekce uvíznutí v distribuovaném systému se třemi oblastmi.
 
- 1.23 Co
 je to uvíznutí, jaké jsou nutné podmínky pro uvíznutí, jak se řeší 
detekce a odstranění uvíznutí v distribuovaných systémech.
 
- 1.24 Co je to Bankéřův algoritmus, co řeší a jak.
 
- 1.25 Vyjmenujte a popište sémantiky sdílení souborů v distribuovaném souborovém systému.
 
- 1.26 Jak
 se provádí mapování souborového systému a jaká pravidla by se měla 
dodržovat. Jak se zde projeví transparentnost umístění a transparentnost
 přemisťování.
 
- 1.27 Vysvětlete problém osiřených stromů v distribuovaných souborových systémech.
 
- 1.28 Popište,
 jak obecně funguje algoritmus shody. Ilustrujte na příkladu 3 procesů, 
které se mají dohodnout na jedné (minimální) hodnotě.
 
- 1.29 Popište
 průběh výměny zpráv v případě 4 Byzantinských generálů (A, B, C, D), z 
nichž jeden je zrádce (algoritmus shody na vektoru hodnot s poruchou). 
Nastavované hodnoty jsou následující: A(1), B(2), C(3), D(4).
 
- 1.30 Co to jsou inkarnační čísla a kde se používají.
 
- 1.31 Popište algoritmus hlasování (Maekawa 1985).
 
 
 
 
 | 
[editovat]  Příklady písemných prací ke zkoušce z DS 
[editovat]  Načrtněte architekturu multiprocesorového systému se čtyřmi procesory a čtyřmi pamětmi s omega architekturou 
Multistage switched (omega networks) (propojeni pamětí a procesorů). 
Pro tento případ nám stačí 2 bity pro propojení jakéhokoliv procesoru s 
jakoukoliv pamětí.
-  Postupně přepínaná cesta mezi procesorem a pamětí
 -  Při větším počtu stupňů pomalé
 -  n
log(n) přepínačů 
 
P1--                       --M1 
    \                     / 
     --SWITCH --- SWITCH -
    /        \  /         \
P2--          \/           --M2
P3--          /\           --M3
    \        /  \         /
     --SWITCH --- SWITCH -
    /                     \
P4--                       --M4
[editovat]  Zakreslete obrázek s možnými typy třívrstvé architektury klient/server, uveďte příklady použití a zhodnoťte je. 
Model třívrstvé architektury rozlišuje tyto vrstvy:
-  Prezentační vrstva – obsahuje funkce uživatelského rozhraní. 
Obvykle existuje několik prezentačních vrstev pro různé druhy zařízení, 
platformy a prostředí
 -  Aplikační vrstva – tvoří prostředníka mezi vrstvou prezentační
 a vrstvou datovou . Obsahuje tzv. business logiku aplikace. V této 
vrstvě dochází k transformací dat mezi vstupně / výstupními požadavky a 
datovou vrstvou.
 -  Datová vrstva – obsahuje funkce pro přístup k informacím v datovém úložišti
 
 Tabulka variant
|  Název  |  Strana klienta  |  Strana serveru  |  Výhody  |  Nevýhody
 | 
|  Klient/server se vzdálenými daty
 | 
-  Prezentační služby
 -  Prezentační logika
 -  Logika aplikace
 -  Logika dat
  
 | 
-  Datové služby
 -  Ovládání souborů
  
 | 
 |  Komunikační zátěž, zatížení stanice.
 | 
|  Klient/server se vzdálenou prezentací
 | 
-  Prezentační služby
 -  Prezentační logika
  
 | 
-  Logika aplikace
 -  Logika dat
 -  Datové služby
 -  Ovládání souborů
  
 | 
 |  Zatížení serveru
 | 
[editovat] 
 Nakreslete diagram komunikace mezi klientem a serverem s použitím 
synchronního a asynchronního posílání zpráv s potvrzováním. 
[editovat]  Co je to sémantika volání vzdálených podprogramů, jaké sémantiky znáte a čím se liší. 
[editovat]  Nakreslete schéma souběžného přenosu dvou zpráv mezi dvěma uzly pomocí protokolu ABCAST. Co protokol zaručuje. 
[editovat]  V zadaném obrázku doplňte hodnoty logických maticových hodin. 
[editovat]  Popište Christiansův algoritmus synchronizace hodin mezi dvěma uzly. 
[editovat] 
 Co jsou to vektorové časové značky a čím se liší od časových značek dle
 Lamporta. V zadaném schématu označte vektorové časové značky a 
určete, které události jsou konkurentní a které ne. 
[editovat] 
 Naznačte jak bude fungovat algoritmus pro určení globálního stavu pro 
tři procesy s tím, že každý proces může komunikovat s oběma 
svými sousedy. 
[editovat] 
 Naznačte jak probíhá 3 fázový Lamportův algoritmus pro řešení úlohy 
distribuovaného vzájemného vyloučení s pomocí časových značek pro 2 
procesy. 
[editovat] 
 Jsou dány dvě transakce T1 {R(x); R(y); W(y); W(x) } a T2 {R(x); R(y)}.
 Naznačte algoritmus řízení souběhu pomocí časových značek. 
[editovat] 
 Je dána transakce {z  x; x  y; y  z }. Rozepište, co se uloží do 
logu a jak se obnoví data v případě zrušení transakce. 
[editovat] 
 Jak se řídí provádění transakcí pomocí časových značek. Uveďte příklad 
souběžného přístupu dvou procesů, provádějících identickou transakci nad
 dvěma proměnnými X a Y pomocí operací čtení a zápis. Prováděné operace 
jsou následující: r(X), r(Y), w(X),X+Y. 
[editovat]  Popište 2-fázový commit. 
[editovat]  Popište realizaci operací P a V nad semafory s využitím nedělitelných operací advance(E), await(E,v) a ticket(S). 
[editovat]  Jaký rozdíl je mezi striktní a sekvenční konzistentností. Ukažte na kontra příkladech. 
[editovat]  Na obrázku ilustrujte jak se od sebe liší sekvenční konzistentnost od FIFO konzistentnosti. 
[editovat]  Co je to PRAM (Pipelined RAM) konzistentnost. Určete možné (správné) výsledky v zadaném příkladě. 
[editovat] 
 Popište jak se provádí operace write-update a jak write-invalidate. Na 
obrázku naznačte, jak lze zajistit pomocí write-invalidate sdílení dat v
 případě, že vyžadujete vícenásobný přístup pro čtení a výhradní přístup
 pro čtení a zápis. 
[editovat]  V zadaném příkladě popište výměnu zpráv algoritmus vhazování (Bully algoritmus). 
[editovat]  Popište decentralizovaný algoritmus vzájemného vyloučení s použitím pověření, které je předáváno v logickém kruhu. 
[editovat]  Naznačte algoritmus detekce uvíznutí v distribuovaném systému se třemi oblastmi. 
[editovat] 
 Co je to uvíznutí, jaké jsou nutné podmínky pro uvíznutí, jak se řeší 
detekce a odstranění uvíznutí v distribuovaných systémech. 
[editovat]  Co je to Bankéřův algoritmus, co řeší a jak. 
[editovat]  Vyjmenujte a popište sémantiky sdílení souborů v distribuovaném souborovém systému. 
[editovat] 
 Jak se provádí mapování souborového systému a jaká pravidla by se měla 
dodržovat. Jak se zde projeví transparentnost umístění a transparentnost
 přemisťování. 
[editovat]  Vysvětlete problém osiřených stromů v distribuovaných souborových systémech. 
[editovat] 
 Popište, jak obecně funguje algoritmus shody. Ilustrujte na příkladu 3 
procesů, které se mají dohodnout na jedné (minimální) hodnotě. 
[editovat] 
 Popište průběh výměny zpráv v případě 4 Byzantinských generálů (A, B, 
C, D), z nichž jeden je zrádce (algoritmus shody na vektoru hodnot s 
poruchou). Nastavované hodnoty jsou následující: A(1), B(2), C(3), D(4).
 
[editovat]  Co to jsou inkarnační čísla a kde se používají. 
[editovat]  Popište algoritmus hlasování (Maekawa 1985).