Виктор Иванников: случайности и закономерность
Волков Д., Карпов Л.
Работать самому, передавать знания молодежи и личным примером воспитывать смену — именно так понимал свой патриотический долг ведущий российский ученый в области системного программирования Виктор Петрович Иванников, которому 27 февраля 2020 года должно было исполниться 80 лет.
Каждый, кто когда-либо общался с академиком Виктором Петровичем Иванниковым, сразу ощущал, что имеет дело с ученым, понимающим важность науки вне границ, который жил и работал так, как будто старался успеть все. И ему это удалось, свидетельство чему — работающие сегодня по всему миру сотни его учеников и его любимое детище, ИСП РАН.
Поступив в 1957 году в Московский физико-технический институт на факультет радиотехники и кибернетики, Виктор Петрович «случайно» оказался в группе, курируемой Институтом точной механики и вычислительной техники АН СССР — ведущим в те времена исследовательским центром в области вычислительной техники. Его научными руководителями и первыми учителями были основоположник отечественной вычислительной техники и заведующий кафедрой ЭВМ в МФТИ Сергей Алексеевич Лебедев [1] и тогда еще совсем молодой Лев Николаевич Королев [2]. Рядом с ним работали Александр Николаевич Томилин, Дмитрий Борисович Подшивалов, Геннадий Георгиевич Рябов [3] и Андрей Михайлович Степанов.
В ИТМиВТ была очень сильная команда программистов. Ими, в частности, был разработан распределенный комплекс из нескольких ЭВМ, под управлением которого в марте 1961 года произошел первый в мире перехват баллистической ракеты. Иванников в то время учился на четвертом курсе МФТИ и тоже успел внести свой вклад в это достижение: первой ЭВМ, для которой он составлял свои программы, была М-40, разработанная для центрального управляющего комплекса системы «А» [2].
Следующим «случайным» шагом на пути становления ведущего специалиста в области операционных систем стало участие в разработке первого диспетчера для БЭСМ-6 (Д-68), в ходе которой Иванников сформулировал идеи, воплотившиеся в диспетчере НД-70, а затем вошедшие в ОС ДИСПАК [4]. Среди других начинающих программистов в коллектив вошли Игорь Борисович Бурдонов (впоследствии руководитель создания кластерной операционной системы для суперкомпьютера «Электроника СС БИС»), Александр Сергеевич Косачев (позднее занимался разработкой, созданием и поддержкой системного ПО для Центра управления полетами космических аппаратов, компонентами системного ПО «Электроники СС БИС») и Сергей Дмитриевич Кузнецов (один из разработчиков ОС для АС-6, ведущий специалист в области СУБД и управления данными), почти полвека проработавшие с Иванниковым.
Работу над концепцией ОС для суперЭВМ Виктор Петрович продолжил после старта проекта АС-6 (аппаратура сопряжения к БЭСМ-6), который велся в ИТМиВТ начиная с 1969 года. АС-6 — это модульная система, объединяющая в единый комплекс БЭСМ-6, центральные процессоры (ЦП АС-6), общие модули памяти, несколько специализированных периферийных машин (ПМ-6) и периферийные устройства. В это время вокруг Иванникова начала «случайно» складываться команда программистов, способных первыми решать сложные задачи. Во всем мире было не так много коллективов, способных спроектировать и реализовать крупномасштабную операционную систему гетерогенного многомашинного комплекса, на котором одновременно могло выполняться несколько задач управления сложными объектами в режиме реального времени. Со временем эта группа получила и новый статус: в составе знаменитой пятой лаборатории [2] было создано подразделение, руководителем которого стал Иванников.
Система АС-6 была доведена до серийного производства — на Московском заводе САМ было выпущено несколько машин. Важно отметить, что именно Иванников впервые в индустрии так организовал работу программистов, что комплекс уже с завода поставлялся заказчикам вместе с полным комплектом системного программного обеспечения, а не только с тестами аппаратуры и обслуживающими программами, как это было тогда принято. В комплект входили две ОС: одна для центрального процессора ЦП АС-6, а другая для периферийной машины ПМ-6, — а также система программирования с трансляторами для языков Алгол-60 и Фортран. В течение 15 лет АС-6 успешно применялась в Центре управления полетами, в том числе сыграв ведущую роль в программе «Cоюз» — «Аполлон». За работы по АС-6 Виктор Петрович и семеро его коллег получили Государственную премию СССР а в декабре 1984 года он был избран членом-корреспондентом АН СССР по отделению математики.
Ведущий инженер ИТМиВТ АН СССР, 1970 г.
Иванников был не только формальным руководителем коллектива программистов. Благодаря своему обаянию, ровному и уважительному отношению к людям, он стал и неформальным лидером группы единомышленников, разделяя с ними как рабочие будни — выступая с докладами, участвуя в обсуждениях, семинарах, проектируя структуры данных для ОС, — так и отдых. Часто с коллегами он приезжал в известную всем членам коллектива Липовку в гости к своему коллеге Игорю Бурдонову, принимал участие в коллективных мероприятиях, помогал подшефному летнему лагерю для детей сотрудников НИИ «Дельта», куда «случайно» перешел в 1981 году после защиты докторской диссертации.
С 1978 года в этом институте, входившем в структуру Министерства электронной промышленности СССР, разворачивались работы над отечественной суперЭВМ. Владимир Андреевич Мельников [3] решил организовать тесное взаимодействие разработчиков вычислительной техники и создателей ее элементной базы. В НИИ «Дельта» было образовано Шестое отделение, костяк которого составили сотрудники ИТМиВТ им. С. А. Лебедева, участвовавшие в разработке БЭСМ-6 и АС-6. В этом отделении, руководство которым было поручено Мельникову, Иванников возглавил отдел разработки всего комплекса ПО для суперЭВМ, включавшего систему автоматизации проектирования, имитационный комплекс для опережающей разработки программ, систему программирования на базе трансляторов с языков Фортран, PL/1 и собственно ОС. Достаточно быстро появилась концепция комплекса системного программного обеспечения и было проведено полноценное проектирование, причем в точном соответствии с лучшими мировыми практиками и с соблюдением всех действовавших тогда стандартов в их самом строгом варианте. Например, отечественные стандарты не требовали разработки аванпроектов, считая их необязательными документами, и настаивали только на проведении эскизного и технического проектирования. Однако Мельников и поддержавший его применительно к ПО Иванников решили не игнорировать эту стадию проектирования, добиваясь уже на самых ранних шагах разработки суперкомпьютера максимально точной деталировки предстоящей работы. Это позволило обеспечить раннее выявление ошибок проектирования (сегодня такой процесс — элемент разработки по agile), исправление которых обычно вызывает наибольшие трудности, выпустить точную документацию и обучить на этом этапе молодых специалистов.
В 1983 году был образован Институт проблем кибернетики АН СССР, директором которого был назначен академик Мельников, и сотрудники шестого отделения НИИ «Дельта» вновь вернулись в Академию наук, где продолжили разработку векторно-конвейерной машины «Электроника СС БИС», как шутили тогда — «Красного Крея». Планировалось выпустить серию таких компьютеров, совместимых с Cray X-MP и Y-MP.
Первые экземпляры «Электроники СС БИС» создавались в Москве и Калининграде, где, не жалея сил, работали над ОС сотрудники отдела Иванникова. В 1991 году операционная система была продемонстрирована на первых четырех образцах отечественного суперкомпьютера. Однако вместо плановых испытаний на коллектив навалились испытания внеплановые: перестала существовать держава, способная позволить себе разработку собственных высокопроизводительных систем, которые, как стало сегодня очевидно, являются основой национальной безопасности страны. В разгар завершающей отладки модулей операционной системы ведущие разработчики были уведомлены о прекращении финансирования министерств, участвовавших в проекте «Электроника СС БИС»: в цехах отключается подача электроэнергии на стенды, сотрудники за два месяца должны завершить текущие дела и вернуться в Москву, заводские цеха перепрофилируются на выпуск иной продукции. Вскоре внезапно умер академик Мельников, и коллектив оказался под угрозой распада.
В этот момент «случайно» проявился организационный талант Виктора Петровича. В период лихолетья 90-х он сумел добиться создания в системе отделения математики РАН новой организационной единицы — Института системного программирования, куда в январе 1994 года перешли сотрудники ИПК. Для Иванникова начался новый виток судьбы, на котором его таланты открылись с многих неожиданных сторон. За короткое время он не только сумел сохранить коллектив, но и усилил его, причем на фоне распада известных отечественных институтов, когда их ведущие сотрудники массово уезжали за границу, а выпускники университетов шли работать продавцами или занимались частным извозом. Сама жизнь подсказала Иванникову направление развития института — он сделал ставку на молодежь и выиграл.
На факультете ВМК МГУ была активизирована работа кафедры системного программирования: две группы студентов третьего курса ежегодно проходили обучение под руководством ведущих специалистов ИСП РАН. Аналогичная кафедра, благодаря Иванникову, открылась на факультете управления и прикладной математики МФТИ, а позже и в Высшей школе экономики, к работе на которой снова привлекаются сотрудники ИСП РАН. В практику обучения фактически внедрялась система МФТИ — привлечение студентов к научной деятельности академического института, в свою очередь работавшего и над заказами федеральных ведомств, предприятий и компаний реального сектора экономики. В результате студенты получали богатый научный опыт, поступали в аспирантуру МГУ, МФТИ и РАН, защищали диссертации и входили в штат ИСП. Конечно, так получалось далеко не у всех: одни не справлялись с нагрузкой, другие выбирали иные приоритеты, а многим элементарно в те годы не хватало средств к существованию. Бывало и так, что, получив образование, опыт работы и защитив диссертацию, человек покидал страну, пытаясь увезти начатые разработки. Такие факты особенно огорчали Виктора Петровича, хотя и не убавляли его оптимизма — открывались новые темы, разворачивалась работа над перспективными проектами, создавались новые группы из студентов и аспирантов, а сам он лично участвовал в семинарах и исследованиях.
Примечательно, что Иванников редко соглашался на просьбы коллег о включении его в состав авторов публикаций, хотя молодые сотрудники уговаривали его стать их формальным соавтором, считая непосредственным участником разработок и генератором идей, позволивших получить новые научные результаты.
Ставка на студентов себя оправдывала — непрерывный поток свежих кадров позволял не опасаться текучести и способствовал повышению требований к отбору сотрудников. Из полусотни выпускников, ежегодно защищающих сегодня дипломные работы в ИСП РАН, лишь единицы получают возможность присоединиться к институту в качестве штатных сотрудников.
На встречах, проходивших в ИСП РАН после каждой защиты, Виктор Петрович был уже для сотрудников не директором и научным руководителем, а обычным товарищем, который рассказывал о своих работах в ИТМиВТ, НИИ «Дельта» и ИПК, делился опытом решения уникальных задач. В такие минуты он не стеснялся громких слов, называя себя великорусским патриотом, не забывая, однако, напоминать о многонациональном составе коллектива ИСП РАН.
Накануне новогодних праздников Виктор Петрович обычно отчитывался перед коллективом о проделанной работе, весьма тщательно готовясь к таким мероприятиям: рассказывал о знаковых событиях уходящего года, о составленных им для института и его отдельных подразделений планах, а также о направлениях работ для ключевых сотрудников. В этих отчетах ничего не скрывалось — в них говорилось о договорах и намерениях по их заключению, о трудностях, с которыми столкнулся коллектив в уходящем году и которые предстоит преодолеть, о планах защиты дипломных работ и диссертаций, о перманентном ремонте здания института и о поиске новых площадей.
Обсуждение планов работ
Много внимания Иванников уделял и работе в редакциях научных изданий. В сентябре 1988 года вышел в свет номер журнала «Программирование», в подготовке которого в качестве главного редактора впервые принял участие Виктор Петрович. Почти 30 лет он проработал в редакционной коллегии этого издания, превратив его в ведущий отечественный журнал по теоретическому и практическому программированию. При этом неукоснительно выдерживалась такая политика: журнал принимает в работу ранее не публиковавшиеся научные статьи авторов из любой страны при условии, что статьи написаны на русском языке.
Своей основной задачей Иванников считал предоставление молодым ученым возможности публикации научных идей с получением обратной связи от читателей, поэтому, понимая ограничения небольшого по объему академического журнала, он организует издание «Труды Института системного программирования РАН». При этом даже в этом ведомственном журнале могли публиковаться сторонние авторы, статьи которых прошли независимое рецензирование.
Накануне своего ухода с занимаемого поста Виктор Петрович стал открыто для всего коллектива готовить смену поколений в руководстве института. Ряд заслуженных сотрудников были из начальников переведены в главные научные сотрудники, по сути — в советники, консультанты, что освободило место для воспитанников ИСП, вчерашних аспирантов. Прошла смена ученых секретарей и диссертационного совета, были разделены должности директора и научного руководителя ИСП РАН.
Передав значительную часть работы своему преемнику, Иванников целиком погрузился в научную деятельность, больше времени стал уделять сотрудничеству в журналах, не жалея времени и на общение со студентами [5]. Активизировались семинары, на которых сотрудники кафедр делились тонкостями своего мастерства со студентами.
***
К созданию своего детища, ИСП РАН, которому Виктор Петрович Иванников отдал много сил и здоровья, он шел целенаправленно, закономерно проходя сквозь череду предлагаемых судьбой «случайностей». Его неожиданный уход подтвердил, насколько тщательно он подготовил институт к грядущим вызовам, — и даже сегодня в институте нередко можно услышать: «Виктор Петрович учил меня поступать именно так, значит, это верно».
ЛИТЕРАТУРА
-
Г.И. Рузайкин. Столетняя годовщина // Открытые системы.СУБД. — 2002. — № 9. — С. 72–76. URL: https://www.osp. ru/os/2002/09/181946 (дата обращения: 05.12.2019).
-
Руслан Смелянский. «Чудеса» Льва Королева // Открытые системы.СУБД. — 2016. — № 3. — С. 41–43. URL: ww.osp.ru/ os/2016/03/13050260 (дата обращения: 05.12.2019).
-
Наталья Дубова. Очерки истории советской вычислительной техники // Открытые системы.СУБД. — 1999. — № 1. — С. 69–76. URL: www.osp.ru/os/1999/01/179659 (дата обращения: 05.12.2019).
-
Ирина Крайнева. ДИСПАК — операционная система атомного проекта // Открытые системы.СУБД. — 2016. — № 1. — С. 42– 43. URL: www.osp.ru/os/2016/01/13048657 (дата обращения: 05.12.2019).
-
Виктор Иванников. Обучение программированию в эпоху технологических революций // Открытые системы.СУБД. — 2017. — № 1. — С. 34–39. URL: www.osp. ru/os/2017/01/1305160 (дата обращения: 05.12.2019).
Об авторе: Дмитрий Волков (vlk@keldysh.ru) — сотрудник ИПМ им. М. В. Келдыша РАН,
Леонид Карпов (mak@ispras.ru) — ведущий научный сотрудник ИСП им. В. П. Иванникова РАН (Москва).
в журнале "Открытые системы" №04/2019
Помещена в музей с разрешения Карпова Л.Е.
8 января 2020