stringtranslate.com

ИКТ серии 1900

ICT 1900 — семейство мэйнфреймовых компьютеров , выпущенных International Computers and Tabulators (ICT) и позднее International Computers Limited (ICL) в 1960-х и 1970-х годах. Серия 1900 была примечательна тем, что была одним из немногих неамериканских конкурентов IBM System /360 , пользуясь значительным успехом на рынках Европы и Британского Содружества .

Происхождение

В начале 1963 года ICT вела переговоры о покупке компьютерного бизнеса Ferranti . Чтобы подсластить сделку, Ferranti продемонстрировал ICT машину Ferranti-Packard 6000 (FP6000), разработанную его канадским филиалом Ferranti-Packard , по проекту, известному как Harriac, который был инициирован в Ferranti Гарри Джонсоном и доработан Стэнли Гиллом и Джоном Илиффом. [1]

FP6000 был передовой разработкой, в частности, включавшей аппаратную поддержку многопрограммирования . ICT рассматривала возможность использования FP6000 в качестве своего процессора среднего размера в 1965–1968 годах, заменив ICT 1302. Другой рассматриваемый план состоял в том, чтобы лицензировать новую линейку машин, разрабатываемых RCA , вероятно, совместимых с ожидаемой IBM 8000. [2 ]

Первоначальный модельный ряд 1900 не пострадал от многолетнего тщательного планирования IBM 360.
-- Вирджилио Паскуали [3]

7 апреля 1964 года IBM анонсировала серию System/360 — семейство совместимых машин, охватывающих практически весь спектр потребностей клиентов. Сразу стало очевидно, что ИКТ потребуется согласованный ответ. Было доступно два пути: разработать ряд машин на основе FP6000, используя гибкость его конструкции для производства меньших или больших машин, или сотрудничать с RCA, которая перенацеливала свои разработки на совместимый с System/360 ряд, который должен был стать известным как RCA Spectra 70 .

Одним из основных соображений было то, что FP6000 уже работал, в то время как линейка RCA Spectra должна была стать доступной через несколько лет. В конце концов, было принято решение использовать линейку машин на основе FP6000. Центральным элементом новой линейки стал ICT 1904, версия FP6000 со стандартным периферийным интерфейсом ICT. Для машин более высокого класса новый более крупный процессор ICT 1906 должен был быть разработан подразделением ICT West Gorton (ранее частью Ferranti). Чтобы удовлетворить потребности более мелких клиентов, подразделением ICT Stevenage были разработаны более мелкие машины ICT 1901 и ICT 1902/3 на основе процессоров PF182 и PF183, которые уже находились в разработке.

29 сентября 1964 года в видеопрезентации, написанной Энтони Джеем , была анонсирована линейка ICT 1900. На следующей неделе на выставке бизнес-оборудования в Олимпии были продемонстрированы две работающие системы .

Первая коммерческая продажа была сделана в 1964 году компании Morgan Crucible Company , включавшей 16K слов 1902 с 80-колоночным 980-картоприемником в минуту, перфоратором, принтером 600 строк в минуту и ​​4 ленточными накопителями по 20kchar/s [nb 1] . Вскоре он был модернизирован до 32K слов памяти и блока с плавающей точкой, чтобы позволить некоторую научную работу. Та же компания была первой, кто заказал первый компьютер ICT, HEC4 (позже ICT 1201), в 1955 году.

Первая система была поставлена ​​в январе 1965 года для Нортгемптонского колледжа передовых технологий в Лондоне (модель 1904).

Архитектура

ICT 1900 была машиной адресации слов , использующей архитектуру регистр -память с восемью регистрами -аккумуляторами , три из которых могли использоваться как регистры модификатора ( индекса ). Длина слова составляла 24 бита , что могло использоваться как четыре шестибитных символа; были предусмотрены инструкции для копирования отдельных символов в память и из памяти.

