车载服务的调度系统以及车载服务的调度方法与流程
- 国知局
- 2025-01-10 13:38:44
本技术涉及车载通信领域或其他相关领域,具体而言,涉及一种车载服务的调度系统以及车载服务的调度方法。
背景技术:
1、随着汽车电子技术的高速发展,传统的汽车通信系统已逐渐无法满足日益增长的数据传输需求,以太网技术因其高速、高可靠性和成本效益等优势被引入汽车通信领域,形成了汽车以太网,从而使得基于服务的通信方式在mcu侧被广泛应用。
2、为了更好地管理和优化车载以太网通信,汽车行业采用服务导向架构(soa:service-oriented architecture)。soa作为一种软件设计模式,采用了交换机式网络和点对点的通信方式,它将应用程序的不同功能模块化为独立的服务,这些服务可以通过网络进行通信和交互,也即允许各个控制器(mcu:microcontroller unit)提供特定的服务,并通过以太网与其他控制器进行通信,从而实现复杂的功能和任务。相比其他领域对mcu应用的要求,汽车控制系统中对mcu的要求更加苛刻,既有速度和性能上的要求,又需要保证系统的可靠性和安全性,为了应对各种复杂应用的场景,需要服务调度需求的场景变得越来越多,而随着车载系统变得越来越复杂,单个mcu可能需要处理大量的基于服务的任务,这会导致cpu负载过高,影响实时性和系统性能。
3、为了标准化车载以太网通信,cp autosar(classic platform autosar)标准应运而生,该标准定义了一套属于bsw组件中的一部分的服务发现机制,允许车载网络中的设备和服务进行自我发现和注册。然而,传统的cp autosar标准主要关注静态服务分配,即在系统部署和配置阶段将服务固定分配给特定的mcu,从而导致只关注当前mcu的服务发现模块已使用的服务,并不关注整个车载以太网络中其他服务,当单个mcu功能复杂以及基于服务的任务比较重,对于cpu以及内存的需求也比较大,cpu的平均负载消耗相对于其他mcu占比也比较重,这限制了整个车载以太网网络的灵活性和性能。
4、针对相关技术中微控制单元的负载率过高,导致运行微控制单元中的车载服务时存在运行效率低的问题,目前尚未提出有效的解决方案。
技术实现思路
1、本技术的主要目的在于提供一种车载服务的调度系统以及车载服务的调度方法,以解决相关技术中微控制单元的负载率过高,导致运行微控制单元中的车载服务时存在运行效率低的问题。
2、为了实现上述目的,根据本技术的一个方面,提供了一种车载服务的调度系统。该系统包括:服务发现模块,用于确定车载软件中第一微控制单元运行的车载服务,得到m个车载服务,并获取第一微控制单元的负载率数据,将m个车载服务的服务信息和负载率数据发送至服务调度模块和服务管理模块,其中,服务管理模块用于存储m个服务信息和负载率数据,m为正整数;服务调度模块,用于在接收到m个服务信息和负载率数据的情况下,确定每个车载服务的服务权重数据,根据m个服务权重数据和负载率数据确定n个待调度服务,并将n个待调度服务调度至车载软件中的k个第二微控制单元,其中,n小于m,n、k为正整数。
3、进一步地,服务调度模块包括调度表模块,根据m个服务权重数据和负载率数据确定n个待调度服务包括:调度表模块对m个服务权重数据进行倒序排序,得到权重数据序列,并判断负载率数据是否大于负载率阈值;在负载率数据大于负载率阈值的情况下,调度表模块获取权重数据序列中处于预设位序的n个服务权重数据,将n个服务权重数据关联的车载服务确定为n个待调度服务。
4、进一步地,服务调度模块还包括连接管理子模块,调度表模块还用于将n个待调度服务的服务信息通过连接管理子模块进行转发。
5、进一步地,服务调度模块还包括节点调度模块,节点调度模块包括主节点调度模块和从节点调度模块,主节点调度模块用于缓存由调度表模块发送的n个待调度服务的服务信息,在根据n个待调度服务的服务信息生成服务调度请求的情况下,向从节点调度模块发送服务调度请求。
6、进一步地,从节点调度模块用于识别服务调度请求,得到n个待调度服务的服务信息,并根据n个待调度服务的服务信息对n个待调度服务依次执行服务调度操作。
7、进一步地,从节点调度模块还用于判断n个待调度服务是否调度完毕,在n个待调度服务调度完毕的情况下,生成服务更新请求,并发送服务更新请求。
8、进一步地,服务调度模块还包括会话处理模块,会话处理模块用于在接收到服务更新请求的情况下,更新第一微控制单元的负载率数据、第一微控制单元中运行的车载服务以及每个车载服务的服务权重数据,并将更新后的负载率数据以及更新后的车载服务发送至服务管理模块,其中,服务更新请求是由服务调度模块中从节点调度模块生成,服务更新请求用于指示n个待调度服务调度完毕。
9、为了实现上述目的,根据本技术的另一方面,提供了一种车载服务的调度方法。该方法包括:确定第一微控制单元中运行的车载服务,得到m个车载服务,并获取第一微控制单元的负载率数据,其中,每个车载服务是指应用于服务的通信协议架构,第一微控制单元关联服务调度模块,m为正整数;确定每个车载服务的服务权重数据,得到m个服务权重数据,控制服务调度模块根据m个服务权重数据和负载率数据确定n个待调度服务;控制服务调度模块将n个待调度服务调度至k个第二微控制单元,其中,第一微控制单元和k个第二微控制单元是指设置在车载软件中的不同微控制单元,n小于m,n、k为正整数。
10、进一步地,确定每个车载服务的服务权重数据包括:获取每个车载服务的带宽占比数据,得到m个带宽占比数据;根据第一微控制单元中运行的车载服务的总数确定每个车载服务的初始权重数据,得到m个初始权重数据;对于一个车载服务,利用车载服务的带宽占比数据对初始权重数据进行调整,得到车载服务的服务权重数据。
11、进一步地,控制服务调度模块根据m个服务权重数据和负载率数据确定n个待调度服务包括:对m个服务权重数据进行倒序排序,得到权重数据序列;获取负载率阈值,判断负载率数据是否大于负载率阈值;在负载率数据大于负载率阈值的情况下,获取权重数据序列中处于预设位序的n个服务权重数据,将n个服务权重数据关联的车载服务确定为n个待调度服务。
12、通过本技术,采用以下步骤:服务发现模块,用于确定车载软件中第一微控制单元运行的车载服务,得到m个车载服务,并获取第一微控制单元的负载率数据,将m个车载服务的服务信息和负载率数据发送至服务调度模块和服务管理模块,其中,服务管理模块用于存储m个服务信息和负载率数据,m为正整数;服务调度模块,用于在接收到m个服务信息和负载率数据的情况下,确定每个车载服务的服务权重数据,根据m个服务权重数据和负载率数据确定n个待调度服务,并将n个待调度服务调度至车载软件中的k个第二微控制单元,其中,n小于m,n、k为正整数,解决了相关技术中微控制单元的负载率过高,导致运行微控制单元中的车载服务时存在运行效率低的问题,通过由服务发现模块确定第一微控制单元中运行的车载服务和负载率数据,然后由服务调度模块确定每个车载服务的服务权重数据,根据服务权重数据和负载率数据确定待调度服务,最后将待调度服务调度至车载软件中不同的第二微控制单元,进而达到了降低微控制单元的负载率、提高运行微控制单元的车载服务的效率的效果。
本文地址:https://www.jishuxx.com/zhuanli/20250110/354442.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。