System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种直接存储器访问DMA传输方法及电子设备技术_技高网

一种直接存储器访问DMA传输方法及电子设备技术

技术编号:40151004 阅读:8 留言:0更新日期:2024-01-26 23:01
本公开涉及一种直接存储器访问DMA传输方法及电子设备,该方法应用于虚拟化环境中,所述方法包括:发送方获取直接存储器访问缓冲区DMABUF的文件描述符;发送方根据所述文件描述符,获取到DMABUF的物理内存信息和DMABUF标识,并向接收方发送所述DMABUF的物理内存信息和DMABUF标识,使得所述接收方能够根据接收到的所述DMABUF的物理内存信息和DMABUF标识创建并使用DMABUF;其中,所述发送方和接收方的DMABUF指向同一物理内存。上述方案实现了DMABUF传输,提供了一种可行的DMABUF传输方案。

【技术实现步骤摘要】

本公开涉及计算机领域,具体地,涉及一种直接存储器访问dma传输方法及电子设备。


技术介绍

1、在虚拟化环境中,实现跨虚拟机传输dmabu f(direct memory access buffer,直接存储器访问缓冲区)是一项重要任务。dma传输将数据从一个地址空间复制到另一个地址空间,提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。传输动作本身是由dma控制器来实现和完成的。dma传输方式无需cpu直接控制传输,使得cpu的效率大大提高。

2、现有技术中,实现跨虚拟机传输dmabuf存在一些问题,本方案的目的是提出一种更加优化的dmabuf传输方案。


技术实现思路

1、本公开的目的是提供一种直接存储器访问dma传输方法及电子设备,从而提供一种更加优化的dmabuf传输方案,通过引入特定的逻辑和流程,实现dmabuf传输和管理。

2、为了实现上述目的,本公开第一方面提供一种直接存储器访问dma传输方法,应用于虚拟化环境中,所述方法包括:

3、发送方获取直接存储器访问缓冲区dmabuf的文件描述符;

4、发送方根据所述文件描述符,获取到dmabuf的物理内存信息和dmabuf标识,并向接收方发送所述dmabuf的物理内存信息和dmabuf标识,使得所述接收方能够根据接收到的所述dmabuf的物理内存信息和dmabuf标识创建并使用dmabuf;

5、其中,所述发送方和接收方的dmabuf指向同一物理内存。

6、可选的,所述方法还包括:

7、发送方将dmabuf引用次数加1;

8、在使用dmabuf过程中,判断是否收到接收方发送的dmabuf的释放信息;

9、若收到,则将所述dmabuf引用次数减1;

10、判断所述dmabuf引用次数是否为0;若所述dmabuf引用次数为0,则销毁dambuf。

11、本公开第二方面提供一种直接存储器访问dma传输方法,应用于虚拟化环境中,所述方法包括:

12、接收方接收直接存储器访问缓冲区dmabuf的物理内存信息和dmabuf标识;

13、根据所述dmabuf的物理内存信息和dmabuf标识,创建dmabuf;

14、在使用dmabuf过程中,判断使用dmabuf是否完成;

15、若完成,则向发送方发送dmabuf释放消息,并释放dmabuf。

16、可选的,所述方法还包括:

17、若使用dmabuf未完成,则判断是否接收到发送方的dmabuf重启信息;

18、若接收到所述发送方的dmabuf重启信息,则释放dmabuf。

19、可选的,所述发送方和接收方的dmabuf指向同一物理内存。

20、本公开第三方面提供一种直接存储器访问dma传输方法,应用于虚拟化环境中,所述方法包括:

21、发送方和接收方之间建立通信机制,所述通信机制用于传输直接存储器访问缓冲区dmabuf的相关信息;

22、发送方根据dmabuf的文件描述符,获取到dmabuf的物理内存信息与dmabuf标识,并通过所述通信机制向所述接收方发送所述dmabuf的物理内存信息与dmabuf标识;

23、接收方根据接收到的dambuf标识与dmabuf的物理内存信息创建dmabuf;

24、发送方和接收方之间使用所述通信机制通知对方所述dmabuf的使用状态信息。

25、可选的,所述发送方和接收方的dmabuf指向同一物理内存。

26、可选的,所述dmabuf的使用状态信息包括dmabuf使用完成后的释放信息和重启信息中的一种或多种。

27、本公开第四方面提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一、二、三方面所述方法的步骤。

28、本公开第四方面提供一种电子设备,包括:

29、存储器,其上存储有计算机程序;

30、处理器,用于执行所述存储器中的所述计算机程序,以实现第一、二、三方面所述方法的步骤。

31、本公开实施例的方案中,发送方获取直接存储器访问缓冲区dmabuf的文件描述符;发送方根据所述文件描述符,获取到dmabuf的物理内存信息和dmabuf标识,并向接收方发送所述dmabuf的物理内存信息和dmabuf标识,使得所述接收方能够根据接收到的所述dmabuf的物理内存信息和dmabuf标识创建并使用dmabuf;其中,所述发送方和接收方的dmabuf指向同一物理内存。通过上述方案实现了dmabuf传输,提供了一种可行的dmabuf传输方案。

32、本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。

本文档来自技高网
...

【技术保护点】

1.一种直接存储器访问DMA传输方法,应用于虚拟化环境中,其特征在于,所述方法包括:

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

3.一种直接存储器访问DMA传输方法,应用于虚拟化环境中,其特征在于,所述方法包括:

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

5.如权利要求3所述的方法,其特征在于,所述发送方和接收方的DMABUF指向同一物理内存。

6.一种直接存储器访问DMA传输方法,应用于虚拟化环境中,其特征在于,所述方法包括:

7.如权利要求6所述的方法,其特征在于,所述发送方和接收方的DMABUF指向同一物理内存。

8.如权利要求6所述的方法,其特征在于,所述DMABUF的使用状态信息包括DMABUF使用完成后的释放信息和重启信息中的一种或多种。

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-8中任一项所述方法的步骤。

10.一种电子设备,其特征在于,包括:

【技术特征摘要】

1.一种直接存储器访问dma传输方法,应用于虚拟化环境中,其特征在于,所述方法包括:

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

3.一种直接存储器访问dma传输方法,应用于虚拟化环境中,其特征在于,所述方法包括:

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

5.如权利要求3所述的方法,其特征在于,所述发送方和接收方的dmabuf指向同一物理内存。

6.一种直接存储器访问dma传输方法,应用...

【专利技术属性】
技术研发人员:请求不公布姓名请求不公布姓名请求不公布姓名请求不公布姓名请求不公布姓名请求不公布姓名请求不公布姓名请求不公布姓名
申请(专利权)人:中瓴智行成都科技有限公司
类型:发明
国别省市:

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

1