45450

Синхронизация в системах реального времени. Принципы разделения ресурсов в СРВ. «Смертельный захват» «Гонки» «Инверсия приоритетов». Технология разработки собственной ОС РВ

Доклад

Информатика, кибернетика и программирование

Логическая последовательность исполнения Обеспечение доступа к общим ресурсам Обеспечение синхронизации с внешними событиями Обеспечение синхронизации по времени Связность задач. Обеспечение доступа к общим ресурсам. Реализация синхронизации необходима для обеспечения доступа к тем ресурсам которые являются разделяемыми ресурсами в системе т. Возникают коллизии связанные с получением доступа.

Русский

2013-11-17

69.5 KB

12 чел.

Синхронизация в системах реального времени. Принципы разделения ресурсов в СРВ. «Смертельный захват» «Гонки» «Инверсия приоритетов». Технология разработки собственной ОС РВ

Синхронизация задач.

Синхронизация задач – обеспечение согласованности действий программ на вычислительном узле.

Основные элементы синхронизации:

  1.  Связность задачи (т.е. логическая последовательность исполнения)
  2.  Обеспечение доступа к общим ресурсам
  3.  Обеспечение синхронизации с внешними событиями
  4.  Обеспечение синхронизации по времени

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

Обеспечение доступа к общим ресурсам.

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

Возникают коллизии, связанные с получением доступа. Эти коллизии связаны со следующими видами проблем:

  1.  проблема гонок
  2.  смертельный захват
  3.  инверсия приоритетов.

Гонки – если одна из задач захватывает ресурс и в течение длительного времени не обеспечивает доступ для всех задач, на узле функционирования возникают ошибки, которые называются гонками за ресурсами.

Для решения проблем используют:

1. Создание сервера ресурсов – создается задача, отвечающая за доступ к общему ресурсу. Задача обеспечивает последовательность исполнения и выполнение передачи.

2. Запрет прерывания доступа к ресурсу на время его использования.

3. Реализация принципа симфора, показывающего время, в которое возможен доступ к ресурсу. Участок кода программы, в котором происходит обращение к общему ресурсу, называется критической секцией, соответственно разрешение гонок должно осуществляться во всех критических секциях конечной системы.

Смертельный захват (deadlock) возникает если задачи не поделили между собой ресурсы.

Способы решения проблемы:

1. Принцип «либо все, либо ни чего», т.е. только одна задача в системе может претендовать на все ресурсы, вторая задача ожидает доступа до тех пор пока первая задача не освободит все ресурсы

2. Организация сервера для доступа к ресурсу

3. При требовании доступа к заданному ресурсу задача, требующая ресурс отключается с освобождением всех занятых до этого ресурсов и ожидает выполнение той задачи, которая заняла требуемый ресурс.

Инверсия приоритетов – задача с более высоким приоритетом не может выполниться из-за задачи с наиболее низким приоритетом.

Способы решения проблемы:

1. Сервер ресурсов (выполняется только та задача, которая имеет наивысший приоритет)

2. Перераспределение ресурсов (ресурс выделяется той задаче, которая начинает выполняться в заданный момент времени). Для оптимального распределения ресурсов и оптимизации поведения системы необходимо для каждого ресурса выделить свой сервер с установленным приоритетом и методом доступа. Этот сервер и будет отвечать за доступ к общим ресурсам. В конечном счете все сервера должны быть объединены планировщиком.

Наиболее проблемной архитектурой для обеспечения доступа является объектно-ориентированная.

Синхронизация задач с внешними событиями и по времени.

Синхронизация с внешними событиями -

обеспечение реакции системы на действия, которые передаются из внешних систем и не являются частью вычислительного узла. Обеспечение синхронизации возможно:

  1.  при организации распределенной системы и использовании сетевых компонентов;
  2.  при синхронизации с узлами, подключенными к внутренней шине вычислительного узла.

Синхронизация с внешними событиями используется для обеспечения алгоритма функционирования при распределении системы по разным вычислительным узлам. Синхронность функционирования обеспечивается наличием общих характеристик вычислительных узлов системы. Для реализации синхронизации с узлами, подключенными к внутренней шине вычислительного узла, используется два метода: метод прерываний и метод опроса.

Метод прерываний более скоростной, но в нем большой поток лишней информации. Применяется для быстрых систем и систем с большой градацией приоритетов.

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

Синхронизация по времени

Создается квант времени. Он является эталонным измерителем и называется тиком. Для ОС – тик – базовая единица измерения. Размер тика может быть различным для разных ОС и определяется по таймеру. Таймеры бывают двух видов: программные и аппаратные. Количество аппаратных таймеров ограничено архитектурой вычислительного узла. Количество программных – архитектурой ОС. Одним из подвидов программных таймеров являются пользовательские таймеры. Пользовательский таймер – счетчик и обработчик этого счетчика. Любой программный таймер основывается на программных таймерах. Для таймера существует понятие – исключение таймера. Синхронизация по времени обеспечивается по меткам прерывания, выполнение каждой задачи реализуется по временному интервалу. Любой программный таймер должен быть кратен аппаратному таймеру. Если это условие не выполняется, то синхронизация по времени не возможна.

Технология разработки собственной ОСРВ.

Позиция разработчика АСУ создания ОС РВ делится на два этапа:

1. Разработка планировщика задач;

2. Создание драйвера оборудования, обеспечивающего подгрузку планировщика и задач на вычислительный узел заданной конфигурации.

