运行时环境( RTE)的背景和介绍

一、背景介绍

回顾世界汽车电子产业发展的历程,可以分为以下几个阶段:

单机时代:

1990 年以前 在汽车电子产业的起步阶段,汽车内使用的
ECU 数量少、性能低,并且相互之间基本 没有通信或者协同,各 ECU( Electronic Controller Unit :电子控制器单元)单独工作,因此 称为单机时代。这一时期典型的系统结构如图 所示 .
这一时期的汽车电子嵌入式系统的特点是:
·各ECU独立工作,没有ECU间通信;
·ECU上应用程序直接与硬件交互。
 

简单网络时代:

1990 起至今随着硬件性能的提升和价格的下降,汽车电子嵌入式系统中的ECU 数量不断增加,产业的发展提出了两方面的要求:一是ECU 内多个应用程序之间的协同工作需要有操作系统的支持;二是多ECU 之间的协同工作需要有通信系统的支持。这一时期的典型系统结构如图2 所示:
 
这一时期汽车电子嵌入式系统的特点是:
·操作系统和通信系统对硬件进行封装,并向应用程序提供预定义的API;
·应用程序基于操作系统和通信系统运行,依赖于所在ECU硬件环境。
这一时期业界应用最为广泛的标准是欧洲提出的OSEK/VDX标准,包含的OSEK OS 和OSEK COM标准,分别对汽车电子领域的实时操作系统和统一通信系统进行了定义。
 

复杂网络时代:

现在起汽车电子产业的进一步发展, 导致系统规模越来越大、复杂度越来越高, 使得原有的由整车厂商对每一个系统版本都进行独立开发的模式成本高、风险大。业界开始探索通过提高软件复用度的方法降低风险和成本。软件的复用包含两方面的含义: 一是在一个系统中开发的应用程序可以在下一个版本的系统中复用; 二是一个供应商提供的应用程序可以在不同系统中复用。这时典型的系统结构如图3 所示:
 
 
为了提高软件复用度,面临的困难主要有两方面:
(1) 硬件环境的不可预知。为了提高复用度,应用程序在开发阶段不能针对特定硬件平台,因此也不能依赖于所在ECU上的硬件环境。
(2) 网络拓扑结构的不可预知。应用程序在开发阶段并不知道所运行网络的拓扑结构,不知道自己在哪个ECU上,也不知道与之存在交互关系的其他在哪个ECU上,甚至是否存在这些组件。
为了解决上述问题,运行时环境( Run-Time Environment ,即RTE)的概念被引入汽车电子嵌入式系统领域。它作为对操作系统和通信系统的封装, 完全屏蔽硬件环境信息和网络拓扑结构信息, 应用程序只需要在提供实现代码的同时, 定义自身对硬件资源的需求以及与其他组件通信时采用的接口和参数, 即可通过运行时环境进行通信。当系统硬件进行升级和/ 或物理拓扑结构进行改变时,只需要各ECU上的运行时环境做出适当改变,应用程序不需要进行任何修改,新系统即可运行。
 
 

二、运行时环境

AUTOSAR有虚拟功能总线( AUTOSAR Virtual Function Bus)的概念,运行时环境即是这一概念的逻辑实现, 基本要求是保证软件组件的通信功能, 即软件组件内部和软件组件之间、软件组件与ECU 基础服务软件模块之间,所发生的通信活动都必须全部由运行时环境来实现和管理, 以保证其通信行为正确并且相互之间不会干扰, 使组件设计可以专注于内部算法的实现和优化。
运行时环境是AUTOSAR ECU架构的核心, 如图4 所示。它是AUTOSAR虚拟功能总线在某个ECU上的具体实现。运行时环境提供软件组件间通信服务及软件组件访问基础软件模块服务。按照AUTOSAR标准,各个ECU的运行时环境为其单独生成,保证每个ECU上运行的运行时环境已为该ECU优化。
除了AUTOSAR软件组件, AUTOSAR ECU还包括基础软件模块。基础软件模块属于ECU相关,可以直接访问ECU抽象层及其他基础软件模块的服务。AUTOSAR软件组件不能直接访问基础软件模块的服务,而基础软件模块通过只能通过AUTOSAR接口向上层软件组件提供服务,按照AUTOSAR标准,两者的通信是由运行时环境控制的。
 
 
引入运行时环境的目的是使执行AUTOSAR软件组件的映射独立于ECU。软件组件定义符合AUTOSAR标准的接口和通信要求,由运行时环境实现这些接口并向其提供通信服务,如图5 所示, 运行时环境支持发送者-接收者类型和客户端-服务器类型共两种通信模式。不管组件被分配到哪个ECU上运行,运行时环境确保向软件组件提供可靠的通信服务。
 
 
 
 
  • 3
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
嵌入式应用运行时环境是指在嵌入式系统中支持应用程序运行的软件和硬件环境。它提供了必要的资源和接口,使嵌入式应用能够在特定的硬件平台上正常运行。 嵌入式应用运行时环境通常包括以下几个方面: 1. 操作系统:嵌入式应用通常需要在操作系统的支持下运行。操作系统负责管理硬件资源、调度任务、提供接口和服务等。常见的嵌入式操作系统包括实时操作系统(RTOS)如FreeRTOS、uC/OS等,以及Linux、Android等。 2. 驱动程序:驱动程序是连接应用程序和硬件设备之间的桥梁。它提供了对硬件设备的访问接口,使应用程序能够调用硬件功能。常见的驱动程序包括显示驱动、网络驱动、存储驱动、传感器驱动等。 3. 库和框架:嵌入式应用运行时环境通常会提供一些常用的库和框架,以简化开发过程并提供更高级的功能。这些库和框架可以包括图形库、网络库、数据库库、通信协议库、加密库等。 4. 运行时支持:嵌入式应用运行时环境可能会提供一些运行时支持,例如内存管理、任务调度、事件处理、异常处理等。这些支持能够提高应用程序的可靠性和性能。 5. 硬件平台:嵌入式应用运行时环境需要依赖特定的硬件平台。硬件平台包括处理器、存储器、外设等。嵌入式应用需要根据硬件平台的特点进行开发和优化。 在嵌入式应用的开发过程中,开发人员需要了解和选择适合的嵌入式应用运行时环境,以确保应用程序能够在特定的硬件平台上正常运行并满足性能和可靠性要求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值