[an error occurred while processing this directive]
SALVO не отстой
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Михаил Евстафьев 14 сентября 2002 г. 03:12
В ответ на: Для телекоммуникационного оборудования применяют FSMOS отправлено Alexandr 14 сентября 2002 г. 00:21

По поводу nesos. Пара строчек из описания:

A process function shall never block, it shall complete as soon as possible and never wait for
input because it has the necessary input already. The reason why it executes is the input packet.

Я и сам такие RTOS писал :-)
Но код обработчика входных событий получается плохо читаемым. Логика не видна. SALVO позволяет писать красивый исходник. А что работы препроцессору много - ну так мне его не жалко, а вот для своего брата программиста, который будет в моем исходнике разбираться - вот его труд и стоит облегчать.

>Кстати, еще неизвестно, кто быстрее переключает контекст,
>кооперативная SALVO или вытесняющая uC/OS,

Мне очевидно, что SALVO это делает быстрее.
Но только uCOS это делает тогда, когда нужно, а SALVO уж как получится...

>Задержки прерываний в вытесняющих RTOS практически нет.

А это ты к чему?

>В uC/OS для MSP430, например, максимум 2-а такта и то не всегда.

Во многих функциях uCOS есть критические секции. Типично это запрет прерываний, хотя на некоторых архитектурах можно полностью прерывания не запрещать. Но если прерывание использует сервисы RTOS, то оно должно быть запрещено в критической секции. Т.е. будет задержено.
В подсчете тактов ты ошибся примерно на 2 порядка.

>Реентерабельность тоже не являеться необходимостью.

Если функция вызывается из разных задач в вытесняющей RTOS, то она обязана быть реентерабельной. Как минимум это функции самой RTOS. А для некоторых 8 битных архитектур реентерабельный код либо вообще не возможен, либо дает большой оверхед.

>Это я все к тому, что SALVO - отстой

Позволю себе не согласиться.
Но обойтись без нее можно.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru