数据共享方法、装置、电子设备及储存介质制造方法及图纸

技术编号:27213533 阅读:20 留言:0更新日期:2021-02-04 11:29
本发明专利技术实施例提供了一种数据共享方法、装置、电子设备及存储介质,涉及通信技术领域。其中,该方法包括:第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,通过预设驱动从用户态进入内核态;目标数据资源存放于内核空间,且包含指针和/或地址引用;预设驱动被配置为运行在内核态;第一进程在内核态访问目标数据资源,以实现目标数据资源在不同进程间的共享。本发明专利技术实施例中,由于在共享过程中,目标数据资源在内核空间中的存储位置未发生过变化,因此,目标数据资源中的指针和/或地址引用在整个共享过程中都可适用于内核空间,如此,第一进程利用该指针和/或地址引用在内核空间中查找数据时,不会发生查找错误。不会发生查找错误。不会发生查找错误。

【技术实现步骤摘要】
数据共享方法、装置、电子设备及储存介质


[0001]本专利技术涉及通信
,特别是涉及一种数据共享方法、一种数据共享装置、一种电子设备以及一种存储介质。

技术介绍

[0002]目前,各个进程之间可以通过共享内存的方式进行通信,其中,共享内存的方式是指相互通信的进程可以在用户空间拥有共享内存区域,当A进程要将用户空间中A进程的内存区域存储的数据资源共享给B进程时,A进程可以将该数据资源转存至共享内存区域,然后B进程可以从共享内存区域访问到该数据资源中的任意数据,从而A进程和B进程之间可以共享该数据资源。
[0003]然而,在实际应用中,进程之间只能通过共享内存的方式共享的数据资源仅为,不包含指针和/或地址引用的数据资源,这是由于在A进程对应的内存区域存放的数据资源中,指针和/或地址引用的使用范围仅适用于A进程对应的内存区域,而由于数据资源已被转存至共享内存区域,因此,当B进程通过该指针和/或地址引用在共享内存区域中查找数据时,则无法找到正确的数据。因此,对于包含指针和/或地址引用的复杂结构的数据资源,进程之间无法通过共享内存的方式实现共享。

技术实现思路

