242073472

242073472



<17>


> Programowanie współbieżne w informatyce i nie tylko

je widelce, znów głodnieje filozof numer 1.1 znów filozof numer 2 nie może jeść z tego samego powodu co na początku: braku prawego widelca. Gdy w dalszym ciągu filozofowie 1 i 3 będą jedli na zmianę, to nie pozwolą nigdy najeść się filozofowi numer 2. Mamy zatem scenariusz prowadzący do zagłodzenia filozofa numer 2.

Poprawne rozwiązanie jest nieco zmodyfikowanym wariantem pierwszym rozwiązania. Zauważmy, że do niepożądanej sytuacji dochodziło wtedy, gdy głodnieli wszyscy filozofowie. Wyobraźmy sobie teraz, że filozof, który myśli odsuwa się lekko od stołu. Gdy zgłodnieje, sprawdza najpierw, czy przy stole są już wszyscy pozostali. jeśli tak, to czeka, a w przeciwnym razie przysuwa się do stołu i postępuje jak w wariancie pierwszym: próbuje podnieść najpierw lewy, potem prawy widelec, je, odkłada oba widelce. Następnie odsuwa się od stołu zwalniając miejsce przy nim i znów rozmyśla.


Rysunek 7.

Możliwy „przeplot” myślenia i jedzenia

5 PODSUMOWANIE

Z racji upowszechnienia się systemów wielozadaniowych, sieci, Internetu oraz wzrostu mocy obliczeniowej współczesnych komputerów programowanie współbieżne bardzo zyskało naznaczeniu. Programy współbieżne często mają lepszą strukturę niż programy sekwencyjne. Powstają w sposób bardziej modularny, pozwalając programiście skupić się na jednym aspekcie rozwiązywanego problemu. Ponadto niektóre algorytmy (na przykład sortowanie przez scalanie) w sposób naturalny zapisuje się w postacie programu współbieżnego.

Program współbieżny można wykonywać na komputerze wieloprocesorowym, a także na komputerze wyposażonym tylko w jeden procesor. Gdy faktycznie dochodzi do wykonywania kilku czynności w tym samym czasie mówimy o wykonaniu równoległym (możliwym na wielu procesorach lub procesorze wielordzeniowym). Inną techniką realizacji współbieżności jest wykonanie w przeplocie implementowane przez systemy operacyjne z podziałem czasu.

Oprócz zalet techniki programowania mają także wady. Programowanie współbieżne jest trudne. Programy współbieżne są trudne do analizy. Często ich działanie jest niezgodne z intuicją. Utrudnione jest również wykrywanie i usuwanie błędów. Błędny scenariusz może bowiem ujawniać się bardzo rzadko. To z kolei powoduje, że trudno jest go odtworzyć w celu znalezienia błędu podczas krokowego wykonania programu.


Program współbieżny może mieć wiele scenariuszy wykonań. Poprawność oznacza brak niepożądanych zachowań w żadnym z możliwych przeplotów. Program musi być bezpieczny, czyli spełniać wszystkie stawiane mu wymagania synchronizacyjne oraz żywotny. Ta druga własność oznacza, że żaden proces nie oc; w nieskończoność na zajście zdarzenia, które pozwoli mu kontynuować działanie.




Wyszukiwarka

Podobne podstrony:
Programowanie współbieżne w informatyce i nie tylko Progr.imow.axie współbieżne w informatyce i nie
<9>> Programowanie współbieżne w informatyce i nie tylko Jak wygląda sytuacja dzisiaj? Po
<U>> Programowanie współbieżne w informatyce i nie tylko Każdy z łyżwiarzy na dany przez
<13>> Programowanie współbieżne w informatyce i nie tylko że tak naprawdę w zależności od
<15>> Programowanie współbieżne w informatyce i nie tylko kę dostał drugi proces. Gdy drugi
Programowanie współbieżne w informatyce i nie tylko Marcin Engel Instytut Informatyki Uniwersyt
<7 >> Programowanie współbieżne w informatyce i nie tylko 1.3    PROGRAM
Rodzaj zajęć: Wszechnica Popołudniowa Tytuł: Programowanie współbieżne w informatyce i nie
<5>> Programowanie współbieżne w informatyce i nie tylko1 CO TO JEST PROGRAMOWANIE
Obecnie nieodłącznym narzędziem informatyka (i nie tylko) jest komputer. W przeszłości nikt nie zast
IMGF09 17 edukacyjne, które zawierają nie tylko składnik prakseologiczny, lecz także mają wymiar est
„Będziemy świadkami budowania olbrzymich baz danych, zawierający informacje nie tylko na temat
się robić imprezę, która byłaby takim dużym programem ciągle rozbudowywanym - nie tylko same
MEDIACJE - udział państwa trzeciego, które nie tylko je organizuje, ale także bierze udział. Delegow
441Rozdział 11. ♦ System Nodes Wspomniany wyżej parametr Fac może czerpać informację nie tylko z war
technologia TECHNOLOGIA INFORMACYJNA NIE TYLKO DLA UCZNIÓW
SAM73 Gialika komputerowa dclinicje obszary zastosowali Grafika komputerowa - dział informatyki (i

więcej podobnych podstron