netshe_mod
Типовое устройство программных пакетов NETSHe
NETSHe OS является модульной и позволяет собирать образы встроенного программного обеспечения различной функциональности.
Модульность обеспечивается как за счет деления программного обеспечения на пакеты и возможностью выбора необходимых пакетов для сборки образа, так и применением определенного подхода при разработке общей архитектуры и оригинальных пакетов.
Общими архитектурными элементами являются применение единого конфигурационного файла в JSON формате и системы событий, обеспечивающей универсальный интерфейс публикации событий, происходящих с устройством, для программных модулей.
Типичные для оригинальных пакетов NETSHe архитектура и взаимодействие компонентов/утилит/агентов приведены на рисунке ниже.
Здесь модуль веб-интерфейса для конкретного приложения/сервиса оперирует (читает/отображает/пишет; предоставляет пользователю возможность редактирования) данными приложения в общей конфигурации, отображает текущее состояние приложения и позволяет выполнить типовые действия над ним (запустить/остановить).
Утилиты запуска/останова приложения реагируют на команды из системы событий и перед запуском приложения создают сами (или через отдельный компонент) специфичную для приложения рабочую конфигурацию из данных в общей.
Функции контроля состояния предоставляет веб-модулю сведения о работе приложения и может взаимодействовать с компонентом контроля корректности работы.