0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是实时操作系统(RTOS)

Nordic半导体 来源:Nordic半导体 2020-04-29 14:49 次阅读

嵌入式开发人员通常习惯于裸机编程,或者对使用实时操作系统(RTOS)有所保留。这里谈谈RTOS的作用,以及为什么应该考虑使用它们。

现今的产品开发周期变得越来越复杂。开发时间越来越短,但所需功能集日益扩展,使得繁忙的开发人员需要千方百计在更短的时间内完成更多工作。通常,使用RTOS可以提高任务管理和资源共享的效率。

什么是实时操作系统(RTOS)

简而言之,RTOS是一款旨在有效管理中央处理器(CPU)时间的软件。当时间是应用的重点时,这对于嵌入式系统尤为重要。

Windows等操作系统与嵌入式系统中常用的RTOS的主要区别,在于对外部事件的响应时间。Windows等普通OS提供对事件的不确定性响应,即使试图保持响应速度也无法保证何时处理事件。使得用户认为操作系统响应灵敏,比处理基础任务更为重要。另一方面,RTOS则提供了实时响应和高度确定性的反应。

习惯使用Windows或Linux等操作系统的开发人员将会非常熟悉嵌入式RTOS的特性。它们经设计在内存有限的系统中运行,并且可以无限期运行而无需重置。

由于RTOS旨在快速响应事件并在重负载下执行,RTOS在执行大型任务时可能会较其他OS慢。

RTOS调度

RTOS的价值在于很高的响应速度,而高级调度算法是其中的关键组件。 嵌入式系统的时间要求各有不同,从软实时洗衣机控制系统到硬实时飞机安全系统等等。在后者的情况下,只有能够准确预测OS调度程序的行为,才能满足实时要求的基础需求。 许多操作系统给人以一次执行多个程序的印象,但是这种多任务处理其实只是一种错觉。单个处理器内核在任一时间只能运行单个执行线程。操作系统的调度程序决定何时运行哪个程序或线程。通过在线程之间快速切换,它带来了同时执行多项任务的错觉。 灵活的RTOS调度程序允许采用广泛的方法来处理优先级,尽管RTOS通常主要用于非常狭窄的应用程序集。RTOS调度程序应提供最小的中断延迟和最小的线程切换开销。这是使得RTOS与重视时间的嵌入式系统如此密切相关的原因。

在嵌入式设计中使用RTOS

许多嵌入式设计编程人员避免使用RTOS,因为他们怀疑RTOS给其应用程序增加了太多的复杂性,或者RTOS其实是一个未知的领域。RTOS通常需要最多占用5%的CPU资源来执行其任务。尽管总会有一些资源上的损失,但RTOS可以在简化的确定性,通过硬件抽象的易用性,减少的开发时间以及更便利的调试等等方面弥补这一不足。 使用RTOS意味着你可以同时运行多项任务,并在需要时引入基本的连接性、隐私、安全性等。RTOS允许针对项目的特定需求创建优化的解决方案。

推出Zephyr RTOS

这有许多RTOS解决方案,Nordic世界的许多开发人员都专注于开发低功耗嵌入式系统。如果是这样,我们建议查看Zephyr,它非常适合要求超低功耗的连接解决方案。 模块化的Zephyr RTOS支持多种架构,因此开发人员可以轻松定制解决方案以满足其需求。 Zephyr是真正的开源解决方案。某些声称是开源的RTOS其实是由私人企业推动的,而Zephyr则由Linux基金会管理,因此是开源协作方案。Nordic代表担任委员会和工作组成员,他们与来自其他大型和小型企业的代表一起工作。 额外的好处到目前为止,RTOS的确定性调度功能已经成为焦点。此外,诸如Zephyr之类的RTOS还具有其他有用的功能。

Zephyr带有功能强大的日志记录系统,能够输出到多个后端,例如UART或RTT。日志具有不同的优先级,带有时间戳,并且可以按照模块或关键性级别轻松过滤。

Zephyr还有许多简化调试的工具,例如CPU使用率监控器、堆栈标记、错误处理程序以及对PC工具的支持,这些工具可让户查看线程的执行和调度。

当然,Zephyr还支持成熟的OS功能,例如互斥锁、内存分配服务以及保护、线程同步和数据传递。当然,拥有一系列用于组件选择的现成驱动程序也是很棒的功能。它使得开发人员可以专注于手头的应用程序,而不必制作和测试低级驱动程序。

经过一些适应之后,我相信大多数嵌入式开发人员将更喜欢使用RTOS而不是裸机编程。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制系统
    +关注

    关注

    41

    文章

    5963

    浏览量

    108706
  • 嵌入式开发
    +关注

    关注

    18

    文章

    977

    浏览量

    46957
  • RTOS
    +关注

    关注

    20

    文章

    776

    浏览量

    118790

原文标题:【媒体报道】面向嵌入式开发人员的实时操作系统RTOS

