c - 如何确定嵌入式程序正在使用多少堆栈空间

标签 c stack embedded stack-trace

我想知道确定程序使用了多少堆栈空间的最佳方法是什么,是否有任何技术或工具来生成统计信息,而不是手动计数?

该程序希望在代码编辑器中分析 C 程序,如果这有什么不同的话。

谢谢

最佳答案

您可以使用某种模式(例如 0xDEADBEEF)填充堆栈内存,然后运行一段时间,然后检查堆栈以查看使用了多少。您仍然需要进行分析以找到最深的路径,然后在应用程序中可能的情况下在此基础上生成最深的嵌套中断。

关于c - 如何确定嵌入式程序正在使用多少堆栈空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35878689/

相关文章:

c - 用于在 Tizen 中获取位置值的包

c - C 中的面向对象程序 - 列表

c - 用数组实现栈

c - 如何在单片机内部Flash ROM中写入.hex文件?

c - IAR(对于STM8)中每100微秒调用的例程的测量时间

c - 如何让多个进程同时读取同一个文件会减慢读取速度?

C数组和函数,如何返回?

linux - gdb:检查堆栈和小端澄清

c - gcc -fno-stack-protector 选项

c++ - 不正常的退出会破坏 C++ 内存分配器吗?