CN106919436B - Dalvik虚拟机实现多任务的方法、装置及虚拟机 - Google Patents
Dalvik虚拟机实现多任务的方法、装置及虚拟机 Download PDFInfo
- Publication number
- CN106919436B CN106919436B CN201510993806.XA CN201510993806A CN106919436B CN 106919436 B CN106919436 B CN 106919436B CN 201510993806 A CN201510993806 A CN 201510993806A CN 106919436 B CN106919436 B CN 106919436B
- Authority
- CN
- China
- Prior art keywords
- java application
- running
- application program
- virtual machine
- loading
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了Dalvik虚拟机实现多任务的方法、装置及虚拟机,其中,Dalvik虚拟机运行于单任务操作系统上,方法包括:监测当前处于运行状态的第一Java应用程序的运行时间;当第一Java应用程序的运行时间达到预设时间时,中断第一Java应用程序,并存储第一Java应用程序运行中断时的当前运行数据;加载当前处于未运行状态的第二Java应用程序,并在第二Java应用程序的运行时间达到预设时间时,中断第二Java应用程序,存储第二Java应用程序运行中断时的当前运行数据;加载第一Java应用程序运行中断时的当前运行数据。本发明使得在单任务实时操作系统上能够实现Java应用程序的多任务运行。
Description
技术领域
本发明涉及通信控制技术领域,尤其涉及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应用程序运行中断时的当前运行数据;
加载当前处于未运行状态的第二Java应用程序,并在所述第二Java应用程序的运行时间达到所述预设时间时,中断所述第二Java应用程序,存储所述第二Java应用程序运行中断时的当前运行数据;
加载第一Java应用程序运行中断时的当前运行数据。
可选的,在所述监测当前处于运行状态的第一Java应用程序的运行时间之前,所述方法还包括:将所述第一Java应用程序加载至Davlik虚拟机中。
可选的,在所述当所述第一Java应用程序的运行时间达到预设时间时,中断所述第一Java应用程序,并存储所述第一Java应用程序运行中断时的当前运行数据中,存储所述第一Java应用程序运行中断时的当前运行数据具体为:将所述第一Java应用程序运行中断时的当前寄存器中的当前运行数据存储至堆栈中。
可选的,所述加载当前处于未运行状态的第二Java应用程序,并在所述第二Java应用程序的运行时间达到所述预设时间时,中断所述第二Java应用程序,存储所述第二Java应用程序运行中断时的当前运行数据之后,所述方法还包括:依次加载当前处于未运行状态的其他Java应用程序,并在每一个Java应用程序的运行时间达到所述预设时间时,中断所述Java应用程序,并存储所述Java应用程序运行中断时的当前运行数据;当所述当前处于未运行状态的其他Java应用程序加载完毕,且存储其他Java应用程序中最后一个Java应用程序运行中断时的当前运行数据时,进入所述加载第一Java应用程序运行中断时的当前运行数据的步骤。
依据本发明的另一个方面,本发明还提供了一种Dalvik虚拟机实现多任务的装置,Dalvik虚拟机运行于单任务操作系统上,所述装置包括:
监测模块,用于监测当前处于运行状态的第一Java应用程序的运行时间;
存储模块,用于当所述第一Java应用程序的运行时间达到预设时间时,中断所述第一Java应用程序,并存储所述第一Java应用程序运行中断时的当前运行数据;
第一加载模块,用于加载当前处于未运行状态的第二Java应用程序,并在所述第二Java应用程序的运行时间达到所述预设时间时,中断所述第二Java应用程序,存储所述第二Java应用程序运行中断时的当前运行数据;
第二加载模块,用于加载第一Java应用程序运行中断时的当前运行数据。
可选的,所述装置还包括第三加载模块,用于将所述第一Java应用程序加载至Davlik虚拟机中。
可选的,所述存储模块具体用于,将所述第一Java应用程序运行中断时的当前寄存器中的当前运行数据存储至堆栈中。
可选的,所述装置还包括第四加载模块,用于依次加载当前处于未运行状态的其他Java应用程序,并在每一个Java应用程序的运行时间达到所述预设时间时,中断所述Java应用程序,并存储所述Java应用程序运行中断时的当前运行数据;当所述当前处于未运行状态的其他Java应用程序加载完毕,且存储其他Java应用程序中最后一个Java应用程序运行中断时的当前运行数据时,触发第二加载模块。
依据本发明的另一个方面,本发明还提供了一种虚拟机,所述虚拟机运行于单任务操作系统上,且所述虚拟机包括Dalvik虚拟机实现多任务的装置。
本发明的有益效果是:
本发明提供的Dalvik虚拟机实现多任务的方法,Dalvik虚拟机运行于单任务操作系统上,首先监测当前处于运行状态的第一Java应用程序的运行时间,当第一Java应用程序的运行时间达到预设时间时,中断第一Java应用程序,并存储第一Java应用程序运行中断时的当前运行数据,然后加载当前处于未运行状态的第二Java应用程序,并当第二Java应用程序的运行时间达到预设时间时,中断第二Java应用程序,存储第二Java应用程序运行中断时的当前运行数据,最后加载第一Java应用程序运行中断时的当前运行数据。本发明通过轮转加载Java应用程序,解决了现有的运行有Dalvik虚拟机的单任务操作系统只能每次执行一个任务的问题,使得单任务操作系统也能够同时执行Java应用程序的多个任务,增加了硬件资源的利用率。
附图说明
图1表示本发明的第一实施例中Dalvik虚拟机实现多任务的方法的步骤流程图;
图2表示本发明的第一实施例中加载Java应用程序的流程图;
图3表示本发明的第二实施例中Davlik虚拟机实现多任务的装置的结构框图;
图4表示运行于单任务操作系统上的虚拟机的架构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
第一实施例:
如图1所示,为本发明的第一实施例中Dalvik虚拟机实现多任务的方法的步骤流程图,该方法包括:
步骤101,监测当前处于运行状态的第一Java应用程序的运行时间。
在本步骤中,具体的,在监测当前处于运行状态的第一Java应用程序的运行时间前,首先将未处于运行状态的第一Java应用程序加载至Dalvik虚拟机中。
步骤102,当第一Java应用程序的运行时间达到预设时间时,中断第一Java应用程序,并存储第一Java应用程序运行中断时的当前运行数据。
在本步骤中,具体的,当监测到第一Java应用程序的运行时间达到预设时间时,中断第一Java应用程序,并存储第一Java应用程序运行中断时的当前运行数据。具体的,在存储第一Java应用程序运行中断时的当前运行数据时,可以将第一Java应用程序运行中断时的当前寄存器中的当前运行数据存储至堆栈中。
步骤103,加载第二Java应用程序,并在第二Java应用程序的运行时间达到预设时间时,中断第二Java应用程序,存储第二Java应用程序运行中断时的当前运行数据。
在本步骤中,具体的,当存储第一Java应用程序运行中断时的当前运行数据之后,加载未处于运行状态的第二Java应用程序,并在第二Java应用程序的运行时间达到预设时间时,中断第二Java应用程序,存储第二Java应用程序运行中断时的当前运行数据,具体的,第二Java应用程序运行中断时的当前寄存器中的当前运行数据同样存储在堆栈中。
另外,当还有其他的处于未运行状态的Java应用程序时,在存储第二Java应用程序运行中断时的当前运行数据时,依次加载当前处于未运行状态的其他Java应用程序,并在每一个Java应用程序的运行时间达到预设时间时,中断Java应用程序,并存储Java应用程序运行中断时的当前运行数据,当当前处于未运行状态的其他Java应用程序加载完毕,且存储其他Java应用程序中最后一个Java应用程序运行中断时的当前运行数据时,进入步骤104中的加载第一Java应用程序运行中断时的当前运行数据。
步骤104,加载第一Java应用程序运行中断时的当前运行数据。
在本步骤中,具体的,当当前处于未运行状态的Java应用程序加载完毕后,且存储当前处于未运行状态的Java应用程序中最后一个Java应用程序运行中断时的当前运行数据时,加载第一Java应用程序运行中断时的当前运行数据。具体的,Java应用程序的加载流程如图2所示。从图2中可以看出,多个Java应用程序为轮转加载方式,保证了运行有Dalvik虚拟机的单任务操作系统能够同时执行多个Java应用程序,实现了单任务操作系统的Java应用程序的多任务功能。
本实施例首先监测当前处于运行状态的第一Java应用程序的运行时间,当第一Java应用程序的运行时间达到预设时间时,中断第一Java应用程序,并存储第一Java应用程序运行中断时的当前运行数据,然后加载当前处于未运行状态的第二Java应用程序,并当第二Java应用程序的运行时间达到预设时间时,中断第二Java应用程序,存储第二Java应用程序运行中断时的当前运行数据,最后加载第一Java应用程序运行中断时的当前运行数据。本发明通过轮转加载Java应用程序,解决了现有的运行有Dalvik虚拟机的单任务操作系统只能每次执行一个任务的问题,使得单任务操作系统也能够同时执行Java应用程序的多个任务,增加了硬件资源的利用率。
第二实施例:
如图3所示,为本发明的第二实施例中Dalvik虚拟机实现多任务的装置的结构框图,Dalvik虚拟机运行于单任务操作系统上,装置包括:
监测模块201,用于监测当前处于运行状态的第一Java应用程序的运行时间;
存储模块202,用于当第一Java应用程序的运行时间达到预设时间时,中断第一Java应用程序,并存储第一Java应用程序运行中断时的当前运行数据;
第一加载模块203,用于加载当前处于未运行状态的第二Java应用程序,并在第二Java应用程序的运行时间达到预设时间时,中断第二Java应用程序,存储第二Java应用程序运行中断时的当前运行数据;
第二加载模块204,用于加载第一Java应用程序运行中断时的当前运行数据。
可选的,装置还包括第三加载模块,用于将第一Java应用程序加载至Davlik虚拟机中。
可选的,存储模块202具体用于,将第一Java应用程序运行中断时的当前寄存器中的当前运行数据存储至堆栈中。
可选的,装置还包括第四加载模块,用于依次加载当前处于未运行状态的其他Java应用程序,并在每一个Java应用程序的运行时间达到预设时间时,中断Java应用程序,并存储Java应用程序运行中断时的当前运行数据;当当前处于未运行状态的其他Java应用程序加载完毕,且存储其他Java应用程序中最后一个Java应用程序运行中断时的当前运行数据时,触发第二加载模块204。
此外,本发明还提供了一种虚拟机,虚拟机运行于单任务操作系统上,且虚拟机包括Dalvik虚拟机实现多任务的装置。
具体的,如图4所示,为运行于单任务操作系统上的虚拟机的架构示意图。
在图4中,虚拟机中的核心库包括Dalvik虚拟机实现多任务的装置、物联网扩展Java驱动模型、J2ME兼容性模块、Java动态加载模块、应用程序管理系统以及Java语音基础库。其中,实现多任务的装置包括图3中的各个模块;物联网扩展Java驱动模型用于封装Dalvik虚拟机对应的规范定义的硬件外设接口,如I2C、SPI等;Java动态加载模块可以实现Java类的动态加载;应用程序管理系统能够支持本地和远程的应用程序管理。
虚拟机的内核包括内存管理模块、对象管理模块、Java本地接口、编译器、解释器、和自回归条件异方差Arch模块。其中,内存管理模块至少包括Dalvik虚拟机内核运行的内存管理、垃圾回收机制以及内存映射功能;对象管理模块用于实现Java应用程序的类管理;Java本地接口用于实现Java应用程序调用C函数以及C应用程序调用Java函数;编码器用于对Java语言进行编译;解释器用于解释编译后的Java字节码;Arch模块用于通过汇编实现需高效执行的函数。
虚拟机的第三方库包括SQL数据库、安全模块、压缩库和多语音支持。其中,SQL数据库用于提供SQL数据库支持;安全模块用于提供基础的安全算法;压缩库用于实现文件的解压缩功能;多语言支持用于支持多种语言及语言管理。
虚拟机的移植层包括标准程序库、驱动封装模块、网络传输模块以及系统功能封装模块。其中,标准程序库用于为基础语音接口及Dalvik虚拟机底层的芯片平台接口进行封装;驱动封装模块用于对Dalvik虚拟机规范定义的各类设备接口进行封装;网络传输模块用于封装超文本传输协议HTTP;系统功能封装模块用于实现对Dalvik虚拟机底层平台的接口的重新封装。
本实施例在现有的Dalvik虚拟机上增加实现多任务的装置,使得运行有虚拟机的单任务操作系统能够同时执行Java应用程序的多个任务,增加了硬件资源的利用率。
以上所述的是本发明的优选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本发明所述的原理前提下还可以作出若干改进和润饰,这些改进和润饰也在本发明的保护范围内。
Claims (7)
1.一种Dalvik虚拟机实现多任务的方法,其特征在于,Dalvik虚拟机运行于单任务操作系统上,所述方法包括:
监测当前处于运行状态的第一Java应用程序的运行时间;
当所述第一Java应用程序的运行时间达到预设时间时,中断所述第一Java应用程序,并存储所述第一Java应用程序运行中断时的当前运行数据;
加载当前处于未运行状态的第二Java应用程序,并在所述第二Java应用程序的运行时间达到所述预设时间时,中断所述第二Java应用程序,存储所述第二Java应用程序运行中断时的当前运行数据;
依次加载当前处于未运行状态的其他Java应用程序,并在每一个Java应用程序的运行时间达到所述预设时间时,中断所述Java应用程序,并存储所述Java应用程序运行中断时的当前运行数据;
当所述当前处于未运行状态的其他Java应用程序加载完毕,且存储其他Java应用程序中最后一个Java应用程序运行中断时的当前运行数据时,加载第一Java应用程序运行中断时的当前运行数据。
2.根据权利要求1所述的方法,其特征在于,在所述监测当前处于运行状态的第一Java应用程序的运行时间之前,所述方法还包括:
将所述第一Java应用程序加载至Davlik虚拟机中。
3.根据权利要求1所述的方法,其特征在于,在所述当所述第一Java应用程序的运行时间达到预设时间时,中断所述第一Java应用程序,并存储所述第一Java应用程序运行中断时的当前运行数据中,存储所述第一Java应用程序运行中断时的当前运行数据具体为:
将所述第一Java应用程序运行中断时的当前寄存器中的当前运行数据存储至堆栈中。
4.一种Dalvik虚拟机实现多任务的装置,其特征在于,Dalvik虚拟机运行于单任务操作系统上,所述装置包括:
监测模块,用于监测当前处于运行状态的第一Java应用程序的运行时间;
存储模块,用于当所述第一Java应用程序的运行时间达到预设时间时,中断所述第一Java应用程序,并存储所述第一Java应用程序运行中断时的当前运行数据;
第一加载模块,用于加载当前处于未运行状态的第二Java应用程序,并在所述第二Java应用程序的运行时间达到所述预设时间时,中断所述第二Java应用程序,存储所述第二Java应用程序运行中断时的当前运行数据;
第四加载模块,用于依次加载当前处于未运行状态的其他Java应用程序,并在每一个Java应用程序的运行时间达到所述预设时间时,中断所述Java应用程序,并存储所述Java应用程序运行中断时的当前运行数据;当所述当前处于未运行状态的其他Java应用程序加载完毕,且存储其他Java应用程序中最后一个Java应用程序运行中断时的当前运行数据时,触发第二加载模块;
第二加载模块,用于加载第一Java应用程序运行中断时的当前运行数据。
5.根据权利要求4所述的装置,其特征在于,所述装置还包括第三加载模块,用于将所述第一Java应用程序加载至Davlik虚拟机中。
6.根据权利要求4所述的装置,其特征在于,所述存储模块具体用于,将所述第一Java应用程序运行中断时的当前寄存器中的当前运行数据存储至堆栈中。
7.一种虚拟机,其特征在于,所述虚拟机运行于单任务操作系统上,且所虚拟机包括如权利要求4~权利要求6任一项所述的Dalvik虚拟机的实现多任务的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510993806.XA CN106919436B (zh) | 2015-12-25 | 2015-12-25 | Dalvik虚拟机实现多任务的方法、装置及虚拟机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510993806.XA CN106919436B (zh) | 2015-12-25 | 2015-12-25 | Dalvik虚拟机实现多任务的方法、装置及虚拟机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106919436A CN106919436A (zh) | 2017-07-04 |
CN106919436B true CN106919436B (zh) | 2020-03-10 |
Family
ID=59455232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510993806.XA Active CN106919436B (zh) | 2015-12-25 | 2015-12-25 | Dalvik虚拟机实现多任务的方法、装置及虚拟机 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106919436B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110262874B (zh) * | 2019-05-31 | 2023-08-22 | 东信和平科技股份有限公司 | 一种基于java虚拟机的新型物联网多任务操作系统及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101788926A (zh) * | 2009-12-28 | 2010-07-28 | 中兴通讯股份有限公司 | J2me应用前台切换的资源调配方法及装置 |
CN104268473A (zh) * | 2014-09-23 | 2015-01-07 | 龙芯中科技术有限公司 | 应用程序检测方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9460270B2 (en) * | 2011-04-27 | 2016-10-04 | Panasonic Intellectual Property Corporation Of America | Generating child virtual machine to execute authorized application with reduced risk of malware attack |
-
2015
- 2015-12-25 CN CN201510993806.XA patent/CN106919436B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101788926A (zh) * | 2009-12-28 | 2010-07-28 | 中兴通讯股份有限公司 | J2me应用前台切换的资源调配方法及装置 |
CN104268473A (zh) * | 2014-09-23 | 2015-01-07 | 龙芯中科技术有限公司 | 应用程序检测方法和装置 |
Non-Patent Citations (1)
Title |
---|
"多任务虚拟机(MVM)系统架构的研究与应用";易立;《中国优秀硕士学位论文全文数据库 信息科技I辑》;20111215(第12期);摘要、第1.4、2.2.3、2.4节 * |
Also Published As
Publication number | Publication date |
---|---|
CN106919436A (zh) | 2017-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2768752C (en) | Terminal device of non-android platform for executing android applications, and computer readable recording medium for storing program of executing android applications on non-android platform | |
JP6571277B2 (ja) | 端末アプリケーションをロードする方法及び装置 | |
CN110825488A (zh) | 一种业务处理方法、装置及电子设备和存储介质 | |
CN105242962A (zh) | 基于异构众核的轻量级线程快速触发方法 | |
KR101015573B1 (ko) | Rtos 기반의 안드로이드 어플리케이션 실행 장치 | |
US11016769B1 (en) | Method and apparatus for processing information | |
US10417011B2 (en) | Thread-agile execution of dynamic programming language programs | |
US20240264852A1 (en) | Robotic process automation system and method across operating systems | |
CN103595770A (zh) | Sdk实现文件下载的方法与装置 | |
CN111158690A (zh) | 桌面应用框架、构建方法、桌面应用运行方法及存储介质 | |
CN111381816A (zh) | 应用程序的获取方法、装置、设备及存储介质 | |
CN112256421A (zh) | 通信处理方法、装置、存储介质及电子设备 | |
CN103530165B (zh) | 一种应用于物联网行业的java解决方案 | |
CN106919436B (zh) | Dalvik虚拟机实现多任务的方法、装置及虚拟机 | |
CN103150161A (zh) | 基于MapReduce 计算模型的任务封装方法及装置 | |
CN111596962A (zh) | 一种基于高速协议通道的实时微内核系统及其初始化方法 | |
CN109213591B (zh) | 协程运行栈的分配方法和装置 | |
CN111506393A (zh) | 一种基于arm的虚拟化装置及其使用方法 | |
US20150363241A1 (en) | Method and apparatus to migrate stacks for thread execution | |
CN114020414B (zh) | Android系统与底层Linux共生方法、装置、电子设备及存储介质 | |
CN115599530A (zh) | 一种基于Linux内核的硬实时优化改造方法 | |
CN115599507A (zh) | 数据处理方法、执行工作站、电子设备和存储介质 | |
CN112035097A (zh) | 基于银河锐华操作系统的c++适配层 | |
CN113778458B (zh) | 数据处理器功能开发系统、方法及计算设备 | |
US8572561B1 (en) | Multiple java ME MIDlet execution in single-instance CLDC JVM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |