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

FreeRTOS之任务管理

四种任务状态

1.就绪(Ready)

        该任务在就绪列表中,就绪的任务已经具备执行的能力,只等 待调度器进行调度,新创建的任务会初始化为就绪态。
2.运行(Running)
        该状态表明任务正在执行,此时它占用处理器,FreeRTOS 调 度器选择运行的永远是处于最高优先级的就绪态任务,当任务被运行的刻,它 的任务状态就变成了运行态。
3.阻塞(Blocked)

        如果任务当前正在等待某个时序或外部中断,我们就说这个任 务处于阻塞状态,该任务不在就绪列表中。包含任务被挂起、任务被延时、任务 正在等待信号量、读写队列或者等待读写事件等。
4.挂起态(Suspended)


        处于挂起态的任务对调度器而言是不可见的,让一个任务进 入挂起状态的唯一办法就是调用 vaskSuspend(0)函数;而 把,一 个 挂 起 状态的任务 恢复的 唯 一途 径就,是 调 用 vaskResume() 或vTaskResumeFromISR0函 数,我们可以这么理解样起态与阳基态的区别当任务有较长的时间不允许运行 的时候,我们可以挂起任务,这样子调度器就不会管这个任务的任何信息,直到 我们调用恢复任务的API 函数;而任务处于阻塞态的时候,系统还需要判断阻塞 态的任务是否超时,是否可以解除阻塞。

任务调度

任务调度的主要是靠链表执行

抢占式调度:1.高优先级的任务先执行。2.同等优先级的任务轮流执行。3.被抢占的任务会进入就绪态。

相关文章:

  • Linux系统常见磁盘扩容操作(Common Disk Expansion Operations in Linux Systems)
  • Ant Design Vue 表格复杂数据合并单元格
  • 从自动测量、8D响应到供应链协同的全链路质量管理数字化方案——全星QMS如何破解汽车行业质量困局
  • AI技术前沿:蓝耘元生代智算云快速入门教程详解,与其他云人工智能大模型深度对比
  • AI幻觉的生成原理与应对指南:六大中文模型横向解析
  • hash.
  • AI日报 - 2024年4月14日
  • PHP爬虫教程:使用cURL和Simple HTML DOM Parser
  • ECMAScript 11 新特性
  • [c语言日寄]空间复杂度
  • 典型操作系统内核架构
  • 《一文讲透》第7期:KWDB 巧用标签与索引优化查询性能
  • 《AI大模型应知应会100篇》 第16篇:AI安全与对齐:大模型的灵魂工程
  • 计算机网络参考模型
  • Spring的定时任务
  • 抖音IP属地可以随便选择地址吗?深度解析
  • Kaggle-Store Sales-(回归+多表合并+xgboost模型)
  • 视频分析设备平台EasyCVR打造阳光药房远程可视化智慧监管体系
  • 文档解析的技术难点有哪些?如何解决?
  • 我的NISP二级之路-05
  • 视频丨伊朗港口爆炸事件灭火工作已完成80%
  • 上海经信委:将推动整车企业转型,加强智能驾驶大模型等创新应用
  • 新华时评:坚定不移办好自己的事,着力抓好“四稳”
  • 冯象|那“交出”后的崩溃,如撒旦坠落诸天
  • 著名茶叶专家谢丰镐逝世,享年95岁
  • 嫦娥五号《月球样品借用协议》签约,2025中国航天公益形象大使公布