5
Husson S. S. Microprogramming Principles and Practices. Prentice-Halclass="underline" 1970.
(обратно)
6
CISC-архитектура Intel x86 используется семейством однокристальных (размещенных на одной микросхеме) процессоров, к которому относятся процессоры 086, 186, 286, 386, 486, Pentium, Pentium Pro и Pentium II.
(обратно)
7
На самом деле все гораздо хуже — некоторые программы явно рассчитывают на 16-разрядную адресацию. Например в них сильно изменяются условия возникновения переполнения при выполнении арифметических операций в регистрах и т. д. Очевидно, что такого рода зависимости не проявляются сразу после перехода с 16-ти на 32-х разрядные процессоры (регистры) и в результате появляются «плавающие» ошибки, которые очень трудно обнаружить.—Прим. консультанта.
(обратно)
8
Аббревиатура API используется (в том числе, и в оригинале книги) в двух значениях: интерфейс прикладных программ в целом и отдельная функция интерфейса прикладных программ. Во втором значении API может употребляться во множественном числе: в английском — APIs, в русском, естественно, без изменения. — Прим. переводчика.
(обратно)
9
Недавно, название этого интерфейса стали сокращать как TIMI. Мне не слишком нравится имя "Тимми" (да простят меня те, кого зовут Тимоти), так что для обозначения машинного интерфейса AS/400 мы будем использовать старую аббревиатуру «MI».
(обратно)
10
К несчастью, Сеймур Крей — отец суперкомпьютеров s умер в октябре 1996 года от ранений, полученных в автокатастрофе. Он начал разрабатывать компьютеры в 1950 году в миннесотской компании Engineering Research Associates, и создал там первый в мире коммерческий успешный компьютер для научных расчетов ERA 1103. В 1957 году Крей — среди основателей корпорации Control Data. Его проекты компьютеров 6600 и 7600 определили новые стандарты для всей промышленности. В 1972 году он основал первую из своих собственных фирм — Cray Research, в рамках которой создал самые быстрые в мире суперкомпьютеры общего назначения. Значение его наследия для всех нас, специалистов компьютерной индустрии, неоценимо.
(обратно)
11
Добиться полной загрузки конвейера на коммерческих задачах — весьма непросто из-за большого числа условных выражений и команд переходов. По этой причине RISC-системы неэффективны на коммерческих задачах. Как с этой проблемой справились разработчики AS/400 будет рассказано ниже. — Прим. консультанта.
(обратно)
12
Скорее всего Вы, читатель, насчитаете только 4 такта. Пятый (на самом деле — первый) — это выборка из памяти первой команды загрузки. Выборка остальных команд будет осуществляться уже параллельно с выполнением предыдущих команд и, следовательно, не приведет к увеличению времени выполнения всей последовательности. — Прим. консультанта.
(обратно)
13
Отдайте интересные моменты компиляторам. — Прим. переводчика.
(обратно)
14
Читатели, которые помнят короля Артура, знают, что Сомерсет (Somerset) — это мифическое место, куда враждующие стороны приходят для заключения мира.
(обратно)
15
Я дал это имя внутреннему интерфейсу System/38 в середине 70-х, предполагая, что оно будет изменено перед объявлением системы. Этого не случилось, и сразу же возникла терминологическая путаница: стали говорить об «интерфейсе IMPI». Между тем, понятие «интерфейс» в данном контексте, конечно же, избыточно. Кстати, и с MI s та же проблема.
Затем однажды кто-то решил, что последнее «i» в IMPI должно расшифровываться как «instruction». Это тоже не корректно, поскольку мы говорим об инструкциях IMPI. Наконец, поступали предложения выбросить последнюю чтобы устранить дублирование. Тогда оказалось, что IMP не имеет смысла и вызывает в воображении картину маленького шаловливого демона внутри системы. Так могло продолжаться долго, но слава Богу, переход на PowerPC наконец-то решил проблему названия.
(обратно)
16
Это кодовое имя использовалось нами не впервые. Перед объявлением в 1975 году System/32 также называлась системой North Star. На этот раз, мы предпочли название, состоящее из одного слова.
(обратно)
17
Кэш — это быстродействующая память небольшого объема, выступающая в роли буфера для основной памяти. У большинства RISC-процессоров отдельные кэши команд и данных. Если процессор однокристальный кэши могут располагаться либо на кристалле, либо в отдельной микросхеме, тогда как основная память всегда реализуется в виде отдельных микросхем.
(обратно)
18
Буквальный перевод с английского — «сводник». — Прим. переводчика.
(обратно)
19
При объявлении этих процессоров им были присвоены номера, а не имена. Например, процессору Muskie был дан весьма незатейливый идентификатор А30. Но так как названия гораздо легче для восприятия, в разговоре о процессорах AS/400 мы будем пользоваться ими вместо цифр.
(обратно)
20
Все команды PowerPC как для 32- , так и для 64-разрядных процессоров имеют размер 32 разряда.
(обратно)
21
Cobra-4 может работать и на более высоких частотах. С характеристиками этого процессора мы скоро познакомимся.
(обратно)
22
Cobra-Lite является первым поколением процессоров RISC, которые использовались в AS/400.Последующие модели Cobra, реализующие полный набор команд PowerPC, рассматриваются как второе поколение Cobra-Lite.
(обратно)
23
Когда книга готовилась к печати, появилась возможность использовать до 8 процессоров SMP в каждом узле. Кстати, SP2 изменил название и теперь называется просто SP. — Прим. консультанта.
(обратно)
24
Перекрестные переключатели на протяжении десятков лет используются на телефонных станциях для подключения набора входящих линий к набору исходящих линий в произвольном порядке. Любая входящая линия может быть подключена к любой не занятой исходящей линии. Получается множество одновременных соединений.
(обратно)
25
Увы, кажется, в последнее время оно перестало сбываться. — Прим. консультанта.
(обратно)
26
В честь Тихого Океана — Прим. консультанта.
(обратно)
27
Многие годы меня мучили вопросами о смысле названий горизонтальный и вертикальный. Так вот, смысла в них не много. Нам нужны были названия, чтобы как-то различать эти два слоя, и мы вспомнили, что в начале 70-х микрокод для некоторых System/370 подразделялся на горизонтальный и вертикальный. Обычно на машинах с горизонтальным микрокодом процессор мог выполнять несколько операций в одном цикле, а на машинах с вертикальным микрокодом . только одну. И если называть нижний слой горизонтальным микрокодом отчасти справедливо, то слой VMC определению вертикального микрокода никак не удовлетворяет.
(обратно)
28
Slick — скользкий. — Прим. переводчика.
(обратно)
29
Оптимизация кода LIC продолжалась долгие годы после создания первого ядра RISC. В результате при выходе версии V3R7 на рынок, некоторые покупатели отметили 50-процентный рост производительности. После выпуска V4R1 на некоторых конфигурациях системы был отмечен новый рост производительности без необходимости замены аппаратуры. Настройка ядра любой ОС — это бесконечный процесс.
(обратно)
30
Дик Бэйнс любит сравнивать языки программирования с куском мыла. Например, он говорит, что программирование на RPG напоминает попытку отрезать кусок мыла пластмассовой ложкой. Программирование же на С+ + похоже, по его мнению, на отрезание того же куска с помощью обоюдоострой бритвы: можно быстро делать очень точные разрезы, но по окончании процедуры все мыло будет в крови.
(обратно)