클라우드 컴퓨팅 환경의 효율성과 보안을 혁신할 새로운 운영체제(OS) FTL이 등장했습니다. FTL은 OS의 핵심 기능을 사용자 공간(userspace)에서 라이브러리 형태로 구현하여, 개발자들이 마치 애플리케이션을 개발하듯이 OS 기능을 추가하고 디버깅하며 안전하게 업그레이드할 수 있도록 설계되었습니다. 이는 기존 모놀리식 커널의 한계를 극복하고, 마이크로커널의 유연성과 모놀리식 커널의 성능을 결합한 하이브리드 접근 방식입니다.
FTL의 핵심은 '사용자 공간 OS(Userspace OS)' 개념입니다. 각 컨테이너(userspace OS 인스턴스)는 리눅스 프로세스, 가상 파일 시스템(VFS), TCP/IP 등 대부분의 OS 개념을 구현하는 공유 라이브러리를 실행합니다. FTL 커널은 하이퍼바이저처럼 최소한의 인터페이스만 제공하여 리눅스 시스템 호출(system calls)을 사용자 공간에서 구현하게 합니다. 이를 통해 FTL은 경량 하드웨어 기반 격리(user mode)를 활용, 기존 모놀리식 커널보다 컨테이너를 더 강력하게 격리하여 가상 머신(VM) 수준의 보안을 제공합니다. 또한, 리눅스 바이너리와 완벽하게 호환되어 기존 리눅스 애플리케이션을 FTL 위에서 그대로 실행할 수 있으며, POSIX 추상화 없이 유니커널(Unikernel)처럼 특화된 애플리케이션도 지원합니다.
FTL의 등장은 클라우드 네이티브 애플리케이션 개발 방식과 인프라 운영에 큰 변화를 가져올 잠재력을 가지고 있습니다. OS를 라이브러리처럼 다룰 수 있게 되면서, 개발자들은 커널 프로그래밍이나 eBPF(extended Berkeley Packet Filter) 없이도 리눅스 커널 기능을 확장하고 보안 업데이트를 적용하며 새로운 기능을 빠르게 추가할 수 있습니다. 이는 개발 생산성을 높이고, 클라우드 환경에서 요구되는 유연하고 안전하며 고성능의 애플리케이션 배포를 가능하게 할 것입니다. FTL은 경량 컨테이너의 보안을 VM 수준으로 끌어올리면서도 성능 저하 없이 새로운 OS 수준의 기능을 애플리케이션에 제공하는 것을 목표로 합니다.
