System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 双核设备的数据处理方法和双核设备技术_技高网

双核设备的数据处理方法和双核设备技术

技术编号:40328141 阅读:9 留言:0更新日期:2024-02-09 14:21
本申请涉及一种双核设备的数据处理方法和双核设备。双核设备包括第一处理器和第二处理器,所述方法应用于第一处理器,所述方法包括:在需要向所述第二处理器发送数据时,检测共享内存是否存在数据;在所述共享内存中不存在数据的情况下,在所述共享内存中写入待发送数据的目标封装数据;当在所述共享内存中写入的封装数据的数据长度达到所述共享内存的数据长度时,申请不同于所述共享内存的发送缓冲区,并将所述目标封装数据中除所述写入的封装数据之外的数据存储至发送缓冲区;在所述共享内存中存在数据的情况下,申请所述发送缓冲区,并将所述目标封装数据存储至所述发送缓冲区。采用本方法能够降低数据丢失率。

【技术实现步骤摘要】

本申请涉及计算机,特别是涉及一种双核设备的数据处理方法和双核设备


技术介绍

1、随着处理器技术的发展与应用,针对处理器的计算能力和计算速度的需求越来越高,为提高计算能力和计算速度,多核处理器应运而生,其中的双核处理器的使用场景更为广泛,通常的,可以在一个处理器上集成两个运算核心,以基于该运算核心实现双核处理器之间的数据处理过程。

2、然而,在双核处理器进行数据传输的过程中,若相邻数据的发送时间过短,会出现数据未读取处理而被数据覆盖的情况,使得数据丢失率高。


技术实现思路

1、基于此,有必要针对上述技术问题,提供一种能够降低数据丢失率的双核设备的数据处理方法、装置、双核设备、计算机可读存储介质和计算机程序产品。

2、第一方面,本申请提供了一种双核设备的数据处理方法。所述双核设备包括第一处理器和第二处理器,所述方法应用于第一处理器,所述方法包括:

3、在需要向所述第二处理器发送数据时,检测共享内存是否存在数据;

4、在所述共享内存中不存在数据的情况下,在所述共享内存中写入待发送数据的目标封装数据;当在所述共享内存中写入的封装数据的数据长度达到所述共享内存的数据长度时,申请不同于所述共享内存的发送缓冲区,并将所述目标封装数据中除所述写入的封装数据之外的数据存储至发送缓冲区;

5、在所述共享内存中存在数据的情况下,申请所述发送缓冲区,并将所述目标封装数据存储至所述发送缓冲区。

6、在其中一个实施例中,所述将所述目标封装数据中除所述写入的封装数据之外的数据存储至发送缓冲区之后,所述方法还包括:

7、在确定所述共享内存中不存在数据的情况下,将所述目标封装数据中除所述写入的封装数据之外的数据写入至所述共享内存。

8、在其中一个实施例中,所述方法还包括:

9、释放所述发送缓冲区。

10、在其中一个实施例中,所述确定所述共享内存中不存在数据,包括:

11、在接收到来自所述第二处理器的中断信号的情况下,确定所述共享内存中不存在数据。

12、在其中一个实施例中,获得所述目标封装数据的方式,包括:

13、将头码、所述待发送数据的数据长度、所述待发送数据以及校验码进行封装,获得所述目标封装数据。

14、在其中一个实施例中,所述待发送数据包括至少一个数据包,所述目标封装数据包括所述至少一个数据包对应的封装数据。

15、第二方面,本申请提供一种双核设备的数据处理装置。所述双核设备包括第一处理器和第二处理器,所述装置应用于第一处理器,所述装置包括:

16、第一检测模块,用于在需要向所述第二处理器发送数据时,检测共享内存是否存在数据;

17、数据写入模块,用于在所述共享内存中不存在数据的情况下,在所述共享内存中写入待发送数据的目标封装数据;

18、处理模块,用于当在所述共享内存中写入的封装数据的数据长度达到所述共享内存的数据长度时,申请不同于所述共享内存的发送缓冲区,并将所述目标封装数据中除所述写入的封装数据之外的数据存储至发送缓冲区;

19、处理模块,还用于在共享内存中存在数据的情况下,申请所述发送缓冲区,将目标封装数据存储至发送缓冲区。

20、第三方面,本申请还提供了一种双核设备。所述双核设备包括存储器和第一处理器,所述存储器存储有计算机程序,所述第一处理器执行所述计算机程序时实现以下步骤:

21、在需要向所述第二处理器发送数据时,检测共享内存是否存在数据;

22、在所述共享内存中不存在数据的情况下,在所述共享内存中写入待发送数据的目标封装数据;当在所述共享内存中写入的封装数据的数据长度达到所述共享内存的数据长度时,申请不同于所述共享内存的发送缓冲区,并将所述目标封装数据中除所述写入的封装数据之外的数据存储至发送缓冲区;在所述共享内存中存在数据的情况下,申请所述发送缓冲区,并将所述目标封装数据存储至所述发送缓冲区。

