callgraph 获取函数的调用栈

来源:互联网 发布:bim模拟施工软件 编辑:程序博客网 时间:2024/04/27 22:39

原理分析

callgraph 实际上只是灵活组装了三个工具,一个是 cflow,一个是 tree2dotx,另外一个是 dot。

cflow:拿到函数调用关系

$ cflow -b -m start_kernel init/main.c > start_kernel.txt

tree2dotx: 把函数调用树转换成 dot 格式

$ cat start_kernel.txt | tree2dotx > start_kernel.dot

用 dot 工具生成可以渲染的图片格式

这里仅以 svg 格式为例:

$ cat start_kernel.dot | dot -Tsvg -o start_kernel.svg

实际上 dot 支持非常多的图片格式,请参考它的手册: man dot

0 0