Содержание

netshe_internals

Original file

Техническая справка

Общие сведения

NETSHe включает в себя набор программных модулей, библиотек и утилит реализующих:

  1. Подсистему хранения конфигурации устройства
  2. Подсистему инициализации устройства при загрузке в соответствии с заданной конфигурацией
  3. Подсистему событий и обработчиков, реализующих реакцию устройства на изменение состояния системы в целом и отдельных ее компонентов в соответствие с конфигурацией и логикой работы.
  4. Веб-интерфейс для управления устройством
  5. Подсистемы взаимодействия в внешними системами мониторинга и управления на базе SNMP, Zabbix, TR-069, собственной.
  6. Набор утилит диагностики/управления из командной строки
  7. Набор патчей для ядра Линукс, сторонних программных пакетов реализующих дополнительный функционал и (или) обеспечивающий интеграцию с NETSHe.
  8. Модифицированный OpenWRT SDK, предоставляющий код ядра Линукс, набор программных пакетов и систему сборки встроенного ПО. Результирующее встроенное ПО не совместимо с ПО OpenWRT.
  9. Набор программных пакетов для SDK, реализующий связанный с NETSHe и (или) отсутствующий в OpenWRT функционал. Более 30 оригинальных программных пакетов, более 20 модифицированных программных пакетов.

Сведения об объемах и языках программирования

При написании программных пакетов и патчей использовались следующие языки программирования:

  1. PHP (более 1200 файлов)
  2. POSIX shell (несколько сотен файлов)
  3. С (несколько сотен файлов)
  4. С++ (несколько файлов)
  5. HTML (несколько сотен файлов)
  6. Javascript (несколько сотен файлов)
  7. GNU Make (несколько десятков файлов)
  8. 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.