The present invention provides a method for Dalvik virtual machine, multi task device and virtual machine, which includes a Dalvik virtual machine running on a single task operating system, method: run time monitoring is currently running the Java application running time; when the first Java application reaches the preset time, the first Java interrupt the application is currently running data and storing the first Java application running interruption; load the current application in second Java is not running, and reached the preset time in the running time of second Java applications, Java interrupt second applications, the current operation data interrupt storage second Java application running current; the first operation data interrupt load Java application runtime. The invention enables the multitask operation of the Java application program on a single task real-time operating system.
【技术实现步骤摘要】
Dalvik虚拟机实现多任务的方法、装置及虚拟机
本专利技术涉及通信控制
,尤其涉及Dalvik虚拟机实现多任务的方法、装置及虚拟机。
技术介绍
当前Java开发平台以Android系统为主流,在智能手机和平板等终端上广泛应用,并且用于Android平台的Dalvik虚拟机可以支持已转换为.dex格式的Java应用程序的运行。dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。Dalvik经过优化,允许在有限的内存中同时运行多个虚拟机的实例,并且每一个Dalvik应用作为一个独立的Linux进程执行。另外,借助Android的Linux内核的多任务机制,可以实现Java应用的多任务处理。但是在一些处理能力和存储能力受限的嵌入式的单任务实时操作系统上运行Java应用程序时,由于单任务实时操作系统每次只能执行一个操作,并且支持Java应用程序运行的Dalvik虚拟机也同样的只能支持一个Java应用程序的执行,使得所有的中央处理器CPU都被这唯一的Java应用程序所占有,造成了硬加资源的浪费。
技术实现思路
为了使得在嵌入式的单任务实时操作系统上能够实现多任务运行,本专利技术提供了Dalvik虚拟机实现多任务的方法、装置及虚拟机。为了实现上述目的,本专利技术提供了一种Dalvik虚拟机实现多任务的方法,Dalvik虚拟机运行于单任务操作系统上,所述方法包括:监测当前处于运行状态的第一Java应用程序的运行时间;当所述第一Java应用程序的运行时间达到预设时间时,中断所述第一Java应用程序,并存储所述第一Java应用程序运行中断时的 ...
【技术保护点】
一种Dalvik虚拟机实现多任务的方法,其特征在于,Dalvik虚拟机运行于单任务操作系统上,所述方法包括:监测当前处于运行状态的第一Java应用程序的运行时间;当所述第一Java应用程序的运行时间达到预设时间时,中断所述第一Java应用程序,并存储所述第一Java应用程序运行中断时的当前运行数据;加载当前处于未运行状态的第二Java应用程序,并在所述第二Java应用程序的运行时间达到所述预设时间时,中断所述第二Java应用程序,存储所述第二Java应用程序运行中断时的当前运行数据;加载第一Java应用程序运行中断时的当前运行数据。
【技术特征摘要】
1.一种Dalvik虚拟机实现多任务的方法,其特征在于,Dalvik虚拟机运行于单任务操作系统上,所述方法包括:监测当前处于运行状态的第一Java应用程序的运行时间;当所述第一Java应用程序的运行时间达到预设时间时,中断所述第一Java应用程序,并存储所述第一Java应用程序运行中断时的当前运行数据;加载当前处于未运行状态的第二Java应用程序,并在所述第二Java应用程序的运行时间达到所述预设时间时,中断所述第二Java应用程序,存储所述第二Java应用程序运行中断时的当前运行数据;加载第一Java应用程序运行中断时的当前运行数据。2.根据权利要求1所述的方法,其特征在于,在所述监测当前处于运行状态的第一Java应用程序的运行时间之前,所述方法还包括:将所述第一Java应用程序加载至Davlik虚拟机中。3.根据权利要求1所述的方法,其特征在于,在所述当所述第一Java应用程序的运行时间达到预设时间时,中断所述第一Java应用程序,并存储所述第一Java应用程序运行中断时的当前运行数据中,存储所述第一Java应用程序运行中断时的当前运行数据具体为:将所述第一Java应用程序运行中断时的当前寄存器中的当前运行数据存储至堆栈中。4.根据权利要求1所述的方法,其特征在于,所述加载当前处于未运行状态的第二Java应用程序,并在所述第二Java应用程序的运行时间达到所述预设时间时,中断所述第二Java应用程序,存储所述第二Java应用程序运行中断时的当前运行数据之后,所述方法还包括:依次加载当前处于未运行状态的其他Java应用程序,并在每一个Java应用程序的运行时间达到所述预设时间时,中断所述Java应用程序,并存储所述Java应用程序运行中断时的当前运行数据;当所述当前处于未运行状态的其他Java应用程序加载完毕,且存储其他Java应用...
【专利技术属性】
技术研发人员:王左彪,余智欣,王红梅,
申请(专利权)人:中国移动通信集团公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。