Optymalizacja systemów komputerowych
Kategoria: Inżynieria oprogramowania Algorytmy, Inżynieria oprogramowania
Wydawnictwo: READ ME
Ilość stron: 338
ISBN: 83-7243-253-8
Jest to książka pełna rzetelnych informacji, które trudno znaleźć w jednym miejscu. Podręcznik "Optymalizacja systemów komputerowych" wyjaśnia metody poprawiania efektywności poszczególnych podsystemów, takich jak pamięć, dyski i macierze dysków, komunikacja wejścia/wyjścia (I/O), komunikacja sieciowa i inne. Najogólniej mówiąc, próbuje odpowiedzieć na dwa zasadnicze pytania: jak można uzyskać więcej, nie kupując dodatkowego sprzętu, i kiedy naprawdę potrzebny jest zakup dodatkowych urządzeń (więcej pamięci, szybsze dyski, procesory i karty sieciowe). Ponieważ optymalizacja wymaga dobrze ugruntowanej wiedzy, w książce opisano wiele ważnych mechanizmów funkcjonowania komputerów i systemów operacyjnych. Dzięki tym informacjom możemy eliminować pewne "wąskie gardła" i obserwować, jak niektóre z pozoru niewinne działania mogą wpływać na wydajność systemu. W tej dziedzinie nie ma łatwych rozwiązań, dlatego bez wiedzy o tym, jak programy konkurują ze sobą o zasoby, nie sposób efektywnie zarządzać posiadanymi urządzeniami i tworzyć wydajne konfiguracje. Materiał prezentowany jest na przykładach systemów Linux i Solaris, choć opisywane w niej zasady można z powodzeniem stosować na wszystkich platformach.
Spis treści:
Spis treści:
- Kto powinien kupić tę książkę?
- Przedmiot
- Jak czytać tę książkę
- Jako opowiadanie
- Jako poradnik encyklopedyczny
- Organizacja tekstu
- Konwencje typograficzne
- Pytania i komentarze
- Uwagi osobiste i podziękowania
- Podziękowania od Mike'a Loukidesa
- Wstęp do architektury komputerów
- Poziomy transformacji
- Model von Neumanna
- Pamięci podręczne, hierarchia pamięci
- Korzyści z architektury 64-bitowej
- Zasady optymalizacji wydajności
- Zasada 0. Poznaj swoje środowisko
- Zasada 1. Nic za darmo!
- Zasada 2. Przepustowość czy opóźnienie
- Zasada 3. Nie przeciążaj zasobów
- Zasada 4. Starannie opracowuj testy
- Optymalizowanie wydajności statycznej
- Różne inne zmiany
- Podsumowanie
- Analiza obciążenia
- Proste polecenia
- Ewidencjonowanie procesów
- Automatyzowanie programu sar
- Wirtualny Adrian
- Analiza wzorców ruchu sieciowego
- Sterowanie obciążeniem
- Edukacja
- Parametry maxusers i pt_cnt
- Ograniczanie możliwości użytkowników
- Środowiska złożone
- Miarodajne wyznaczniki wydajności (benchmarki)
- MIPS-y i megaflopy
- Benchmarki dla poszczególnych komponentów
- Komercyjne testy obciążeniowe
- Benchmarki użytkownika
- Podsumowanie
- Architektura mikroprocesora
- Częstotliwości zegarów
- Potoki
- Procesory RISC drugiej generacji
- Buforowanie
- Hierarchia pamięci podręcznej
- Organizacja i działanie pamięci podręcznej
- Pamięć asocjacyjna
- Lokalność a hamulce pamięci podręcznej
- Anomalia wielkości pamięci podręcznej
- Szeregowanie procesów
- Model Systemu V i Linuksa
- Wielowarstwowe klasy szeregowania. Model Solarisa
- Przetwarzanie wieloprocesorowe
- Komunikacja z procesorami
- Wieloprocesorowe systemy operacyjne
- Wątki
- Blokowanie
- Wpływ pamięci podręcznej na wydajność wieloprocesorową
- Połączenia z urządzeniami peryferyjnymi
- SBus
- PCI
- Zestawienie systemów połączeń z urządzeniami peryferyjnymi
- Przerwania w systemie Linux
- Przerwania w systemie Solaris
- Narzędzia wydajności procesorów
- Średnie obciążenie
- Kolejki procesów
- W rozbiciu na kategorie
- Systemy wieloprocesorowe
- Programy top i prstat
- Statystyki blokad
- Sterowanie procesorami w Solarisie
- Narzędzia do monitorowania wydajności łączności z urządzeniami peryferyjnymi
- Zaawansowane statystyki związane z wydajnością procesorów
- Podsumowanie
- Realizacje pamięci fizycznej
- Architektura pamięci wirtualnej
- Strony
- Segmenty
- Szacowanie wymagań pamięciowch
- Układ przestrzeni adresów
- Lista wolnych stron pamięci
- Kolorowanie stron
- Bufor TLB
- Mechanizmy stronicowania i wymiany
- Spadek wydajności programów interakcyjnych
- Przestrzeń wymiany
- Konsumenci pamięci
- Buforowanie systemu plików
- Zapisy do pamięci podręcznej systemu plików: fsflush i bdflush
- Interakcje między pamięcią podręczną systemu plików a pamięcią fizyczną
- Interakcje między pamięcią podręczną systemu plików a dyskiem
- Narzędzia do analizy wydajności pamięci
- Pomiary wydajności pamięci
- Badanie wykorzystania pamięci w całym systemie
- Badanie wykorzystania pamięci procesów
- Narzędzia systemu Linux
- Podsumowanie
- Architektura dysków
- Wzorce dostępów
- Odczyt
- Zapis
- Określanie wydajności
- Interfejsy
- IDE
- IPI
- SCSI
- Fibre Channel
- IEEE 1394 (FireWire)
- USB
- Typowe problemy z wydajnością
- Wysoka asymetria operacji I/O
- Interakcja pamięci i dysków
- Długie czasy obsługi
- Systemy plików
- Elementy składowe systemów plików (v-węzły, i-węzły i r-węzły)
- UFS
- Rejestrowanie transakcji systemu plików
- System EXT2
- System EXT3
- System plików Reiser (ReiserFS)
- System JFS
- Tymczasowy system plików (tmpfs)
- Veritas VxFS
- Buforujące systemy plików (CacheFS)
- Narzędzia do analiz
- Uaktywnianie pamięci podręcznych dysku
- Pomiar wydajności dysków
- Błędy
- Narzędzie iostat
- Program sar
- Śledzenie I/O
- Podsumowanie
- Terminologia
- Klasy RAID
- RAID 0: rozwarstwianie
- RAID 1: dublowanie
- RAID 2: macierze z kodami Hamminga
- RAID 3: rozwarstwianie chronione parzystością
- RAID 4: rozwarstwianie chronione parzystością na niezależnych dyskach
- RAID 5: rozproszone rozwarstwianie chronione parzystością
- RAID 10: dublowane warstwy
- Sprzętowo czy programowo
- Programowo
- Sprzętowo
- Zestawienie konstrukcji macierzy dyskowych
- Wybór klasy RAID
- Znane programowe implementacje RAID
- Solaris: Solstice DiskSuite
- Linux: md
- Recepty RAID
- Katalogi domowe z dużym natężeniem operacji na atrybutach
- Katalogi domowe z dużym natężeniem operacji na danych
- Szybkie przetwarzanie komputerowe
- Bazy danych
- Studium przypadku: aplikacje wykonujące duże operacje I/O
- Podsumowanie
- Zasady działania sieci
- Model OSI
- Nośniki fizyczne
- UTP
- Światłowód
- Interfejsy sieciowe
- Ethernet
- FDDI
- ATM
- Ethernet czy ATM/FDDI
- Protokoły sieciowe
- IP
- TCP
- UDP
- Transport sieciowy za pomocą TCP czy UDP
- NFS
- Charakterystyka działania NFS
- Optymalizowanie klientów
- Optymalizowanie serwerów
- NFS a sieci rozległe
- CIFS via Unix
- Podsumowanie
- Dwie ważne metody
- Algorytmy wyszukiwania łańcuchów
- Pułapki optymalizacji
- Techniki analizy kodu
- Pomiar czasu działania aplikacji (time, timex i ptime)
- Pomiar czasu sekcji kodu
- Analiza z wykorzystaniem sond: sondy TNF systemu Solaris
- Analiza za pomocą profilowania: program gprof
- Wzorce optymalizacji
- Arytmetyka
- Pętle
- Łańcuchy
- Interakcja z kompilatorami
- Typowe optymalizacje: -fast
- Poziom optymalizacji: -xO
- Określanie architektury zestawu instrukcji: -xarch
- Określanie architektury procesora: -xchip
- Wstawianie funkcji: -xinlining i -xcrossfile
- Analiza zależności danych: -xdepend
- Operacje wektorowe: -xvector
- Domyślna wielkość stałych zmiennopozycyjnych: -xsfpconst
- Preselekcja danych: -xprefetch
- Krótkie zestawienie flag kompilatora
- Sprzężenie zwrotne profilowania
- Podsumowanie
- Pięć najważniejszych wskazówek dotyczących optymalizacji
- Gdzie jest wąskie gardło dysku?
- Czy w komputerze jest wystarczająca ilość pamięci?
- Czy procesory nie są przeciążone?
- Czy procesy blokują się na dyskowych operacjach I/O?
- Czy czas przetwarzania systemu dominuje nad czasem przetwarzania użytkownika?
- Przepisy na optymalizacje błyskawiczne
- Stacje robocze pojedynczych użytkowników
- Serwery grup roboczych
- Serwery WWW

Podobne książki:
Najpopularniejsze kategorie książek:
Bazy danych, Bezpieczeństwo Hakerzy, Biznes SAP R/3, Edytory tekstu, GIS System Informacji Geograficznej, Grafika użytkowa Design, Hardware Elektronika, Informatyka, Informatyka w szkole Edukacja, Internet, Inżynieria oprogramowania Algorytmy, Języki programowania, Komputer, Literatura naukowa, Macromedia, Microsoft, Multimedia, Obsługa komputera, Open Source, Oprogramowanie, Programowanie gier i grafiki, Programy inżynierskie, Programy matematyczne Matematyka, Serwery, Sieci, Systemy, Systemy operacyjne, Teleinformatyka, Telekomunikacja, Tworzenie stron WWW, Uczniowie i Studenci
Linki partnerskie:Poezja, Ideatronic, okna kraków, nieruchomości poznań, jak anioła głos