Имеет смысл смешивать RTOS и циклического руководителя?

Один из способов сделать это в Python 2 - использовать raw_input():

raw_input("Press Enter to continue...")

В python3 это просто input()

8
задан JeffV 22 September 2008 в 14:57
поделиться

3 ответа

Это - совершенно допустимый дизайн.
В одном из нашего продукта мы использовали подобный дизайн, где асинхронные каналы ввода-вывода (TCP/IP, 2 последовательных потока) были в их собственных задачах, и у нас была "основная" задача, которая будет ответственна за несколько областей функциональности.

Думайте о задачах как просто механизм разделения, который позволяет Вам упрощать свой дизайн.

6
ответ дан 5 December 2019 в 19:04
поделиться

Да, наличие циклического руководителя в одном потоке ОС, выполняющем несколько 'задач', может иметь смысл. На самом деле, если два конфликта задач с планированием потребностей (нужно заблокироваться, каждый не более высокий приоритет, чем другой и низкий приоритет, каждому требуется много времени для выполнения, и т.д.), я рекомендовал бы поместить их в тот же поток.

Это особенно верно в случае, где Вы используете легкий RTOS без защиты памяти: отдельные потоки не так более безопасны, чем один поток (никакая защита MMU адресных пространств), на самом деле они потенциально более опасны из-за большей потребности в защите параллелизма. Даже если Ваша схема IPC устойчива и не восприимчива для неправильного использования программистами, это является служебным, является обычно ненулевым, настолько избегающим, чтобы потребность в нем могла привести к увеличению производительности.

2
ответ дан 5 December 2019 в 19:04
поделиться

Это - допустимый дизайн, но я думаю, что пропустил причину того, чтобы иметь ОС вообще.

Какие средства ОС Вы планируете использовать?

От информации, доступной, кажется, что Вы закончите тем, что переместили сложность задач к Вашему новому основному циклу.

0
ответ дан 5 December 2019 в 19:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: