RTOS实时操作系统

常见的RTOS有:

  • VxWorks:广泛应用于工业、医疗、通信和航空航天领域。
  • FreeRTOS:一个开源的RTOS,广泛用于嵌入式设备。
  • uc/OS:一个适用于教育和小型商业项目的RTOS。
  • QNX:主要应用于汽车和工业自动化领域。
  • Windows CE(现在称为Windows Embedded Compact):微软提供的嵌入式操作系统。\

主要特点包括:

  1. 确定性(Determinism):系统能够保证在给定的时间限制内完成特定的任务。
  2. 任务调度(Task Scheduling):RTOS通常采用优先级为基础的抢占式调度策略,以确保高优先级任务能够及时执行。
  3. 中断处理(Interrupt Handling):快速和高效的中断处理是RTOS的关键特性,它能够快速响应外部事件。
  4. 内存管理(Memory Management):为了提高效率,RTOS通常采用静态内存分配而不是动态内存分配。
  5. 同步和通信机制(Synchronization and Communication Mechanisms):如互斥锁(mutex)、信号量(semaphore)、事件标志(event flag)和消息队列(message queue)等,以确保任务间的正确通信和数据一致性。

嵌入式系统类型:

  1. 按复杂度分
    • 复杂嵌入式系统:这类系统一般使用Linux、Android等全功能操作系统。使用应用处理器,具备复杂的人机、网络、文件系统等。
    • 深度嵌入式系统:这类系统比较简单,通常不使用操作系统,或者仅仅使用RTOS(实时操作系统)。处理器一般是微控制器(MCU)或DSP等,仅具备简单的人机交互,甚至没有人机交互,物联网设备多属于此类。
  2. 按所使用的操作系统分
    • Rich OS类(全能操作系统):这类嵌入式系统运行功能非常齐全的操作系统,例如Linux、Android、iOS等。这类系统通常使用应用处理器,如Cortex-A、x86等架构的处理器。智能手机、平板电脑、智能电视、车载娱乐系统等属于这类系统。
    • RTOS类(实时操作系统):这类嵌入式系统运行功能紧凑但具有很强实时性的RTOS,例如FreeRTOS、RT-Threads、uC/OS-II等。这类系统通常使用微控制器,例如Cortex-M、MSP430、AVR、PIC等架构的微控制器。有些高性能的应用场合也可能会选用应用处理器。
    • Bare-metal类:这类嵌入式系统不包含任何操作系统,可能会包含事件调度器。这类系统也使用微控制器,主要是功能比较单一的应用。
  3. 按硬件组成分
    • 嵌入式微处理器:通常以某一种微处理内核为核心,每一种衍生产品的处理器内核都是一样的,不同的是存储器和外设的配置和封装。
    • 微控制器(MCU):又称单片机,与微处理器相比,微控制器的最大优点在于单片化,体积大大减小,从而使功耗和成本下降,可靠性提高。
    • DSP处理器(DSP):对系统结构和指令进行了特殊设计,使其适合于执行DSP算法,编译效率高,指令执行速度也高。

内部区别

裸机系统

裸机系统是一种没有配置任何操作系统和定制服务的物理硬件设备,用户需要自行安装和配置操作系统及其他软件。它直接运行在物理硬件上

轮询系统
轮询系统即是在裸机编程的时候,先初始化好相关的硬件,然后让主程序
在一个死循环里面不断循环,顺序地做各种事情,通常只适用于那些只需
要顺序执行代码且不需要外部事件来驱动的就能完成的事情
前后台系统
相比轮询系统,前后台系统是在轮询系统的基础上加入了中断。外部事件
的响应在中断里面完成,事件的处理还是回到轮询系统中完成,中断在这
里我们称为前台, main() 函数里面的无限循环我们称为后台。
多任务系统
相比前后台系统,多任务系统的事件响应也是在中断中完成的,但是事件
的处理是在任务中完成的。在多任务系统中,任务跟中断一样,也具有优
先级,优先级高的任务会被优先执行。当一个紧急的事件在中断被标记之
后,如果事件对应的任务的优先级足够高,就会立马得到响应。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/28645.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

