Компьютерные системы. Архитектура и программирование
В книге описываются стандартные элементы архитектуры, такие как центральный процессор, память, порты ввода-вывода, а также операционная система, компилятор, компоновщик и сетевое окружение. Демонстрируются способы представления данных и программ на машинном уровне, приемы оптимизации программ, особенности управления потоками выполнения и виртуальной памятью, а также методы сетевого и параллельного программирования.
Среди рассматриваемых тем:
представление данных и программ на машинном уровне;
архитектура процессора;
приемы оптимизации программ;
компоновка объектных модулей;
управление потоками выполнения;
виртуальная память и управление ею;
ввод/вывод на системном уровне;
сетевое и параллельное программирование.
Приведенные примеры для процессоров, совместимых с Intel (x86-64), написаны на языках C и ассемблера и предназначены для выполнения в операционной системе Linux.
В конце каждой главы приведено множество упражнений для закрепления пройденного материала.