茱莉亚·伊万斯

剖析器第4周:胼胝体支持,容器,MAC进展!!

今天是周一,第四周的工作我的剖析器结束了!我是周五穿过这条路。哎呀!我上周的主要目标是发布Mac支持,这还没有发生——事实证明,Mac系统编程比我想象的要复杂(获得mac的内存映射是真的很难!!我出轨了内核缺陷

上周(捐款!)!)

上周发生的令人兴奋的事情:

  • 2个新人为rbspy贡献了代码!(利亚登@瓦西!)利亚登贡献了-持续时间弗拉加德--费率旗帜,所以你可以改变rbspy采样的速率。vasi为rbspy提供了新的输出格式(缓存研磨格式!我认为这很有用——它让你看到。缓存公关有一些漂亮的图片.
  • 也有很多人提出问题和建议,并尝试了,太棒了。所有的发行都很有帮助!!
  • 增加了对在容器中运行的分析过程的支持!看起来效果不错!!
  • 我学到了很多关于Mac系统编程的知识。我想我应该能够在接下来的一两天内给Mac提供公关支持。

到目前为止,看起来Rust已经足够简单了,一些非Rust的程序员可以进来,并开始向rbspy贡献PRs,真高兴看到!!

下个星期

按照本周的日程安排:

  • 完成Mac支持
  • 修正了当堆栈中的顶部函数是我可以复制的C函数时获取堆栈的错误
  • 可能建立一个网站??
  • @liaden正在致力于支持分析子进程(因此您可以将rbspy指向您的Uni.process或其他,而且它会为你所有的网络工作者做简介)。我觉得那太棒了。

锈迹火焰图库??

我脑子里一直想着什么,但是我没有真正弄明白的是——rbspy正在发展一些新的可视化格式(火焰图!胼胝体格式!)我认为构建一个支持不同可视化格式的Rust.e会很酷,因此,如果人们构建其他剖析器,那么他们可以访问一致的可视化格式库。

我不知道我是否有时间这样做!现在,我将继续关注低层次的问题。

记忆提供者!!!!

我还没有完成CPU分析(仍然有很多粗糙的边缘需要解决!但是一旦我完成了稍微多一点的特性,我想我就想让CPU分析器稍微休息一下,在给大家一个尝试项目的机会的同时做其他的原型设计。

今天我有两次非常有用的关于内存分析器的对话,我对尝试一些东西感到兴奋!!

我的想法是,也许添加一个内存配置文件rbspy的子命令,你在哪儿给它一个PID,它做什么?对于它现在能做什么,我有两个想法:

  • 给出程序的内存配置文件(对象/它们的类型/大小)
  • 开始跟踪新的分配,并告诉您它们在哪里发生,以及现在分配了多少内存。

我希望这周有时间来制作内存分析器的原型。我们会看到现实生活中发生的事情!!