探索C嘎嘎的奇妙世界:第三关---缺省参数与函数重载

在c语言中,我们常常在对有参函数进行传参,这样的繁琐过程,C祖师爷对此进行了相关改进,多说无益,上干货: 1 缺省参数: 缺省参数是指在声明或定义函数时为函数的形参指定一个默认值(默认参数)。在调用该函数时,如果没有指定实参,则…

Linux常⽤服务器构建-ssh和scp

目录 1.ssh <1>ssh介绍 <2>安装ssh A.安装ssh服务器 B.远程登陆 <3>使⽤ssh连接服务器 2.scp 本地⽂件复制到远程&#xff1a; 本地⽬录复制到远程&#xff1a; 远程⽂件复制到本地&#xff1a; 远程⽬录复制到本地&#xff1a; 1.ssh <1>…

SQLite检索查询结果函数

代码 database.h #include <sqlite3.h> // &#xfffd;&#xfffd;&#xfffd;&#xfffd;SQLite&#xfffd;ӿں&#xfffd;&#xfffd;&#xfffd;#include<stdio.h>// &#xfffd;&#xfffd;&#xfffd;&#xfffd;һ&#xfffd;&#…

【git使用二】gitee远程仓库创建与本地git命令用法

目录 gitee介绍 管理者注册gitee账号 管理者在gitee网站上创建远程仓库 每个开发者安装git与基本配置 1.git的下载和安装 2.配置SSH公钥 3.开发者信息配置 git命令用法 gitee介绍 Gitee&#xff08;又称码云&#xff09;是一个基于Git的代码托管服务&#xff0c;由开源…

netty:promise的简单示例

# 项目代码资源&#xff1a; 可能还在审核中&#xff0c;请等待。。。 https://download.csdn.net/download/chenhz2284/89442495 # 项目代码 【pom.xml】 <dependency><groupId>io.netty</groupId><artifactId>netty-all</artifactId><v…

MyBatis进行模糊查询时SQL语句拼接引起的异常问题

项目场景&#xff1a; CRM项目&#xff0c;本文遇到的问题是在实现根据页面表单中输入条件&#xff0c;在数据库中分页模糊查询数据&#xff0c;并在页面分页显示的功能时&#xff0c;出现的“诡异”bug。 开发环境如下&#xff1a; 操作系统&#xff1a;Windows11 Java&#…

CAN测试工具——BUSMASTER

文章目录 推荐理由一、菜单栏Transmit WindowDiagnostics二、Tools推荐理由 BUSMASTER是一个用于设计,监测,分析与模拟CAN网络的开源的开放式总线PC软件. 1) 可以和十几种常用CAN总线硬件兼容。比如:IXXAT、PEAK、Kvaser、CANcase XL等。 2)免费,开源 https://rbei-etas.g…

乐鑫ESP32相关资料整理

乐鑫科技 Espressif 介绍 乐鑫科技 Espressif AIoT 领域软硬件产品的研发与设计&#xff0c;专注于研发高集成、低功耗、性能卓越、安全稳定、高性价比的无线通信 SoC&#xff0c;现已发布 ESP8266、ESP32、ESP32-S、ESP32-C 和 ESP32-H 系列芯片、模组和开发板。 Espressif Sy…

C++ virtual public(虚继承类)

这个"virtual"有什么作用&#xff1f; 由于C支持多重继承&#xff0c;所以对于一个派生类中有几个直接父类&#xff0c;而几个直接父类中有几个可能分别继承自某一个基类&#xff08;就是父类的父类&#xff09;&#xff0c;这样在构造最终派生类时&#xff0c;会出现…

【Vue3】插槽的使用及其分类

历史小剧场 后来我才明白&#xff0c;造反的宋江&#xff0c;和招安的宋江&#xff0c;始终是同一个人。 为什么要造反&#xff1f; 造反&#xff0c;就是为了招安。 ----《明朝那些事儿》 概念 在日常的项目开发中&#xff0c;当我们在编写一个完整的组件时&#xff0c;不可避…

