Серия ICL 2900
Эта статья включает список общих ссылок , но в ней отсутствуют достаточные соответствующие встроенные цитаты . ( Май 2013 г. ) |
Серия ICL 2900 представляла собой линейку систем для мейнфреймов компьютерных , анонсированную британским производителем International Computers Limited 9 октября 1974 года. Компания начала разработку под названием «New Range» сразу после своего создания в 1968 году. Эта серия не была предназначена для он был задуман как синтетический вариант , сочетающий в себе лучшие идеи, доступные из различных источников.
на смену серии 2900 пришла серия 39 С маркетинговой точки зрения в середине 1980-х годов ; однако Серия 39 представляла собой, по сути, новый набор машин, реализующих архитектуру Серии 2900, как и последующие машины ICL под маркой Trimetra.
Происхождение
[ редактировать ]Когда была образована ICL в 1968 году в результате слияния компаний International Computers and Tabulators (ICT) с English Electric Leo Marconi и Elliott Automation , компания рассматривала несколько вариантов своей будущей линейки продуктов. В их число входили улучшения либо ICT серии 1900 , либо English Electric System 4 , а также разработка, основанная на Дж. К. Илиффа базовой языковой машине . В конечном итоге был выбран так называемый синтетический вариант : новый дизайн, разработанный с нуля.
Как следует из названия, на дизайн повлияло множество источников, в том числе более ранние машины ICL. Дизайн Burroughs мэйнфреймов оказал большое влияние, хотя ICL отвергла концепцию оптимизации дизайна для одного языка высокого уровня. Система Multics дала другие идеи, особенно в области защиты. Однако самым большим внешним влиянием, вероятно, была машина MU5 , разработанная в Манчестерском университете .
Архитектурные концепции
[ редактировать ]Виртуальная машина
[ редактировать ]В архитектуре серии 2900 используется концепция виртуальной машины как набора ресурсов, доступных программе. Понятие виртуальной машины в архитектуре серии 2900 отличается от этого термина, используемого в других средах . Поскольку каждая программа выполняется на своей собственной виртуальной машине, эту концепцию можно сравнить с процессом в других операционных системах, тогда как процесс серии 2900 больше похож на поток .
Наиболее очевидным ресурсом виртуальной машины является виртуальное хранилище (память). Другие ресурсы включают периферийные устройства, файлы и сетевые подключения.
В виртуальной машине код может выполняться на любом из шестнадцати уровней защиты, называемых уровнями доступа (или уровнями ACR, после регистра контроля доступа, который управляет механизмом). Наиболее привилегированные уровни кода операционной системы (ядро) работают на той же виртуальной машине, что и пользовательское приложение, равно как и промежуточные уровни, такие как подсистемы, реализующие доступ к хранилищу файлов и работу в сети. Таким образом, системные вызовы предполагают изменение уровня защиты, а не дорогостоящий вызов кода на другой виртуальной машине. Каждый модуль кода выполняется на определенном уровне доступа и может вызывать функции, предлагаемые кодом более низкого уровня (более привилегированным), но не имеет прямого доступа к памяти или другим ресурсам на этом уровне. Таким образом, архитектура предлагает встроенный механизм инкапсуляции для обеспечения целостности системы.
Сегменты памяти могут быть разделены между виртуальными машинами. Существует два типа общей памяти: общедоступные сегменты , используемые операционной системой (которые присутствуют во всех виртуальных машинах), и глобальные сегменты, используемые для общих данных уровня приложения: этот последний механизм используется только тогда, когда приложение требует наличия двух виртуальные машины для общения. Например, сегменты глобальной памяти используются для таблиц блокировки базы данных. Для синхронизации доступа к таким сегментам доступны аппаратные инструкции семафора. Небольшое любопытство заключается в том, что две виртуальные машины, разделяющие глобальный сегмент, используют разные виртуальные адреса для одних и тех же ячеек памяти, а это означает, что виртуальные адреса не могут безопасно передаваться от одной виртуальной машины к другой.
используется термин ICL серии 2900 и ICL серии 39 В машинах для обозначения центрального процессора (ЦП) «процессор кода заказа» (OCP).
Механизмы адресации
[ редактировать ]Архитектура 2900 поддерживает аппаратный стек вызовов , обеспечивая эффективное средство выполнения программ на языке высокого уровня, особенно тех, которые допускают рекурсивные вызовы функций. В то время это было дальновидное решение, поскольку ожидалось, что доминирующими языками программирования первоначально будут COBOL и FORTRAN . Архитектура предоставляет встроенные механизмы для вызова процедур с использованием стека и регистры специального назначения для обращения к вершине стека и основанию текущего кадра стека.
Данные вне стека обычно адресуются через дескриптор . Это 64-битная структура, содержащая 32-битный виртуальный адрес и 32 бита управляющей информации. Управляющая информация определяет, является ли адресуемая область кодом или данными; в случае данных — размер адресуемых элементов (1, 8, 32, 64 или 128 бит); флаг, указывающий, требуется ли проверка привязки к аппаратному массиву; и различные другие усовершенствования.
32-битный виртуальный адрес содержит 14-битный номер сегмента и 18-битное смещение внутри сегмента.
Код заказа не является строго частью архитектуры 2900. Этот факт использовался для эмуляции других машин путем микрокодирования их наборов команд. Однако на практике все машины серии 2900 имеют общий код заказа или набор команд, известный как PLI (интерфейс примитивного уровня). Это разработано в первую очередь как цель для компиляторов языков высокого уровня. Самые мощные машины, такие как 2980 и 2988, реализовали все инструкции аппаратно, тогда как остальные использовали микропрограммное обеспечение.
Существует несколько регистров, каждый из которых предназначен для определенной цели. Регистр аккумулятора (ACC) доступен для общего использования и может иметь размер 32, 64 или 128 бит. Регистр B используется для индексации в массивах; регистр LNB (база локального имени) указывает на основание текущего кадра стека, а регистр SF (передняя часть стека) указывает на подвижную «верхушку» стека; регистр DR используется для хранения дескрипторов для адресации в куче и так далее. Также имеются два 32-битных указателя на данные вне стека; XNB (база дополнительных имен) и LTB (база таблицы связей).
Форматы данных, распознаваемые инструкциями PLI, включают 32-битные целые числа без знака; 32-битные и 64-битные целые числа с дополнением до двух; 32-битная, 64-битная и 128-битная с плавающей запятой; и 32-битные, 64-битные и 128-битные упакованные десятичные числа. Вопреки соглашениям C и UNIX, логическое значение true представляется как ноль, а false — как минус единица. Строки хранятся в виде массивов 8-битных символов, обычно закодированных в EBCDIC (хотя EBCDIC ICL имеет незначительные отличия от версии IBM). Вместо EBCDIC можно использовать ISO (по сути ASCII), установив бит управления в привилегированном регистре; среди прочего, это влияет на некоторые инструкции десятичного преобразования.
Поскольку некоторые инструкции PLI, особенно инструкции для вызова процедур, очень мощные (особенно системные вызовы), скорость выполнения инструкций в серии 2900 не всегда напрямую сопоставима с таковой на оборудовании конкурентов. В маркетинговой литературе ICL обычно используется концепция «эквивалента MIPS IBM», представляющая собой рейтинг MIPS мэйнфрейма IBM, который достиг такой же пропускной способности в тестах приложений. Эффективность, достигнутая архитектурой 2900, в частности, отсутствие накладных расходов на системные вызовы, компенсировала относительно низкую производительность аппаратного обеспечения.
Реализации
[ редактировать ]Процессор | Модель | Объявлено | Доставленный | Более поздние модели |
---|---|---|---|---|
P-серия | ||||
П4 | 2980 | Октябрь 1974 г. | июнь 1975 г. | |
П3 | 2970 | Октябрь 1974 г. | декабрь 1974 г. | |
П2Л | 2960 | март 1976 г. | декабрь 1975 г. | |
P2S | 2950 | Отменено | ||
ПИ | 2940 | Отменено | ||
Р0 | 2930 | Отменено | ||
S-серия | ||||
С4 | Отменено | |||
S3 | 2966 | ноябрь 1980 г. | июнь 1981 г. | 2955, 2958, 2977, 2988 |
С2 | 2956 | ноябрь 1980 г. | - | |
С1 | 2950 | ноябрь 1977 г. | июнь 1978 г. | 2946 |
Серия P (параллельная)
[ редактировать ]Первыми машинами серии 2900, анонсированными в серии 2900, были 2980 и 2970. 2980 позволял использовать один или два процессора кода заказа (OCP), каждый из которых выполнял до 3 миллионов инструкций в секунду, с реальной памятью, настраиваемой до 8 мегабайт, с памятью 500 наносекундное время доступа.
Первоначально 2980 был самым мощным из мейнфреймов ICL New Range. Помимо OCP, он состоял из контроллера множественного доступа к магазину (SMAC) и одного или нескольких контроллеров доступа к магазину (SAC), общего контроллера периферийных устройств (GPC), одного или нескольких контроллеров дисковых файлов (DFC) и контроллера канала связи. (CLC), а также дисководы (типичная конфигурация включает восемь приводов EDS 200), ленточные деки, операционную станцию (OPER), построчные принтеры и устройства чтения карт. Он может работать под управлением операционной системы ICL VME (VME/B, VME/K) или Эдинбургской системы множественного доступа (EMAS). Типичная конфигурация 2980 будет стоить около 2 миллионов фунтов стерлингов (что эквивалентно 16 миллионам фунтов стерлингов в 2023 году).
В отличие от 2980, 2970 и последующие 2960 имели микрокодирование и, таким образом, позволяли эмулировать наборы команд, такие как наборы более старых серий 1900 или System 4.
Машина серии 2900 состоит из ряда функциональных модулей, каждый из которых находится в отдельном шкафу. Периферийные устройства подключались с помощью примитивного интерфейса ICL (розетка/вилка и набор кабелей) к адаптеру порта на SMAC. Была использована логическая адресация и групповая схема для идентификации компонентов системы с точки зрения портов, транков и потоков.
Транк . представлял собой общее имя и аппаратный адрес внутри порта, которому был назначен периферийный контроллер Trunk — это общее название контроллера для ряда устройств Stream. Поток . был общим именем канала, по которому можно было ссылаться на отдельные периферийные устройства
Отдельного упоминания заслуживает процесс загрузки серии 2960: OCP содержал мини-терминал OPER и кассетную деку. При загрузке OCP будет выполнять начальную загрузку программы (IPL) с назначенного устройства IPL. Код IPL предоставил OCP возможность обнаружить аппаратную конфигурацию системы путем опроса потоков, магистралей и портов, чтобы найти загрузочное устройство по умолчанию или выбранное вручную для набора микрокодов и/или Операционная система, которую необходимо загрузить. Этот процесс назывался GROPE или Общая разведка периферийного оборудования. Метод загрузки кассеты также позволил инженерному персоналу загружать и запускать диагностическое программное обеспечение.
S (серийная) серия
[ редактировать ]Первые машины впоследствии были заменены семейством машин, основанных на конструкции среднего класса 2966 года, которая была менее затратной в изготовлении и использовала последовательные, а не параллельные соединения . Производительность 2966 была увеличена до 2988 и уменьшена до 2958, дополнена двухпроцессорными версиями, чтобы охватить весь диапазон производительности. [2]
См. также
[ редактировать ]- VME — операционная система для серии ICL 2900, не путать с (более поздней) встроенной операционной системой.
- Эдинбургская система множественного доступа - операционная система, отличная от ICL, для серии ICL 2900 (и других машин)
- Хранилище адресуемых файлов по содержимому (CAFS)
- Процессор распределенных массивов ICL (DAP)
Источники
[ редактировать ]- Серия ICL 2900 . Дж. К. Бакл. Серия Macmillan по информатике, 1978. ISBN 0-333-21917-1 .
- Краткое описание системной архитектуры серии ICL 2900 . Дж. Л. Киди. В книге «Компьютерные структуры: принципы и примеры » под редакцией Дэниела П. Севиорека, К. Гордона Белла и Аллена Ньюэлла. Первоначально опубликовано в Австралийском компьютерном журнале , том. 9, нет. 2 июля 1977 г., стр. 53–62. Доступно онлайн
Ссылки
[ редактировать ]- ^ Кэмпбелл-Келли, Мартин (ноябрь 1989 г.). «Исследования и разработки компании ICL. Часть 3: Новый ассортимент и другие разработки» (PDF) . Технический журнал ICL . 6 (4). ICL: 791–795 . Проверено 19 декабря 2021 г.
- ^ Морали, Деннис (ноябрь – декабрь 1981 г.). «Робб Уилмот: История ICL» . Электроника и мощность . 27 (11). дои : 10.1049/эп.1981.0360 . Проверено 18 декабря 2021 г.
Внешние ссылки
[ редактировать ]- Размышления о серии ICL 2900 Исторические анекдоты (Pink Mouse Productions)
- Дж. К. Бакл (ноябрь 1978 г.). «Истоки серии 2900» (PDF) . Технический журнал ICL . 1 (1). ICL. ISSN 0142-1557 . Проверено 7 ноября 2015 г.
- Мартин Кэмпбелл-Келли (ноябрь 1989 г.). «Исследования и разработки компании ICL, часть 3: Новый ассортимент и другие разработки, 1968–85» (PDF) . Технический журнал ICL . 6 (4). ICL. ISSN 0142-1557 . Проверено 7 ноября 2015 г.
- «ICL 2966» . Национальный музей вычислительной техники .
- Галерея больших систем , Национальный музей вычислительной техники в Блетчли-парке (архивная страница с увеличенной фотографией ICL 2966 примерно 1984 года)
- Шкафы на переднем плане, обозначенные номерами 44, 45 и т. д., представляют собой сменные дисководы; пластиковые контейнеры наверху шкафов используются для хранения дисков, если они извлечены из приводов. Емкость больших контейнеров, содержащих больше пластин, составляет 200 МБ, а меньших обычно составляет 40 МБ. Оранжевый цвет шкафов (официально «горелое танго») был доминирующим цветом, использовавшимся в корпоративном имидже ICL на момент выпуска системы.