Михаил Романович Шура-Бура — патриарх отечественного программирования и его разработки

23b59d56161c47498c348e6d7a5357c0.jpg33c9322aae004648b8a28080d8e8b396.jpg

Михаила Романовича Шура-Бура — прекрасный ученый, который внес огромный вклад в создание и разработку первых отечественных ЭВМ. Известен также как создатель первой ПП (программирующей программы), интерпретирующей системы ИС-2 для машины М-20. Вспоминая о космическом корабле Буран, нельзя не упомянуть фамилию Михаила Шура-Буры, который был одним из разработчиков программного обеспечения для корабля.

Родился Михаил Романович 21 октября 1918 года в селе Парафиевка (Украина, Черниговская область), куда его родители переехали из Киева, так как началась гражданская война и нужно было как-то прокормить семью. Дед был простым деревенским кузнецом, отец окончил университет и практиковал адвокатскую деятельность.
Позже родители переехали снова в Киев, и дела пошли в гору.

Отец Михаила Романовича стал успешным адвокатом. Условия в которых жила семья были довольно таки комфортными, комфортная квартира, хорошие вещи. В оперном театре для семьи была выделена своя ложа. Отец, будучи адвокатом, решил все же получить второе образование и поступил в политехнический институт, окончив который стал работать инженером-экономистом. Такое мудрое решение спасло его от преследований (а возможно и смерти) интеллигенции в годы репрессий. В 1933 году семья переехала в Москву. В возрасте 96 лет отец ушел из жизни. Мать Михаила Романовича была родом из города Касимова (Россия, Рязанская область). Занимала не плохую должность зубного врача. В семье еще было две дочери.

В Киеве Михаил окончил семилетку, в Москве экстерном в течении двух лет окончил следующие три класса (8–10). В 1935 году поступил в МГУ на механико-математический факультет.

ef6cc9da31d34ea9a828904c8951023a.JPG
Студенты-математики (все!) 1-го курса мехмата, 1936 год

После окончания университет на отлично, поступить в аспирантуру оказалось для Михаила не так то просто. На счету студента было много выговоров за непосещение таких дисциплин как физкультура и пропуски общественных работ. Почти похоронив идею с аспирантурой Михаил собирал вещи, чтобы ехать по распределению работать учителем математики в какую-то деревенскую школу на Урал, но декан Лев Абрамович Тумаркин взял его ассистентом на кафедру Артиллерийской академии им. Дзержинского. И вот второй раз за жизнь судьба спасла Михаила Романовича (как и в случае с его отцом) от гибели. Так как, не поступив в аспирантуру, он не попал в университетское ополчение, в котором позже погибло большинство его друзей.

91db7f1bbed24a70942fab6a0d15c597.JPG
с ближайшими друзьями

В Артиллерийской академии во время войны была нужда в специалистах, которые могли бы делать расчеты по баллистике. Михаил и был таковым. Вместе с академией отправился в эвакуацию в город Самарканд. Академия создавала новые виды вооружения, пушки и снаряды. Михаил Романович активно участвовал в расчетах.

В 1944 году, вернувшись из эвакуации и продолжая работать в Академии, он все же пополнил ряды аспирантов при НИИ математики МГУ. В 1947 году он защитил кандидатскую диссертацию по типологии и был направлен преподавателем на физико-технический факультет МГУ. Как вспоминал в одной из бесед Михаил Романович, это было интересное время для науки. В том же 1947 году, увлеченный прикладной математикой и программированием, ученый был переведен в институт точной механики и вычислительной техники. Здесь он активно принимал участие в налаживании машин, которые были созданы Лебедевым (БЭСМ и Киевской МЭСМ).

В начале 1953 года в институте Математики им. Стеклова начало работать Отделение прикладной математики (сейчас ИПМ РАН им. М.В. Келдыша), где на протяжении 50 лет Михаил Романович усердно трудился как руководитель отдела программирования в ИПМ. Вместе с ним этом отделе работали выпускники механико-математического факультета МГУ И.Б. Задыхайло, Э.З. Любимский, В.В. Луцикович, Т.А. Тросман, В.С. Штаркман.

«Как мы победили Стрелу!»

1c36fc76eecc4a1ea78ee21dc3b131c7.jpg

