ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
5 мая
1514439 Топик полностью
Vit (26.04.2025 11:39, просмотров: 54) ответил Nikolay_Po на Нет, я про бизнес. Что руководителю достаточно поставить задачу и она будет предсказуемо выполнена. В случае ОСРВ. И не так предсказуемо, не так надёжно выполнена в случае КА.
Думаю, что это лёгкий мухлёж. Существует масса подходов, позволяющих писать модульно, гибко и управляемо. Под ОСРВ обычно понимают ОС с вытесняющей многозадачностью, но вот сама вытесняющая многозадачность не является основным фактором гарантированной работоспособности добавляемых участков кода (ведь необязательно новый код это отдельные задачи?) и неразваливаемости всего остального. Да, многозадачность является определённой реализацией модульности. Да, на уровне 

модулей есть управляемость. Всё. ДОС, Windows 3.0 были без вытеснения, как и линейка Win95/98/линолеум, та же WinNT хоть и была с вытеснением, но до ОС<b>РВ</b> она даже подпрыгнуть не могла, да и вообще этих ОС<b>РВ</b> ближе к человеку не так уж и много. Очень много задач не требует реального времени и совсем не обязательно для многозадачности нужно программное вытеснение (те же сопрограммы, например) и разные приоритеты (FreeRTOS, например, умеет одинаковые приоритеты). В то же время, специализированные задачи с реально жёстким реалтаймом могут строиться с использованием вытеснения в виде обработчиков прерываний, и часто не очень-то для этого нужна ОС, а тем более ОС<b>РВ</b>. Но, конечно, существует немало ситуаций, когда неиспользование явной многозадачности скорее вредно, а противовесы механизмам программного вытеснения далеко не всегда удобны и наглядны. Насчёт КА не понимаю противопоставления. КМК, это ортогональные вещи. Да, есть парадигма RTC - run-to-completion, да, на ней основана архитектура как реализаций квазипараллельной работы нескольких КА (например, этими буквами вместе с UML постоянно оперируют ребята из QuantumLeaps - state-machine.com), так и прототредов, прочих сопрограмм, да и тучи невытесняющих ОС. Но КА относится к проектированию и реализиции взаимодействия с процессами путём разбиения на части, маркируемые состояниями; и даже один КА это КА, и в таске ОСРВ он тоже КА.

КМК, одним из недостатков в продвижении RTOS для МК выступает обилие примеров использования динамически создаваемых/киляемых мелких задач и борьбы борьбической с разделяемыми ресурсами, причём пользовательский уровень ПО в мануалах почти не разделяется с системным (драйверы, службы-сервисы-демоны, функциональные устройства-модули). Так из-за относительно низкого порога вхождения одной захалявной ложкой и борщ, и спагетти хавается... При этом эффект Даннинга-Крюгера у новоспеченных программистов, пишущих быстро-надёжно, с использованием современного эффективного инструментария :) часто не позволяет им верить в возможность ошибок в своём коде и тем более в каком-либо пагубном влиянии на чужой:) Главное, чтобы их руководители не были уверены в том же:))