Рождение и смерть советских компьютеров. 60 лет назад, весной 1949 года, чертежи самого первого советского компьютера МЭСМ стали облекаться в железо. Спустя полтора года, в январе 1951-го, правительственная комиссия подписала акт о приемке этой машины. Так с кибернетики было снято клеймо «продажной девки империализма». Опоздали: западные конкуренты быстро уходили вперед, а «железный занавес» обрек советские разработки на забвение. Что было, что могло быть — разбирался The New Times
Принцип устройства компьютера общего назначения практически не изменился с 1946 года, когда американец Джон фон Нейман¹ опубликовал статью, в которой описал дизайн электронной машины. В историю это вошло как «архитектура фон Неймана». Статья основывалась на реальном компьютере ENIAC и EDVAC, архитектура которого была разработана в Университете Пенсильвании Преспером Экертом и Джоном Мочли в 1943–1947 годах. Одной из причин, почему «архитектура фон Неймана» не была названа именами его разработчиков, заключалась в том, что проект ENIAC/EDVAC финансировался армией США и был засекречен.
Дао компьютера
Машина фон Неймана была электронным устройством, последовательно исполнявшим простые команды, которые оно считывало из памяти. Такой командой могло быть сложение двух чисел, требование переслать число из одной ячейки памяти в другую или выбрать, какие команды выполнять дальше. Собственно, с тех пор мало что изменилось: все программное обеспечение, например, Windows — это просто очень длинная последовательность таких команд. Огромные шкафы с радиолампами 50-х или миниатюрный процессор в сотовом телефоне XXI века — это по большому счету одно и то же устройство — машина фон Неймана, только современные версии этого устройства в миллиарды раз быстрее своих праотцов.
Борьба за скорость
За счет чего достигается большая скорость? Процессор построен из большого количества «кирпичиков» — логических элементов, которые сначала представляли собой электромеханические реле, потом — электронные лампы, затем (уже в 50-х) — полупроводниковые транзисторы в корпусе на трех ножках, а начиная с середины 60-х — интегральные схемы с большим количеством транзисторов на одном кристалле кремния. С каждым раундом уменьшения «кирпичиков» их быстродействие, соответственно, увеличивалось.
Кроме ускорения работы компьютерные дизайнеры постоянно изобретали трюки, позволяющие сложить «кирпичики» так, чтобы выполнить несколько операций одновременно. Сначала изобрели так называемые конвейерные процессоры, в которых обработка каждой команды делилась на более простые операции и работа над новой командой начиналась, когда старая еще не закончилась, подобно заводскому конвейеру при сборке автомобиля. Потом изобрели «суперскалярные процессоры», в которых несколько команд, например сложения или сравнения чисел, извлекались из памяти одновременно и обрабатывались параллельно. Наконец, для задач типа расчета ядерных взрывов или прогноза погоды придумали векторные процессоры, которые умели одной командой оперировать сотнями чисел.
Пионеры и герои
«Отцом» первого советского компьютера стал Сергей Алексеевич Лебедев из киевского Института электротехники — к тому времени он уже был академиком АН УССР. В 1947 году он набрал в свою лабораторию группу недавних выпускников киевского политеха и к весне 1949-го построил «небольшой» компьютер размером 60 квадратных метров, который он назвал «Макет электронно-счетной машины» (МЭСМ).² МЭСМ строился в здании бывшего монастыря в пригороде Киева. Самой большой проблемой была нехватка радиоламп — их требовалось около 6000, и большинство ламп приходили бракованными. Тем не менее в 1951 году компьютер начал работать: выполнял задачи по расчету баллистики ракет. Несмотря на то что скорость компьютера была всего 50 операций в секунду, он стал одним из самых мощных компьютеров в Европе (быстрее были только в Великобритании).
После успеха МЭСМ Лебедев переехал в Москву и вскоре стал директором Института точной механики и вычислительной техники.³ Здесь было создано несколько машин, наиболее известной из которых стала БЭСМ-6, выпущенная в 1968 году. БЭСМ-6 использовала принцип конвейерного процессора и могла совершать до 1 млн операций в секунду. Однако в США к тому времени уже были машины, способные делать 3 млн операций в секунду, а в 1969 году появился компьютер CDC 7600 компании Control Data Corporation, уже работавший со скоростью 10 млн операций в секунду.
И советская, и американские машины попрежнему были огромными по размеру, каждая представляла собой кучу шкафов, но уже в 60-е годы стали появляться и миникомпьютеры — размером со стол.
Лебедев конструировал и сугубо военные ЭВМ — для первой, еще экспериментальной системы противоракетной обороны (ПРО). «Все было бы ничего, если бы не КГБ, — вспоминал позже академик Бурцев.4 — На БЭСМ начали считать задачи особой важности (в частности, для нужд атомщиков). Нам дали допуск, а сотрудники КГБ очень дотошно расспрашивали, как из машины можно извлечь и унести информацию особой важности, которую на ней предполагали обрабатывать. Вопрос для нас оказался слишком сложным, так как мы понимали, что каждый грамотный инженер может извлечь эту информацию отовсюду, а им хотелось, чтобы это было одно место. В результате совместных усилий определили, что этим местом является магнитный барабан. Соорудили колпак из плексигласа на барабан с местом для его опечатывания. Охрана регулярно фиксировала наличие печати с занесением этого факта в журнал.
Инцидент с КГБ не заставил себя ждать. Одним из первых математиков, работавших на БЭСМ, был член-корреспондент АН СССР Алексей Андреевич Ляпунов. Однажды Ляпунов пришел пораньше, и мы начали работать. Машина работала хорошо, и мы увлеклись, получив какой-то, как сказал Ляпунов, гениальный результат.
— А что делать дальше с этим гениальным результатом? Он же в оперативной памяти на ртутных трубках циркулирует, — спрашиваю Ляпунова.
— Ну так запишем на барабан.
— Какой барабан? Он же КГБ опечатан!
На что Ляпунов ответил:
— Мой результат в сто раз важнее всего, что там записано и опечатано!
Времени размышлять у меня не было, и я записал его результат на барабан, стерев большой пул информации, записанный атомщиками. Утром сотрудники, считавшие атомный взрыв, пришли на работу и ахнули…»
Нашествие клонов
В 60-х годах советские инженеры создали несколько линий компьютеров в Москве, Киеве, Минске, Ереване и Пензе. Все эти машины были несовместимы друг с другом, и для каждой из них приходилось писать все программы заново. Поэтому в 1967 году советское правительство приняло решение скопировать лучшие образцы западных компьютеров, чтобы потом заимствовать для них программное обеспечение на Западе. Хотя экспорт технологий из США в СССР был ограничен, КГБ получало западные дизайны с помощью советских шпионов в IBM,5а также организовывало подставные компании для покупки западных компьютеров через страны третьего мира и дружественные компартии.6 В результате образовались два семейства советских компьютеров — «большие» ЕС ЭВМ, скопированные с IBM/360, и «малые» СМ ЭВМ, скопированные с мини-компьютеров Hewlett-Packard и Digital Equipment.
У советских программистов появились вполне работоспособные и совместимые по программному обеспечению друг с другом машины. Правда, отстававшие от своих американских предшественников на 6–8 лет.
Лебедев смог отстоять право на собственные разработки и незадолго до своей смерти в 1974 году инициировал проект суперкомпьютера «Эльбрус» с суперскалярной архитектурой — как раз для решения задач противоракетной обороны.
К сожалению, многие элементы «Эльбруса» уже были в передовых западных компьютерах от CDC и Burroughs, а сам компьютер не получил широкого распространения, хотя и использовался, например, в космическом Центре управления полетами. Кроме того, «Эльбрус» не был самым быстрым компьютером своего времени — его превосходил американский векторный суперкомпьютер Cray-1, выпущенный в 1976 году. Советское правительство решило скопировать Cray-1 под маркой «Электроника» СС БИС.
Этот проект (автор участвовал в нем) был неудачей эпических масштабов — компьютер заработал только спустя 13 лет после своего заокеанского брата. До 1991 года было выпущено 4 экземпляра машины, которые оказались не нужными абсолютно никому.
Микропроцессорная революция
В 1970 году японской компании Busicom понадобился процессор для своего калькулятора, и она заказала дизайн у молодой американской компании Intel. В результате был создан первый в истории микропроцессор — 4-битный Intel 4004. В 1974 году появился 8-битный Intel 8080, а потом целая куча микропроцессоров от Motorola, Texas Instruments и других компаний. В результате в конце 70-х на жителей Запада хлынула волна «персоналок». В ответ на это советское правительство накупило в Японии оборудования, и советские инженеры с задержкой в 5 лет скопировали сначала Intel 8080, а потом более мощный Intel 8086, на котором уже можно было строить аналоги набирающего популярность IBM PC.
Но в середине 80-х советская система надорвалась, скопировать Intel 386 оказалось невозможно из-за устаревшего оборудования, которое не позволяло выпускать процессоры с такими же маленькими транзисторами на кристалле микросхемы, как у американцев и японцев. Одновременно в СССР начался массовый импорт «персоналок» с Запада и из Восточной Азии. На советских компьютерах был поставлен крест — о них просто все забыли.
_______________
1 Американский математик венгерского происхождения, участник Манхэттенского атомного проекта.
2 Позже его переименовали в Малую электронно-счетную машину.
3 Ныне ИТМиВТ РАН — Институт точной механики и вычислительной техники имени С.А. Лебедева Российской академии наук.
4 В.С. Бурцев (1927– 2005) — российский ученый в области ЭВМ, академик РАН. В 1995–1998 — директор Института высокопроизводительных вычислительных систем РАН. Лауреат Ленинской премии (1966). Руководил созданием в России суперкомпьютеров и вычислительных комплексов для систем управления реального времени.
5 См.: The Sword and the Shield: The Mitrokhin Archive and the Secret History of the KGB by Christopher Andrew and Vasili Mitrokhin, 2000.
6 См.: The Inside Story of Its Foreign Operations from Lenin to Gorbachev by Christopher Andrew and Oleg Gordievsky, 1992.