Аккумуляторы адресуются так, как если бы они были первыми восемью словами памяти, что дает эффект инструкций регистр-регистр без необходимости в дополнительных кодах операций. Аппаратные регистры были дополнительной функцией, и если они не установлены, аккумуляторы были первыми восемью словами памяти. Большое количество дополнительных функций в конструкции FP6000 дало ICT большую гибкость в ценообразовании.

Примечательной особенностью серии была аппаратная поддержка (во всех процессорах, кроме самых маленьких) для запуска нескольких процессов — каждый процесс работал в независимом адресном пространстве, поддерживаемом регистрами datum и limit . Ни один пользовательский процесс не мог получить доступ к памяти любого другого процесса. Более поздние модели добавили аппаратное обеспечение подкачки страниц , что позволило использовать настоящую виртуальную память с операционной системой GEORGE 4 .

В исходных моделях размер адреса составлял 15 бит, что позволяло хранить до 32К слов памяти. В более поздних моделях была добавлена ​​22-битная адресация, что позволяло хранить до 4М слов памяти. Инструкции содержали 12-битный операнд, фиксированный или смещенный относительно индексного регистра. Инструкции ветвления содержали 15-битное смещение, что позволяло получать доступ ко всей памяти в начальном диапазоне. Когда размер адреса был увеличен до 22 бит, в набор инструкций были добавлены замененные ( косвенные ) и относительные ветвления, чтобы обеспечить доступ к большему адресному пространству.

Самым большим изменением между оригинальной серией FP6000 и серией 1900 стало включение стандартного интерфейса ICT для подключения периферийных устройств. Это позволяло подключать любые периферийные устройства ICT к любому процессору серии, и владельцы могли модернизировать свои процессоры, сохраняя те же периферийные устройства или наоборот.

Все операции ввода-вывода инициировались привилегированным процессом-супервизором, известным как исполнитель . Пользовательские процессы взаимодействовали с исполнительным процессом с помощью дополнительных кодов , инструкций, которые вызывали ловушку в исполнительном процессе. Затем исполнительный процесс взаимодействовал с соответствующим периферийным устройством через стандартный интерфейс, используя функции, недоступные пользовательским процессам. Последующие передачи данных затем происходили через этот интерфейс автономно, без дальнейшего участия программы. Завершение передач (или ошибка, если таковая имеется) аналогичным образом сообщалось исполнительному процессу.

На более мелких членах серии некоторые дорогие инструкции ( например, с плавающей точкой ) также были реализованы как экстракоды. Сочетание исполнительной и аппаратной части обеспечивало одинаковый интерфейс для программ, работающих на любой модели диапазона.

Аппаратный блок с плавающей точкой, если он был установлен, работал автономно. После запуска операции с плавающей точкой целочисленные инструкции могли выполняться параллельно до тех пор, пока не требовался результат операции с плавающей точкой.

Форматы данных

Набор инструкций поддерживал следующие форматы данных:

Наборы символов

Поскольку ICT 1900 использовал шестибитный символ, его набор был в значительной степени ограничен 64 символами, в нем были только заглавные буквы и не было управляющих символов .

Для работы с данными на бумажной ленте или с коммуникационного оборудования можно было использовать систему сдвигов для представления всех 128 символов ASCII . Символ № 74 (т. е. восьмеричное 74) считался альфа- сдвигом и указывал, что последующие символы следует считать заглавными, № 75 был бета- сдвигом и указывал, что последующие символы были в нижнем регистре, а № 76 — дельта -сдвигом, указывающим, что следующий символ является управляющим символом. Таким образом, строка ASCII «Hello World» будет кодироваться как « αHβELLO αWβORLD». Символ № 77 был заполняющим (игнорирующим) символом, похожим на символ rubout в 7-битном мире.

В 1900 году использовался вариант ASCII-63 , известный в ICT как набор символов ECMA , с различиями в пяти кодах символов:

Сравнение с Системой/360

