Системы анализа расписания в реальном времени - Scheduling analysis real-time systems
Период, термин календарный анализ в вычисления в реальном времени включает анализ и тестирование планировщик система и алгоритмы используется в приложениях реального времени. В Информатика, анализ расписания в реальном времени - это оценка, тестирование и проверка система расписания и алгоритмы используется в операциях в реальном времени. Для критических операций система реального времени должна быть протестирована и проверена на производительность.
Система планирования в реальном времени состоит из планировщика, часов и аппаратных элементов обработки. В системе реального времени процесс или задача имеют возможность планирования; задачи принимаются системой реального времени и завершаются в соответствии с установленным сроком выполнения задачи в зависимости от характеристики алгоритма планирования.[1] Задача моделирования и оценки системы планирования в реальном времени заключается в анализе способности алгоритма уложиться в срок процесса. Крайний срок определяется как время, необходимое для обработки задачи.
Например, в алгоритме планирования в реальном времени крайний срок может быть установлен на пять наносекунд. В критической операции задача должна быть обработана в срок, указанный в крайнем сроке (т.е. пять наносекунд). Задача в системе реального времени должна быть завершена «ни слишком рано, ни слишком поздно; ..».[2] Система называется неуправляемой, когда задачи не могут уложиться в указанные сроки.[3] Задачу можно разделить на периодический или апериодический процесс.[4]
Классификации
По критериям реального времени можно классифицировать как жесткий, твердый или же мягкий. Планировщик устанавливает алгоритмы выполнения задач в указанном порядке.[4] Существует несколько математических моделей для представления системы планирования, большинство реализаций алгоритма планирования в реальном времени моделируются для реализации однопроцессорных или многопроцессорных конфигураций. Более сложный алгоритм планирования встречается в многопроцессорных системах, не всегда возможно реализовать однопроцессорный алгоритм планирования в многопроцессорном.[4] Алгоритмы, используемые в анализе расписания, «можно классифицировать как упреждающий или же без упреждения ".[1]
Алгоритм планирования определяет, как задачи обрабатываются системой планирования. В общих чертах, в алгоритме системы планирования в реальном времени каждой задаче назначается описание, крайний срок и идентификатор (указывающий приоритет). Выбранный алгоритм планирования определяет, как приоритеты назначаются конкретной задаче. Алгоритм планирования в реальном времени можно разделить на статический или динамический. Для статического планировщика приоритеты задач определяются до запуска системы. Динамический планировщик определяет приоритеты задач по мере их выполнения.[4]Задачи принимаются аппаратными элементами в системе планирования в реальном времени из вычислительной среды и обрабатываются в реальном времени. Выходной сигнал указывает состояние обработки.[5] Крайний срок задачи указывает время, установленное для завершения каждой задачи.
Не всегда удается уложиться в требуемый срок; следовательно, необходимо провести дополнительную проверку алгоритма планирования. Две разные модели могут быть реализованы с использованием алгоритма динамического планирования; крайний срок задачи может быть назначен в соответствии с приоритетом задачи (самый ранний крайний срок) или время завершения для каждой задачи назначается путем вычитания времени обработки из крайнего срока (наименьшее время).[4] Необходимо заранее понимать сроки и необходимое время выполнения задачи, чтобы обеспечить эффективное использование времени выполнения элементов обработки.
Тестирование и проверка
Проверка производительности и выполнение алгоритма планирования в реальном времени выполняется путем анализа времени выполнения алгоритма. Проверка производительности Планировщика в реальном времени потребует тестирования алгоритма планирования в различных сценариях тестирования, включая время исполнения в наихудшем случае. Эти сценарии тестирования включают наихудший случай и неблагоприятные случаи для оценки производительности алгоритма. Расчет времени, необходимый для анализа систем диспетчеризации, требует оценки алгоритма на уровне кода.[4]
Для тестирования системы планирования в системе реального времени могут применяться различные методы. Некоторые методы включают: проверки ввода / вывода и анализ кода. Один из методов заключается в тестировании каждого входного условия и наблюдении за выходными данными. В зависимости от количества входов этот подход может потребовать больших усилий. Еще один более быстрый и экономичный метод - это подход, основанный на оценке риска, при котором для тестирования выбираются репрезентативные критические исходные данные. Этот метод более экономичен, но может привести к менее чем оптимальным выводам о достоверности системы, если будет использован неправильный подход. Требования к повторному тестированию после изменений в Системе планирования рассматриваются в индивидуальном порядке.
Тестирование и проверка систем реального времени не должны ограничиваться проверками ввода / вывода и кодов, но должны выполняться также в запущенных приложениях с использованием интрузивных или ненавязчивых методов.
Смотрите также
Рекомендации
- ^ а б Люнг, Джозеф; Чжао, Хайрон (ноябрь 2005 г.). Анализ расписания в реальном времени (PDF) (Технический отчет). DOT / FAA / AR-05/27.
- ^ Лю, Чжиминг; Джозеф, Матхай (17 февраля 2001 г.). «Проверка, уточнение и планирование программ в реальном времени». Теоретическая информатика. 253 (1): 119–152. CiteSeerX 10.1.1.50.2896. Дои:10.1016 / s0304-3975 (00) 00091-8.
- ^ Сорин, Манолаше; Петру, Элес; Зебо, Пэн (ноябрь 2004 г.). «Планируемый анализ приложений со стохастическим временем выполнения задач» (PDF). Транзакции ACM во встроенных вычислительных системах. 3 (4): 706–735. Дои:10.1145/1027794.1027797. Получено 4 декабря 2015.
- ^ а б c d е ж Audsley, N .; Бернс, А. (1990). Системное планирование в реальном времени (PDF) (Технический отчет). Йоркский университет, Великобритания.
- ^ Castanet, R .; Лорансо, П. «Тестирование систем реального времени». 15-я Всемирная конференция по неразрушающему контролю. AIPnD. Получено 4 декабря 2015.
внешняя ссылка
- Технический комитет IEEE по системам реального времени: http://tcrts.org/