嵌入式软件

更新时间:2022-11-28

概述

嵌入式软件是在芯片或嵌入式设备固件上进行专门编程,以控制其功能。作为微芯片的一部分或作为位于芯片顶部的另一个应用程序的一部分 - 以控制设备的特定功能。与可以安装在各种计算机系统上并进行修改以提供不同级别功能的PC应用程序不同,嵌入式软件具有固定的硬件要求和功能。它是专门为运行它的特定设备创建的,处理和内存限制直接与该设备的规格相关联。

硬件制造商使用嵌入式软件来控制各种硬件设备和系统的功能。嵌入式软件控制设备功能的方式与计算机操作系统控制软件应用程序功能的方式相同。几乎任何设备都可以包含嵌入式软件 - 从那些简单到你可能想象不到他们有计算机控制的软件,如烤面包机和灯泡,到导弹中的复杂跟踪系统。

嵌入式软件用于控制硬件设备的有限设置功能,通常不需要输入;它通常不由用户直接使用。其功能由外部控件激活,无论是设备本身的外部操作还是远程输入。设备可能具有与其他设备的通信链路,以实现功能,或者在设备需要调整、校准或诊断时。也正是通过这些连接,有人可能会尝试嵌入式软件系统黑客攻击。
嵌入式软件
嵌入式软件的复杂性与其用于控制的设备一样多。尽管该术语通常与固件互换使用,但嵌入式软件通常是在硬件上运行的唯一计算机代码,而固件则相反,将控制权移交给操作系统,而操作系统又启动和控制程序。

嵌入式软件有不同类型及其用途

  • 操作系统 – 最一般意义上的操作系统 (OS) 是允许用户在计算设备上运行其他应用程序的软件。操作系统管理处理器的硬件资源,包括输入设备(如键盘和鼠标)、输出设备(如显示器或打印机)、网络连接以及存储设备(如硬盘驱动器和内存)。操作系统还提供服务,以促进软件应用程序的高效执行和管理以及内存分配。
  • 固件 – 固件是一种直接为硬件编写的软件。它无需通过 API、操作系统或设备驱动程序即可运行,为设备提供所需的说明和指导,以便与其他设备通信或按预期执行一组基本任务和功能。
  • 中间件 – 中间件是位于应用程序和操作系统之间的软件层。中间件通常用于分布式系统,它通过提供以下内容来简化软件开发:
  1. 隐藏分布式应用程序的复杂性
  2. 掩盖硬件、操作系统和协议的异构性
  3. 提供统一和高级接口,用于使可互操作、可重用和可移植的应用程序。
  4. 提供一组通用服务,最大限度地减少重复工作并增强应用程序之间的协作
  • 应用程序 – 最终用户开发在操作系统上运行的最终软件应用程序,使用中间件和固件或与之交互,并且是嵌入式软件系统目标功能的主要焦点。每个最终应用程序都是唯一的,而操作系统和固件可能因设备而异。

嵌入式软件与嵌入式软件系统

设备中运行嵌入式软件的硬件组件称为“嵌入式软件系统”。嵌入式软件系统中使用的硬件组件的一些示例包括电源电路、中央处理单元、闪存设备、定时器和串行通信端口。在设备的早期设计阶段,将决定构成嵌入式软件系统的硬件及其在设备中的配置。然后,从头开始开发嵌入式软件,以该精确配置仅在该硬件上运行。这使得嵌入式软件设计成为一个非常专业的领域,需要对硬件功能和计算机编程有深入的了解。

基于软件的嵌入式功能示例

几乎每个由电路板和计算机芯片制成的设备都将这些组件排列成运行嵌入式软件的系统中。因此,嵌入式软件系统在日常生活中无处不在,遍布消费、工业、汽车、航空航天、医疗、商业、电信和军事技术。
基于软件的嵌入式功能的常见示例包括:
  • 医学成像设备中的图像处理系统
  • 飞机上的电传操纵系统
  • 安全摄像机中的运动检测系统
  • 交通信号灯中的交通控制系统
  • 智能家居设备中的定时和自动化系统

终端市场如何影响嵌入式软件系统

嵌入式软件系统要求和组件将根据目标市场的需求而有所不同。一些例子包括:
  • 消费品 – 在洗衣机、可穿戴设备和手机等消费品等应用中,嵌入式软件系统强调减小的尺寸
  • 片上系统、低功耗或电池供电以及图形接口。在这些应用中,可配置的操作系统以及关闭设计中非操作“域”的能力受到重视。
  • 网络 – 支持企业网络的连接、通信、操作和管理的应用程序。它提供用户、进程、应用程序、服务和外部网络/互联网之间的通信路径和服务。嵌入式网络应用侧重于响应速度、数据包处理和外围硬件路径。
  • 业 – 对于工厂车间管理、电机和风车等应用,重点更倾向于安全的云连接和确定性的“实时”操作,并且可以主要关注中间件。
  • 医疗、汽车和航空航天 – 这些行业需要混合安全关键系统,其中设计的各个部分彼此隔离,以确保只有必要的数据进入或离开系统(安全);同时保证不会对最终用户造成伤害(安全)。例如汽车和医疗设备中的自动驾驶系统。这些嵌入式软件系统可以混合使用开源 (Linux) 和确定性实时操作系统 (RTOS),并大量使用经过验证的中间件。

嵌入式软件系统的特点

尽管有许多类型的嵌入式软件系统,但它们都具有相同的有益功能和设计特征。
  • 所有嵌入式软件系统都是特定于任务的。它们在其整个使用寿命期间执行相同的预编程功能,并且无法更改。
  • 所有嵌入式软件系统都是高效率的。嵌入式软件的资源需求不应超过安装它的硬件的容量,硬件的规格不应超过嵌入式软件的最低要求。
  • 所有嵌入式软件系统都设计为高度可靠和稳定。它们需要在容纳它们的设备的整个生命周期内以一致的响应时间和功能执行任务。

下一篇

开源SIP服务器你了解多少

通信系统集成

开源SIP服务器你了解多少

SIP服务器是促进基于互联网的电话的重要工具。它将您公司的IPPBX连接到互联网电话服务提供商(ITSP)。SIP开源服务器允许您以低成本创建自己的服务器,这与许多商业替代方案不同。 ...

相关内容

嵌入式系统(详解embedded system)

嵌入式系统(详解embedded system)

嵌入式系统(embedded system)是为特定功能设计的计算机硬件和软件的......

通信百科

2018-08-25

嵌入式设备

嵌入式设备

嵌入式设备是更大计算系统的一部分,具有特定用途。嵌入式设备也称为专用或单一用途设......

通信系统集成

2018-08-25

嵌入式操作系统

嵌入式操作系统

嵌入式操作系统是一种专用操作系统 (OS),旨在为非计算机的设备执行特定任务。嵌......

通信系统集成

2018-08-25