[0004]鉴于上述问题,提出了本专利技术实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种数据共享方法,以解决对于包含指针或地址引用的复杂结构的数据资源,进程之间无法通过共享内存的方式实现共享的问题。
[0005]相应的,本专利技术实施例还提供了一种数据共享装置、一种电子设备以及一种存储介质,用以保证上述方法的实现及应用。
[0006]为了解决上述问题,本专利技术实施例公开了一种数据共享方法,包括:
[0007]第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,通过预设驱动从所述用户态进入内核态;所述目标数据资源存放于内核空间;所述目标数据资源包含指针和/或地址引用;所述预设驱动被配置为运行在所述内核态;
[0008]所述第一进程在所述内核态访问所述目标数据资源,以实现所述目标数据资源在所述第一进程与所述第二进程之间的共享。
[0009]可选地,所述第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,通过预设驱动从所述用户态进入内核态之前,还包括:
[0010]所述第一进程通过所述预设驱动执行第一设备打开操作;
[0011]所述第一进程生成所述第一设备打开操作对应的第一文件描述符;
[0012]所述第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,通过预设驱动从所述用户态进入内核态,包括:
[0013]第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,根据所
述第一文件描述符,调用预设驱动的第一函数;所述第一函数用于从所述用户态进入所述内核态;
[0014]所述第一进程运行所述第一函数,以从所述用户态进入所述内核态。
[0015]可选地,所述第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,通过预设驱动从所述用户态进入内核态之前,还包括:
[0016]所述第二进程通过所述预设驱动从所述用户态进入所述内核态;
[0017]所述第二进程在所述内核态对初始数据资源进行处理,获得所述目标数据资源;所述初始数据资源存放于所述内核空间。
[0018]可选地,所述第二进程通过所述预设驱动从所述用户态进入所述内核态之前,还包括:
[0019]所述第二进程通过所述预设驱动执行第二设备打开操作;
[0020]所述第二进程生成所述第二设备打开操作对应的第二文件描述符;
[0021]所述第二进程通过所述预设驱动从所述用户态进入所述内核态,包括:
[0022]所述第二进程根据所述第二文件描述符,调用预设驱动的第二函数;所述第二函数用于从所述用户态进入所述内核态;
[0023]所述第二进程运行所述第二函数,以从所述用户态进入所述内核态。
[0024]可选地,所述初始数据资源为所述第二进程对应的包含指针和/或地址引用的图形界面资源;所述第二进程在所述内核态对初始数据资源进行处理,获得所述目标数据资源,包括:
[0025]所述第二进程在所述内核态通过预置的显卡驱动访问存放于显存中的所述初始数据资源;
[0026]所述第二进程对所述初始数据资源进行更新,获得目标数据资源。
[0027]可选地,所述第一进程在所述内核态访问所述目标数据资源,以实现所述目标数据资源在所述第一进程与所述第二进程之间的共享之后,还包括:
[0028]所述第一进程将所述目标数据资源,以及与所述第二进程对应同一显示器的至少一个第三进程对应的图形界面资源进行融合,获得融合图形界面资源;
[0029]所述第一进程将所述融合图形界面资源输出至所述显示器,以进行显示。
[0030]可选地,所述第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,通过预设驱动从所述用户态进入内核态之前,还包括:
[0031]所述第二进程对所述目标数据资源设置目标全局标志;
[0032]所述第一进程在所述内核态访问所述目标数据资源,以实现所述目标数据资源在所述第一进程与所述第二进程之间的共享,包括:
[0033]所述第一进程根据所述目标全局标志,在所述内核态访问所述目标数据资源,以实现所述目标数据资源在所述第一进程与所述第二进程之间的共享。
[0034]本专利技术实施例还公开了一种数据共享装置,包括:
[0035]第一进入模块,用于使第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,通过预设驱动从所述用户态进入内核态;所述目标数据资源存放于内核空间;所述目标数据资源包含指针和/或地址引用;所述预设驱动被配置为运行在所述内核态;
[0036]访问模块,用于使所述第一进程在所述内核态访问所述目标数据资源,以实现所述目标数据资源在所述第一进程与所述第二进程之间的共享。
[0037]可选地,所述装置还包括:
[0038]第一执行模块,用于使所述第一进程通过所述预设驱动执行第一设备打开操作;
[0039]第一生成模块,用于使所述第一进程生成所述第一设备打开操作对应的第一文件描述符;
[0040]所述第一进入模块包括:
[0041]第一调用子模块,用于使第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,根据所述第一文件描述符,调用预设驱动的第一函数;所述第一函数用于从所述用户态进入所述内核态;
[0042]第一运行子模块,用于使所述第一进程运行所述第一函数,以从所述用户态进入所述内核态。
[0043]可选地,所述装置还包括:
[0044]第二进入模块,用于使所述第二进程通过所述预设驱动从所述用户态进入所述内核态;
[0045]处理模块,用于使所述第二进程在所述内核态对初始数据资源进行处理,获得所述目标数据资源;所述初始数据资源存放于所述内核空间。本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据共享方法,其特征在于,包括:第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,通过预设驱动从所述用户态进入内核态;所述目标数据资源存放于内核空间;所述目标数据资源包含指针和/或地址引用;所述预设驱动被配置为运行在所述内核态;所述第一进程在所述内核态访问所述目标数据资源,以实现所述目标数据资源在所述第一进程与所述第二进程之间的共享。2.根据权利要求1所述的方法,其特征在于,所述第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,通过预设驱动从所述用户态进入内核态之前,还包括:所述第一进程通过所述预设驱动执行第一设备打开操作;所述第一进程生成所述第一设备打开操作对应的第一文件描述符;所述第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,通过预设驱动从所述用户态进入内核态,包括:第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,根据所述第一文件描述符,调用预设驱动的第一函数;所述第一函数用于从所述用户态进入所述内核态;所述第一进程运行所述第一函数,以从所述用户态进入所述内核态。3.根据权利要求1所述的方法,其特征在于,所述第一进程在用户态接收到对第二进程对应的目标数据资源的共享指令时,通过预设驱动从所述用户态进入内核态之前,还包括:所述第二进程通过所述预设驱动从所述用户态进入所述内核态;所述第二进程在所述内核态对初始数据资源进行处理,获得所述目标数据资源;所述初始数据资源存放于所述内核空间。4.根据权利要求3所述的方法,其特征在于,所述第二进程通过所述预设驱动从所述用户态进入所述内核态之前,还包括:所述第二进程通过所述预设驱动执行第二设备打开操作;所述第二进程生成所述第二设备打开操作对应的第二文件描述符;所述第二进程通过所述预设驱动从所述用户态进入所述内核态,包括:所述第二进程根据所述第二文件描述符,调用预设驱动的第二函数;所述第二函数用于从所述用户态进入所述内核态;所述第二进程运行所述第二函数,以从所述用户态进入所述内核态。5.根据权利要求3所述的方法,其特征在于,所述初始数据资源为所述第二进程对应的包含指针和/或地址引用的图形界面资源;所述第二进程在所述内核态对初始数据资源进行处理,获得所述目标数据资源,包括:所述第二进程在所述内核态通过预置的显卡驱动访问存放于显存中的所述初始数据...

【专利技术属性】
技术研发人员:王波李轶辛旭
申请(专利权)人:龙芯中科技术股份有限公司
类型:发明
国别省市:

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

1