【动态规划】0-1背包问题

【动态规划】0-1背包问题 题目:现在有四个物品&#xff0c;背包总容量为8&#xff0c;背包最多能装入价值为多少的物品? 我的图解 表格a【i】【j】表示的是容量为j的背包装入前i个物品的最大价值。 拿a【1】【1】来说&#xff0c;它的值就是背包容量为1&#xff0c;只考虑…

【探索Linux命令行】从基础指令到高级管道操作的介绍与实践

目录 man 指令&#xff08;说明&#xff09; 介绍 cp 指令&#xff08;复制&#xff09; ​编辑 mv 指令&#xff08;移动&#xff09; ​编辑 cat 指令&#xff08;类似cout&#xff09; less&#xff08;查找&#xff09; head & tail&#xff08;打印&#xff…

[数据集][目标检测]减速区域检测数据集VOC+YOLO格式1654张1类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;1654 标注数量(xml文件个数)&#xff1a;1654 标注数量(txt文件个数)&#xff1a;1654 标注…

鸿蒙轻内核A核源码分析系列六 MMU协处理器(2)

3、MMU汇编代码 在arch\arm\arm\include\arm.h文件中&#xff0c;封装了CP15协处理器相关的寄存器操作汇编函数。我们主要看下MMU相关的部分。 3.1 CP15 C2 TTBR转换表基地址寄存器 代码比较简单&#xff0c;结合下图&#xff0c;自行查看即可。该图来自《ARM Cortex-A9 Tec…

JavaFX HBox

JavaFX API具有将UI控件显示到场景图上的布局类。HBox布局类将JavaFX子节点放在水平行中。 新的子节点附加到右侧的末尾。默认情况下&#xff0c;HBox布局尊重子节点的首选宽度和高度。 当父节点不可调整大小时&#xff0c;例如Group节点&#xff0c;HBox的行高度设置为子节点的…

【工作】计算机行业相关的十六类工作简介

本文简单介绍了计算机行业相关的工作类别&#xff0c;共16种&#xff0c;包括常见招聘要求与平均工资。平均工资信息来源&#xff1a;米国企业点评职场社区glassdoor&#xff08;https://www.glassdoor.com/index.htm&#xff09; &#xff08;一&#xff09;软件工程师 软件…

图书馆图书可视化分析+大屏

&#x1f31f;欢迎来到 我的博客 —— 探索技术的无限可能&#xff01; &#x1f31f;博客的简介&#xff08;文章目录&#xff09; 目录 摘要前言技术栈开发环境数据说明 正文数据获取数据存储数据清理数据分析数据挖掘关联规则二分类预测 数据可视化书籍价格区间柱状图书籍评…

质疑标普,理解标普,加入标普

上周我在文章里提到过&#xff0c;标普信息科技LOF(161128)出现套利机会。每天申购卖出&#xff0c;到现在一个账户56*6336润。 得益于美股七巨头轮流领涨&#xff0c;161128依旧坚挺&#xff0c;每天溢价都是10%&#xff0c;成交量1个多亿&#xff0c;场内新增份额才400万份&…

路由器虚拟服务器有什么作用

现如今在IPv4时代&#xff0c;由于公网IP地址的匮乏&#xff0c;约有70%的电脑都处于内网中&#xff0c;上网需要通过路由器。如果反过来想要访问身处内网的电脑&#xff0c;我们就需要在路由器里开放相应的端口才能实现。而这开放端口的功能&#xff0c;在路由器里就叫做虚拟服…

NASA数据:南极海洋生物资源

Antarctic Marine Living Resources (AMLR) program 南极海洋生物资源许可证 南极海洋生物资源保护委员会公约区受到管制。任何打算从该区域捕获海洋生物的人都必须获得许可证。 简介 美国是南极海洋生物资源保护委员会&#xff08;Commission for the Conservation of Anta…