当前位置: 代码迷 >> 综合 >> UCOS III 操作系统回顾
  详细解决方案

UCOS III 操作系统回顾

热度:97   发布时间:2024-02-28 12:00:49.0

总结知识根据B视频学习网站而来:

三。ucos 专业术语介绍:(实时操作系统)

1.什么是内核:

答:内核就是为了简化复杂操作而引入的一种操作系统,但是增加了处理器的ROM以及RAM的占用。

2.内核的调度有哪些?

1°:时间片轮转调度;即操作系统会给任务分配运行时间,运行完之后任务会释放cpu进行下一个任务(被动放弃)。若任务1运行时间低于系统分配给的任务时间则自动释放cpu,下一个任务直接开始(主动放弃)。

2°优先级调度法:总是保证优先级最高的任务最先执行。数字越小优先级越高。优先级低的任务会一直等到优先级高的任务运行结束。(主动放弃)

两种调度可以共存在ucos操作系统中。

可剥夺型内核(实时性更好);不可剥夺型内核。

3.可重入函数和不可重入函数

可重入函数:不使用全局变量,只使用局部变量,局部变量保存在堆栈中,每个任务有自己的堆栈,且互不冲突。

4.任务优先级概念:

1°ucos优先级采用8位有效数字。每个任务必须有一个优先级

2°静态优先级;动态优先级(任务运行中优先级可以更改)

3°首先第一步分配优先级,对于一个任务运行时间越短优先级应该越高。若两个任务同时使用一个全局变量,先使用全局变量的任务应该执行完毕后,才会到另外使用全局变量的任务中。(优先级翻转)解决办法:(1)动态配置当前使用全局变量的优先级,称为优先级继承,会占用cpu运行时间(UCOS不支持)。

针对于实时性要求高的任务优先级最高。任务在逻辑之前要分配一个较高优先级。

5.代码的临界段

概念:指处理器时不可分割的代码,一旦开始执行,中断不允许打入。临界段代码执行之前关闭中断处理,执行完之后开中断处理。资源和共享资源:对共享资源访问必须满足互斥(独占)

1°关中断,开中断

2°使用测试并置位指令。

3°任务禁止切换,任务允许切换。

4°使用信号量的方式(获取信号量,释放信号量)

死锁:指两个任务无限期互相等待对方控制的资源。

6.同步:两个任务之间满足某种关系但没有数据的交互;通信:两个任务之间有数据的交互。

信号量;互斥性信号量;时间标志组;事件标志组;消息邮箱;消息队列;

  相关解决方案