Systemy rozproszone System rozproszony

Podobne dokumenty
Systemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.

współbieżność - zdolność do przetwarzania wielu zadań jednocześnie

Systemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.

Wprowadzenie. Dariusz Wawrzyniak 1

Middleware wprowadzenie października 2010

Wstęp. Historia i przykłady przetwarzania współbieżnego, równoległego i rozproszonego. Przetwarzanie współbieżne, równoległe i rozproszone

Middleware wprowadzenie października Dariusz Wawrzyniak (IIPP) 1

Systemy rozproszone. Wprowadzenie. Cezary Sobaniec Jerzy Brzeziński

Rozproszone i obiektowe systemy baz danych. Wykład 2. Charakterystyka systemów rozproszonych Cechy ogólne rozproszonych systemów komputerowych

Sieciowe Systemy Operacyjne

IBM DCE/DFS. Mikołaj Gierulski. 17 stycznia 2003

Rozproszone i obiektowe systemy baz danych. Wykład 4. Wymagania projektowe systemów rozproszonych

Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi

Programowanie obiektowe

Systemy rozproszone. Wstęp. Krzysztof Banaś Systemy rozproszone 1

Rozproszone systemy internetowe. Wprowadzenie. Koncepcja zdalnego wywołania procedury

Wybrane działy Informatyki Stosowanej

Projektowanie architektury systemu. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Działanie komputera i sieci komputerowej.

Spis treści. 1 Wprowadzenie. 1.1 Podstawowe pojęcia. 1 Wprowadzenie Podstawowe pojęcia Sieci komunikacyjne... 3

1. Etapy rozwoju systemów komputerowych

Koncepcja wirtualnej pracowni GIS w oparciu o oprogramowanie open source

Programowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Zadania systemu operacyjnego. Abstrakcyjne składniki systemu. System komputerowy

Akademia Techniczno-Humanistyczna w Bielsku-Białej

Wypożyczalnia VIDEO. Technologie obiektowe

Bazy danych 2. Wykład 1

Architektura komputerów

Komunikacja i wymiana danych

Middleware wprowadzenie października Dariusz Wawrzyniak. Instytut Informatyki ul. Piotrowo 2 (CW, pok. 5)

Ćwiczenie nr: 9 Obliczenia rozproszone MPI

Zapoznanie z technikami i narzędziami programistycznymi służącymi do tworzenia programów współbieżnych i obsługi współbieżności przez system.

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

Projektowanie Systemów Informatycznych wykład 10. Uniwersytet Zielonogórski Instytut Informatyki i Elektroniki

Mechanizmy pracy równoległej. Jarosław Kuchta

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Zwielokrotnianie i spójność

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

27/13 ZAŁĄCZNIK NR 4 DO SIWZ. 1 Serwery przetwarzania danych. 1.1 Serwery. dostawa, rozmieszczenie i zainstalowanie 2. serwerów przetwarzania danych.

Pojęcie bazy danych. Funkcje i możliwości.

Algorytmy i Struktury Danych

Architektura i mechanizmy systemu

Czujniki obiektowe Sterowniki przemysłowe

Szczegółowy opis przedmiotu zamówienia

Wywoływanie metod zdalnych

U M L. System operacyjny Linux zagnieżdżony w zewnętrznym systemie operacyjnym (Linux)

Przykłady DFS z lotu ptaka :) NFS AFS Coda GoogleFS ZFS

Wywoływanie procedur zdalnych

Zapewnienie wysokiej dostępności baz danych. Marcin Szeliga MVP SQL Server MCT

Działanie systemu operacyjnego

Wprowadzenie do systemów operacyjnych

7. zainstalowane oprogramowanie zarządzane stacje robocze

Rozproszone systemy plików wprowadzenie. Autor: Łukasz Polak

Serwerowy system operacyjny musi spełniać następujące wymagania minimalne:

DZANIA I MARKETINGU BIAŁYSTOK,

Wywoływanie procedur zdalnych

Obliczenia równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Podstawy informatyki. System operacyjny. dr inż. Adam Klimowicz

Działanie systemu operacyjnego

Programowanie współbieżne i rozproszone

SYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX)

Systemy GIS Systemy baz danych

SYSTEMY OPERACYJNE. kik.pcz.czest.pl/so. (C) KIK PCz Materiały pomocnicze 1 PROWADZI: PODSTAWOWA LITERATURA: ZAJĘCIA: STRONA

Systemy Rozproszone. Zagadnienia do egzaminu.

Wprowadzenie. Co to jest klaster? Podział ze względu na przeznaczenie. Architektury klastrów. Cechy dobrego klastra.

Działanie systemu operacyjnego

Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

System komputerowy. Sprzęt. System komputerowy. Oprogramowanie

Zdalne wywołanie procedur. Krzysztof Banaś Systemy rozproszone 1

SZCZEGÓŁOWY OPIS PRZEDMIOTU ZAMÓWIENIA

Nowe aplikacje i usługi w środowisku Grid

str. 1 Informacja o zmianie treści specyfikacji istotnych warunków zamówienia Oświęcim, dnia r.

Wykład I. Administrowanie szkolną siecią komputerową. dr Artur Bartoszewski

Zaawansowane narzędzia programowania rozproszonego

1. ARCHITEKTURY SYSTEMÓW KOMPUTEROWYCH

Wprowadzenie do systemów operacyjnych. mgr inż. Krzysztof Szałajko

Opis przedmiotu zamówienia. Część IV. Dostawa niewyłącznej, nieograniczonej czasowo licencji oprogramowania Microsoft Serwer 2012 R2 DataCenter x64.

Zarządzanie w systemach i sieciach komputerowych. Dr inż. Robert Wójcik. Wykład 4. Rodzaje oraz własności systemów i sieci komputerowych

Systemy operacyjne III

WYKŁAD: Przetwarzanie rozproszone typu klient-serwer.

Wprowadzenie do programowania współbieżnego

Jarosław Kuchta. Administrowanie Systemami Komputerowymi. Klastry serwerów

Od uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Windows.

Przetwarzanie Rozproszone i Równoległe

ZAŁOŻENIA PROJEKTOWE I SPECYFIKACJA USŁUG

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Program szkolenia KURS SPD i PD Administrator szkolnej pracowni internetowej Kurs MD1 Kurs MD2 Kurs MD3 (dla szkół ponadgimnazjalnych)

Ćwiczenie nr: 9 Obliczenia rozproszone MPI

Podstawy sieci komputerowych. Technologia Informacyjna Lekcja 19

PREMIUM BIZNES zł 110zł za 1 Mb/s Na czas nieokreślony Od 9 14 Mbit/s

Szczególne problemy projektowania aplikacji internetowych. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

ZAPYTANIE OFERTOWE NR UE/6

Kurs OPC S7. Spis treści. Dzień 1. I OPC motywacja, zakres zastosowań, podstawowe pojęcia dostępne specyfikacje (wersja 1501)

Programowanie współbieżne Wykład 2. Iwona Kochańska

Wywoływanie metod zdalnych

16. Taksonomia Flynn'a.

Transkrypt:

Systemy rozproszone Wg Wikipedii: System rozproszony to zbiór niezależnych urządzeń (komputerów) połączonych w jedną, spójną logicznie całość. Połączenie najczęściej realizowane jest przez sieć komputerową. Urządzenia są wyposażone w oprogramowanie umożliwiające współdzielenie zasobów systemowych. Jedną z podstawowych cech systemu rozproszonego jest jego transparentność, inaczej przezroczystość, która stwarza na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.

Systemy rozproszone - cechy współdzielenie zasobów - wielu użytkowników systemu może korzystać z danego zasobu (np. drukarek, plików, usług, itp.) otwartość - podatność na rozszerzenia, możliwość rozbudowy systemu zarówno pod względem sprzętowym, jak i oprogramowania współbieżność - zdolność do przetwarzania wielu zadań jednocześnie nie skalowalność - zachowanie podobnej wydajności systemu przy zwiększeniu skali systemu (np. liczby procesów, komputerów, itp.) odporność na błędy - zdolność działania systemu mimo pojawiania się błędów (np. poprzez utrzymywanie nadmiarowego sprzętu) transparentność, przeźroczystość - postrzeganie systemu przez użytkownika i aplikacje jako systemu scentralizowanego

