O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Rechnerorganisation und Rechnerentwurf, 5th Edition

Book Description

Mit der deutschen Übersetzung zur fünfter Auflage des amerikanischen Klassikers Computer Organization and Design - The Hardware/Software Interface ist das Standardwerk zur Rechnerorganisation wieder auf dem neusten Stand - David A. Patterson und John L. Hennessy gewähren die gewohnten Einblicke in das Zusammenwirken von Hard- und Software, Leistungseinschätzungen und zahlreicher Rechnerkonzepte in einer Tiefe, die zusammen mit klarer Didaktik und einer eher lockeren Sprache den Erfolg dieses weltweit anerkannten Standardwerks begründen. Patterson und Hennessy achten darauf, nicht nur auf das "Wie" der dargestellten Konzepte, sondern auch auf ihr "Warum" einzugehen und zeigen damit Gründe für Veränderungen und neue Entwicklungen auf. Jedes der Kapitel steht für einen deutlich umrissenen Teilbereich der Rechnerorganisation und ist jeweils gleich aufgebaut: Eine Einleitung, gefolgt von immer tiefgreifenderen Grundkonzepten mit steigernder Komplexität. Darauf eine aktuelle Fallstudie, "Fallstricke und Fehlschlüsse", Zusammenfassung und Schlussbetrachtung, historische Perspektiven und Literaturhinweise sowie Aufgaben. In der neuen Auflage sind die Inhalte in den Kapiteln 1-5 an vielen Stellen punktuell verbessert und aktualisiert, mit der Vorstellung neuerer Prozessoren worden, und der Kapitel 6... from Client to Cloud wurde stark überarbeitetUmfangreiches Zusatzmaterial (Werkzeuge mit Tutorien etc.) stehtOnline zur Verfügung.

