限时领|《AI 百问百答》专栏课+实体书(包邮)! 了解详情
写点什么

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:5610638

评论

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

《我想进大厂》之分布式事务篇

艾小仙

Java 面试 后端

盘点2020 | 百度AI的2020

百度大脑

盘点2020

惊喜来袭!253页全彩免费电子书《Python 编程参考》正式上线发布

穿甲兵

Python redis 程序设计 Go 语言

怎么提升写代码的能力

阿里巴巴云原生

程序员 个人成长 方法论 云原生 自我思考

给跨专业程序员的一些建议

Ryan Zheng

限量!阿里甩出878页性能优化笔记阿里甩出878页性能优化笔记!

Java架构之路

Java 程序员 架构 面试 编程语言

新年Flag 中奖名单公布|如何科学的从55人中随机选出11个中奖名额

InfoQ写作社区官方

话题讨论 热门活动

dubbo-go 白话文 | 从零搭建 dubbogo 和 dubbo 的简单用例

阿里巴巴云原生

Java 云原生 dubbo 中间件 dubbogo

安装Android系统 missing operating system

mengxn

android

限量!腾讯高工用4部分讲清楚了Spring全家桶+微服务

996小迁

Java 架构 面试 springboot SpringCloud

iOS音视频--视频合集

程序员 音视频 OpenGL ES GPUImage Metal

使用Apollo升级一下yml文件管理和发布

Sky彬

springboo

阿里巴巴2021年最新开源十亿级Java高并发系统设计手册

Java架构追梦

Java 阿里巴巴 架构 并发 系统架构设计手册

从根上理解高性能、高并发(五):深入操作系统,理解高并发中的协程

JackJiang

网络编程 高并发 协程 高性能 即时通讯

阿里架构师深入讲解Android开发!教你一种更清晰的Android架构!BAT大厂面试总结

欢喜学安卓

android 程序员 面试 移动开发

云原生 DevOps 的 5 步升级路径

阿里巴巴云原生

Serverless 容器 DevOps 微服务 云原生

案例集锦|科技赋能,华为云GaussDB助千行百业数字化转型

华为云开发者联盟

数据库 华为云 企业应用

基于gRPC的注册发现与负载均衡的原理和实战

万俊峰Kevin

微服务 go-zero Go 语言

热情空前,家长纷纷变身“寒假规划师”,如何抓住这波热潮?

ZEGO即构

AI 在线教育 在线课堂

COCO聊天挖矿系统开发|COCO聊天挖矿软件APP开发

系统开发

WebRTC 的现状和未来:专访 W3C WebRTC Chair Bernard Aboba

阿里云CloudImagine

阿里云 WebRTC 视频云

阿里架构师经验分享!Android面试知识点总结宝典助你通关!顺利通过阿里Android岗面试

欢喜学安卓

android 程序员 面试 移动开发

架构师训练营第八周作业

zamkai

2020中国ToB独角兽:估值逆势起飞,寡头效应加剧

ToB行业头条

【有奖调研】中国人工智能开发者调研

百度大脑

有内味了!阿里内部Tomcat高阶调优笔记成功刷新了我的认知

Java架构之路

Java 程序员 架构 面试 编程语言

Kubernetes安装篇(上):基于Minikube方式部署本地环境

xcbeyond

Kubernetes 安装 minikube 28天写作 Kubernetes从入门到精通

我所认为的产品经理能力模型

day day up

架构师 3 期 3 班 -week8- 作业

zbest

作业 week8

是找茬?还是装B?阿里面试每轮必问的“Spring Boot”意义何在?

比伯

Java 编程 架构 面试 计算机

SpringCloud 从入门到精通 12---Nacos配置中心

Felix

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