1. Тип разрабатываемого планировщика определяется конфигурацией системы, на которую он ориентирован. Если система однопроцессорная, то планировщик должен быть реализован на базе вытесняющей политики, учитывающей приоритет, время запуска и время исполнения. Если система многопроцессорная, процесс создания планировщика делится на два этапа: создание локального планировщика каждого индивидуального процесса и создание глобального планировщика (реализуется с помощью политики приоритетного планирования без вытеснения).

Создание планировщика включает следующие компоненты:

- заголовочные файлы каждого индивидуального процесса или каждой метки;

- модуль обработки заголовочных файлов подгрузки функций;

- модуль взаимодействия с драйвером вычислительного узла;

- модуль назначения приоритетов и определение свободных ресурсов.

Планировщик является независимым от типа вычислительного узла на котором он выполняется.


2. Реализация драйвера зависит от типа использования микроконтроллера и микропроцессора. При реализации выделяют менеджеры обработки ресурсов, а также правила для работы с таймером. Работа с таймером делится на две группы:

- создание модулей для работы с аппаратным таймером;

- создание модулей для работы с программным таймером.

Количество модулей, реализуемых в качестве таймера, зависит от типа используемой платформы и количества элементов управления.

 


 

А также другие работы, которые могут Вас заинтересовать

39425. Перечень и структура производственных подразделений энергохозяйства 1007 KB
  1 Характеристика и назначение энергохозяйства на промышленном предприятии Энергохозяйство предприятия включает в себя главную понизительную подстанцию ГПП центральный распределительный пункт ЦРП распределительную кабельную сеть 10 кВ и цеховые трансформаторные подстанции ТП. От ГПП по двум КЛ питается ЦРП имеющий две секции шин которые могут соединяться при помощи секционного выключателя. Питание цеховых ТП Осуществляется КЛ 10 кВ от ЦРП через комплектные ячейки КРУ с выключателями и от соседних ТП.2 Длины КЛ км Линия Вариант 1...
39426. Разработать программное обеспечение для работы со структурными типами данных с реализацией премирования по факультетам 371 KB
  Функции. Она работает с определенной конкретной базой данных; в ней в основном используются сложные типы данных структуры и функции то есть структура программы не требует много ресурсов. Они создаются из базовых: Массивы объектов заданного типа; Функции с параметрами заданных типов возвращающие значение заданного типа; Указатели на объекты или функции заданного типа; Ссылки на объекты или функции заданного типа; Константы которые являются значениями заданного типа; Классы содержащие последовательности объектов...
39427. Разработка линии связи между ОП1 (Гомель) и ОП2 (Мозырь) через ПВ (Наровля) 281 KB
  В состав оборудования ИКМ120 входят: оборудование вторичного временного группообразования ВВГ конечное оборудование линейного тракта ОЛТ необслуживаемые регенерационные пункты НРП а также комплект контрольноизмерительных приборов КИП. Сформированный в оборудовании ВВГ цифровой сигнал в коде МЧПИ или ЧПИ HDB3 или MI поступает в оконечное оборудование линейного тракта которое осуществляет согласование выхода оборудование ВВГ с линейным трактом дистанционное питание НРП телеконтроль и сигнализацию о состоянии оборудования линейного...
39429. МНОГОКАНАЛЬНЫЕ СИСТЕМЫ ПЕРЕДАЧИ (цифровые) 1.6 MB
  Таблица 2 – Основные параметры системы передачи Параметр Значение параметра Число организуемых каналов Скорость передачи информации кбит с Тип линейного кода Амплитуда импульсов в линии В Расчетная частота кГц Номинальное затухание участка регенерации дБ Номинальное значение тока ДП мА Допустимые значения напряжения ДП В Максимальное расстояние ОРПОРП Максимальное число НРП между ОРП Максимальное число НРП в полу секции ДП 1. Для размещения НРП необходимо определить номинальную длину участка регенерации lном. Число НРП между...
39430. Цифровые системы передачи (ЦСП) 322.5 KB
  Целью данного курсового проекта является формирование у студентов твердых теоретических знаний в области современных систем телекоммуникаций а также приобретение ими практических навыков и умений по технической эксплуатации и техническому обслуживанию цифровых систем передачи работающих на сети связи Республики Беларусь. Задачи курсового проектирования: изучение основ теории цифровых систем передачи и принципов построения образованных на их базе каналов передачи для видов первичных электрических сигналов телефонных телеграфных звукового...
39432. ПРОЕКТИРОВАНИЕ ЦИФРОВОЙ ЛИНИИ ПЕРЕДАЧИ. Расчет напряжения дистанционного питания 106.5 KB
  Расчет вероятности ошибки. Расчет затухания участков регенерации Для проверки правильности предварительного размещения НРП необходимо определить вероятность ошибки которая зависит от величины защищенности.3 Расчет вероятности ошибки. Расчет допустимой вероятности ошибки Переходные помехи и собственные шумы корректирующих усилителей приводят к появлению ошибок в цифровом сигнале которые вызывают искажение передаваемой информации.
39433. ЦИФРОВЫЕ И МИКРОПРОЦЕССОРНЫЕ УСТРОЙСТВА 2.49 MB
  наук Ц75 Цифровые и микропроцессорные устройства : методические указания и задания к курсовому проекту для студентов специальностей 245 01 03 – Сети телекоммуникаций 245 01 02 – Системы радиосвязи радиовещания и телевидения. УДК ББК ISBN Учреждение образования Высший государственный колледж связи 2011 ВВЕДЕНИЕ Курсовой проект по дисциплине Цифровые и микропроцессорные устройства выполняется студентами специальностей 2–45 01 02 Системы радиосвязи радиовещания и телевидения 2–45 01 03 Сети телекоммуникаций третьего курса...