И серия 1900, и IBM System/360 обеспечивали аппаратную поддержку мультипрограммирования. В 1900 все адреса пользовательской памяти изменялись регистром данных (базовым адресом) и проверялись по регистру пределов ( база и границы ), предотвращая вмешательство одной программы в другую. System/360 давала каждому процессу и каждому 2048-байтовому блоку памяти четырехбитный ключ, и если ключ процесса не совпадал с ключом блока памяти, возникало исключение. Система 1900 требовала, чтобы программы занимали непрерывную область памяти, но позволяла процессам перемещаться во время выполнения, упрощая работу операционной системы. 1900 также позволяла любому процессу напрямую обращаться к первым 4096 словам своего адресного пространства. (И 1900, и 360 имели 12-битное поле операнда, но в 360 адреса были физическими , поэтому программа могла напрямую обращаться к первым 4096 байтам физической памяти).

System/360 имела преимущество в виде большего размера слова и символа; ее 32-битные слова были достаточно большими для чисел с плавающей точкой (низкой точности), тогда как 1900 требовалось по крайней мере два слова. Восьмибитный байт System/360 позволял манипулировать строчными символами без сложных последовательностей сдвига 1900. Однако в первые дни меньший размер слова 1900 рассматривался как преимущество в стоимости, поскольку память могла быть на 25% дешевле для того же количества слов.

Диапазон 1900

Начальный диапазон

Первоначальный ассортимент машин был следующим:

Время выполнения инструкции сложения («сложить содержимое ячейки памяти x с регистром y») варьировалось от 2,5 мкс для 1906 или 1907 с ядром памяти 1,1 мкс до 34 мкс для 1901 с ядром памяти 6 мкс.

Все машины, за исключением 1901, управлялись с помощью модифицированного телетайпа Model 33 ASR, который использовался для подачи команд руководителю . 1901 управлялся с помощью консольных переключателей, консоль была доступна в качестве дополнительной опции.

Был доступен ряд периферийных устройств, включая 80-колоночные перфокарты и считыватели, 8-дорожечные перфокарты и считыватели и сплошные цилиндрические линейные принтеры . Данные могли храниться на открытой катушке полудюймовой магнитной ленты или однодюймовых 8-дорожечных магнитных кассетах. Магнитные диски стали доступны в 1966 году. [8]

Серия 1900 E/F

В 1968 году компания ICT представила машины серии E:

Улучшения подсистем памяти этих машин, замена ядра 1,8 мкс на ядро ​​0,75 мкс, были представлены в серии F. [9]

(9 июля 1968 года ICT объединилась с English Electric Computers, образовав ICL. Таким образом, хотя серия E была разработана ICT, многие, если не все, поставлялись с эмблемами ICL).

1900 Серия А

В 1969 году была поставлена ​​серия 1900 A, [10] заменив оставшиеся машины из начальной серии и машины E/F. Первоначальные дискретные германиевые полупроводниковые реализации были заменены интегральными схемами TTL серии 7400 компании Texas Instruments в большинстве серий и интегральными схемами ECL Motorola MECL 10K в новой 1906A (которая была основана на оригинальной 1906, а не на двухпроцессорной 1904 модели 1906E/F). Было предложение построить многопроцессорную версию 1906A, 1908A (известную внутри компании как Project 51), которая позволила бы ICL конкурировать с большими машинами CDC и IBM в университетах и ​​исследовательских центрах, но в конечном итоге от нее отказались в пользу ускорения работы над New Range , которая разрабатывалась для замены как серии 1900, так и ICL System 4. [ 11]

В серии A аппаратный блок обработки вычислений с плавающей запятой стал дополнительной функцией всех машин, вместо того чтобы иметь отдельный номер модели для машин, оснащенных вычислительными устройствами с плавающей запятой.

Режим 22-битной адресации и расширенный режим ветвления, представленные в модели 1906, были распространены на модели 1902A и 1903A, но не на гораздо меньшую модель 1901A.

ICL представила страничный блок для более современных машин (1904A, 1906A) и новую версию операционной системы GEORGE , GEORGE 4, которая была совместима с GEORGE 3, но использовала страничную виртуальную память вместо простой системы данных/пределов более ранних машин.

Серия 1900 S

