基于优先级信息的消息调度方法和装置制造方法及图纸

技术编号:36460604 阅读:9 留言:0更新日期:2023-01-25 22:59
本申请公开了基于优先级信息的消息调度方法和装置,其包括基于从至少一个第二装置获得的消息构建基于消息结构体的消息链表,其中,对应每个所述消息,所述消息链表存储所述消息的优先级信息、消息内容以及消息设备地址;基于所述优先级信息、所述消息内容以及所述消息设备地址将消息链表中的消息装载进入消息队列,以及根据所述消息队列中的消息数量对所述消息队列进行动态轮询以将所述消息内容发送至所述第一装置,并将从第一装置获得的反馈发送至具有所述消息设备地址的第二装置。本申请的方法中的消息优先级确保紧急消息能够优先执行,二等消息和三等消息按照动态比例执行。执行。执行。

【技术实现步骤摘要】
基于优先级信息的消息调度方法和装置


[0001]本申请涉及移动通信技术,尤其涉及一种消息操作调度的方法和装置。

技术介绍

[0002]为了能让周围环境有更逼真的代入感,就需要更多的设备完成效果。随着设备数量的增加,设备与设备之间的通讯的及时性以及稳定性就显得尤为重要。
[0003]在传统的应用中,设备之间相互孤立,应用的也比较简单,仅需为一个效果或者一个功能来特别定制一款软件,满足自给自足即可。但是使用场景就比较局限,不适合多设备配合的,灵活性比较低。后期维护方面的成本也会增加很多,随着技术的进步,系统易用性和可维护性越来越多地被考虑到。
[0004]在软件方面急需搭建一套多设备消息管理机制来满足日益增长的需求。其主要用于保证与上位机交换数据,远端更新固件,更新配置,保证消息在固定的时间正确地对外部做出反应。

技术实现思路

[0005]本申请解决的问题之一是在多设备的情况下消息处理的及时性和稳定性。
[0006]为此,本申请的一些实施例提供了一种基于优先级信息的消息调度方法,用于第一装置与至少一个第二装置的交互,该方法包括步骤:基于从至少一个所述第二装置获得的消息构建基于消息结构体的消息链表,其中,对应每个所述消息,所述消息链表存储所述消息的优先级信息、消息内容以及消息设备地址;基于所述优先级信息、所述消息内容以及所述消息设备地址将消息链表中的消息装载进入消息队列,以及根据所述消息队列中的消息数量对所述消息队列进行动态轮询以将所述消息内容发送至所述第一装置,并将从所述第一装置获得的反馈发送至具有所述消息设备地址的第二装置。
[0007]在一些实施例中,所述消息结构体包括消息状态、消息实时时间、消息启动时间、消息结束时间、消息的长度、消息设备地址、消息内容,其中根据所述消息状态确定所述消息的优先级。
[0008]在一些实施例中,所述优先级信息包括指明最高优先级的紧急信息、指明中等优先级的二等信息,以及指明最低优先级的三等信息;构建针对紧急信息的紧急消息结构体、针对二等信息的二等消息结构体,和/或针对三等信息的三等消息结构体。
[0009]在一些实施例中,按照固定时间片向所述消息队列循环装载消息,其中,在第一个时间片采用第一装载规则装载消息,在与第一时间片时间连续的第二个时间片采用第二装载规则装载消息,在与第二时间片时间连续的第三时间片采用第三装载规则装载消息。
[0010]在一些实施例中,所述第一装载规则包括优先装载紧急消息,所述第二装载规则包括除优先装载紧急消息外,按优先二等消息的第一数量比例装载二等消息和三等消息,所述第三装载规则包括除优先装载紧急消息外,按优先二等消息的第二数量比例装载二等消息和三等消息,其中所述第一数量比例大于第二数量比例。
[0011]在一些实施例中,按照所述消息队列中的实际消息数量来动态地计算出所述轮询的等待时间和需要轮询的第二装置的数量。
[0012]在一些实施例中,包括由第一装置向第二装置反馈数据校验信息。
[0013]在一些实施例中,包括将由第二装置主动传送的消息作为二等消息装载进入所述消息队列。
[0014]本申请的另一些实施例提供了一种基于优先级信息的消息调度装置,其包括基于从至少一个所述第二装置获得的消息构建基于消息结构体的消息链表,其中,对应每个所述消息,所述消息链表存储所述消息的优先级信息、消息内容以及消息设备地址的程序模块;基于所述优先级信息、所述消息内容以及所述消息设备地址将消息链表中的消息装载进入消息队列的程序模块,以及根据所述消息队列中的消息数量对所述消息队列进行动态轮询以将所述消息内容发送至所述第一装置,并将从所述第一装置获得的反馈发送至具有所述消息设备地址的第二装置的程序模块。
[0015]本申请的又一些实施例包括至少一个处理器和包括计算机程序代码的至少一个存储器,其中,所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述装置至少执行上述任意一项的基于优先级信息的消息调度方法。
[0016]本申请的实施例中的方法和装置可见的优点包括但不限于,1)消息管理层和消息执行层通过邮箱传送数据,做到消息接收层和消息发送层高并发低耦合。2)可保证在在一个处理周期内,例如一个时间片内,队列最大容量数量的设备都能接收到不同的控制消息。3)对于挂载的设备动态轮询,保证正在使用的设备轮询数据,未使用的设备静默,提高实时效率。4)消息优先级确保紧急消息能够优先执行,二等消息和三等消息按照动态比例执行。5)结合Real

