Зачем вообще потребовалась «Единая Серия»? Главным недостатком всех советских компьютерных разработок «до ЕС» было отсутствие даже признаков какой-либо стандартизации. Они были абсолютно несовместимы между собой не только на уровне железа (это еще полбеды!), но и на уровне матобеспечения.
В «Минск-32» байт (символ) был семибитный, в БЭСМ-6 – шестибитный, в «Мире» В.К. Глушкова символ также кодировался шестью битами, а в «Уралах» длина слова (без знака) могла быть переменной – любой от 1 до 48 бит. Причем до поры программы писались почти исключительно на низком уровне: первый высокоуровневый транслятор с языка «Алгол» создал Святослав Сергеевич Лавров из ИТМиВТ для машины М-20 в 1962 году. И еще долго в рабочей практике такие инструменты были не в ходу, а специалистов по ним были единицы.
Евгений Михайлович Беркович, бывший тогда студентом физфака МГУ (а ныне – сотрудник немецкого НИИ финансовой математики и банковских технологий, а также известный публицист), вспоминает: «Сейчас многие просто не представляют, как мы программировали не только без всяких языков программирования высокого уровня, но и без ассемблера. Только машинные коды».
В этой обстановке ни о каком переносе ПО и даже обмене библиотеками речи не шло. Не лучше обстояло дело и с электрическими интерфейсами для периферии: их проектировали по принципу «каждый для себя», и подключить печатающее устройство или внешний накопитель от «Урала», скажем, к БЭСМ не представлялось возможным.
КУРС НА ЗАПАД
Это безобразие, конечно, надо было устранять: как минимум стандартизировать интерфейсы, чтобы не дублировать разработки и расширить производство. А в идеале неплохо было бы и сделать периферию совместимой с зарубежными образцами. В условиях, когда существовало множество разных коллективов, некоему координирующему органу следовало бы взять на себя функции посредника по выработке стандартов совместимости повторяющихся узлов и разработки протоколов взаимодействия различных систем.
Лучше других, видимо, понимал все это Башир Искандарович Рамеев (один из двух обладателей, совместно с И. С. Бруком, первого советского патента на вычислительную машину, 1948). Он и попытался ввести унификацию устройств и ПО в разрабатываемой им в Пензе серии «Урал», начиная с «Урала-11».
Об «Уралах», между прочим, ностальгически-восторженно отзывался знаменитый Чарльз Саймони (разработчик концепции WYSIWYG и MS Office), которому в его венгерской юности пришлось иметь дело с «Уралом-2». В письме к автору этих строк в середине 2000-х Саймони утверждал, что до сих пор помнит всю систему команд наизусть. Одной из особенностей «Уралов» была их ориентация на работу в составе сети и многомашинных комплексов – тогда, когда IBM еще ни о чем таком не помышляла.
Но одних «Уралов» – небольших машин производственного назначения, – конечно, было недостаточно. Так возникла идея «Ряда», трансформировавшегося потом в «Единую Серию».
Идею комплекса совместимых машин «со стороны начальства» продвигал Михаил Кириллович Сулим. До 1959 года он был конструктором ЭВМ, соратником Рамеева и Лебедева, принимал участие в разработке знаменитой М-20, и был главным конструктором М-220. В описываемое время он работал начальником главка Минрадиопрома, а с весны 1968-го – заместителем министра радиопромышленности.
Как пишет академик В. К. Левин (сам принимавший непосредственное участие во всей этой истории), Сулиму, несомненно, принадлежит основная формулировка задания на разработку «Ряда», вошедшая в народнохозяйственный план на 1966 год: «разработка комплекса типовых высоконадежных информационных вычислительных машин с диапазоном по производительности от 10 тыс. до 1 млн. операций в секунду, построенных на единой структурной и микроэлектронной технологической базе и совместимых системах программирования».
ЕВРОПА ИЛИ США?
Далее – некоторые ключевые события, по необходимости в телеграфном стиле:
30 декабря 1967 года – постановление ЦК КПСС и Совета Министров СССР № 1180-420 о развитии производства средств вычислительной техники в стране (грандиозная программа, не полностью осуществленная). Вопреки распространенному мнению, это постановление само по себе ничего о копировании западной техники не говорило.
18 марта 1968 года – приказ министра радиопромышленности В. Д. Калмыкова № 138 о создании НИЦЭВТ. В конце 1968-го в состав НИЦЭВТ вошел НИЭМ (бывшее СКБ-245, известное одной из первых отечественных ЭВМ «Стрела»).
14 ноября 1968 г. директор НИЭМ С. А. Крутовских приказом министра был назначен директором НИЦЭВТ и генеральным конструктором ЕС ЭВМ (уже «Единой Серии» – авторство термина, говорят, принадлежит Сулиму).
Рамеев, вдохновленный перспективами, принял предложение перейти с Пензенского завода, где руководил созданием «Уралов», в заместители Крутовских по разработке ЕС. Другим заместителем – по научной работе – был упомянутый Левин. У двух заместителей взгляды на то, что именно должно послужить основой ЕС, расходились: Рамеев (как и Сулим) ориентировался на Западную Европу, а Левин, как и его начальник Крутовских, – на IBM/360.
КАК IBM ПОБЕДИЛА
Я не буду многословно пересказывать течение событий, о нем с разных точек зрения рассказано достаточно: например, в воспоминаниях Левина и в книге Б. Н. Малиновского (в главах «Несбывшиеся надежды» и «Крестный отец компьютерной промышленности»). Далее я хочу лишь выделить главные моменты и мнения.
В декабре 1969 года состоялось представительное совещание у министра радиопромышленности СССР Калмыкова, где присутствовали все ключевые фигуры из разработчиков ЭВМ и организаторов их производства (из ныне известных не было разве что В. М. Глушкова). Сулим, С. А. Лебедев (конструктор БЭСМ и директор ИТМиВТ), академик А. А. Дородницын и зампред Госплана М. Е. Раковский выступили против копирования IBM/360. Причем никогда и никого не боявшийся Лебедев прямо так и начал: «Система IBM/360 – это ряд десятилетней давности...»
«За» были «производственники», имевшие уже крупный задел по копированию – Крутовских, Левин, и, к большому сожалению, ответственный за матобеспечение ЕС Михаил Романович Шура-Бура. Характерно, что министр Калмыков и президент АН СССР М.В. Келдыш еще колебались.
Но верх одержали напористые сторонники копирования: через пару месяцев коллегия Минрадиопрома приняла окончательное решение. Сулим, бывший фактически инициатором всей истории, подал в отставку прямо на коллегии, а Рамеев уволился из заместителей Крутовских и больше никогда конструированием ЭВМ не занимался.
Рассказывал старший товарищ...
Считали в своё время одну и ту же программку на ЕС (ИБМ:-) и БЭСМ-6.
На ИБМ фигня какая-то получалась, а на БЭСМ - всё зашибись!
Оказалось, проблема в накоплении ошибки округления на ИБМ.
А на БЭСМ-6 мудрые разработчики это предусмотрели и сделали округление в случайную сторону, и ошибка не накапливалась.