关闭
搜索
搜索
本版
帖子
用户
热搜:
程序员
简洁模式
高级模式
用户组: 游客
消息
提醒
新听众
我关注的
帖子
道具
勋章
任务
设置
退出
请
登录
后使用快捷导航
没有帐号?
立即注册
设为首页
收藏本站
开启辅助访问
切换到窄版
登录
or
立即注册
快捷导航
搜索
首页
论坛
BBS
MCU单片机技术
程序员交流
从LinuxeBPF世界回顾DTrace的一些想法
[复制链接]
作者:
宁死不
版块:
›
嵌入式操作系统
›
linux
发布时间:
2020-4-29 17:18:38
1256
0
返回列表
宁死不
当前离线
注册会员
注册会员, 积分 155, 距离下一级还需 45 积分
注册会员
注册会员, 积分 155, 距离下一级还需 45 积分
积分
155
发消息
楼主
电梯直达
宁死不
发表于 2020-4-29 17:18:38
|
只看该作者
|
倒序浏览
|
阅读模式
作为在OmniOS上大量使用本地编写的DTrace脚本并从现今的文件服务器的 OmniOS迁移到Linux 的人,我自然而然地关注Linux的eBPF工具的增长,并引起了极大的兴趣(有些失望,因为他们仍在进行中)。这使我对Solaris上的DTrace体验以及然后在OmniOS上的Linux与eBPF体验形成对比。
在Linux上,eBPF及其周围的工具比我认为的DTrace更粗糙,更原始,而且肯定比我积极使用的任何版本的DTrace都要粗糙。到我开始使用它时,DTrace基本上已经在Solaris上完全成熟,因此在我的DTrace经验开始和结束之间几乎没有什么变化(我认为DTrace仍在处理IP地址,但没有重大变化)。但是与此同时,Linux作为一个整体如何开发eBPF及其周围的工具,使Linux eBPF成为DTrace从未有过的具有多个接口(和接口级别)的开放系统,这使得我至少从未见过有人在Solaris和Illumos上做过。
在DTrace世界中,几乎每个人都应该用来处理DTrace的接口是dtrace命令及其语言(DTrace库在其手册页中明确标记为不稳定和私有)。你可能以各种方式运行命令并通过模板或其他方式为其生成程序,但这就是你与事物进行交互的方式。如果记录了其他级别的接口(例如,您自己构建原始DTrace程序并将其馈入内核),则绝对不推荐使用它们,因此,我从不对它们做太多事情。
(人们肯定使用DTrace系统构建了一些工具,这些工具不会产生来自的处理后的文本dtrace,但是显然,这些是来自专门的工程师团队的产品级工作,而不是为小规模产品生产的东西。通常它们来自Sun或Illumos发行提供商,因此有权使用私有接口。)
相比之下,Linux eBPF生态在堆栈的各个级别创建了一套完整的工具。等效于 dtrace,但是你也可以在大量不同的编程环境中设置某些东西的eBPF工具,并使用它产生的信息进行很多操作。这导致了非常灵活的事情,例如Cloudflare eBPF Prometheus导出器 (使你可以针对可编写eBPF程序的任何内容显示Prometheus指标)。
我忍不住感到Linux eBPF生态已经从开发eBPF的零散和分离方式中受益匪浅。没有一个小组从上到下拥有整个堆栈,因此,涉及的多个小组都被默示地彼此提供或多或少的文档化或或多或少的稳定接口。这些接口的存在使其他人可以利用它们,在一个或另一个之上编写自己的工具,并重新设定其用途,例如 创建有用的Grafana仪表板(通过在此处评论)。DTrace的单一统一开发为我们提供了更完善的dtrace命令,并且早得多(并使它在支持DTrace想法的所有Solaris版本中均可使用),仅此而已。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有帐号?
立即注册
收藏
0
相关帖子
•
大联大友尚集团推出基于STSTM32Cortex-M4的码表方案
•
在linux下安装JDK,Tomcat以及Mysql
•
Cpufetch:一款功能强大的CPU架构信息爬取工具
•
新版LinuxKernel支持M1处理器仅对应Mac不包括iPadPro
•
一个惊人快速的终端录像工具,也能录制VSCode和Chrome窗口
•
【干货】绝对是你没见过的超全Linux性能分析工具汇总!
•
推荐10个不错的网络监视工具,建议收藏!
•
超详细的PyCharm教程,必须收藏!
•
Linux用户宝典:值得一用的5款远程桌面应用程序
•
《Linux内核编码风格》官方手册最新中译本
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
表情
@朋友
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
快速回复
返回顶部
返回列表