Time

Thread操作系统线程的实时性双层保证消息的稳定和实时性。8)通过固定的时间片调度的方式,保证消息队列中高优先级的消息能够紧急处理,防止阻塞消息队列而处理不及时的问题。9)通过带有优先级的轮询机制,解决如果消息执行丢失,可及时报警的问题。
附图说明
[0017]图1为根据本申请的实施例的消息传送方法的串口2数据接收的流程图。
[0018]图2为根据本申请的实施例的方法的串口3数据接收的流程图。
[0019]图3为根据本申请的实施例的方法的串口2数据处理的流程图。
[0020]图4为根据本申请的实施例的方法的串口2数据处理的流程图。
[0021]图5为根据本申请的实施例的方法的时间片调度的流程图。
[0022]图6为根据本申请的实施例的方法的下位机设备消息反馈处理的流程图。
[0023]图7为根据本申请的实施例的方法的对消息队列进行轮询的流程图。
[0024]图8为根据本申请的实施例的方法的主函数流程图。
[0025]图9为根据本申请的实施例的方法的可应用环境的硬件结构示意图。
[0026]图10为根据本申请的实施例的传送装置的软件架构示意图。
[0027]图11为根据本申请的实施例的消息队列构建的示意图。
[0028]图12为根据本申请的实施例的对消息队列轮询的示意图。
具体实施方式
[0029]在处理消息的时候,传统方式采用先入先出的方式,这样会影响消息处理的及时性,会出现优先级高的消息被低优先级抢占位置的情况,所以设计了本申请中的基于优先级信息的消息调度方法和装置。
[0030]本申请的实施例中提出的方法和装置可以应用于但不限于以下硬件环境:如图9所示的嵌入式控制系统,包括核心板100,核心板100上提供有处理器和存储器以提供处理功能和控制功能,负责全局统筹,底层逻辑处理。网络板200负责网络连接及数据转发,其通过网线连接互联网,网络板200可以通过排线实现串口连接通信核心板100。通信板300负责将由网络板200转发的来自核心板100的指令通过良好的算法轮询分发到各个机关点,在所述通信板中安装有嵌入式实时多线程操作系统,通过合理的分布各个模块的功能,能够极大的提高设备整体的稳定性及可扩展性。
[0031]在此处,通信板300自身可以是一个嵌入式通信系统,具有处理器、存储器本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于优先级信息的消息调度方法,用于第一装置与至少一个第二装置的交互,其特征在于:包括步骤:基于从至少一个所述第二装置获得的消息构建基于消息结构体的消息链表,其中,对应每个所述消息,所述消息链表存储所述消息的优先级信息、消息内容以及消息设备地址;基于所述优先级信息、所述消息内容以及所述消息设备地址将消息链表中的消息装载进入消息队列,以及根据所述消息队列中的消息数量对所述消息队列进行动态轮询以将所述消息内容发送至所述第一装置,并将从所述第一装置获得的反馈发送至具有所述消息设备地址的第二装置。2.根据权利要求1所述的基于优先级信息的消息调度方法,其特征在于:所述消息结构体包括消息状态、消息实时时间、消息启动时间、消息结束时间、消息的长度、消息设备地址、消息内容,其中根据所述消息状态确定所述消息的优先级。3.根据权利要求2所述的基于优先级信息的消息调度方法,其特征在于:所述优先级信息包括指明最高优先级的紧急信息、指明中等优先级的二等信息,以及指明最低优先级的三等信息;构建针对紧急信息的紧急消息结构体、针对二等信息的二等消息结构体,和/或针对三等信息的三等消息结构体。4.根据权利要求3所述的基于优先级信息的消息调度方法,其特征在于:按照固定时间片向所述消息队列循环装载消息,其中,在第一个时间片采用第一装载规则装载消息,在与第一时间片时间连续的第二个时间片采用第二装载规则装载消息,在与第二时间片时间连续的第三时间片采用第三装载规则装载消息。5.根据权利要求4所述的基于优先级信息的消息调度方法,其特征在于:所述第一装载规则包括优先装载紧急消息,所述第二装...

【专利技术属性】
技术研发人员:刘鹏王凡刘宝龙
申请(专利权)人:青岛意想意创技术发展有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1