Перед учеными была поставлена задача, теоретически рассчитать термоядерный взрыв и попробовать сделать это на вычислительной машине. Сразу же была создана группа специалистов под руководством К.А. Семендяева. Понятное дело, все это стоило баснословных денег и усилий. Для работы в отделении прикладной математики была предоставлена вычислительная машина Стрела.

В Отделение прикладной математики как раз была поставлена Стрела. Машина работала плохо, в ней было всего 1000 ячеек, неработающий накопитель на магнитной ленте, частые сбои в арифметике и масса других проблем, но, тем не менее, мы сумели справиться с задачей — сделали программу для расчета энергии взрывов при моделировании ядерного оружия, или, как я говорил тогда; «Сумели победить Стрелу!».


Стрела начала выпускаться в 1953 году. Конструкция машины представляла собой двухрядные стойки с монтажем внутрь межстоечного коридора. Сменные ячейки вставлялись с внешней стороны каждого ряда стоек. Потребляла такая ЭВМ 150 кВт (процессор — 75 кВт) и занимала 300 кв. м, из них процессор занимал 150 кв. м. В конструкции машины было использовано около 6 тысяч электронных ламп и несколько десятков тысяч полупроводниковых диодов. Ее быстродействие равнялось 2 -3 тысячам трехадресным командам в секунду, ввод информации осуществлялся с устройства ввода перфокарт или с магнитной ленты. Магнитная лента, перфоратор карт или широкоформатное печатающее устройство служили для вывода информации. Стреле было присуще наличие нескольких типов групповых арифметических и логических операций, условных переходов и сменяемых стандартных программ. Благодаря системам контрольных тестов и организующих программ стало возможным сосдавать библиотеки прикладных программ различного тематического направления обьемом до 100 миллионов команд.

Новшества «воплощеные» в Стреле: выполнено матричное исполнение блока умножения на диодах, разработано и использовано оперативное ЗУ на 43 специализированных запоминающих электроннолучевых трубках.

Стрела оказалась как бы идейным противником БЭСМ. Машина Сергея Алексеевича Лебедева была более передовой, более перспективной, с хорошей арифметикой, но Стрела — поскольку в промышленности было больше денег, лучшее снабжение, чем в академическом институте, была, скажем так, аккуратнее сделана.Обе машины разрабатывались практически в одно время: Стрела — в СКБ-245 Министерства приборостроения, БЭСМ — в ИТМ и ВТ, однако в разных условиях. Министерство «сделало ставку» на Стрелу и для нее ничего не жалело. Например, если для ЗУ в Стреле были выданы потенциалоскопы, то БЭСМ довольствовалась памятью на ртутных трубках, да и те Лебедеву приходилось выклянчивать, на что он мне неоднократно жаловался. БЭСМ была хорошая, отличная машина, но… ее нельзя было повторить. Она все-таки больше была макетом, а не машиной, готовой для серийного выпуска. На нее даже не было заведено таких документов, по которым ее можно было бы выпускать промышленностью.


Из-за неустойчивой работы ЭВМ расчеты по моделированию атомного взрыва приходилось разбивать на этапы. Каждый этап выполнялся не менее двух-трех раз с созданием контрольных точек, обеспечивавших продолжение эксперимента без возврата к ранее проведенным вычислениям. Вот с таким трудом удалось победить Стрелу.

В 1955 году Михаил Романович был удостоен Сталинской премии СССР за вклад в создание ядерного оружия.

Команда программистов ИПМ была способна создавать самые сложные программы, в том числе и для решения задач, связанных с космосом. Как вспоминал Михаил Романович, их отдел напоминал рассадник программирования. Испытав в полном обьеме трудности ручного программирования, перед отделом стал вопрос о автоматизации программирования:»… У себя в ИПМ мы, в частности начали учить программированию всех кругом. Когда возникала какая-то большая задача, мы отстегивали группу людей в другой отдел, который над этой задачей работал. Получалось так, что благодаря нашему «десанту» сотрудники отделов научались программированию и, кроме того, некоторые «десантники» в этих отделах оставались на постоянную работу».

В начале такая деятельность по автоматизации даже вызывала бурю негатива со стороны математических отделов, на партсобраниях поднимался вопрос о том, что сотрудники отдела ИПМ занимают ЭВМ для «игрушек». На машине отрабатывали технологию прохождения задач, двойные просчеты, контрольные суммирования, при этом улучшали качество программ в Стреле.

