Przetwarzanie rozproszone: Różnice pomiędzy wersjami
Linia 67: | Linia 67: | ||
* J. Brzeziński. Ocena stanu globalnego w systemach rozproszonych, OWN 2001 | * J. Brzeziński. Ocena stanu globalnego w systemach rozproszonych, OWN 2001 | ||
== | ==Wykłady== | ||
# Wykład [[pr-1st-1.1-m01-toc|Wprowadzenie]] / Laboratorium - [[pr_m01_lab|Wprowadzenie do środowiska PVM]] [[media:pr-1st-1.1-m01-lab.pdf|(wersja pdf)]] | # Wykład [[pr-1st-1.1-m01-toc|Wprowadzenie]] ([[media:pr-1st-1.1-m01-print-bw.pdf|pdf]], [[media:pr-1st-1.1-m01-print-kolor.pdf|pdf kolor]], [[media:pr-1st-1.1-m01-notatki.pdf|pdf notatki]]) / Laboratorium - [[pr_m01_lab|Wprowadzenie do środowiska PVM]] [[media:pr-1st-1.1-m01-lab.pdf|(wersja pdf)]] | ||
# Wykład [[pr-1st-1.1-m02-toc|Przetwarzanie rozproszone]] / Laboratorium - [[pr_m02_lab|Pierwsze kroki w PVM]] [[media:pr-1st-1.1-m02-lab.pdf|(wersja pdf)]] | # Wykład [[pr-1st-1.1-m02-toc|Przetwarzanie rozproszone]] ([[media:pr-1st-1.1-m02-print-bw.pdf|pdf]], [[media:pr-1st-1.1-m02-print-kolor.pdf|pdf kolor]],[[media:pr-1st-1.1-m02-notatki.pdf|pdf notatki]]) / Laboratorium - [[pr_m02_lab|Pierwsze kroki w PVM]] [[media:pr-1st-1.1-m02-lab.pdf|(wersja pdf)]] | ||
# Wykład [[pr-1st-1.1-m03-toc|Proces rozproszony]] / Laboratorium - [[pr_m03_lab|Komunikacja między procesami]] [[media:pr-1st-1.1-m03-lab.pdf|(wersja pdf)]] | # Wykład [[pr-1st-1.1-m03-toc|Proces rozproszony]] ([[media:pr-1st-1.1-m03-print-bw.pdf|pdf]], [[media:pr-1st-1.1-m03-print-kolor.pdf|pdf kolor]],[[media:pr-1st-1.1-m03-notatki.pdf|pdf notatki]]) / Laboratorium - [[pr_m03_lab|Komunikacja między procesami]] [[media:pr-1st-1.1-m03-lab.pdf|(wersja pdf)]] | ||
# Wykład [[pr-1st-1.1-m04-toc|Zegary logiczne, złożoność obliczeniowa]] / Laboratorium - [[pr_m04_lab|Zegary logiczne]] [[media:pr-1st-1.1-m04-lab.pdf|(wersja pdf)]] | # Wykład [[pr-1st-1.1-m04-toc|Zegary logiczne, złożoność obliczeniowa]] ([[media:pr-1st-1.1-m04-print-bw.pdf|pdf]],[[media:pr-1st-1.1-m04-print-kolor.pdf|pdf kolor]],[[media:pr-1st-1.1-m04-notatki.pdf|pdf notatki]]) / Laboratorium - [[pr_m04_lab|Zegary logiczne]] [[media:pr-1st-1.1-m04-lab.pdf|(wersja pdf)]] | ||
# Wykład [[pr-1st-1.1-m05-toc|Detekcja zakleszczenia I]] / Laboratorium - [[pr_m05_lab|Komunikacja grupowa]] [[media:pr-1st-1.1-m05-lab.pdf|(wersja pdf)]] | # Wykład [[pr-1st-1.1-m05-toc|Detekcja zakleszczenia I]] ([[media:pr-1st-1.1-m05-print-bw.pdf|pdf]],[[media:pr-1st-1.1-m05-print-kolor.pdf|pdf kolor]], [[media:pr-1st-1.1-m05-notatki.pdf|pdf notatki]]) / Laboratorium - [[pr_m05_lab|Komunikacja grupowa]] [[media:pr-1st-1.1-m05-lab.pdf|(wersja pdf)]] | ||
# Laboratorium - [[pr_m06_lab|Obliczanie liczby Pi metodą montecarlo]] [[media:pr-1st-1.1-m06-lab.pdf|(wersja pdf)]] | # Wykład [[pr-1st-1.1-m06-toc|Detekcja zakleszczenia II]] ([[media:pr-1st-1.1-m06-print-bw.pdf|pdf]],[[media:pr-1st-1.1-m06-print-kolor.pdf|pdf kolor]], [[media:pr-1st-1.1-m06-notatki.pdf|pdf notatki]]) / Laboratorium - [[pr_m06_lab|Obliczanie liczby Pi metodą montecarlo]] [[media:pr-1st-1.1-m06-lab.pdf|(wersja pdf)]] | ||
# Wykład [[pr-1st-1.1-m07-toc|Konstrukcja spójnego obrazu stanu globalnego I]] / Laboratorium - [[pr_m07_lab|Łamanie haseł]] [[media:pr-1st-1.1-m07-lab.pdf|(wersja pdf)]] | # Wykład [[pr-1st-1.1-m07-toc|Konstrukcja spójnego obrazu stanu globalnego I]] ([[media:pr-1st-1.1-m07-print-bw.pdf|pdf]],[[media:pr-1st-1.1-m07-print-kolor.pdf|pdf kolor]],[[media:pr-1st-1.1-m07-notatki.pdf|pdf notatki]]) / Laboratorium - [[pr_m07_lab|Łamanie haseł]] [[media:pr-1st-1.1-m07-lab.pdf|(wersja pdf)]] | ||
# Wykład [[pr-1st-1.1-m08-toc|Konstrukcja spójnego obrazu stanu globalnego II]] / Laboratorium - [[pr_m08_lab|Zaawansowane operacje grupowe]] [[media:pr-1st-1.1-m08-lab.pdf|(wersja pdf)]] | # Wykład [[pr-1st-1.1-m08-toc|Konstrukcja spójnego obrazu stanu globalnego II]] ([[media:pr-1st-1.1-m08-print-bw.pdf|pdf]], [[media:pr-1st-1.1-m08-print-kolor.pdf|pdf kolor]],[[media:pr-1st-1.1-m08-notatki.pdf|pdf notatki]]) / Laboratorium - [[pr_m08_lab|Zaawansowane operacje grupowe]] [[media:pr-1st-1.1-m08-lab.pdf|(wersja pdf)]] | ||
# Wykład [[pr-1st-1.1-m09-toc|Detekcja zakończenia I]] / Laboratorium - [[pr_m09_lab|Detekcja zakończenia]] [[media:pr-1st-1.1-m09-lab.pdf|(wersja pdf)]] | # Wykład [[pr-1st-1.1-m09-toc|Detekcja zakończenia I]] ([[media:pr-1st-1.1-m09-print-bw.pdf|pdf]], [[media:pr-1st-1.1-m09-print-kolor.pdf|pdf kolor]], [[media:pr-1st-1.1-m09-notatki.pdf|pdf notatki]]) / Laboratorium - [[pr_m09_lab|Detekcja zakończenia]] [[media:pr-1st-1.1-m09-lab.pdf|(wersja pdf)]] | ||
# Wykład [[pr-1st-1.1-m10-toc|Detekcja zakończenia II]] | # Wykład [[pr-1st-1.1-m10-toc|Detekcja zakończenia II]] ([[media:pr-1st-1.1-m10-print-bw.pdf|pdf]], [[media:pr-1st-1.1-m10-print-kolor.pdf|pdf kolor]], [[media:pr-1st-1.1-m10-notatki.pdf|pdf notatki]]) / Laboratorium - [[pr_m10_lab|Instalacja środowiska MPI w systemie operacyjnym Microsoft Windows]] [[media:pr-1st-1.1-m10-lab.pdf|(wersja pdf)]] | ||
# Wykład [[pr-1st-1.1-m11-toc|Niezawodność przetwarzania]] | # Wykład [[pr-1st-1.1-m11-toc|Niezawodność przetwarzania]] ([[media:pr-1st-1.1-m11-print-bw.pdf|pdf]], [[media:pr-1st-1.1-m11-print-kolor.pdf|pdf kolor]], [[media:pr-1st-1.1-m11-notatki.pdf|pdf notatki]]) / Laboratorium - [[pr_m11_lab|Instalacja środowiska MPI w systemie operacyjnym Linux]] [[media:pr-1st-1.1-m11-lab.pdf|(wersja pdf)]] | ||
# Wykład [[pr-1st-1.1-m12-toc|Niezawodne rozgłaszanie]] | # Wykład [[pr-1st-1.1-m12-toc|Niezawodne rozgłaszanie]] ([[media:pr-1st-1.1-m12-print-bw.pdf|pdf]],[[media:pr-1st-1.1-m12-print-kolor.pdf|pdf kolor]],[[media:pr-1st-1.1-m12-notatki.pdf|pdf notatki]]) / Laboratorium - [[pr_m12_lab|Pierwsze kroki w środowisku MPI]] [[media:pr-1st-1.1-m12-lab.pdf|(wersja pdf)]] | ||
# Wykład [[pr-1st-1.1-m13-toc|Problemy konsensusu]] | # Wykład [[pr-1st-1.1-m13-toc|Problemy konsensusu]] ([[media:pr-1st-1.1-m13-print-bw.pdf|pdf]],[[media:pr-1st-1.1-m13-print-kolor.pdf|pdf kolor]],[[media:pr-1st-1.1-m13-notatki.pdf|pdf notatki]]) / Laboratorium - [[pr_m13_lab|Komunikacja kolektywna w środowisku MPI]] [[media:pr-1st-1.1-m13-lab.pdf|(wersja pdf)]] | ||
===Tylko laboratoria:=== | ===Tylko laboratoria:=== | ||
Linia 92: | Linia 92: | ||
# Laboratorium - [[pr_m08_lab|Zaawansowane operacje grupowe]] [[media:pr-1st-1.1-m08-lab.pdf|(wersja pdf)]] | # Laboratorium - [[pr_m08_lab|Zaawansowane operacje grupowe]] [[media:pr-1st-1.1-m08-lab.pdf|(wersja pdf)]] | ||
# Laboratorium - [[pr_m09_lab|Detekcja zakończenia]] [[media:pr-1st-1.1-m09-lab.pdf|(wersja pdf)]] | # Laboratorium - [[pr_m09_lab|Detekcja zakończenia]] [[media:pr-1st-1.1-m09-lab.pdf|(wersja pdf)]] | ||
# Laboratorium - [[pr_m10_lab|Instalacja środowiska MPI w systemie operacyjnym Microsoft Windows]] [[media:pr-1st-1.1-m10-lab.pdf|(wersja pdf)]] | |||
# Laboratorium - [[pr_m11_lab|Instalacja środowiska MPI w systemie operacyjnym Linux]] [[media:pr-1st-1.1-m11-lab.pdf|(wersja pdf)]] | |||
# Laboratorium - [[pr_m12_lab|Pierwsze kroki w środowisku MPI]] [[media:pr-1st-1.1-m12-lab.pdf|(wersja pdf)]] | |||
# Laboratorium - [[pr_m13_lab|Komunikacja kolektywna w środowisku MPI]] [[media:pr-1st-1.1-m13-lab.pdf|(wersja pdf)]] |
Wersja z 08:45, 16 sie 2006
Forma zajęć
Wykład (30 godzin) + laboratorium (30 godzin)
Opis
Celem przedmiotu jest przedstawienie podstawowej problematyki przetwarzania rozproszonego oraz przykładów elementarnych rozwiązań wybranych problemów szczegółowych. Wykład wprowadza podstawowe pojęcia i przedstawia podstawowe elementy modelu przetwarzania rozproszonego, m.in.: formalny model środowiska przetwarzania rozproszonego, analizę aktywności i warunki uaktywnienia, klasyczne modele żądań, wykonanie procesu rozproszonego, właściwości przetwarzania rozproszonego (relacja poprzedzania, diagramy przestrzenno-czasowe, grafy stanów osiągalnych, niedeterminizm przetwarzania, spójność stanu, predykaty globalne i ich własności) oraz charakterystyki algorytmów rozproszonych (warunki poprawności algorytmów, złożoność czasowa i komunikacyjna). Omawiane są zagadnienia komunikacji zachowującej uporządkowanie wiadomości, wyznaczania stanu globalnego, synchronizacji czasu oraz detekcji zakończenia przetwarzania rozproszonego. Laboratorium pozwala nabrać praktycznej intuicji w konstrukcji i implementacji aplikacji rozproszonych w przykładowym środowisku. Na laboratorium studenci konfrontują uzyskane wiadomości z praktyczną implementacją algorytmów rozproszonych, projektują algorytmy rozproszone i wdrażają w wybranym środowisku przetwarzania rozproszonego.
Sylabus
Autorzy
- Michał Szychowiak
- Jerzy Brzeziński
Wymagania wstępne
- Systemy operacyjne
- Sieci komputerowe
Zawartość
Wykłady
- Charakterystyka systemów rozproszonych
- Struktura środowiska przetwarzania, topologie
- Kanały komunikacyjne, komunikacja synchroniczna i asynchroniczna
- Środowiska typu GRID, przykładowe zastosowania
- Model formalny procesu sekwencyjnego
- Modele żądań
- Konfiguracja spójna, odcięcie spójne
- Predykaty globalne i ich własności
- Czas wirtualny, zegary logiczne, zegary skalarne
- Środowisko komunikacyjne zachowujące uporządkowanie przyczynowe wiadomości
- Komunikacja grupowa
- Warunki poprawności algorytmów rozproszonych
- Złożoność czasowa i komunikacyjna algorytmów rozproszonych
- Stan globalny systemu (modele, graf stanów, ocena)
- Konstrukcja spójnego obrazu stanu globalnego
- Różne realizacje przetwarzania rozproszonego klient-serwer
- Problem detekcji zakończenia przetwarzania
- Detekcja zakończenia dla synchronicznego modelu przetwarzania
- Detekcja zakończenia dla dyfuzyjnego modelu przetwarzania
- Detekcja zakończenia dla atomowego modelu przetwarzania
- Detekcja zakończenia statycznego
- Detekcja zakończenia dynamicznego
- Problem elekcji i głosowania
- Problemy uzgadniania
- Consensus
- Uzgadnianie bizantyjskie
- Niezawodność przetwarzania rozproszonego
- Komunikacja w środowisku zawodnym
- Niezawodne detektory uszkodzeń
- Odtwarzanie stanu systemu rozproszonego
Laboratoria
- środowisko PVM
- standard MPI / MPI2 i jego implementacje
- problematyka konstrukcji procesów rozproszonych i zrównoleglania obliczeń w środowisku rozproszonym, architektury procesów rozprosznych (np. master-slave)
- komunikacja grupowa
- mechanizmy rozproszonej synchronizacji procesów (np. bariery, spotkania symetryczne)
- rozwiązania podstawowych problemów przetwarzania rozproszonego (np. wzajemnego wykluczanie, detekcja zakończenia przetwarzania)
Literatura
- M. Ben-Ari. Podstawy programowania współbieżnego i rozproszonego. WNT, 1990
- Andrew S. Tanenebaum. Rozproszone Systemy Operacyjne. PWN, 1997
- Michel Raynal. Distributed Algorithms and Protocols. John Wiley & Sons, 1988
- Sape Müllender, ed. Distributed Systems. Addison-Wesley, 1993
- Gerard Tel. Introduction to Distributed Algorithms. Cambridge University Press, 1994
- Nancy A. Lynch. Distributed algorithms. Morgan Kaufmann Publishers, 1996
- Randy Chow, Theodore Johnson. Distributed Operating Systems & Algorithms, Addison Wesley Longman, 1997
- Pradeep K. Sinha. Distributed Operating Systems. Concepts and Design, IEEE Computer Society Press, 1997
- J. Brzeziński. Ocena stanu globalnego w systemach rozproszonych, OWN 2001
Wykłady
- Wykład Wprowadzenie (pdf, pdf kolor, pdf notatki) / Laboratorium - Wprowadzenie do środowiska PVM (wersja pdf)
- Wykład Przetwarzanie rozproszone (pdf, pdf kolor,pdf notatki) / Laboratorium - Pierwsze kroki w PVM (wersja pdf)
- Wykład Proces rozproszony (pdf, pdf kolor,pdf notatki) / Laboratorium - Komunikacja między procesami (wersja pdf)
- Wykład Zegary logiczne, złożoność obliczeniowa (pdf,pdf kolor,pdf notatki) / Laboratorium - Zegary logiczne (wersja pdf)
- Wykład Detekcja zakleszczenia I (pdf,pdf kolor, pdf notatki) / Laboratorium - Komunikacja grupowa (wersja pdf)
- Wykład Detekcja zakleszczenia II (pdf,pdf kolor, pdf notatki) / Laboratorium - Obliczanie liczby Pi metodą montecarlo (wersja pdf)
- Wykład Konstrukcja spójnego obrazu stanu globalnego I (pdf,pdf kolor,pdf notatki) / Laboratorium - Łamanie haseł (wersja pdf)
- Wykład Konstrukcja spójnego obrazu stanu globalnego II (pdf, pdf kolor,pdf notatki) / Laboratorium - Zaawansowane operacje grupowe (wersja pdf)
- Wykład Detekcja zakończenia I (pdf, pdf kolor, pdf notatki) / Laboratorium - Detekcja zakończenia (wersja pdf)
- Wykład Detekcja zakończenia II (pdf, pdf kolor, pdf notatki) / Laboratorium - Instalacja środowiska MPI w systemie operacyjnym Microsoft Windows (wersja pdf)
- Wykład Niezawodność przetwarzania (pdf, pdf kolor, pdf notatki) / Laboratorium - Instalacja środowiska MPI w systemie operacyjnym Linux (wersja pdf)
- Wykład Niezawodne rozgłaszanie (pdf,pdf kolor,pdf notatki) / Laboratorium - Pierwsze kroki w środowisku MPI (wersja pdf)
- Wykład Problemy konsensusu (pdf,pdf kolor,pdf notatki) / Laboratorium - Komunikacja kolektywna w środowisku MPI (wersja pdf)
Tylko laboratoria:
- Laboratorium - Wprowadzenie do środowiska PVM (wersja pdf)
- Laboratorium - Pierwsze kroki w PVM (wersja pdf)
- Laboratorium - Komunikacja między procesami (wersja pdf)
- Laboratorium - Zegary logiczne (wersja pdf)
- Laboratorium - Komunikacja grupowa (wersja pdf)
- Laboratorium - Obliczanie liczby Pi metodą montecarlo (wersja pdf)
- Laboratorium - Łamanie haseł (wersja pdf)
- Laboratorium - Zaawansowane operacje grupowe (wersja pdf)
- Laboratorium - Detekcja zakończenia (wersja pdf)
- Laboratorium - Instalacja środowiska MPI w systemie operacyjnym Microsoft Windows (wersja pdf)
- Laboratorium - Instalacja środowiska MPI w systemie operacyjnym Linux (wersja pdf)
- Laboratorium - Pierwsze kroki w środowisku MPI (wersja pdf)
- Laboratorium - Komunikacja kolektywna w środowisku MPI (wersja pdf)