Читать «Архитектура компьютера» онлайн - страница 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. Некоторые команды уровня операционной системы идентичны командам уровня архитектуры набора команд. Эти команды сразу исполняются микропрограммой, а не операционной системой. Учитывая ответ на предыдущий вопрос, подумайте, зачем это нужно.