ЕС ЭВМ (Единая система электронных вычислительных машин) — советская серия компьютеров, аналоги серий System/360 и System/370 фирмы IBM, выпускавшихся в США с 1964 года. Программно и аппаратно (только на уровне интерфейса внешних устройств) совместимы со своими американскими прообразами. Активно эксплуатировались в СССР и странах СЭВ с 1971 по 1990 годы, после чего стали выходить из эксплуатации и примерно к 2000-м годам практически исчезли. Решение о клонировании американских ЭВМ вместо интенсификации собственных разработок вызвало трения в тогдашнем руководстве советской компьютерной отраслью.
Предпосылки возникновения серии В середине 1960-х годов в СССР в области вычислительной техники выявился ряд проблем, а именно: общее количество ЭВМ было явно недостаточным; производились десятки различных несовместимых друг с другом моделей ЭВМ, что затрудняло решение крупных вычислительных и организационных задач; для осуществления проектов АСУ (автоматизированных систем управления) была крайне желательна унификация компьютерных средств; ориентация советских ЭВМ того времени исключительно на численные расчёты и отчасти на управление оборудованием, а также ориентация вычислительной техники на специалистов в области математики и физики; значительным было отставание в области системного программирования: в то время в СССР всё ещё нормой были работа без операционной системы и программирование непосредственно в машинных кодах (даже без ассемблера); бедность периферийного оборудования.
Назревала необходимость «большого скачка» — перехода к массовому производству унифицированных ЭВМ, оснащённых большим количеством стандартизированного программного обеспечения и периферийного оборудования. Для решения этой задачи в 1966 году в народнохозяйственном плане появилось задание Министерства радиопромышленности разработать аванпроект по опытно-конструкторской работе (ОКР) «Ряд», сформулированное начальником Главного управления по вычислительной технике МРП Михаилом Сулимом.
Первоначально разработка аванпроекта была поручена Институту точной механики и вычислительной техники (ИТМиВТ). Отчёт, представленный институтом в середине 1966 года, не удовлетворил министерство, поскольку показал отсутствие интереса авторов отчёта к созданию такого ряда машин в СССР. В результате Министерство радиопромышленности приказом от 22 февраля 1967 года поручило руководство разработкой аванпроекта конструкторскому бюро промышленной автоматики (КБПА), проявившему гораздо больший интерес. КБПА в 1978 году было преобразовано в НИИ «Квант».
С вопросами по составу и характеристикам периферийного оборудования было всё более-менее ясно: материалы по этим вопросам, представленные НИИСчётМаш ещё для отчёта ИТМ, практически не вызвали дискуссий. Наибольшие споры вызвали принципы организации будущего «ряда»: логическая структура процессоров, система команд, принципы связи с внешними устройствами — то, что позднее стали называть «архитектурой ЭВМ».
В целом результаты дискуссии сводились к тому, что целесообразно взять за основу архитектуру широко распространённой на Западе системы System/360: Архитектура ЭВМ в то время не подлежала патентованию, патентовалось лишь её конкретное исполнение, которое — по причине действовавшего эмбарго на экспорт вычислительной техники — предполагалось создать самостоятельно. Большинство элементов этой архитектуры было уже известно советским разработчикам. Данную архитектуру приняли и успешно разрабатывали независимо уже несколько ведущих зарубежных фирм — RCA (США), ICL (Англия) и Siemens (ФРГ), и даже ROBOTRON в ГДР. Согласно исследованиям ИПМ АН СССР, программы, составленные для IBM/360, требовали в 1,5—2 раза меньше памяти, чем аналогичные для ЭВМ БЭСМ-6, «Весна», М-20. В серии System/360 был впервые реализован ряд уникальных для того времени перспективных решений: универсальная архитектура, ориентированная как на расчёты, так и на обработку данных; линейка совместимых моделей ЭВМ различной производительности; байтовая адресация памяти, микрокод. Кроме того, System/360 была одной из первых систем с виртуальной памятью (в отдельных моделях System/360, а позже во всех моделях System/370) и первой системой (не считая исследовательских прототипов), в которой была реализована концепция виртуальных машин.
Главный вопрос для сторонников клонирования, фактически, был в том, возможно ли скопировать аппаратную часть системы без полной технической документации, или же её целесообразнее реализовать заново «с нуля», одновременно дополнив и улучшив.
В качестве альтернативных вариантов рассматривалось сотрудничество на равноправных условиях с какой-либо из западноевропейских фирм. Академик А. А. Дородницын, сторонник этого варианта, в качестве партнёра рассматривал английскую фирму ICL.
Руководство IBM, которое он же принимал в стенах ВЦ РАН, от подобного сотрудничества отказалось.
Архитектура и система команд Основными кодировками для ЕС ЭВМ являются ДКОИ, разработанная на основе EBCDIC и используемая для внутреннего представления информации, и КОИ-8, применяемая для обмена информацией с ЭВМ других серий. В системе набора команд ЕС ЭВМ имелись 144 различные команды (инструкции), позволявшие решать все задачи научно-технического и экономического характера.
Архитектура для программиста представляла собой ЭВМ с одно-, двух- и трёхадресными командами шести форматов длиной от 2 до 6 байт, шестнадцатью 32-разрядными регистрами общего назначения (РОН) и четырьмя 64-разрядными регистрами для операций с плавающей запятой. Также имелся 64-битный регистр , содержащий счётчик команд, признак результата и другую системную информацию. Ввод-вывод осуществлялся каналами, представляющими собой узкоспециализированные процессоры, выполняющие собственные цепочки команд. Предусматривались байт-мультиплексные, блок-мультиплексные и селекторные каналы. Мультиплексные каналы поддерживают одновременную работу с несколькими периферийными устройствами в рамках одного сеанса (цепочки команд), селекторные — работают только с одним периферийным устройством за сеанс. В поздних моделях семейства ЕС, как правило, использовались только мультиплексные каналы как более гибкие в работе.
На аппаратном уровне каналов поддерживались довольно сложные операции: например, поиск в индексно-последовательном файле.
Физическая реализация зависела от модели. Так, в младшей модели (ЕС-1020) РОН организовывались в оперативной памяти.
В то же время в серию из «политических» соображений было включено несколько моделей совершенно другой архитектуры, например, серия ЕС-1010 (1012, 1011), выпускавшаяся в ВНР, и ЕС-1021 (Чехословакия).
Развитие серии Разработкой ЕС ЭВМ занимался Научно-исследовательский центр электронной вычислительной техники (НИЦЭВТ). Значительная часть работы НИЦЭВТа состояла в клонировании оригинального программного обеспечения System/360, множество сотрудников было занято исследованием дизассемблированного машинного кода оригинального компьютера и его адаптацией.
К счастью, фирма IBM поставляла значительную часть ОС в виде исходных текстов, что дало возможность доработать систему, устранить многие ошибки в коде системы и ввести дополнительные возможности. Поздняя система ОС ЕС 6.1.9 была уже гораздо стабильнее оригинала OS/360 21.8 (последней системы линии).
Новая советская ОС ЕС 7 уже не имела прямого IBM-овского аналога, представляя собой увязанные в единый пакет Систему виртуальных машин (СВМ, аналог VM) и Базовую операционную систему (БОС, не имевшую IBM-овского аналога и представлявшую собой развитие ОС ЕС версии 6).
В ЕС ЭВМ скопирована была только архитектура системы, аппаратная же реализация была создана заново. На надёжность и эксплуатационные характеристики этой серии отрицательно влияло низкое качество советских компонентов.
Модели, технические характеристики и конфигурации Первые компьютеры появились в 1971 году. Выпускались, в частности, на заводах в Казани (Казанский завод ЭВМ), Минске и Пензе. Последние машины были выпущены в 1998 году (ЕС-1220). Всего было выпущено свыше 15 тыс. машин ЕС ЭВМ.
Компьютеры серии ЕС ЭВМ условно относили, в соответствии с их архитектурой, к т. н. «Ряду 1», «Ряду 2», «Ряду 3», «Ряду 4».
К «Ряду 1» (аналог серии System/360) принадлежали модели ЕС-1010, ЕС-1020, ЕС-1021, ЕС-1030, ЕС-1040, ЕС-1050, и основанные на них усовершенствованные модели: ЕС-1010М, ЕС-1011, ЕС-1012, ЕС-1022, ЕС-1032, ЕС-1033, ЕС-1052.
К «Ряду 2» (аналог серии System/370) принадлежали модели ЕС-1015, ЕС-1025, ЕС-1035, ЕС-1045, ЕС-1055, ЕС-1060, ЕС-1061, ЕС-1065.
К «Ряду 3» принадлежали модели ЕС-1036, ЕС-1046, ЕС-1057 (ГДР), ЕС-1066, ЕС-1068.
Разработанные и выпускавшиеся в Венгерской Народной Республике модели ЕС-1010, ЕС-1011, ЕС-1012 и ЕС-1015 номинально относились к Ряду 1 и Ряду 2, соответственно, но имели архитектуру французских мини-ЭВМ .
В сериях устройств Ряд 3 и особенно Ряд 4 был запланирован и частично реализован ряд технических усовершенствований, не имевших аналогов в машинах IBM. Реализовывались специализированные вычислительные блоки, такие как векторные и матричные процессоры, процессоры, работавшие на иных физических принципах (например, оптический) и так далее.
Практически все эти разработки были остановлены в 1990-х годах после распада СССР.
Последние машины серии ЕС выпускались уже под лицензией и с использованием оборудования IBM.
Аппаратная основа всех компьютеров — платы с микросхемами размером 140×150 мм (так называемые ТЭЗ — типовые элементы замены, или «радиоэлектронные модули 1-го уровня»). Конструктивно компьютеры представляли собой большие стойки («шкафы», или «радиоэлектронные модули 3-го уровня») примерно в рост человека (1200×750×1600 мм для ЕС-1030 и 1200×860×1600 мм для ЕС-1046) и соответствующие им по размерам периферийные устройства — принтеры, накопители на магнитных лентах, накопители на магнитных дисках.
Имели чёткое разделение функциональных блоков: стойка процессора, стойка (или стойки) с оперативной памятью, и так далее.
Для обозначения блоков и периферийных устройств, от процессора и памяти до периферии, была установлена специальная числовая классификация. Коды устройств: 20XX — процессор; 32XX — оперативная память; 4XXX — мультиплексный или селекторные каналы; 5XXX — устройства управления накопителями и сами накопители на магнитной основе (НМЛ и НМД); 6XXX — устройства ввода информации (с ПК — перфокарт, ПЛ — перфолент); 7XXX — устройства вывода информации (например, дисплей модель 7927), 8ХХХ — устройства телеобработки данных (например, мультиплексор передачи данных ЕС-8400) и т. д.
Для установки и размещения всех блоков компьютера требовалось отдельное помещение (или даже несколько помещений) площадью не меньше 25—30 м², со специальным фальшполом (для прокладки под ним всех соединительных кабелей), и с системами вентиляции и охлаждения.
Машины, произведённые по требованиям военприёмки, были способны выдерживать ударные нагрузки до 15 g по трём осям. ЭВМ ЕС-1033 и ЕС-1045 устанавливались на кораблях серии КИК и выдерживали качку до 10 градусов.
Технические характеристики вкратце описывались быстродействием процессора (от десятков тысяч до миллионов операций в секунду по смеси Гибсона), а также объёмом оперативной памяти — ориентировочные значения от 64 КБ на самых первых и младших моделях до 16 МБ у последних по времени выпуска старших моделях.
Периферийные устройства были взаимозаменяемы, но процессоры, память и т. п. — нет.
Характеристики некоторых моделей ЕС ЭВМЭлектронных вычислительных машин единая система БСЭ: Модель Начало выпуска Производительность, операций в секунду Ёмкость ОЗУ, КБ Цикл ОЗУ, мкс Суммарная пропускная способность каналов, МБ/сек Ряд 1 ЕС-1010 1971 2,75×103 8—64 1 ЕС-1012 ЕС-1020 1972 2×104 64—256 2 1,68 ЕС-1021 1972 4×104 16—64 2 ЕС-1022 1975 4×104 128—512 2 ЕС-1030 1973 6×104 256—512 1,5 2 ЕС-1032 1974 2×105 128—1024 1,2 ЕС-1033 1976 2×105 512—1024 1,25 2,2 ЕС-1040 1971 3,5×105 128—1024 1,25 ЕС-1050 1973 5×105 256—1024 1,25 4 ЕС-1052 1978 7×105 1024—8192 5,2 Ряд 2