такое шины, причем особое внимание уделяется популярной шине PCI. В главе приводится много разнообразных примеров, в том числе относящихся к трем упомянутым ранее компьютерам.
Глава 4 знакомит читателя со строением уровня микроархитектуры и принципами его работы. Поскольку функцией этого уровня является интерпретация команд второго уровня, мы сконцентрируемся именно на этом, что и проиллюстрируем на примерах. В этой главе также рассказывается об уровне микроархитектуры некоторых реальных систем.
В главе 5 обсуждается уровень архитектуры набора команд (ISA), который многие называют машинным языком. Здесь мы подробно рассмотрим три модели компьютеров, выбранные нами в качестве иллюстративных примеров.
В главе 6 говорится о некоторых командах, об устройстве памяти компьютера, о механизмах управления на уровне операционной системы. В примерах фигурируют две операционные системы: Windows ХР, устанавливаемая на профессиональных серверах на базе Pentium 4, и UNIX, применяемая вкупе с микросхемой UltraSPARC III.
Глава 7 — об уровне языка ассемблера. Сюда относится и язык ассемблера, и процесс ассемблирования. Здесь речь также идет о компоновке.
В главе 8 обсуждаются параллельные компьютеры, важность которых возрастает с каждым днем. Одни из них действуют на базе нескольких процессоров с общей памятью, у других общей памяти нет. Одни из них представляют собой суперкомпьютеры, другие — сети рабочих станций, третьи — системы на одной микросхеме.
Глава 9 содержит тематический список рекомендуемой литературы к каждому разделу, а также алфавитный список литературы, цитируемой в этой книге. Автор считает, что это — самая главная часть книги, она вам непременно понадобится!
Вопросы и задания
1. Объясните следующие термины своими словами:
1) транслятор;
2) интерпретатор;
3) виртуальная машина.
2. Чем отличается интерпретация от трансляции?
3. Может ли компилятор производить данные непосредственно для уровня микроархитектуры, минуя уровень архитектуры набора команд? Обсудите все доводы за и против.
4. Можете ли вы представить многоуровневый компьютер, у которого уровень физических устройств и цифровой логический уровень — не самые нижние уровни? Объясните, почему.
5. Рассмотрим многоуровневый компьютер, в котором все уровни отличаются друг от друга. Команды каждого уровня в т раз мощнее команд предыдущего уровня, то есть одна команда уровня г может выполнять ту же работу, кото рую выполняют m команд на уровне г - 1. Если для выполнения программы первого уровня требуется k секунд, сколько времени будут выполняться соответствующие программы на уровнях 2, 3 и 4, с учетом того, что для интерпретации одной команды уровня г + 1 требуется п команд уровня г?
6. Некоторые команды уровня операционной системы идентичны командам уровня архитектуры набора команд. Эти команды сразу выполняются микропрограммой, а не операционной системой. Учитывая ответ на предыдущий вопрос, подумайте, зачем это нужно.
7. Рассмотрим компьютер с идентичными интерпретаторами на уровнях 1, 2 и 3. Для выборки, изучения и выполнения одной команды интерпретатору требуется п служебных команд. На уровне 1 одна команда выполняется за k наносекунд. За какое время одна команда будет выполнена на уровнях 2, 3 и 4?