Архитектура компьютера и проектирование компьютерных систем
Д. Паттерсон, Дж. Хеннесси
Книга, выходящая уже в 4-м издании, посвящена структурной организации компьютера и отражает революционные изменения, происходящие в области аппаратного обеспечения, в частности стремительный переход от однопроцессорных систем к многоядерным микропроцессорам. В издании подробно описывается архитектура компьютера и устройство всех его компонентов: процессоров, блоков памяти, средств ввода-вывода и хранения данных. Отличительной особенностью книги является демонстрация взаимодействий между аппаратными средствами и системным программным обеспечением. Особое внимание уделяется многоядерным вычислительным системам и параллельному программированию. Многочисленные упражнения и задачи, приводимые после каждой темы, помогают закрепить материал.
Книга рассчитана на широкий круг читателей: от студентов, изучающих компьютерные технологии, до опытных разработчиков, которые хотят освоить современные концепции многопроцессорного программирования.
Издательство: Питер, 4-е издание, 2012 г.
ISBN 978-5-459-00291-1
Количество страниц: 784.
Содержание книги «Архитектура компьютера и проектирование компьютерных систем»:
- 9 Предисловие
- 18 Глава 1. Компьютерные абстракции и технологии
- 18 1.1. Введение
- 26 1.2. Что находится ниже вашей программы
- 30 1.3. Что скрывается под крышкой корпуса компьютера
- 47 1.4. Производительность
- 60 1.5. Барьер потребляемой мощности
- 62 1.6. Коренное изменение: переход от одного к нескольким процессорам
- 67 1.7. Реальное оборудование: производство и оценочное тестирование AMD Opteron X4
- 74 1.8. Заблуждения и недоразумения
- 79 1.9. Заключительные комментарии
- 81 1.10. Упражнения
- 97 Глава 2. Инструкции: язык компьютера
- 97 2.1. Введение
- 99 2.2. Операции, осуществляемые компьютерным оборудованием
- 104 2.3. Операнды компьютерного оборудования
- 111 2.4. Числа со знаком и без знака
- 118 2.5. Представление инструкций в компьютере
- 125 2.6. Логические операции
- 128 2.7. Инструкции для принятия решения
- 134 2.8. Поддержка процедур в компьютерном оборудовании
- 144 2.9. Общение с людьми
- 150 2.10. Адресация MIPS для 32-разрядных непосредственных значений и адресов
- 159 2.11. Параллелизм и инструкции: синхронизация
- 162 2.12. Трансляция и запуск программы
- 173 2.13. Объединение всего ранее рассмотренного в упражнении по сортировке на языке С
- 181 2.14. Сравнение массивов и указателей
- 185 2.15. Реальное оборудование: инструкции ARM
- 190 2.16. Реальное оборудование: инструкции x86
- 202 2.17. Заблуждения и недоразумения
- 204 2.18. Заключительные комментарии
- 207 2.19. Упражнения
- 243 Ответы на вопросы для самопроверки
- 245 Глава 3. Арифметика для компьютеров
- 245 3.1. Введение
- 246 3.2. Сложение и вычитание
- 252 3.3. Умножение
- 258 3.4. Деление
- 269 3.5. Числа с плавающей точкой
- 297 3.6. Параллелизм и компьютерная арифметика: ассоциативность
- 299 3.7. Реальное оборудование: вычисления чисел с плавающей точкой в x86
- 303 3.8. Заблуждения и недоразумения
- 307 3.9. Заключительные комментарии
- 316 3.10. Упражнения
- 331 Ответы на вопросы для самопроверки
- 332 Глава 4. Процессор
- 332 4.1. Введение
- 337 4.2. Соглашения по логическому проектированию
- 341 4.3. Создание операционного блока
- 350 4.4. Простая схема реализации
- 365 4.5. Обзор конвейеризации
- 381 4.6. Операционный блок и система управления, оснащенные конвейером
- 403 4.7. Конфликты данных: сравнение препровождения данных и задержки
- 416 4.8. Конфликты управления
- 427 4.9. Исключения
- 435 4.10. Параллелизм и расширенный параллелизм на уровне инструкций
- 451 4.11. Реальное оборудование: конвейер AMD Opteron X4 (Barcelona)
- 454 4.12. Заблуждения и недоразумения
- 455 4.13. Заключительные комментарии
- 456 4.14. Упражнения
- 497 Ответы на вопросы для самопроверки
- 498 Глава 5. Объемная и быстродействующая: анализ иерархии памяти
- 499 5.1. Введение
- 505 5.2. Основы кэш-памяти
- 525 5.3. Измерение и повышение производительности кэш-памяти
- 543 5.4. Виртуальная память
- 573 5.5. Общая среда для иерархий памяти
- 582 5.6. Виртуальные машины
- 587 5.7. Использование конечного автомата для управления простой кэш-памятью
- 592 5.8. Параллелизм и иерархии памяти: целостность данных в кэш-памяти
- 597 5.9. Реальное оборудование: иерархии памяти AMD Opteron X4 (Barcelona) и Intel Nehalem
- 603 5.10. Заблуждения и недоразумения
- 607 5.11. Заключительные комментарии
- 609 5.12. Упражнения
- 628 Ответы на вопросы для самопроверки
- 629 Глава 6. Хранение информации и другие темы, связанные с вводом-выводом
- 630 6.1. Введение
- 633 6.2. Безотказность, надежность и готовность
- 636 6.3. Дисковое запоминающее устройство
- 642 6.4. Флэш-накопители
- 644 6.5. Соединение процессоров, памяти и устройств ввода-вывода
- 650 6.6. Организация интерфейса устройств ввода-вывода с процессором, памятью и операционной системой
- 660 6.7. Оценки производительности ввода-вывода: примеры, связанные с дисками и файловыми системами
- 663 6.8. Разработка систем ввода-вывода
- 664 6.9. Параллелизм и ввод-вывод: избыточные массивы недорогих дисков
- 672 6.10. Реальное оборудование: сервер Sun Fire x4150
- 679 6.11. Заблуждения и недоразумения
- 685 6.12. Заключительные комментарии
- 686 6.13. Упражнения
- 696 Ответы на вопросы для самопроверки
- 697 Глава 7. Многоядерность, мультипроцессорные системы и кластеры
- 697 Мультипроцессор или кластерная организация
- 698 7.1. Введение
- 701 7.2. Сложности создания программ, выполняемых в параллельном режиме
- 705 7.3. Мультипроцессоры с общей памятью
- 708 7.4. Кластеры и другие мультипроцессоры с передачей сообщений
- 713 7.5. Аппаратная многопоточность
- 717 7.6. SISD, MIMD, SIMD, SPMD и использование векторов
- 723 7.7. Введение в графические процессоры
- 731 7.8. Введение в топологию мультипроцессорных сетей
- 735 7.9. Контрольные задачи для мультипроцессоров
- 738 7.10. Roofline: Простая модель производительности
- 748 7.11. Реальное оборудование: выполнение контрольных задач для четырех многоядерных процессоров с использованием модели Roofline
- 758 7.12. Заблуждения и недоразумения
- 760 7.13. Заключительные комментарии
- 763 7.14. Упражнения
- 777 Ответы на вопросы для самопроверки
Инструкция как скачать книгу Д. Паттерсон, Дж. Хеннесси: Архитектура компьютера и проектирование компьютерных систем в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.