UCOSII归纳三
来源:互联网 发布:w10系统怎么连接网络 编辑:程序博客网 时间:2024/05/16 08:43
1.OS_TCB任务控制块全部驻留在RAM中,这是值得注意的,特别是在RAM缺乏的时候。
2.任务的管理:
1:建立和删除任务。(注意:任务删除要考虑任务资源的释放。)
2:请求删除任务:如果任务A运行一段时间已经拥有了一些资源,而任务B想删除它,要是强制删除,这些资源可能没有释放。
3:改变任务优先级。
4:挂起和恢复任务。
3.信号量由两部分组成:信号量的计数值和等待该信号量任务的等待列表。主要用于资源共享和任务同步。
4.Malloc和free对内存操作的缺点:1:多次操作会产生内存碎片。2:执行时间并不确定。
5.可重入的代码可以被一个以上的任务调用,而不必担心数据的破坏。
6.void OSCtxSw(void);//用户任务切换
void OSIntCtxSw(void);//中断任务切换
void OSStartHighRdy(void);//操作系统第一次启动的时候调用的任务切换。
void OSPendSV(void);//用户中断处理函数
7.任务函数的局部变量越多,嵌套层数越多,堆栈越偏大,也要注意堆栈对齐问题。
8.Volatile作用是阻止编译器进行优化,每次读取或修改值的时候,都必须重新从内存中或外设寄存器中读取或修改,防止从缓冲处读取的值是过期的。
9.Volatile应用场合:
1:中断ISR中修改,供其它程序检测的变量。
2:多任务下任务共享的变量资源。
3:外设的寄存器地址。
10.STM32中UCOSII的系统时钟节拍
void SysTick_Handler(void)
{
if(delay_osrunning==1)//OS开始跑了,才执行正常的调度处理
{ OSIntEnter(); //进入中断
OSTimeTick(); //判断延迟的任务是否到达时间等
OSIntExit(); //触发任务切换软中断
}
}
- UCOSII归纳三
- UCOSII学习归纳一
- UCOSII归纳二
- UCOSII归纳四
- ucosii
- ucosii
- ucosii
- UcosII
- 启动ucosii之三PC_VectSet(uCOS,OSCtxSw)
- UCOSii(三)——时间管理
- DBA 知识点归纳(三)
- Qt归纳(三)
- Freemarker学习归纳(三)
- Freemarker学习归纳(三)
- spring容器归纳(三)
- 看懂三篇文章--需要归纳
- Java集合归纳-<三>Map
- 数据结构基础知识核心归纳(三)
- 【HTTP】Fiddler(一) - Fiddler简介
- 关于perfmon2的使用记录
- 深入JVM虚拟机(二) JVM运行机制
- ACM刷题之HDU————小数化分数2
- Nginx路径匹配规则详解
- UCOSII归纳三
- 【cocos2d-x从c++到js】12:回调函数1——按键回调
- LBP
- Vive开发第一步
- install jdk 1316 error
- [主席树] BZOJ 2588 Spoj 10628. Count on a tree
- Linux命令行执行.sql文件及常用sql命令
- Android开发之本地音乐播放器(简单粗暴版)
- 【cocos2d-x从c++到js】13:回调函数2——JSCallbackWrapper