В апреле 1971 года компания ICL анонсировала серию машин S, заменив основную память более ранних машин на полупроводниковую память в большинстве моделей и очень быструю память на никелевых проводах Плесси для старшей модели 1906S.

1900 серия Т

По мере того, как вводились более крупные модели нового ряда, было решено, что более низкие модели ряда 1900 становятся неконкурентоспособными. Для обновления ряда были выпущены новые модели. В каждом случае модель была просто основана на следующей более высокой модели предыдущего ряда, например, 1903T была основана на 1904S.

1900-совместимые машины

Во время и после производства серии 1900 лицензиатами ICL , а также конкурентами было выпущено множество совместимых (или клонированных ) машин.

2903/2904

В 1969 году IBM представила машину начального уровня System/3 , которая начала сокращать продажи моделей ICL 1901 и 1902. Чтобы вернуть рынок, был начат проект ICL, известный внутри компании как PF73, основанный на разработанной ICL Stevenage микропрограммной машине, известной как MICOS-1, которая появилась на рынке в 1973 году как ICL 2903 и 2904. Несмотря на их нумерацию New Range , эти машины использовали набор инструкций ICL 1900 и запускали программное обеспечение 1900, хотя была доступна микропрограмма, которая предоставляла набор инструкций IBM-360, чтобы они могли запускать программное обеспечение IBM. 2903/2904 были выпущены с компилятором RPG , чтобы лучше конкурировать с System/3 . [13] Это был коммерческий успех, и было продано почти 3000 машин.

МЭ29

ME29, созданный на основе полностью микропрограммируемого центрального процессора Stanford EMMY, выпущенного на рынок компанией Palyn Associates, продавался в качестве замены моделям 2903 и 2904, по-прежнему выполняя код заказа 1900.

Процессор EMMY, эмулирующий код заказа IBM 360, по оценкам, имел скорость, близкую к скорости IBM System/360 Model 50 , что означает, что ME29 был быстрее оригинального ICT 1904, приближаясь к скорости ICT 1906. [14]

IBM370/145

Стремясь увеличить продажи клиентам ICL и извлечь выгоду из трудностей, с которыми сталкивалась ICL при переводе клиентов с серии 1900 на New Range, IBM представила пакет микрокода для 370/145 , позволяющий выполнять программы серии 1900. [15] [16]

Серия Одра 1300

Серия Odra 1300 (Odra 1304, Odra 1305 и Odra 1325) представляла собой ряд совместимых с 1900 машин, выпускавшихся компанией Elwro во Вроцлаве , Польша, в период с 1971 по 1978 год. По соглашению с ICL машины Odra работали под управлением стандартного программного обеспечения ICL (executive E6RM, George 3).

Системы ICL 2900 (новый диапазон)

Второе поколение "S3E" (микрокодированных) версий более крупных систем New Range (таких как 2960/2966 от West Gorton и более поздние 2940/50 от Stevenage) могло запускать код серии 1900 под DME ( Direct Machine Environment ) в качестве эмуляции, а также набор инструкций New Range под более новой VME (Virtual Machine Environment). Позже был разработан микрокод CME (Concurrent Machine Environment) , который позволял DME и VME сосуществовать (и работать) одновременно на одной платформе, аналогично функциональности, предлагаемой сегодня программным обеспечением для виртуализации , таким как VMware .

Операционные системы

Исполнительный

FP6000 работал под управлением Operator Executive , простой операционной системы, которая позволяла оператору с помощью системной консоли загружать программы с магнитной ленты, карт или бумажной ленты, назначать периферийные устройства программам и назначать приоритеты запущенным программам. Executive выполнял все операции ввода-вывода от имени пользовательских программ, позволяя назначать различные периферийные устройства по мере необходимости.

Несмотря на свою простоту, исполнительная система была, для того времени, довольно мощной, выделяя память программам по мере необходимости (а не фиксированным разделам, предоставляемым OS/360 ). Это было возможно, поскольку конструкция FP6000 содержала аппаратные средства для поддержки многопрограммного обеспечения , регистры данных и пределов , которые делали программы адресно независимыми (перемещаемыми) и не позволяли одной программе получать доступ к памяти, выделенной другой.

