实时系统中的图形绘制方法、装置、电子设备及存储介质
文献发布时间:2024-01-17 01:13:28
技术领域
本申请涉及显示控制技术领域,尤其涉及一种实时系统中的图形绘制方法、装置、电子设备及存储介质。
背景技术
嵌入式实时操作系统(以下简称实时系统)是专门为嵌入式环境设计开发的操作系统,可以为程序员提供高效的实时多任务调度、中断/异常管理以及实时的任务间通信等功能。
目前,在显控领域的实时系统都是基于中央处理器(central processing unit,CPU)+独立显卡来实现2D/3D图形绘制及显示功能。然而,CPU+独立显卡的方式存在功耗高、性价比低、硬件集成化程度低、适配和维护过于复杂。
发明内容
本申请实施例提供一种实时系统中的图形绘制方法、装置、电子设备及存储介质,可以在实时系统中不安装独立显卡的情况下实现2D/3D图形的绘制,进而可以降低实时系统的功耗和维护成本。
第一方面,本申请实施例提供一种实时系统中的图形绘制方法,包括:
初始化图形处理器GPU;
根据所述GPU的标识调用实时系统中的字符设备注册安装函数,对所述GPU进行注册,形成虚拟设备;
接收外部输入的渲染信息,并将所述渲染信息通过所述虚拟设备写入显示控制器DC的第一寄存器中,以使所述DC从所述第一寄存器中读取所述渲染信息;
接收外部输入的绘制信息,并将所述绘制信息通过所述虚拟设备发送至所述GPU,以使所述GPU根据所述绘制信息完成图形绘制;
获取绘制完成的图形,并将绘制完成的图形发送至所述DC,以使所述DC结合所述渲染信息将绘制完成的图形帧进行显示。
可选的,根据所述GPU的标识调用实时系统中的字符设备注册安装函数,对所述GPU进行注册,形成虚拟设备,包括:
根据所述GPU的标识,调用字符设备注册安装函数,将实时系统的执行函数注册为GPU执行函数;所述GPU执行函数用于控制所述GPU执行对应的功能;
将所述GPU执行函数写入所述实时系统预设目录中,得到注册完成的虚拟设备,并将所述GPU的标识作为所述虚拟设备的标识参数。
可选的,所述接收外部输入的渲染信息,并将所述渲染信息通过所述虚拟设备写入显示控制器DC的第一寄存器中,包括:
接收外部通过应用层输入的渲染信息,并将所述渲染信息下发至所述实时系统的内核态;
在所述实时系统的内核态中根据包含所述标识参数的设备控制接口函数,调用所述GPU执行函数,将所述渲染信息写入所述第一寄存器中;其中,所述第一寄存器的地址是在所述GPU初始化时确定的。
可选的,所述接收外部输入的绘制信息,并将所述绘制信息通过所述虚拟设备发送至所述GPU,包括:
接收外部通过图形绘制接口输入的绘制信息,并将所述绘制信息下发至所述实时系统的内核态;
在所述操作系统的内核态中根据包含所述标识参数的设备控制接口函数,调用所述GPU执行函数,将所述绘制信息写入所述GPU的第二寄存器中,其中,所述第二寄存器的地址是在所述GPU初始化时确定的。
可选的,所述绘制完成的图形储存于所述实时系统的内存中;
所述获取绘制完成的图形,并将所述绘制完成的图形发送至所述DC,包括:
根据包含所述标识参数的设备控制接口函数和所述绘制完成的图形的储存地址,调用所述GPU执行函数,获取所述绘制完成的图形;
将所述绘制完成的图形写入所述DC的显示地址;所述显示地址是根据所述渲染信息确定的。
可选的,所述方法还包括:
向所述图形绘制接口发送绘制完成指令,以展示下次所述绘制信息的入口;所述绘制完成指令用于指示所述图形绘制接口显示指令输入界面。
可选的,在所述获取绘制完成的图形之前,所述方法还包括:
接收所述GPU发送的通知消息,所述通知消息用于指示所述GPU完成图形绘制,所述通知消息是通过中断信号的方式发送的。
可选的,所述方法还包括:
根据包含所述标识的open函数,调用所述GPU执行函数,打开所述虚拟设备。
可选的,在接收到所述用户输入的关闭指令之后,所述方法还包括:
根据包含所述标识的close函数,调用所述GPU执行函数,关闭所述虚拟设备;
根据包含所述标识的remove函数,调用所述GPU执行函数,移除所述虚拟设备。
第二方面,本申请实施例提供一种实时系统中的图形绘制装置,包括:
初始化模块,用于初始化图形处理器GPU;
注册模块,用于根据所述GPU的标识调用实时系统中的字符设备注册安装函数,对所述GPU进行注册,形成虚拟设备;
写入模块,用于接收外部输入的渲染信息,并将所述渲染信息通过所述虚拟设备写入显示控制器DC的第一寄存器中,以使所述DC从所述第一寄存器中读取所述渲染信息;
接收模块,用于接收外部输入的绘制信息,并将所述绘制信息通过所述虚拟设备发送至所述GPU,以使所述GPU根据所述绘制信息完成图形绘制;
获取模块,用于获取绘制完成的图形,并将绘制完成的图形发送至所述DC,以使所述DC结合所述渲染信息将将绘制完成的图形帧进行显示。
第三方面,本申请提供一种电子设备,包括:存储器和处理器;
存储器用于存储计算机指令;处理器用于运行存储器存储的计算机指令实现第一方面中任一项的方法。
第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行以实现第一方面中任一项的方法。
第五方面,本申请提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面中任一项的方法。
本申请实施例提供的实时系统中的图形绘制方法、装置、电子设备及存储介质,通过初始化图形处理器GPU;根据GPU的标识调用实时系统中的字符设备注册安装函数对所述GPU进行注册,形成虚拟设备;接收外部输入的渲染信息,并将渲染信息通过虚拟设备写入显示控制器DC的第一寄存器中,以使DC从第一寄存器中读取渲染信息;接收外部输入的绘制信息,并将绘制信息通过虚拟设备发送至GPU,以使GPU根据绘制信息完成图形绘制;获取绘制完成的图形,并将所述绘制完成的图形发送至所述DC,以使DC结合所述渲染信息将绘制完成的图形帧进行显示。通过经过注册的虚拟设备来间接控制GPU,可以在实时系统中不安装独立显卡的情况下实现图形的绘制,进而可以降低实时系统的功耗,提高工作效率。
附图说明
图1为一种基于CPU加独立显卡实现图形绘制并显示的流程示意图;
图2为本申请实施例提供的实时系统中的图形绘制方法的流程示意图一;
图3为本申请实施例提供的实时系统中的图形绘制方法的程示意图二;
图4为本申请实施例提供的实现图形绘制及显示的示意图;
图5为本申请实施例提供的实时系统中的图形绘制装置的结构示意图;
图6为本申请实施例提供的实时系统中的图形绘制电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。
在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
需要说明的是,本申请实施例中,“示例性的”或者“例如”等词用于表示例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
目前,在显控领域的实时系统都是基于CPU+独立显卡来实现2D/3D图形绘制及显示功能。
如图1所示,CPU将接收的绘制命令首先发送至显卡驱动,显卡驱动将绘制命令翻译成GPU可以识别的绘制信息,并发送给独立显卡的图形处理器(Graphics ProcessingUnit,GPU),GPU对绘制信息进行处理,以得到处理后的数据,并将处理后的数据放入独立显卡上的显存中。数模转换器从显存中读取处理后的数据,并将其转换为模拟信号,最后由显示控制器基于转换得到的模拟信号控制显示器显示目标图形,至此,完成图形的绘制及显示。
但是,CPU+独立显卡方式存在功耗高、性价比低、硬件集成化程度低、适配和维护成本高、需额外硬件支持:比如显卡固定、与主板的接口、主板电路支持等缺点。
CPU+GPU一体化芯片因具有集成化程度高、成本低、重量轻、体积小、功能完善等优势,而广受青睐。实时系统的处理器芯片也同样由CPU芯片过渡至CPU+GPU一体化芯片。而在使用CPU+GPU一体化芯片的实时系统中,为减少操作系统的功耗、降低维护成本,通常不会搭载独立显示。
因此,如何在缺少独立显卡的实时系统中实现2D/3D图形绘制及显示功能,成为了本领域技术人员亟需解决的问题。
有鉴于此,本申请提出一种实时系统中的图形绘制方法、装置、电子设备和存储介质,通过实时系统的字符设备注册模型,对GPU进行注册形成虚拟设备,通过虚拟设备控制函数来控制GPU,可以实现在实时系统中2D/3D图形绘制及显示功能。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以独立实现,也可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图2为本申请实施例提供的实时系统中的图形绘制方法的流程示意图一,如图2所示,包括如下步骤:
S201、初始化图形处理器GPU;
S202、根据GPU的标识调用实时系统中的字符设备注册安装函数,对GPU进行注册,形成虚拟设备。
本申请实施例中,字符设备为实时系统中按照字节流进行读写操作的设备,其读写数据是分先后顺序的。
字符设备注册安装函数为实时系统提供的注册函数,通过字符设备注册安装函数可以在实时系统中对字符设备的驱动进行注册安装,将实时系统中对应的实体对象实例化为虚拟设备,以使实时系统与虚拟设备进行数据交互。
本申请实施例中,对GPU进行初始化是通过执行GPU的初始化函数实现的,例如,实时系统接收到用户输入的GPU初始化指令,如,用户输入gpu_init函数,实时系统开始执行对GPU初始化的过程。对GPU进行初始化包括但不限于获取GPU和对应的显示控制器(DisplayController,DC)的配置寄存器地址,读写GPU和DC相关寄存器的状态等,通过对GPU进行初始化将GPU和DC的相关参数设置为默认状态。
本申请实施例中,对GPU进行注册可以为实时系统调用字符设备注册安装函数,根据实时系统提供的字符设备函数生成至少一种用于控制GPU的函数。
示例性的,实时系统中的字符设备注册安装函数可以为open函数、close函数等,通过字符设备注册安装函数,可以根据GPU标识和字符设备注册安装函数生成至少一个包括GPU标识的目标函数。例如,gpu_open函数、gpu_close函数等。
本申请实施例中,实时系统得到至少一个目标函数时,可以对目标函数创建逻辑设备名称,即,根据目标函数形成对应的虚拟设备。其中,GPU的标识为该虚拟设备的名称。例如,以“/gpu”为名称的虚拟设备。
可以理解的是,虚拟设备可以为实时系统生成的一系列用于控制GPU的目标函数集合形成的对象。通过虚拟设备,外部可以间接调用目标函数来控制GPU执行对应的指令。即,通过虚拟设备建立了实时系统与GPU的连接通道。换句话说,生成虚拟设备相当于在实时系统中建立GPU驱动。
S203、接收外部输入的渲染信息,并将渲染信息通过虚拟设备写入显示控制器DC的第一寄存器中,以使DC从第一寄存器中读取渲染信息。
本申请实施例中,外部输入的渲染信息可以为用户在实时系统中输入的渲染信息,也可以为实时系统连接的其他设备输入的渲染信息。渲染信息是指显示绘制图形的相关参数,例如,显示窗口长宽、色深以及多重采样等参数。
本申请实施例中,用户可以通过实时系统提供的设置在应用层的应用程序接口输入相关的渲染信息,实时系统接收到渲染信息时,可以通过实时系统中的调用函数,例如ioctl函数,将渲染信息下发至实时系统的内核态。在实时系统的内核态中执行调用虚拟设备来读写DC的寄存器,将该渲染信息写入DC的寄存器。
DC可以从寄存器中获取该渲染信息,并根据该渲染信息设置对应的显示绘制图形的信息。
S204、接收外部输入的绘制信息,并将绘制信息通过虚拟设备发送至GPU,以使GPU根据绘制信息完成图形绘制。
本申请实施例中,绘制信息可以为绘制图形的相关信息,例如,绘制图形的长宽高、形状、颜色等信息。
外部可以通过实时系统提供的设置在应用层的应用程序接口输入相关的绘制信息,实时系统接收到绘制信息时,可以通过实时系统中的调用函数,例如ioctl函数,将绘制信息下发至实时系统的内核态。在实时系统的内核态中执行调用虚拟设备来读写GPU的寄存器,将绘制信息写入GPU的寄存器。
GPU可以从寄存器中获取该绘制信息,并根据该绘制信息进行绘制,得到绘制完成的图形。
可选的,GPU在绘制完成后,可以向实时系统发送绘制完成消息,以使实时系统获取绘制完成的图形,其中,绘制完成的图形储存于实时系统的预设位置,例如,实时系统的内存中。
S205、获取绘制完成的图形,并将绘制完成的图形通过虚拟设备发送至DC,以使DC结合渲染信息将绘制完成的图形帧进行显示。
本申请实施例中,实时系统在接收到GPU发送的消息时,可以根据绘制完成的图形的存储地址执行调用虚拟设备来获取绘制完成的图形,并调用字虚拟设备将绘制完成的图形写入至预先设置的DC的图形显示地址。
DC根据图形显示地址获取该绘制图形,并将该绘制的图形显示在根据渲染信息设置的显示图形窗口,从而完成一帧图形的显示。
可选的,实时系统在将绘制完成的图形写入至预先设置的DC的图形显示地址时,也可以调用虚拟设备来控制GPU将将绘制完成的图形写入至DC的图形显示地址。
本申请实施例提供的实时系统中的图形绘制方法,通过初始化图形处理器GPU;根据GPU的标识调用实时系统中的字符设备注册安装函数对GPU进行注册,形成虚拟设备;接收外部输入的渲染信息,并将渲染信息通过虚拟设备写入显示控制器DC的第一寄存器中,以使DC从第一寄存器中读取渲染信息;接收外部输入的绘制信息,并将绘制信息通过虚拟设备发送至GPU,以使GPU根据绘制信息完成图形绘制;获取绘制完成的图形,并将绘制完成的图形发送至所述DC,以使DC结合所述渲染信息将所述绘制完成的图形帧进行显示。通过经过注册的虚拟设备来间接控制GPU和DC,可以在实时系统中不安装独立显卡的情况下实现图形的绘制,进而可以降低实时系统的功耗和维护成本。
图3为本申请实施例提供的实时系统中的图形绘制方法的流程示意图二,在图2所示实施例的基础上,进一步对本申请实施例提供的图形绘制方法进行说明,如图3所示,包括如下步骤:
S301、根据GPU的标识调用字符设备注册安装函数对GPU进行注册,得到虚拟设备。
本申请实施例中,根据GPU的标识对GPU进行注册,得到虚拟设备可以根据如下方式进行:
示例性的:根据GPU的标识,调用字符设备注册安装函数,将实时系统的执行函数注册为GPU执行函数,GPU执行函数用于控制GPU执行对应的功能将GPU执行函数写入实时系统预设目录中,得到注册完成的虚拟设备,并将GPU的标识作为虚拟设备的标识。
其中,GPU执行函数可以包括gpu_open、gpu_close、gpu_ioctl、gpu_remove中的至少一种;
本申请实施例中,实时系统可以调用字符设备注册安装函数注册GPU的执行函数,将实时系统的remove函数、open函数、close函数以及ioctl函数注册为控制GPU运行的执行函数,其中,执行函数也可以称为调用函数。
实时系统可以调用字符设备添加函数对获取的执行函数进行命名,将获取的执行函数进行该执行函数写入实时系统预设目录中,例如,实时系统的/dev/目录中,并将GPU的标识作为虚拟设备的逻辑名称,即,虚拟设备的标识,得到以“/gpu”为设备名称的虚拟设备。
在得到注册完成的虚拟设备后,外部可以通过虚拟设备间接控制GPU。例如,用户可以输入open(“/gpu”)函数,实时系统接收到该函数后可以打开以gpu为标识虚拟设备,并调用虚拟设备执行虚拟设备中的gpu_open函数,来执行打开GPU的操作。
可选的,在进行GPU初始化时,可以在实时系统的内存中申请一段内存空间作为GPU数据存储区,并确定该数据存储区的存储地址。
S302、根据外部输入的指令建立虚拟设备与GPU的连接。
本申请实施例中,实时系统可以根据外部在实时系统的交互界面中输入打开的指令执行建立虚拟设备与GPU的连接的操作,其中,外部输入的指令是以调用函数的方式呈现。
例如,实时系统根据包含GPU标识的open函数,间接调用gpu_open函数,建立虚拟设备与GPU的连接。
示例性的,外部可以在实时系统的main函数中输入open(“/gpu”)函数,实时系统可以根据外部输入的函数中的标识信息,确定该标识信息对应的虚拟设备,并调用虚拟设备执行虚拟设备中的gpu_open函数,来执行打开GPU的操作,即建立虚拟设备与GPU的连接。
S303、通过虚拟设备将用户输入的渲染信息写入DC的第一寄存器中。
本申请实施例中,实时系统通过虚拟设备将用户输入的渲染信息写入DC的第一寄存器中可以是调用虚拟设备中相关的执行函数来实现的。
示例性的,接收外部通过应用层输入的渲染信息,并将所述渲染信息下发至所述实时系统的内核态;在所述实时系统的内核态中,根据包含所述标识参数的ioctl函数,调用所述GPU执行函数,将所述渲染信息写入所述第一寄存器中,其中,所述第一寄存器的地址是在所述GPU初始化时确定的。
本申请实施例中,外部在应用层输入的渲染信息时,可以通过实时系统的相关函数进行。
示例性的,请参考图4,用户可以在实时系统的交互界面调用接口函数,实时系统可以显示用户输入渲染信息的窗口或者界面,用户在该界面中可以输入需要绘制的图形的渲染信息,以及,对应的虚拟设备控制指令,例如,ioctl(“/gpu”)。
实时系统在获取该渲染信息后可以调用ioctl函数将该渲染信息下发至实时系统的内核态中。实时系统在内核态中根据虚拟设备控制指令执行调用虚拟设备中的gpu_ioctl函数,根据所述第一寄存器的地址对第一寄存器进行读写,将该渲染信息写入第一寄存器中。DC可以从第一寄存器中获取该渲染信息,并根据该渲染信息设置对应的显示图形窗口。
可选的,在接收外部输入的渲染信息时,实时系统可以在实时系统的内存中申请一段内存,作为DC的显示地址,该显示地址用于存储待显示的绘制完成的图形。
S304、通过虚拟设备将外部输入的绘制信息写入GPU的第二寄存器中。
本申请实施例中,实时系统通过虚拟设备将外部输入的绘制信息写入GPU的第二寄存器中是通过调用虚拟设备中相关的执行函数来实现的。
示例性的,接收外部通过图形绘制接口输入的绘制信息,并将所述绘制信息下发至所述实时系统的内核态;在所述实时系统的内核态中根据包含所述标识参数的ioctl函数,调用GPU执行函数,将所述绘制信息写入所述GPU的第二寄存器中,其中,所述第二寄存器的地址是在所述GPU初始化时确定的,图形绘制接口设置在所述应用层中。
示例性的,请继续参考图4,外部可以在实时系统的交互界面输入opengles函数调用实时系统的图形绘制接口来输入绘制信息,以及,对应的虚拟设备控制指令,例如,ioctl(“/gpu”)。
实时系统接收到绘制信息时可以调用ioctl函数将该渲染信息下发至实时系统的内核态中。实时系统在内核态中根据虚拟设备控制指令执行调用虚拟设备中的gpu_ioctl函数,根据所述第二寄存器的地址对第二寄存器进行读写,将该绘制信息写入第二寄存器中。
GPU可以根据第二寄存器中的绘制信息进行图形绘制,并将绘制完成的图形写入预先设置的数据存储区。GPU在完成图形绘制时,可以向实时系统发送图形绘制完成消息。其中,图形绘制完成消息可以是以中断信号的形式发送至实时系统的。
S305、通过虚拟设备将绘制完成的图形写入至DC的显示地址。
本申请实施例中,实时系统通过虚拟设备将GPU绘制完成的图形写入至DC中是调用虚拟设备中相关的执行函数来实现的。
示例性的,根据包含所述标识参数的ioctl函数和所述绘制完成的图形的储存地址,调用所述GPU执行函数,获取所述绘制完成的图形;将所述绘制完成的图形写入所述DC的显示地址;所述显示地址是根据所述渲染信息确定的。
示例性的,实时系统接收述GPU发送的中断信号时,实时系统可以通过信号量的方式向应用层发送消息,并控制应用层可以在图形绘制接口处显示指令输入区。
外部可以在指令输入区输入虚拟设备控制指令,例如,ioctl(“/gpu”)。实时系统可以调用虚拟设备中的gpu_ioctl函数将绘制完成的图形从GPU的数据存储区搬运至DC的显示地址中。
DC可以根据显示地址中的绘制完成的图形在图形显示窗口中显示该绘制完成的图形。
S306、根据外部的指令确定是否继续进行图形绘制,或者关闭并移出虚拟设备。
本申请实施例中,实时系统在DC完成显示绘制的图形后,可以根据外部的指令继续进行下一帧图形的绘制,或者,结束图形绘制。
示例性的,向所述图形绘制接口发送绘制完成指令,以展示下次所述绘制信息的入口;所述绘制完成指令用于指示所述图形绘制接口显示指令输入界面。
本申请实施例中,实时系统可以通过信号量的方式将图形绘制完成指令发送至图形绘制接口。图形绘制接口接收到图形绘制完成指令时,可以显示指令输入界面。
可选的,在一些实施例中,若实时系统接收到外部在指令输入界面输入指令为继续绘制图形的指令时,实时系统可以根据指令进行下一帧图形的绘制。其实现方式与S303至S305所示的方式类似。
若实时系统接收到外部在指令输入界面输入的指令为关闭指令,则结束图形的绘制。
示例性的,根据包含所述标识参数的close函数,调用所述gpu_close函数,关闭所述虚拟设备;根据包含所述标识参数的remove函数,调用所述gpu_remove函数,移除所述虚拟设备。
示例性的,若外部在指令输入界面close(“/gpu”)指令,则实时系统调用虚拟设备中的gpu_close函数,关闭以gpu为名称的虚拟设备。关闭虚拟设备可以理解为关闭虚拟设备与GPU的连接。
在关闭虚拟设备后,若外部在指令输入界面remove(“/gpu”)指令,则实时系统调用虚拟设备中的remove_close函数,移除以gpu为名称的虚拟设备。即,在实时系统的预设目录下,删除注册的GPU执行函数。
本申请实施例提供的图形绘制方法,通过实时系统的执行函数注册控制GPU和DC的虚拟设备,可以在无独立显卡的实时系统中实现图形的绘制,进而可以降低实时系统的功耗和维护成本。
在上述实时系统中的图形绘制方法实施例的基础上,本申请实施例还提供一种实时系统中的图形绘制装置。
图5为本申请实施例提供的实时系统中的图形绘制装置50的结构示意图,如图5所示,包括:
初始化模块501,用于初始化图形处理器GPU。
注册模块502,用于根据所述GPU的标识调用实时系统中的字符设备注册安装函数,对所述GPU进行注册,形成虚拟设备。
写入模块503,用于接收外部输入的渲染信息,并将所述渲染信息通过所述虚拟设备写入显示控制器DC的第一寄存器中,以使所述DC从所述第一寄存器中读取所述渲染信息。
接收模块504,用于接收外部输入的绘制信息,并将所述绘制信息通过所述虚拟设备发送至所述GPU,以使所述GPU根据所述绘制信息和所述图形窗口完成图形绘制。
获取模块505,用于获取绘制完成的图形,并将绘制完成的图形发送至所述DC,以使所述DC结合所述渲染信息将绘制完成的图形帧进行和显示。
可选的,注册模块502,还用于根据所述GPU的标识,调用虚拟设备注册安装函数,将实时系统的执行函数注册为GPU执行函数,所述GPU执行函数用于控制所述GPU执行对应的功能;将所述GPU执行函数写入所述实时系统预设目录中,得到注册完成的虚拟设备,并将所述GPU的标识作为所述虚拟设备的标识参数。
可选的,写入模块503,还用于接收外部通过应用层输入的渲染信息,并将所述渲染信息下发至所述实时系统的内核态;在所述实时系统的内核态中根据包含所述标识参数的设备控制接口函数,调用所述GPU执行函数,将所述渲染信息写入所述第一寄存器中;其中,所述第一寄存器的地址是在所述GPU初始化时确定的。
可选的,接收模块504,还用于接收外部通过图形绘制接口输入的绘制信息,并将所述绘制信息下发至所述实时系统的内核态,所述图形绘制接口设置在所述应用层中;在所述实时系统的内核态中根据包含所述标识的设备控制接口函数,调用所述GPU执行函数,将所述绘制信息写入所述GPU的第二寄存器中,其中,所述第二寄存器的地址是在所述GPU初始化时确定的。
可选的,获取模块505,还用于根据包含所述标识参数的设备控制接口函数和所述绘制完成的图形的储存地址,调用所述GPU执行函数,获取所述绘制完成的图形;将所述绘制完成的图形写入所述DC的显示地址;所述显示地址是根据所述渲染信息确定的。
可选的,获取模块505,还用于向所述图形绘制接口发送绘制完成指令,以展示下次所述绘制信息的入口;所述绘制完成指令用于指示所述图形绘制接口显示指令输入界面。
可选的,接收模块504,还用于接收所述GPU发送的通知消息,所述通知消息用于指示所述GPU完成图形绘制,所述通知消息是通过中断信号的方式发送的。
本申请实施例提供的实时系统中的图形绘制装置可以执行上述任一实施例提供的实时系统中的图形绘制方法,其原理和技术效果类似,此处不在赘述。
图6为本申请实施例提供的实时系统中的图形绘制电子设备的结构示意图。如图6所示,本实施例提供的实时系统中的图形绘制电子设备60可以包括:
处理器601。
存储器602,用于存储终端设备的可执行指令。
其中,处理器配置为经由执行可执行指令来执行上述实时系统中的图形绘制方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本申请实施例中还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实时系统中的图形绘制方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
一种可能的实现方式中,计算机可读介质可以包括随机存取存储器(RandomAccess Memory,RAM),只读存储器(Read-Only Memory,ROM),只读光盘(compact discread-only memory,CD-ROM)或其它光盘存储器,磁盘存储器或其它磁存储设备,或目标于承载的任何其它介质或以指令或数据结构的形式存储所需的程序代码,并且可由计算机访问。而且,任何连接被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,数字用户线(Digital Subscriber Line,DSL)或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,DSL或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘,激光盘,光盘,数字通用光盘(Digital Versatile Disc,DVD),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。上述的组合也应包括在计算机可读介质的范围内。
本申请实施例中还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述实时系统中的图形绘制方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述终端设备或者服务器的具体实现中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:ApplicationSpecific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本领域技术人员可以理解,上述任一方法实施例的全部或部分步骤可以通过与程序指令相关的硬件来完成。前述的程序可以存储于计算机可读取存储介质中,该程序被执行时,执行上述方法实施例的全部或部分的步骤。
本申请技术方案如果以软件的形式实现并作为产品销售或使用时,可以存储在计算机可读取存储介质中。基于这样的理解,本申请的技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括计算机程序或者若干指令。该计算机软件产品使得计算机设备(可以是个人计算机、服务器、网络设备或者类似的电子设备)执行本申请实施例所述方法的全部或部分步骤。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
- 电子设备的显示控制方法、装置、电子设备和存储介质
- 电子设备控制方法及装置、电子设备及存储介质
- 数据分布存储方法、装置、存储介质及电子设备
- 存储清理方法、装置、电子设备及存储介质
- 多版本数据存储管理方法及装置、电子设备、存储介质
- 图形绘制方法和装置、计算机可读存储介质、电子设备
- 图形绘制方法、装置、电子设备和可读存储介质