-2

我想知道是否有任何方法可以编译程序(我自己的程序或开源程序),当我执行该程序时,我可以使用它来跟踪该程序的流程。理想情况下,我想输出程序执行时所经过的具体方法。每次它调用一个特定的方法时,我想输出它已经这样做了,我想把它保存到一个文件中以供以后分析。

例如,我试图更好地理解 KVM(一种开源虚拟机管理程序)中的流程,但显然有很多行代码,除非我花几周的时间来找出代码,否则我不可能知道代码的去向。

我正在查看的代码主要是用 C 编写的,但也使用其他语言。请问有什么想法吗?

4

1 回答 1

2

KVM 是 Linux 内核的子系统,因此您应该使用 ftrace (http://lwn.net/Articles/322666/) 来跟踪内核空间代码。

于 2012-09-04T08:12:26.883 回答