引导程序是一种计算机程序,可确保在设备启动期间将操作系统的数据加载到主存储器中。当设备打开时,引导程序是软件的第一个启动元素,负责将软件的其余部分复制到 RAM(随机存取存储器)中,然后有序地启动主软件。
相关产品:Capital 嵌入式 AR 经典 版 | Capital Embedded Integrator AR 经典 版 | Capital 嵌入式虚拟器 AR 经典
引导程序是一种计算机程序,可确保在设备启动期间将操作系统的数据加载到主存储器中。
引导程序是一种计算机程序,可确保在设备启动期间将操作系统的数据加载到主存储器中。当设备打开时,引导程序是软件的第一个启动元素,负责将软件的其余部分复制到 RAM(随机存取存储器)中,然后有序地启动主软件。
相关产品:Capital 嵌入式 AR 经典 版 | Capital Embedded Integrator AR 经典 版 | Capital 嵌入式虚拟器 AR 经典
通过验证新固件映像的完整性和真实性,引导程序有助于防止安装未经授权的软件或恶意软件。
如果软件或固件出现故障,引导程序可以启动恢复过程,例如回滚到以前的已知良好版本或切换到冗余备份固件映像。
引导程序支持远程或通过诊断接口安装更新和补丁,从而减少了对车辆硬件的物理访问需求。
以使用传统静态嵌入式软件的电子控制单元 (ECU) 为例。引导程序是一个软件组件,用于启动 ECU 主软件的启动,包括将软件复制到 RAM 中,以及在启动前对软件执行任何检查。引导程序还负责软件更新,接收、检查更新后的软件并将其写入内存,通常是闪存。因此,术语 Flash Bootloader 也被常用。
通常,在车辆和相关ECU的开发以及正常生产中,可以使用相同的引导程序,并提供保护措施,以确保生产ECU具有许多开发功能或停用工程引导程序。在车辆开发过程中,通常需要删除生产引导程序的安全机制,以便快速部署开发软件。
越来越多的引导程序都要求是安全的。然而,传统上,这是一种区别,通常是为了保护与安全、安全甚至有时性能有关的功能而实现的。
引导程序通常在启动时检查ECU的软件内存,并在软件更新之前和之后检查接收的软件。
机制通常包括:
引导程序的一些实现分为两部分,因此称为双引导程序。在这种情况下,作为保护引导程序的一部分,主引导程序是不可更新的。这与模块的启动和辅助引导程序的更新有关。辅助引导程序可以通过安全进程进行更新,从而允许对软件更新进程(例如内存映射)进行修改,从而允许这些进程通常被锁定。由于使用板载安全硬件(例如HSM(硬件安全模块))保护更新过程的新方法,这种类型的引导程序现在不太常见。
请注意,这个术语类似于双启动,其中双启动块或完整内存可用,允许在一个版本处于活动状态时对未使用的版本进行更新。这需要支持此更新方法的每个ECU的额外内存。
Capital Embedded Bootloader 在开发、车辆生产和车辆生命周期期间,通过连接的诊断工具或无线方法,支持可靠的 ECU 更新。标准化的 ISO 14229 UDS 协议用于一系列常见的车辆网络总线、以太网、CAN/CAN-FD、LIN、FlexRay,也可以使用其他方法,例如 ASAM 校准协议。网络安全是软件更新流程的一个关键方面,支持软件身份验证的功能,安全启动选项是解决方案的一部分。为了满足OEM(原始设备制造商)和MCU的特定要求,为各种ECU项目提供了广泛的支持。
OTA(无线)更新或FOTA(无线固件)是一种以远程方式接收嵌入式设备(例如汽车ECU)的新软件的方法,而不是通过车间中直接连接的服务工具。这可能需要在协调ECU中提供一些板载诊断测试仪功能和/或引导程序本身的恢复和自检功能。