Tag: itron

是否有一种编程方式来检查堆栈损坏

我正在使用multithreading嵌入式应用程序。 每个线程都根据其function分配堆栈大小。 最近我们发现其中一个线程通过定义一个超过堆栈大小的局部变量数组来破坏堆栈。 操作系统是uItron。 我的解决方案,我注册了10 mS的计时器,这个计时器将检查堆栈损坏。 堆栈损坏检查方法,1。用一些独特的模式初始化堆栈内存(我使用0x5A5A5A5A)2。检查堆栈内存顶部是否仍然是0x5A5A5A5A 我的问题, 有没有更好的方法来检查这种类型的腐败 忘了添加,立即添加:操作系统:Itron,处理器:ARM9。 编译器:不是GCC(特定于ARM9由处理器供应商提供)……并且没有内置支持堆栈检查…