Анатолий Слюсарь начинал карьеру, работая на ЭВМ ЕС-1022 в вычислительном центре Ленинградского обкома КПСС (Ленинградское отделение НИИ Автоматической аппаратуры, в дальнейшем — ЛФ НИИ «Восход»). В интервью он вспоминает, как работали программисты 1980–1990-х и дает оценку единой серии. По словам Анатолия Владимировича, именно на этих машинах выросло первое массовое поколение российских программистов и был приобретен успешный опыт локализации зарубежного ПО.
— Математикой я увлекся еще в школьные годы. В 38-й физико-математической школе, делившей с «тридцаткой» лавры лучшей в Ленинграде, были очень хорошие учителя. Вопросов, куда идти дальше, не возникало — либо на матмех, либо на физфак ЛГУ. Я выбрал матмех.
Поначалу вычислительная техника меня не сильно интересовала. Я занимался математическим анализом и вроде бы должен был пойти в аспирантуру. Но на пятом курсе попал на практику в вычислительный центр, и мне все понравилось. Договорился с ними так: вы мне платите зарплату лаборанта, а я за это к вам приду по распределению. Получилось, что и мне хорошо, и контора не прогадала.
— То есть ваше знакомство с вычислительной техникой фактически состоялось уже в самом вычислительном центре?
— Да. Пришел на практику, а оказалось, что это работа на всю жизнь.
Анатолий Владимирович Слюсарь, конец 1970-х гг.
Вычислительный центр обкома партии
— Вычислительный центр, о котором идет речь, решал задачи для Ленинградского обкома партии. Оснащался он очень хорошо. К моменту моего выхода на работу (ЛГУ я окончил в 1978-м) там уже работала ЕС-1022. Понятно, что первое время меня в машинный зал не пускали. Машинное время в советские времена стоило дороже времени программистов и других сотрудников и строго делилось между направлениями. Электронщики — те, кто настраивал железо, — делали это обычно ближе к ночи. Системные программисты занимались настройкой операционной системы по вечерам. Сам рабочий день делился между отделами программистов. Отделов было много, программистов тоже, но машина работала в однопользовательском режиме. Поэтому в каждый конкретный момент ей занимался один человек. Машинное время строго распределялось между опытными сотрудниками — минут по 10–15 каждому, а новички работали только за столом в комнате.
Программисты ЛФ НИИ «Восход», 1980 год
— Как вы программировали?
— Сейчас это сложно представить. Ты сидишь, пишешь программу на бумаге. Рисуешь блок-схемы, параллельно оформляешь какую-то документацию. Написав программу, начинаешь ее на бумаге отлаживать, много раз проходя по тексту, подправляя, дополняя, изменяя. Наконец она готова к отладке на машине.
Привычных нам сейчас устройств ввода информации не было. Ввести программу можно было либо с перфокарт, либо с перфолент. С перфолентами мы практически не работали, потому что они достаточно нежные, и исправлять код программы на них неудобно. На перфоленту можно было записать уже полностью отлаженную программу. Я делал это позже, когда мы программировали для станков с числовым программным управлением.
Сам ввод перфоленты в машину — завораживающее зрелище. Устройство достаточно быстро ее считывает, и на выходе она начинает красиво укладываться в корзину — как у девушек из художественной гимнастики.
Но это было позже, а когда я только пришел, мы набивали программы на перфокартах. Стандартная перфокарта, 80 позиций. Соответственно, не более 80 символов в строке. Сначала я писал на языке PL/I, потом, когда задачи изменились, больше стал работать на Ассемблере.
Санкт-Петербург, Московский проспект, 108. Здесь в здании бывшей Чубыкинской богадельни находился вычислительный центр Ленинградского обкома КПСС. Сейчас его занимает музыкальная школа
— Как набивались программы?
— На специальном устройстве. Оно было очень шумным, стояло в отдельном помещении. Каждая строчка программы набивалась на отдельной перфокарте. Поскольку символы, которые пробиты, сверху не надпечатывались, перфокарточные коды каждого символа приходилось заучивать — иначе не найти ошибку. Если ошибка в перфокарте небольшая, мы заклеивали эти дырочки и перебивали. Но, конечно, чаще приходилось заново перебивать всю перфокарту.
Представьте: программа в 500 строк, большая колода перфокарт. Не дай бог ее, набитую, случайно рассыпать. Потом уже не собрать. У нас были мастера, которые умели читать перфокарты, и в конце концов всем пришлось научиться это делать, чтобы правильно потом сортировать. Даже если вы пронумеровали колоду, нумерация меняется, когда вы меняете алгоритм, переставляете блоки…
— Когда программа была набита, начиналась ее отладка?
— Да. Приходишь в машинный зал, вставляешь колоду в устройство считывания перфокарт, она «чух-чух-чух» — считывается и, если не было ошибок считывания, запускается обработка. На ЕС ЭВМ был язык управления заданиями (JCL — Job Control Language), который позволял оформить вызов компилятора для введенной программы. Второй этап — подключить к вашей программе другие вызываемые системные или прикладные программы. Говоря современным языком, указать библиотеки подключаемых программ, после чего начинает работать исполняемый код.
У ЕС ЭВМ была консоль — пишущая машинка такая, которая позволяла управлять процессом, вводя команды и отвечая на вопросы системы. А главный результат выводился на АЦПУ — алфавитно-цифровое печатающее устройство. Назвать его принтером нельзя, потому что там были только алфавитно-цифровые символы. Результат получали на складывающейся перфорированной с двух сторон бумаге, потом шли разбираться с тем, что у нас получилось.
Алфавитно-цифровое печатающее устройство ЕС-7033 входило в состав ЭВМ БЭСМ-6 и ЕС ЭВМ
Бумага складывалась с задней стороны АЦПУ, надо было ее поправлять — она не всегда укладывалось в пачку — и накопившееся статическое электричество хорошо так дергало. Потом уже появились заземленные металлические цепочки, которые ложились вдоль бумаги.
Эти алфавитно-цифровые печатающие устройства были весьма ограничены в изобразительном плане, но находились умельцы, способные с помощью символов распечатать на них, скажем, Мону Лизу. Если смотреть издали, выглядело очень правдоподобно.
За спиной героини Лии Ахеджаковой одна из таких репродукций. «Служебный роман», 1977 г.
— В вашем центре были такие специалисты?
— Нет, но мы общались с другими организациями. Обмен информацией происходил через магнитные ленты. Они были либо большие — на них нам обычно поставляли дистрибутивы операционной системы или компиляторы для языков PL/1, COBOL, FORTRAN, — либо катушки поменьше. Конечно, мы для обмена использовали маленькие. Их можно было засунуть под брюки и вынести из организации, чтобы с кем-то обменяться информацией. Обменивались мы и вот этими картинками, и книгами. Печатали романы Стругацких, стихи Высоцкого, Окуджавы, Галича. Сэкономив бумагу, каждый мог распечатать себе то, что ему интересно почитать. Самиздат, конечно, строго карался, но это никого не останавливало.
— Какие задачи перед вами ставились?
— Так как вычислительный центр курировал обком партии, задачи решались для них. Выборы, учет коммунистов в Ленинграде, проведение собраний… Было у нас даже удаленное рабочее место. В обкоме стоял телеграфный аппарат, а у ЕС ЭВМ был интерфейс для взаимодействия по телеграфным каналам связи с этим вот удаленным терминалом. То есть мы могли выводить туда какие-то важные показатели, а оттуда принимать какие-то команды. Приходилось обслуживать и сам вычислительный центр: его хозяйственную деятельность, зарплату сотрудников, учет кадров.
Статистические данные обком КПСС использовал, в том числе, и для агитации
ЕС-1022
— Вы в первый раз на практике в вычислительном центре. Заходите в машинный зал. Какие впечатления?
— Восторг! Помещение чистое, светлое, просторное. Шкафы с лентопротяжными механизмами, дисководы. Фальшпол достаточно высокий, потому что под ним прокладывали воздуховоды, кабели — интерфейсные и электрические.
Машина размещалась на третьем этаже — самом верхнем. Кстати, везде, где я работал, ее старались поднимать повыше. Думаю, это из-за грызунов. Чем выше разместишь, тем меньше вероятность порчи оборудования какими-нибудь мышами.
Выдержка из «Инструкции по проектированию зданий и помещений для электронно-вычислительных машин», 1979 г.
От работы мы получали удовольствие. Помогало и наличие консоли. На более старых машинах приходилось много кнопок на пульте нажимать, а здесь, грубо говоря, только «старт» и «пауза». Команды вводились уже с консоли. Потом у нас появились первые дисплейные комплексы.
— ЕС-1022 — базовая модель. Для нужд вычислительного центра ее мощности хватало?
— Да, хотя, например, оперативной памяти у нее было всего 256 килобайт. Современным программистам, конечно, не понять, как можно написать достаточно серьезную программу, которая будет работать при таком небольшом объеме. Первые диски были по семь с небольшим Мбайт — тарелки такие. Затем появились большие накопители на магнитных дисках емкостью 29 Мбайт. Весили они по шесть с лишним килограммов. Такой диск надо было поднять, поставить на шпиндель…
Лентопротяжные механизмы, как и сами ленты, оказались долгожителями. Даже на следующих моделях IBM — AS/400 — можно было с ними работать. Ленты регулярно перематывали, потому что при хранении они накапливали статическое электричество. Если долго не крутить туда-сюда, потом может сбоить. Ну а нагрузка на лентопротяжный механизм была такая, что узлы приходилось протирать спиртом. Спирт тогда выдавался хороший — трехлитровая банка в квартал. Получали его электронщики, но мы могли при этом присутствовать!
Царь Дадон
— Коллектив вычислительного центра был очень хорошим. Около ста человек — много молодых, люди старших поколений тоже интересные. Мы организовывали совместные мероприятия, постоянно ездили за город.
Большой коллектив был у электронщиков — там специалисты требовались по разным устройствам. Кто-то занимался лентопротяжными механизмами. Кто-то — памятью, процессором, устройствами считывания перфокарт, которые часто засорялись. Системные программисты занимались обновлением операционной системы и системного программного обеспечения. Ну а больше всех было прикладных программистов — человек 30. Начальники отделов получали задания и распределяли их между подчиненными. Мы делали программы, которые потом надо было совместить, объединить. Были и небольшие программы, которые разрабатывал, доводил до окончательного результата и сдавал один человек.
— Как осуществлялся допуск в машинный зал?
— По специальному значку в пропуске, который был очень похож на коня. В советских организациях значками определялся уровень допуска в разные помещения. Но помогало это не всегда. Твою работу на машине могли прервать, например, системщики, если им срочно что-то понадобилось. Однажды я даже сочинил на эту тему песенку:
Имею я на пропуске коня,
Хватаю быстро пачку перфокарт.
По расписанью время у меня,
Сотрудники завистливо глядят.
Но на машине царствует Дадон
И на дисплей стоит облокотясь,
«Ну, может быть, мне завтра повезет»,—
Подумал я, на место возвратясь.
Дадон — это фамилия начальника системщиков.
Правильный период
— Сколько вы отработали в обкомовском центре?
— Четыре года. Потом за своим начальником перешел в ЛНПО «Вектор» Министерства радиопромышленности СССР. Там была ЕС-1033, но я уже работал больше системным программистом. Принимал машину, ставил на ней операционную систему, дистрибутив которой поставлялся в исходных кодах на ассемблере. При установке операционной системы надо было сначала выполнить трансляцию большей части программ, а потом она настраивалась под конкретную конфигурацию ЕС ЭВМ: под ее периферийные устройства, объемы памяти. И вот на этих исходных текстах программ, полученных от IBM через НИЦЭВТ (научно-исследовательский центр электронно-вычислительной техники), мы учились программировать.
Санкт-Петербург, Кантемировская улица, 10. Здание ЛНПО «Вектор»
— На ваш взгляд, внедрение ЕС ЭВМ — правильное направление развития электронной вычислительной техники в СССР?
— Мне кажется, правильное. До появления ЕС ЭВМ в СССР было очень много всяких машин. Они не стыковались между собой ни по способам хранения данных, ни по алгоритмам. Обмен программами был затруднен при таком разнообразии. Мы могли развивать свое, но тогда отставали бы все дальше и дальше. Здесь же мы получили образцы техники. Понятно, что из-за эмбарго на поставку готовых машин собирать их приходилось в СССР. Но никто нам не запрещал покупать комплектующие. Архитектуру и операционную систему IBM не патентовал, их тоже можно было покупать, перерабатывать, использовать. Была единая архитектура, масштабируемость, более мощные процессоры, больше памяти. Они все были совместимы — по операционной системе, по способам хранения данных, по программному обеспечению. Я считаю, это был правильный период нашего развития, позволивший шагнуть вперед и обучить системных и прикладных программистов — они перенимали опыт программирования, который уже был в Америке.
— Отголоски «принять — не принять ЕС» из 1960-х до вас дошли?
— Я был тогда молод и об этом, конечно, не задумывался. Когда я пришел в вычислительный центр, ЕС ЭВМ уже начала там работать. Рядом в соседнем зале стоял «Минск-32», и не возникало никаких сомнений, что надо перенести все, что накоплено и наработало на нем, на ЕС. И что эта машина лучше той, тоже было очевидно.
— Кроме дистрибутива операционной системы, вам приходилось работать с американскими программами?
— Нет. Прикладное программное обеспечение все было свое. Наверное, системы для управления какими-то производствами можно было взять у американцев за образец, но у нас задачи были достаточно специфические. Это же центр обкома. Поэтому я знакомился с оригиналами только операционной системы, компиляторов с языков программирования.
Другие компьютеры
— Что было после ЛНПО «Вектор»?
— Я вернулся обратно — туда, где начинал. Они уже назывались НИИ Программных средств, и можно было решать более интересные задачи, не привязанные к обкому. В частности, я занимался разработкой отладчика специализированных операционных систем для ЕС ЭВМ. ЕС-1033 выпускалась в варианте для кораблей. На корабельные машины ставили операционные системы, которые управляли всем хозяйством судна, может быть, стрельбами, еще чем-то. Их надо было разработать и отладить. Отладчик этих систем я и создавал.
В процессе отладки надо было интерпретировать выполнение каждой команды, причем с хорошей скоростью. Когда результат получился, я кроме отладки операционной системы прогонял через эту программу, например, компилятор языка PL/1. Понял принципы работы компилятора, что позволило оптимизировать по объему и скорости работы получаемый код.
Программисты НИИ Программных средств, 1987 год
Это была интересная работа, и делали мы ее для московской организации. Приходилось часто ездить в Москву, сдавать, получать задания. Но только мы закончили эту разработку, начали сказываться негативные последствия перестройки, и в течение буквально двух лет (1988–1989) все стало сворачиваться. Финансирование резко сократилось, никто не знал, что делать, и многое, что было наработано, стало пропадать.
Потом, когда появились уже персональные компьютеры, вспомнили о наследии ЕС ЭВМ и на персоналках сделали эмуляторы для выполнения ее программ. Тот же «Пентиум»-166 прекрасно эмулировал ЕС-1033 и с той же скоростью выполнял ее программы.
— Когда в вашем поле зрения стали появляться другие компьютеры?
— В конце 1980-х. Я тогда уже подрабатывал в кооперативе. Несмотря на то что была основная работа, мы брали заказы на разработку программ для других компьютеров. Когда кооператив купил персоналки, я с ними и познакомился. Правда, на них уже не программировал. Организовывал эксплуатацию каких-то программ, готовил данные. Потом из кооператива я попал в Промышленно-строительный банк (Санкт-Петербург). Там как раз купили AS/400, и персоналки были у нас просто как рабочие станции, связанные с этой машиной. Я занялся организацией эксплуатации и теми же системными работами на AS/400 — установкой операционной системы, программ, которые мы закупали. Купили систему немецкую для автоматизации банковской деятельности, но на ней не пошло. Пришлось все переделать и разработать на AS/400 свою систему. Потом уже банк покупал готовые продукты у разработчиков.
Сервер серии IBM AS/400, созданной в 1988 году
— Дома у вас какие компьютеры были?
— Сначала «Спектрум», но не получилось его с телевизором состыковать (телевизор у нас был без необходимого блока). Потом появился «Вектор». В начале 1990-х его на работе дали жене, чтобы она разрабатывала программы. Первую персоналку я купил, когда начал работать в банке — деньги появились только тогда.
Компьютер «Вектор-06Ц», модель 1986 года
— Каким был «Вектор»?
— Вроде бы он был создан на базе того же процессора, что и «Спектрум». Дисплей уже графический, клавиатура. Помню, жена разрабатывала программу обучения десятипальцевому набору текстов. На экране отображалась клавиатура, загоралась клавиша, на которую надо нажать, и сверху падала бомбочка. Надо было успевать нажать до того, как бомбочка взорвется. Поначалу бомбочки на две клавиши, потом на 4, 5, 6, 8. В конце концов, вся клавиатура подключалась. Надо было успевать нажимать на нужную клавишу не глядя. Игра такая для обучения.
— Другие игры помните?
— Помню игры только на первых персоналках — ЕС-1840, ЕС-1841 (наши аналоги IBM PC). На них был тетрис, трехмерный тетрис. Уже позже я полюбил Doom.
— Вы жене помогали в ее домашней работе с «Вектором»?
— Однажды она получила задание, а времени для написания и отладки программы было немного. А я в то время еще имел доступ к ЕС ЭВМ. Поэтому разработал для ЕС ЭВМ компилятор исходного текста векторовских программ в машинный код и интерфейс для переноса этих данных на стандартную магнитофонную аудиокассету. На работе транслировал, записывал, дома мы могли отлаживаться и смотреть, как работает программа на «Векторе». Все это благодаря тому, что на ЕС ЭВМ работы у меня уже практически не было. Машина простаивала, и мне никто не мешал.
— Не жалеете, что сейчас машины другие, иначе процесс построен?
— Нет, конечно. Современные компьютеры намного интереснее, молодежь занимается проектами, которые мне даже не понять. Лекции, конференции с огромным количеством людей.
В наше время такого не было.
Комментарии (9)
sbnur
02.07.2019 18:15-3ЕС-1022 была стремной машиной для тех, кто работал на предыдущей советской технике, той же Минск-32, не говоря уже про БЭСМ-6.
Переход на ЕС откинул программистов Союза на поколение назад.Peter03
02.07.2019 18:28-1Мне кажется что если рассматривать с точки зрения программистов, то совместимость с широко распространёнными системами и возможность использовать сторонние библиотеки, операционные системы и т.п., это огромное преимущество.
Конечно весело самому всё разрабатывать, но слишком маленькая экосистема не даст возможности взлететь.
Не могу судить потенциальное преимущество Минск-32 и БЭСМ-6 с точки зрения хардварной архитектуры, но именно для _программистов_, скорее всего это было правильное решение. Тем более тогда понятия кросс-платформенности фактически не существовало.
DataArt Автор
02.07.2019 18:58Спасибо за комментарий! К ЕС ЭВМ отношение у большинства из тех, с кем мы уже публиковали интервью, мягко говоря, прохладное. Вот, например, Александр Ламден — программист, работавший как раз на БЭСМ-6, называет ее «создранной техникой» и с вами в целом солидарен. Но нам кажется, что картина была бы категорически неверной, если бы человек, начинавший уже на ЕС-1022, не мог высказаться о плюсах, которые видит во внедрении серии лично он.
sbnur
02.07.2019 19:40- Насчет совместимости — это не было проблемой — мы писали на языках, а на всех машинах были компиляторы с популярных в то время языков — нас больше интересовало скородействие и объем памяти — вот это и было потеряно при переходе на ЕС, пока не возникли ЕС-1035 — ЕС 1065 через 10-15 лет. В то время как тогда БЭСМ 6 была одной из высокопроизводительных машин в Европе, не говоря про ее виртуальные режимы, которые позволяли многопользовательский доступ через удаленные терминалы — то есть перфокарты и перфоленты ушли в прошлое.
- Такой вопрос — какие великие подвиги совершили советские программисты на машинах серии ЕС — космическая и ракетная программы были сделаны на машинах собственной разработки.
- Серия ЕС являлась копией американсткой системы IBM 360, которая в 1970 году была заменена новой системой IBM 370, то есть пока советские программисты осваивали предыдущую версию, в США развивали новое поколение ЭВМ — нетрудно понять, что все финансирование было брошено на развитие ЕС, а на развитие собственных разработок — прежде всего линии БЭСМ 6 — Эльбрус — остались, так сказать, остатки.
- Немаловажно, что пришлось менять элементную базу под ЕС — то есть отстали и по электронике
Причины такого перехода можно трактовать по разному, но в результате получилось по Ильфу — думали будет ЕС и будет счастье — и вот ЕС есть, а счастья нет.
Поэтому для меня — это провал, а каждый решает по своему — для кого-то и Агат(Apple 2) — был хороший персональный компьютер
maxkomp
02.07.2019 20:33Ну вот я начинал свою программистскую карьеру как раз на ЕС. Правда, на модели 1033. Потом на 1045, 1066. Ну да, что уж греха таить, вся серия ЕС ЭВМ была «содрана» с IBM 360 или 370. Это действительно, исторический свершившйся факт. Против которого не попрешь.
Впрочем, тут понятие «содрано» — это не плохое слово, а весьма распространенная практика. Никто же не обвиняет Кирилла и Мефодия в том, что они разработали алфавит для русского языка на основе греческого, (а не латинского), а в результате теперь мы должны мучиться с раскладками клавиатуры!
И сейчас — возьмите машиностроение для примера. Там очень редко кто начинают разрабатывать что-либо «от нуля», с чистого листа. Наоборот, стараются так не делать — такой подход приводит с «сырой» разработке, с кучей «детских болезней». Более разумно взять за основу какой-нибудь передовой образец техники (пускай и зарубежной), и сделать новую машину, устранив недостатки прототипа, приспособив его к новым условиям. Любой автомобиль, локомотив, подъемный кран возьмем — почти у всех найдется прототип. И абсолютно ничего плохого в этом нет.
Тем более что ЕС ЭВМ — это не просто «содранная» конструкция. Да, за основу взята архитектура (весьма неплохая на то время, но и уже не особо передовая. Американцы же совсем не дураки были), и для этой архитектуры были созданы аппаратные средства. Да, разобрали прототип по косточкам, и сделали почти такой же, но свой. (Потому что боялись «закладок»). С софтом — примерно то же самое.
А вот хорошо это или плохо (применительно к вычислительной технике) — тут все весьма неоднозначно.
С одной стороны, в СССР тогда выпускались свои ЭВМ, причем с очень даже грамотно продуманной архитектурой. (как минимум не хуже, чем у IBM). Один «Эльбрус» чего стоит. (Хотя, архитектура Эльбруса тоже совсем не на пустом месте появилась, но импортных прототипов у первых серий не было в принципе). И прекращение их разработки привело к тому, что СССР в области вычислительной техники превратился в «догоняющего».
Не забываем, что кроме ЕС, были еще и серия СМ — это ведь тоже «содранная» архитектура, только с других прототипов (PDP. Vax, Intel...). А свои разработки (и ведь весьма перспективные!) были заброшены, сейчас о них вспоминают только историки вычислительной техники.
С другой стороны, как тут правильно заметил Peter03, для IBM 360 / 370 в то время уже было написано довольно много софта, которым так или иначе можно было пользоваться. А для отечественных архитектур в те стародавние времена по этой части ситуация была не особо радужной. Да и про кросс-платформенную совместимость тогда мало кто задумывался, (впрочем, за рубежом в области совместимости дела обстояли тоже не ахти).
Если бы тогда было принято решение развивать отечественные серии ЭВМ, активно писать для них софт, глядишь, и мы сидели бы сейчас не на х86 архитектуре. Но…
Но это если бы, да кабы… история не знает сослагательного наклонения, а теперь уж поздно что либо менять.rutenis
02.07.2019 21:25Кстати говоря, клоны IBM/360 выпускали в своё время, к примеру, Fujitsu и Hitachi, и непохоже, чтобы это плохо на них повлияло. Сдаётся мне, и в нашем случае ошибкой было не само решение о копировании, а его следствие — что "урезали" бюджет на собственные разработки.
saag
02.07.2019 19:21Спирт мне выдавали, да — этиловый, и это была ошибка — его у меня сперли, потом поняли ошибку и выдали изопропиловый, из лент для АЦПУ 7033, паяльником нарезали ленты для печатающей машинки устройства ввода-вывода, края у ленты не использовались и оставались нетронутыми, это самое АЦПУ периодически приходилось подстраивать — там механические регулировки каждого символа, иначе плохо начинало печатать, устройство считывания перфокарт спиртом протирать надо, иначе загрязнялось и в самый ответственный момент сбой и все по новой, 256 Кбайт памяти, а по размерам как два шкафа металлических
CrashLogger
Doom на ЕС-1841? Очень сомневаюсь )
DataArt Автор
да, вы правы, Doom в жизни героя появился позже :)
Спасибо за комментарий!