23、第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

24、在需要向所述第二处理器发送数据时,检测共享内存是否存在数据;

25、在所述共享内存中不存在数据的情况下,在所述共享内存中写入待发送数据的目标封装数据;当在所述共享内存中写入的封装数据的数据长度达到所述共享内存的数据长度时,申请不同于所述共享内存的发送缓冲区,并将所述目标封装数据中除所述写入的封装数据之外的数据存储至发送缓冲区;在所述共享内存中存在数据的情况下,申请所述发送缓冲区,并将所述目标封装数据存储至所述发送缓冲区。

26、第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:

27、在需要向所述第二处理器发送数据时,检测共享内存是否存在数据;

28、在所述共享内存中不存在数据的情况下,在所述共享内存中写入待发送数据的目标封装数据;当在所述共享内存中写入的封装数据的数据长度达到所述共享内存的数据长度时,申请不同于所述共享内存的发送缓冲区,并将所述目标封装数据中除所述写入的封装数据之外的数据存储至发送缓冲区;在所述共享内存中存在数据的情况下,申请所述发送缓冲区,并将所述目标封装数据存储至所述发送缓冲区。

29、上述双核设备的数据处理方法、装置、双核设备、计算机可读存储介质和计算机程序产品,第一处理器在需要向第二处理器发送数据时,通过检测共享内存是否存在数据,可以避免所写入的数据会将共享内存中已有的数据覆盖的情况,从而降低了数据丢失率。第一处理器通过在共享内存不存在数据的情况下,在共享内存中写入待发送数据的目标封装数据,并在共享内存中写入的封装数据的数据长度达到共享内存的数据长度时,申请不同于所述共享内存的发送缓冲区,并通过将目标封装数据中除写入的封装数据之外的数据存储至发送缓冲区,可以避免在目标封装数据无法完整地写入共享内存时,也不会将目标封装数据中的部分数据进行丢弃的情况,从而,可以降低数据丢失率。

30、第六方面,本申请提供了一种双核设备的数据处理方法,所述双核设备包括第一处理器和第二处理器,所述方法应用于第二处理器,所述方法包括:

31、检测共享内存中是否存在数据;

32、在所述共享内存中存在数据的情况下,从所述共享内存中读取来自所述第一处理器的数据;

33、在数据读取完成时,清除所述共享内存中的数据。

34、在其中一个实施例中,所述方法还包括:

35、按照预设字节从所述共享内存中读取数据,若所述预设字节对应的数据包括用于表征头码的数据,则基于所述用于表征头码的数据之后的字节数据,获得目标数据长度;

36、在所述字节数据后读取到与参考数据长度一致的数据的情况下,若读取到的数据包括有本文档来自技高网...

【技术保护点】

1.一种双核设备的数据处理方法,其特征在于,所述双核设备包括第一处理器和第二处理器,所述方法应用于第一处理器,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述将所述目标封装数据中除所述写入的封装数据之外的数据存储至发送缓冲区之后,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,所述方法还包括:

4.根据权利要求2所述的方法,其特征在于,所述确定所述共享内存中不存在数据,包括:

5.根据权利要求1-4任一项所述的方法,其特征在于,获得所述目标封装数据的方式,包括:

6.根据权利要求5所述的方法,其特征在于,所述待发送数据包括至少一个数据包,所述目标封装数据包括所述至少一个数据包对应的封装数据。

7.一种双核设备的数据处理方法,其特征在于,所述双核设备包括第一处理器和第二处理器,所述方法应用于第二处理器,所述方法包括:

8.根据权利要求7所述的方法,其特征在于,所述方法还包括:

9.根据权利要求8所述的方法,其特征在于,所述方法还包括:

10.根据权利要求9所述的方法,其特征在于,所述确定所述共享内存中存在数据,包括:

11.一种双核设备,包括存储器、第一处理器和第二处理器,所述存储器存储有计算机程序,其特征在于,所述第一处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤,所述第二处理器执行所述计算机程序时实现权利要求7至10中任一项所述的方法的步骤。

...

【技术特征摘要】

1.一种双核设备的数据处理方法,其特征在于,所述双核设备包括第一处理器和第二处理器,所述方法应用于第一处理器,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述将所述目标封装数据中除所述写入的封装数据之外的数据存储至发送缓冲区之后,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,所述方法还包括:

4.根据权利要求2所述的方法,其特征在于,所述确定所述共享内存中不存在数据,包括:

5.根据权利要求1-4任一项所述的方法,其特征在于,获得所述目标封装数据的方式,包括:

6.根据权利要求5所述的方法,其特征在于,所述待发送数据包括至少一个数据包,所述目标封装数据包括所述至少一个数据...

【专利技术属性】
技术研发人员:刘明才王鑫陈梓豪谭金泳解振宁谢浙
申请(专利权)人:珠海格力电器股份有限公司
类型:发明
国别省市:

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

1