ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
2 мая
556708 Топик полностью
Скрипач, пророк (31.10.2014 11:30 - 11:53, просмотров: 131) ответил fk01234 на Это годится только для простых (в сложных детерменизма во времени исполнения добиться тяжело, по крайне мере на таком уровне, а не плюс-минус три порядка) систем и с диким запасом неиспользуемых ресурсов. Вообще это называется time triggered
На самом деле, это "вычесывание" единственного случая когда задача не ждет никакого сигнала, готова к выполнению, но выполнять ее не стоит. Еще раз, к модели супервизора. Для него, задачи делятся на две категории: - готовые к выполнению; - ожидающие сигнала. В прикладной задаче или в супервизоре будет выполняться поллинг сигнала и изменение статуса задач с "ожидающих сигнал" на "готовые к выполнению". Далее, рассмотрим вопрос: почему в месте, где сформирован сигнал, нельзя просто вызвать прикладную функцию (callback, например) и уйти от поллинга? Ответ прост: это передача сигнала из более приоритетного кода в менее приоритетный. Например, из обработчика прерывания в прикладной код. И это самообман, который не является механизмом взаимодействия процессов разных приоритетов, а лишь "перетаскивание границы". И что мы увидели в городе Херсоне? Битовую переменную, которую устанавливает обработчик прерывания и поллит супервизор. А нафига этот поллинг в супервизоре? Нахрена этот самообман и посредники?
... но не любой ценой.