文章出处:【微信号:nordicsemi,微信公众号:Nordic半导体】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    带你认识实时操作系统(rtos)

    实时操作系统RTOS)是为嵌入式系统实时应用提供一个稳定、可预测和高效运行环境的操作系统
    的头像 发表于 04-16 16:30 122次阅读
    带你认识<b class='flag-5'>实时</b><b class='flag-5'>操作系统</b>(<b class='flag-5'>rtos</b>)

    瑞萨正式加入Zephyr项目,携手共建开源实时操作系统新生态

    近日,业界领先的半导体解决方案提供商瑞萨宣布正式加入Zephyr®项目,并荣升为银级会员。Zephyr作为Linux基金会的开源项目,致力于面向未来、资源受限的设备打造安全、互联且灵活的实时操作系统RTOS)。瑞萨的加入无疑将
    的头像 发表于 03-12 09:18 161次阅读

    何时选择裸机?何时选择RTOS?何时选择GPOS?

    在每个开发项目的初期,你都必须选择软件开发的基础。虽然有很多选择,但它们通常分为三类:裸机、实时操作系统RTOS)或通用操作系统(GPOS)。
    的头像 发表于 02-27 11:42 355次阅读

    一个成熟且可靠的开源实时操作系统

    市场上有许多专有和开源实时操作系统RTOS)。ThreadX已经以其对小代码大小和高性能的关注而闻名。然而,它的竞争优势远远超出了这些属性。
    的头像 发表于 02-20 12:26 348次阅读

    分享几点RTOS相比裸机的优势

    嵌入式系统中,有很多方式实现任务调度。功能有限的小系统中,无限循环足够实现小系统的功能。当软件设计变得庞大且复杂时,开发者应该考虑使用实时操作系统
    的头像 发表于 01-24 18:23 978次阅读
    分享几点<b class='flag-5'>RTOS</b>相比裸机的优势

    微软开源Azure RTOS,并更名为Eclipse ThreadX

    Azure RTOS 是一个带有 ThreadX 实时操作系统RTOS)的嵌入式开发套件。ThreadX 是一个普及性很高的小型 RTOS
    的头像 发表于 12-01 16:17 421次阅读
    微软开源Azure <b class='flag-5'>RTOS</b>,并更名为Eclipse ThreadX

    什么是实时操作系统(RTOS)

    实时操作系统RTOS)是一种专为实时应用程序设计的操作系统实时应用程序需要在特定时间内做出预
    的头像 发表于 11-23 17:14 1648次阅读

    基于STM32F407的FreeRTOS学习笔记(1)

    其实从很早之前就想学实时操作系统RTOS)了,但是一直没有时间去学,以前使用STM32单片机一直停留在逻辑开发以及前后台系统,而真正被广泛使用的则是
    的头像 发表于 11-07 11:37 410次阅读
    基于STM32F407的FreeRTOS学习笔记(1)

    实时操作系统(RTOS)和分时操作系统(TSOS)的区别

    大家平时玩单片机基本上对于µC/OS、FreeRTOS、ThreadX这些操作系统非常熟悉了,他们都属于实时操作系统RTOS),在工业领域比较广泛;然而对于linux这样的基于时间片
    发表于 09-21 10:19 3318次阅读

    linux是实时系统还是分时操作系统

    大家平时玩单片机基本上对于µC/OS、FreeRTOS、ThreadX这些操作系统非常熟悉了,他们都属于实时操作系统RTOS),在工业领域比较广泛;
    的头像 发表于 08-18 09:48 1307次阅读

    微控制器实时操作系统实践—实时系统介绍

    实时系统有各种各样的实现方式和使用情况。本书的重点是如何使用实时操作系统RTOS)在微控制器单元(MCU)上创建
    发表于 06-15 17:21 896次阅读
    微控制器<b class='flag-5'>实时</b><b class='flag-5'>操作系统</b>实践—<b class='flag-5'>实时</b><b class='flag-5'>系统</b>介绍

    FreeRTOS简介及FreeRTOS源码包组成结构

    FreeRTOS 是市场领先的面向微控制器和小型微处理器的实时操作系统 (RTOS),与世界领先的芯片公司合作开发。
    的头像 发表于 06-09 14:21 4134次阅读
    FreeRTOS简介及FreeRTOS源码包组成结构

    选择实时操作系统(RTOS)的要点详解

    对许多嵌入式项目来说,系统设计师都倾向于选择实时操作系统(RTOS)。但RTOS总是必要的吗?答案是取决于具体的应用,因此了解我们要达到什么
    发表于 05-30 09:45 777次阅读

    RTOS常用的调度算法

    从裸机(前后台架构)的软件开发过渡到使用实时操作系统(RTOS)可能是一项困难的工作。
    的头像 发表于 05-29 09:22 498次阅读
    <b class='flag-5'>RTOS</b>常用的调度算法