本申请涉及计算机,尤其涉及一种swc程序监控方法、系统、控制器及车载操作系统。
背景技术:
1、现有汽车的车载操作系统,通常采用cp(classic autosar platform,一种用于汽车电子系统开发的标准化架构)标准进行开发与搭建。基于cp标准的软件架构主要分为三层,分别为应用层(application),接口层(runtime environment,rte),以及基础软件层(basic software,bsw)。应用层通常包括一个或多个swc(软件组件),swc通常需要定义大量的维测日志,并将维测日志以消息的方式传输至bsw中的dlt(diagnostic log andtrace,诊断日志与跟踪)模块。由dlt模块对维测日志消息进行过滤与dlt消息生成等操作,并将生成的dlt消息发送至对应服务端。再由服务端进行消息存储、解析与展示。
2、然而,上述方式存在一定弊端,如若需要对swc中的维测日志中的维测点进行修改、增加或删除等操作,则需要对bsw的协议栈等进行对应修改、维护与配置,工作量较大,维护周期较长。并且,上述方式严重依赖dlt,导致dlt需要处理的消息量巨大,为dlt带来较大的性能负担。再有,经由dlt传输出去的消息是由cp标准定义的,用户无法根据实际的应用场景对需要传输出去的消息进行定制,导致用户体验较差。
技术实现思路
1、本申请提供一种swc程序监控方法、系统、控制器及车载操作系统,以解决现有技术中若需要对swc中的维测日志中的维测点进行修改、增加或删除等操作,则需要对bsw的协议栈等进行对应修改、维护与配置,工作量较大,维护周期较长的技术问题。
2、本申请提供的一种swc程序监控方法,所述方法包括:
3、将预先定义的至少一个维测日志消息传输至swc中预设的代理组件,每个所述维测日志消息均包括:触发方式及至少一个消息元素;
4、所述代理组件用于对接收到的每个所述维测日志消息中的所述消息元素进行同步刷新,当监测到任一所述维测日志消息满足对应的所述触发方式时,将对应的所述维测日志消息发送至目标端。
5、可选地,所述触发方式为触发模式或周期模式;
6、在所述维测日志消息的触发方式为所述触发模式的情况下,所述代理组件用于当所述消息元素或所述维测日志消息发生变化时,将对应的所述维测日志消息发送至所述目标端;
7、在所述维测日志消息的触发方式为所述周期模式的情况下,所述代理组件用于按照预设的更新周期,定期更新对应的所述消息元素中的内容,在完成消息元素更新的情况下,将对应的所述维测日志消息发送至所述目标端。
8、可选地,所述维测日志消息的定义步骤包括:
9、接收用户输入的swc程序监控需求;
10、基于所述swc程序监控需求,进行维测日志消息定义,得到至少一个所述维测日志消息。
11、可选地,所述维测日志消息还包括:消息id、消息描述以及消息类型。
12、可选地,所述目标端为rte接口模块,所述rte接口模块用于在接收到所述维测日志消息的情况下,基于预设的封装格式,对所述维测日志消息进行封装,以生成待发送消息,并将所述待发送消息发送至预设的基础软件模块;
13、所述rte接口模块采用的数据传输接口类型与所述swc采用的数据传输接口类型相同。
14、可选地,所述封装格式包括:消息头和有效载荷,所述消息头包括:消息id、时间戳以及消息长度;所述有效载荷包括:所述消息元素和当前所述维测日志消息的完整性校验参数。
15、可选地,所述基础软件模块用于将所述待发送消息通过预设的数据总线传输至一个或多个消息接收端,所述消息接收端用于在接收到所述待发送消息的情况下,对所述待发送消息进行目标操作,所述目标操作包括存储、解析以及展示中的至少之一。
16、本申请还提供一种swc程序监控系统,包括:
17、处理模块,用于将预先定义的至少一个维测日志消息传输至swc中预设的代理组件,每个所述维测日志消息均包括:触发方式及至少一个消息元素;
18、所述代理组件用于对接收到的每个所述维测日志消息中的所述消息元素进行同步刷新,当监测到任一所述维测日志消息满足对应的所述触发方式时,将对应的所述维测日志消息发送至目标端。
19、本申请还提供一种控制器,包括:swc,所述swc包括:代理组件、以及如上述所述的swc程序监控系统,所述代理组件与所述swc程序监控系统连接。
20、本申请还提供一种车载操作系统,包括:数据总线、如上述所述的控制器以及一个或多个消息接收端,所述控制器和全部所述消息接收端均接入所述数据总线。
21、本申请的有益效果:本申请提出的swc程序监控方法、系统、控制器、电子设备及存储介质,该方法通过将预先定义的至少一个维测日志消息传输至swc中预设的代理组件,每个维测日志消息均包括:触发方式及至少一个消息元素;代理组件用于对接收到的每个维测日志消息中的消息元素进行同步刷新,当监测到任一维测日志消息满足对应的触发方式时,将对应的维测日志消息发送至目标端。实现了swc与bsw之间的解耦,通过在swc中定义维测日志消息,以及设置代理组件,利用代理组件对定义的维测日志消息进行统一管理的方式,较好地增强了swc的独立性。若开发过程中需要对维测日志中的维测点(即消息元素)进行修改、增加或删除等,可直接在swc中进行操作,而无需再对bsw进行相应调整,大大缩短了变更维测点的时间周期。该方法极大地提高了研发效率或开发效率,为车载操作系统的开发提供了较为便捷的调试手段。并且,该方法有助于减少dlt的配置时间,即通过实现swc与bsw之间的解耦,降低基础软件模块,即底层软件bsw的更新频率、运行消耗以及研发消耗。
1.一种swc程序监控方法,其特征在于,包括:
2.根据权利要求1所述的swc程序监控方法,其特征在于,所述触发方式为触发模式或周期模式;
3.根据权利要求1所述的swc程序监控方法,其特征在于,所述维测日志消息的定义步骤包括:
4.根据权利要求1至3任一项所述的swc程序监控方法,其特征在于,所述维测日志消息还包括:消息id、消息描述以及消息类型。
5.根据权利要求1所述的swc程序监控方法,其特征在于,所述目标端为rte接口模块,所述rte接口模块用于在接收到所述维测日志消息的情况下,基于预设的封装格式,对所述维测日志消息进行封装,以生成待发送消息,并将所述待发送消息发送至预设的基础软件模块;
6.根据权利要求5所述的swc程序监控方法,其特征在于,所述封装格式包括:消息头和有效载荷,所述消息头包括:消息id、时间戳以及消息长度;所述有效载荷包括:所述消息元素和当前所述维测日志消息的完整性校验参数。
7.根据权利要求5或6所述的swc程序监控方法,其特征在于,所述基础软件模块用于将所述待发送消息通过预设的数据总线传输至一个或多个消息接收端,所述消息接收端用于在接收到所述待发送消息的情况下,对所述待发送消息进行目标操作,所述目标操作包括存储、解析以及展示中的至少之一。
8.一种swc程序监控系统,其特征在于,包括:
9.一种控制器,其特征在于,包括:swc,所述swc包括:代理组件、以及如权利要求8所述的swc程序监控系统,所述代理组件与所述swc程序监控系统连接。
10.一种车载操作系统,其特征在于,包括:数据总线、如权利要求9所述的控制器以及一个或多个消息接收端,所述控制器和全部所述消息接收端均接入所述数据总线。