freertos任务基础知识(freertos篇)

article/2025/8/27 4:45:43
多任务
  • 对于单任务系统就是常说裸机大while循环,有的时候也需要加一些中断服务函数完成一些处理,相比于多任务而言上面的单任务系统也叫做前后台系统,即(中断服务函数叫前台程序,大while叫后台程序)
    在这里插入图片描述
    前后台的实时性差,前后台系统各个任务都是排着队等着轮流执行不管你的优先级高低都要等着,优点资源消耗少。在应用大的场合就优点不够用了

  • 多任务会把大的问题进行分而治之。把大的问题分成小的问题。即这些小任务是并发的(实现这些东西就是任务调度器)freeRTOS是一个抢占式的实时多任务系统。
    在这里插入图片描述
    高优先级的任务可以打断低优先级的任务的运行而取得CPU的使用权,这样就保证那些紧急任务的运行。高优先级的任务执行完以后重新把CPU的使用权归还给低优先级的任务,这就是抢占式多任务的系统的基本原理

任务状态
  • 运行态
  • 就绪态
    刚刚创建好的任务是处于就绪态的
  • 阻塞态
  • 挂起态
    在这里插入图片描述
任务优先级
  • 每一个任务都可以分配一个从0~(configMAX_PRIORITIES-1)的优先级
  • 其数字越大,优先级越高
任务实现

在这里插入图片描述

任务控制块

在这里插入图片描述

任务堆栈
  • 任务堆栈用来保存任务现场(cpu寄存器值),创建任务的时候需要指定任务堆栈,任务堆栈的变量类型为StackType_t,
    -
    在这里插入图片描述
    此处的大小就是128*4byte

freertos特点

  • 没有使用限制
  • 支持抢占
  • 支持优先级
  • 每个任务都拥有堆栈导致了RAM使用量增大
  • 如果使用抢占的话的必须仔细的考虑重入的问题

http://chatgpt.dhexx.cn/article/DMQNUCDC.shtml

相关文章

FreeRTOS学习,适用于FreeRTOS初学者,FreeRTOS整体知识框架

目录 一、为什么要学习FreeRTOS 二、前言------从0到1认识FreeRTOS 1、逻辑系统与多任务系统 1.1、裸机系统:裸机系统通常分成轮询系统和前后台系统 1.2、多任务系统 2、数据结构-列表与列表项 三、任务 3.1基本属性 3.1.1任务栈 3.1.2任务控制块 3.1.3任…

一、初识FreeRTOS之FreeRTOS简介

目录 一、什么是FreeRTOS? 二、为什么选择FreeRTOS? 三、FreeRTOS的特点 四、FreeRTOS资料与源码下载 五、FreeRTOS源码文件介绍 一、什么是FreeRTOS? Free即免费的,RTOS的全称是Real time operating system,中文就是实时操作…

Docker技术入门与实战-第3版.pdf OCR 高清 可复制

Docker技术入门与实战-第3版.pdf OCR 高清 可复制 Docker技术入门与实战-第3版.pdf OCR 高清 可复制简介预览下载地址 Docker技术入门与实战-第3版.pdf OCR 高清 可复制 简介 本书从Docker基本原理开始,深入浅出地讲解Docker的构建与操作,内容系统全面…

从docker到kubernetes(k8s)入门与实战--docker教程

安装docker 装个依赖 yum -y install gcc gcc-c 卸载旧版本 yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine 安装依…

Docker 入门到实战教程(二)安装Docker

一.卸载旧版本 较旧的 Docker 版本称为 docker 或 docker-engine 。如果已安装这些程序,请卸载它们以及相关的依赖项。 $ sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate…

Docker入门及进阶教程

阅读声明: 该教程笔记来源于dockers——菜鸟教程 一、Docker介绍 1. Docker教程 Docker是一个开源的容器引擎,基于Go语言并遵从Apache2.0协议开源。 Docker可以让开发者打包他们的应用以及依赖包到一个轻量级,可移植的容器,然后发…

Docker 实战

目录 一、常用操作 1、镜像创建 2、镜像查询 3、镜像删除 4、镜像运行 5、查询容器进程 6、查询容器执行日志 7、删除容器 8、进入容器 二、导入和导出 1、save 和 load 2、export 和 import 3、区别 三、案例 1、检查是否安装依赖 2、安装依赖 3、docker打包镜…

Docker 实战教程之从入门到提高 (四)

本系列的前三篇文章,我们学习了如何在 Ubuntu 操作系统安装 Docker,并且通过实战练习,了解了 Docker 和宿主机操作系统文件目录互相隔离的实现原理,以及 Docker Volume 的工作原理。通过动手对 Nginx Docker 镜像进行修改&#xf…

Docker快速入门实战

为什么使用容器? 1、上线流程繁琐 2、资源利用率低 3、扩容/缩容不及时 4、服务器环境臃肿 5、环境不一致性 容器VS虚拟机 VM VS Container Docker 是什么 1、使用最广泛的开源容器引擎 2、一种操作系统级的虚拟化技术 3 、依赖于Linux内核特性&#xff1…

Docker教程(Docker实战)

Docker快速入门教程 **欢迎关注公众号【程猿薇茑】** 【仅需一次订阅,作者所有专栏都能看】 推荐【Kafka】https://bigbird.blog.csdn.net/article/details/108770504 推荐【rabbitmq】https://bigbird.blog.csdn.net/article/details/81436980 推荐【Flink】https://blog.csdn…

Docker最全教程——从理论到实战(一)

容器是应用走向云端之后必然的发展趋势,因此笔者非常乐于和大家分享我们这段时间对容器的理解、心得和实践。 本篇教程持续编写了2个星期左右,只是为了大家更好地了解、理解和消化这个技术,能够搭上这波车。 你可以关注我们的公众号“magicco…

Docker 实战教程之从入门到提高(二)

本系列第一篇文章,Docker 实战教程之从入门到提高 (一),我们已经介绍了如何在 Ubuntu 操作系统中安装 Docker,以及 Proxy 和 Insecure Registry 的配置。 本文继续 Docker 的实战学习。 练习1:通过一个简单例子学习 Docker 和宿…

docker简单实战

1.为ubuntu镜像添加ssh服务 1.1查看可用的ubuntu版本 1)访问ubuntu镜像库地址:https://hub.docker.com/search?qubuntu&typeimag1e 2)点击第一个ubuntu的官方镜像,选择tag标签,可以选择下载对应的ubuntu镜像 3…

Docker入门与进阶(基础+实战+进阶+Compose+Swarm)超详细版

Docker入门与进阶(基础实战进阶) 一、Docker入门1.1 Docker 概述1.2 Docker 安装、配置、卸载1.3 Docker 使用流程1.4 Docker 访问原理1.5 Docker 常用命令1.5.1 基础命令1.5.2 镜像命令1.5.3 容器命令1.5.4 其他常用命令1.5.5 镜像导出、导入 1.6 制作D…

Docker 入门到实战教程(三)镜像和容器

上一篇文章介绍到Docker的安装,那我们就来验证下 验证安装结果 docker run --rm hello-world输入以下的内容代表安装成功 file 下面开始镜像和容器操作 一. 镜像操作 Docker完美融合Linux,所以Docker命令行的风格和Linux还是比较接近的,相对来说比较容…

Docker入门实战大全终极版

Docker入门 学习推荐 哔哩哔哩 狂神说java 本文主要学习大纲 Docker组成 Docker基本操作 Docker安装卸载Docker阿里云镜像加速Docker run 运行流程图底层原理 Docker的常用命令 帮助命令镜像命令 docker images 查看所有本地的主机上的镜像docker search 搜索镜像docker pull…

Docker入门实战看这篇就够了(最新详细以及踩过的坑)

Docker入门实战看这篇就够了 前言初识是什么容器与虚拟机 能干什么去哪玩 安装先决条件查看自己的内核 安装所需的软件包(支持devicemapper存储类型)设置镜像的仓库设置yum源安装docker启动docker测试配置自己的阿里云镜像加速(强烈推荐)注册登录阿里云开发平台进入控制台选择容…

Docker 基础实战教程:入门

Docker 基础实战教程:入门 前言Hello Docker !Docker使用的基本过程Docker使用基本实例 拉取镜像获取镜像docker pull命令背后的工作docker pull的两个基本实例设置镜像加速器 导入导出容器docker export和docker save的区别 前言 Docker是一个操作系统级的虚拟化技…

Docker 入门到实战教程(十三)Docker Compose

文章目录 一. Docker Compose 概述与使用二. 安装 Docker Compose三. 使用Docker Compose四. 更新Docker Compose五. 更新应用程序测试 一. Docker Compose 概述与使用 1.1 概述 Compose 项目是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排,定义和运行多容器D…

我的Docker学习笔记:从入门到实战过程全记录

文章目录 1 和Docker相关的概念1.1 虚拟机和容器1.2 容器、镜像和Docker1.3 Docker和k8s 2 Docker的安装2.1 在ubuntu中安装2.2 在Win10中安装2.3 Hello world 3 Docker镜像的使用3.1 列出本地所有镜像3.2 从镜像库中查找镜像3.3 下载新的镜像 4 Docker容器的使用4.1 启动容器4…