Otwartość -usługi muszą być zgodne ze standardowymi regułami opisującymi ich składnię i semantykę (np. protokoły sieciowe) -specyfikacja interfejsu musi być kompletna i neutralna Programy od różnych dostawców MUSZĄ współpracować ze sobą, o ile spełniają warunek zgodności interfejsów Przenośność aplikacja stworzona dla jednego systemu może być uruchomiona w innym bez potrzeby dokonania jakichkolwiek zmian.

Przezroczystość a) dostępu b) położenia c) wędrówki d) przemieszczania e) zwelokrotniania f) współbieżności g) awarii h) trwałości Ad a) poprzez ujednolicenie metod dostępu do danych i ukrywanie różnic w ich reprezentacji

Przezroczystość Ad b) użytkownicy nie mogą określić położenia zasobu, np. na podstawie jego nazwy Ad c) można przenosić zasoby między serwerami bez zmiany odwoływania się do nich Ad d) możliwość przenoszenia zasobów nawet podczas ich używania Ad e) użytkownik nie zauważa faktu zwielokrotniania zasobów Ad f) możliwość współbieżnego przetwarzania nie powodującego utraty spójności Ad g) niezauważalne zastępowanie uszkodzonych węzłów Ad h) maskowanie sposobu przechowywania zasobu (pamięć lub dysk)

Skalowalność pod względem rozmiaru (możliwość dodawania nowych zasobów i użytkowników) geograficzna (rozrzucenie zasobów i użytkowników po całym świecie) administracyjna (skuteczna, mimo że rozrzucona administracja systemem)

Skalowalność 1. Ukrywanie opóźnień komunikacji komunikacja asynchroniczna część obliczeń po stronie klienta 2. Rozpraszanie (np DNS) 3. Zwielokrotnianie równoważenie obciążenia zwiększenie dostępności zwiększenie niezawodności caching Problem spójności danych

Realizacje sprzętowe Systemy wieloprocesory (pamięć dzielona) multikomputery (pamięć odrębna) Architektura szyna przełącznik

Multiprocesory

Multikomputery

Systemy homogeniczne Sieci systemowe grupa komputerów homogenicznych połączonych siecią architektura połączeń szyna lub przełącznik topologia połączeń siatki i hiperkostki Realizacje: procesory o masywnej równoległości (specjalna sieć) klastry, grupy stacji roboczych (sieć standardowa)

Komputery masywnie równoległe

Superwęzeł

Oprogramowanie 1. Systemy operacyjne dla komp. rozproszonych: a) ściśle powiązane (zarządzanie wszystkimi globalnymi zasobami przez system) w wieloprocesorach, komp. homogeniczych b) luźno powiązane (zbiór współpracujących komputerów z lokalnymi S.O.) sieciowe systemy operacyjne 2. Oprogramowanie warstwy pośredniej

Oprogramowanie - cele Ad 1a: Ukrywanie zasobów sprzętowych i zarządzanie nimi Ad 1b: Oferowanie lokalnych usług klientom zdalnym Ad 2: Zapewnianie przezroczystości rozproszenia

Wielokomputerowy S.O. Aplikacje rozproszone Usługi rozproszonego systemu operacyjnego Jądro Jądro Jądro

Rozproszona pamięć dzielona Efekt pamięci dzielonej uzyskuje się poprzez podział wirtualnej przestrzeni adresowej na strony, których lokalizacje rozrzucone są po wszystkich komputerach. Odwołanie do strony nieobecnej lokalnie powoduje wystąpienie pułapki i sprowadzenie strony z węzła posiadającego odpowiednie dane. Idea jest więc taka sama jak w przypadku stronicowania, z tym że zamiast lokalnego dysku jako pamięci pomocniczej wykorzystywana jest zdalna pamięć RAM.

