Михаил Романович Шура-Бура
Е. Н. Филинов, А. Н. Томилин, члены Экспертного совета музея
Михаил Романович Шура-Бура по праву считается патриархом отечественного программирования. В его научной биографии и в результатах отдела Института прикладной математики им. М. В. Келдыша, возглавляемого М. Р. Шура-Бура, отразились наиболее важные черты становления и развития системного и прикладного программирования в нашей стране.
Михаил Романович Шура-Бура
Михаил Романович Шура-Бура родился 21 октября 1918 г. в деревне Парафиевка Черниговской области.
В 1940 г. М. Р. Шура-Бура окончил механико-математический факультет Московского государственного университета им. М. В. Ломоносова (МГУ), в 1940-1947 гг. он преподавал математику в Артиллерийской инженерной академии им. Ф. Э. Дзержинского, а в 1947-1955 гг. - в Московском физико-техническом институте. Его работы в области математики в эти годы были связаны с теорией бикомпактных пространств.
В 1947 г. М. Р. Шура-Бура защитил диссертацию на соискание ученой степени кандидата физико-математических наук.
С 1953 г. по настоящее время М. Р. Шура-Бура работает в Отделении прикладной математики Математического института им. В. А. Стеклова, созданном М. В. Келдышем в 1953 г. и преобразованном затем в Институт прикладной математики АН СССР (ныне ИПМ РАН им. М. В. Келдыша).
Почти 50 лет в одной организации - редкий пример постоянства научных интересов и жизненных взглядов человека. В первые годы главной задачей и организационным успехом М. Р. Шуры-Буры, как руководителя отдела программирования в ИПМ, было формирование отдела, костяк которого составили выпускники кафедры вычислительной математики мехмата МГУ И. Б. Задыхайло, Э. З. Любимский, В. С. Штаркман и др.
Первым результатом работы отдела в 1953-1955 гг. было появление программ для расчета энергии взрывов при моделировании ядерного оружия на ЭВМ "Стрела". Постановки задач и методы расчетов для этих программ готовили отделы математиков (А. Н. Тихонов, А. А. Самарский, И. М. Гельфанд). Программирование задач такой сложности в машинных кодах на ЭВМ, имевшей оперативную память емкостью всего 1000 ячеек, неработающий накопитель на магнитной ленте и частые сбои в арифметике и управлении, требовало от программистов виртуозного умения и оригинальных находок в организации отладки программ и счета. Сам М. Р. Шура-Бура так образно назвал эту работу: "Как мы победили "Стрелу"!".
В 1954 г. М. Р.Шура-Бура защитил диссертацию на соискание ученой степени доктора физико-математических наук. В 1955 г. за вклад в создание ядерного оружия в СССР он был удостоен Государственной премии СССР.
В середине 50-х годов отдел программирования был привлечен М. В. Келдышем к расчетам траекторий искусственных спутников Земли (ИСЗ), выполнявшихся в ИПМ отделом Д. Е. Охоцимского. Программы, разработанные сотрудниками отдела, возглавляемого Михаилом Романовичем, для ЭВМ "Стрела", а затем М-20, должны были обеспечивать круглосуточный режим обработки измерений траекторий ИСЗ. Они использовались начиная с 1957 г. при запуске первых и последующих ИСЗ, полете Ю. А. Гагарина в 1961 г. и затем в течение последующих 10 лет. Значение этой работы трудно переоценить, потому что результаты траекторных расчетов, производимых в разных организациях, иногда не совпадали, что для управления космическими полетами было недопустимо.
Затем отдел М. Р. Шуры-Буры занимался созданием системного и прикладного программного обеспечения для космического челнока "Буран". До настоящего времени М. Р. Шура-Бура руководит разработкой прикладных систем наземной диагностики сложных технических комплексов по заказу оборонных организаций.
Весьма значительным было влияние ИПМ и лично М. Р. Шуры-Буры на выбор архитектуры отечественных универсальных компьютеров. В 1955 г. на начальной стадии проекта ЭВМ первого поколения М-20 в разработке участвовали три человека: С. А. Лебедев (общие характеристики и структура машины), М. Р. Шура-Бура (система команд), П. П. Головистиков (схемотехника). Основные архитектурные решения М-20 предложил М. Р. Шура-Бура, среди них:
- представление чисел с плавающей точкой;
- трехадресный формат команды в машинном слове длиной 45 двоичных разрядов;
- система команд с автоматической модификацией адреса и индексная арифметика;
- перекрытие во времени выполнения арифметических операций с выборкой команд из памяти;
- совмещение операций процессора с операциями ввода-вывода данных.
Эти архитектурные решения М-20 были сохранены в ЭВМ М-220, М222, построенных на основе полупроводниковой элементной базы. Эти машины стали "рабочими лошадками" для выполнения научных и инженерных расчетов во многих исследовательских, проектных и оборонных организациях страны.
М. Р. Шура-Бура принимал самое активное участие в создании программного обеспечения этого семейства, начиная с системы интерпретации ИС-2 и библиотеки стандартных программ для М-20, а затем операционных систем ОС 4.220 и ОС ДМ-222, компиляторов языка АЛГОЛ-60 (компилятора ТА-2) и ФОРТРАН.
Деятельность Ассоциации пользователей М-20, собиравшей и распространявшей прикладные программы для М-20, М-220, М-222, также проходила под непосредственным влиянием М. Р. Шуры-Буры.
В середине 60-х годов, когда ИТМ и ВТ под руководством С. А. Лебедева разрабатывал архитектурные решения универсальной ЭВМ второго поколения БЭСМ-6, М. Р. Шура-Бура активно участвовал в обсуждении этих решений на совещаниях в Москве, Ужгороде, Беловежской Пуще. В дальнейшем ИПМ в лице отдела М. Р. Шуры-Буры принимал активное участие в создании программного обеспечения для БЭСМ-6. Здесь наиболее крупной разработкой была ОС ИПМ, выполненная под руководством И. Б. Задыхайло.
В конце 60-х годов в стране было необходимо решить вопрос с выбором архитектуры семейства (ряд программно совместимых компьютеров третьего поколения) ЕС ЭВМ.
Принципиальное значение для этого решения имела точка зрения Академии наук СССР, которую в значительной степени формировал ИПМ, как крупный пользователь высокопроизводительных ЭВМ для научных расчетов, и лично М. Р. Шура-Бура. Эта точка зрения состояла в том, чтобы обеспечить программную совместимость ЕС ЭВМ с наиболее распространенным на Западе семейством - IBM/360.
Для подробного изучения архитектуры и программного обеспечения IBM/360 отделом М. Р. Шуры-Буры (В. С. Штаркманом) были организованы ряд семинаров, в которых участвовали специалисты многих заинтересованных организаций.
После принятия решения М. Р. Шура-Бура осуществлял научное руководство разработкой программного обеспечения ЕС ЭВМ. В 1978 г. за выполнение этой работы М. Р. Шура-Бура в числе других участников был удостоен Государственной премии СССР.
В 80-х годах отдел М. Р. Шуры-Буры принимал участие в создании оригинальной архитектуры скалярно-векторной многопроцессорной ЭВМ ЕС 1191, проводившейся НИЦЭВТ по ТЗ, согласованному с академиками Ю. Б. Харитоном, А. Н. Тихоновым, В. С. Семенихиным. От ИПМ в разработке программного обеспечения для ЕС 1191 (ассемблер, операционная система) принимали участие И. Б. Задыхайло, В. А. Крюков, В. С. Штаркман, Степанов. Судьба этой машины сложилась неудачно из-за того, что условием ТЗ было применение только отечественной элементной базы, а она к этому времени уже значительно уступала западной (1,5 тыс. вентилей/кристаллов против 200 тыс). Но ее программное обеспечение отвечало мировому уровню.
Характеристика работ отдела М. Р. Шуры-Буры в области операционных систем для отечественных ЭВМ будет неполной, если не упомянуть об опыте создания операционной системы для ЭВМ "Весна", выполненной в первой половине 60-х годов под руководством В. С. Штаркмана. По существу это была первая в нашей стране полнофункциональная операционная система для серийной ЭВМ, поддерживавшая мультипрограммный режим работы, пакетную обработку и режим разделения времени. За ней последовали ОС ИПМ для БЭСМ-6 (И. Б. Задыхайло) и другие, о которых уже было упомянуто.
Работы отдела М. Р. Шуры-Буры по языкам и системам программирования были начаты еще в 50-х годах с использованием операторного программирования на основе теории схем программ А. А. Ляпунова. Результаты пионерских работ по автоматизации программирования были опубликованы в 1958 г.: М. Р. Шура-Бура, С. С. Камынин, Э. З. Любимский. Об автоматизации программирования при помощи программирующей программы. Проблемы кибернетики. Статью "Особенности программирующей программы для машины "Стрела-4"" М. Р. Шура-Бура опубликовал совместно с Н.П. Трифоновым в сборнике "Системы автоматизации программирования" в 1961 г.
В 1963 г. под руководством М. Р. Шуры-Буры был создан один из трех трансляторов с языка АЛГОЛ-60 для ЭВМ М-20 - транслятор ТА-2 с полной версией языка АЛГОЛ-60. За ним последовали системы программирования для БЭСМ-6 и других ЭВМ.
Концепция создания интегрированных систем программирования на базе общего промежуточного языка АЛМО (АЛгоритмический Машинно-Ориентированный) и прекомпиляторов с нескольких входных языков была предложена и развита Э. З. Любимским и С. С. Камыниным, сотрудниками отдела М. Р. Шуры-Буры.
В 80-х годах инструментом системного программирования для разработки компиляторов в ИПМ стал язык РЕФАЛ. Язык РЕФАЛ и его реализация были разработаны В. Ф. Турчиным, тогда сотрудником отдела М. Р. Шуры-Буры.
Технология РЕФАЛ была применена при создании компиляторов ФОРТРАН для ЭВМ ПС-3000, ЕС 1191, масштабируемого компилятора бортового модуля программного обеспечения космического корабля "Буран", программного обеспечения изделий специализированной техники "Булат 2", "Булат 3" (похожих на STARAN). Технология РЕФАЛ имела успех вплоть до 1993 г., пока в стране разрабатывалась отечественная вычислительная техника и была потребность в создании собственных компиляторов.
Работы, связанные с языком РЕФАЛ, продолжаются в ИПМ и в настоящее время.
Другим направлением деятельности отдела М. Р. Шуры-Буры в области языков и систем программирования было создание и реализация непроцедурного языка программирования "Норма". Эти работы были выполнены под руководством И. Б. Задыхайло. Они были направлены на решение проблемы высокоуровневого синтеза при проектировании прикладных программ.
Широкую известность в стране и за рубежом получили исследования в области теории сложности вычислений и логических программ. Многие результаты, полученные в ИПМ в этой области, стали теоретической базой для создания крупных инструментальных систем автоматизации логического программирования. В частности, такой системой является "ГЕСИОД", синтезирующая логические программы на основе их действующих прототипов.
Большое внимание М. Р. Шура-Бура всегда уделял подготовке молодых специалистов, он воспитал несколько поколений программистов высшей квалификации. В 1955-1970 гг. он - профессор кафедры вычислительной математики механико-математического факультета МГУ, которой руководил академик С. Л. Соболев. В 1970-1991 гг. М. Р. Шура-Бура был профессором и заведующим кафедрой системного программирования факультета вычислительной математики и кибернетики (ВМиК) МГУ, организованного академиком А. Н. Тихоновым. Первый учебник по программированию "Программирование для электронных счетных машин", изданный в 1952 г., М. Р. Шура-Бура написал в соавторстве с Л. А. Люстерником, А. А. Абрамовым, В. И. Шестаковым.
М. Р. Шура-Бура более 30 лет руководит постоянно действующим Московским городским семинаром по программированию, который является наиболее авторитетным научным органом российских программистов. Вряд ли в России была защищена хоть одна докторская диссертация по программированию, которая не прошла бы предварительной апробации на семинаре у М. Р. Шуры-Буры.
Сам Михаил Романович за прошедшее время подготовил более 30 кандидатов наук и 8 докторов наук.
С первых лет создания отечественных вычислительных машин М. Р. Шура-Бура выступал на всесоюзных форумах по главным вопросам их программного обеспечения. Этим вопросам были посвящены его выступления:
- на Всесоюзной конференции "Пути развития советского математического машиностроения и приборостроения" в 1956 г.;
- на сессии АН СССР по научным вопросам автоматизации производства в 1956 г. (пленарный доклад совместно с М. В. Келдышем и А. А. Ляпуновым);
- на третьем Всесоюзном математическом съезде в 1956 (доклад совместно с К. А. Семендяевым и Д. А. Жучковым);
- на четвертом Всесоюзном математическом съезде в 1963 г. (доклад совместно с А. П. Ершовым)
Завершая краткий очерк о научной биографии М. Р. Шуры-Буры, следует отметить, что наилучшие комментарии к нему могут быть даны самим Михаилом Романовичем. Поэтому кроме настоящей статьи на сайте музея в разделе "История программного обеспечения в СССР" помещены:
- текст публикации "Становление и развитие программирования в СССР", написанной М. Р. Шура-Бура и А.П. Ершовым (ее перевод на английский язык напечатан в сборнике A History of computing in the Twentieth Century. Ac. Press. 1980);
- текст статьи "Программирование и архитектура ЭВМ", написанной М. Р. Шура-Бура как общий обзор работ ИПМ в этой области.