Programowanie współbieżne i rozproszone/PWR Wykład 1

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

Wstęp

Próba definicji
Praca współbieżna polega na tym, że składające się na nią zjawiska, czynności i działania odbywają się równocześnie. Istotny jest przy tym punkt widzenia obserwatora.

Zadaniem przedmiotu Programowanie współbieżne jest przedstawienie problematyki związanej z tworzeniem programów, w których wiele czynności może odbywać się równocześnie. Zajmiemy się przede wszystkim problematyką właściwej synchronizacji czynności składających się na program współbieżny i zagadnieniami związanymi z ich poprawnością.

Motywacja

Pisanie programów jest trudne. Jest to stwierdzenie prawdziwe już w przypadku programów sekwencyjnych, gdy na raz wykonuje się jedna instrukcja i nie trzeba rozważać wszystkich możliwych interakcji z innymi działającymi w tym samym czasie programami. Wprowadzenie współbieżności jeszcze bardziej utrudnia programowanie. Dlaczego zatem warto i należy rozważać programy współbieżne?

Odpowiedzieć na to pytanie można na wiele sposobów.

Równoległość a współbieżność

Założenia o środowisku działania programów

Zakres tematyki

Organizacja zajęć i zasady zaliczania

Poprawność programów współbieżnych

Przeplot

Własność bezpieczeństwa (zapewniania)

Własność żywotności

Inne pożądane własności programów współbieżnych

Klasyczne problemy synchronizacyjne

Wzajemne wykluczanie

Producenci i konsumenci

Czytelnicy i pisarze

Pięciu filozofów

Podsumowanie