Для более эффективного использования периферийных устройств, а также для одновременного запуска нескольких программ, Executive допускал ограниченную многопоточность внутри программ (каждая программа могла быть разделена на четыре подпрограммы, совместно использующие одно и то же адресное пространство, которые также работали по времени; пока одна подпрограмма ожидала активности периферийных устройств, другая могла продолжать обработку).

Расширенная версия исполнительной системы FP6000 была предоставлена ​​с ICT 1904/1905, и новые версии были написаны для ICT 1906/7 и ICT 1901/2/3. Важной задачей этих различных версий было скрыть аппаратные различия между различными машинами, обеспечивая эмуляцию отсутствующих инструкций как дополнительных кодов . Концепция заключалась в том, что приложения, а позднее и операционные системы, были написаны для работы на комбинации аппаратной и исполнительной системы, и поэтому могли работать на любом члене серии, независимо от того, насколько отличалось базовое оборудование.

С появлением систем магнитных дисков исполнительная система стала более сложной, используя наложение для уменьшения занимаемой памяти . Исполнительные системы на основе дисков включали функции для упрощения дисковых операций, обработки управления файлами (создание, переименование, удаление, изменение размера) от имени пользовательских программ. Файлы идентифицировались 12-символьными именами, и пользовательской программе не нужно было знать, какой физический диск использовался для файла.

ДЖОРДЖ

В декабре 1964 года ICT создала Отделение операционных систем для разработки новой операционной системы для 1906/7. Отделение изначально было укомплектовано людьми, уволенными к концу работы над операционной системой OMP для Ferranti Orion . Первоначальный проект новой системы, названной George отчасти в честь Джорджа Э. Фелтона , [nb 2] главы Отдела базового программирования, был основан на идеях Orion и системы подкачки компьютера Atlas . [17] Первоначальная версия, George 1 (для машин ICT 1901, 1902 и 1903), была простой системой пакетной обработки . Описания заданий считывались с карточек или бумажной ленты , периферийные устройства и файлы магнитной ленты динамически назначались заданию, которое затем запускалось, производя вывод на строчном принтере.

Джордж 2 добавил концепцию спулинга . Задания и входные данные считывались с карточек или бумажной ленты во входной колодец на диске или ленте. Затем задания запускались, записывая выходные данные на диск или файлы спулинга ленты, которые затем записывались на выходные периферийные устройства. Этапы ввода/обработки/вывода работали параллельно, что увеличивало использование машины. На более крупных машинах можно было запускать несколько заданий одновременно.

George 1 и 2 работали как простые программы под управлением исполнительной системы (с доверенным статусом, который позволял им контролировать пользовательские программы). George 3 была полноценной операционной системой сама по себе, она использовала значительно сокращенную исполнительную систему, отвечающую только за обработку низкоуровневого доступа к оборудованию. George 3 реализовал как пакетную обработку, так и множественное онлайн-программирование (MOP) — интерактивное использование с терминалов.

George 4 появился вместе с появлением оборудования подкачки страниц на более поздних машинах и реализовал подкачку виртуальной памяти вместо простого обмена, используемого в George 3.

Минимоп и Максимоп

Языки программирования

Первоначально ICT предоставила язык ассемблера PLAN (язык программирования Nineteen century) , а затем «большую тройку» языков высокого уровня: ALGOL 60 , COBOL и FORTRAN 66 .

Компиляторы выпускались в различных версиях, все более сложных. Первоначально для ввода и вывода использовались бумажная лента и карты; позже магнитная лента и, наконец, файлы на дисках. Первые версии компиляторов работали в очень ограниченном пространстве, начиная с 4К слов для PLAN и NICOL и всего с 16К слов для FORTRAN и ALGOL. Более поздние версии для операционных систем George 3 и 4 расширялись до размеров до 48К слов.

Другие доступные языки:

Прикладное программное обеспечение

