SylixOS调试方法的静态代码分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
1. SylixOS调试方法介绍
SylixOS 实现了一个功能强大的调试 stub,可在设备或模拟器上在线调试应用程序,RealEvo-IDE 也提供配套的调试插件。目前 RealEvo-IDE 既支持自动推送调试、也支持传统的手动启动 gdbserver 的调试方式。在官方公布的使用手册中没有详细写出在日常开发中非常实用的几种调试方式,我们通过新建几个App工程来做相应的演示,主要有代码静态分析、代码覆盖率检查、性能分析以及一个实战案列的演示,本文主要介绍代码静态分析调试。
2. SylixOS调试步骤详解
代码静态分析主要用来检查野指针、数组越界等问题,我们建立一个static_check_app,用来做代码静态分析的演示,程序清单如程序清单 21所示。
程序清单21 static_check_app清单
#include<stdio.h> intmain (intargc, char **argv) { charcBuf[10]; char *pTemp; int i; for (i=0; i<=10; i++) { cBuf[i] = 0; } printf("out put %s/n", pTemp); return (0); }
|
所用demo程序编译未报错,可成功上传,程序编译结果如图 21所示,开发人员在开发过程中经常会出现这类问题,当代码量较大时,人工核查工作量太大,准确率也没法得到保障。在编译过程中也不会发现这些错误,而这些错误会大大降低代码质量和安全,我们通过代码静态分析可以有效规避这些问题。
图 21 编译结果
选中需要调试的工程,这里选择“static_check_app”工程,右击工程选择“SylixOS Code StaticAnalysis”,点击“Run CodeStatic Analysis”, 或者使用快捷键“Ctrl+Shift+C”,操作如图 22所示。
图 22 操作步骤
运行结果如图 23所示,第11和14行分别显示数组越界和野指针错误。
图 23 静态代码分析结果
检查完成后,选中需要调试的工程,这里选择“static_check_app”工程,右击工程选择“SylixOS Code Static Analysis”,点击“ClerMarks”,或者使用快捷键“Ctrl+Alt+M”,运行结果如图 24所示,第11和14行错误提示被清除了,为下次检查时提供新的材料模板。
图 24 清除错误提示信息
在SylixOS中我们可以使用多种调试方式进行相关调试,我们可以根据实际情况对程序进行调试。
看完上述内容,你们掌握SylixOS调试方法的静态代码分析的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/199522.html