2016-05-04 10 views
-1

У меня есть этот вопрос, связанный с встроенными системами, это выражение, которое я нашел в исходном файле диспетчер:Что такое многозадачная неперехваченная ОС?

What is a multi-rate non preemptive OS/Dispatcher ? 

Я знаю немного о диспетчерских, невытесняющей системе RTOS на основе своих исследований и т.д .. но я не нашел выражение в сочетании.

Что я могу понять, так это то, что диспетчер - это объект, ответственный за добавление процесса/потока в очередь выполнения. Непрерывный означает, что задача, когда она начала запускать ее, не может быть остановлена ​​другой задачей до тех пор, пока она не завершится, а многократная скорость означает, что диспетчер будет продолжать выполнение задач как цикл while (1).

Любая помощь будет признателен, спасибо

Примечание: тег многоскоростной не существует пока на SO, так что это не упоминалось: р

ответ

2

Эта статья содержит большое объяснение и пример мульти -rate неперехватный планировщик: Multi-Rate Main Loop Tasking

Подводя итог, представьте себе планировщик или основной цикл, который вызывает ряд функций, каждый из которых представляет собой другую задачу. Non-preemptive означает, что задача не может вытеснить другую задачу, но каждая задача возвращает (возвращает) обратно планировщику (основной цикл), чтобы планировщик мог выполнить другую задачу. Multi-rate означает, что планировщик может вызывать каждую функцию задачи с другой периодической скоростью. Другими словами, не каждая функция задачи вызывается каждый раз через основной цикл, а некоторые функции задачи вызывается чаще, чем другие.