Wprowadzenie do programowania współbieżnego
|
|
- Sebastian Julian Czyż
- 6 lat temu
- Przeglądów:
Transkrypt
1 Wprowadzenie do programowania współbieżnego Marcin Engel Instytut Informatyki Uniwersytet Warszawski
2 Zamiast wstępu...
3 Zamiast wstępu... Możliwość wykonywania wielu akcji jednocześnie może ułatwić tworzenie oprogramowania
4 Zamiast wstępu... Możliwość wykonywania wielu akcji jednocześnie może ułatwić tworzenie oprogramowania We współczesnych środowiskach można uruchomić wiele aplikacji jednocześnie
5 Sortowanie przez scalanie procedure MergeSort (i, j: integer); {...} m := (i+j) div 2; MergeSort (i, m); MergeSort (m+1, j); Merge (i, m, j) end;
6 Współbieżne sortowanie przez scalanie procedure MergeSort (i, j: integer); {...} m := (i+j) div 2; co MergeSort (i, m); MergeSort (m+1, j) coend; Merge (i, m, j) end;
7 Zamiast wstępu... Możliwość wykonywania wielu akcji jednocześnie może ułatwić tworzenie oprogramowania We współczesnych środowiskach można uruchomić wiele aplikacji jednocześnie
8 Zamiast wstępu... Możliwość wykonywania wielu akcji jednocześnie może ułatwić tworzenie oprogramowania We współczesnych środowiskach można uruchomić wiele aplikacji jednocześnie Niektóre problemy daj a się łatwo i elegancko wyrazić w postaci niezależnie wykonywanych procedur
9 Rozpraszanie obliczeń Wyrażenie: A B (C + D)/(E F)
10 Rozpraszanie obliczeń Wyrażenie: A B (C + D)/(E F) x1 := C + D
11 Rozpraszanie obliczeń Wyrażenie: A B (C + D)/(E F) x1 := C + D x2 := E F
12 Rozpraszanie obliczeń Wyrażenie: A B (C + D)/(E F) x1 := C + D x4 := x1/x2 x2 := E F
13 Rozpraszanie obliczeń Wyrażenie: A B (C + D)/(E F) x1 := C + D x4 := x1/x2 x2 := E F x3 := A B
14 Rozpraszanie obliczeń Wyrażenie: A B (C + D)/(E F) x1 := C + D x4 := x1/x2 x2 := E F x5 := x3 x4 x3 := A B
15 Rozpraszanie obliczeń Wyrażenie: A B (C + D)/(E F)
16 Rozpraszanie obliczeń Wyrażenie: A B (C + D)/(E F) x1 := C + D x2 := E F x3 := A B
17 Rozpraszanie obliczeń Wyrażenie: A B (C + D)/(E F) x1 := C + D x4 := x1/x2 x2 := E F x3 := A B
18 Rozpraszanie obliczeń Wyrażenie: A B (C + D)/(E F) x1 := C + D x4 := x1/x2 x2 := E F x5 := x3 x4 x3 := A B
19 Zamiast wstępu... Możliwość wykonywania wielu akcji jednocześnie może ułatwić tworzenie oprogramowania We współczesnych środowiskach można uruchomić wiele aplikacji jednocześnie Niektóre problemy daj a się łatwo i elegancko wyrazić w postaci niezależnie wykonywanych procedur
20 Zamiast wstępu... Możliwość wykonywania wielu akcji jednocześnie może ułatwić tworzenie oprogramowania We współczesnych środowiskach można uruchomić wiele aplikacji jednocześnie Niektóre problemy daja się łatwo i elegancko wyrazić w postaci niezależnie wykonywanych procedur Coraz tańsze architektury wieloprocesorowe stwarzaj a możliwość jednoczesnego wykonywania wielu obliczeń
21 Zamiast wstępu... Możliwość wykonywania wielu akcji jednocześnie może ułatwić tworzenie oprogramowania We współczesnych środowiskach można uruchomić wiele aplikacji jednocześnie Niektóre problemy daja się łatwo i elegancko wyrazić w postaci niezależnie wykonywanych procedur Coraz tańsze architektury wieloprocesorowe stwarzaja możliwość jednoczesnego wykonywania wielu obliczeń Serwery sieciowe obsługuja jednocześnie wielu klientów
22 Zamiast wstępu... Możliwość wykonywania wielu akcji jednocześnie może ułatwić tworzenie oprogramowania We współczesnych środowiskach można uruchomić wiele aplikacji jednocześnie Niektóre problemy daja się łatwo i elegancko wyrazić w postaci niezależnie wykonywanych procedur Coraz tańsze architektury wieloprocesorowe stwarzaja możliwość jednoczesnego wykonywania wielu obliczeń Serwery sieciowe obsługuja jednocześnie wielu klientów...
23 Zamiast wstępu... Możliwość wykonywania wielu akcji jednocześnie może ułatwić tworzenie oprogramowania We współczesnych środowiskach można uruchomić wiele aplikacji jednocześnie Niektóre problemy daja się łatwo i elegancko wyrazić w postaci niezależnie wykonywanych procedur Coraz tańsze architektury wieloprocesorowe stwarzaja możliwość jednoczesnego wykonywania wielu obliczeń Serwery sieciowe obsługuja jednocześnie wielu klientów...
24 Programowanie współbieżne Praca współbieżna polega na tym, że składajace się na nia zjawiska, czynności lub działania odbywaja się równocześnie.
25 Proces a program Proces to realizacja programu w konkretnym środowisku Proces jest obiektem dynamicznym Program jest obiektem statycznym Proces jest w jednym z następujacych stanów gotowy wykonywany wstrzymany
26 Programowanie współbieżne Praca współbieżna polega na tym, że składajace się na nia zjawiska, czynności lub działania odbywaja się równocześnie.
27 Programowanie współbieżne Praca współbieżna polega na tym, że składajace się na nia zjawiska, czynności lub działania odbywaja się równocześnie. Istotny jest przy tym punkt widzenia obserwatora (... )
28 Współbieżność a równoległość Dwa procesy wykonuja się równolegle, jeśli ich akcje sa wykonywane w tym samym czasie Dwa procesy wykonuja się współbieżnie, jeśli wykonywanie jednego z nich zaczęło się po rozpoczęciu, ale przed zakończeniem drugiego Współbieżność jest abstrakcja równoległości
29 Co nas interesuje? Notacje i techniki do wyrażania współbieżności Problemy powstajace przy współbieżnym działaniu procesów Metody realizacji poprawnej synchronizacji procesów
30 Problemy z analiza programów współbieżnych var y: integer process P; var x: integer; i: integer; for i := 1 to 5 do x := y; x := x + 1; y := x end end process P; var x: integer; i: integer; for i := 1 to 5 do x := y; x := x + 1; y := x end end y := 0; co P; P coend; writeln (y)
31 Niepodzielność instrukcji var y: process P; var i: integer; for i := 1 to 5 do y := y + 1; end; integer process P; var i: integer; for i := 1 to 5 do y := y + 1; end; y := 0; co P; P coend; writeln (y)
32 Wnioski Kłopoty z testowaniem Nie wolno nic zakładać o niepodzielności instrukcji języka programowania
33 Współbieżne sortowanie przez scalanie procedure MergeSort (i, j: integer); {...} m := (i+j) div 2; co MergeSort (i, m); MergeSort (m+1, j) Merge (i, m, j) coend; end;
34 Wniosek Nie wolno nic zakładać o szybkości pracy poszczególnych procesów
35 Przeplot Przeplot jest ciagiem złożonym z przeplecionych ze soba akcji poszczególnych procesów Nie precyzujemy terminu akcja Konkretne wykonanie programu współbieżnego odpowiada pewnemu przeplotowi Program współbieżny musi dawać poprawne wyniki dla każdego możliwego przeplotu Duży (najczęściej nieskończony) zbiór przeplotów do rozpatrzenia
36 Klasyczne problemy współbieżności Wzajemne wykluczanie
37 Klasyczne problemy współbieżności Wzajemne wykluczanie Producenci i konsumenci
38 Klasyczne problemy współbieżności Wzajemne wykluczanie Producenci i konsumenci Czytelnicy i pisarze
39 Klasyczne problemy współbieżności Wzajemne wykluczanie Producenci i konsumenci Czytelnicy i pisarze Pięciu filozofów
40 Wzajemne wykluczanie Mamy dwa procesy działajace według schematu: while true do własne sprawy;... sekcja krytyczna;... end; Uzupełnić tekst procesu tak, aby w tym samym czasie sekcję krytyczna wykonywał co najwyżej jeden proces.
41 Wzajemne wykluczanie założenia Własne sprawy jest fragmentem programu, który nie wymaga synchronizacji nic poza tym o nim nie wiadomo Sekcja krytyczna jest krótka; każdy proces, który rozpocznie jej wykonanie w skończonym czasie je kończy Proces, który nie może od razu wejść do sekcji krytycznej musi poczekać i wejść do niej, gdy będzie to możliwe
42 Wzajemne wykluczanie założenia Własne sprawy jest fragmentem programu, który nie wymaga synchronizacji nic poza tym o nim nie wiadomo Sekcja krytyczna jest krótka; każdy proces, który rozpocznie jej wykonanie w skończonym czasie je kończy Proces, który nie może od razu wejść do sekcji krytycznej musi poczekać i wejść do niej, gdy będzie to możliwe Sprawiedliwość Każdy gotowy do wykonania proces w skończonym czasie stanie się wykonywany.
43 Poprawność programów współbieżnych bezpieczeństwo Własność zapewniania (lub bezpieczeństwa): nigdy nie dojdzie do sytuacji niepożadanej Własność zapewniania pojawia się w specyfikacji problemu synchronizacyjnego Odpowiednik częściowej poprawności programu sekwencyjnego
44 Poprawność programów współbieżnych bezpieczeństwo Własność zapewniania (lub bezpieczeństwa): nigdy nie dojdzie do sytuacji niepożadanej Własność zapewniania pojawia się w specyfikacji problemu synchronizacyjnego Odpowiednik częściowej poprawności programu sekwencyjnego Bezpieczeństwo wzajemnego wykluczania W sekcji krytycznej nigdy nie przebywaj a oba procesy jednocześnie.
45 Dwa modele współbieżności Model scentralizowany: procesy wykonuja się w środowisku ze wspólna pamięcia, w której w szczególności można umieścić zmienne globalne (współdzielone) Model rozproszony: synchronizacja odbywa się poprzez wymianę komunikatów
46 System operacyjny Unix/Linux Z logicznego punktu widzenia domyślnie wspiera model rozproszony Procesy maja odrębne wirtualne przestrzenie adresowe Mechanizmy takie jak łacza, łacza nazwane, kolejki komunikatów stanowia narzędzia synchronizacyjne Fizycznie, procesy działajace na tym samym komputerze korzystaja ze wspólnej pamięci Segmenty pamięci dzielonej oraz semafory wspieraj a model scentralizowany
47 Wzajemne wykluczanie w modelu scentralizowanym Bez wsparcia ze strony sprzętu ani środowiska Za pomoca specjalnego, niepodzielnego rozkazu maszynowego Za pomoc a mechanizmów wspieranych przez system operacyjny i sprzęt, np. semaforów
48 Rozwiazanie oczywiste var zajęte : boolean := false; process P1; while true do własne sprawy; while zajęte do; zajęte := true; sekcja krytyczna; zajęte := false end end; process P2; while true do własne sprawy; while zajęte do; zajęte := true; sekcja krytyczna; zajęte := false end end;
49 Rozwiazanie oczywiste var zajęte : boolean := false; process P1; while true do własne sprawy; while zajęte do; zajęte := true; sekcja krytyczna; zajęte := false end end; Dwa procesy w sekcji krytycznej! process P2; while true do własne sprawy; while zajęte do; zajęte := true; sekcja krytyczna; zajęte := false end end;
50 Rozwiazanie poprawne var zajęte : boolean := false; process P1; while true do własne sprawy; zajęte := true; while zajęte do; sekcja krytyczna; zajęte := false end end; process P2; while true do własne sprawy; zajęte := true; while zajęte do; sekcja krytyczna; zajęte := false end end;
51 Rozwiazanie poprawne var zajęte : boolean := false; process P1; while true do własne sprawy; zajęte := true; while zajęte do; sekcja krytyczna; zajęte := false end end; Teraz jest bezpiecznie! process P2; while true do własne sprawy; zajęte := true; while zajęte do; sekcja krytyczna; zajęte := false end end;
52 Rozwiazanie poprawne? var zajęte : boolean := false; process P1; while true do własne sprawy; zajęte := true; while zajęte do; sekcja krytyczna; zajęte := false end end; process P2; while true do własne sprawy; zajęte := true; while zajęte do; sekcja krytyczna; zajęte := false end end; Teraz jest bezpiecznie! Ale czy na pewno o to chodziło?
53 Poprawność programów współbieżnych żywotność Własność żywotności: każdy proces, który chce wykonać pewna akcję w skończonym czasie będzie mógł to zrobić Własność żywotności jest zwiazana z wykonaniem programu Odpowiednik całkowitej poprawności programu sekwencyjnego (razem z własnościa bezpieczeństwa)
54 Poprawność programów współbieżnych żywotność Własność żywotności: każdy proces, który chce wykonać pewna akcję w skończonym czasie będzie mógł to zrobić Własność żywotności jest zwiazana z wykonaniem programu Odpowiednik całkowitej poprawności programu sekwencyjnego (razem z własnościa bezpieczeństwa) Przejawy braku żywotności Zakleszczenie, np. reguła prawej ręki w ruchu drogowym Zagłodzenie, np. klienci banku obsługiwani poza kolejnościa
55 Poprawność wzajemnego wykluczania bezpieczeństwo + żywotność
56 Poprawność wzajemnego wykluczania bezpieczeństwo + żywotność W sekcji krytycznej przebywa w tym samym czasie co najwyżej jeden proces
57 Poprawność wzajemnego wykluczania bezpieczeństwo + żywotność W sekcji krytycznej przebywa w tym samym czasie co najwyżej jeden proces Każdy proces, który chce wejść do sekcji krytycznej, w końcu do niej wejdzie
58 Poprawność wzajemnego wykluczania bezpieczeństwo + żywotność W sekcji krytycznej przebywa w tym samym czasie co najwyżej jeden proces Każdy proces, który chce wejść do sekcji krytycznej, w końcu do niej wejdzie Poprzednie rozwi azanie jest niepoprawne (prowadzi do zakleszczenia).
59 Rozwiazanie poprawne? var chce1, chce2 : boolean := false; process P1; while true do własne sprawy; chce1 := true; while chce2 do; sekcja krytyczna; chce1 := false end end; process P2; while true do własne sprawy; chce2 := true; while chce1 do; sekcja krytyczna; chce2 := false end end;
60 Rozwiazanie znów niepoprawne var chce1, chce2 : boolean := false; process P1; while true do własne sprawy; chce1 := true; while chce2 do; sekcja krytyczna; chce1 := false end end; process P2; while true do własne sprawy; chce2 := true; while chce1 do; sekcja krytyczna; chce2 := false end end; Lecz w tym cały jest ambaras, kiedy dwoje chce... naraz.
61 Rozwiazanie poprawne? var kto_czeka : integer := 1; process P1; while true do własne sprawy; while kto_czeka=1 do; sekcja krytyczna; kto_czeka := 1 end end; process P2; while true do własne sprawy; while kto_czeka = 2 do; sekcja krytyczna; kto_czeka := 2 end end;
62 Rozwiazanie znów niepoprawne var kto_czeka : integer := 1; process P1; while true do własne sprawy; while kto_czeka=1 do; sekcja krytyczna; kto_czeka := 1 end end; process P2; while true do własne sprawy; while kto_czeka = 2 do; sekcja krytyczna; kto_czeka := 2 end end; Lecz w tym cały jest ambaras, żeby dwoje chciało naraz.
63 Rozwiazanie prawie poprawne? var kto_czeka : integer := 1; chce1, chce2: boolean := false process P1; while true do własne sprawy; chce1 := true; while chce2 and (kto_czeka=1) do; sekcja krytyczna; chce1 := false; kto_czeka := 1 end end; process P2; while true do własne sprawy; chce2 := true; while chce1 and (kto_czeka = 2) do; sekcja krytyczna; chce2 := false; kto_czeka := 2 end end;
64 Wreszcie dobrze! var kto_czeka : integer := 1; chce1, chce2: boolean := false process P1; while true do własne sprawy; chce1 := true; kto_czeka := 1 while chce2 and (kto_czeka=1) do; sekcja krytyczna; chce1 := false; end end; process P2; while true do własne sprawy; chce2 := true; kto_czeka := 2 while chce1 and (kto_czeka = 2) do; sekcja krytyczna; chce2 := false; end end;
65 Algorytm Petersona Aktywne oczekiwanie Jedynie dla dwóch procesów, choć daje się uogólnić na większa ich liczbę Duży koszt Niestosowany w praktyce
66 Wsparcie ze strony sprzętu Niepodzielny rozkaz maszynowy Test_and_Set(G) Jednoczesny zapis i odczyt, np.: Test_and_Set (Li) Li := G; G := 1; end;
67 Rozwiazanie problemu wzajemnego wykluczania var G: integer := 0; process P; var Li: integer; while true do sekcja_lokalna(i); loop Test_and_Set(Li); exit when Li = 0; end loop sekcja_krytyczna(i); G := 0; end end;
68 Semafory Niepodzielne i atomowe operacje podniesienia (V)i opuszczenia (P) semafora Proces próbujacy opuścić semafor zamknięty jest wstrzymywany Proces podnoszacy semafor budzi proces oczekujacy przed semaforem
69 Rozwi azanie problemu wzajemnego wykluczania process P; while true do własne sprawy; P(S); sekcja krytyczna; V (S); end end;
procesó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
Semafory. // G - globalna dla wszystkich. // Wada - aktywne oczekiwanie Test_and_Set(Li); exit when Li = 0; end loop sekcja_krytyczna(i); G := 0;
Semafory Rozwiązanie problemu wzajemnego wykluczania Bez dodatkowego wsparcia sprzętowego i programowego Zakładamy jedynie, że zapis do i odczyt z pamięci wspólnej są operacjami atomowymi (czyli istnieje
Modelowanie procesów współbieżnych
Modelowanie procesów współbieżnych dr inż. Maciej Piotrowicz Katedra Mikroelektroniki i Technik Informatycznych PŁ piotrowi@dmcs.p.lodz.pl http://fiona.dmcs.pl/~piotrowi -> Modelowanie... Literatura M.
Przetwarzanie wielowątkowe przetwarzanie współbieżne. Krzysztof Banaś Obliczenia równoległe 1
Przetwarzanie wielowątkowe przetwarzanie współbieżne Krzysztof Banaś Obliczenia równoległe 1 Problemy współbieżności wyścig (race condition) synchronizacja realizowana sprzętowo (np. komputery macierzowe)
Klasyczne problemy współbieżności. Problem producenta i konsumenta Problem czytelników i pisarzy Problem pięciu filozofów
Klasyczne problemy współbieżności Problem producenta i konsumenta Problem czytelników i pisarzy Problem pięciu filozofów Wzajemne wykluczanie Zsynchronizować N procesów, z których każdy w nieskończonej
Mechanizmy komunikacji. spotkania symetryczne (język CSP) spotkania asymetryczne (Ada) przestrzenie krotek (Linda) potoki, komunikaty i kanały (Unix)
Mechanizmy komunikacji spotkania symetryczne (język CSP) spotkania asymetryczne (Ada) przestrzenie krotek (Linda) potoki, komunikaty i kanały (Unix) Język CSP Hoare (1978r.) Communicating Sequential Processes
3URJUDPRZDQLHZVSyáELH*QHZVWS
3URJUDPRZDQLHZVSyáELH*QHZVWS Problem sortowania N liczb Algorytm sekwencyjny sortuj(1, N); NRV]WVRUWRZDQLDSU]H]SURVW]DPLDQN 2 SRUyZQD $OJRU\WPUyZQROHJá\ cobegin {wykonaj równolegle} VRUWXMSyáB1 VRUWXMSyáB11
Programowanie współbieżne i równoległe. dr inż. Marcin Wilczewski 2013
Programowanie współbieżne i równoległe dr inż. Marcin Wilczewski 2013 1 Tematyka wykładu Wprowadzenie. Podstawowe pojęcia Wątki i procesy. Metody i modele synchronizacji Klasyczne problemy współbieżne
Przeplot. Synchronizacja procesów. Cel i metody synchronizacji procesów. Wątki współbieżne
Synchronizacja procesów Przeplot Przeplot wątków współbieżnych Cel i metody synchronizacji procesów Problem sekcji krytycznej Semafory Blokady 3.1 3.3 Wątki współbieżne Cel i metody synchronizacji procesów
Równoległość i współbieżność
Równoległość i współbieżność Wykonanie sekwencyjne. Poszczególne akcje procesu są wykonywane jedna po drugiej. Dokładniej: kolejna akcja rozpoczyna się po całkowitym zakończeniu poprzedniej. Praca współbieżna
Równoległość i współbieżność
Równoległość i współbieżność Wykonanie sekwencyjne. Poszczególne akcje procesu są wykonywane jedna po drugiej. Dokładniej: kolejna akcja rozpoczyna się po całkowitym zakończeniu poprzedniej. Praca współbieżna
Proces z sekcją krytyczną. Synchronizacja procesów. Synchronizacja procesów, cd. Synchronizacja procesów, cd. Synchronizacja procesów, cd
Synchronizacja procesów Proces producenta - zmodyfikowany (licznik) produkuj jednostka w nast_p while licznik =n do nic_nie_rob; bufor [we] := nast_p; we=we+1 mod n; licznik:=licznik+1; Zmodyfikowany proces
Semafory. - aktywne oczekiwanie =GRGDWNRZ\PZVSDUFLHPVSU]WRZ\P 6SHFMDOQDLQVWUXNFMDPDV]\QRZDUHDOL]XMFDDWRPRZ\]DSLVL odczyt, np.
Semafory 5R]ZL]DQLHSUREOHPXZ]DMHPQHJRZ\NOXF]DQLD %H]GRGDWNRZHJRZVSDUFLDVSU]WRZHJRLSURJUDPRZHJR =DNáDGDP\MHG\QLH*H]DSLVGRLRGF]\W]SDPLFLZVSyOQHMV RSHUDFMDPLDWRPRZ\PLF]\OLLVWQLHMHDUELWHUZVSyOQHMSDPLFL :UD]LHMHGQRF]HVQHJR]DSLVXLRGF]\WXUH]XOWDWHPEG]LH
Program jest więc strukturą statyczną zapisaną na jakimś nośniku. Natomiast proces jest wykonującym się programem.
J. Ułasiewicz Programowanie aplikacji współbieżnych 1 1 Podstawowe definicje i pojęcia współbieżności 1.1 Motywacja Przewiduje się że w dalszej perspektywie głównym motorem wzrostu mocy przetwarzania komputerów
Przegląd zagadnień programowania wspólbieżnego
Przegląd zagadnień programowania wspólbieżnego dr inż. Sławomir Samolej Katedra Informatyki i Automatyki Politechnika Rzeszowska Program przedmiotu oparto w części na materiałach opublikowanych na: http://wazniak.mimuw.edu.pl/
Wprowadzenie do programowania współbieżnego i rozproszonego
Wprowadzenie do programowania współbieżnego i rozproszonego dr inż. Sławomir Samolej Katedra Informatyki i Automatyki Politechnika Rzeszowska Program przedmiotu oparto w części na materiałach opublikowanych
Programowanie równoległe i rozproszone. Monitory i zmienne warunku. Krzysztof Banaś Programowanie równoległe i rozproszone 1
Programowanie równoległe i rozproszone Monitory i zmienne warunku Krzysztof Banaś Programowanie równoległe i rozproszone 1 Problemy współbieżności Problem producentów i konsumentów: jedna grupa procesów
Ingerencja w kod systemu operacyjnego (przerwania) Programowanie na niskim poziomie (instrukcje specjalne) Trudności implementacyjne (alg.
Wady mechanizmów niskopoziomowych Ingerencja w kod systemu operacyjnego (przerwania) Programowanie na niskim poziomie (instrukcje specjalne) Trudności implementacyjne (alg. Dekkera zależny od liczby synchronizowanych
Synchronizacja procesów i wątków
SOE Systemy Operacyjne Wykład 12 Synchronizacja procesów i wątków dr inŝ. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Problem sekcji krytycznej Podstawowy problem synchronizacji
4. Procesy pojęcia podstawowe
4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa
Nazwa Wydziału Nazwa jednostki prowadzącej moduł Nazwa modułu kształcenia Kod modułu Język kształcenia Efekty kształcenia dla modułu kształcenia
Nazwa Wydziału Nazwa jednostki prowadzącej moduł Nazwa modułu kształcenia Kod modułu Język kształcenia Efekty kształcenia dla modułu kształcenia Wydział Matematyki i Informatyki Instytut Informatyki i
Systemy operacyjne III
Systemy operacyjne III WYKŁAD 3 Jan Kazimirski 1 Współbieżność 2 Współbieżność Wielozadaniowość - zarządzanie wieloma procesami w ramach jednego CPU Wieloprocesorowość - zarządzanie wieloma zadaniami w
Proces z sekcją krytyczną. Synchronizacja procesów. Synchronizacja procesów, cd. Synchronizacja procesów, cd. Synchronizacja procesów, cd
Synchronizacja procesów Proces producenta - zmodyfikowany (licznik) produkuj jednostka w nast_p while licznik =n do nic_nie_rob; bufor [we] := nast_p; we=we+1 mod n; licznik:=licznik+1; Zmodyfikowany proces
SOP2 - semafory. grudzień
SOP2 - semafory grudzień 2010 1 Plan prezentacji Problem producent-konsument Problem czytelników i pisarzy Problem jedzących filozofów grudzień 2010 2 Producent-konsument var bufor: array [0..n-1] of produkt;
4. Procesy pojęcia podstawowe
4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa
Systemy Operacyjne synchronizacja i komunikacja procesów
Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 1 grudnia 2006 1 1 Sytuacje hazardowe 2 Problem sekcji krytycznej 3 Warunki poprawności rozwiązania 4 Rozwiązanie programowe dla dwóch
1 Podstawowe definicje i pojęcia współbieżności
J. Ułasiewicz Programowanie aplikacji współbieżnych 1 1 Podstawowe definicje i pojęcia współbieżności 1.1 Dlaczego zajmujemy się współbieżnością? W ciągu ostatnich 30 lat wzrost mocy przetwarzania osiągano
5. 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ęć
Wykład 4. Synchronizacja procesów (i wątków) cześć I. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB
Wykład 4 Synchronizacja procesów (i wątków) cześć I Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB Potrzeba synchronizacji Procesy wykonują się współbieżnie. Jeżeli w 100% są
Obliczenia 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............................................
Programowanie współbieżne Wykład 2. Iwona Kochańska
Programowanie współbieżne Wykład 2 Iwona Kochańska Miary skalowalności algorytmu równoległego Przyspieszenie Stały rozmiar danych N T(1) - czas obliczeń dla najlepszego algorytmu sekwencyjnego T(p) - czas
Synchronizacja procesów
Synchronizacja procesów - Współbieżność i synchronizacja procesów - Systemowe mechanizmy synchronizacji procesów Systemy operacyjne Wykład 7 1 Współbieżność i synchronizacja procesów Abstrakcja programowania
Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++
Programowanie Wstęp p do programowania Klasa 3 Lekcja 9 PASCAL & C++ Język programowania Do przedstawiania algorytmów w postaci programów służą języki programowania. Tylko algorytm zapisany w postaci programu
Zagadnienia zaawansowane. Lech Kruś,
WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WYDZIAŁ INFORMATYKI WIELODOSTĘPNE SYSTEMY OPERACYJNE II (SO2) Zagadnienia zaawansowane CZĘŚĆ 1 KONSPEKT WYKŁADÓW INFORMACJA O SPECJALIZACJI SIECI KOMPUTEROWE
Od uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Linux.
Kod szkolenia: Tytuł szkolenia: PS/LINUX Programowanie systemowe w Linux Dni: 5 Opis: Adresaci szkolenia Szkolenie adresowane jest do programistów tworzących aplikacje w systemie Linux, którzy chcą poznać
Współbieżność i synchronizacja. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak
Współbieżność i synchronizacja procesów Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Celem wykładu jest przedstawienie zagadnień współbieżnego wykonywania wątków lub procesów, zwłaszcza w przypadku,
Wstęp do programowania
Wstęp do programowania Literatura David Harel. Rzecz o istocie informatyki. Algorytmika. Wydawnictwa Naukowo-Techniczne. Wydanie trzecie. Seria: Klasyka informatyki. Warszawa 2000. Niklaus Wirth. Algorytmy
Programowanie Współbieżne. Wstęp
Programowanie Współbieżne Wstęp Literatura M. Ben-Ari, Podstawy programowania współbieżnego i rozproszonego, WNT W. Richard Stevens Programowanie zastosowań sieciowych A.S. Tanenbaum, Rozproszone systemy
Od uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Windows.
Kod szkolenia: Tytuł szkolenia: PS/WIN Programowanie systemowe w Windows Dni: 5 Opis: Adresaci szkolenia Szkolenie adresowane jest do programistów tworzących aplikacje w systemach z rodziny Microsoft Windows,
Mogą pracować w środowisku: Scentralizowanym -mikrokontroler Rozproszonym sieć sterująca, systemy hierarchiczne. Komunikacja z syst.
J. Ułasiewicz Programowanie aplikacji współbieżnych 1 1 Podstawowe definicje i pojęcia współbieżności Współczesne aplikacje sterowania i akwizycji danych są zbiorem komunikujących się wątków lub procesów
Współczesne aplikacje sterowania i akwizycji danych są zbiorem komunikujących się wątków lub procesów współbieżnych.
J. Ułasiewicz Programowanie aplikacji współbieżnych 1 1 Podstawowe definicje i pojęcia współbieżności Współczesne aplikacje sterowania i akwizycji danych są zbiorem komunikujących się wątków lub procesów
synchronizacji procesów
Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Definicja semafora Klasyfikacja semaforów Implementacja semaforów Zamki Zmienne warunkowe Klasyczne problemy synchronizacji (2) Semafory
Wstę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
Programowanie współbieżne Wykład 7. Iwona Kochaoska
Programowanie współbieżne Wykład 7 Iwona Kochaoska Poprawnośd programów współbieżnych Właściwości związane z poprawnością programu współbieżnego: Właściwośd żywotności - program współbieżny jest żywotny,
synchronizacji procesów
Dariusz Wawrzyniak Definicja semafora Klasyfikacja semaforów Implementacja semaforów Zamki Zmienne warunkowe Klasyczne problemy synchronizacji Plan wykładu (2) Semafory Rodzaje semaforów (1) Semafor jest
Programowanie współbieżne Wykład 10 Synchronizacja dostępu do współdzielonych zasobów. Iwona Kochańska
Programowanie współbieżne Wykład 10 Synchronizacja dostępu do współdzielonych zasobów Iwona Kochańska Mechanizm synchronizacji wątków/procesów Wykorzystanie semaforów zapobiega niedozwolonemu wykonaniu
Programowanie współbieżne i rozproszone
Programowanie współbieżne i rozproszone WYKŁAD 1 dr inż. Literatura ogólna Ben-Ari, M.: Podstawy programowania współbieżnego i rozproszonego. Wydawnictwa Naukowo-Techniczne, Warszawa, 2009. Czech, Z.J:
Programowanie współbieŝne. Paweł Rogaliński Politechnika Wrocławska
Programowanie współbieŝne Paweł Rogaliński Politechnika Wrocławska pawel.rogalinski pwr.wroc.pl Literatura podstawowa M. Ben-Ari: Podstawy programowania współbieŝnego i rozproszonego, WNT, Warszawa 1996.
Monitory. Wady semafora
Wady semafora Monitory Niestrukturalny mechanizm synchronizacji Nie ułatwia wykrywania błędów synchronizacyjnych w czasie kompilacji programu Idea Jądro systemu operacyjnego jako monolityczny monitor -
Mechanizmy 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
Programowanie współbieżne i równoległe
Programowanie współbieżne i równoległe dr inż. Marcin Wilczewski 2016/2017 1 Cel wykładu Przedstawienie zagadnień projektowania oraz programowania rozwiązań współbieżnych i równoległych Tematyka wykładu
4. Procesy pojęcia podstawowe
4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa
WYKŁAD 4 SEMAPHORES (CIĄG DALSZY) Przykład 6 Problem czytelników i pisarzy. Wykład 4 strona 1/24
WYKŁAD 4 SEMAPHORES (CIĄG DALSZY) Przykład 6 Problem czytelników i pisarzy Wykład 4 strona 1/24 Ilustracja 5. Schemat problemu czytelników i pisarzy Wykład 4 strona 2/24 Opis problemu: Jest n czytelników,
ForPascal Interpreter języka Pascal
Akademia Podlaska w Siedlcach Wydział Nauk Ścisłych Instytut Informatyki ForPascal Interpreter języka Pascal Przedmiot: Sieci i Systemy Wirtualne Informatyka IV Prowadzący: dr Krzysztof Trojanowski Grupa:
Programowanie współbieżne i równoległe
Programowanie współbieżne i równoległe dr inż. Marcin Wilczewski 2018/2019 1 Cel wykładu Przedstawienie zagadnień projektowania oraz programowania rozwiązań współbieżnych i równoległych Tematyka wykładu
Programowanie 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...................................................
Zaawansowane programowanie w C++ (PCP)
Wykład 10 - boost Thread. 8 czerwca 2007 Równoległość bardzo wolna reakcja człowieka wolne urządzenia wejścia - wyjścia (np. drukarki) bardzo szybkie procesory można przeprowadzać obliczenia podczas obsługi
Semafor nie jest mechanizmem strukturalnym. Aplikacje pisane z użyciem semaforów są podatne na błędy. Np. brak operacji sem_post blokuje aplikację.
J. Ułasiewicz Programowanie aplikacji współbieżnych 1 11 11.1 abstrakcyjne Semafor nie jest mechanizmem strukturalnym. Aplikacje pisane z użyciem semaforów są podatne na błędy. Np. brak operacji sem_post
Definicje. Algorytm to:
Algorytmy Definicje Algorytm to: skończony ciąg operacji na obiektach, ze ściśle ustalonym porządkiem wykonania, dający możliwość realizacji zadania określonej klasy pewien ciąg czynności, który prowadzi
Języki i Techniki Programowania II. Wykład 7. Współbieżność 1
Języki i Techniki Programowania II Wykład 7 Współbieżność 1 Programy, Procesy, Wątki Program to zestaw instrukcji do wykonania, dane do przetworzenia, mechanizmy sterujące (stos) Proces w komputerze to
Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu
Programowanie strukturalne Opis ogólny programu w Turbo Pascalu STRUKTURA PROGRAMU W TURBO PASCALU Program nazwa; } nagłówek programu uses nazwy modułów; } blok deklaracji modułów const } blok deklaracji
Programowanie wspóªbie»ne
1 Programowanie wspóªbie»ne wiczenia 2 semafory cz. 1 Zadanie 1: Producent i konsument z buforem cyklicznym type porcja; void produkuj(porcja &p); void konsumuj(porcja p); porcja bufor[n]; / bufor cykliczny
Programowanie równoległe i rozproszone. W1. Wielowątkowość. Krzysztof Banaś Programowanie równoległe i rozproszone 1
Programowanie równoległe i rozproszone W1. Wielowątkowość Krzysztof Banaś Programowanie równoległe i rozproszone 1 Problemy współbieżności wyścig (race condition) synchronizacja realizowana sprzętowo (np.
Informatyka 1. Procedury i funkcje, struktura programu w Pascalu
Informatyka 1 Wykład V Procedury i funkcje, struktura programu w Pascalu Robert Muszyński ZPCiR IIAiR PWr Zagadnienia: deklaracje procedury i funkcji, parametry procedur i funkcji, reguły użycia parametrów
Informatyka I. Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli. Dr inż. Andrzej Czerepicki
Informatyka I Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Operacje relacji (porównania) A
Programowanie wielowątkowe. Tomasz Borzyszkowski
Programowanie wielowątkowe Tomasz Borzyszkowski Wątki a procesy Jako jeden z niewielu języków programowania Java udostępnia użytkownikowi mechanizmy wspierające programowanie wielowątkowe. Program wielowątkowy
Programowanie Równoległe i Rozproszone
Programowanie Równoległe i Rozproszone Lucjan Stapp Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska (l.stapp@mini.pw.edu.pl) 1/30 PRiR MONITOR klasa z następującymi właściwościami: wszystkie
Wątek - definicja. Wykorzystanie kilku rdzeni procesora jednocześnie Zrównoleglenie obliczeń Jednoczesna obsługa ekranu i procesu obliczeniowego
Wątki Wątek - definicja Ciąg instrukcji (podprogram) który może być wykonywane współbieżnie (równolegle) z innymi programami, Wątki działają w ramach tego samego procesu Współdzielą dane (mogą operować
Podstawy Informatyki Systemy sterowane przepływem argumentów
Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Komputer i jego architektura Taksonomia Flynna 2 Komputer i jego architektura Taksonomia Flynna Komputer Komputer
Wstęp do programowania. Procedury i funkcje. Piotr Chrząstowski-Wachtel
Wstęp do programowania Procedury i funkcje Piotr Chrząstowski-Wachtel Po co procedury i funkcje? Gdyby jakis tyran zabronił korzystać z procedur lub funkcji, to informatyka by upadła! Procedury i funkcje
Systemy operacyjne. Zajęcia 11. Monitory
Systemy operacyjne. Zajęcia 11. Monitory 1. Monitor to mechanizm zamykający całą pamięć wspólną i synchronizację w pojedynczym module. 2. Monitor posiada całą pamięć wspólną jako część 'prywatną': dostępu
Wykład 4. Synchronizacja procesów (i wątków) cześć I. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB
Wykład 4 Synchronizacja procesów (i wątków) cześć I Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB Procesy wykonują się współbieżnie Potrzeba synchronizacji Jeżeli w 100% są
ξ II.UWr Wprowadzenie do STM
ξ KS @.UWr Wprowadzenie do STM Marek Materzok ZOSA 2007 ξ KS @.UWr Wprowadzenie Były sobie komputery. Wykonywały programy instrukcja po instrukcji i wszyscy byli szczęśliwi... ξ KS @.UWr Wprowadzenie Były
1. Liczby i w zapisie zmiennoprzecinkowym przedstawia się następująco
1. Liczby 3456.0012 i 0.000076235 w zapisie zmiennoprzecinkowym przedstawia się następująco a) 0.34560012 10 4 i 0.76235 10 4 b) 3.4560012 10 3 i 7.6235 10 5 c) 3.4560012 10 3 i 7.6235 10 5 d) po prostu
Informatyka 1. Wyrażenia i instrukcje, złożoność obliczeniowa
Informatyka 1 Wykład III Wyrażenia i instrukcje, złożoność obliczeniowa Robert Muszyński ZPCiR ICT PWr Zagadnienia: składnia wyrażeń, drzewa rozbioru gramatycznego i wyliczenia wartości wyrażeń, operatory
Synchronizacja procesów
Synchronizacja procesów Proces producenta - zmodyfikowany (licznik) repeat... produkuj jednostka w nast_p... while licznik =n do nic_nie_rob; bufor [we] := nast_p; we=we+1 mod n; licznik:=licznik+1; until
Semafor nie jest mechanizmem strukturalnym. Aplikacje pisane z użyciem semaforów są podatne na błędy. Np. brak operacji sem_post blokuje aplikację.
J. Ułasiewicz Programowanie aplikacji współbieżnych 1 11 Semafor nie jest mechanizmem strukturalnym. Aplikacje pisane z użyciem semaforów są podatne na błędy. Np. brak operacji sem_post blokuje aplikację.
3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki.
1. Podaj definicję informatyki. 2. W jaki sposób można definiować informatykę? 3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki. 4. Co to jest algorytm? 5. Podaj neumanowską architekturę
Komputerowe systemy sterowania
Komputerowe systemy sterowania Jerzy Nawrocki www.cs.put.poznan.pl/jnawrocki/wdi Start promu kosmicznego Discovery Systemy sterowania (2) Sterowanie w oparciu o gwiazdy Systemy sterowania (3) Sterowanie
PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy.
PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy. 1. Instrukcję case t of... w przedstawionym fragmencie programu moŝna zastąpić: var t : integer; write( Podaj
Spis treści. Księgarnia PWN: Maurice Herlihy, Nir Shavit - Sztuka programowania wieloprocesorowego. Podziękowania Przedmowa...
Księgarnia PWN: Maurice Herlihy, Nir Shavit - Sztuka programowania wieloprocesorowego Spis treści Podziękowania... 12 Przedmowa... 13 1. Wprowadzenie...15 1.1. Obiekty współdzielone i synchronizacja...
Programowanie systemów czasu rzeczywistego laboratorium. Ćwiczenie 2. Temat zajęć: pakiety, zadania, synchronizacja czasowa, mechanizm spotkań
Programowanie systemów czasu rzeczywistego laboratorium Ćwiczenie 2 Temat zajęć: pakiety, zadania, synchronizacja czasowa, mechanizm spotkań Autor: dr inż. Sławomir Samolej Zagadnienie 1. (Przykładowe
Komunikacja asynchroniczna w modelu rozproszonym
Komunikacja asynchroniczna w modelu rozproszonym.odv\f]qhsureohp\zvsyáelh QR FL Problem wzajemnego wykluczania 1DMF] FLHMSRMDZLDM F\VL ZSUDNW\FH operacje lokalne; SURWRNyáZVW SQ\ rejon krytyczny; SURWRNyáNR
Informatyka 1. Przetwarzanie tekstów
Informatyka 1 Wykład IX Przetwarzanie tekstów Robert Muszyński ZPCiR ICT PWr Zagadnienia: reprezentacja napisów znakowych, zmienne napisowe w Sun Pascalu, zgodność typów, operowanie na napisach: testowanie
Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2010/2011 http://www.wilno.uwb.edu.
SYLLABUS na rok akademicki 010/011 Tryb studiów Studia stacjonarne Kierunek studiów Informatyka Poziom studiów Pierwszego stopnia Rok studiów/ semestr 1(rok)/1(sem) Specjalność Bez specjalności Kod katedry/zakładu
Współbieżność i synchronizacja procesów
Celem wykładu jest przedstawienie zagadnień współbieżnego wykonywania wątków lub procesów, zwłaszcza w przypadku, gdy wchodzą one we wzajemne interakcje. Omówiony zostanie też jeden z podstawowych problemów
Wprowadzenie do złożoności obliczeniowej
problemów Katedra Informatyki Politechniki Świętokrzyskiej Kielce, 16 stycznia 2007 problemów Plan wykładu 1 2 algorytmów 3 4 5 6 problemów problemów Plan wykładu 1 2 algorytmów 3 4 5 6 problemów problemów
WYKŁAD. Jednostka prowadząca: Wydział Techniczny. Kierunek studiów: Elektronika i telekomunikacja
Jednostka prowadząca: Wydział Techniczny Kierunek studiów: Elektronika i telekomunikacja Nazwa przedmiotu: Systemy operacyjne i architektura komputerów Charakter przedmiotu: kierunkowy, obowiązkowy Typ
Współbieżność i równoległość w środowiskach obiektowych. Krzysztof Banaś Obliczenia równoległe 1
Współbieżność i równoległość w środowiskach obiektowych Krzysztof Banaś Obliczenia równoległe 1 Java Model współbieżności Javy opiera się na realizacji szeregu omawianych dotychczas elementów: zarządzanie
Proces z sekcją krytyczną. Synchronizacja procesów. Synchronizacja procesów, cd. Synchronizacja procesów, cd. Synchronizacja procesów, cd
Synchronizacja procesów Synchronizacja procesów, cd Proces producenta - zmodyfikowany (licznik) produkuj jednostka w nast_p while licznik =n do nic_nie_rob; bufor [we] := nast_p; we=we+1 mod n; licznik:=licznik+1;
SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017
Załącznik nr 4 do Uchwały Senatu nr 430/01/2015 SYLABUS DOTYCZY CYKLU KSZTAŁCENIA 2014-2018 realizacja w roku akademickim 2016/2017 1.1. PODSTAWOWE INFORMACJE O PRZEDMIOCIE/MODULE Nazwa przedmiotu/ modułu
Monitory. Jarosław Kuchta
Monitory Jarosław Kuchta Co to jest monitor Monitor to zebrane w jednej konstrukcji programowej zmienne i operacje na tych zmiennych. Część tych operacji jest udostępnianych na zewnątrz monitora. Tylko
Detekcja 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
Techniki komputerowe w robotyce
Techniki komputerowe w robotyce Wykład ostatni Błędy systemów komputerowych źródła i klasyfikacja Robert Muszyński KCiR, W4, PWr Skład FoilTEX c R. Muszyński 2012-2015 Błędy systemów komputerowych Błąd
Systemy 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ą..
Problemy czytelników i pisarzy oraz 5 ucztujących filozofów
Problemy czytelników i pisarzy oraz 5 dr inż. Sławomir Samolej Katedra Informatyki i Automatyki Politechnika Rzeszowska Program przedmiotu oparto w części na materiałach opublikowanych na: http://wazniak.mimuw.edu.pl/
Programowanie współbieżne Wykład 2. Rafał Skinderowicz
Programowanie współbieżne Wykład 2 Rafał Skinderowicz Program współbieżny a sekwencyjny Program zapis algorytmu, ciąg instrukcji do wykonania przez procesor: statyczny sekwencja instrukcji przekształcających
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.
Wstęp 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. Przedstawienie architektur sprzętu wykorzystywanych do
Porządek dostępu do zasobu: procesory obszary pamięci cykle procesora pliki urządzenia we/wy
ZAKLESZCZENIA w SO brak środków zapobiegania zakleszczeniom Zamówienia na zasoby => przydział dowolnego egzemplarza danego typu Zasoby w systemie typy; identyczne egzemplarze procesory obszary pamięci
Podstawy współbieżności
Podstawy współbieżności Algorytmy i struktury danych. Wykład 6. Rok akademicki: 2010/2011 Od koncepcji współbieżności do systemów rozproszonych Współbieżnośd rozważany na poziomie koncepcyjnym sposób realizacji