Как и многие современные машины, многие прикладные программы были связаны с базовой системой, включая компиляторы и утилиты. Другое программное обеспечение было доступно в качестве платных опций от ICT или других источников, включая такие экзотические пакеты, как Storm Sewer Design and Analysis .

Ссылки

Примечания

  1. ^ 20800 шестибитных символов в секунду.
  2. ^ В «Another ICL Anthology» Джордж Фелтон объясняет происхождение названия следующим образом:
    «Примерно в январе 1965 года в моем офисе состоялась встреча, пока я был за границей, на которой обсуждались различные способы распределения функций между предлагаемой операционной системой и Executive. Схема A была обсуждена и отвергнута. Схема B — то же самое. Схемы C, D, E и F также были быстро отвергнуты одна за другой. Когда появилась схема G, все были довольны, и было решено ее принять. « GE neral ORG anisational Environment » также быстро было сформулировано как официальное расширение аббревиатуры. Но название «GEORGE» в любом случае было естественным выбором: оно напоминало автопилоты самолетов ; это было немного забавно; и я, конечно, не собирался возражать».

Цитаты

  1. ^ МакГрегор-Росс, Хью (2012). Pegasus: The Seminal Early Computer . Bright Pen. ISBN 978-0-7552-1482-2.
  2. ^ Кэмпбелл-Келли, Мартин (1989). ICL: История бизнеса и техники . Oxford University Press. ISBN 0-19-853918-5.
  3. ^ Кармайкл, Хэмиш (ноябрь 1998 г.). Другая антология ICL (PDF) . Лейдлоу Хикс. ISBN 978-0-9527389-2-3. Получено 18 октября 2013 г.
  4. ^ "ICT 1900 Series Central Processors 1902, 1903" (PDF) . Пресс-релиз ICT . ICT. 1 сентября 1964 г. стр. 3 . Получено 11 февраля 2011 г. .
  5. ^ "ICT 1900 Series Central Processors 1904, 1905" (PDF) . Пресс-релиз ICT . ICT. 1 сентября 1964 г. стр. 4 . Получено 11 февраля 2011 г. .
  6. ^ "ICT 1900 Series Central Processors 1906, 1907" (PDF) . Пресс-релиз ICT . ICT. 1 сентября 1964 г. стр. 4 . Получено 11 февраля 2011 г. .
  7. ^ "ICT 1900 Series Central Processor 1909" (PDF) . Пресс-релиз ICT . ICT. 1 сентября 1964 г. стр. 4 . Получено 11 февраля 2011 г. .
  8. ^ Кэмбелл-Келли, стр. 238
  9. ^ Проктор, Брайан; Кит Крук; Вирджилио Паскуали. «Аппаратные технологии в диапазоне ICT/ICL 1900». Вирджилио Паскуали . Получено 11 февраля 2011 г.
  10. ^ Паскуали, Вирджилио. "Как развивалась серия ICT 1900" . Получено 11 февраля 2011 г.
  11. ^ "Замена ATLAS". Atlas Computer Laboratory . Получено 11 февраля 2011 г.
  12. ^ "Экваториальная орбита определена: история компьютерной анимации "Чужого"". Архивировано из оригинала 23 августа 2022 г.
  13. ^ Кэмпбелл-Келли, стр. 304
  14. ^ Hoevel, Lee W.; Wallach, Walter A. Jr. (ноябрь 1975 г.). "СКАЗКА О ТРЕХ ЭМУЛЯТОРАХ". Технический отчет Стэнфордской лаборатории электроники (Технический отчет № 98). Архивировано из оригинала (PDF) 28 июня 2011 г. Получено 11 февраля 2011 г.
  15. ^ Кэмбелл-Келли, стр. 326
  16. ^ «Поддельные компьютеры лучше оригиналов». New Scientist . 22 июня 1972 г. стр. 690. Получено 13 февраля 2011 г.
  17. ^ Goodman, HP (1 января 2004 г.). "Операционные системы George для серии компьютеров ICL 1900". Архивировано из оригинала 28 июня 2011 г. Получено 15 февраля 2011 г.

Внешние ссылки