一种显示Java软件运行时产生的图像的方法和装置的制作方法

文档序号:2543112阅读:183来源:国知局
专利名称:一种显示Java软件运行时产生的图像的方法和装置的制作方法
技术领域
本发明涉及嵌入式技术领域,特别涉及一种显示Java软件运行时产生的图 像的方法和装置。
背景技术
目前Java软件已经在各个领域得到了广泛的应用,尤其是无线移动终端领 域,全球大多数移动运营商已经推出了 Java下载服务。无线手持设备市场对 Java产生了巨大的需求增长,目前几乎所有移动终端都支持Java。
逐渐扩大的消费群体,使得运营商、内容提供商以及移动终端制造商都强 烈渴望Java性能更加强劲,支持更多更复杂的应用,为用户带来更丰富多彩的 增值应用,满足各种各样的信息需求。
运行Java软件的方式是Java虚拟机通过移植层移植数据到嵌入式操作系 统5并运行o
目前,显示Java软件产生的图像时,移植层在确定需要运行Java虛拟机 时,启动Java虛拟机,在收到Java虛拟机的图像后,需要先发送一个刷新请 求,加入到队列中,等待系统处理用户图形界面;在系统可以处理刷新请求后 (即不需要显示用户图形界面时),将显示緩沖器(Frame Buffer)中的图像删 除,将收到的Java虚拟机的图像存储到显示緩冲器中,通过屏幕进行显示。
现在4艮多Java软件对屏幕刷新要求很高,比如动作类游戏,要求快速的屏 幕响应,而目前的显示方法,在刷新屏幕时首先需要发送刷新请求到队列,等 待队列处理刷新请求,这种方式对于一般的Java软件可以满足,但对于需要快 速刷新屏幕的Java软件,由于需要等待队列处理刷新请求,从而增加了图像显 示的时间,会造成图像之间显示不连贯。
综上所述,目前显示Java软件的方式,在刷新屏幕时需要发送刷新请求到 队列,并等待处理刷请求后才能显示,从而增加了图像显示的时间。

发明内容
本发明实施例提供一种显示Java软件运行时产生的图像的方法和装置,用 以解决现有技术中存在的显示Java软件的方式,在刷新屏幕时需要发送刷新请 求到队列,并等待处理刷新请求后才能显示,从而增加图像显示时间的问题。 本发明实施例提供的一种显示Java软件运行时产生的图像的方法包括 在Java虚拟机启动时,开启显示层与存储Java软件运行时产生的图像的 第一显示緩冲器之间的通路,关闭显示层与存储用户图形界面的第二显示緩冲 器之间的通路;
在收到来自Java虚拟机的图像后,将该图^f象存储到所述第一显示緩冲器 中,通过显示层显示该图像。
本发明实施例提供的一种显示Java软件运行时产生的图像的装置包括
连接模块,用于在Java虚拟机启动时,开启显示层与存储Java软件运行 时产生的图像的第一显示緩冲器之间的通路,关闭显示层与存储用户图形界面 的第二显示緩冲器之间的通路;
处理模块,用于在收到来自Java虚拟机的图像后,将该图像存储到所述第 一显示緩冲器中,通过显示层显示该图像。
本发明实施例在Java虚拟机启动时,开启显示层与存储Java软件运行时 产生的图像的第一显示緩冲器之间的通路,关闭显示层与存储用户图形界面的 第二显示緩沖器之间的通路;在收到来自Java虚拟机的图像后,将该图像存储 到所述第一显示緩冲器中,通过显示层显示该图像。由于将图像用户界面和 Java软件产生的图像分开存储在不同的显示緩冲器中,从而在刷新屏幕时不需 要发送刷新请求,可以直接显示,加快了图像显示的时间,提高了用户体验, 对于需要快速刷新屏幕的Java软件提供了更好的显示效果。


