【问题标题】:Writing an instrumentation tool for C/C++ programs为 C/C++ 程序编写检测工具
【发布时间】:2012-04-29 21:48:19
【问题描述】:

我想编写一个自动检测输入 C/C++ 代码的程序 基于一些输入属性。我正在寻找一个开始学习如何做的好地方(主要与如何做仪器,在哪里做等有关)。我已经在网上搜索了一段时间,没有任何运气。因此,如果有人能帮我指出一个好的起点,我将不胜感激。

谢谢

【问题讨论】:

    标签: c++ c instrumentation


    【解决方案1】:

    如果您还没有找到它,这里有一个非常相似的问题,其中包含使用自定义 LLVM PassGCC MELT 的好主意:Instrumenting C/C++ code using LLVM

    如果您正在寻找更简单的东西,请查看Basic Instrumentation and Profiling Framework for C++ 这个基于预处理器的解决方案

    【讨论】:

      【解决方案2】:

      如果您使用的是 Linux,并且只想调用系统 API,请查看 strace,或阅读 this question

      如果您想检测自己的代码,事情会变得更加棘手。探查器一直这样做,但它们与编译器一起工作以添加检测。 gcc 似乎支持某种形式的用户定义检测。见this question

      我发现我很少需要对整个程序进行检测——通常只有几个关键区域需要它。在这种情况下,定义一些检测宏或添加一些 #ifdef MY_TRACE ... #endif 部分会有所帮助。

      【讨论】:

        猜你喜欢
        • 2010-11-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-01-03
        • 1970-01-01
        • 2011-06-09
        相关资源
        最近更新 更多