OpenAMP
Подробнее
- Тип
- Фреймворк
- Лицензия
- BSD-3-Clause
- Исходный код
- github.com/OpenAMP
- Сайт
- openampproject.org
Аналог Linux-овских remoteproc и RPMsg для стороны, где Linux не работает, чтобы RTOS или bare-metal программа могла говорить на том же протоколе.
В ядро Linux RPMsg встроен, а у вспомогательного ядра нет ядра ОС, у которого можно позаимствовать код. OpenAMP закрывает этот пробел автономной C-библиотекой с очередями virtio, конечными точками и таблицей ресурсов, которую remoteproc читает при загрузке прошивки. Под ней лежит libmetal — тонкий слой, скрывающий различия между FreeRTOS, Zephyr, bare-metal и пользовательским пространством Linux в части прерываний, разделяемой памяти и блокировок.
Проект поначалу двигали Xilinx и Mentor Graphics, а в 2019 году он перешёл под крыло Linaro как общественный. Это путь по умолчанию к AMP на чипах Xilinx, ST, NXP и других: примеры от вендора работают в первый же день, а неприятности начинаются, когда кто-то правит карту памяти.