Table of Contents

  1. Cover
  2. Titelseite
  3. Impressum
  4. Vorwort zur englischsprachigen Originalausgabe
  5. Inhaltsverzeichnis
  6. 1 Abstraktionen und Technologien
    1. 1.1 Einführung
    2. 1.2 Acht wichtige Konzepte der Computerarchitektur
    3. 1.3 Was sich hinter einem Programmverbirgt
    4. 1.4 Unter der Haube
    5. 1.5 Prozessorherstellung und Speichertechnologien
    6. 1.6 Leistung
    7. 1.7 Die Hürde des Stromverbrauchs
    8. 1.8 Der Wechsel von Einzelprozessoren zu Multiprozessoren
    9. 1.9 Fallstudie:Benchmarkingdes Intel Core i7
    10. 1.10 Fallstricke und Trugschlüsse
    11. 1.11 Schlussbetrachtungen
    12. 1.12 Historische Perspektiven und Literaturhinweise
    13. 1.13 Aufgaben
  7. 2 Befehle: Die Sprache des Rechners
    1. 2.1 Einführung
    2. 2.2 Operationen der Rechnerhardware
    3. 2.3 Operanden der Rechnerhardware
    4. 2.4 Vorzeichenbehaftete und nicht vorzeichenbehaftete Zahlen
    5. 2.5 Darstellung von Befehlenim Rechner
    6. 2.6 Logische Operationen
    7. 2.7 Befehle zum Treffen von Entscheidungen
    8. 2.8 Unterstützung von Prozeduren durch die Rechnerhardware
    9. 2.9 Kommunikation mit Menschen
    10. 2.10 Umgang mit 32-Bit-Direktoperanden und 32-Bit-Adressen
    11. 2.11 Parallelität und Befehle: Synchronisierung
    12. 2.12 Übersetzen und Starten eines Programms
    13. 2.13 Zusammenfassung am Beispiel eines Sortierprogramms in C
    14. 2.14 Felder und Zeiger im Vergleich
    15. 2.15 Fortgeschrittener Stoff: C-Compiler und Java-Interpreter
    16. 2.16 Fallstudie:ARMv7-Befehle(32Bit)
    17. 2.17 Fallstudie: x86-Befehle
    18. 2.18 Fallstudie:ARMv8-Befehle(64Bit)
    19. 2.19 Fallstricke und Trugschlüsse
    20. 2.20 Schlussbetrachtungen
    21. 2.21 Historische Perspektiven und Literaturhinweise
    22. 2.22 Aufgaben
  8. 3 Rechnerarithmetik
    1. 3.1 Einführung
    2. 3.2 Addition und Subtraktion
    3. 3.3 Multiplikation
    4. 3.4 Division
    5. 3.5 Gleitkommaarithmetik
    6. 3.6 Parallelität und Computerarithmetik: Subwort-Parallelität
    7. 3.7 Fallstudie: Streaming-SIMD und Vektorerweiterungen für x86
    8. 3.8 Beschleunigung: Subwort-Parallelität und Matrixmultiplikation
    9. 3.9 Fallstricke und Trugschlüsse
    10. 3.10 Schlussbetrachtungen
    11. 3.11 Historische Perspektiven und Literaturhinweise
    12. 3.12 Aufgaben
  9. 4 Der Prozessor
    1. 4.1 Einführung
    2. 4.2 Konventionen für den Entwurf von Logikschaltungen
    3. 4.3 Aufbau eines Datenpfades
    4. 4.4 Eine einfache Implementierungsmethode
    5. 4.5 Übersicht über die Technik des Pipelinings
    6. 4.6 Pipelining von Datenpfad und Steuerwerk
    7. 4.7 Datenkonflikte: Forwarding vs. Stalling
    8. 4.8 Steuerkonflikte
    9. 4.9 Ausnahmebehandlung
    10. 4.10 Parallelität auf Befehlsebene
    11. 4.11 Fallstudie: Die Pipelines beim ARM Cortex-A8 und beim Intel Core i7
    12. 4.12 Schneller werden: Parallelität auf Befehlsebene und Matrixmultiplikation
    13. 4.13 Fortgeschrittener Stoff: Einführung in den Schaltungsentwurf
    14. 4.14 Fallstricke und Trugschlüsse
    15. 4.15 Schlussbetrachtungen
    16. 4.16 Historische Perspektiven und Literaturhinweise
    17. 4.17 Aufgaben
  10. 5 Groß und schnell: Ausnutzung der Speicherhierarchie
    1. 5.1 Einführung
    2. 5.2 Speichertechnologien
    3. 5.3 Grundlagen des Cachings
    4. 5.4 Cache-Leistungmessen und verbessern
    5. 5.5 Zuverlässige Speicherhierarchie
    6. 5.6 Virtuelle Maschinen
    7. 5.7 Virtueller Speicher
    8. 5.8 Allgemeines Schema der Speicherhierarchien
    9. 5.9 Steuerung eines einfachen Caches mit einem endlichen Automaten
    10. 5.10 Parallelität und Speicherhierarchien: Cache-Kohärenz
    11. 5.11 Parallelität und Speicherhierarchie: RAID
    12. 5.12 Fortgeschrittener Stoff: Cache-Controller
    13. 5.13 Fallstudie: Speicherhierarchien von ARM Cortex-A8 und Intel Core i7
    14. 5.14 Beschleunigung: Cache-Blocking und Matrixmultiplikation
    15. 5.15 Fallstricke und Trugschlüsse
    16. 5.16 Schlussbetrachtungen
    17. 5.17 Historische Perspektive und Literaturhinweise
    18. 5.18 Aufgaben
  11. 6 Parallele Prozessoren: Vom Client zur Cloud
    1. 6.1 Einführung
    2. 6.2 Warum es schwierig ist, parallele Programme zu entwickeln
    3. 6.3 SISD, MIMD, SIMD, SPMD und Vektor
    4. 6.4 Hardwareseitiges Multithreading
    5. 6.5 Multicores. Multiprozessoren mit gemeinsam genutztem Speicher
    6. 6.6 Grafikprozessoren(GPUs) –Einführung
    7. 6.7 Cluster und Warehouse Scale Computer
    8. 6.8 Einführung in Multiprozessor-Netztopologien
    9. 6.9 Kommunikation mit der Außenwelt: Cluster
    10. 6.10 Multiprozessor-Benchmarks und Performanzmodelle
    11. 6.11 Fallstudie: Intel Core i7960 und NVIDIA Tesla
    12. 6.12 Beschleunigung: multiple Prozessoren und Matrixmultiplikation
    13. 6.13 Fallstricke und Trugschlüsse
    14. 6.14 Schlussbetrachtungen
    15. 6.15 Historische Perspektive und Literaturhinweise
    16. 6.16 Aufgaben
  12. Fachbegriffe Deutsch – Englisch
    1. Englisch–Deutsch
    2. Deutsch–Englisch
  13. APPENDICES
    1. A : Assemblers, Linkers, and the SPIM Simulator
      1. A.1 Introduction . .
      2. A.2 Assemblers
      3. A.3 Linkers
      4. A.4 Loading
      5. A.5 Memory Usage
      6. A.6 Procedure Call Convention
      7. A.7 Exceptions and Interrupts
      8. A.8 Input and Output
      9. A.9 SPIM
      10. A.10 MIPS R2000 Assembly Language
      11. A.11 Concluding Remarks
      12. A.12 Exercises
    2. B: The Basics of Logic Design
      1. B.1 Introduction
      2. B.2 Gates, Truth Tables, and Logic Equations
      3. B.3 Combinational Logic
      4. B.4 Using a Hardware Description Language
      5. B.5 Constructing a Basic Arithmetic Logic Unit
      6. B.6 Faster Addition: Carry Lookahead
      7. B.7 Clocks
      8. B.8 Memory Elements: Flip-Flops, Latches, and Registers
      9. B.9 Memory Elements: SRAMs and DRAMs
      10. B.10 Finite-State Machines
      11. B.11 Timing Methodologies
      12. B.12 Field Programmable Devices
      13. B.13 Concluding Remarks
      14. B.14 Exercises
  14. Stichwortverzeichnis
  15. Back matter
  16. Fußnoten