Tracealyzer如何简化调试

描述

如果没有专为多线程代码设计的有效调试和分析工具,开发基于Zephyr的软件可能更具有挑战性。Percepio Tracealyzer可让您快速解决问题并加快日常开发。优化您的系统以获得可靠的实时性能,获取免费评估非常方便,你在15分钟内开始使用这个软件。

简化调试并加快开发速度

“Tracealyzer将我们的开发速度提高了一倍,使用此工具可以明显解决需要几天才能解决的问题,而且只是一个快速解决方案。我们一直在使用它。

—Alex Pabouctisids,Flyability首席固件工程师

厌倦了无休止地调试嵌入式C/C++代码?告别繁琐的故障排除,欢迎使用Percepio Tracealyzer加速开发。对于当今复杂的RTOS或Linux系统,传统调试通常无效,并且可能会消耗40-50%的开发时间。使用Tracealyzer获得可视化跟踪可观察性,以加快你的日常调试速度并解决传统调试无法解决的问题。下面了解Tracealyzer如何简化调试。

优化系统性能

“在运行该工具后不到5天的时间里,我们将图形渲染引擎的性能提高了3倍”

—Serious Integrated Inc.首席执行官Terry West

Tracealyzer提供高级分析功能,显示数字背后的事件。查明性能瓶颈并释放硬件的全部潜力。确保你满足产品性能目标并提供响应式用户体验。

对于多线程的RTOS或Linux系统来说,优化是一项挑战。当线程速度较慢时,通常是由于源代码中不明显的因素造成的。可视化跟踪可观察性提供了完整的画面并简化了优化。

RTOS

跟踪你的任务

Zephyr内核提供多线程,其中每个任务都有自己的堆栈和调度优先级,这对于功能正确性和性能非常重要。Tracealyzer允许你分析不同优先级分配的行为和性能,以及任务的堆栈使用情况。如果你的堆栈太小,则可能会因堆栈溢出而出现错误。如果它们太大,则会浪费宝贵的RAM,而这些RAM可能是应用程序中的需要。

跟踪视图显示任务调度和对内核API函数的调用。这样,你就可以准确查看任务的激活时间、实际执行时间以及有时无法按预期执行的原因。你还可以看到一个概览,其中显示了哪些任务正在消耗处理器时间,如“CPU Load Graph”所示。此外,还提供了详细的统计数据,例如任务执行时间和响应时间。

跟踪Zephyr内核API调用

Zephyr内核提供了许多个API,用于在任务之间传递数据以及保护共享资源,例如队列、信号量和互斥锁。这些API函数可能会阻止调用任务的执行,直到另一个任务执行了匹配的操作。此类API调用可能会在任务之间形成一个依赖关系网络,这在源代码中并不明显。Tracealyzer可以可视化任务交互,这使得开发者理解、调试和优化Zephyr应用程序变得更加容易。下面提供了一些示例。

RTOS

 

RTOS

 

RTOS

应用程序日志记录

Tracealyzer提供高级日志记录功能。在应用程序代码中记录自定义事件和数据,并将其与内核跟踪一起显示在Tracealyzer中,并作为图形绘图显示。这提供了在运行时对应用程序代码的更深入的可观察性。

与printf调用不同,Tracealyzer日志记录不会将代码速度减慢几毫秒。与UART上的printf相比,高效的记录功能可以消除超过99%的记录开销。这种低影响的日志记录可确保你在调试中获得正确的图像,而不会因缓慢的日志记录调用而产生探测影响。

例如,状态转换可以记录并显示在“logic analyzer”视图中和状态图中。结果可以显示在跟踪视图中(如左所示)或总结为状态图(右侧),从而轻松发现错误行为。

RTOS

软件运行方式

使用Tracealyzer不需要任何特定的硬件,只需要一个合适的开发板即可。您可以从RAM中的跟踪缓冲区捕获最新活动的快照,或者使用以太网或SEGGER J-Link、IAR I-jet或Keil ULINK等调试探针将数据流式传输到主机。这样,你可以长时间监控你的系统并捕获任何问题。

Zephyr的Tracealyzer依赖于Percepio TraceRecorder,该记录可在Apache 2.0许可证下的Zephyr存储库中使用。按照入门指南,几分钟内即可将其集成到你的项目中。

Tracealyzer适用于大多数嵌入式处理器(例如ARM芯片等),Percepio为常见开发工具提供插件和集成,包括Segger J-Link、GDB、STM32CubeIDE、Keil MDK、IAR和Lauterbach。

麦克泰技术代理Tracealyzer,具有丰富的RTOS分析软件与调试工具使用方面的知识和经验,欢迎咨询info@bmrtech.com。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分