使用 ProbeVue 调试 C++ 应用程序
2010-05-04 00:00:00 来源:WEB开发网核心提示:简介ProbeVue 是在 AIX® 6.1 中引入的动态跟踪设施,它最初是为动态地跟踪系统中的 C 应用程序和系统调用而设计的,使用 ProbeVue 调试 C++ 应用程序,但是,随着时间的推移,必须启用 ProbeVue 特性,可以使用 smit probevue 启用它,ProbeVue 扩展了它的支持
简介
ProbeVue 是在 AIX® 6.1 中引入的动态跟踪设施。它最初是为动态地跟踪系统中的 C 应用程序和系统调用而设计的。但是,随着时间的推移,ProbeVue 扩展了它的支持,可以探查 C++ 应用程序并获取实时转储和基本系统调用。本文讨论 ProbeVue 对 C++ 应用程序的支持。
ProbeVue 使用用户编写的 Vue 脚本(使用 Vue 语言)确定在哪些函数的入口或出口设置什么探查(跟踪钩子),以及在遇到探查点(跟踪点)之后必须执行什么操作。
它具有以下特性:
跟踪钩子不必预先编译在源代码中。
ProbeVue 适用于 32 位或 64 位内核或用户应用程序,不需要修改程序。
在使用 ProbeVue 设置跟踪钩子之前,它们根本不存在。
可以马上查看跟踪操作捕捉到的跟踪数据,这些数据可以显示在终端上,也可以保存到文件中供以后查看。
跟踪钩子可以应用于任何函数的入口或出口。(当前,对于系统调用,只支持出口探查点。)
如果探查类型是入口,就可以探查传递给函数的参数,这要求在 Vue 脚本的开头或通过头文件定义函数的原型。
通过在出口点应用跟踪钩子并指定函数原型,可以跟踪函数的退出/返回值。
可以使用 ProbeVue 进行性能分析和问题调试。
先决条件
在使用 ProbeVue 之前,必须满足几个先决条件:
AIX 610 或更高版本。
文件集:不需要特殊的文件集;基本操作系统附带它们。
在开始探查之前,必须启用 ProbeVue 特性。可以使用 smit probevue 启用它。
必须在机器上的 /usr/vacpp 目录中安装 IBM XLC++ 编译器。
赞助商链接