ebpf

PerfMan16 天前
linux·开发语言·gc·ebpf·垃圾回收·procstat
基于eBPF的procstat软件追踪程序垃圾回收(GC)事件在性能敏感的应用程序中,偶尔遇到程序无故卡顿是开发者们常见的挑战之一。这种现象可能会表现为突然的延迟、系统响应时间增加、吞吐量的下降。这类问题的根源可能是编程语言的垃圾回收(Garbage Collection,GC)导致,尤其是在内存管理上有着较高压力的情况下。 然而,识别和跟踪这些GC事件并非易事。GC发生时,程序线程会暂停执行(如Golang的Stop-the-World,Java的GC暂停),这一操作可能影响到应用的性能表现。在传统的监控方法中,很难准确捕捉到这些事件的开始与结束。为了有效应对这种
观测云1 个月前
网络·ebpf
观测云核心技术解密:eBPF Tracing 实现原理eBPF 是一种强大的内核技术,允许在内核中安全地执行自定义代码。通过 eBPF,开发者可以在不修改内核源码的情况下,对内核功能进行扩展和监控。eBPF Tracing 利用这一技术,对系统调用、内核函数等进行跟踪,从而实现对应用行为的深入洞察。
私房菜1 个月前
android·ebpf·gpumem·tracepoint
Android 中ebpf 的集成和调试BPF,是Berkeley Packet Filter的简称,最初构想提出于 1992 年。是一种网络分流器和数据包过滤器,允许早操作系统级别捕获和过滤计算机网络数据包。它为数据链路层提供了一个原始接口,允许发送和接收原始链路层数据包,并允许用户空间进程提供一个过滤程序来制定它想要接收哪些数据包。BPF 仅返回通过进程提供的过滤器的数据包。这样避免了将不需要的数据包从操作系统内核复制到进程,从而大大提高了性能。
luofengmacheng2 个月前
ebpf
eBPF编程指南(一):eBPF初体验EBPF是一种可以让程序员在内核态执行自己的程序的机制,但是,为了安全起见,无法像内核模块一样随意调用内核的函数,只能调用一些bpf提前定义好的函数。为了让内核执行程序员自己的代码,需要指定HOOK点,相当于当内核执行到某个地方时就会执行程序员的代码,这有点类似于ftrace。
_hong6 个月前
linux·ebpf·kernel
【Learning eBPF-3】一个 eBPF 程序的深入剖析从这一章开始,我们先放下 BCC 框架,来看仅通过 C 语言如何实现一个 eBPF。如此一来,你会更加理解 BCC 所做的底层工作。
_hong6 个月前
linux·ebpf
【Learning eBPF-2】eBPF 的“Hello world”前一章讲了 eBPF 为什么这么吊,不理解没关系,现在开始,我们通过一个 “Hello world” 例子,来真正入门一下。
_hong6 个月前
linux·ebpf
【Learning eBPF-1】什么是 eBPF?为什么它很吊?本书中, eBPF 被称为一种 革命性的 内核技术,被广泛应用于网络、观测 和 安全工具中。这种技术允许你在不重新编译内核的情况下,使能你的自定义工具,与内核数据进行交互。听起来很厉害。
_hong9 个月前
linux·ebpf·kernel
【eBPF-04】进阶:BCC 框架中 BPF 映射的应用 v2.0——尾调用这两天有空,继续更新一篇有关 eBPF BCC 框架尾调用的内容。eBPF 技术很新,能够参考的中文资料很少,而对于 BCC 框架而言,优秀的中文介绍和教程更是凤毛麟角。我尝试去网上检索有关尾调用的中文资料,BCC 框架的几乎没有。即使找到了,这些资料也难以给出可供参考和正确运行的例子。
香蕉割草机9 个月前
学习·ebpf
ebpf学习_incomplete学习ebpf相关知识 参考资料: awesome-ebpf最开始接触到的是经典bpf,即cbpf,可以通过生成的字节码给raw socket设定过滤器,这过程中了解到了ebpf,被他的强大所吸引,过去我就对内核观测方面缺少了解,而现有的一些手段显的有点麻烦,不是那么易用,我当时就感觉ebpf可能可以符合我的要求。看gpt的回答:
_hong9 个月前
linux·ebpf·kernel
【eBPF-03】进阶:BCC 框架中 BPF 映射的应用 v1.0eBPF 中实现内核态代码与用户态代码是可以实时通信的,这主要靠 BPF 映射 来实现。BPF 映射 是内核空间的一段内存,以 键值对 的方式存储。内核态程序可以直接访问 BPF 映射,用户态需要通过系统调用才能访问这段地址。
_hong9 个月前
linux·ebpf·kernel
【eBPF-02】入门:基于 BCC 框架的程序进阶本文是 eBPF 系列的第二篇文章,我们来学习 eBPF BCC 框架的进阶用法,对上一篇文章中的代码进行升级,动态输出进程运行时的参数情况。
架构成长指南9 个月前
云原生·k8s·ebpf·可观测性·监控系统
什么是革命性技术eBPF?为什么可观测性领域都得用它公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享。如果有一种技术可以监控和采集任何应用信息,支持任何语言,并且应用完全无感知,零侵入,想想是不是很激动,那么这个技术是什么呢?就是eBPF,它应该是最近一两年非常热门的技术名词,我相信你或多或少都看到过,但可能不知道它能做什么,今天我们来讲讲这个革命性的技术eBPF,以及它在可观测领域的应用eBPF是什么?
_hong9 个月前
linux·ebpf·kernel
【eBPF-01】初见:基于 BCC 框架的第一个 eBPF 程序闲言少叙,本文记录了如何零基础通过 BCC 框架,入门 eBPF 程序的开发,并实现几个简易的程序。有关 eBPF 的介绍,网络上的资料有很多,本文暂且先不深入讨论,后面会再出一篇文章详细分析其原理和功能。
╰つ栺尖篴夢ゞ10 个月前
云原生·istio·ebpf·rsocket broker
云原生之深入解析网络服务Istio、eBPF和RSocket Broker
eponia10 个月前
linux·网络·rust·ebpf·aya
Rust的eBFP框架Aya(一) - Linux内核网络基础在我的Rust入门及实战系列文章中已经说明, Rust是一门内存安全的高性能编程语言,从它的这些优秀特性来看,就是一门专为系统开发而诞生的语言。至于很多使用Rust来进行web开发的行为,不能说它们不好,只能说是杀鸡焉用牛刀耳。
zhangjikuan10 个月前
数据库·mysql·ebpf·ppt·dtcc2023
DTCC2023大会-DBdoctor-基于eBPF观测数据库-附所有PPT下载链接8月16日—18日,第14届中国数据库技术大会(DTCC-2023)在北京国际会议中心举行。聚好看在大会上首次发布基于eBPF观测数据库性能的产品DBdoctor,受到了业界广泛的关注。近期几位业内同仁过来要大会的PPT,今天特意把ppt和大会所有ppt发出来。
whz-emm10 个月前
ebpf·bpf
最快的ebpf开发环境搭建方式启动容器安装依赖hello.chello.py执行,可看到打印出了hello world
repinkply1 年前
android·ebpf·dmabuf·fastrpc
Android中eBPF使用原理以及 kprobe dmabuf_setup实例目录eBPF in AndroidAndroid eBPF kprobe dma代码定义一个MAP定义一个 PROG
repinkply1 年前
ebpf
运行原理:eBPF 是一个新的虚拟机吗?目录背景eBPF 虚拟机是如何工作的?BPF 指令是什么样的?eBPF 程序是什么时候执行的?小结前面,我们从最简单的 Hello World 开始,带你借助 BCC 库从零开发了一个跟踪 openat() 系统调用的 eBPF 程序。
夜莺云原生监控1 年前
ebpf
Grafana 开源了一款 eBPF 采集器 BeylaeBPF 的发展如火如荼,在可观测性领域大放异彩,Grafana 近期也发布了一款 eBPF 采集器,可以采集服务的 RED 指标,本文做一个尝鲜介绍,让读者有个大概了解。