FTL es un sistema operativo de diseño de espacio de usuario que permite construir sistemas operativos como bibliotecas, facilitando la extensión de funciones, el depuración y las actualizaciones seguras sin modificar el núcleo. A diferencia de los núcleos monolíticos tradicionales, FTL aísla los contenedores mediante una interfaz similar a la de un hipervisor, basada en una aislamiento ligera basada en hardware (modo usuario), lo que permite ejecutar aplicaciones sin necesidad de máquinas bare-metal.
El sistema es compatible con binarios de Linux, permitiendo que aplicaciones como servidores HTTP escritos en Rust funcionen directamente sobre FTL. Además, soporta aplicaciones especializadas estilo Unikernel que evitan las abstracciones POSIX. FTL combina la flexibilidad y seguridad de los micronúcleos con el rendimiento y la simplicidad de los núcleos monolíticos. Su objetivo es crear contenedores ligeros tan seguros como las máquinas virtuales, desbloqueando nuevas capacidades a nivel de sistema operativo sin sacrificar el rendimiento.
La arquitectura de FTL implementa conceptos de sistema operativo como procesos, VFS y TCP/IP en el espacio de usuario, mientras que el núcleo de FTL proporciona una interfaz mínima para implementar llamadas al sistema de Linux. Esta estructura permite extender características del núcleo de Linux, como la impresión de mensajes o la seguridad, sin necesidad de programación en el núcleo o eBPF. En FTL, el sistema operativo es simplemente una biblioteca, lo que simplifica la gestión y mejora la seguridad de los contenedores.
