首页 > 其他分享 >FreeRTOS操作系统1,介绍

FreeRTOS操作系统1,介绍

时间:2024-11-03 22:49:23浏览次数:5  
标签:优先级 操作系统 FreeRTOS 分时操作系统 介绍 任务 实时操作系统 1.2

1操作系统

1.1.1操作系统概述

手机:点击相机(上位机顶层)---->操作系统----->打开摄像头(硬件底层)

不上操作系统:相机--->打开摄像头:该情况下只有原相机可以打开摄像头,不支持第三方软件

MCU:没上操作系统之前--->硬件

上操作系统:MCU--->操作系统--->硬件

图例:

1.1.2常见操作系统

Windows  linux  ios 安卓  鸿蒙  ucos FreeRTOS    RTT(实时操作系统)

1实时操作系统(RTOS)

注重实时性、小型的系统(嵌入式中的系统)

这个系统内的系统调度(任务切换)靠优先级完成,任务的执行是没有时间界限的,

任务结束可以挂起或者杀死任务,再次启动此任务唤醒或者创建

操作实时操作系统时,优先级,任务切换(调度)...这些都很关键(工程师来决定)

UCOSII/III  FRTOS  RTT......

2分时操作系统

任务的执行与切换等等任何操作依靠时间片完成、

例如:一个时间片是1ms,任务A分配十个时间片(任务A执行10ms)

Windows95  linux内核2.6之前也是分时操作系统

3半分时半实时操作系统

大型操作系统几乎全是半实时半分时操作系统

Windows 鸿蒙 linux2.6之后 安卓...

1,2FreeRTOS

1.2.1FreeRTOS操作系统的调度原则

实时操作系统:

分时操作系统:

1.2.2FreeRTOS操作系统的程序结构

任务之间的调度需要依靠优先级完成(c语言  中断...)

UCOS中数字越少优先级越高

FreeRTOS中数字越大优先级越高

优先级都是有范围的(任务也是有范围的)

最小优先级与最大优先级不要使用

最小优先级:空闲事件(CPU)

最大优先级:系统的紧急事件

1.2.3FreeRTOS操作系统的任务结构

任务结构:任务控制块 任务函数 任务栈(存放任务函数的地址) 任务优先级 任务状态

任务栈:用来保存任务环境(寄存器配置、变量等)和恢复任务环境

任务状态:停止/睡眠 挂起/等待 就绪 运行 中断

1.2.4FreeRTOS操作系统的任务调度和任务切换

任务调度:从A任务结束跳到B任务、发生一次系统调度

可以是同一个任务

发生了任务调度不一定发生任务切换

任务切换:从一个任务接着跳到另一个任务执行

运行态到挂起有两种方式:延时(vTaskDelay)调用挂起函数

挂起态到就绪态有两种方式:延时结束  调用唤醒函数

标签:优先级,操作系统,FreeRTOS,分时操作系统,介绍,任务,实时操作系统,1.2
From: https://blog.csdn.net/2201_75620634/article/details/143311022

相关文章

  • GPT 1-3 简单介绍
    GPT-1简介2018年6月,OpenAI公司发表了论文"ImprovingLanguageUnderstandingbyGenerativePretraining"(用生成式预训练提高模型的语言理解能力),推出了具有1.17亿个参数的GPT-1(GenerativePre-training,生成式预训练)模型。GPT-1采用传统的语言模型方法进行预训练,即使用......
  • ZK范式系列之zkVM介绍(1)
    1.引言zkVM(Zero-KnowledgeVirtualMachine,零知识虚拟机):是一种功能强大的虚拟机,利用零知识证明(zero-knowledgeproof,ZKP)来保证计算的完整性和隐私性。零知识证明(ZKP):是一种密码学技术,使一方能够向另一方证明声明的有效性,而无需透露任何其他信息。简单来说,这就像证明......
  • 19-操作系统安全保护
    19.1概述1)概念一般来说,操作系统的安全是指满足安全策略要求,具有相应的安全机制及安全功能,符合特定的安全标准,在一定约束条件下,能够抵御常见的网络安全威胁,保障自身的安全运行及资源安全。操作系统的安全可控目标分为两个层面:第一个层面,是指给定一个操作系统,用户能够实现对操......
  • Windows Active Directory技术介绍和应用——集中式用户账户管理
    大纲静态IP构建组织用户加域修改DNS加域题外参考资料企业可以将所有员工的账户信息集中存储在ActiveDirectory中,方便管理员进行统一创建、修改、删除用户账号等操作。例如,当新员工入职时,管理员可以快速创建其账号并赋予相应的权限和访问级别;员工离职时,也能及时禁......
  • 虚拟化技术介绍
    概念解释虚拟化(技术)是什么虚拟化技术是一种资源管理(优化)技术,将计算机的各种物理资源予以抽象、转换,然后呈现出来的一个可供分割并任意组合为一个或多个(虚拟)计算机的配置环境。(以上摘自《虚拟化技术发展编年史》)计算机虚拟化技术简单说来就两点:虚拟化(抽象)+复用(转换);虚拟化设备......
  • Threejs渲染3D字体介绍
    概述本文主要介绍如何通过Three.js生成3D文本。效果展示代码分析核心代码部分就是通过Three.js中的FontLoader和TextGeometry来加载字体并创建3D文本。核心代码如下:constloader=newFontLoader();loader.load(textFamily.value,function(font){......
  • 【国产化替换】信创操作系统:银河麒麟桌面操作系统V10SP1-2403-X86上安装和使用Wiresha
    https://mp.weixin.qq.com/s/cDPN024RaavRcyedGtKYGg信创操作系统:银河麒麟桌面操作系统V10SP1-2403-X86上安装和使用Wireshark网络协议分析器的详细步骤原创易联无界一、引言1.1文档概述Wireshark适用于所有主流Linux发行版,是一款自由开源的网络协议分析器,通过使用Wi......
  • 智能指针介绍和方法
    普通指针的不足new和new[]的内存需要用delete和deletel]释放。程序员的主观失误,忘了或漏了释放。程序员也不确定何时释放。普通指针的释放类内的指针,在析构函数中释放。C++内置数据类型,如何释放?new出来的类,本身如何释放?C++11新增三个智能指针类型unique_pt......
  • 图文深入介绍Oracle DB link(三)
    1.引言:本文承接上篇继续深入介绍OracleDBlink,主要介绍如何应用好DBLINK。2.OracleDBlink的应用场景1.数据迁移与整合企业数据仓库建设在构建企业数据仓库时,数据通常来源于多个不同的业务系统数据库。这些业务系统可能基于不同的数据库管理系统(DBMS),但如果都是O......