什么是 RTOS?
"提供一款免费产品,
其质量和
服务 超出商业替代品用户的要求"
15 多年来,FreeRTOS 专职开发人员一直与全球
领先的芯片公司密切合作,为您提供
市场领先的、
商用级、完全免费的高品质
RTOS 和工具......但什么是 RTOS?
此页面首先介绍了操作系统的定义,接着具体定义了
实时操作系统 ( RTOS ),然后又进一步定义了
实时内核(或实时执行器)。
另请参阅常见问题项目“为什么用 RTOS” ,了解有关在什么情况使用和为什么
在嵌入式系统软件设计中使用 RTOS 会有帮助。
什么是通用操作系统?
操作系统是支持计算机基本功能的计算机程序,
能为计算机上的其他程序(或应用程序 )提供服务
。
应用程序提供计算机用户
想要或需要的功能。 操作系统提供的服务使得
应用程序的编写更快捷、更简单且更容易维护。
如果您正在阅读此网页,说明您正在使用网络浏览器(提供您感兴趣的功能的应用程序
),该浏览器本身会
在操作系统提供的环境中运行。
什么是 RTOS?
大多数操作系统似乎能同时执行多个程序
。 这称为多任务处理。 实际上,每个处理器核心
只能在任何给定时间点运行单个执行线程。
操作系统中称为
调度器的部分负责决定何时运行哪个程序,
并通过在每个程序之间快速切换以造成同时执行的假象。
操作系统的类型取决于调度器决定
程序运行的方式。 例如,多用户操作系统(如 Unix 系统)
中使用的调度器 会确保每个用户获得合理的
处理时间。 再举一例,桌面操作系统(如 Windows 系统)中的调度程序
会尝试确保计算机保持对
其用户的响应。 [注意:FreeRTOS 不是一个大型操作系统,也不是
专为在台式计算机类处理器上运行而设计的,此处所举例子纯粹是因为
它们是读者熟悉的系统]
实时操作系统 (RTOS) 中的调度器旨在提供
可预测的(通常描述为确定性)执行模式。
这对嵌入式系统而言意义重大,因为嵌入式系统经常有
实时要求。 实时要求是指定嵌入式系统
必须在严格定义的时间内(截止时间)响应某个事件。
保证 满足实时要求的前提是操作
系统调度器的行为可以被预测(因此是确定性的)。
传统的实时调度器,如 FreeRTOS 中使用的调度器,
允许用户为每个执行线程指定优先级
从而实现确定性。 然后,调度器根据优先级来判断
下一个要运行的执行线程。 在 FreeRTOS 中,执行线程称为
任务。
什么是 FreeRTOS?
[另请参阅“有关 FreeRTOS 的更多信息”]
FreeRTOS 是 RTOS 的一个类别,其设计小巧,
可在微控制器上运行,但其用途不限于
微控制器应用程序。
微控制器是一种资源受限的小型处理器,
装于单个芯片上,集成了处理器本身、只读存储器
(ROM 或 Flash,用于保存要执行的程序),
执行程序所需的随机存取存储器 (RAM)。 通常情况下,程序是
直接从只读存储器中执行的。
微控制器用于
深度嵌入式应用程序(那些无法真正
看到处理器本身或正在运行的软件的应用程序),
通常负责非常具体和专门的工作。 由于存在大小限制
以及专用终端应用程序的性质,因此难以保证使用全面的 RTOS
实现,甚至不可能使用全面的 RTOS 实现。
因此,FreeRTOS 提供了核心实时调度功能、
任务间通信、定时和同步基元
。 这意味着将它描述为实时内核或
实时执行更为准确。 其他功能,如命令控制台
接口或网络堆栈,可通过
附加组件来实现。
下一页: RTOS 基本原理
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.