Содержание
netshe_internals
Техническая справка
Общие сведения
NETSHe включает в себя набор программных модулей, библиотек и утилит реализующих:
- Подсистему хранения конфигурации устройства
- Подсистему инициализации устройства при загрузке в соответствии с заданной конфигурацией
- Подсистему событий и обработчиков, реализующих реакцию устройства на изменение состояния системы в целом и отдельных ее компонентов в соответствие с конфигурацией и логикой работы.
- Веб-интерфейс для управления устройством
- Подсистемы взаимодействия в внешними системами мониторинга и управления на базе SNMP, Zabbix, TR-069, собственной.
- Набор утилит диагностики/управления из командной строки
- Набор патчей для ядра Линукс, сторонних программных пакетов реализующих дополнительный функционал и (или) обеспечивающий интеграцию с NETSHe.
- Модифицированный OpenWRT SDK, предоставляющий код ядра Линукс, набор программных пакетов и систему сборки встроенного ПО. Результирующее встроенное ПО не совместимо с ПО OpenWRT.
- Набор программных пакетов для SDK, реализующий связанный с NETSHe и (или) отсутствующий в OpenWRT функционал. Более 30 оригинальных программных пакетов, более 20 модифицированных программных пакетов.
Сведения об объемах и языках программирования
При написании программных пакетов и патчей использовались следующие языки программирования:
- PHP (более 1200 файлов)
- POSIX shell (несколько сотен файлов)
- С (несколько сотен файлов)
- С++ (несколько файлов)
- HTML (несколько сотен файлов)
- Javascript (несколько сотен файлов)
- GNU Make (несколько десятков файлов)
- GNU autoconf (несколько десятков файлов)
Используются сборочные системы на основе GNU make и autoconf
При разработке веб-интерфейса использован MVC подход с применением собственного фреймворка.
Информация дана по состоянию на сентябрь 2020 года.
Системные требования
Минимальные системные требования для запуска функционального встроенного ПО на базе NETSHe — 64Мегабайта оперативной памяти и 8Мегабайт флэш, MIPS32 процессор 200МГц. Некоторые специфичные конфигурации могут работать в 32Мегабайтах оперативной памяти.
Рекомендованные системные требования для запуска полнофункционального варианта встроенного ПО - 128Мегабайт оперативной памяти и 16Мегабайт флэш, MIPS32 процессор 450МГц.
Поддерживаемые архитектуры и вендоры
Поддерживаемые архитектуры процессоров: MIPS32, ARM v5, ARM v7, ARM v8 (AArch64), x86, x64.
NETSHe работает на системах с чипами производства Intel, AMD, Qualcomm/Atheros, Mediatek, Realtek, Xilinx, Allwinner, Marvell, Broadcom.