Очерки истории отечественной программной инженерии в 1940-е – 80-е годы - Владимир Липаев
Шрифт:
Интервал:
Закладка:
Значительные трудности реализации операционных систем реального времени в начале 1960-х годов состояли в неопределенности параметров временных динамических процессов поступления, длительности обработки и выдачи информации потребителям, а также в ограниченности производительности и ресурсов ЭВМ для размещения операционных программ. Все эти процессы решения функциональных и операционных задач управления должны были укладываться в те ограничения производительности ЭВМ, которые были доступны разработчикам в эти годы. К сожалению, в это время в отечественной и зарубежной литературе практически отсутствовали публикации по методам и организации операционных систем ЭВМ реального времени, все инженерные разработки и исследования в этой области проводились для конкретных проектов как секретные на соответствующих оборонных предприятиях.
Для эффективной реализации требований к функционированию системы вскоре были созданы и исследованы математические и статистические модели процессов конкретных операционных систем реального времени. Эти исследования базировались на достаточно развитой теории массового обслуживания и теории расписаний, применявшихся в различных инженерных областях, что позволило несколько улучшить качество функционирования операционных систем реального времени. В первых версиях операционных систем реального времени реализовывались бесприоритетные дисциплины, а затем они усовершенствовались и стали применяться дисциплины упорядочивания решения функциональных задач с учетом их относительных и абсолютных приоритетов. Такое построение операционных систем реального времени повышало эффективность использования ресурсов производительности и памяти ЭВМ на 10–15 %. Однако эти дисциплины не могли кардинально повысить производительность ЭВМ, часть низкоприоритетных задач могла пропускаться, сообщения терялись не использованными. Накопление и обобщение опыта и знаний о процессах и системах решения задач позволили сформулировать следующие требования к сложным операционным системам ЭВМ реального времени для автоматизации обработки информации о динамических объектах в системах:
• в процессах управления решением задач должно использоваться единое глобальное реальное время систем управления и обработки информации о динамических объектах, а также об изменениях внешней среды;
• потоки сообщений для обработки данных из внешней среды могут быть независимыми, несинхронными, различными по интенсивности, содержанию, реальному времени формирования и поступления для обработки;
• информация в сообщениях от источников и объектов внешней среды должна содержать реальное время, к которому относятся характеристики сообщений, их координаты и текущие состояния;
• реальное время решения различных функциональных задач должно эффективно упорядочиваться в соответствии с их приоритетами, установленной дисциплиной диспетчеризации, определенной при производстве системы, и реальным временем приема информации из внешней среды;
• алгоритмы и программы функциональных задач системы могут различаться по длительности решения и важности для пользователей, должны включать и использовать текущее и расчетное реальное время результатов решения и исходной информации;
• информация и сообщения для потребителей и внешней среды могут выдаваться асинхронно, в соответствии с установленной дисциплиной и содержать значения реального время, которому соответствуют обработанные данные в сообщениях.
Полное отсутствие информации о подобных разработках систем в эти годы на Западе и на соседних оборонных предприятиях обеспечивало оригинальность технических решений, которые, в ряде случаев, впоследствии оказались новыми, принципиальными и достаточно универсальными для территориальных вычислительных систем реального времени различного назначения.
В начале 1960-х годов был промоделирован, исследован, решен и практически апробирован ряд научно-технических задач создания программных средств реального времени для обработки радиолокационной информации на специализированных ЭВМ (В.В. Липаев, Л.А. Фидловский). Каждая радиолокационная станция имеет ограниченную зону наблюдения о воздушных объектах. Воздушный объект мог наблюдаться одновременно несколькими РЛС или ни одной. Для успешного управления активными средствами ПВО необходимо было обеспечивать возможности непрерывного использования информации о таких объектах и формирования их траекторий движения в широком пространстве. Для этого данные о трассах воздушных объектов по телекодовым каналам связи обменивались между соседними РЛУ, и при последовательном их наблюдении координаты каждого объекта обобщались в единую трассу.
Один и тот же воздушный объект мог фиксироваться в пространстве в различные моменты реального времени, которое передавалось в составе сообщений на другие соседние РЛУ. Кроме того, сообщения могли задерживаться при ожидании в очереди для передачи в телекоммуникационные каналы связи и поступать для обобщения с измененным реальным временем. Таким образом, перед обобщением координаты и параметры движения объектов от различных источников для устранения в них различия реального времени необходимо было их пересчитывать (экстраполировать) к значению единого времени на момент обобщения координат объекта.
Достоверность координат и параметров движения одного и того же объекта от различных РЛУ могла значительно различаться, что приходилось учитывать при их обобщении в единую траекторию. Для обеспечения взаимодействия РЛУ и обмена информацией между ними была создана телекоммуникационная сеть на базе специально выделенных каналов обычных телефонных линий связи. Структура сообщений в сети о наблюдаемых объектах и командах оперативного состава РЛУ была унифицирована, кодировалась и декодировалась в специальных устройствах, сопряженных с компьютерами РЛУ.
В сферу научных исследований и разработок в начале 60-е годов в Советском Союзе (почти одновременно в несколько ином виде в США) вошел и был апробирован новый широкий класс вычислительных систем и телекоммуникационных сетей реального времени – прототип современных информационных глобальных сетей и Интернета. В нем основными компонентами и источниками информации являлись траектории воздушных объектов, характеризующиеся их назначением, координатами и обобщенными параметрами движения, определяющие требования к функциям сложных комплексов программ управления.
4.4. Моделирование динамических объектов для тестирования и испытаний комплексов программ в реальном времени в 1960-е – 80-е годы
Сложные комплексы программ оборонного назначения должны обладать высоким качеством, для чего их необходимо тестировать и испытывать в условиях динамического воздействия информации от внешней среды максимально приближающейся к реальной. Однако создавать специальные полеты самолетов, имитирующих противника, истребителей-перехватчиков, пуски и полет ракет и другие действия средств реальной военной техники для отладки и первичных испытаний программ очень дорого, не рентабельно и опасно. При этом высокая стоимость и риск испытаний с реальными объектами почти всегда оправдывал значительные затраты на интегрированные имитационные системы внешней среды, если предстояли испытания критических программных продуктов с высокими требованиями к качеству функционирования программ, с длительным жизненным циклом и множеством развивающихся версий. Высокая сложность некоторых объектов внешней среды, особенно, если при их функционировании активно участвуют операторы-пользователи, не позволяла полностью автоматизировать всю имитацию тестовых данных, для крупных программных продуктов оборонного назначения. Поэтому при реализации интегрированных проблемно-ориентированных моделей приходилось использовать аппаратурные аналоги реальных объектов внешней среды для формирования части данных. Разумное сочетание реальных объектов внешней среды и программных имитаторов на ЭВМ обеспечивало создание высокоэффективных стендов с адекватными комплексными моделями объектов внешней среды, необходимыми для испытаний программных продуктов в реальном времени [17, 11].
В качестве альтернативы натурным испытаниям с реальными объектами уже в середине 60-х годов стали разрабатываться имитаторы – генераторы тестов, адекватные динамическому поведению реальных объектов внешней среды и средств вооружения. Одними из наиболее сложных и дорогих имитаторов внешней среды, применяемых для испытаний комплексов программ, стали использоваться модели и испытательные стенды: объектов систем противовоздушной обороны, полета космических аппаратов; диспетчерских пунктов управления воздушным движением и другие. В частности, позже, благодаря отладке и испытаниям на имитационно-моделирующих стендах комплексов программ удалось совершить безупречный автоматический полет системы БУРАН. До настоящего времени обеспечивается надежное и устойчивое функционирование ряда орбитальных группировок космических аппаратов различного назначения, в том числе Системы Предупреждения о Ракетном Нападении (СПРН) [13, 14].