Rozproszone systemy operacyjne
|
|
- Leszek Grabowski
- 8 lat temu
- Przeglądów:
Transkrypt
1 Rozproszone systemy operacyjne Anna Kobusińska Literatura 1. J. Bacon, Concurrent Systems-An Integrated Approach to Operating Systems, Addison Wesley, J. Brzeziński, Ocena stanu globalnego w systemach rozproszonych, OWN R. Guerraoui, L. Rodrigues, Reliable Distributed Programming, Springer-Verlag, Berlin, K. M. Chandy, J. Misra, Parallel Program Design, A Foundation, Addison Wesley, A. Gościński, Distributed Operating Systems, The Logical Design, Addison Wesley, J.M. Helary, M. Raynal, Synchronization and Control of Distributed Systems and Programs, John Wiley & Sons, K. Hwang, F. Briggs, Computer Architecture and Parallel Processing, McGraw Hill, J.Jaja, An Introduction to Parallel Algorithms, Addison Wesley, A.D. Kshemkalyani, M. Singhal, Distributed Computing Primciples, Algorithms, and Systems, Cambridge University Press, Cambridge, N. Lynch, Distributed Algorithms, Morgan Kaufmann Publishers, Inc., S.J. Müllender, Distributed Systems, ACM Press, M. Raynal, Ditributed Algorithms and Protocols, John Wiley & Sons, M. Singhal, N.G. Shivaratri, Advanced Concepts in Operating Systems Distributed, Database, and Multiprocessor Operating Systems, McGraw Hill, A. Tanenbaum, M. van Steen, Distributed Systems. Principles and Paradigms,Prentice Hall, G.Tel, Introduction to Distributed Algorithms, Cambridge University Press, portal na temat przetwarzania rozproszonego strona edukacyjna na temat systemów rozproszonych krótka charakterystyka największych projektów DC (2) 1
2 Rozwój technologiczny Postęp w ostatnim półwieczu 10 mln dolarów, 1 instrukcja na sekundę 1000 dolarów, 100 mln instrukcji na sekundę razy lepszy współczynnik cena/efektywność sieci komputerowe LAN i WAN (3) Definicja systemu rozproszonego System rozproszony zestaw niezależnych komputerów, sprawiający na jego użytkownikach wrażenie jednego, logicznie zwartego systemu. Aspekty sprzęt: maszyny są autonomiczne oprogramowanie: wrażenie pojedynczego systemu (4) 2
3 Cechy systemów rozproszonych Ukrycie przed użytkownikami: różnic pomiędzy poszczególnymi komputerami sposobów komunikowania się komputerów wewnętrznej organizacji systemu rozproszonego Jednolity i spójny interfejs dla użytkownika niezależnie od czasu i miejsca interakcji Łatwość rozszerzania (skalowania) (5) Architektura systemu rozproszonego Rozbudowa własności lokalnych systemów operacyjnych (SO) Usługi dla aplikacji rozproszonych Oprogramowanie warstwy pośredniej (ang. middleware) (6) 3
4 Cele systemów rozproszonych Łatwe połączenie użytkownik-zasoby Ukrywanie faktu rozproszenia zasobów Otwartość Skalowalność (7) Łączenie użytkowników i zasobów Ekonomia: współdzielony dostęp do zasobów jest tańszy drukarki specjalizowane komputery szybkie pamięci bazy danych zdalne dokumenty Bezpieczeństwo (8) 4
5 Przezroczystość (I) System przezroczysty (transparentny, ang. transparent) sprawia wrażenie systemu scentralizowanego (dla użytkowników i aplikacji). Przezroczystość dostępu (ang. access transparency) ujednolicanie metod dostępu do danych i ukrywanie różnic w reprezentacji danych. (9) Przezroczystość (II) Przezroczystość położenia (ang. location transparency) użytkownicy nie mogą określić fizycznego położenia zasobu (np. na podstawie jego nazwy czy identyfikatora). Przezroczystość wędrówki (ang. migration transparency) można przenosić zasoby pomiędzy serwerami bez zmiany sposoby odwoływania się do nich. Przezroczystość przemieszczania (ang. relocation transparency) zasoby mogą być przenoszone nawet podczas ich używania. (10) 5
6 Przezroczystość (III) Przezroczystość zwielokrotniania (ang. replication transparency) ukrywanie przed użytkownikami faktu zwielokrotniania (replikacji) zasobów. Przezroczystość współbieżności (ang. concurrency transparency) możliwość współbieżnego przetwarzania danych nie powodująca powstawania niespójności w systemie. (11) Przezroczystość (IV) Przezroczystość awarii (ang. failure transparent) maskowanie przejściowych awarii poszczególnych komponentów systemu rozproszonego. Przezroczystość trwałości (ang. persistence transparency) maskowanie sposobu przechowywania zasobu (pamięć ulotna, dysk). Kompromis pomiędzy dużym stopniem przezroczystości a efektywnością systemu. (12) 6
7 Otwartość systemów rozproszonych Usługi zgodne ze standardowymi regułami opisującymi ich składnię i semantykę przykład: protokoły komunikacyjne w sieciach komputerowych Specyfikacja usług poprzez interfejsy język opisu interfejsu (ang. Interface Definition iti Language) ) Specyfikacje muszą być zupełne (kompletne) i neutralne zdolność do współdziałania (ang. interoperability) przenośność (ang. portability) (13) Systemy elastyczne Systemy elastyczne łatwość konfiguracji łatwość rekonfiguracji (np. wymiana poszczególnych komponentów) Organizacja systemu rozproszonego projekt monolityczny logiczne wydzielenie składowych podział na autonomiczne komponenty (koszt: wydajność) oddzielenie polityki od mechanizmu (14) 7
8 Skalowalność Wymiary skalowalności skalowalność pod względem rozmiaru decentralizacja: danych, usług i algorytmów skalowalność geograficzna skalowalność pod względem administracyjnym Algorytmy zdecentralizowane brak informacji globalnej decyzje na podstawie informacji lokalnych odporność na awarie pojedynczych maszyn brak założeń dot. istnienia globalnego zegara (15) Problemy związane z konstrukcją systemów rozproszonych optymalne zrównoleglenie algorytmów przetwarzania ocena poprawności i efektywności algorytmów rozproszonych alokacja zasobów rozproszonych synchronizacja procesów ocena globalnego stanu przetwarzania realizacja zaawansowanych modeli przetwarzania niezawodność bezpieczeństwo (16) 8
9 Motywy różnorodność otwartych t problemów związanych z konstrukcją i zarządzaniem systemami rozproszonymi ogromne rzeczywiste zapotrzebowanie na systemy rozproszone dostępność środków technicznych i praktyczne możliwości ś i realizacji systemów rozproszonych (17) Klasy zastosowań Aplikacje wykorzystujące przetwarzanie rozproszone na wielu jednostkach obliczeniowych i (ang. distributed ib t d supercomputing) Aplikacje wymagające dużej przepustowości (ang. high throughput) Aplikacje na żądanie (ang. on demand) Aplikacje intensywnie przetwarzające dane (ang. data intensive) Aplikacje umożliwiające współpracę (ang. collaborative) (18) 9
10 GRID A computational grid is a hardware and software infrastructure t that t provides dependable, d consistent, pervasive, and inexpensive access to high-end computational capabilities / Ian Foster / (19) GRID cechy dependable consistent pervasive inexpensive usługa wiarygodna użytkownicy żądają pewności, że otrzymają przewidywalny, nieprzerwany poziom wydajności dzięki różnym elementom tworzącym GRID. usługa spójna potrzebny jest standardowy serwis, dostępny poprzez standardowe interfejsy, pracujący ze standardowymi parametrami. usługa powszechnie dostępna (wszechobecna) usługa zawsze powinna być dostępna, niezależnie od tego gdzie znajduje się użytkownik tej usługi. usługa relatywnie tania (opłacalna) dostęp do usługi powinien być relatywnie tani, tak by korzystanie z takiej usługi było atrakcyjne także z ekonomicznego punktu widzenia. (20) 10
11 Co GRID powinien umożliwiać rozproszenie geograficzne zasobów obsługiwać heterogeniczność sprzętową i programową być połączony poprzez heterogeniczną sieć korzystać z ogólnie dostępnych, standardowych protokołów i interfejsów być odporny na zawodny sprzęt pozwalać ć na zmianę dynamiki dostępu do sprzętu zrzeszać różne organizacje ( wirtualne ) z ich własnymi politykami bezpieczeństwa i dostępu do zasobów (21) Cloud computing Chmura obliczeniowa (ang. cloud) to zbiór zasobów wraz z oprogramowaniem, zarządzanych i udostępnianych z użyciem usług przez dostawcę. Typowa charakterystyka: skalowalne, dostępne na żądanie napędzane ekonomią, nie standardami; pay-as-you-go łatwe w użyciu dostępne dla wielu użytkowników z pomocą wirtualizacji (22) 11
12 Cloud computing możliwości i ryzyko płacisz za tyle ile używasz eliminacja kosztów inwestycyjnych yyjy infrastruktury ryzyka y automatyzacja zarządzania przez dostawcę, automatyzacja użycia przez użytkownika (skalowalność na żądanie itp.) iluzja dostępu do nieskończonej puli zasobów dostępnych na żądanie; dowolne zastosowania gdzie są moje dane? nad czym mam kontrolę? co jeśli jeden dostawca nie działa?... (23) Przykładowe projekty przetwarzania rozproszonego SETI FreeDB.org Cure Cancer Fight Anthrax Prime Numbers Distributed.net GIMPS The Internet Movie Database The Distributed Chess Project Wikipedia Dmoz Open Directory Project ClimatePrediction.net Lifemapper (24) 12
13 Rozproszony system informatyczny Rozproszony system informatyczny obejmuje: środowisko przetwarzania rozproszonego węzły, łącza zbiór procesów rozproszonych zbiór procesów sekwencyjnych realizujących wspólne cele przetwarzania (25) Środowisko przetwarzania rozproszonego Środowisko przetwarzania rozproszonego jest zbiorem N autonomicznych jednostek przetwarzających N i (węzłów), zintegrowanych siecią komunikacyjną (środowiskiem komunikacyjnym, łączami komunikacyjnymi, łączami transmisyjnymi). (26) 13
14 Komunikacja w środowisku przetwarzania rozproszonego Komunikacja między węzłami możliwa jest tylko przez transmisję pakietów informacji (wiadomości, komunikatów) łączami komunikacyjnymi. (27) Zegary w środowisku przetwarzania rozproszonego Jednostki przetwarzające realizują przetwarzanie z prędkością ę ą narzucaną przez lokalne zegary. zegary są niezależne węzły działają asynchronicznie. zegary są zsynchronizowane lub istnieje wspólny zegar globalny dla wszystkich węzłów węzły działają synchronicznie. (28) 14
15 Węzeł Jednostka przetwarzająca N i N (węzeł) jest elementem środowiska przetwarzania rozproszonego obejmującym: procesor lokalną pamięć operacyjną interfejs komunikacyjny (29) Łącze komunikacyjne Łącze komunikacyjne jest elementem umożliwiającym transmisję informacji między interfejsami odległych węzłów. Wyróżnia się łącza jedno- i dwu-kierunkowe. (30) 15
16 Bufory łącza Łącza są wyposażone w bufory o określonej pojemności (ang. links capacity). Jeżeli łącze nie posiada buforów (jego pojemność jest równa zero), to mówimy o łączu nie buforowanym, w przeciwnym razie o buforowanym. (31) Kolejność odbierania komunikatów Łącze FIFO kolejność odbierania komunikatów wysyłanych z danego węzła jest zgodna z kolejnością ich wysyłania Łącze nonfifo w przeciwnym przypadku (32) 16
17 Niezawodność łącza Łącza mogą gwarantować również, w sposób niewidoczny dla użytkownika, że żadna wiadomość nie jest tracona, duplikowana lub zmieniana są to tzw. łącza niezawodne (ang. reliable, lossless, duplicate free, error free, uncorrupted, no spurious). (33) Czas transmisji Czas transmisji w łączu niezawodnym (ang. transmission delay, in-transit time) może być ograniczony lub jedynie określony jako skończony lecz nieprzewidywalny. (34) 17
18 Struktura środowiska przetwarzania Często przedstawiana jako graf: G = V, A wktórym: wierzchołki grafu V i V reprezentują jednostki przetwarzające N i N, krawędzie (V i, V j ) A, A V V, grafu niezorientowanego lub łuki V i, V j A grafu zorientowanego, reprezentują odpowiednio łącza dwu- lub jedno-kierunkowe. (35) Przykłady topologii (36) 18
19 Przetwarzanie rozproszone Procesem rozproszonym (przetwarzaniem rozproszonym) nazywamy współbieżne i skoordynowane (ang. concurrent and coordinated) wykonanie w środowisku rozproszonym zbioru P procesów sekwencyjnych P 1, P 2, P 3,..., P n współdziałających w realizacji wspólnego celu przetwarzania. (37) Proces sekwencyjny Nieformalnie, każdy proces sekwencyjny jest działaniem wynikającym z wykonywania w pewnym środowisku (kontekście) programu sekwencyjnego (algorytmu sekwencyjnego), który składa się zciągu operacji (instrukcji, wyrażeń) atomowych (nieprzerywalnych). (38) 19
20 Klasy operacji Wyróżnia się dwie podstawowe klasy operacji: wewnętrzne (ang. internal) odnoszą się tylko do zmiennych lokalnych programu komunikacyjne (ang. communication) odnoszą się do środowiska i dotyczą komunikatów (ang. messages) ) oraz kanałów (ang. channels) ) (39) Kanał - definicja Kanał jest obiektem (zmienną) skojarzonym z uporządkowaną parą procesów P i,p j, modelującym jednokierunkowe łącze transmisyjne. Typem tego obiektu jest zbiór wiadomości, którego rozmiar nazywany jest pojemnością kanału. (40) 20
21 Kanały incydentne, wejściowe i wyjściowe Kanałł skojarzony z parą procesów P i, P j, oznaczamy przez C i,j oraz nazywamy kanałem incydentnym z procesem P i i z procesem P j. Ponadto, kanał C i,j nazywamy kanałem wyjściowym procesu P i oraz kanałem wejściowym procesu P j. P i P j C i,j (41) Zbiory kanałów Zbiór kanałów wejściowych i wyjściowych tego procesu odpowiednio przez C IN OUT i i C i. Zbiór wszystkich kanałów incydentnych procesu P i oznaczymy przez C i. Tak więc: C i = C i IN C i OUT (2.1) C i IN C i OUT (42) 21
22 Zbiory procesów sąsiednich Zbiór sąsiednich procesów wejściowych procesu P i P IN i = {P j : P j, P i C IN i } (2.2) 2) Zbiór sąsiednich procesów wyjściowych procesu P i P OUT i = {P j : P i,p j C OUT i } (2.3) P OUT i P i IN (43) Stan kanału Przez stan L ij i,j kanału C ij i,j rozumieć będziemy zbiór, lub uporządkowany zbiór, wiadomości wysłanych przez proces P i lecz jeszcze nie odebranych przez proces P j. (44) 22
23 Modelowanie opóźnienia w kanale W celu modelowania w kanale opóźnień komunikacyjnych, w zbiorze wiadomości L i,j wyróżnia się dwa rozłączne podzbiory: zbiór wiadomości transmitowanych L i,j T (ang. in-transit) zbiór wiadomości dostępnych L A ij i,j (ang. available, arrived, ready) Oczywiście, w każdej chwili L i,j = L i,jt L i,j A (2.4) (45) Stan kanału przykład L ij i,j L A ij i,j L i,j T P i C i,j P j (46) 23
24 Predykaty opisujące stan kanału empty(c i,j ) in-transit(c i,j ) available(c i,j ) i,j (47) Predykat empty empty(c i,j ) L i,j = (2.5) P i C i,j P j (48) 24
25 Predykat in-transit in-transit(c i,j ) L T i,j (2.6) P i C i,j P P j (49) Predykat available available(c i,j ) L A i,j (2.7) P i C i,j P j (50) 25
26 Indywidualne operacje komunikacyjne (1) send(p i,p j,m) Efektem wykonania tej operacji jest umieszczenie wiadomości M w kanale C i,j, a więc wykonanie podstawienia L ij i,j := L ij i,j {M} (2.8) (51) Indywidualne operacje komunikacyjne (2) receive(p i, P j, inm) Jeżeli kanał C i,j nie jest pusty i pewna wiadomość M jest bezpośrednio dostępna (available(c i,j ) ma wartość True), to efektem wykonania tej operacji jest pobranie wiadomości M z kanału C i,j, a więc wykonanie podstawienia: L i,j := L i,j \{M} oraz inm := M (2.9) (52) 26
27 Grupowe operacje komunikacyjne (1) send(p R i, P ir, M) Efektem wykonania tej operacji jest umieszczenie wiadomości we wszystkich kanałach C i,j,takichże P j P ir,awięc podstawienie dla wszystkich tych kanałów: L i,j := L i,j {M} (2.10) (53) Grupowe operacje komunikacyjne (2) receive(p S js, P j, sinm) Efektem wykonania operacji receive(p js, P j, sinm) jest atomowe pobranie wiadomości M i od procesów P i P js i umieszczanie ich w sinm. Tym samym, dla każdego procesu P i P js, wykonywane jest kolejno podstawienie L i,j := L i,j \ {M i } oraz sinm := sinm {M i } (2.11) (54) 27
28 Rodzaje komunikacji Kanały o niezerowej pojemności umożliwiają realizację operacji następujących typów komunikacji: nieblokowanej blokowanej (55) Komunikacja synchroniczna W komunikacji synchronicznej, nadawca i odbiorca są blokowani aż odpowiedni odbiorca odczyta przesłaną do niego wiadomość (ang. rendez-vous). send( ) receive( ) P i P j (56) 28
29 Komunikacja asynchroniczna W przypadku komunikacji asynchronicznej, nadawca lub odbiorca komunikuje się w sposób nieblokowany. send( ) receive( ) P i P j (57) Stan procesu (1) Stan S i (t) procesu w chwili t czasu lokalnego jest w ogólności zbiorem wartości wszystkich zmiennych lokalnych skojarzonych z procesem w chwili t oraz ciągów wiadomości wysłanych (wpisanych) do incydentnych kanałów wyjściowych i ciągów wiadomości odebranych z incydentnych kanałów wejściowych do chwili t. (58) 29
30 Stan procesu (2) Dla każdego t,, S i i( (t) S i.wceluuproszczenia notacji, j, zależność stanu od czasu można przyjąć za domyślną i jeśli nie prowadzi to do niejednoznaczności, oznaczać stan w pewnej chwili t przez S i. Zbiór S i0 jest zbiorem stanów początkowych, których wartości są zadawane wstępnie, bądź są wynikiem zajścia wyróżnionego zdarzenia inicjującego E i0. (59) Definicja zdarzenia Zdarzenie E k ik odpowiada d unikalnemu wykonaniu operacji atomowej, zmieniającemu stan S i procesu i ewentualnie stan incydentnych z procesem kanałów C i,j lub C j,i. Jeżeli operacja odpowiadająca zdarzeniu została wykonana, to powiemy, że zdarzenie zaszło. (60) 30
31 Klasy zdarzeń e_send e_receive e_internal (61) Zdarzenie e_send e_send (P i, P j, M) zachodzi w procesie P i, w wyniku wykonania przez ten proces operacji send(p i, P j, M) e_send (P i,p ir, M) zachodzi w procesie P i, w wyniku wykonania przez ten proces operacji send(p i, P ir, M) (62) 31
32 Zdarzenie e_receive e_receive (P i, P j, M) zachodzi w procesie P j, gdy P j wykonał operację receive(p i,p j,inm), a odczytana do zmiennej lokalnej inm wiadomość M pochodziła od procesu P i e_receive (P js, P j, M js ) zachodzi w procesie P j, gdy P j wykonał operację receive(p S js, P j, sinm), a odczytane do zmiennej lokalnej sinm wiadomości M i M S j pochodzą od procesów P i P S j (63) Zdarzenie e_internal e_internal (P i ) zachodzi gdy proces P i wykonał operację, która nie zmienia stanu jego kanałów incydentnych. Do zdarzeń lokalnych zalicza się między innymi zdarzenia: e_init(p i, S ik ) które nadaje procesowi P j stan S k i (w szczególności stan początkowy) e_stop(p i ) które kończy wykonywanie procesu (64) 32
33 Dostępność wiadomości Dostępność wiadomości utożsamiać można z zajściem zdarzeń w środowisku komunikacyjnym: zdarzenie dostarczenia wiadomości M e_deliver(p i,p j,m) zdarzenia nadejścia wiadomości M e_arrive(p i,p j,m) Przez P ja oznaczać będziemy zbiór procesów, których wiadomości dotarły isą dostępne dla P j. (65) Funkcja tranzycji Funkcja tranzycji F i S i E i S i opisuje reguły zmiany stanu S na S wwynikuzajścia zdarzenia E. Elementy S, E, S 2 F i nazwiemy tranzycjami lub krokami. W zależności od zachodzącego zdarzenia E, tranzycję nazwiemy odpowiednio tranzycją wejścia, wyjścia lub lokalną. l (66) 33
34 Zdarzenia dopuszczalne Funkcja tranzycji dopuszcza możliwość zajścia zdarzenia E tylko w tych stanach S, dla których S, E, S 2 F i. Dlatego też, w wypadku gdy S, E, S 2 F i, powiemy że zdarzenie jest dopuszczalne (ang. allowed) w stanie S. Wprowadzimy też predykat allowed(e) oznaczający, że w danej chwili zdarzenie E jest dopuszczalne. (67) Zdarzenia gotowe Oprócz czynnika wewnętrznego (stanu procesu), zajście zdarzenia może być dodatkowo uwarunkowane stanem kanałów wejściowych (środowiska). Jeśli zdarzenie może zajść ze względu na warunki zewnętrzne (stan kanałów), to powiemy że zdarzenie jest przygotowane lub gotowe (ang. ready). Fakt gotowości zdarzenia E w danej chwili wyrażać będzie predykat ready(e). (68) 34
35 Predykat enable Predykat enable(e), oznacza, że zdarzenie jest aktywne, czyli jednocześnie gotowe i dopuszczalne. Stąd też: enable(e) ready(e) allowed(e) (2.14) (69) Procesy zakończone, wstrzymane Powiemy, że proces P i jest w stanie końcowym S ie,jeżeli zbiór zdarzeń ń dopuszczalnych w tym stanie jest pusty. Jeżeli natomiast niepusty zbiór zdarzeń dopuszczalnych zawiera wyłącznie zdarzenia odbioru i żadne z tych zdarzeń nie jest aktywne (gotowe), to powiemy że proces jest wstrzymany (zablokowany). (70) 35
36 Procesy aktywne, pasywne Proces wstrzymany lub zakończony nazwiemy pasywnym. Przez proces aktywny będziemy natomiast rozumieć proces, który nie jest pasywny. Przyjmujemy, że w każdej chwili t stan procesu P i reprezentuje zmienna logiczna passive i, przyjmująca wartość True, gdy proces P i jest pasywny False, gdy proces P i jest aktywny (71) Proces aktywny Aktywny proces P i (passive i =False) może wysyłać i odbierać wiadomości, wykonywać tranzycje lokalne, a więc potencjalnie może również spontanicznie (w dowolnej chwili) zmienić swój stan na pasywny. (72) 36
37 Proces pasywny W stanie pasywnym procesu P i (passive i =True) dopuszczalne są natomiast co najwyżej zdarzenia odbioru. Zmiana stanu procesu z pasywnego na aktywny uwarunkowana jest osiągnięciem gotowości przez choćby jedno z dopuszczalnych zdarzeń odbioru, czyli spełnieniem tak zwanego warunku uaktywnienia. (73) Warunek uaktywnienia Warunek uaktywnienia (ang. activation condition) procesu P i związany jest ze zbiorem warunkującym D i, zbiorem P ia, oraz predykatem activate i (X). (74) 37
38 Zbiór warunkujący Zbiór warunkujący (ang. dependent set), jest sumą mnogościową zbiorów P S i wszystkich zdarzeń odbioru dopuszczalnych w danej chwili. (75) Predykat activate Predykat activate i (X) zdefiniowany jest w sposób następujący: i 1. jeżeli X = D i,toactivate i (X)=True 2. jeżeli X =, toactivate i (X)=False 3. jeżeli X D i i X, to: activate i (X) X :: X X X (P ia =X ( passive i passive i )) (2.15) gdzie passive i passive i oznacza, że pasywny proces P i zmieni swój stan na aktywny w skończonym, choć nieprzewidywalnym czasie. (76) 38
39 Predykat ready Warunek uaktywnienia procesu P i formalnie wyraża predykat ready i (X): ready i (X) (P ia X ) activate i (X) (2.17) Gdy proces jest uaktywniany, to wiadomości, których dostarczanie doprowadziło do spełnienia warunku uaktywnienia, i są atomowo pobierane z buforów wejściowych i dalej przetwarzane. (77) Modele żądań model jednostkowy model AND model OR podstawowy model kspośród r model OR-AND dysjunkcyjny j model k spośródś r model predykatowy (78) 39
40 Model jednostkowy W modelu jednostkowym warunkiem uaktywnienia i pasywnego procesu jest przybycie wiadomości od jednego, ściśle określonego nadawcy. D i W tym przypadku D i = 1, dla każdego naturalnego i, 1 i n. Model ten odpowiada szerokiej klasie systemów, w których procesy żądają kolejno po jednym tylko zasobie. (79) Model AND W modelu AND proces pasywny staje się aktywnym, jeżeli dotarły wiadomości od wszystkich procesów tworzących zbiór warunkujący. Model ten nazywany jest również modelem zasobowym. D i (80) 40
41 Model OR W modelu OR do uaktywnienia procesu wystarczy jedna wiadomość od któregokolwiek z procesów ze zbioru warunkującego. Model ten nazywany jest również modelem komunikacyjnym. D i (81) Podstawowy model k spośród r W podstawowym modelu k spośród r, z pasywnym procesem P i skojarzony jest zbiór warunkujący D i, liczba naturalna k i, 1 k i D i, oraz liczba r i = D i. W modelu tym proces staje się aktywny tylko wówczas, gdy uzyska wiadomości od co najmniej k i różnych procesów ze zbioru warunkującego D i. (82) 41
42 Podstawowy model k spośród r przykład D i r i =5 k i =2 (83) Model OR-AND W modelu OR-AND zbiór warunkujący D i pasywnego procesu P i jest zdefiniowany jako D i1 D i2... D qi i, gdzie dla każdego naturalnego u, 1 u q i, D iu P. Proces staje się aktywny po otrzymaniu wiadomości od każdego z procesów tworzących zbiór D i1 lub od każdego z procesów tworzących zbiór D 2 i2 lub... lub od każdego z procesów tworzących zbiór D i qi. (84) 42
43 Model OR-AND przykład D i 1 D i 2 D i 3 (85) Model predykatowy W modelu predykatowym, dla każdego pasywnego procesu P i ze zbiorem warunkującym D i określony jest predykat activate i (X), gdzie X P. Jak łatwo zauważyć, stosownie definiując predykat activate i i( (X) można oczywiście uzyskać wszystkie wcześniej omówione modele żądań. (86) 43
44 Relacja poprzedzania zdarzeń (1) Oznaczmy przez a relację poprzedzania (ang. happen before, causal precedence, happened before) ) zdefiniowanąą na zbiorze Λ w następujący sposób: 1) i = j k < l, lub 2) i j oraz E ik jest zdarzeniem e_send(p i, P j, M) wysłania wiadomości M, a zdarzenie E jl jest zdarzeniem e_receive(p i, P j, M) odbioru tej E ik a E jl samej wiadomości, lub 3) istnieje sekwencja zdarzeń E 0, E 1, E 2,..., E s, taka że E 0 = E ik,e s = E jl idlakażdej pary E u, E u+1 gdzie 0 u s-1, zachodzi 1) albo 2). (87) Relacja poprzedzania lokalnego Przez a i oznaczamy relację poprzedzania lokalnego zdarzeń procesu, takąże: E ik a i E l j wtedy i tylko wtedy, gdy i=j oraz k<l (lub gdy i=j oraz E ik a E jl ). (88) 44
45 Zdarzenia przyczynowo-zależne Zdarzenia E k i i E l j nazywamy przyczynowo-zależnymi, ż jeżeli: E ik a E j l albo E jl a E i k (3.9) W przeciwnym razie zdarzenie te nazwiemy przyczynowo- niezależnymi lub współbieżnymi (ang. concurrent, causally independent), co będziemy oznaczać przez E ik E jl. (89) Diagramy przestrzenno-czasowe Realizację przetwarzania rozproszonego można przedstawić graficznie w postaci diagramu przestrzenno-czasowego (ang. space-time diagram), w którym osie reprezentują upływ czasu globalnego, a punkty na osiach zdarzenia. (90) 45
46 Przykładowy diagram P 1 P 2 P 3 E 1 1 E 1 2 E 1 3 E 1 4 E E 1 2 E 2 2 E 3 2 E 4 2 E 1 3 E 2 3 E 3 3 E 4 3 E 11 E 21, E 11 E 22, E 11 E 31, E 11 E 34, E 31 a E 12, E 33 a E 23, E 14 a E 24, E 31 a E 14, E 31 a E 24, E 32 a E 4 2 (91) Relacja poprzedzania stanów lokalnych Przez analogię do relacji na zbiorze zdarzeń, można zdefiniować częściowy porządek na zbiorze stanów wszystkich procesów P i P w sposób następujący: E k+1 i a E jl,lub S ik a S jl (3.10) E k+1 i = E l j (92) 46
47 Stany współbieżne Stany lokalne, l dla których nie zachodzi ani relacja S k ik a S l j ani też relacja S jl a S ik, nazywamy współbieżnymi. (93) Graf stanów osiągalnych Zbiór częściowo uporządkowany Λ, a może być przedstawiony w postaci grafu zorientowanego, w którym wierzchołki odpowiadają stanom Σ, a łuki Σ k, Σ l oznaczają istnienie zdarzenia dopuszczalnego takiego, że Σ k, E, Σ l Φ. (3.11) Graf taki, będziemy nazywać grafem stanów osiągalnych przetwarzania rozproszonego lub siatką obliczeń rozproszonych. (94) 47
48 Przykład grafu stanów osiągalnych E 1 P 1 E 1 M 2 1 P 2 P 3 1 E 1 2 E 1 3 E 1 4 Σ 0,0, 0 M 2 E3 1 E 3 2 E 3 3 Σ 4,1, 1 Σ 0,1, 0 0 M 3 Σ 1,1, 0 Σ 4,1, 2 Σ 3,1, 1 Σ 4,1, 3 Σ 3,1, 2 Σ 2,1, 1 Σ 3,1, 3 Σ 2,1, 2 Σ 1,1, 1 Σ 1,1, 2 Σ 0,1, 1 Σ 0,1, 2 Σ 0,0, 1 Σ 0,0, 2 (95) Niedeterminizm przetwarzania W kontekście grafu stanów osiągalnych przetwarzania rozproszonego, każda realizacja przetwarzania rozproszonego jest pewną ścieżką w tym grafie. Istnienie wiele różnych ścieżek ilustruje niedeterminizm przetwarzania rozproszonego, oznaczający że dla danego stanu może istnieć wiele stanów następnych. (96) 48
49 Niedeterministyczne zdarzenie lokalne Lokalne zdarzenie procesu jest niedeterministyczne, gdy jego zajście możeż byćć zastąpione przez zajście innego zdarzenia i wybór ten nie jest przewidywalny. Jeżeli przykładowo sekwencyjne wykonanie procesu może być wkażdej chwili zmienione w wyniku zajścia przerwania zewnętrznego, to wszystkie zdarzenia tego procesu są niezdeterminowane. (97) Przetwarzanie zdeterminowane i niedeterministyczne Przetwarzanie nazywamy zdeterminowanym jeżeli wszystkie zdarzenia są zdeterminowane. W przeciwnym wypadku, przetwarzanie nazywamy niedeterministycznym. (98) 49
50 Przetwarzanie quasi-deterministyczne W ramach niedeterministycznego przetwarzania rozproszonego wyróżnia się podklasę przetwarzania quasi deterministycznego (ang. quasi-deterministic, piece-wice deterministic, event-driven), w której niedeterminizm jest wyłącznie konsekwencją niedeterminizmu operacji odbioru. (99) Diagramy równoważne Należy zauważyć, że w ogólności istnieje wiele różnych diagramów przestrzenno-czasowych, którym odpowiada taki sam zbiór częściowo uporządkowany Λ, a. Diagramy takie nazywa się diagramami równoważnymi. (100) 50
51 Przykład diagramów równoważnych E 1 1 E 2 1 E 3 1 E 4 1 P 1 E 1 M 2 1 P 2 P 3 M 3 M 2 E3 1 E 3 2 E 3 3 E 1 1 E 12 E 3 1 E 4 1 P 1 E 1 M 1 M 3 2 P 2 M 2 E3 1 E 2 3 E 3 3 P 3 (101) 51
Przetwarzanie rozproszone
Wykład prowadzą: Jerzy Brzeziński Jacek Kobusiński Plan wykładu Proces sekwencyjny Komunikaty, kanały komunikacyjne Stan kanału Operacje komunikacyjne Model formalny procesu sekwencyjnego Zdarzenia Warunek
Bardziej szczegółowoPrzetwarzanie rozproszone
Przetwarzanie rozproszone Plan wykładu Celem wykładu jest zapoznanie słuchacza z podstawowymi pojęciami i problemami związanymi z przetwarzaniem rozproszonym. Wykład obejmie omówienie m. in. definicji
Bardziej szczegółowoPrzetwarzanie rozproszone
Przetwarzanie rozproszone Plan wykładu Celem wykładu jest zapoznanie słuchacza z podstawowymi pojęciami i problemami związanymi z przetwarzaniem rozproszonym. Wykład obejmie omówienie m. in. definicji
Bardziej szczegółowoProces rozproszony 1
Proces rozproszony 1 Plan wykładu Celem wykładu jest zapoznanie słuchacza z podstawowymi pojęciami związanymi z przetwarzaniem rozproszonym. Wykład ten jest kontynuacją wykładu poprzedniego, w którym zdefiniowano
Bardziej szczegółowoProces rozproszony. Plan wykładu. Wykład prowadzą: Jerzy Brzeziński Jacek Kobusiński. Proces rozproszony. Zbiór stanów globalnych (1)
Proces rozproszony Wykład prowadzą: Jerzy Brzeziński Jacek Kobusiński Pan wykładu Proces rozproszony Wykonanie procesu, historia procesu Stan osiągany Reacja poprzedzania zdarzeń Diagramy przestrzenno-czasowe
Bardziej szczegółowoPROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ W RAMACH EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO OPIS PRZEDMIOTU
OPIS PRZEDMIOTU Nazwa przedmiotu Systemy rozproszone Kod przedmiotu Wydział Wydział Matematyki, Fizyki i Techniki Instytut/Katedra Instytut Mechaniki i Informatyki Stosowanej Kierunek Informatyka Specjalizacja/specjalność
Bardziej szczegółowoSystemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.
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ą..
Bardziej szczegółowoWprowadzenie. Plan wykładu. Wykład prowadzą: Jerzy Brzeziński Jacek Kobusiński. Cechy systemów rozproszonych
Wykład prowadzą: Jerzy Brzeziński Jacek Kobusiński Wprowadzenie Plan wykładu Wprowadzenie Podstawowe definicje Charakterystyka środowiska przetwarzania rozproszonego Przykłady środowisk Internet GRID @Home
Bardziej szczegółowoSystemy rozproszone System rozproszony
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ą.
Bardziej szczegółowowspółbieżność - zdolność do przetwarzania wielu zadań jednocześnie
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ą.
Bardziej szczegółowoDetekcja zakleszczenia (1)
Detekcja zakleszczenia (1) Wykład prowadzą: Jerzy Brzeziński Jacek Kobusiński Plan wykładu Procesy aktywne i pasywne Definicja zakleszczenia Problem detekcji wystąpienia zakleszczenia Detekcja zakleszczenia
Bardziej szczegółowoPrzetwarzanie rozproszone. Jerzy Brzeziński
Wprowadzenie Jerzy Brzeziński Literatura 1. J. Bacon, Concurrent Systems - An Integrated Approach to Operating Systems, Addison Wesley, 1992. 2. J. Brzeziński, Ocena stanu globalnego w systemach rozproszonych,
Bardziej szczegółowo5. Model komunikujących się procesów, komunikaty
Jędrzej Ułasiewicz str. 1 5. Model komunikujących się procesów, komunikaty Obecnie stosuje się następujące modele przetwarzania: Model procesów i komunikatów Model procesów komunikujących się poprzez pamięć
Bardziej szczegółowoAlgorytmy Równoległe i Rozproszone Część VI - Systemy rozproszone, podstawowe pojęcia
Algorytmy Równoległe i Rozproszone Część VI - Systemy rozproszone, podstawowe pojęcia Łukasz Kuszner pokój 209, WETI http://www.kaims.pl/ kuszner/ kuszner@kaims.pl Oficjalna strona wykładu http://www.kaims.pl/
Bardziej szczegółowoProblemy niezawodnego przetwarzania w systemach zorientowanych na usługi
Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi Jerzy Brzeziński, Anna Kobusińska, Dariusz Wawrzyniak Instytut Informatyki Politechnika Poznańska Plan prezentacji 1 Architektura
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak 1
Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 2 (CW, pok. 5) 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl Dariusz.Wawrzyniak@put.edu.pl www.cs.put.poznan.pl/dwawrzyniak
Bardziej szczegółowoMiddleware wprowadzenie października 2010
Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 2 (CW, pok. 5) 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl Dariusz.Wawrzyniak@put.edu.pl www.cs.put.poznan.pl/dwawrzyniak/middleware
Bardziej szczegółowoMiddleware wprowadzenie października Dariusz Wawrzyniak (IIPP) 1
Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 2 (CW, pok. 5) 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl poznan pl Dariusz.Wawrzyniak@put.edu.pl www.cs.put.poznan.pl/dwawrzyniak/middleware
Bardziej szczegółowoWstęp. Historia i przykłady przetwarzania współbieżnego, równoległego i rozproszonego. Przetwarzanie współbieżne, równoległe i rozproszone
Wstęp. Historia i przykłady przetwarzania współbieżnego, równoległego i rozproszonego 1 Historia i pojęcia wstępne Przetwarzanie współbieżne realizacja wielu programów (procesów) w taki sposób, że ich
Bardziej szczegółowomiejsca przejścia, łuki i żetony
Sieci Petriego Sieć Petriego Formalny model procesów umożliwiający ich weryfikację Główne konstruktory: miejsca, przejścia, łuki i żetony Opis graficzny i matematyczny Formalna semantyka umożliwia pogłębioną
Bardziej szczegółowoprocesów Współbieżność i synchronizacja procesów Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak
Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Abstrakcja programowania współbieżnego Instrukcje atomowe i ich przeplot Istota synchronizacji Kryteria poprawności programów współbieżnych
Bardziej szczegółowoSieci Petriego. Sieć Petriego
Sieci Petriego Sieć Petriego Formalny model procesów umożliwiający ich weryfikację Główne konstruktory: miejsca, przejścia, łuki i żetony Opis graficzny i matematyczny Formalna semantyka umożliwia pogłębioną
Bardziej szczegółowoStan globalny. Krzysztof Banaś Systemy rozproszone 1
Stan globalny Krzysztof Banaś Systemy rozproszone 1 Stan globalny Z problemem globalnego czasu jest związany także problem globalnego stanu: interesuje nas stan systemu rozproszonego w konkretnej pojedynczej
Bardziej szczegółowoSystemy Rozproszone. Zagadnienia do egzaminu.
Systemy Rozproszone. Zagadnienia do egzaminu. 1. Definicje systemu rozproszonego i podstawowe pojęcia związane z takim systemem: węzeł, klient, serwer, peer, zasób, usługa. 2. Główne wyzwania związane
Bardziej szczegółowoAlgorytmy i Struktury Danych
POLITECHNIKA KRAKOWSKA - WIEiK KATEDRA AUTOMATYKI i TECHNIK INFORMACYJNYCH Algorytmy i Struktury Danych www.pk.edu.pl/~zk/aisd_hp.html Wykładowca: dr inż. Zbigniew Kokosiński zk@pk.edu.pl Wykład 12: Wstęp
Bardziej szczegółowoKonstrukcja spójnego obrazu stanu globalnego - wprowadzenie
Konstrukcja spójnego obrazu stanu globalnego - wprowadzenie Plan wykładu Celem wykładu jest zaznajomienie studenta z problematyką konstrukcji obrazu spójnego stanu globalnego. Wykład obejmie omówienie
Bardziej szczegółowoSystemy rozproszone. Wstęp. Krzysztof Banaś Systemy rozproszone 1
Systemy rozproszone Wstęp Krzysztof Banaś Systemy rozproszone 1 Systemy rozproszone Możliwa definicja: Co najmniej dwa zasoby, z których co najmniej jeden jest komputerem, połączone siecią, komunikujące
Bardziej szczegółowoMechanizmy rozgłaszania niezawodnego
Mechanizmy rozgłaszania niezawodnego Rozgłaszanie niezawodne definicja nieformalna Nieformalnie, przez rozgłaszanie rozumiemy mechanizm (abstrakcję) komunikacyjny, za pomocą którego proces możewysłać wiadomość
Bardziej szczegółowoCzas wirtualny, złożoność algorytmów
Czas wirtualny, złożoność algorytmów Monitor Proces aplikacyjny P i Z każdym procesem P i proces monitora Q i. skojarzony jest Monitor Q i Środowisko komunikacyjne (2) 1 Cechy monitora Monitor może odczytywać
Bardziej szczegółowoPrzetwarzanie Rozproszone i Równoległe
WYDZIAŁ INŻYNIERII ELEKTRYCZNEJ I KOMPUTEROWEJ KATEDRA AUTOMATYKI I TECHNIK INFORMACYJNYCH Przetwarzanie Rozproszone i Równoległe www.pk.edu.pl/~zk/prir_hp.html Wykładowca: dr inż. Zbigniew Kokosiński
Bardziej szczegółowoProjektowanie algorytmów równoległych. Zbigniew Koza Wrocław 2012
Projektowanie algorytmów równoległych Zbigniew Koza Wrocław 2012 Spis reści Zadniowo-kanałowy (task-channel) model algorytmów równoległych Projektowanie algorytmów równoległych metodą PACM Task-channel
Bardziej szczegółowoReferencyjny model OSI. 3 listopada 2014 Mirosław Juszczak 37
Referencyjny model OSI 3 listopada 2014 Mirosław Juszczak 37 Referencyjny model OSI Międzynarodowa Organizacja Normalizacyjna ISO (International Organization for Standarization) opracowała model referencyjny
Bardziej szczegółowoProtokoły sieciowe - TCP/IP
Protokoły sieciowe Protokoły sieciowe - TCP/IP TCP/IP TCP/IP (Transmission Control Protocol / Internet Protocol) działa na sprzęcie rożnych producentów może współpracować z rożnymi protokołami warstwy
Bardziej szczegółowoProblem detekcji zakończenia (I)
Problem detekcji zakończenia (I) Plan wykładu Celem wykładu jest zapoznanie studenta z tematyką detekcji zakończenia. Wykład obejmie przedstawienie przykładów ilustrujących potrzebę problemy detekcji zakończenia
Bardziej szczegółowoProblem detekcji zakończenia (I)
Problem detekcji zakończenia (I) Plan wykładu Celem wykładu jest zapoznanie studenta z tematyką detekcji zakończenia. Wykład obejmie przedstawienie przykładów ilustrujących potrzebę problemy detekcji zakończenia
Bardziej szczegółowoProtokoły sieciowe model ISO-OSI Opracował: Andrzej Nowak
Protokoły sieciowe model ISO-OSI Opracował: Andrzej Nowak OSI (ang. Open System Interconnection) lub Model OSI to standard zdefiniowany przez ISO oraz ITU-T, opisujący strukturę komunikacji sieciowej.
Bardziej szczegółowoUniwersalny Konwerter Protokołów
Uniwersalny Konwerter Protokołów Autor Robert Szolc Promotor dr inż. Tomasz Szczygieł Uniwersalny Konwerter Protokołów Szybki rozwój technologii jaki obserwujemy w ostatnich latach, spowodował że systemy
Bardziej szczegółowoProblem detekcji zakończenia
Problem detekcji zakończenia Przykład sortowanie rozproszone Rozważmy problem sortowania rozproszonego zbioru X składającego się z v różnych liczb naturalnych, w środowisku rozproszonym o n węzłach (procesorach),
Bardziej szczegółowoWzajemne wykluczanie i zakleszczenie
Wzajemne wykluczanie i zakleszczenie Wzajemne wykluczanie Wzajemne wykluczenie zapewnia procesom ochronę przy dostępie do zasobów, daje im np. gwarancję, że jako jedyne będą mogły z nich korzystać Typy
Bardziej szczegółowoWstęp do programowania 2
Wstęp do programowania 2 wykład 10 Zadania Agata Półrola Wydział Matematyki UŁ 2005/2006 http://www.math.uni.lodz.pl/~polrola Współbieżność dotychczasowe programy wykonywały akcje sekwencyjnie Ada umożliwia
Bardziej szczegółowoRozproszone i obiektowe systemy baz danych. Wykład 4. Wymagania projektowe systemów rozproszonych
Rozproszone i obiektowe systemy baz danych Dr inż. Robert Wójcik Wykład 4. Wymagania projektowe systemów rozproszonych 4.1. Współdzielenie zasobów 4.2. Otwartość 4.3. Współbieżność 4.4. Skalowalność 4.5.
Bardziej szczegółowoRozwój technologiczny
Systemy rozproszone Rozwój technologiczny Postęp w ostatnim półwieczu Kiedyś: 10 mln dolarów, 1 instrukcja na sekundę Obecnie: 0,00001 dolara, 1 instrukcja na sekundę 12 12 razy lepszy współczynnik cena/efektywność
Bardziej szczegółowoAlgorytmy Równoległe i Rozproszone Część VII - Systemy rozproszone, wstęp
Algorytmy Równoległe i Rozproszone Część VII - Systemy rozproszone, wstęp Łukasz Kuszner pokój 209, WETI http://www.sphere.pl/ kuszner/ kuszner@sphere.pl Oficjalna strona wykładu http://www.sphere.pl/
Bardziej szczegółowoTryby komunikacji między procesami w standardzie Message Passing Interface. Piotr Stasiak Krzysztof Materla
Tryby komunikacji między procesami w standardzie Message Passing Interface Piotr Stasiak 171011 Krzysztof Materla 171065 Wstęp MPI to standard przesyłania wiadomości (komunikatów) pomiędzy procesami programów
Bardziej szczegółowoUNIKANIE IMPASÓW W SYSTEMACH PROCESÓW WSPÓŁBIEŻNYCH
UNIKANIE IMPASÓW W SYSTEMACH PROCESÓW WSPÓŁBIEŻNYCH Robert Wójcik Instytut Cybernetyki Technicznej Politechniki Wrocławskiej 1. Impasy w systemach procesów współbieżnych 2. Klasyczne algorytmy unikania
Bardziej szczegółowoMiddleware wprowadzenie października Dariusz Wawrzyniak. Instytut Informatyki ul. Piotrowo 2 (CW, pok. 5)
Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 2 (CW, pok. 5) 60-965 Poznańń Dariusz.Wawrzyniak@cs.put.poznan.pl Dariusz.Wawrzyniak@put.edu.pl i www.cs.put.poznan.pl/dwawrzyniak/middleware
Bardziej szczegółowoSpis treści. 1 Wprowadzenie. 1.1 Podstawowe pojęcia. 1 Wprowadzenie Podstawowe pojęcia Sieci komunikacyjne... 3
Spis treści 1 Wprowadzenie 1 1.1 Podstawowe pojęcia............................................ 1 1.2 Sieci komunikacyjne........................................... 3 2 Problemy systemów rozproszonych
Bardziej szczegółowoAkademia Techniczno-Humanistyczna w Bielsku-Białej
Akademia Techniczno-Humanistyczna w Bielsku-Białej Wydział Budowy Maszyn i Informatyki Laboratorium z sieci komputerowych Ćwiczenie numer: 9 Temat ćwiczenia: Aplikacje klient-serwer. 1. Wstęp teoretyczny.
Bardziej szczegółowoCZĘŚĆ I. WARSTWA PRZETWARZANIA WSADOWEGO
Spis treści Przedmowa Podziękowania O książce Rozdział 1. Nowy paradygmat dla Big Data 1.1. Zawartość książki 1.2. Skalowanie tradycyjnej bazy danych 1.2.1. Skalowanie za pomocą kolejki 1.2.2. Skalowanie
Bardziej szczegółowoCzas wirtualny, złożoność algorytmów
Czas wirtualny, złożoność algorytmów Wykład prowadzą: Jerzy Brzeziński Jacek Kobusiński Zegary logiczne skalarne wektorowe Kanały FIFO typu FC Rząd funkcji, funkcja kosztu Plan wykładu Złożoność komunikacyjna
Bardziej szczegółowoSystem komputerowy. System komputerowy
System komputerowy System komputerowy System komputerowy układ współdziałających ze sobą (według pewnych zasad) dwóch składowych: sprzętu komputerowego (hardware) oraz oprogramowania (software) po to,
Bardziej szczegółowoPrzetwarzanie i zabezpieczenie danych w zewnętrznym DATA CENTER
Przetwarzanie i zabezpieczenie danych w zewnętrznym DATA CENTER Gdańsk, 27-28 września 2012 r. Krzysztof Pytliński Zakład Teleinformatyki Kontekst Data Center jako usługa zewnętrzna, zaspokajająca potrzeby
Bardziej szczegółowoDetekcja zakleszczenia (2)
Detekcja zakleszczenia (2) Plan wykładu Celem wykładu jest zaznajomienie studenta z kolejnymi algorytmami detekcji zakleszczenia. Jest on jest bezpośrednią kontynuacją poprzedniego wykładu, w którym zdefiniowane
Bardziej szczegółowoMagistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego.
Plan wykładu Pojęcie magistrali i jej struktura Architektura pamięciowo-centryczna Architektura szynowa Architektury wieloszynowe Współczesne architektury z połączeniami punkt-punkt Magistrala Magistrala
Bardziej szczegółowoInżynieria oprogramowania
Inżynieria oprogramowania Wykład 8 Inżynieria wymagań: analiza przypadków użycia a diagram czynności Patrz: Stanisław Wrycza, Bartosz Marcinkowski, Krzysztof Wyrzykowski, Język UML 2.0 w modelowaniu systemów
Bardziej szczegółowoSieciowe Systemy Operacyjne
1 Sieciowe Systemy Operacyjne 1. Etapy rozwoju systemów komputerowych System scentralizowany System sieciowy System rozproszony 1.1 System scentralizowany Zastosowane duże komputery (mainframes ) Użytkownicy
Bardziej szczegółowoJęzyk UML w modelowaniu systemów informatycznych
Język UML w modelowaniu systemów informatycznych dr hab. Bożena Woźna-Szcześniak Akademia im. Jan Długosza bwozna@gmail.com Wykład 4 Diagramy aktywności I Diagram aktywności (czynności) (ang. activity
Bardziej szczegółowoProjektowanie architektury systemu. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Projektowanie architektury systemu Jarosław Kuchta Zagadnienia Typy architektury systemu Rozproszone przetwarzanie obiektowe Tworzenie modelu sieci Tworzenie specyfikacji sprzętowej i programowej Problemy
Bardziej szczegółowoSystemy operacyjne. Systemy operacyjne. Systemy operacyjne. Zadania systemu operacyjnego. Abstrakcyjne składniki systemu. System komputerowy
Systemy operacyjne Systemy operacyjne Dr inż. Ignacy Pardyka Literatura Siberschatz A. i inn. Podstawy systemów operacyjnych, WNT, Warszawa Skorupski A. Podstawy budowy i działania komputerów, WKiŁ, Warszawa
Bardziej szczegółowoModelowanie i analiza systemów informatycznych
Modelowanie i analiza systemów informatycznych MBSE/SysML Wykład 11 SYSMOD Wykorzystane materiały Budapest University of Technology and Economics, Department of Measurement and InformaJon Systems: The
Bardziej szczegółowoMODEL WARSTWOWY PROTOKOŁY TCP/IP
MODEL WARSTWOWY PROTOKOŁY TCP/IP TCP/IP (ang. Transmission Control Protocol/Internet Protocol) protokół kontroli transmisji. Pakiet najbardziej rozpowszechnionych protokołów komunikacyjnych współczesnych
Bardziej szczegółowoObliczenia równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz
Obliczenia równoległe i rozproszone Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz 15 czerwca 2001 Spis treści Przedmowa............................................
Bardziej szczegółowoSystemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak
Wprowadzenie Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego
Bardziej szczegółowoProjektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34
Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. 2/34 Modelowanie CRC Modelowanie CRC (class-responsibility-collaborator) Metoda identyfikowania poszczególnych
Bardziej szczegółowoRozszerzenia sieci Petriego
Rozszerzenia sieci Petriego Ograniczenia klasycznej sieci Petriego Trudność w modelowaniu specyficznych przepływów: testowania braku żetonów w danym miejscu, blokowania odpalania, itp. Brak determinizmu
Bardziej szczegółowoProgramowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz
Programowanie równoległe i rozproszone Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz 23 października 2009 Spis treści Przedmowa...................................................
Bardziej szczegółowoProjektowanie logiki aplikacji
Jarosław Kuchta Projektowanie Aplikacji Internetowych Projektowanie logiki aplikacji Zagadnienia Rozproszone przetwarzanie obiektowe (DOC) Model klas w projektowaniu logiki aplikacji Klasy encyjne a klasy
Bardziej szczegółowoKomunikacja asynchroniczna... 23
Spis treści Wykład #1: Wprowadzenie... 8 Cechy systemów rozproszonych... 8 Problemy związane z konstrukcją systemów rozproszonych... 9 Motywy... 10 Rozproszony system informatyczny... 10 Środowisko przetwarzania
Bardziej szczegółowodr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1
dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1 Cel wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działanie systemu operacyjnego
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Definicja systemu operacyjnego (1) Miejsce,
Bardziej szczegółowoZał nr 4 do ZW. Dla grupy kursów zaznaczyć kurs końcowy. Liczba punktów ECTS charakterze praktycznym (P)
Zał nr 4 do ZW WYDZIAŁ PODSTAWOWYCH PROBLEMÓW TECHNIKI KARTA PRZEDMIOTU Nazwa w języku polskim : Architektura Komputerów i Systemy Operacyjne Nazwa w języku angielskim : Computer Architecture and Operating
Bardziej szczegółowoLEKCJA TEMAT: Zasada działania komputera.
LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem
Bardziej szczegółowoVirtual Grid Resource Management System with Virtualization Technology
Virtual Grid Resource Management System with Virtualization Technology System zarządzania zasobami wirtualnego Gridu z wykorzystaniem technik wirtualizacji Joanna Kosińska Jacek Kosiński Krzysztof Zieliński
Bardziej szczegółowoAlgorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010
Algorytmy równoległe Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka Znajdowanie maksimum w zbiorze n liczb węzły - maksimum liczb głębokość = 3 praca = 4++ = 7 (operacji) n - liczność
Bardziej szczegółowoPodstawa rozwiązań sterowania przemysłowego na komputerach PC. Software Controller. siemens.pl/software-controller
Podstawa rozwiązań sterowania przemysłowego na komputerach PC Software Controller siemens.pl/software-controller SIMATIC S7-1500 Software Controller sterownik programowy z serii SIMATIC oparty na komputerach
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Miejsce, rola i zadania systemu operacyjnego
Bardziej szczegółowoMechanizmy pracy równoległej. Jarosław Kuchta
Mechanizmy pracy równoległej Jarosław Kuchta Zagadnienia Algorytmy wzajemnego wykluczania algorytm Dekkera Mechanizmy niskopoziomowe przerwania mechanizmy ochrony pamięci instrukcje specjalne Mechanizmy
Bardziej szczegółowoZagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ
(INT) Inżynieria internetowa 1. Tryby komunikacji między procesami w standardzie Message Passing Interface 2. HTML DOM i XHTML cel i charakterystyka 3. Asynchroniczna komunikacja serwerem HTTP w technologii
Bardziej szczegółowoInżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji
Inżynieria oprogramowania Jarosław Kuchta Modelowanie interakcji Podstawowe pojęcia Interakcja (interaction) Przepływ komunikatów pomiędzy obiektami konieczny dla wykonania określonego zadania. Interakcja
Bardziej szczegółowoZarządzanie infrastrukturą sieciową Modele funkcjonowania sieci
W miarę rozwoju sieci komputerowych pojawiały się różne rozwiązania organizujące elementy w sieć komputerową. W celu zapewnienia kompatybilności rozwiązań różnych producentów oraz opartych na różnych platformach
Bardziej szczegółowoMariusz Rudnicki PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO CZ.1
Mariusz Rudnicki mariusz.rudnicki@eti.pg.gda.pl PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO CZ.1 Przedmiot PSCR Przedmiot PSCR Wykład do połowy semestru Laboratorium od połowy semestru Projekt Zaliczenie
Bardziej szczegółowoPodstawowe pojęcia dotyczące sieci komputerowych
Podstawowe pojęcia dotyczące sieci komputerowych Podział ze względu na obszar Sieci osobiste PAN (Personal Area Network) sieci o zasięgu kilku metrów wykorzystywane np. do bezprzewodowego połączenia telefonu
Bardziej szczegółowoSortowanie topologiczne skierowanych grafów acyklicznych
Sortowanie topologiczne skierowanych grafów acyklicznych Metody boolowskie w informatyce Robert Sulkowski http://robert.brainusers.net 23 stycznia 2010 1 Definicja 1 (Cykl skierowany). Niech C = (V, A)
Bardziej szczegółowoTECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek
TECHNOLOGIE OBIEKTOWE WYKŁAD 2 Anna Mroczek 2 Diagram czynności Czym jest diagram czynności? 3 Diagram czynności (tak jak to definiuje język UML), stanowi graficzną reprezentację przepływu kontroli. 4
Bardziej szczegółowoWybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki 2017 APLIKACJE SIECIOWE Definicja Architektura aplikacji sieciowych Programowanie
Bardziej szczegółowoArchitektura i mechanizmy systemu
Architektura i mechanizmy systemu Warsztaty Usługa powszechnej archiwizacji Michał Jankowski, PCSS Maciej Brzeźniak, PCSS Plan prezentacji Podstawowe wymagania użytkowników - cel => Funkcjonalnośd i cechy
Bardziej szczegółowoRozszerzenia sieci Petriego
Rozszerzenia sieci Petriego Ograniczenia klasycznej sieci Petriego Trudność w modelowaniu specyficznych przepływów: testowania braku żetonów w danym miejscu, blokowania odpalania, itp. Brak determinizmu
Bardziej szczegółowoCzas w systemach rozproszonych. Krzysztof Banaś Systemy rozproszone 1
Czas w systemach rozproszonych Krzysztof Banaś Systemy rozproszone 1 Czas w systemach rozproszonych Istnienie algorytmów opartych na czasie zdarzeń np. make, systemy czasu rzeczywistego Brak czasu globalnego
Bardziej szczegółowoProgramowanie Rozproszone i Równoległe. Edward Görlich http://th.if.uj.edu.pl/~gorlich goerlich@th.if.uj.edu.pl
Programowanie Rozproszone i Równoległe Edward Görlich http://th.if.uj.edu.pl/~gorlich goerlich@th.if.uj.edu.pl Motywacja wyboru Programowanie rozproszone równoległość (wymuszona) Oprogramowanie równoległe/rozproszone:
Bardziej szczegółowoUrządzenia sieciowe. Tutorial 1 Topologie sieci. Definicja sieci i rodzaje topologii
Tutorial 1 Topologie sieci Definicja sieci i rodzaje topologii Definicja 1 Sieć komputerowa jest zbiorem mechanizmów umożliwiających komunikowanie się komputerów bądź urządzeń komputerowych znajdujących
Bardziej szczegółowoSystemy wbudowane - wykład 9. Systemy czasu rzeczywistego Notes. Systemy czasu rzeczywistego Notes. Systemy czasu rzeczywistego Notes.
Systemy wbudowane - wykład 9 Przemek Błaśkiewicz 26 maja 2017 1 / 93 Systemy czasu rzeczywistego sterowanie silnikiem rakietowym; 2 / 93 Systemy czasu rzeczywistego sterowanie silnikiem rakietowym; system
Bardziej szczegółowoWLAN bezpieczne sieci radiowe 01
WLAN bezpieczne sieci radiowe 01 ostatnim czasie ogromną popularność zdobywają sieci bezprzewodowe. Zapewniają dużą wygodę w dostępie użytkowników do zasobów W informatycznych. Jednak implementacja sieci
Bardziej szczegółowoNajkrótsza droga Maksymalny przepływ Najtańszy przepływ Analiza czynności (zdarzeń)
Carl Adam Petri (1926-2010) Najkrótsza droga Maksymalny przepływ Najtańszy przepływ Analiza czynności (zdarzeń) Problemy statyczne Kommunikation mit Automaten praca doktorska (1962) opis procesów współbieżnych
Bardziej szczegółowoUslugi chmurowe dla nauki na podstawie BonFIRE
Building service testbeds on FIRE Uslugi chmurowe dla nauki na podstawie BonFIRE Michał Giertych, Bartosz Belter PCSS Agenda Platforma chmurowa BonFIRE Konkursy na nowe pomysły Open Calls Dostęp dla każdego
Bardziej szczegółowoSystemy rozproszone. Wprowadzenie. Cezary Sobaniec Jerzy Brzeziński
Wprowadzenie Cezary Sobaniec Jerzy Brzeziński 1 Rozwój technologiczny Postęp w ostatnim półwieczu 10 mln dolarów, 1 instrukcja na sekundę 1000 dolarów, 100 mln instrukcji na sekundę 12 12 razy lepszy współczynnik
Bardziej szczegółowoPodstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 13 Topologie sieci i urządzenia
Podstawy Informatyki Inżynieria Ciepła, I rok Wykład 13 Topologie sieci i urządzenia Topologie sieci magistrali pierścienia gwiazdy siatki Zalety: małe użycie kabla Magistrala brak dodatkowych urządzeń
Bardziej szczegółowoUML cz. III. UML cz. III 1/36
UML cz. III UML cz. III 1/36 UML cz. III 2/36 Diagram współpracy Diagramy współpracy: prezentują obiekty współdziałające ze sobą opisują rolę obiektów w scenariuszu mogą prezentować wzorce projektowe UML
Bardziej szczegółowoSterowanie ruchem w sieciach szkieletowych
Sterowanie ruchem w sieciach szkieletowych Transmisja wielościeżkowa Dr inż. Robert Wójcik Wydział Informatyki, Elektroniki i Telekomunikacji Katedra Telekomunikacji Kraków, dn. 6 kwietnia 2016 r. Plan
Bardziej szczegółowoPodstawy działania sieci
Podstawy działania sieci Topologie, adresy, serwery i protokoły 26 marca 2013 Mariusz Różycki 1 Początek Internetu Pierwszy komputer lata 40. XX wieku Pierwsza sieć 29 października 1969 Advanced Research
Bardziej szczegółowoInterfejs transmisji danych
Interfejs transmisji danych Model komunikacji: RS232 Recommended Standard nr 232 Specyfikacja warstw 1 i 2 Synchroniczna czy asynchroniczna DTE DCE DCE DTE RS232 szczegóły Uproszczony model komunikacyjny
Bardziej szczegółowo