uboot的一些简单应用

1. 任务挂起与恢复:

   a. 可挂起自身,也可挂起别的任务。OSTaskSuspend(INT8U prio) ,当prio为OS_PRIO_SELF时,挂起自身

   b. 挂起和恢复将导致任务调度

   c. 挂起为附加功能,即若任务同时处于挂起和延迟状态,则延迟时间过后,还需等到任务恢复之后才能就绪

 

 

2. 任务延迟与取消延迟

   a. 调用延迟的任务将自己置于延迟态,不能延迟别的任务,任务延迟将导致任务调用

   b. OSTimeDlyResume()的参数为优先级,即取消的不是本身任务的延迟(本身任务无法取消自己的延迟)

 

3. 信号量的使用

  a. 首先要在主程序中创建信号量,OSSemCreate()参数为信号量的初始值

  b. 应检查OSSemPend()的错误标志

  c. OSSemPend()若能成功得到信号量,则当前任务继续运行,否则将发生任务切换

  d. OSSemPost()将导致任务调度

  

 

4. 互斥信号量的使用

  a. 信号量只能用于任务
  b. MutexCreate将创建一个任务且将占用PIP级任务控制块
  c. MutexPend会检查挂起请求的任务优先级是否比占据该互斥信号量的任务优先级高,若是,则占用优先级的任务将提升到PIP级。若当前

     任务(即挂起请求的任务)不能的到该互斥信号量,则将发生任务调度
  d. OSMutexPost将检查当前任务(也即调用OSMutexPost的任务)是否为PIP级,若是,则将当前任务还原成调用前的优先级;还将检查

     是否还有任务在等待该互斥信号量,若有,则将等待任务中优先级最高的任务置于就绪态,且将进行任务调度(注意,是优先级最高的,而

     不是先等待的)

  

 

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值