一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

跨进程调用的图形渲染方法、装置、电子设备与存储介质与流程

2021-10-24 13:08:00 来源:中国专利 TAG:

技术特征:
1.一种跨进程调用的图形渲染方法,应用于电子设备,电子设备包括:第一操作系统和与第一操作系统共享内核并部署在第一操作系统中的第二操作系统,所述第一操作系统包括第一线程,第二操作系统包括第二线程,其特征在于,所述方法包括:根据所接收到的图形渲染任务请求,在目标渲染进程所对应的第一命名空间中创建第一线程;其中,所述目标渲染进程为第一操作系统进程;所述第一命名空间是在目标渲染进程的进程地址空间中创建的且能够运行第二操作系统图形驱动线程的命名空间;在所述第一命名空间中,由所述第一线程调用第二操作系统图形驱动的第二线程,以实现图形渲染任务;其中,在所述第一命名空间中,所述第一线程中的第一对象存储在指定寄存器中的第一地址与所述第二线程中的第二对象存储在所述指定寄存器中的第二地址不同。2.根据权利要求1所述的跨进程调用的图形渲染方法,其特征在于,在所述根据所接收到的图形渲染任务请求,在目标渲染进程所对应的第一命名空间中创建第一线程之前,方法还包括:在所述目标渲染进程的进程地址空间中申请第一命名空间;在所述第一命名空间中加载第二操作系统图形驱动的elf文件;根据所述第二操作系统图形驱动的elf文件中的elf头信息,在所述第一命名空间中构建第二操作系统图形驱动的依赖列表;其中,所述第二操作系统图形驱动的依赖列表描述了第二操作系统图形驱动在第二操作系统中所依赖的动态库列表;在所述第一命名空间中,对第二操作系统图形驱动在第二操作系统中所依赖的各个动态库进行初始化。3.根据权利要求2所述的跨进程调用的图形渲染方法,其特征在于,所述根据所述第二操作系统图形驱动的elf文件中的elf头信息,在所述第一命名空间中构建第二操作系统图形驱动的依赖列表,包括:根据所述第二操作系统图形驱动的elf头信息,将所述第二操作系统图形驱动中的符号表加载到所述第一命名空间中,并对所述符号表中的符号进行地址重定向;根据所述第二操作系统图形驱动的elf头信息,将所述第二操作系统图形驱动在第二操作系统中所依赖的动态库列表加载到所述第一命名空间中,得到第二操作系统图形驱动的依赖列表。4.根据权利要求2所述的跨进程调用的图形渲染方法,其特征在于,所述第一对象为tcbhead_t结构体,所述第二对象为tls数组;相应的,所述在所述第一命名空间中,对第二操作系统图形驱动在第二操作系统中所依赖的各个动态库进行初始化,包括:在所述第一命名空间中,对与第二操作系统图形驱动相关的系统全局变量的构造初始化进行拦截;在所述第一命名空间中,对与第二操作系统图形驱动线程相关的资源变量的初始化进行拦截;将第二操作系统图形驱动的属性列表进行初始化,并将初始化后的所述属性列表映射到所述第一命名空间中;在所述第一命名空间中,为所述第一线程中的tcbhead_t结构体存储在指定寄存器中
的第一地址或所述第二线程中的tls数组存储在指定寄存器中的第二地址进行设置,以使得所述第一地址与所述第二地址不同。5.根据权利要求4所述的跨进程调用的图形渲染方法,其特征在于,所述为所述第一线程中的tcbhead_t结构体存储在指定寄存器中的第一地址或所述第二线程中的tls数组存储在指定寄存器中的第二地址进行设置,包括:对所述第二线程中的tls数组所对应的索引在指定寄存器中的地址进行后移,得到所述第二地址。6.根据权利要求4所述的跨进程调用的图形渲染方法,其特征在于,所述为所述第一线程中的tcbhead_t结构体存储在指定寄存器中的第一地址或所述第二线程中的tls数组存储在指定寄存器中的第二地址进行设置,包括:将所述第一线程中的tcbhead_t结构体之前部分在指定寄存器中的地址予以保留,得到所述第一地址。7.根据权利要求3所述的跨进程调用的图形渲染方法,其特征在于,所述对所述符号表中的符号进行地址重定向,包括:对于第二操作系统图形驱动中的所有引用符号,通过查询elf文件中的程序链接表和全局偏移表确定符号地址,并将第二操作系统调用符号地址修改为第一操作系统调用符号地址。8.根据权利要求1所述的跨进程调用的图形渲染方法,其特征在于,所述第一操作系统与第二操作系统共享linux操作系统内核linux kernel;其中,所述第一线程基于libc、glibc、uclibc、klibc、eglibc、musl

libc、newlib、dietlibc中的至少一种c函数库,所述第二线程基于bionic、musl

libc 、libcrystax中的至少一种c函数库。9.一种图形渲染装置,应用于电子设备,电子设备包括:第一操作系统和与第一操作系统共享内核并部署在第一操作系统中的第二操作系统,所述第一操作系统包括第一线程,第二操作系统包括第二线程,其特征在于,所述装置包括:第一线程创建模块,用于根据所接收到的图形渲染任务请求,在目标渲染进程所对应的第一命名空间中创建第一线程;其中,所述目标渲染进程为第一操作系统进程;所述第一命名空间是在目标渲染进程的进程地址空间中创建的且能够运行第二操作系统图形驱动线程的命名空间;图形渲染任务执行模块,用于在所述第一命名空间中,由所述第一线程调用第二操作系统图形驱动的第二线程,以实现图形渲染任务;其中,在所述第一命名空间中,所述第一线程中的第一对象存储在指定寄存器中的第一地址与所述第二线程中的第二对象存储在所述指定寄存器中的第二地址不同。10.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任一项所述跨进程调用的图形渲染方法的步骤。11.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述跨进程调用的图形渲染方法的步骤。

技术总结
本发明提供一种跨进程调用的图形渲染方法、装置、电子设备与存储介质,方法包括:根据所接收到的图形渲染任务请求,在目标渲染进程所对应的第一命名空间中创建第一线程;其中,所述目标渲染进程为第一操作系统进程;所述第一命名空间是在目标渲染进程的进程地址空间中创建的且能够运行第二操作系统图形驱动线程的命名空间;在所述第一命名空间中,由所述第一线程调用第二操作系统图形驱动的第二线程,以实现图形渲染任务;其中,在所述第一命名空间中,所述第一线程中的第一对象存储在指定寄存器中的第一地址与所述第二线程中的第二对象存储在所述指定寄存器中的第二地址不同。对象存储在所述指定寄存器中的第二地址不同。对象存储在所述指定寄存器中的第二地址不同。


技术研发人员:沙斌
受保护的技术使用者:北京鲸鲮信息系统技术有限公司
技术研发日:2021.09.17
技术公布日:2021/10/23
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