Исходники Ponix: доступ для разработчиков

Архитектура исходных кодов Ponix: базовые материалы и спецификации
Доступ к исходникам Ponix предоставляется в виде архива, содержащего полный набор C-файлов (GCC 12.3, стандарт C11), заголовочных файлов и make-скриптов для сборки под x86_64 и ARM64 (кроссплатформенная цепочка Linaro 23.04). Ядро системы — модифицированное Linux Kernel 6.12 LTS с прерываниями реального времени (PREEMPT_RT патчи). Ветка драйверов ISDN включает собственную реализацию стека D-channel (BlueISDN v3.8), отличающуюся от стандартного mISDN полной поддержкой многоточечного соединения (PTMP) без потерь кадров при нагрузке до 1000 вызовов в минуту.
Различия с альтернативами: технические параметры
- Управление потоками: В отличие от Asterisk (событийно-ориентированный планировщик), Ponix использует асинхронный пул потоков с фиксированным числом воркеров (по умолчанию 16 на ядро). Это даёт снижение джиттера аудиопотока на 23% в тестах J.89. Альтернативы (OpenPBX, FreeSwitch) не поддерживают аппаратную привязку к очередям плат DIP-128.
- Протоколы и интерфейсы: Код модуля PRI (Ponix DAHDI v.4.2) включает фирменную имплементацию Q.921 и Q.931 с расширенными таймерами (настраиваемые T301–T314 с шагом 0.1 мс). В аналогичных продуктах (Asterisk chan_dahdi) эти таймеры фиксированы или требуют перекомпиляции ядра.
- Поддержка аппаратных кодеков: Исходники содержат драйверы для DSP-чипов CX20641 и TI TMS320C6678, отсутствующие в репозиториях Digium и Sangoma. Использование этих драйверов позволяет снизить загрузку CPU на операциях G.729/G.723.1 с 12% до 1.4% на канал.
Производство и качество сборки
Сборка Ponix из исходных кодов проходит двухэтапную верификацию. Первый этап — статический анализ с помощью SonarQube 10.7 (правила MISRA C:2023, отклонения более 1.5 цикломатической сложности на функцию запрещены). Второй этап — динамическое тестирование на аппаратном стенде с платами DIAL-06 и PON-24T (температурный диапазон 0–55°C, влажность 95% без конденсации). Коэффициент дефектов (DPMO) для сборок 2025–2026 годов не превышает 120 ppm, что соответствует стандарту ISO 9001:2025 для телекоммуникационного оборудования.
Материалы и документация для разработчиков
Поставляемые исходники включают полную карту памяти (linker script) для загрузчика U-Boot 2024.07, файлы конфигурации Device Tree (для SoC NXP i.MX8M Plus и Intel Atom C3758), а также 112-страничный референс-мануал по API (с примерами интеграции с SIP-стеком PJSIP 2.14.1). Спецификация протокола передачи данных между модулями (Ponix Bus Protocol v2.0) описана с точностью до битовых флагов, включая диаграммы состояний для режимов «H.323-bridge» и «PSTN fallback». Отличительная черта документации — привязка к версиям оборудования: например, параметры тактирования для платы PCIe x4 v.3 (BCM57840) приведены отдельно от параметров для Mini-PCIe v.2 (YT6802).
Стандарты и нагрузочное тестирование
- E.164 и ENUM: Код маршрутизации Ponix проходит сертификацию по RFC 6116 (ENUM) с проверкой до 50000 NAPTR-записей без деградации производительности.
- Throughput: При сборке с флагами -O3 -march=armv8.2-a архитектура обеспечивает пропускную способность 2800 одновременных RTP-сессий на одном ядре Cortex-A78 (тест SIPp 3.6.1, кодек PCMU, без ансиллярных потерь).
Добавлено: 24.04.2026
