Читать «Архитектура компьютера» онлайн - страница 55
Эндрю Таненбаум
Глава 3 посвящена цифровому логическому уровню, то есть аппаратному обеспечению. В ней рассказывается, что такое вентили и как они объединяются в схемы. В этой главе также вводятся основные понятия булевой алгебры, которая используется для обработки цифровых данных. Кроме того, объясняется, что такое шины, причем особое внимание уделяется популярной шине PCI. В главе приводится много разнообразных примеров, в том числе относящихся к трем упомянутым ранее компьютерам.
Глава 4 знакомит читателя со строением уровня микроархитектуры и принципами его работы. Поскольку функцией этого уровня является интерпретация команд второго уровня, мы сконцентрируемся именно на этом, что и проиллюстрируем на примерах. В этой главе также рассказывается о уровне микроархитектуры некоторых реальных систем.
В главе 5 обсуждается уровень архитектуры набора команд (ISA), который многие называют машинным языком. Здесь один из компьютеров, выбранных нами в качестве примеров, будет рассмотрен более подробно.
В главе 6 говорится о некоторых командах, об устройстве памяти компьютера, о механизмах управления на уровне операционной системы. В примерах фигурируют две операционные системы: Windows (популярная в настольных системах на базе x86) и UNIX, применяемая во многих системах на базе x86 и ARM.
Глава 7 — об уровне языка ассемблера. Сюда относится и язык ассемблер, и процесс ассемблирования. Здесь речь также идет о компоновке.
В главе 8 обсуждаются параллельные компьютеры, важность которых возрастает с каждым днем. Одни из них действуют на базе нескольких процессоров с общей памятью, у других общей памяти нет. Одни из них представляют собой суперкомпьютеры, другие — сети рабочих станций, третьи — системы на одной микросхеме.
Глава 9 содержит алфавитный список литературы, цитируемой в этой книге. Список рекомендуемой литературы размещен на веб-сайте книги по адресу www. prenhall.com/tanenbaum.
Вопросы и задания
1. Объясните следующие термины своими словами:
1) транслятор;
2) интерпретатор;
3) виртуальная машина.
2. Может ли компилятор производить данные непосредственно для уровня микроархитектуры, минуя уровень архитектуры набора команд? Обсудите все доводы за и против.
3. Можете ли вы представить многоуровневый компьютер, у которого уровень физических устройств и цифровой логический уровень — не самые нижние уровни? Объясните, почему.
4. Рассмотрим многоуровневый компьютер, в котором все уровни отличаются друг от друга. Команды каждого уровня в m раз мощнее команд предыдущего уровня, то есть одна команда уровня r может исполнять ту же работу, которую исполняют m команд на уровне r — 1. Если для исполнения программы первого уровня требуется k секунд, сколько времени будут исполняться соответствующие программы на уровнях 2, 3 и 4, учитывая, что для интерпретации одной команды уровня r + 1 требуется n команд уровня r?
5. Некоторые команды уровня операционной системы идентичны командам уровня архитектуры набора команд. Эти команды сразу исполняются микропрограммой, а не операционной системой. Учитывая ответ на предыдущий вопрос, подумайте, зачем это нужно.