发明内容
有鉴于此,本申请提供一种数据处理方法、面向服务系统、ECU、车辆及计算机可读存储介质。
具体地,本申请是通过如下技术方案实现的:
根据本申请实施例的第一方面,提供一种应用于ECU的面向服务系统,所述系统包括服务适配组件、和一个或多个服务组件;所述服务适配组件包括服务接口、和一个或多个第一本地接口;所述第一本地接口与所述服务组件一一对应;所述服务组件包括有第二本地接口;所述服务适配组件通过第一本地接口与所述服务组件的第二本地接口通信连接;
所述服务适配组件用于,通过所述服务接口接收请求方发送的服务请求,所述服务请求携带有目标服务组件的服务标识;根据预存的服务标识与第一本地接口的映射关系、以及所述目标服务组件的服务标识,确定与所述目标服务组件通信连接的目标第一本地接口,并通过所述目标第一本地接口将所述服务请求发送给所述目标服务组件;
所述服务组件,用于执行所述服务请求指示的任务并返回执行结果;
所述服务适配组件,还用于将所述执行结果通过所述服务接口返回给所述请求方。
可选地,所述系统还包括服务管理组件;所述服务管理组件与所述服务适配组件连接;
所述服务请求还携带有所述请求方的来源标识;所述服务管理组件预存有权限信息,所述权限信息包括有允许访问所述目标服务组件的一个或多个客户端和/或ECU对应的来源标识;
所述服务管理组件用于若根据所述权限信息和所述服务请求携带的来源标识确定所述请求方有权限访问所述目标服务组件,将所述服务请求发送给所述服务适配组件。
可选地,所述服务管理组件,还用于若确定所述目标服务组件被其他客户端或其他ECU调用,向发起所述服务请求的请求方发送调用通知,所述调用通知用于告知所述请求方所述目标服务组件已被调用;和/或,若确定所述目标服务组件被其他客户端或其他ECU锁定,向发起所述服务请求的请求方发送锁定通知,所述锁定通知用于告知所述请求方所述目标服务组件已被独占。
可选地,所述服务管理组件预存有优先级信息,所述优先级信息指示允许访问所述目标服务组件的一个或多个客户端对应不同的访问优先级;
所述服务管理组件,还用于若同时接收到至少两个请求方发送的针对于同一服务组件的至少两个服务请求,根据所述优先级信息和所述权限信息从至少两个服务请求中确定目标服务请求,所述目标服务请求对应的请求方的访问优先级最高且有权限访问所述服务组件,将所述目标服务请求发送给所述服务适配组件。
可选地,所述服务适配组件和所述服务管理组件集成在同一模块中;或者
所述服务适配组件和所述服务管理组件为相互独立的组件,所述服务管理组件包括有服务接口,所述服务管理组件和所述服务适配组件通过两者的服务接口通信连接。
可选地,所述服务适配组件基于服务接口描述文件和本地接口描述文件生成;其中,所述服务接口描述文件包括待部署在所述ECU上的服务接口及其参数定义信息;所述本地接口描述文件包括已部署在所述ECU上的服务组件的本地接口及其参数定义信息。
可选地,所述服务适配组件通过以下方式生成:
根据预设模板分别从服务接口描述文件中的第一预设位置和本地接口描述文件中的第二预设位置提取接口信息,并转换成预设格式的描述语言,得到至少一个配置文件;
利用预设的编程工具对至少一个所述配置文件分别进行编程,生成至少一个配置代码;
将至少一个所述配置代码进行集成编译,生成所述服务适配组件。
可选地,所述服务管理组件基于服务管理流程文件生成;所述服务管理流程文件包括有所述服务管理组件的功能描述信息。
根据本申请实施例的第二方面,提供一种数据处理方法,应用于第一方面任意一项所述的面向服务系统;所述系统包括服务适配组件、和一个或多个服务组件;所述服务适配组件包括服务接口、和一个或多个第一本地接口;所述第一本地接口与所述服务组件一一对应;所述服务组件包括有第二本地接口;所述服务适配组件通过第一本地接口与所述服务组件的第二本地接口通信连接;所述方法包括:
通过所述服务接口接收请求方发送的服务请求,所述服务请求携带有目标服务组件的服务标识;
根据预存的服务标识与第一本地接口的映射关系、以及所述目标服务组件的服务标识,确定与所述目标服务组件通信连接的目标第一本地接口;
通过所述目标第一本地接口将所述服务请求发送给所述目标服务组件,以使得所述目标服务组件执行所述服务请求指示的任务并返回执行结果;
将所述执行结果通过所述服务接口返回给所述请求方。
根据本申请实施例的第三方面,提供一种ECU,包括如第一方面任意一项所述的面向服务系统。
根据本申请实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时实现第二方面任意一项所述方法的步骤。
本申请实施例提供的一种应用于ECU的面向服务系统,在对车载ECU上的传统应用不做改动的情况下,通过增加服务适配组件来进行服务接口和本地接口之间的匹配和转换,无需对车载ECU上的应用进行重构处理,保证原有功能最小改动量的同时实现服务的抽象和远程调用,减少了改动量,有利于缩短周期和减少投入成本;并且在增加服务适配组件之后,所述车辆上原有的服务组件能够响应于不同请求方发送的服务请求,而不限于传统单一的触发方式,具有广泛的适用性。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
面向服务架构(SOA)的出现可以解决传统车载ECU应用移植困难,迭代周期长的问题,标准化的服务接口方便在不同平台间快速移植,能够快速响应用户日益增长的功能需求。由于在车载ECU上的传统应用并不具备服务接口,则需要对车载ECU上的传统应用进行重构处理,在开发阶段遵循一定的规范将应用抽象成单个服务并设置相关的服务接口,但是,目前安装在车载ECU上的传统应用也具有一定的数量规模,如果将车载ECU上的所有传统应用均进行重构处理,显然工作量较大,开发周期也比较长,投入成本高。
针对于相关技术中的问题,请参阅图1,本申请实施例提供了一种应用于ECU的面向服务系统100,所述系统包括有服务适配组件10、和一个或多个服务组件20;所述服务适配组件10包括服务接口、和一个或多个第一本地接口;所述第一本地接口与所述服务组件20一一对应;所述服务组件20包括有第二本地接口;所述服务适配组件10通过第一本地接口与所述服务组件20的第二本地接口通信连接。
所述服务适配组件10,用于通过所述服务接口接收请求方发送的服务请求,所述服务请求携带有目标服务组件20的服务标识;根据预存的服务标识与第一本地接口的映射关系、以及所述目标服务组件20的服务标识,确定与所述目标服务组件20通信连接的目标第一本地接口,并通过所述目标第一本地接口将所述服务请求发送给所述目标服务组件20。
所述服务组件20,用于执行所述服务请求指示的任务并返回执行结果。
所述服务适配组件10,还用于将所述执行结果通过所述服务接口返回给所述请求方。
本实施例在对车载ECU上的传统应用不做改动的情况下,通过增加服务适配组件10来进行服务接口和本地接口之间的匹配和转换,无需对车载ECU上的应用进行重构处理,保证原有功能最小改动量的同时实现服务的抽象和远程调用,减少了改动量,有利于缩短周期和减少投入成本;并且在增加服务适配组件10之后,所述车辆上原有的服务组件20能够响应于不同请求方发送的服务请求,而不限于传统单一的触发方式,具有广泛的适用性。
其中,所述服务适配组件10包括的服务接口为符合SOA标准的接口。
可以理解的是,所述服务组件20用于提供车辆服务,本申请实施例对于各个服务组件20所提供的服务(或者说所具备的功能)不做任何限制,可依据实际应用场景进行具体设置。
示例性的,所述车辆包括有4个可升降的车窗,分别为靠近驾驶位的第一车窗、靠近副驾驶位的第二车窗和位于后排座位两侧的第三车辆和第四车窗,所述系统包括有四个服务组件20(分别为A、B、C和D),服务组件A具有控制第一车窗升降的功能,服务组件B具有控制第二车窗升降的功能,服务组件C具有控制第三车窗升降的功能,服务组件D具有控制第四车窗升降的功能。
示例性的,所述车辆包括有4个车门,所述系统包括有4个用于控制车门打开或关闭的服务组件20,每个服务组件20用于控制不同的车门打开或关闭。示例性的,所述车辆包括有空调,所述系统包括有用于控制空调开闭和调节温度的服务组件20。示例性的,所述车辆包括有雨刮器,所述系统包括有用于控制雨刮器开启或关闭的服务组件20。示例性的,所述车辆包括有摄像头,所述系统包括有用于控制摄像头采集图像或视频的服务组件20。
在一些实施例中,请参阅图2,所述面向服务系统100还包括通信组件30,所述通信组件30用于接收请求方发送的服务请求并转发给服务适配组件10,以及将上述的执行结果返回给请求方。示例性的,所述服务适配组件10和所述通信组件30可以通过服务接口连接。示例性的,请参阅图2,所述请求方可以是其他ECU或者安装于电子设备上的客户端200,所述客户端200与所述车辆中的ECU通信连接,所述电子设备可以设置在车辆中,也可以独立于车辆,电子设备可以对车辆进行远程控制。
示例性的,所述电子设备包括但不限于智能电话/手机、个人数字助理(PDA)、媒体内容播放器、视频游戏站/系统、虚拟现实系统、增强现实系统、可穿戴设备(如手表、手环、手套、帽子、头盔、虚拟现实头戴耳机、增强现实头戴耳机、头装式装置(HMD)、头带、挂件、臂章、腿环、鞋子或者马甲等)等。
在一些实施例中,每个服务组件20对应有服务标识,不同服务组件20的服务标识不同,服务标识用于唯一指示该服务组件20。所述服务适配组件10中预存有服务标识和第一本地接口的映射关系,该映射关系可以指明所述服务适配组件10包括的不同第一本地接口所连接的服务组件20,从而基于该映射关系实现服务接口和本地接口之间的匹配和转换。
在一示例性的实施例中,以上述所述系统包括有四个用于分别控制车窗升降的服务组件20为例:比如用户想要控制第二车窗上升,有服务组件20B具有控制第二车辆升降功能,则用户通过客户端向服务适配组件10发送的服务请求中应携带有服务组件B的服务标识,服务适配组件10可以根据所述服务组件B的服务标识从上述的映射关系中确定与所述服务组件B通信连接的目标第一本地接口,并通过目标第一本地接口和服务组件B的第二本地接口之间的通信通道将所述服务请求发送给所述服务组件B,以便服务组件B能够执行该服务请求指示的第二车窗上升任务,并将执行结果(比如执行完成信息)返回给所述服务适配组件10,由所述服务适配组件10将执行结果通过所述服务接口发送给所述通信组件30,进而通信组件30将该执行结果转发给发送服务请求的客户端。本实施例通过增加服务适配组件10来实现服务接口和本地接口之间的匹配和转换,无需对车载ECU上的应用进行重构处理,保证原有功能最小改动量的同时实现服务的抽象和远程调用;在增加服务适配组件10之后,所述车辆上原有的服务组件20能够响应于不同请求方发送的服务请求,而不限于传统单一的触发方式,具有广泛的适用性。
在一些实施例中,所述服务接口包括服务输入接口和服务输出接口;所述服务适配组件10可以通过所述服务输入接口接收请求方发送的服务请求,以及通过所述服务输出接口将所述服务请求的执行结果返回给所述请求方。
根据服务请求的类型不同,对应有不同的服务输出接口;示例性的,所述服务输出接口包括Sender-Receiver(发送者-接收者)类型的输出接口和Client-Server(客户端-服务器)类型的输出接口。则所述服务适配组件10在返回所述执行结果时,可以根据所述服务请求的类型从不同的服务输出接口中选择目标服务输出接口,并通过该目标服务输出接口将所述服务请求的执行结果返回给所述请求方。
所述第一本地接口的数量与所述服务组件20的数量(或者说第二本地接口)的数量相同,以便所述第一本地接口与所述服务组件20的第二本地接口一一对应连接。所述第一本地接口包括有一个或多个本地输入接口、和一个或多个本地输出接口,所述服务组件20的第二本地接口也包括本地输入接口与本地输出接口;所述服务适配组件10的本地输出接口与所述服务组件20的本地输入接口一一对应连接,所述服务适配组件10的本地输入接口与所述服务组件20的本地输出接口一一对应连接。考虑到相关技术中,面向服务架构的实现方式中对于服务的管理一般采用一主多从的集中管理方案,由主ECU统一管理,则所有的服务请求必须经过主ECU的调度和转发,通信效率较低,高并发请求下单点的负载高,而且在主ECU异常的情况下会影响到整车的可靠性。
针对于相关技术中的问题,请参阅图3以及图4,本申请实施例实现在所述面向服务系统100中设置服务管理组件40,所述服务管理组件40分别与所述服务适配组件10和所述通信组件30连接;当各个ECU安装有所述面向服务系统100后,每个ECU内部均包括有服务管理组件40,所述服务管理组件40实现权限管理、服务调用通知和服务锁定管理、并发访问冲突管理等功能,所有ECU均参与服务管理并协同配合,分散管理使得负载更加均衡,单点故障不影响整车其他ECU上的服务调用,具有更高的可靠性。
在一些实施例中,所述服务请求还携带有所述请求方的来源标识;所述服务管理组件40预存有权限信息,所述权限信息包括有允许访问所述目标服务组件20的一个或多个客户端和/或ECU对应的来源标识;所述服务管理组件40在接收到请求方发送的服务请求之后,根据所述权限信息和所述服务请求携带的来源标识确定所述请求方是否有权限访问所述目标服务组件20,即所述服务请求携带的来源标识是否也包含在所述权限信息中,若所述服务请求携带的来源标识也包含在所述权限信息中,确定发起该服务请求的请求方有权限访问所述目标服务组件20,则可以进一步将所述服务请求发送给所述服务适配组件10,否则,向请求方返回无权访问的通知消息。本实施例通过权限信息可以有效避免非法访问,有效管理车辆所提供的服务。
在一些实施例中,所述服务管理组件40还用于在接收到所述服务请求之后,如果确定所述服务请求指示的目标服务组件20已被其他客户端或其他ECU调用,向发起所述服务请求的请求方发送调用通知,所述调用通知用于告知所述请求方所述目标服务组件20已被调用。本实施例实现服务调用通知管理功能,能够及时告知请求方其请求的服务组件20是否已被其他客户端调用。
在一些实施例中,所述服务管理组件40还预存有锁定信息,所述锁定信息包括有允许锁定所述目标服务组件20的一个或多个客户端或ECU对应的来源标识;一个服务组件20在被锁定之后,将由锁定该服务组件20的客户端或ECU独占,其他客户端和/或ECU无法调用该服务组件20。所述锁定信息包括的来源标识和所述权限信息包括的来源标识至少部分相同,所述来源标识用于唯一指示所述客户端或ECU。示例性的,基于实际应用场景的需求,上述的服务请求可以包含锁定目标服务组件20的请求,该服务请求携带有请求方的来源标识和待锁定的目标服务度组件的服务标识;所述服务管理组件40还用于若根据预存的锁定信息和所述服务请求携带的来源标识确定请求方有权限锁定目标服务组件20(即所述锁定信息中包含所述服务请求携带的来源标识),将所述服务请求发送给所述服务适配组件10,以便对目标服务组件20进行锁定处理;后续所述服务管理组件40接收到其他请求方发送的针对该目标服务组件20的服务请求时,向发起所述服务请求的其他请求方发送锁定通知,所述锁定通知用于告知所述请求方所述目标服务组件20已被独占。示例性的,若所述服务请求不包含锁定目标服务组件20的请求,所述服务管理组件40需要先确定所述服务请求指示的目标服务组件20的锁定情况,若确定所述目标服务组件20被其他客户端或者其他ECU锁定,向发起所述服务请求的请求方发送锁定通知,所述锁定通知用于告知所述请求方所述目标服务组件20已被独占。本实施例实现服务锁定管理功能,允许某些客户端独占服务组件20。
在一些实施例中,所述服务管理组件40预存有权限信息和优先级信息,所述权限信息包括有允许访问所述目标服务组件20的一个或多个客户端和/或ECU对应的来源标识;所述优先级信息指示允许访问所述目标服务组件20的一个或多个客户端和/或ECU对应不同的访问优先级。所述服务管理组件40还用于若同时接收到至少两个请求方发送的针对于同一服务组件20的至少两个服务请求,根据所述优先级信息和所述权限信息从至少两个服务请求中确定目标服务请求,所述目标服务请求对应的请求方的访问优先级最高且有权限访问所述服务组件20,然后将所述目标服务请求发送给所述服务适配组件10。本实施例实现访问冲突管理功能,解决多个客户端的并发访问请求。
在一种可能的实现方式,所述服务适配组件10和所述服务管理组件40可以集成在同一模块中,比如基于AUTOSAR(Automotive Open System Architecture,汽车开放系统架构)规范,所述服务适配组件10和所述服务管理组件40可以集成为一个SWC(SoftwareComponent,软件组件)应用,从而方便管理。
在另一种可能的实现方式中,为了方便不同功能的迭代升级,所述服务适配组件10和所述服务管理组件40可以为相互独立的组件,比如基于AUTOSAR(Automotive OpenSystem Architecture,汽车开放系统架构)规范,所述服务适配组件10和所述服务管理组件40分别为两个SWC(Software Component,软件组件)应用。示例性的,所述服务管理组件40包括有服务接口,所述服务管理组件40和所述服务适配组件10通过两者的服务接口通信连接。
当然,所述服务适配组件10并不限于通过软件方式实现,也可以通过硬件方式实现,比如可以所述服务适配组件10可以是集成服务接口和本地接口转换功能的ECU,本实施例对此不做任何限制。
在一些实施例中,所述服务适配组件10基于服务接口描述文件和本地接口描述文件生成;其中,所述服务接口描述文件包括待部署在所述ECU上的服务接口及其参数定义信息;所述本地接口描述文件包括已部署在所述ECU上的服务组件20的本地接口及其参数定义信息。
示例性的,为了提高面向服务系统100的开发效率,可以预先设置有一模板,所述模板能够实现对服务接口描述文件和本地接口描述文件的读取、以及服务接口与本地的服务组件20之间的适配等功能。在生成所述服务适配组件10的过程中,可以利用所述模板从所述服务接口描述文件中的第一预设位置和本地接口描述文件中的第二预设位置提取接口信息,进而将其转换为预设格式的描述语言,得到至少一个配置文件;然后利用预设的编程工具对至少一个所述配置文件分别进行编程,生成至少一个配置代码,最后将至少一个所述配置代码进行集成编译,生成所述服务适配组件10。本实施例基于预置的模板实现配置文件的自动生成,从而有利于提高所述服务适配组件10的开发效率。
其中,服务接口描述文件和本地接口描述文件可以是电子表格格式(如xlsx格式或者xls格式等)的文件,上述的配置文件可以是ARXML格式的文件。
在一些实施例中,所述服务管理组件40基于服务管理流程文件生成;所述服务管理流程文件包括有所述服务管理组件40的功能描述信息。示例性的,可以利用预设的EA(Enterprise Architect)工具将所述服务管理流程文件中的功能描述信息自动转换成服务管理代码,进而对该服务管理代码进行编译,得到所述服务管理组件40,自动转换过程有利于提高服务管理组件40的开发效率。
在一示例性的实施例中,请参阅图5,本申请实施例提供一转换工具,该转换工具可以实现对服务接口描述文件和本地接口描述文件的读取、服务接口与本地的服务组件20之间的适配、通信组件30的配置以及服务管理代码生成等功能。首先将服务接口描述文件、本地接口描述文件以及服务管理流程文件输入所述转换工具;所述转换工具包括有上述模板,可以利用该模板从服务接口描述文件和本地接口描述文件中分别提取关键信息并转换为ARXML格式的描述语言,得到至少一个配置文件;示例性的,所述配置文件包括ARXML格式的服务配置文件、服务适配文件和应用描述文件,所述服务配置文件包括服务接口配置信息以及通信组件30配置信息;所述服务适配文件和应用描述文件包括所述服务适配模块的接口配置、所述服务组件20的接口配置和运行实体等信息。以及,所述转换工具中包括有EA工具,可以利用该EA工具将所述服务管理流程文件中的功能描述信息转换成服务管理代码。本实施例由转换工具实现相关文件的自动转换,有利于提高开发者的效率同时缩短开发周期。
之后将服务配置文件导入符合AUTOSAR架构的AUTOSAR工具中自动生成服务配置代码;将服务适配文件和应用描述文件导入模型开发工具MBD工具中进行应用开发和代码生成,得到服务适配代码和应用代码;其中,服务配置文件、服务适配文件和应用描述文件都是ARXML格式的文件,利用AUTOSAR工具和MBD工具能够轻松导入这些文件并进行二次修改和应用逻辑开发。最终对得到的服务配置代码、服务适配代码、应用代码和服务管理代码进行集成编译和刷写验证,得到所述面向服务系统100。
其中,不难理解,上述各实施例中的描述的方案在不存在冲突的情况,可以进行组合,本公开实施例中不一一例举。
相应地,请参阅图6,本申请实施例还提供了一种数据处理方法,应用于上述的面向服务系统;所述系统包括服务适配组件、和一个或多个服务组件;所述服务适配组件包括服务接口、和一个或多个第一本地接口;所述第一本地接口与所述服务组件一一对应;所述服务组件包括有第二本地接口;所述服务适配组件通过第一本地接口与所述服务组件的第二本地接口通信连接;所述方法包括:
在步骤S101中,通过所述服务接口接收请求方发送的服务请求,所述服务请求携带有目标服务组件的服务标识。
在步骤S102中,根据预存的服务标识与第一本地接口的映射关系、以及所述目标服务组件的服务标识,确定与所述目标服务组件通信连接的目标第一本地接口。
在步骤S103中,通过所述目标第一本地接口将所述服务请求发送给所述目标服务组件,以使得所述目标服务组件执行所述服务请求指示的任务并返回执行结果。
在步骤S104中,将所述执行结果通过所述服务接口返回给所述请求方。
在一些实施例中,所述系统还包括服务管理组件;所述服务管理组件与所述服务适配组件连接;所述服务请求还携带有所述请求方的来源标识;所述服务管理组件预存有权限信息,所述权限信息包括有允许访问所述目标服务组件的一个或多个客户端和/或ECU对应的来源标识。所述方法还包括:若根据所述权限信息和所述服务请求携带的来源标识确定所述请求方有权限访问所述目标服务组件,将所述服务请求发送给所述服务适配组件。
在一些实施例中,所述方法还包括:若确定所述目标服务组件被其他客户端或其他ECU调用,向发起所述服务请求的请求方发送调用通知,所述调用通知用于告知所述请求方所述目标服务组件已被调用;和/或,若确定所述目标服务组件被其他客户端或其他ECU锁定,向发起所述服务请求的请求方发送锁定通知,所述锁定通知用于告知所述请求方所述目标服务组件已被独占。
在一些实施例中,所述服务管理组件预存有优先级信息,所述优先级信息指示允许访问所述目标服务组件的一个或多个客户端对应不同的访问优先级。所述方法还包括:若同时接收到至少两个请求方发送的针对于同一服务组件的至少两个服务请求,根据所述优先级信息和所述权限信息从至少两个服务请求中确定目标服务请求,所述目标服务请求对应的请求方的访问优先级最高且有权限访问所述服务组件,将所述目标服务请求发送给所述服务适配组件。
在一些实施例中,所述服务适配组件基于服务接口描述文件和本地接口描述文件生成;其中,所述服务接口描述文件包括待部署在所述ECU上的服务接口及其参数定义信息;所述本地接口描述文件包括已部署在所述ECU上的服务组件的本地接口及其参数定义信息。
在一些实施例中,所述服务适配组件通过以下方式生成:根据预设模板分别从服务接口描述文件中的第一预设位置和本地接口描述文件中的第二预设位置提取接口信息,并转换成预设格式的描述语言,得到至少一个配置文件;利用预设的编程工具对至少一个所述配置文件分别进行编程,生成至少一个配置代码;将至少一个所述配置代码进行集成编译,生成所述服务适配组件。
在一些实施例中,所述服务管理组件基于服务管理流程文件生成;所述服务管理流程文件包括有所述服务管理组件的功能描述信息。
相应地,本申请实施例还提供了一种ECU,包括上述的面向服务系统100。
在一些实施例中,请参阅图7,所述ECU还包括有硬件和其他的软件,比如所述ECU还包括运行环境(Runtime Environment,RTE)300、固件400和硬件500。
示例性的,所述运行环境300为软硬件分离提供可能,封装了固件400的通信和服务,为面向服务系统100提供标准化的基础软件和通信接口,使得面向服务系统100可以通过RTE接口调用固件400的服务。
所述固件400提供基础软件服务,如存储器服务、通信服务以及驱动服务等。
所述硬件500至少包括处理器和存储器。
示例性的,所述处理器包括但不限于中央处理单元(Central Processing Unit,CPU)、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)或者现成可编程门阵列(Field-Programmable GateArray,FPGA)等。
示例性的,所述存储器可以包括至少一种类型的存储介质,存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等等。
相应地,本申请实施例还提供了一种车辆,包括一个或多个上述的ECU,各个ECU之间通信连接。
相应的,本申请实施例还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时用于实现上述的数据处理方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由装置的处理器执行以完成上述方法。例如,非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当存储介质中的指令由终端的处理器执行时,使得终端能够执行上述方法。
本说明书中描述的主题及功能操作的实施例可以在以下中实现:数字电子电路、有形体现的计算机软件或固件、包括本说明书中公开的结构及其结构性等同物的计算机硬件、或者它们中的一个或多个的组合。本说明书中描述的主题的实施例可以实现为一个或多个计算机程序,即编码在有形非暂时性程序载体上以被数据处理装置执行或控制数据处理装置的操作的计算机程序指令中的一个或多个模块。可替代地或附加地,程序指令可以被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,该信号被生成以将信息编码并传输到合适的接收机装置以由数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备、或它们中的一个或多个的组合。
本说明书中描述的处理及逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过根据输入数据进行操作并生成输出来执行相应的功能。所述处理及逻辑流程还可以由专用逻辑电路—例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)来执行,并且装置也可以实现为专用逻辑电路。
适合用于执行计算机程序的计算机包括,例如通用和/或专用微处理器,或任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器和/或随机存取存储器接收指令和数据。计算机的基本组件包括用于实施或执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘或光盘等,或者计算机将可操作地与此大容量存储设备耦接以从其接收数据或向其传送数据,抑或两种情况兼而有之。然而,计算机不是必须具有这样的设备。此外,计算机可以嵌入在另一设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏操纵台、全球定位系统(GPS)接收机、或例如通用串行总线(USB)闪存驱动器的便携式存储设备,仅举几例。
适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、媒介和存储器设备,例如包括半导体存储器设备(例如EPROM、EEPROM和闪存设备)、磁盘(例如内部硬盘或可移动盘)、磁光盘以及CD ROM和DVD-ROM盘。处理器和存储器可由专用逻辑电路补充或并入专用逻辑电路中。
虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。
由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。