硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3988|回复: 1
收起左侧

[μCOS-III] uCOS-III的V3.05.00版本中新增的堆栈超出检测机制,比较实用------->堆栈红灯区

[复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107046
QQ
发表于 2015-7-27 10:37:49 | 显示全部楼层 |阅读模式
在uCOS-III的早期版本中,是通过下面这种方式简单设置一下堆栈空间剩余百分比位置,但是却没有实际的检测机制去检测是否
进入到相应的剩余堆栈空间中,需要用户去自己做检测。
1.png

参数stk_limit
2.png

=============================================================================
新加入的堆栈红灯区检测机制----StkRedzoneChk
主要在两个地方进行检测。
1. 在PendSV中断里面进行任务切换的时候进行检测----->这里主要检测的是任务堆栈的使用情况,以此来检测堆栈是否进入到红灯区
3.png

   在OSIntExit函数中也做了任务堆栈使用情况的检测---->检测到当前需要执行的最高优先级任务还被中断的任务时做一次检测
5.png

2. 另一个是在OSIntExit函数中------>这里主要是检测的是系统堆栈的使用情况,以此来检测堆栈是否进入到红灯区。
5.png
回复

使用道具 举报

6

主题

90

回帖

108

积分

初级会员

积分
108
QQ
发表于 2015-7-27 23:40:08 | 显示全部楼层
[s:141] [s:141] [s:141]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-15 10:28 , Processed in 0.165063 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表