|
Autor: Maurice Herlihy, Nir Shavit
ISBN: 978-83-01-16146-0
Ilość stron: 560
Data wydania: 01/2010
Nowoczesny podręcznik programowania maszyn wieloprocesowych – dynamicznie rozwijającej się dziedziny współczesnej informatyki.
Obecnie producenci układów scalonych rezygnują z prób przyśpieszania procesorów i skupiają się na architekturach wielordzeniowych. Obliczenia na wieloprocesorowych układach scalonych są bardziej wydajne dzięki współbieżności – wykorzystaniu wielu procesorów do wykonywania jednego zadania.
Sztuka programowania tych systemów wymaga zrozumienia nowych zasad obliczeniowych, algorytmów i narzędzi programistycznych.
W publikacji przedstawiono kluczowe zagadnienia potrzebne do efektywnego programowania wieloprocesowego: • zasady programowania współbieżnego, • podstawy programowania systemów ze współdzieloną pamięcią, • architekturę maszyn wieloprocesorowych, • przegląd współbieżnych struktur danych i kluczowych elementów ich budowy, • pełną prezentację technik synchronizacji – od prostych blokad do najnowszych transakcyjnych systemów pamięci, • działające przykłady w języku Java z wykorzystaniem Java Concurrency Package.
Książka prezentuje podstawowe koncepcje programowania w C# oraz C i C++ z biblioteką PThreads.
Rozdziały: 1. Wprowadzenie
I. Zasady 2. Wzajemne wykluczenie 3. Obiekty współbieżne 4. Podstawy pamięci współdzielonej 5. Względna moc elementarnych operacji synchronizacyjnych 6. Uniwersalność konsensusu
II. Praktyka 7. Blokady wirujące i rywalizacja 8. Monitory i synchronizacja blokująca 9. Listy powiązane: rola blokowania 10. Kolejki współbieżne i problem ABA 11. Współbieżne stosy i eliminacja 12. Zliczanie, sortowanie i koordynacja rozproszona 13. Współbieżne mieszanie i naturalny paralelizm 14. Listy z przeskokami i wyszukiwanie wyważone 15. Kolejki priorytetowe 16. Zobowiązania, szeregowanie i rozkład pracy 17. Bariery komputeks.pl 18. Pamięć transakcyjna
Dodatki: A. Podstawy programowania B. Podstawowe informacje o urządzeniach
Sztuka programowania wieloprocesorowego
|