ОС БЦВС Ц101, Ц102, Ц200, Багет
Описание файла
PDF-файл из архива "ОС БЦВС Ц101, Ц102, Ц200, Багет", который расположен в категории "". Всё это находится в предмете "технология разработки программного обеспечения радиолокационных систем" из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МАИ. Не смотря на прямую связь этого архива с МАИ, его также можно найти и в других разделах. Архив можно найти в разделе "остальное", в предмете "технология разработки программного обеспечения радиолокационных систем" в общих файлах.
Просмотр PDF-файла онлайн
Текст из PDF
ос Бцвс г 1 1 1 1 1 1 ос ц1ог Программа 1 начального пуска 1 Программа обрабсткн прерыванпя по сигналу гни Программа обрабогкн прерывання по снгнаау ПРНШ-1 Программа начального Программа обрабсткн прерыванн» по снгналу твм пуска Программа ввода н первнчной обработкн ннформапнн Днспетчер мста цгоо Программа управления прнорнтетной очередью Программа ввода н первнчной обработкн ннформапнн Днспсгчер снгналов прерываний 1 1 1 1 1 1 Диспетчер 1 снгнвлов 1 прерываннй 1 1 1 Г 1 1 1 1 1 ОС Цш! Программа 1 начального пуска 1 1 Программа авода н первнчной обработки ннформвпнн Программа обработки прерывання по снгналу твм Рис 4.26.
4.9. ОСОБЕННОСТИ ОПЕРАЦИОННЫХ СИСТЕМ МНОГОМАШИННЫХ БОРТОВЫХ ЦВС На рис. 4.26 представлена иерархическая структура операционной системы БЦВС, содержащей БЦВМ Ц1 01, Ц102„Ц200. ОС БЦВМ Ц101, ОС Ц!02 являются дальнейшим развитием - ОС БЦВМ Ц!00 в части технологии их создания и отработки. Операционная система Ц200 по своим функциям практически не отличается от ОС Ц!01, Ц102, но в силу ограниченности ресурсов вычислителя Ц200 реализована в БЦВМ Ц102. Передача управления той илн другой операционной системе конкрепюй БЦВМ осуществляется программой более высокого уровня ОС БЦВС по установленному приоритету.
Управление вычислительным процессом в Ц200 осуществляется по шине МПИ со стороны БЦВМ Ц1 02. В состав операционной системы реального времени входит следующий базовый набор программ: программа начального пуска, осуществляющая настройку операторов операционной системы под конкретную конфигурацию; диспетчер обработки сигналов прерываний, осуществляющий управление приоритетами обработки сигналов прерываний, контроль за заполнением уровней слова состояния программ и буферов операционной системы, формированием заявок на обработку пакетов функциональных программ; программы обработки прерываний по сигналам от таймеров (ТВМ— таймера временных меток и ТВИ вЂ” таймера временных интервалов); программы обработки си~палов прерываний от внешних источников (ПРВШ!, ПРВШ2); программа ввода и первичной обработки информации.
Результаты отработки ОС БЦВМ Ц100 в составе бортовых управляющих комплексов показали, что особая проблема заключается в поддержке устойчивого функционирования программного обеспечения в реальном времени. Например, блокировка прерываний на время принятия решений операционной системой может привести к увеличению времени реакции на события, появившиеся в этот интервал времени, а иногда, и к их потере, в результате чего может нарушиться временная диаграмма вычислительного процесса. Для решения этой проблемы были разработаны дополнительные функции управления системой прерывания, выполняющие запоминание состояния операционной системы и восстанавливающие ее состояние. Использование этих функций позволило уменьшить время блокировки сигналов прерывания до минимального значения, исключив тем самым потерю событий, появляющихся во время работы операционной системы.
На рис. 4.27 схематично изображено взаимодействие между функциями, реализованными операторами при исполнении ОС РВ. ввон по прврвпюнюо Рис. 4.27 нв фоновую вювву На рисунке двойные стрелки означают взаимодействие по информации, одиночные стрелки - взаимодействие по управлению. В результате выполнения операторов„настроенных на конкретный вычислительный процесс, проводятся последовательно обработка заданных типов прерывания, формирование заявок на запуск пакетов программ, выбор приоритетной заявки с учетом текущего состояния процесса.
Оператор «выбор приоритетной заявки» анализирует приоритеты вновь пришедших заявок («новое слово заявок») и обрабатываемых в текущий момент времени («текущее слово заявок»). Если новая заявка более приоритетная, чем обрабатываемые в текущий момент времени, то оператором запускается пакет программ, соответствующий новой заявке, а текущая запоминается и будет обработана после завершения более приоритетной.
В противном случае приоритетной является текущая заявка и она выбирается оператором для завершения. Идентификатором пакета программ является его номер, который поступает на вход оператора «Запуск пакета программ». В соответствии с номером пакета оператор выбирает номер модуля локального диспетчера данного пакета (НМЛД1) и запускает его. Локальный диспетчер выполняет операторы «формированного связного списка». В свою очередь оператор «формирование связного списка» позволяет записывать необходимую последовательность программ и корректировать ее в зависимости от ситуации. Оператор «управления запуском программ» осуществляет запуск программ и контроль их завершения. Следует отметить, что пакет программ включает программы одного приоритетного уровня.
Состав пакета может меняться в зависимости от внешних воздействий на систему. После обработки всех программ пакета запускается следующий по приоритету пакет и, только завершив обработку всех пакетов, стоящих в очереди, оператор «выбора приоритетной заявки» передает управление фоновой задаче, например тесту текущей проверки БЦВМ. Для БЦВС с Ц101 и Ц102 микропрограммная реализация функций позволила достичь минимального времени выполнения операционной системы.
Например, время от момента входа в операционную систему по прерыванию до запуска пакета программ в среднем составляет 45...50 мкс. 4.10. ОПЕРАЦИОННАЯ СИСТЕМА РЕАЛЬНОГО ВРЕМЕНИ МНОГОПРОЦЕССОРНОЙ БОРТОВОЙ ЦВМ Ц-154 4.10.1. ОРГАНИЗАЦИЯ ВЫЧИСЛИТЕЛЬНОГО ПРОЦЕССА В МНОГОНРОЦЕССОРНОЙЦВМ В основу организации вычислительного процесса при проектировании ОС РВ БЦВМ Ц154 был положен принцип симметричной или однородной обработки программ во всех процессорах. При симметричной орга- низации все процессоры идентичны, поэтому любая задача может обрабатываться любым из них. Процессор, ответственный в данный момент времени за реализацию системных функций, называется мониторным, другие процессоры называются рабочими.
В каждый момент времени мониторным может быть только один процессор, благодаря чему предотврашаются конфликты при работе с глобальной системой информации. Основными функциями мониторного процессора являются обработка прерываний, выполнение программ операционной системы, контроль за состоянием рабочих процессоров и обеспечение функционирования вычислительной системы при отказах одного или двух процессоров. Процесс функционирования распределенной ОС БЦВМ 154 иллюстрируется на рис.
4.28. Рис. 4,28 Нв фововую венвну мониторного нровееоаре Функцией рабочих процессоров является выполнение функциональных программ (запуск и контроль) и организация межпроцессорного обмена. Запуск программ выполняет оператор «запуск блока». Обработка заявок, сформированных по сигналам прерывания или программным путем, начинается в мониторном процессоре с формирования приоритетной очереди заявок («новое слово заявок», см.
рис. 4.28 блок 01). В результате обработки «нового слова заявок» оператором «формирование задания» (блок 02) формируется таблица адресов пакетов программ. Строка таблицы состоит из двух частей, каждая из которых заполняется новым или текущим адресом пакета программных модулей. Если первая часть строки занята текугцим адресом пакета программ, что означает наличие конфликтной ситуации, новый адрес пакета записывается во вторую часть строки.
Запуск пакета программ будет осуществлен после завершения текущей обработки. Такое решение конфликтной ситуации может быть неприемлемо, тогда оставшийся текущий адрес пакета заменяется на новый и происходит запуск с нового адреса. Оператор «запуск задания» (блок 03) считывает сформированный адрес приоритетного пакета, адрес приоритетного пакета поступает на вход оператора «формирование списка» (блок 04), начиная с которого оператор записывает список программных модулей в виде линейной последовательности номеров функциональных программ. Сформированный список программных модулей преобразуется в блочно-линейный оператор «преобразование списка». В блоке и объединяются программы, между которыми существует сильное информационное взаимодействие. Для блочно-линейного списка создается таблица адресов блоков (программных модулей).
Любой свободный рабочий процессор может осуществлять «захват» необработанного блока программ, выполнив оператор «запуск блока» (блок 06). Рабочий процессор преобразует линейный список «захваченного» блока в связный, и происходит запуск программного модуля из связного списка.
Этот процесс продолжается до тех пор, пока не завершится обработка списка блоков, после чего освободившиеся рабочие процессоры выполняют тесты текущего контроля. 4.10.2. ВЗАИМОДЕЙСТВИЕ ОПЕРАЦИОННОЙ СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ С СИСТЕМОЙ ПРЕРЫВАНИЯ Эффективность ОС РВ во многом определяется организацией системы прерывания в БЦВМ. Система прерывания В БЦВМ ряда Ц!00 реализована на микрокомандном уровне с возможностью включения в нее от- дельных функций операционной системы, наиболее тесно связанных с обработкой прерывания в БЦВМ. Микропрограмма организации прерывания осуществляет идентификацию типа прерывания, запоминание состояния процессора на момент прерывания исполняемой программы, передачу управления на программу или микропрограмму обработки воспринятого запроса на прерывание.
Микропрограмма вызывается процессором после того, как им будет воспринят очередной запрос на прерывание. Прерывание допускается в любой момент исполнения программы, если операционная система не выставила блокировку того или иного типа прерывания. В основном обработка прерывания выполняется самой микропрограммой входа в прерывание. Остановимся подробнее на данной обработке. Микропрограмма входа в прерывание от таймера выполняет следующие дополнительные функции: контроль признаков исправности, контроль прохождения текстов, контроль смены режима тестовых проверок, идентификацию штатного режима текущей самопроверки. Таким образом, при организации входа в прерывание по таймеру контролируется состояние БЦВМ, и если обнаружена неисправность, микропрограмма обработки прерывания сообщает об этом операционной системе.