Автор работы: Пользователь скрыл имя, 29 Апреля 2013 в 12:28, контрольная работа
1. Планирование периодических процессов
2. Алгоритм RMS
3. Как работает алгоритм RMS. Когда он может быть использован?
...
17. ОСРВ (монолитная, на основе микроядра, объектно-ориентированная).
Внешние события, на которые
СРВ должна реагировать, разделяют
на периодические(возникающие через регулярные промежутки
времени) и непериодические (возникающие непредсказуемо). При нескольких
обрабатываемых потоков событий в зависимости
от времени, затрачиваемого на обработку
каждого из событий, может оказаться, что
система не в состоянии своевременно обработать
все события. Если в систему поступает mпериодических событий, событие с номером i поступает с периодом Pi и на его обработку уходит Ci секунд работы процессора, все потоки
могут быть своевременно обработаны только
при выполнении условия
.
СРВ, удовлетворяющая этому условию, называется поддающейся планированию(планируемой). Соотношение
является просто частью процессорного
времени, используемого процессом i, а сама сумма – это коэффициент использования (коэффициент загруженности)
процессора, который не может быть больше
1.
Алгоритмы планирования заданий могут
быть разделены на статические и динамические.
Статические алгоритмы определяют приемлемый
план выполнения заданий по их априорным
характеристикам, динамический алгоритм
модифицирует план во время исполнения
заданий. Издержки на статическое планирование
низки, но оно крайне нечувствительно
и требует полной предсказуемости той
СРВ, на которой оно установлено. Динамическое
планирование связано с большими издержками,
но способно адаптироваться к меняющемуся
окружению.
Классическим примером
статического алгоритма планирования
реального времени для
Алгоритм RMS работает, назначая каждому процессу
фиксированный приоритет, обратно пропорциональный
периоду и, соответственно, прямо пропорциональный
частоте возникновения событий процесса.
Он может быть использован только при
не слишком высокой загруженности процессора.
Данный алгоритм гарантированно работает
в любой системе периодических процессов
при условии
Другим популярным алгоритмом планирования является алгоритм EDF (Earliest Deadline First – процесс с ближайшим сроком завершения в первую очередь). Алгоритм EDF представляет собой динамический алгоритм, не требующий от процессов периодичности. Он не требует и постоянства временных интервалов использования процессора. Когда процессу требуется процессорное время, он объявляет о своем присутствии и о сроке выполнения задания. Планировщик хранит список процессов, сортированный по срокам выполнения заданий. Алгоритм запускает первый процесс в списке, у которого самый близкий по времени срок выполнения. Когда новый процесс переходит в состояние готовности, система сравнивает его срок выполнения со сроком выполнения текущего процесса. Если у нового процесса график более жесткий, он прерывает работу текущего процесса.
В начале все процессы
находятся в состоянии
В момент времени 30 возникает
спор между процессами А и С, поскольку
срок выполнения С=50, а А=60 планировщик
выбирает процесс С. В момент времени
90 процесс А переходит в
Операционные системы реального времени иногда делят на два типа — системы жесткого реального времени и системы мягкого реального времени.[5]
Операционная система, которая может обеспечить требуемое время выполнения задачи реального времени даже в худших случаях, называется операционной системой жёсткого реального времени.
Операционная система, которая может обеспечить требуемое время выполнения задачи реального времени в среднем, называется операционной системой мягкого реального времени.
Системы жёсткого реального времени не допускают задержек реакции системы, так как это может привести к:
Если не выполняется обработка критических ситуаций либо она происходит недостаточно быстро, система жёсткого реального времени прерывает операцию и блокирует её, чтобы не пострадала надёжность и готовность остальной части системы. Примерами систем жёсткого реального времени могут быть — бортовые системы управления (на самолёте, космическом аппарате, корабле, и пр.), системы аварийной защиты, регистраторы аварийных событий.[6]
Системы мягкого реального времени характеризуются возможностью задержки реакции, что может привести к увеличению стоимости результатов и снижению производительности системы в целом. Примером может служить работа компьютерной сети.[7] Если система не успела обработать очередной принятый пакет, это приведет к остановке на передающей стороне и повторной посылке (в зависимости от протокола). Данные при этом не теряются, но производительность сети снижается.
Основное отличие систем жёсткого и мягкого реального времени можно охарактеризовать так: система жёсткого реального времени никогда не опоздает с реакцией на событие, система мягкого реального времени — не должна опаздывать с реакцией на событие.[7]
Обозначим операционной системой реального времени такую систему, которая может быть использована для построения систем жёсткого реального времени. Это определение выражает отношение к ОСРВ как к объекту, содержащему необходимые инструменты, но также означает, что эти инструменты ещё необходимо правильно использовать.[6]
Большинство программного обеспечения ориентировано на «мягкое» реальное время. Для подобных систем характерно:
Классическим примером задачи, где требуется ОСРВ, является управление роботом, берущим деталь с ленты конвейера. Деталь движется, и робот имеет лишь маленький промежуток времени, когда он может её взять. Если он опоздает, то деталь уже не будет на нужном участке конвейера, и следовательно, работа не будет выполнена, несмотря на то, что робот находится в правильном месте. Если он подготовится раньше, то деталь ещё не успеет подъехать, и он заблокирует ей путь.
ОС общего назначения особо многопользовательские такие как Unix, ориентированы на оптимальное распределение ресурсов компьютера между пользователями и задачами, а в ОС реального времени главной задачей является успеть отреагировать на событие происходящее на объекте.
Проектируя и разрабатывая конкретную систему реального времени, программист всегда точно знает, какие события должны произойти на объекте знает критические сроки каждого из событий.
ОС реального времени должна обладать определенными свойствами:
Вычислительные
установки на которых применяются
ОС реального времени можно
Состоят из одной платы, на которой размещены процессор, контроллер памяти и сама память. Память может быть нескольких видов: ПЗУ - в которой размещается сама ОС реального времени и ОЗУ – там размещается код и данные, а также флэш-память может играть роль диска. На плате также может находиться контролеры периферийных устройств и программируемых таймеров.
Устанавливаются внутрь оборудования, которым они управляют.