Что такое хороший системный тест для соблюдения срока?
Читая о ОСРВ, характеристика "жесткой" ОСРВ заключается в том, что она может детерминистически удерживать крайний срок, но как мы можем проверить или доказать, что система действительно соответствует требованиям?
ОСРВ для MicroC/OS II характеризуется как жесткая ОСРВ, но как я могу подтвердить это утверждение? Если у меня есть некоторый код C и ISR для моей FPGA, которая может запускать программы на C и переключать контекст между потоками с семафорами, аналогично тому, что делает RTOS, как я могу узнать, является ли ОС / RTOS "жесткой" или "мягкой" RTOS?
Может ли это зависеть от приложения и должно ли оно иметь таймер, и поэтому использование встроенного аппаратного таймера (например, Altera DE2 имеет генератор 50 МГц) с аппаратными прерываниями является предпочтительным, а затем мы просто проверяем, могут ли потоки и процессы планироваться в соответствии с крайний срок, а затем мы проверяем, соблюден ли этот срок?
Или есть какой-то общий подход к тому, что должно быть включено, чтобы сделать разницу между операционной системой, операционной системой реального времени и жесткой и мягкой ОСРВ?
Есть ли какой-нибудь "типичный тест" с типичным требованием для ярлыка "жесткий RTOS"?
1 ответ
Трудно ответить на этот вопрос, потому что ваша предпосылка неверна.
Система, классифицируемая как жесткая в реальном времени, отличается от мягкой системы в реальном времени только серьезностью пропущенного срока. В жестких RT пропущенный срок классифицируется как системный сбой, который может или не может нанести вред оборудованию и людям, в то время как мягкое реальное время обычно означает, что пропущенный срок только ухудшает производительность системы, но не останавливает ее.
Типичным примером жесткой RT-системы может быть сторожевой таймер, который отключает систему при перегреве - если она не уложится в срок, система выйдет из строя. Кроме того, в эту категорию попадают общие системы безопасности на электростанциях или в самолетах. Примером Soft RT может быть потоковое видео, где пропущенный крайний срок вызывает ухудшение качества изображения или заикание, но не обязательно приводит к отказу системы.
Короче говоря, жесткий и мягкий RT - это характеристики законченных программных систем, измеряемые их спецификациями и моделями неисправностей. Поэтому, как правило, это приложение, работающее в операционной системе, которое соответствует критериям жесткого / мягкого RT, ОС просто предоставляет интерфейсы с предсказуемым поведением синхронизации, которые позволяют приложению делать предположения о синхронизации.