图1A为本发明实施例显示Java软件运行时产生的图像的装置结构示意
图IB为本发明实施例显示Java软件运行时产生的图像的装置置于移植层 的示意图2为本发明实施例显示Java软件运行时产生图像的方法流程示意图; 图3为本发明实施例采用查表方法转换图傳4各式的方法流程示意图。
具体实施例方式
本发明实施例将Java软件的图像和用户图形界面分开存储,在收到来自 Java虚拟机的图像后,将该图像存储到Java软件的图像对应的第一显示緩沖器 中,通过显示层显示该图像,由于将图像用户界面和Java软件产生的图像分开 存储在不同的显示緩冲器中,从而在刷新屏幕时不需要发送刷新请求,可以直 接显示,加快了图像显示的时间。
下面结合说明书附图对本发明实施例作进一步详细描述。 如图1A所示,本发明实施例显示Java软件的图像的装置包括连接模块 IO和处理模块20。
连接冲莫块IO,用于在Java虚拟机启动时,开启显示层与存储Java4t件运 行时产生的图像的第一显示緩冲器之间的通路,关闭显示层与存储用户图形界 面的第二显示緩冲器之间的通路。
在具体实施过程中,移植层在接收到开启信号后启动Java虛拟机。开启信 号是由用户点击开启某个Java软件的选项后产生的。
当用户点击关闭某个Java软件的选项后,会产生关闭信号,移植层接收到 关闭信号后,会关闭Java虚拟机;
或者在Java软件运行时,有某个进程需要启动,(比如有短信或电话,或
者闹钟提示等)这时移植层需要查看需要启动的进程和Java软件的优先级,如 果需要启动的进程的优先级较高,则移植层会暂停Java虚拟机。
由于Java虚拟机被关闭或暂停,所以不会产生新的图像。
相应的,连接模块10在Java虚拟机关闭或暂停时,关闭显示层与存储软 件图像的第 一显示緩冲器之间的通路,开启显示层与存储用户图形界面的第二 显示緩冲器之间的通路。
处理模块20,用于在收到来自Java虚拟机的图像后,将该图像存储到第 一显示緩冲器中,通过显示层显示该图像。
其中,处理模块20在收到来自Java虛拟机的图像后,还可以判断收到的 图像是否是局部图像(即是否不能在整个屏幕上显示),如果是,则根据局部 图像参数,将局部图像覆盖到第一显示緩沖器中的图像的对应区域;否则,将 收到的图像替换第 一显示緩冲器中的图像。
如果第 一显示緩冲器中没有图像,则将收到的图像直接存储到第 一显示緩 沖器中。
局部图像参数包括图像在显示区域(即屏幕)的位置和图像的尺寸。
在显示局部图像时,传统的显示方法是在有局部图像时,需要在Java虚拟 机中将整个图像和局部图像进行整合,然后再发给移植层,这样无疑增加了图 像的容量,导致效率降低。
而本发明实施例只需要发送局部图像,并且在第一显示緩冲器中完成整 合,相比于传统的方式加快了处理速度,提高了效率,节省了容量,进一步提 高了屏幕显示的流畅度。
其中,由于第一显示緩冲器緩存的图像数据需要跟自身所支持的格式相 同,所以在緩存图像之前还需要查看图像的格式和第一显示緩冲器的格式是否 相同,则本发明实施例显示Java软件的图像的装置还可以进一步包括转换模 块30。
转换模块30,用于在处理模块20收到来自Java虚拟机的图像后,将该图
像存储到第 一显示緩冲器之前,判断第 一显示緩沖器的存储格式与收到的图像
的格式是否相同,如果相同,不做转换处理;如果不相同,则根据预先设定的 转换方式,将收到的图像的格式转换为与存储格式相同的格式,比如图像格 式为RGB,而第一显示緩存器支持的格式为YUV,这是需要将RGB格式转换 为YUV格式。
预先设定的转换方式包括
浮点运算方式、整型运算方式和查找预先建立的图像转换列表方式中的一种。
需要说明的是,本实施例并不局限于上述三种转换方式,任何可以将图像 的格式进行转换的方式都适用本实施例。
在具体实施过程中,本发明实施例显示Java软件的图像的装置可以置于移 植层,如图1B所示,移植层处于Java虛拟机和嵌入式操作系统之间,Java虛 拟机的信息必须通过移植层专递给嵌入式操作系统,并通过嵌入式操作系统进 行操作,比如显示层就属于嵌入式操作系统,而硬件平台是将硬件设备与嵌 入式操作系统相连,通过硬件设备实现各种功能。
如图2所示,本发明实施例显示Java软件的图像的方法包括下列步骤
步骤200、移植层在Java虚拟机启动时,开启显示层与存储Java软件运行 时产生的图像的第一显示緩冲器之间的通路,关闭显示层与存储用户图形界面 的第二显示緩沖器之间的通路。
在具体实施过程中,移植层在接收到开启信号后启动Java虚拟机。开启信 号是由用户点击开启某个Java软件的选项后产生的。
当用户点击关闭某个Java软件的选项后,会产生关闭信号,移植层接收到 关闭信号后,会关闭Java虚拟机;
或者在Java软件运行时,有某个进程需要启动,(比如有短信或电话,或 者闹钟提示等)这时移植层需要查看需要启动的进程和Java软件的优先级,如 果需要启动的进程的优先级较高,则移植层会暂停Java虚拟机。
由于Java虚拟积p陂关闭或暂停,所以不会产生新的图《象。
相应的,移植层在Java虚拟机关闭或暂停时,关闭显示层与存储软件图像
的第一显示緩沖器之间的通路,开启显示层与存储用户图形界面的第二显示緩
沖器之间的通路。
步骤201、移植层在收到来自Java虚拟机的图像后,将该图像存储到第一 显示緩沖器中,通过显示层显示该图像。
显示层则通过自身与存储Java软件运行时产生的图像的第一显示緩沖器 之间的通路,将第一显示緩冲器中的图像进行显示。
其中,步骤201中在收到来自Java虚拟机的图像后,还可以判断收到的图 像是否是局部图像(即是否不能在整个屏幕上显示),如果是,则根据局部图 像参数,将局部图像覆盖到第一显示緩冲器中的图像的对应区域;否则,将收 到的图像替换第 一显示緩冲器中的图像。
如果第一显示緩沖器中没有图像,则将收到的图像直接存储到第一显示緩 冲器中。
局部图像参数包括图像在显示区域(即屏幕)的位置和图像的尺寸。
在显示局部图像时,传统的显示方法是在有局部图像时,需要再Java虚拟 机中将整个图像和局部图像进行整合,然后再发给移植层,这样无疑增加了图 像的容量,导致效率降低。
而本发明实施例只需要发送局部图像,并且在第一显示緩冲器中完成整 合,相比于传统的方式加快了处理速度,提高了效率,节省了容量,进一步提 高了屏幕显示的流畅度。
其中,由于第 一显示緩冲器緩存的图像数据需要跟自身所支持的格式相 同,所以在緩存图像之前还需要查看图像的格式和第一显示緩冲器的格式是否 相同,则步骤201中,在收到来自Java虚拟机的图像后,将该图像存储到第一 显示緩沖器之前还可以进一步包括
判断第一显示緩冲器的存储格式与收到的图像的格式是否相同,如果相
同,不做转换处理;如果不相同,则根据预先设定的转换方式,将收到的图像 的格式转换为与存储格式相同的格式,比如图像格式为RGB,而第一显示緩 存器支持的格式为YUV,这是需要将RGB格式转换为YUV格式。 预先设定的转换方式包括
浮点运算方式、整型运算方式和查找预先建立的图像转换列表方式中的一种。
需要说明的是,本实施例并不局限于上述三种转换方式,任何可以将图像 的格式进行转换的方式都适用本实施例。
如果釆用查找预先建立的图像转换列表方式进行转换,则具体步骤参见图3。
如图3所示,本发明实施例采用查表方法转换图像格式的方法包括下列步

