当前位置:  技术问答>linux和unix

ucosII 移植到arm 用ads,关于关中断、开中断

    来源: 互联网  发布时间:2016-06-30

    本文导语:  关中断后,修改优先级就绪表,然后开中断 结果就绪表又还原到修改之前的效果。 而且这中情况,出现在低优先级任务创建高优先级任务;高优先级创建低优先级任务时,没有这种错,为什么? 还有,关开中断后,...

关中断后,修改优先级就绪表,然后开中断
结果就绪表又还原到修改之前的效果。
而且这中情况,出现在低优先级任务创建高优先级任务;高优先级创建低优先级任务时,没有这种错,为什么?
还有,关开中断后,是不是自动将当前任务的TCB、prio 赋给 OSTCBCur,OSPrioCur?

|
低优先级的任务创建了高优先级任务后,会发生任务切换,即被抢占,此时低优先级的任务会被pending,你修改优先级就绪表也许尚未完成;高优先级创建低优先级时,低优先级任务虽然创建但是需要高优先级任务结束后才能发生任务切换,此时优先级表修改完成。

关中断的时候什么都不会变,开中断后很多任务会被打断,尤其是动态更改优先级这种情况很复杂很耗费资源,也有可能会失败。

你为什么这样做?要解决优先级反转吗?

|
没玩过uCOS,
帮顶了

|
http://www.wpanclub.com/?uid-4070-action-viewspace-itemid-2035

|
帮up

|
莫非你修改的是中断栈中的临时变量或者是寄存器?
在什么cpu上?
代码呢?

|
你确认你修改值成功了么

    
 
 

您可能感兴趣的文章:

  • 基于skyeye的ucosii系统的移植
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请问ucosii中的任务为什么必须是无限循环呢,这样的话任务不是永远不结束了吗?
  • ucosII 实现允许存在同优先级任务,ID应该怎么设置?更改优先级后任务ID怎么办?
  • 讨论:ucosii和嵌入式linux的比较?
  • 关于ucosII中调度算法


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3