← 返回新闻列表

KernelScript 0.1发布,简化Linux内核eBPF开发流程

一项名为KernelScript 0.1的全新开源编程语言已公开发布,旨在革新eBPF技术的开发方式。这款语言采用Apache 2.0许可证,通过提供更高层的抽象,显著降低了Linux内核eBPF编程的复杂性,使开发者能更便捷地利用这项强大的内核技术。

文 / 编辑部 · 2026/05/26 · 阅读约 2 分钟

分享:
KernelScript 0.1发布,简化Linux内核eBPF开发流程

昨日,专注于科技报道的Linuxiac刊文指出,KernelScript 0.1的首次公开亮相,标志着eBPF开发领域迎来新工具。这项基于Apache 2.0许可的新语言,旨在简化开发人员构建eBPF应用程序的过程。

eBPF(扩展伯克利数据包过滤器)作为一项突破性的Linux内核技术,允许开发者在不修改内核源代码或加载额外模块的前提下,安全有效地运行沙箱程序,从而动态扩展内核功能。

然而,传统的eBPF开发门槛较高,它不仅要求开发者编写eBPF程序本身,还需要深入理解验证器限制、BPF辅助函数、映射机制、程序加载流程,以及基于libbpf的用户态协同逻辑。

KernelScript通过创新的方式缓解了这一难题。开发者只需编写一个源文件,该语言便能自动生成所需的C语言代码、用户态程序、Makefile以及内核模块集成内容。

KernelScript的设计紧密贴合eBPF的工作流,通过提供更高级别的语法来抽象和管理复杂的开发流程。当前版本已然支持多种主流eBPF程序类型,例如XDP数据包处理、TC流量控制、各类探针式内核函数追踪,以及基于perf event的性能计数程序。

在状态共享功能方面,KernelScript原生支持多种eBPF映射机制,包括哈希映射、每CPU数组、LRU映射和固定映射。这些映射可以直接作为语言中的变量使用,极大地便利了eBPF程序与用户态代码之间的状态同步,显著减少了手动编写libbpf样板代码的需求。

此外,它还集成了自动尾调用编排、透明的dynptr处理、程序生命周期检查、struct_ops支持以及内建的kfunc集成,充分展现了其对高级eBPF能力的全面覆盖。

尽管如此,KernelScript 0.1目前仍处于实验性阶段。项目在官方仓库中明确将其标记为测试性软件,并提醒用户,其语法、应用程序编程接口(API)和功能可能会在未保证向后兼容性的情况下进行调整。

广告位 · 文末横幅