步骤300、移植层在收到来自Java虚拟机的图像后,判断第一显示緩沖器 的存储格式与收到的图像的格式是否相同,如果是,则跳出流程;否则,执行 步骤301。
步骤301、移植层判断是否是第一次进行图像显示操作(即第一显示緩存 器中是否有图像),如果是,则执行步骤302;否则,执行步骤303。
步骤302、移植层调用转换表初始化程序,生成图像转换列表,并执行步 骤303。
步骤303、移植层用图像转换列表将收到的图像转换为与第一显示緩存器 格式相同的格式。
其中,还有一种较佳的方式是存储图像转换列表,这样可以不用每次都判 断是否是第一次进行写屏操作(即不用执行步骤301 ),直接用存储的图像转换 列表进行转换。
本领域的技术人员应该明白,上述的本发明的各才莫块或各步骤可以用通用 的计算装置来实现,它们可以集中在单个的计算装置上,可选地,它们可以用
计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计 算装置来执行。这样,本发明不限制于任何特定的硬件和软件结合。
从上述实施例中可以看出本发明实施例在Java虚拟机启动时,开启显示 层与存储Java软件运行时产生的图像的第 一显示緩冲器之间的通路,关闭显示 层与存储用户图形界面的第二显示緩沖器之间的通路;在收到来自Java虚拟机 的图像后,将该图像存储到所述第一显示緩冲器中,通过显示层显示该图像。 由于将图像用户界面和Java软件产生的图像分开存储在不同的显示緩冲器中, 从而在刷新屏幕时不需要发送刷新请求,可以直接显示,加快了图像显示的时 间,提高了用户体验,对于需要快速刷新屏幕的Java软件才是供了更好的显示效 果。
明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及 其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1、一种显示Java软件运行时产生的图像的方法,其特征在于,该方法包括在Java虚拟机启动时,开启显示层与存储Java软件运行时产生的图像的第一显示缓冲器之间的通路,关闭显示层与存储用户图形界面的第二显示缓冲器之间的通路;在收到来自Java虚拟机的图像后,将该图像存储到所述第一显示缓冲器中,通过显示层显示该图像。
2、 如权利要求l所述的方法,其特征在于,所述在收到来自Java虛拟机 的图像后,将该图像存储到所述第 一显示緩冲器之前还包括在所述第一显示緩沖器的存储格式与收到的图像的格式不同时,根据预先 设定的转换方式,将收到的图像的格式转换为与存储格式相同的格式。
3、 如权利要求2所述的方法,其特征在于,所述预先设定的转换方式包括浮点运算方式、整型运算方式和查找预先建立的图像转换列表方式中的一种。
4、 如权利要求1所述的方法,其特征在于,所述将该图像存储到所述第 一显示緩沖器中包括将收到的图像替换所述第 一显示緩沖器中的图像。
5、 如权利要求1或4所述的方法,其特征在于,所述将该图像存储到所 述第一显示緩冲器中包括在来自Java虚拟机的图像是局部图像时,根据局部图像参数,将局部图像 覆盖到所述第 一显示緩冲器中的图像的对应区域。
6、 一种显示Java软件运行时产生的图像的装置,其特征在于,该装置包括连接模块,用于在Java虛拟机启动时,开启显示层与存储Java软件运行 时产生的图像的第一显示緩沖器之间的通路,关闭显示层与存储用户图形界面 的第二显示緩冲器之间的通路;处理模块,用于在收到来自Java虚拟机的图像后,将该图像存储到所述第 一显示緩冲器中,通过显示层显示该图像。
7、 如权利要求6所述的装置,其特征在于,该装置还包括 转换模块,用于在所述处理模块收到来自Java虚拟机的图像后,将该图像存储到所述第 一显示緩沖器之前,在所述第 一显示緩冲器的存储格式与收到的 图像的格式不同时,根据预先设定的转换方式,将收到的图像的格式转换为与 存储格式相同的格式。
8、 如权利要求7所述的装置,其特征在于,所述预先设定的转换方式包括浮点运算方式、整型运算方式和查找预先建立的图像转换列表方式中的一种。
9、 如权利要求6所述的装置,其特征在于,所述处理模块用于 将收到的图像替换所述第 一显示緩沖器中的图像。
10、 如权利要求6或9所述的装置,其特征在于,所述处理模块用于 在来自Java虚拟机的图像是局部图像时,根据局部图像参数,将局部图像覆盖到所述第 一显示緩冲器中的图像的对应区域。
全文摘要
本发明涉及嵌入式技术领域,特别涉及一种显示Java软件运行时产生的图像的方法和装置,用以解决现有技术中存在的显示Java软件的方式,在刷新屏幕时需要发送刷新请求到队列,并等待处理刷新请求后才能显示,从而延迟图像显示时间的问题。本发明实施例的方法包括在Java虚拟机启动时,开启显示层与存储Java软件运行时产生的图像的第一显示缓冲器之间的通路,关闭显示层与存储用户图形界面的第二显示缓冲器之间的通路;在收到来自Java虚拟机的图像后,将该图像存储到所述第一显示缓冲器中,通过显示层显示该图像。采用本发明实施例的方法能够加快图像显示的时间,对于需要快速刷新屏幕的Java软件提供更好的显示效果。
文档编号G09G5/36GK101339497SQ20081014754
公开日2009年1月7日 申请日期2008年8月28日 优先权日2008年8月28日
发明者张向军 申请人:青岛海信移动通信技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1