写点什么

eBPF 即将登陆 Windows

  • 2024-10-16
    北京
  • 本文字数:1141 字

    阅读完需:约 4 分钟

大小:540.25K时长:03:04
eBPF 即将登陆 Windows

在 IETF 和微软的帮助下,eBPF 将很快为 Linux 和 Windows 的内核程序提供跨平台兼容性。


在上个月的虚拟 eBPF 峰会上,Isovalent 的首席技术官兼联合创始人 Thomas Graf 谈到了这款开源的,由过滤器转型而成的内核引擎的未来。他指出,这个未来包括了微软 Windows 的版本。

 

微软研究人员已启动了一个项目,为 Windows 制作一个 eBPF 版本,也就是说为 Windows 内核提供一个类似的可编程接口。

 

自十年前被纳入内核以来,基于 Linux 的 eBPF 得到了广泛采用,尤其是可观察性、安全性和合规性工具对它的使用非常多。这些工具利用其可编程的高速特性来分析和过滤数据包,而无需繁琐的模块或危险的内核修改。

 

借助它承诺的 Windows 和 Linux 之间的跨平台兼容性,工具开发商就能写出同时支持两大平台的二进制文件了。

适用于 Windows 的 eBPF

与 Linux eBPF 一样,Windows eBPF 将提供一个沙箱,用于在内核本身内执行小程序,一旦代码得到验证,就会使用一个封闭的内核解释器来执行 eBPF 字节码。

 

GitHub 上发布的这个微软项目显示有 43 位贡献者,代码主要用 C 编写,还有少量 C++。

 

Graf 表示,该软件包将实现与 Linux eBPF 的字节码兼容性,并且还有类似的解释器和即时编译器来执行字节码。但是,考虑到 Windows 系统调用的差别,eBPF 连接到内核的挂钩点可能会有所不同。



微软的 eBPF Windows 版本架构

 

Graf 表示,为 Linux eBPF 开发的所有工具也将在“未来几年”移植到 Windows 环境中。

 

他警告说,这将给社区带来更多挑战。展望未来,工具开发商需要确保他们的产品在两种环境中都能正常工作。

 

因此它需要标准化。

eBPF 标准化

Graf 指出,最初,eBPF(现在,管理员们一致认为,这个名字不再代表任何东西)是作为一组代码发展起来的;当时它并没有遵循什么预先定义的规范。因此,代码本身“就是工具开发商必须遵循的标准”,他说。

 

互联网工程任务组(IETF)已着手开展一个项目,以尽可能保证 Windows 和 Linux 之间的“跨平台”兼容性,该工作组的技术顾问、也是微软 eBPF 项目的主要贡献者之一的 Dave Thaler 在今年早些时候的 Linux 基金会存储峰会上提到了这一点。

 

IETF eBPF 工作组的首要任务是巩固运行 eBPF 程序的虚拟机的指令集架构(ISA)。该机构已基本完成描述 ISA 的文档,只剩下一些最后的反馈。

 

ISA 工作完成后,该小组还计划为验证器制定一套期望机制,以保证不受信任的 eBPF 程序能够安全执行。验证器应该做什么来确保代码安全?验证器保证哪些安全属性?对于这项工作,该小组可以从 Linux 内核的 verifier.rst for eBPF 开始构建。

 

该小组还计划通过 ABI(应用程序二进制接口)规范创建一种用于生成可移植 eBPF 二进制文件的格式,也许基于现有的格式之一打造。

 

原文链接:https://thenewstack.io/ebpf-is-coming-for-windows/

2024-10-16 16:5610630

评论

发布
暂无评论
发现更多内容

前端培训中怎么提升开发技术水平?

小谷哥

零基础前端培训学习有用吗

小谷哥

一文讲透研发,SRE,运维,DevOps 的区别

Bytebase

DevOps SRE dba database

4KMILES加入艾盛集团,携手打造中国品牌在全球网络的增长机遇

极客天地

如何管理您的知识库?

Geek_da0866

我们还需要 SRE 吗?

Bytebase

DevOps SRE developer

文档管理是企业进步必不可少的要素

Baklib

Web Service 接口怎么测试

和牛

Python 接口 测试 Web Service

十年数智求索路,餐饮SaaS头部企业客如云如何走向盈利

ToB行业头条

盒马销量预测核心算法的技术演进

阿里技术

大数据 算法

如何维护您的知识库?

Geek_da0866

未来源码丨会写代码的AI开源了!C语言写得比Codex还要好,掌握12种编程语言丨CMU

MobTech袤博科技

c 开源 AI

Postman如何做接口测试:导入 swagger 接口文档

和牛

测试 Postman

一不小心晋级“CCF国际AIOps挑战赛”决赛?

天翼云开发者社区

SPI:Java的高可扩展利器

华为云开发者联盟

Java 开发

深度学习公式推导(2):激活函数与偏置

老崔说架构

大数据软件开发哪里的培训比较好

小谷哥

带你徒手完成基于MindSpore的CycleGAN实现

华为云开发者联盟

人工智能 mindspore 图像 生成网络

数字先锋 | 海南省数据产品超市:让买数据产品像逛超市一样方便

天翼云开发者社区

数字化

旅游吗?腾云驾雾的那种

天翼云开发者社区

Go-Excelize API源码阅读(十一)—— GetActiveSheetIndex()

Regan Yue

Go 开源 源码刨析 8月日更 8月月更

分布式系统架构设计

C++后台开发

数据库 分布式 后端开发 C/C++后台开发 C/C++开发

家电上云后,智能家居如何构建场景化应用

华为云开发者联盟

云计算 后端 IoT 智能家居

java培训班学习后怎样才能找到工作

小谷哥

网页制作常见问题网页的必要性与方法

Baklib

架构实战营毕业总结

Geek_Q

INFINI 产品更新啦 20220815

极限实验室

elasticsearch infini gateway INFINI Labs 新版本/特性发布 INFINI Console

EMAS Serverless搭建《私人云相册》小程序赢中秋好礼

移动研发平台EMAS

小程序 阿里云 Serverless 中秋节 云相册

EMAS Serverless系列~4步教你快速搭建小程序

hum建应用专家

Serverless #EMAS

建设医共体,患者有“医”靠!

天翼云开发者社区

2022 智能云边开源峰会|Kyligence 邀您“云”上相约

Kyligence

人工智能 云原生 边缘计算 开源峰会

eBPF 即将登陆 Windows_云安全_Joab Jackson_InfoQ精选文章