当前位置: 首页 > news >正文

FreeRTOS--基础知识

FreeRTOS基础知识

裸机与RTOS的特点:

裸机:

裸机又称为前后台系统,前台系统指的是中断服务函数,后台系统指的是大循环,即应用程序。
1、实时性差:应用程序轮流执行
2、delay:空等待,CPU不执行其他代码
3、结构臃肿:实现功能都放在无线循环中

RTOS

Real Time OS,实时操作系统。
1、分而治之:实现任务划分为多个任务
2、延时函数:任务调度,将CPU资源让给优先级低一点的任务
3、抢占式
4、任务堆栈:每个任务都有自己的栈空间,用于保存被打断任务的寄存器地址
PS:中断可以打断任意任务;人物之间可以同等优先级

任务调度

调度器就是使用相关的调度算法来决定当前需要执行的哪儿个任务。
FreeRTOS一共支持三种任务调度方式:
1、抢占式调度:针对优先级不同的任务,每个任务都有一个优先级,优先级高的任务可以抢占优先级低的任务。
2、时间片调度:针对优先级相同的任务,当多个任务的优先级相同时,任务调度器会在每一个系统时钟节拍拍到的时候切换任务。
同等优先级任务轮流的享有相同的CPU时间(可设置),叫时间片。在FreeRTOS中,一个时间片就等于systick中断周期。
3、协程式调度:当前执行任务将会一直运行,同时优先级高的任务也不会抢占优先级低的任务。

任务状态

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
调度器总是在所有处于就绪列表的任务中,选择具有最高优先级的任务来执行。

http://www.lryc.cn/news/505750.html

相关文章:

  • Node的学习以及学习通过Node书写接口并简单操作数据库
  • 【Linux探索学习】第二十二弹——用户缓冲区:深入解析操作系统中数据交互时的缓冲区机制
  • Cesium-(Primitive)-(CylinderOutlineGeometry)
  • 【ETCD】【源码阅读】深入分析 storeTxnWrite.Put方法源码
  • MySQL技术:深入理解索引与优化
  • 【广东-东莞】《东莞市政府投资信息化项目造价指南》-省市费用标准解读系列26
  • 8、基于SpringBoot的房屋租赁系统
  • SLM510A系列——24V,15到150mA单通道可调电流线性恒流LED驱动芯片
  • 深度学习试题及答案解析(一)
  • 【钉钉群聊机器人定时发送消息功能实现】
  • uni-app多环境配置动态修改
  • verilog代码连线集成工具的实践
  • 【深入STL:C++容器与算法】深度解析string类的使用
  • 【ChatGPT】解锁AI思维链:如何让机器像人类一样思考?
  • 用 Python 从零开始创建神经网络(十七):回归(Regression)
  • gentoo安装Xfce桌面
  • 阿尔茨海默症数据集,使用yolo,voc,coco格式对2013张原始图片进行标注,可识别轻微,中等和正常的症状
  • 【物联网技术与应用】实验4:继电器实验
  • lvs介绍与应用
  • Group FLUX - User Usage Survey Report
  • XXE靶机攻略
  • 第78期 | GPTSecurity周报
  • 电容Q值、损耗角、应用
  • 【WRF教程第3.6期】预处理系统 WPS 详解:以4.5版本为例
  • linux 安装redis
  • Linux - rpm yum 工具及命令总结
  • 电子应用设计方案-58:智能沙发系统方案设计
  • 复习打卡Linux篇
  • 在Ubuntu 22.04 LTS中使用PyTorch深度学习框架并调用多GPU时遇到indexSelectLargeIndex相关的断言失败【笔记】
  • qt 类中的run线程