SylixOS 调试方法详解——静态代码分析

1. SylixOS调试方法介绍

    SylixOS 实现了一个功能强大的调试 stub,可在设备或模拟器上在线调试应用程序,RealEvo-IDE 也提供配套的调试插件。目前 RealEvo-IDE 既支持自动推送调试、也支持传统的手动启动 gdbserver 的调试方式。在官方公布的使用手册中没有详细写出在平常开发中很是实用的几种调试方式,咱们经过新建几个App工程来作相应的演示,主要有代码静态分析、代码覆盖率检查、性能分析以及一个实战案列的演示,本文主要介绍代码静态分析调试。数组

2. SylixOS调试步骤详解

    代码静态分析主要用来检查野指针、数组越界等问题,咱们创建一个static_check_app,用来作代码静态分析的演示,程序清单如程序清单 21所示。安全

程序清单2-1  static_check_app清单app

#include<stdio.h>性能

intmain (intargc, char **argv)spa

{插件

       charcBuf[10];指针

       char *pTemp;调试

       int   i;server

     for (i=0; i<=10; i++)blog

     {

            cBuf[i] = 0;

     }

     printf("out put %s\n", pTemp);

     return   (0);

}

 

 

      所用demo程序编译未报错,可成功上传,程序编译结果如图 2-1所示,开发人员在开发过程当中常常会出现这类问题,当代码量较大时,人工核查工做量太大,准确率也无法获得保障。在编译过程当中也不会发现这些错误,而这些错误会大大下降代码质量和安全,咱们经过代码静态分析能够有效规避这些问题。

           wKioL1loL-jRG5KEAACdpPUBDpo431.png

图 2-1  编译结果

 

   选中须要调试的工程,这里选择“static_check_app”工程,右击工程选择“SylixOS Code StaticAnalysis”,点击“Run CodeStatic Analysis”, 或者使用快捷键“Ctrl+Shift+C”,操做如图 2-2所示。

           wKioL1loL9rxH6QtAAILzZeSu1E464.png

图 2-2  操做步骤

 

    运行结果如图 2-3所示,第11和14行分别显示数组越界和野指针错误。

wKiom1loL_2BMlo5AAKF_BIuV_A108.png

图 2-3  静态代码分析结果

检查完成后,选中须要调试的工程,这里选择“static_check_app”工程,右击工程选择“SylixOS Code Static Analysis”,点击“ClerMarks”,或者使用快捷键“Ctrl+Alt+M”,运行结果如图 24所示,第11和14行错误提示被清除了,为下次检查时提供新的材料模板。

wKioL1loMBiy7EOnAABvY_i9hQ8164.png

图 2-4  清除错误提示信息

 

3. 总结

在SylixOS中咱们能够使用多种调试方式进行相关调试,咱们能够根据实际状况对程序进行调试,本节主要介绍代码静态检查的具体调试方式,下一节将详细介绍代码覆盖率分析调试。

4. 参考资料

《SylixOS应用程序开发手册》

《RealEvo-IDE使用手册》

相关文章
相关标签/搜索