Почему отечественные ЭВМ в средствах вооружения делают их не хуже западных?
Владимир Липаев
В открытом письме – отклике на фильм Г. Кричевского "Жизнь под грифом «секретно»" рассмотрены некоторые общие недостатки и искажения действительности в фильме. В киноленте проводится идея, что вычислительная техника в Советском Союзе шла по пятам за зарубежными достижениями и в той или иной степени была обязана своим существованием западным специалистам. Однако возникает вопрос, почему созданные в 60–80-х годах системы и средства военной техники по своим характеристикам были и в ряде случаев остаются по крайней мере не хуже зарубежных аналогов? Попытаемся ответить на этот вопрос.
Практически во всех современных системах военного назначения используются вычислительные машины с соответствующими комплексами боевых программ управления и обработки информации. Они обеспечивают решение основных функциональных задач для систем противовоздушной и противоракетной обороны, для контроля космического пространства и управления полетом в авиации и в космосе, для управления войсками и средствами вооружения разных видов. Эти задачи принципиально отличаются по своему характеру от традиционных вычислительных задач в гражданских областях тем, что в них преобладают логические операции, они масштабны и выполняются в реальном времени.
Была целая историческая эпоха (50–80-е годы), когда вычислительная техника (ВТ) в Советском Союзе создавалась и развивалась самостоятельно и ее уровень был близок к зарубежному. До сегодняшнего дня многие оригинальные типы отечественных вычислительных машин, созданных в 70–80-х годах, успешно эксплуатируются и решают функциональные задачи на самолетах, космических кораблях, подводных лодках и других оборонных объектах. Практическое отсутствие, а в ряде случаев искажение этих результатов в средствах массовой информации и желание хоть частично восстановить историческую справедливость стимулировали автора на данную публикацию.
В 50–80-х годах в Советском Союзе ВТ и программирование развивались по двум почти независимым направлениям. Первое – народно-хозяйственное – достаточно полно отражено в фундаментальной книге Б. Н. Малиновского "История вычислительной техники в лицах" (1995 г.). Второе не менее интенсивно и широко развивалось на предприятиях ВПК. К концу 50-х годов в оборонных отраслях промышленности и в организациях Министерства обороны страны проявилась потребность в применении ЭВМ для решения задач обработки информации и управления в военных системах. Для реализации таких функций были необходимы значительные ресурсы памяти и производительности ЭВМ, а также большие коллективы специалистов, способные создавать крупные комплексы алгоритмов и программ в допустимые сроки.
Второе направление развития ЭВМ почти одновременно начало формироваться в оборонных отраслях промышленности и на предприятиях в нескольких проблемно-ориентированных областях для сухопутных, авиационных, морских, ракетных и других систем. Для последующего развития существенными оказались особые требования заказчиков из различных областей применения, которые разделили эту категорию ЭВМ на стационарные, работающие в помещениях, и мобильные, размещаемые на подвижных (транспортабельные) или движущихся (бортовые) объектах. Таким образом были определены принципиальные различия в архитектуре и технических характеристиках двух классов ЭВМ военного назначения. Первый класс тяготел к архитектурам и конструктивам обычных универсальных машин с необходимыми расширениями и модификациями для специализированного применения. Машины второго класса по своей специфике значительно отличались от остальных типов ЭВМ, на них мы и акцентируем внимание в статье. Все работы проводились в режиме строгой секретности, и каждая функционально законченная система создавалась практически независимо как от зарубежных достижений, так и от результатов, полученных на других отечественных предприятиях. Аналогичные процессы, как выяснилось позже, происходили в развитии военных ЭВМ в США.
Ввиду особенностей функциональных задач и сфер применения, а также из-за жестких межведомственных барьеров и требований секретности обмен информацией о разработках мобильных ЭВМ между специалистами разных отраслей и предприятий в стране был сильно ограничен. Почти отсутствовала информация и о технических характеристиках и принципиальных особенностях военных машин этого класса за рубежом. Естественно, что такая ситуация привела к " вавилонскому столпотворению" сотен типов архитектур и характеристик машин. Практически независимая разработка такого широкого спектра ЭВМ, конечно, обходилась очень дорого, однако в результате появлялось множество оригинальных, очень эффективных технических решений, что долго способствовало сохранению паритета с Западом в различных областях военной техники.
Ориентация на решение конкретных функциональных задач и конструктивные требования по минимизации веса и габаритов определяли предельно лимитированные ресурсы памяти и производительности военных ЭВМ. Отсутствие избыточности ресурсов заставляло разработчиков и заказчиков искать компромисс между широтой реализуемых функций, сложностью алгоритмов решаемых задач и необходимым результатом функционирования систем. Им приходилось заботиться об экономии используемых ресурсов и поиске любых архитектурных и технических возможностей алгоритмов и программ для совершенствования качества решения задач в этих условиях.
Жесткие ограничения по габаритам и массе, высокие и очень разнообразные требования к климатическим характеристикам, допустимым механическим перегрузкам и надежности функционирования не могли быть удовлетворены одним типом машин. В результате развивалась широкая гамма конструктивов для ЭВМ военного назначения. Особенности функциональных задач отражались на архитектуре машин и структуре их операций. Вследствие этого к концу 70-х годов сформировался очень широкий спектр (около 300) типов мобильных ЭВМ военного назначения, различающихся архитектурой и структурой команд, а также конструктивным оформлением, зависящим от областей применения.
Отсутствие в 50–70-х годах развитой централизованной промышленности электронных компонентов для ЭВМ явилось причиной того, что зачастую их разрабатывали те же предприятия, которые создавали ЭВМ и системы управления в целом. Вследствие этого элементная база часто не отличалась высоким качеством и технологическим уровнем. В ситуации, когда многим предприятиям оборонных отраслей приходилось вести разработку систем по полному циклу, начиная с создания элементной базы ЭВМ, всей вычислительной техники и программного обеспечения, не только появлялось множество параллельных, неунифицированных разработок, но и значительно увеличивало длительность и стоимость проектов.
Развитие технологии производства и элементной базы военных ЭВМ не поспевало за возрастающим спросом на ресурсы памяти и производительности, необходимые для реализации все новых задач заказчиков. Одновременно очень быстро увеличивалась сложность и ответственность задач управления, возлагаемых на ЭВМ, что обуславливало рост требований к качеству, надежности функционирования и безопасности применения систем. Оригинальный путь решения этой проблемы в отечественной вычислительной технике состоял в тщательной адаптации архитектуры и системы команд управляющих и мобильных ЭВМ к алгоритмам и программам прикладных задач и проблемно-ориентированным сферам применения.
Поскольку многие системы управления военного назначения с мобильными ЭВМ предполагались для применения в небольшом количестве (единицы, десятки или сотни экземпляров), разработчики ориентировались на оригинальные технические решения, пренебрегая унификацией и стандартизацией аппаратуры, программ и технологий производства. ВТ адаптировалась к задачам конкретных заказчиков, чьи ведомства не координировали между собой технические требования к продуктам. Особенно это проявлялось в многообразии машин и программных комплексов в многочисленных авиационных и ракетных системах.
При создании требований к мобильным ЭВМ военного назначения необходим был детальный анализ алгоритмов и программ, подлежащих реализации. Относительно узкая ориентировка каждого типа ЭВМ на совершенно определенные задачи открывала возможность значительной экономии оборудования и улучшения характеристик по памяти и производительности на имеющейся элементной базе. Поэтому целесообразно представить основные особенности функциональных задач мобильных военных систем, которые учитывались при проектировании для них специализированных ЭВМ.
Одна из важнейших таких особенностей состоит в том, что большинство процессов в мобильных системах протекает очень быстро и для принятия и реализации решений допустимое время реакции исчисляется секундами или даже долями секунды. Поэтому вычислительные средства должны обеспечивать обработку информации и подготовку управляющих воздействий с высоким темпом, соответствующим динамическим процессам во внешней среде системы управления. Это определяло такое требование, как реализация всех вычислительных процессов в регламенте жесткого реального времени и малое допустимое запаздывание реакции на поступающую внешнюю информацию.
С самого появления ВТ системы военного назначения отличались широким спектром принципиально новых и очень разнообразных, преимущественно логических задач. Для их решения разрабатывались новые алгоритмы, которые должны были ориентироваться на практически реальные условия и доступные ресурсы при выполнении в соответствующих мобильных ЭВМ. В программах специализированных управляющих ЭВМ военного назначения проявилась принципиальная особенность, состоявшая в том, что существует два вида переменных – квантованные (оцифрованные) результаты измерения характеристик или координат внешних объектов и логические признаки объектов и их функционирования.
Значительная часть исходных данных в рассматриваемых системах являлась результатом квантованных измерений непрерывных физических величин – координат объектов и их скорости, показаний датчиков напряжения, давления и т. д. Относительно невысокая точность этих данных определяла рациональную разрядность квантования их значений для обработки и хранения на ЭВМ. Поэтому структура разрядной сетки и операции с частью слова выбирались в соответствии с числом разрядов наиболее часто используемых величин, что позволяло экономить объем аппаратуры. В итоге были созданы машины с различной базовой разрядностью памяти и основных операций – 16, 18, 20, 24, и т. д. разрядов.
Логические операции в программах производились, как правило, с малоразрядными величинами или даже с отдельными битами. Для их выполнения было целесообразно ориентировать процессоры ЭВМ на удобную и быструю работу с величинами соответствующей структуры и вводить значительное количество специализированных логических операций с различными частями слова (1–6 разрядов). Такая ориентация конструкции машин на особенности основных, функциональных задач позволяла при относительно слабой элементной базе достигать необходимых характеристик по использованию памяти и производительности мобильных ЭВМ.
Функциональные задачи многих военных систем управления в реальном времени характеризуются интенсивными случайными потоками неоднородных данных, длительности обработки которых являются также случайными величинами. Эти длительности во многом зависят от типов поступающих данных и характера их обработки. Определенное ограниченное целевое назначение рассматриваемых систем при их использовании выдвигало конкретные, относительно простые требования к управлению вычислительными процессами на ЭВМ в реальном времени. Вследствие этого операционные системы мобильных военных ЭВМ не содержали универсальных компонентов, предназначенных для различных вспомогательных, в том числе технологических задач. Такие компактные специализированные операционные системы обеспечивали минимум необходимых функций по диспетчеризации процессов решения функциональных задач, по обмену информацией с внешними абонентами и контролю вычислительного процесса, а также содержали специальные средства для повышения надежности функционирования и рестарта при проявлениях дефектов, сбоях и отказах.
К концу 70-х годов разработкой программ для систем военного назначения в нашей стране занималось около ста тысяч специалистов, которые одновременно создавали сотни сложных комплексов программ. Малые ресурсы мобильных ЭВМ заставляли отечественных алгоритмистов и программистов искать и создавать очень экономные по использованию ресурсов решения сложных задач, что отличало их от зарубежных аналогов. Повышение уровня языков программирования значительно увеличивает потребность в памяти и производительности ЭВМ и довольно слабо влияет на общую производительность труда специалистов при разработке сложных комплексов программ для этих машин. Последнее обстоятельство обусловлено относительно малыми затратами на программирование в жизненном цикле комплексов программ военного применения, где большую долю (до 70–80%) составляют затраты на проектирование, комплексную отладку и испытания систем. Широкое применение машинно-ориентированных языков программирования уровня ассемблера объясняется требованием экономить ресурсы мобильных ЭВМ и недопустимостью заметного (в два-три раза) расширения объектного кода программ, что неизбежно при использовании и трансляции с языков высокого уровня.
В американские военные системы с конца 60-х годов прочно вошли алгоритмические языки высокого уровня, что определялось, с одной стороны, большими ресурсами военных ЭВМ, а с другой – более высокой стоимостью труда программистов и необходимостью повышения их производительности. Так что применяемые ими алгоритмы и программы не отличались эффективностью в использовании ресурсов.
Для повышения производительности труда отечественных специалистов в середине 60-х годов получила активное развитие автоматизация программирования для мобильных систем, для чего использовались универсальные технологические ЭВМ, которые располагали большими ресурсами, имели различные архитектуры, по конструкции и структуре команд отличались от управляющих ЭВМ. Это позволяло создавать высокоэффективные программы мобильных ЭВМ на независимой технологической базе. В дальнейшем производительность труда разработчиков программных комплексов повышалась в основном за счет накопления и многократного повторного использования в проектах различных систем и апробированных программных компонентов.
Только в начале 80-х годов проявилась тенденция к унификации архитектуры мобильных военных ЭВМ. Она была обусловлена необходимостью резкого ускорения и автоматизации разработки программ. Их архитектуру стали ориентировать на наиболее распространенные в стране ЭВМ типа СМ и ЕС. Предполагалось, что это позволит полностью отрабатывать комплексы боевых программ на универсальных машинах, а затем без изменения переносить их на управляющие. Однако специфика управляющих ЭВМ реального времени не полностью отражалась в универсальных ЭВМ, вследствие чего окончательную комплексную отладку и испытания приходилось проводить на реальных управляющих машинах. Этот процесс развивался очень медленно вследствие огромного объема "унаследованных" программ, уже используемых в различных системах.
Таким образом, некомпетентность в области вычислительной техники и истории ее развития, а также погоня за сенсацией привели авторов фильма к искажению, опорочивающему реальную отечественную историю создания и применения вычислительных машин для средств и систем обороны. Современное поколение наших специалистов в области информационных систем привыкло работать только с импортными вычислительными аппаратными и программными средствами и не представляет себе возможности обойтись без них. Однако усилиями множества специалистов предприятий ВПК сорок лет обеспечивалось поступательное и многостороннее развитие систем управления и обработки информации, которые позволили создать и длительное время сохранять паритет с Западом в различных областях военной техники. Создание специализированных мобильных вычислительных машин и программ для них еще долго будет оставаться актуальным для критических областей их применения в космосе, авиации, морском флоте.
Путь оригинального и независимого развития отечественной вычислительной техники в ранее закрытых областях необходимо объективно отразить в средствах массовой информации. В этой истории есть много достойных страниц, и их не следует прятать в архивах за семью печатями, а необходимо сделать доступными для того, чтобы дать справедливую оценку достижениям и просчетам и извлечь уроки из накопленного опыта. И здесь нужно активно привлекать прежде всего тех, кто непосредственно участвовал в таких работах в многочисленных "ящиках".