Rozproszona pamięć dzielona Stronicowana rozproszona pamięć dzielona jako forma komunikacji Problemy z efektywnością: - zwielokrotniania stron do odczytu, - zwielokrotnianie wszystkich stron, - rezygnacja ze ścisłej spójności - fałszywe dzielenie (gdy 2 procesy odwołują się do różnych zmiennych, ale na tej samej stronie)

Sieciowy S.O. Usługi sieciowego systemu operacyjnego Aplikacje rozproszone Usługi sieciowego systemu operacyjnego Usługi sieciowego systemu operacyjnego Jądro Jądro Jądro

Usługi sieciowego S.O. Praca zdalna (np. rlogin) Kopiowane plików (np. rcp) Sieciowy system plików - serwer - klient

Oprogramowanie warstwy pośredniej Aplikacje rozproszone Warstwa pośrednia Usługi Usługi Usługi sieciowego systemu operacyjnego sieciowego systemu operacyjnego Usługi sieciowego systemu operacyjnego Jądro Jądro Jądro

Warstwa pośrednia Sieciowy system operacyjny nie oferuje przezroczystości rozproszonego systemu operacyjnego. Uzyskanie systemu rozproszonego wymaga Uzyskanie systemu rozproszonego wymaga wprowadzenia dodatkowej warstwy oprogramowania - warstwy pośredniej, nadbudowującej nad usługami sieciowymi usługi dla systemu rozproszonego.

Warstwa pośrednia Sieciowe systemy operacyjne w zakresie komunikacji oferują interfejs gniazd (ang. sockets), umożliwiający komunikację pomiędzy rozproszonymi procesami, ale wymagający wskazania lokalizacji poszczególnych procesów (np. poprzez adresy IP). W systemie rozproszonym warstwa pośrednia może dostarczać mechanizmów transparentnej komunikacji, w której procesy identyfikowane są w sposób abstrakcyjny, niezależny od lokalizacji procesów.

Wzorce, założenia do warstwy pośredniej Wszystko jest plikiem (z Unixa) - komunikacja jako zapis/odczyt pliku Zdalne wywołania procedur (RPC) procedury zdalne jak lokalne (ukrywanie komunikacji) Obiekty rozproszone obiekt na jednej maszynie, interfejs do niego na wielu Model dokumentów rozproszonych (WWW)

Usługi warstwy pośredniej Komunikacja RPC, zdalne obiekty, przezroczysty dostęp do rozproszonych plików, baz danych, dokumenty WWW Nazewnictwo lokalizacja zasobów - skalowalność Trwałość pliki, bazy danych, rozproszona pamięć dzielona Transakcje rozproszone atomowość, dane na wielu maszynach, maskowanie awarii Bezpieczeństwo

Otwartość warstwy pośredniej Nadbudowa nad systemem uniezależnienie od systemu Zależność aplikacji od warstwy pośredniej Niekompletność interfejsów warstwy pośredniej konieczność odwoływania się bezpośrednio do systemu Zgodność warstwy pośredniej ze standardem, ale nieprzenośność aplikacji

Przykłady warstw pośrednich gniazda (ang. sockets) RPC (Remote Procedure Call) DCE (Distributed Computing Environment) CORBA (Common Object Request Broker Architecture) DCOM (Distributed Component Object Model) RMI (Remote Method Invocation)

Porównanie systemów Rozproszony S.O. Wieloproc. Wielokomp. Sieciowy system operacyjny Warstwa pośrednia Przezroczystość b. duża duża mała duża Jeden SO? tak tak nie nie Kopie S.O. 1 n n n Komunikacja pamięć dzielona komunikaty pliki zależna od modelu Zarządzanie zasobami globalne, centralne globalne, rozproszone lokalne lokalne Skalowalność nie umiarkowana tak zmienna Otwartość zamknięty zamknięty otwarty otwarty

Model klient-serwer Klient żądanie odpowiedź Serwer wykonanie usługi

Model trójwarstwowy Klient Serwer aplikacji Serwer b. danych

S e r w e r B. danych B. danych B. danych B. danych B. danych Aplikacja Aplikacja Aplikacja B. danych Interfejs Aplikacja Aplikacja Aplikacja Interfejs Interfejs Interfejs Interfejs Interfejs K l i e n t