Оплачивалась такая работа очень хорошо, часто выделялись премии. За два месяца Михаил Романович мог получить до 16 000 рублей, а это была колоссальная сумма на то время.

Программы, которые были разработана отделом, возглавляемым Михаилом Романовичем в середине 50 годов для ЭВМ Стрела и М-20, использовались для расчетов искусственных спутников Земли, они обеспечивали круглосуточный режим обработки измерений траекторий ИСЗ. Точность траекторных расчетов была очень важна и при запуске первых ИСЗ и полете Гагарина, программами пользовались до 1967 года. Все расчеты велись в реальном маштабе времени, что требовало огромных усилий от специалистов. Ведь не все было так гладко:»… спутник летает, по линиям связи поступает информация, операторы пробивают карточки, у нас в зале их надо засовывать в машину, надо считать, а тут звонят из управления полетов, а тут еще и машина сломалась. Одним словом, кошмар!»

В 1963 году под руководством Шуры-Буры был создан один из трех трансляторов с языка АЛГОЛ-60 для ЭВМ М-20 — транслятор ТА-2 с полной версией языка АЛГОЛ-60.

8e1f73b09952446291c5dc96312dc7e0.JPG
Установка на М-20 транслятора АЛГОЛ-60

АЛГОЛ-60 как и наиболее распространенные и известные языки программирования такие как Фортран, Кобол, ПЛ-1, Алгол-68, Паскаль, Ада принадлежат фактически к одному семейству, в основе которого — класс языков операторного, процедурного типа. Типичный язык для описания и представления алгоритмического знания.

2e76c3de42e7436ea0e39aa82c29a138.png
ЭВМ М-20

Позже сотрудниками отдела под «пристальным» руководством Михаила Романовича были разработаны системы программирования для БЭСМ-6 и других ЭВМ.

Космического челнок Буран


В 80 годах Турчиным, который был сотрудником отдела Михаила Романовича был разработан инструмент системного программирования для разработки компиляторов в ИПМ — всем известный РЕФАЛ.

650c50a0c19a4421b458cd66c6680b3f.png

Технология РЕФАЛ была применена при создании компиляторов ФОРТРАН для ЭВМ ПС-3000, ЕС 1191, масштабируемого компилятора бортового модуля программного обеспечения космического корабля Буран, программного обеспечения изделий специализированной техники Булат 2, Булат 3


Многоразовый орбитальный корабль (по терминологии Минавиапрома — орбитальный самолет) Буран или, как его еще называют, советский шаттл. В 70 годах, после того как появилась информация об американской программе космических челноков «Спейс ­шаттл», было решено без промедления строить отечественный многоразовый корабль. В 1981 году всем, кто работал над созданием Бурана было »… приказано не спать, не пить, не есть, а быстро делать нашу советскую альтернативу Колумбии, которую американцы до этого времени уже запустили.

К проекту было подключено множество разных организаций. Одним словом — Буран делала вся страна. Программисты взаимодействовали между собой и со специалистами по бортовым системам. Остро стала проблема языков программирования, обеспечения эффективного сотрудничества всех разработчиков программной части системы управления орбитального корабля.

12ade5509dcb499696f1facfe6997a3d.JPG
Президент АН СССР Г.И. Марчук вручает Орден Ленина за работы по проекту Буран

Программный отдел Михаила Романовича Шуры-Буры принимал активное участие в создании комплекса языков для написания исходных кодов программ и инструментариев, которые позволили бы перейти от исходных текстов к отработанным, проверенным, должным образом смоделированных обьектным кодам, хранящимся в бортовой и наземной аппаратуре.

Общими усилиями программистов и специалистов по бортовым системам было создано два языка программирования — ПРОЛ-2 (специальный проблемно-ориентированный язык программирования реального времени на базе русских служебных слов) для разработки бортовых систем и Диполь для разработки наземного проверочного ПО, а также специальный язык описания объектов Флокс, который обеспечивал объединение их между собой, язык моделирования Лакс. Позже эти три языка были заменены одним универсальным, удобным и хорошо продуманным — графическим языком ДРАКОН.

Заслуги отделения ПМ Михаила Романовича Шуры-Буры

Создание ЕС ЭВМ и СМ ЭВМ было крупнейшим совместным проектом социалистических стран. В реализации проекта приняли участие 20 тысяч ученых и конструкторов, 300 тысяч рабочих и техников на 70 заводах.

