[Перевод] Почему eBPF-программа работает на одном ядре, а на другом — нет
eBPF давно стал стандартным инструментом для работы с ядром, но на практике быстро выясняется: одна и та же программа может вести себя по-разному на соседних версиях Linux. Причина — в деталях, которые обычно остаются «под капотом»: структурах ядра, их смещениях и способе доступа к данным. В статье разбираемся, откуда берётся эта нестабильность, как работают механизмы вроде CO-RE и BTF и что на самом деле нужно учитывать, чтобы eBPF-код был переносимым и предсказуемым в разных окружениях. Разобраться в eBPF
https://habr.com/ru/companies/otus/articles/1020852/
#eBPF #ядро_Linux #BPF_CORE #переносимость_программ #версии_ядра_Linux #низкоуровневое_программирование #совместимость_систем
