嵌入式操作系统是一种专门的操作系统( OS ),旨在为非计算机的设备执行特定任务。嵌入式操作系统的主要工作是运行允许设备完成其工作的代码。嵌入式操作系统还使运行在操作系统之上的软件可以访问设备的硬件。
嵌入式操作系统通常在嵌入式系统中工作。嵌入式系统是支持机器的计算机。它在更大的机器上执行一项任务。示例包括汽车中的计算机系统、交通灯、数字电视、ATM、飞机控制、销售点 ( POS ) 终端、数码相机、GPS 导航系统、电梯和智能电表。
包含嵌入式系统的设备网络构成了物联网。嵌入式系统在物联网设备内部执行基本操作,例如在没有人工交互的情况下通过网络传输数据。
嵌入式操作系统如何工作?
嵌入式操作系统使嵌入式设备能够在更大的系统中完成其工作。它与嵌入式系统的硬件通信以执行特定功能。例如,电梯可能包含一个嵌入式系统,例如微处理器或微控制器,使其了解乘客按下了哪些按钮。在该系统上运行的嵌入式软件是嵌入式操作系统。
与通用计算机的操作系统相比,嵌入式操作系统的功能有限。根据相关设备的不同,系统可能只运行一个嵌入式应用程序。但是,该应用程序可能对设备的运行至关重要。鉴于此,嵌入式操作系统必须可靠且能够在内存和处理能力受限的情况下运行。
对于片上Raspberry PI系统,SD 卡充当设备的硬盘驱动器并包含在设备上运行的代码。SD 卡是可移动的,因此可以根据需要修改其内容。各种操作系统都可以在 Raspberry PI 设备上运行。嵌入式操作系统使设备的硬件——例如 USB 和 HDMI 端口——可供运行在操作系统之上的应用程序访问。
嵌入式操作系统设备示例
具有嵌入式操作系统的设备的一些示例包括:自动取款机、手机、电动汽车、工业控制系统( ICS )、基于Arduino 的设备。
Arduino 是一个开源平台,带有一个微控制器,可以处理简单的输入,例如温度或压力,并将它们转换为输出。这些设备有一个基本的嵌入式操作系统,其作用类似于引导加载程序和命令解释器。基于Arduino 的设备的一个例子是遥控车。Arduino 从汽车控制器读取输入,并将输出信息和命令发送到其他组件,例如制动器。
嵌入式操作系统的常见用途
嵌入式操作系统有多种用途,包括:
自动取款机。ATM 具有基本操作系统,使机器能够读取用户的借记卡和个人识别号输入并执行银行账户功能,如取款或查询余额。操作系统除了对用户输入做出反应并与 ATM 硬件通信之外,其他什么都不做。
手机。手机需要Android或iOS等操作系统来启动手机并使应用程序能够与其他手机硬件进行通信。
电动汽车。微控制器托管处理制动或压力感应等功能的嵌入式操作系统。例如,前保险杠上的一定压力可能会导致安全气囊爆裂。这种类型的功能被称为反应操作,因为它对输入做出反应。
工业控制系统。 传感器在工业控制系统中用于测量工厂状况并在它们变得危险时发送警报。传感器包含一个嵌入式操作系统,使它们能够执行这些任务。
红绿灯。嵌入式操作系统使交通灯能够以编程的时间间隔循环显示不同的信号。
基本输入输出系统。在某些情况下,BIOS可以被视为嵌入式操作系统,因为它是使台式计算机更复杂的操作系统能够与计算机硬件交互的固件。
嵌入式系统包含硬件组件,嵌入式操作系统将这些硬件组件组织起来为更大的设备执行任务。
嵌入式操作系统的类型
嵌入式操作系统专为它们将执行的任务而设计。各种类型的操作系统包括:
多任务操作系统。一个多任务操作系统可以同时执行多项任务。它使用作业调度来执行基本任务。例如,手机操作系统在多个任务之间分配CPU 资源。
实时操作系统。一个实时操作系统的设计是反应性的。它在收到输入时进行处理,并在特定时间范围内做出响应。如果响应时间超出指定的时间段,系统可能会失败。实时操作系统有时使用速率单调调度,它为任务分配优先级。
单回路控制系统。这种类型的嵌入式操作系统对单个变量进行控制。一个例子是智能家居中的温度控制。智能恒温器会测量房屋内的温度,如果超过用户设置的限制,则会关闭暖气。