В1979 году в социалистических странах было разработано 240 типов устройств ЕС ЭВМ. За годы сотрудничества разработан 31 тип процессоров, из них 17 — в СССР.

67f5978de1db4b78bb9bddc9b9d96f75.png

Все это происходило не без участия отдела программирования ИПМ Михаила Романовича. Перед ними стояла задача обеспечить программную совместимости ЕС ЭВМ с наиболее распространенным на Западе семейством — IBM/360. На семинарах, которые были посвящены данной проблеме, изучали архитектуру и программное обеспечения IBM/360.

В 1978 году была завершена работа по разработке программного обеспечения ЕС (единой системы) ЭВМ. За это Шура-Бура был удостоен Государственной премии СССР.

Еще одной заслугой отдела Шуры-Буры было создание оригинальной архитектуры скалярно-векторной многопроцессорной ЭВМ ЕС 1191, хотя эту машину нельзя было назвать удачной из-за того, что была применена только отечественная элементная база, которая значительно уступала западной (1,5 тысяч вентилей/кристаллов по сравнению с 200 тысячами). А вот ее программное обеспечение соответствовало мировому уровню.

Создания операционной системы для ЭВМ Весна — также нужно записать на счет Отделения прикладной математики Михаила Романовича. Это была первая в СССР полнофункциональная операционная система для серийной ЭВМ, которая поддерживала мультипрограммный режим работы, пакетную обработку и режим разделения времени.

159895e47ea64e6f84dc2f3ff7194639.png
Высокопроизводительная полупроводниковая вычислительная машина общего назначения Весна

Создание и реализация непроцедурного языка программирования Норма было также выполнено программным отделом под руководством Шуры-Буры. Первичными элементами языка Норма являются символы (буква, цифра и специальные символы). Идентификаторы могут иметь любую длину, число значащих символов определяется в описании входного языка транслятора, буквы верхнего и нижнего регистров различаются, тип и значение константы определяется способом ее написания.

e56a45fcf7f04f578e926891513a5651.png
Ключевые слова

e54bcb3d23814a41b40d05653d53bf7c.png
Запись константы

'Hello, world!'
'Об''ем тела'

Запись строки

Широкую известность в стране и за рубежом получили исследования в области теории сложности вычислений и логических программ. Многие результаты, полученные в ИПМ в области теории сложности вычислений и логических программ стали теоретической базой для создания крупных инструментальных систем автоматизации логического программирования (например система ГЕСИОД).

Много времени и внимания ученый уделял подготовке молодых специалистов, его воспитанниками были несколько поколения программистов высшей квалификации. Первый учебник по программированию был написан им в соавторстве с Люстерником, Абрамовым, Шестаковым («Программирование для электронных счетных машин»)

Являясь одним из основателей информатики в СССР, Михаил Романович Шура-Бура внес существенный вклад в создание и освоение первых образцов ЭВМ. Он был пионером автоматизации программирования, создателем первой в СССР ПП. Его работы сыграли важнейшую роль в распространении в СССР алгоритмических языков как средства программирования. Под руководством Михаила Романовича был создан первый в СССР транслятор с полного языка Алгол-60, разработана для машины М-20 интерпретирующая система ИС-2.

Огромен его вклад в проектирование конструкций отечественных ЭВМ. Шура — Бура разработал логическую структуру машины М-20, логику и систему мультипрограммирования ЭВМ Весна.

Решающим был и его вклад в создание программного обеспечения космического корабля Буран.

В 1970–1991 годах Михаил Романович Шура-Бура был профессором и заведующим кафедрой системного программирования факультета вычислительной математики и кибернетики (ВМиК) МГУ.

be127e78f72849258a75d9fc6f656655.JPG
В музее астронавтики. Вашингтон, 1992 год

Выдающийся учёный, создатель электронно-вычислительной техники Михаил Романович Шура-Бура скончался 14 декабря 2008 года в возрасте 90 лет. Его время было насыщено практически круглосуточным трудом, ведь, как он говорил, находился на переднем краю науки.

0aaaa6bc36584372864cdec590d9ff0e.JPG
Михаил Романович с семьей


По традиции, немного рекламы в подвале, где она никому не помешает. С подробностями акции вы можете ознакомиться тут.

© Habrahabr.ru