FTL:将操作系统变成库的云原生新方案
FTL: A new operating system for clouds
FTL 提出了一种颠覆性的思路:将操作系统设计为库,让开发者像编写应用一样灵活构建、调试和升级 OS。它通过轻量级的硬件隔离技术,在用户态实现类似 Hypervisor 的容器隔离,既保留了微内核的安全与灵活,又兼顾了单体内核的性能与简单。FTL 完全兼容 Linux 二进制文件,无需裸机即可运行,甚至支持 Unikernel 类应用。这意味着你可以在不修改内核代码的情况下,快速扩展 Linux 功能、应用安全补丁或添加新特性。从 2026 年 9 月发布首个版本开始,FTL 正逐步支持文件系统、Node.js、Go 以及 64 位 Arm 架构,旨在让轻量级容器拥有虚拟机级别的安全性,同时释放应用层面的全新能力。
在 FTL 中,操作系统仅仅是一个库。
HN 评论区
59- drybjed
这只是一个业余爱好吗?它不会像 GNU 那样发展成庞大且专业的体系吗?
- hn_submit
在我看来,在单台主机上运行多个操作系统,这种方式更合乎逻辑。因为虚拟机监视器(hypervisors)是虚拟化整个操作系统,包括像设备驱动程序这类特定于硬件的代码。
相比之下,仅将操作系统核心作为用户空间库来运行,从而无需模拟硬件即可执行其二进制文件,这种做法逻辑上更通顺。不过我确实好奇,能否运行客户系统提供的所有功能,比如硬件图形加速。
另一个缺点是,这依赖于操作系统供应商将其核心组件以库的形式提供。对于像 Microsoft 这样的闭源供应商来说,这是一个特别棘手的问题,他们出于战略商业考量可能不愿这样做。
- sigbottle
云端的“OS”到底指什么?
这是否意味着你仍然将设备模型委托给 KVM 或半虚拟化(paravirtualization)之类的东西,但你的 FTL 客户操作系统可以在虚拟机内运行多个安全工作负载?
还是说你正在从头设计一个定制操作系统,以便在原生硬件上运行?你在硬件支持方面设定了什么限制,以确保这是一个可解决的问题,而不是重新实现 Linux 已有的所有内容?我推测之所以将其宣传为面向“云”,是因为你预先就知道要部署的机器?或者,对于内核开发者来说,与面向用户的功能(如进程、调度、内存管理等)相比,硬件支持在操作系统领域是一个(相对)微不足道的问题?
亦或是赌注在于:微内核 = 胜算 = 能够实现 Linux 拥有的一切甚至更多?
我很好奇这个项目的最终目标是什么,而不仅仅是目前存在的东西(否则目前的答案似乎就是第一句话)。
- comboy
我直接让代理为我的应用和硬件生成汇编代码,然后直接引导进入该代码。
- ollybee
看到 FTL 和“新”这两个词,我兴奋不已。可惜,这并非那款游戏。