Se ha aceptado un backend para compilar en eBPF en GCC

El conjunto de compiladores GCC se aceptó código para compilar programas para el intérprete de bytecode integrado en el núcleo de Linux eBPF. Gracias al uso de la compilación JIT, el bytecode en el núcleo se traduce en instrucciones de máquina en tiempo real y se ejecuta con el rendimiento del código nativo. Parcheo con soporte para eBPF se han aceptado en la rama sobre la cual se desarrolla el lanzamiento de GCC 10.

Además del backend para la generación de bytecode, GCC incluye un puerto de libgcc para eBPF y herramientas para generar archivos ELF, que permiten ejecutar código en la máquina virtual eBPF utilizando los cargadores proporcionados por el núcleo. Los parches que permiten el soporte de eBPF en GCC han sido preparados por ingenieros de Oracle, quienes previamente ya proporcionaron soporte para eBPF en GNU binutils. También se está desarrollando un simulador y parches para GDB, que permitirán depurar programas eBPF sin cargar en el núcleo.

Los programas para eBPF pueden definirse en un subconjunto del lenguaje C, compilarse y cargarse en el núcleo. Antes de la ejecución, el intérprete eBPF verifica el bytecode para asegurarse de que se utilicen instrucciones permitidas y establece ciertas reglas sobre el código (por ejemplo, la ausencia de bucles).
Inicialmente, para compilar eBPF en Linux, se utilizaba una herramienta basada en LLVM. El soporte para eBPF en GCC es interesante porque permite utilizar un solo conjunto de herramientas para compilar el núcleo de Linux y los programas eBPF, sin necesidad de instalar dependencias adicionales.

En forma de programas, eBPF se pueden crear controladores de operaciones de red, filtrar tráfico, gestionar el ancho de banda, rastrear el funcionamiento de sistemas, interceptar llamadas al sistema, controlar el acceso, contar la frecuencia y el tiempo de ejecución de operaciones, y realizar trazado utilizando kprobes/uprobes/tracepoints.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster