CN115543545B - Jailhouse使用ACPI实现设备隔离的方法 - Google Patents
Jailhouse使用ACPI实现设备隔离的方法 Download PDFInfo
- Publication number
- CN115543545B CN115543545B CN202211486619.9A CN202211486619A CN115543545B CN 115543545 B CN115543545 B CN 115543545B CN 202211486619 A CN202211486619 A CN 202211486619A CN 115543545 B CN115543545 B CN 115543545B
- Authority
- CN
- China
- Prior art keywords
- file
- dsdt
- acpi
- jailhouse
- img
- 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/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及Jailhouse使用ACPI实现设备隔离的方法,采用动态更新ACPI‑DSDT表的方式实现jailhouse的ACPI设备管理下的设备隔离。本发明在ACPI动态更新技术的基础上,通过删除ACPI DSDT表中的特定设备描述部分,使得系统无法识别和初始化特定设备,从而让jailhouse中的虚拟机独立的使用特定设备,达到在ACPI下的Jailhouse设备隔离功能。
Description
技术领域
本发明涉及虚拟机隔离技术领域,具体涉及Jailhouse使用ACPI实现设备隔离的方法。
背景技术
当下嵌入式芯片技术发展迅速,越来越多的嵌入式产品开始使用多核芯片。随着ARM芯片主频提升、芯片制程工艺提高,ARM芯片的性能越来越好,已经完全能够与传统的X86芯片在桌面及服务器领域展开正面竞争。但ARM架构在通常使用devicetree进行设备管理,与传统的X86平台在通用性上有所差距,ARM架构为提高自身竞争力,已经能够兼容X86平台的ACPI设备管理机制。
在工业控制领域,Linux系统市场占有率越来越高,但Linux系统在实时性方面并不具备优势。使用嵌入式虚拟化技术,可以在多核芯片中隔离出特定的CPU、内存区域、外围设备用于专为实时性设计的系统运行,如FreeRTOS或VxWorks,从而提高系统的实时响应能力。
Jailhouse即是一款典型的嵌入式虚拟化管理工具。它能够像qemu一样创建虚拟机,如虚拟FreeRTOS、虚拟Linux。但与qemu不同的是,虚拟机并不是以进程方式存在于宿主机中,而是单独运行在独立的CPU中,不能被打断、不能被调度。Jailhouse虚拟机使用的资源,如外围设备,都是无法与宿主机共享的。
为了让jailhouse虚拟机能够使用外围设备,需要对宿主机的设备进行隔离,但是Jailhouse在进行虚拟化时只能支持devicetree设备管理,并不支持ACPI设备管理,从而使得Jailhouse在应用范围被大大限制。
嵌入式虚拟化管理软件Jailhouse本身只提供了DTB设备管理机制,即只能完成DTB下的设备隔离,并未提供ACPI设备管理机制。当使用工控机或者PC机时,则无法实现设备隔离的隔离功能。
发明内容
为解决已有技术存在的不足,本发明提供了一种Jailhouse使用ACPI实现设备隔离的方法,包括如下步骤:
步骤S1:使用设备ACPI信息导出工具提取当前内核的ACPI表得到acpidump.bin;
步骤S2:提取acpidump.bin文件中的板载设备定义表文件dsdt.dat;
步骤S3:把dsdt.dat文件翻译成可进行文本编辑的dsdt.dsl源码文件;
步骤S4:对dsdt.dsl源码文件进行修改;
步骤S5:把修改后的dsdt.dsl文件编译成可以被linux系统启动时识别的dsdt.aml文件;
步骤S6:把dsdt.aml文件放到根据内核代码中规定的路径创建kernel/firmware/acpi目录下;
步骤S7:把所形成的内核文件夹打包成cpio格式的dsdt.img文件,并把dsdt.img文件与linux系统启动时默认使用的initramfs.img文件合并成一个文件,并重命名为dsdt-new.img;
步骤S8:在系统启动时选择dsdt-new.img,等待系统启动完成后即得到特定设备(如ETH1)隔离的Linux系统。
其中,还包括步骤S9:在系统启动后,使用ipa命令查看,无法找到eth1网卡,证明设备隔离成功。
其中,所述步骤S3中,使用iasl工具把dsdt.dat文件翻译成可进行文本编辑的dsdt.dsl源码文件。
其中,所述步骤S4中,对dsdt.dsl源码文件进行的修改包括注释掉特定设备描述部分、增加文件版本号两部分。
其中,所述步骤S4中,对dsdt.dsl源码文件进行的修改包括:找到ETH1设备描述部分,并且使用注释符号注释掉ETH1描述部分,于此同时修改该文件的版本号,将版本号加1。
本发明在ACPI动态更新技术的基础上,通过删除ACPI DSDT表中的特定设备描述部分,使得系统无法识别和初始化特定设备,从而让jailhouse中的虚拟机独立的使用特定设备,达到在ACPI下的Jailhouse设备隔离功能。
附图说明
图1为本发明的Jailhouse使用ACPI实现设备隔离的方法的实现逻辑图。
具体实施方式
为了对本发明的技术方案及有益效果有更进一步的了解,下面结合附图详细说明本发明的技术方案及其产生的有益效果。
图1为本发明的Jailhouse使用ACPI实现设备隔离的方法的实现逻辑图,本发明采用动态更新ACPI-DSDT表的方式实现jailhouse的ACPI设备管理下的设备隔离:先把存储在设备BIOS内的ACPI信息导出到acpidump.bin文件中,再提取acpidump.bin文件中的板载设备定义表文件,即dsdt.dat。并把dsdt.dat文件翻译成可进行文本编辑的dsdt.dsl源码文件。对dsdt.dsl源码文件进行修改,修改包括注释掉特定设备描述部分(例如ETH1部分)、增加文件版本号两部分。并把修改后的dsdt.dsl文件编译成可以被linux系统启动时识别的dsdt.aml文件,并把dsdt.aml文件放到根据内核代码中规定的路径创建kernel/firmware/acpi目录下,即形成kernel/firmware/acpi/dsdt.aml路径。再把上述kernel文件夹打包成cpio格式的dsdt.img文件,并把dsdt.img文件与linux系统启动时默认使用的initramfs.img文件合并成一个文件,并重命名为dsdt-new.img。在系统启动时选择dsdt-new.img,等待系统启动完成后即得到特定设备(如ETH1)隔离的Linux系统。在当前系统下启动jailhouse虚拟化软件,并使用事先准备好的包含了特定设备(如ETH1)的DTB文件启动Guest Linux系统,等待Guest Linux系统启动完成后,即可看到特定设备(如ETH1)在GuestLinux系统中,为特定设备(如ETH1)配置正确的局域网IP,即可通过ssh或者ping命令完成对Guest Linux系统的访问。
由此,本发明在ACPI动态更新技术的基础上,通过删除ACPI DSDT表中的特定设备描述部分,使得系统无法识别和初始化特定设备,从而让jailhouse中的虚拟机独立的使用特定设备,达到在ACPI下的Jailhouse设备隔离功能。
以ARM架构的实体机安装银河麒麟V10桌面版系统为例,详细的实施步骤如下:
1、安装设备ACPI信息导出工具
Apt install acpidump。
2、使用设备ACPI信息导出工具提取当前内核的ACPI表得到acpidump.bin
acpidump -o acpidump.bin。
3、使用ACPI信息提取工具提取步骤2中得到的acpidump.bin二进制ACPI表得到二进制的板载设备定义表文件dsdt.dat
acpixtract-a acpidump.bin。
4、使用iasl工具对步骤3中得到的dsdt.dat进行解析得到板载设备定义表文件的源码文件dsdt.dsl
iasl-d dsdt.dat。
5、手动编辑步骤4中得到的板载设备定义表文件的源码文件dsdt.dsl,找到ETH1设备描述部分,并且使用注释符号注释掉ETH1描述部分,于此同时修改该文件的版本号,版本号加1即可,把修改后的文件另存为dsdt-new.dsl文件
6、使用iasl创建步骤5中得到的dsdt-new.dsl文件的可以被linux系统识别并执行的汇编文件dsdt-new.aml
iasl-sa dsdt-new.dsl。
7、根据内核源码规定的更新ACPI表的路径,创建kernel/firmware/acpi,并把步骤6中得到的文件dsdt-new.aml放到目录下
mkdir-p kernel/firmware/acpi。
8、使用cpio工具,把步骤7中的kernel目录打包成cpio格式的dsdt.img文件并放到/boot目录
find kernel | cpio-H newc--create > /boot/dsdt.img。
9、把启动时用到的initramfs.img与步骤8生成的dsdt.img两个合并成在一起
cat /boot/initramfs.img >> /boot/dsdt-new.img。
10、重启,并选择步骤9生成的/boot/dsdt-new.img作为新的initramfs启动。
11、启动后,使用ip a命令查看,无法找到eth1网卡,证明设备隔离成功。
12、启动jailhouse,使用带有eth1资源定义的DTB运行linux系统,使用ip a可以看到eth1网卡,并通过此网卡可以对外进行正常的业务通讯。此步骤不属于本发明实现范围,不在此做描述。
本发明中,所涉及到的术语的含义如下:
ACPI:Advanced Configuration and Power Interface缩写。是高级配置与电源管理接口的意思,是微软、英特尔和东芝共同开发的一种工业标准。通常用在X86架构下,如个人PC、高性能服务器、工控机。ACPI是一种硬件资源的定义规范,使用ACPI可以更让操作系统厂商屏蔽底层硬件具体差异,可以让操作系统无需修改即可适配所有的ACPI硬件平台。
acpidump:ACPI相关信息通常存储在设备内部的BIOS芯片中。为了查看设备的ACPI相关信息需要借助专门的工具,即acpidump工具。
该工具能够以二进制的方式读取出ACPI相关信息。使用acpidump-o xxxx命令即可读取ACPI信息并输出到xxxx文件中,但是该文件是人类不可读的文件,需要进一步使用其他工具对该文件进行翻译。例如acpidump-o acpidump.bin,意思为提取当前设备ACPI信息到acpidump.bin文件中。
acpixtract:该工具运行在linux平台,用于从acpidump.bin中提取数据,并以数据文件的形式展现给用户。使用acpixtract-a acpidump.bin,可以自动得到多个文件,分别为dsdt.dat、ssdt.dat、apic.dat、mcfg.dat、gtdt.dat、facp.dat、iort.dat、spcr.dat、vfct.dat。其中dsdt.dat文件存储的信息是板载设备定义表,该文件规定所有的板载设备的内存空间、中断号等信息。ssdt.dsl文件存储的信息是pci设备相关定义。其他文件在该专利中不涉及,暂时不介绍。
dat/dsl/aml:以dat为后缀的文件,它是二进制格式的文件,人类无法直接阅读。以dsl为后缀的文件,它是dat文件通过专用工具翻译后得到的文件,它可以被人类读懂,也可以使用文本编辑器对该文件进行修改。以aml为后缀的文件,它是linux系统可以识别并执行的文件,只有这种文件才能正确加载到系统中。
iasl:该工具运行在linux平台,用于把acpixtract工具输出的人类无法阅读的*.dat文件转换成*.dsl文件,该文件可以被人类阅读,也可以使用文本编辑器对dsl进行修改。使用iasl-d dsdt.dat命令,可以自动把dsdt.dat文件翻译成dsdt.dsl文件。使用iasl-sa dsdt.dsl命令,可以自动把dsdt.dsl文件转换成dsdt.aml汇编文件。
kernel/firmware/acpi目录:该目录是linux内核规定好的,在该路径下的所有aml文件可以在开机启动时被自动加载到系统中。
cpio:cpio是一种linux系统中的文件夹打包格式,类似于windows下的zip、rar。在标准的Linux系统启动时先启动linux内核,即vmlinuz,再加载initrd.img或者initramfs.img,最后挂载真正的根文件系统。而initrd.img和initramfs.img真实的压缩格式即为cpio格式。
dsdt.img:该文件是包含了dsdt-new.aml和正确的aml加载路径即kernel/firmware/acpi的cpio格式的文件,该文件可以用于Linux系统启动时自动更新dsdt-new.aml文件对应的ACPI DSDT相关数据。
initramfs.img:该文件是linux启动时默认使用的文件。
dsdt-new.img:该文件是包含了dsdt.img和initramfs.img文件的可用于linux启动的文件,使用该文件启动时,即可自动完成dsdt-new.aml文件对应的ACPI DSDT相关数据更新。
Devicetree:设备树,是ARM架构下的底层设备和资源的定义规范。ARM架构使用devicetree技术,屏蔽底层设备差异,让操作系统可以无需修改即可适配多种平台。通常嵌入式平台均使用Devicetree的方式定义硬件资源。
DTS:即Device Tree Source,是devicetree的描述文件源码。
DTB:即Device Tree Blob,是编译后的二进制格式的Device Tree描述。
FreeRTOS:是一种体积、代码量非常小的实时操作系统,常用工业控制领域、航天领域等对操作系统响应速度有严格限制的场景。它是开源系统。
VxWorks:是一种体积小、实时响应性能高、工控领域应用广泛的实时操作系统。
qemu:一种可以运行在linux系统上的软件,这个软件可以用来运行其他操作系统,包括linux、windows、VxWorks、FreeRTOS等。它的运行效率很低,功能丰富,是目前linux系统中应用最广泛的虚拟机软件。
Jailhouse:一种可以运行在linux系统上的软件,这个软件可以用来运行其他操作系统,包括linux、windows、VxWorks、FreeRTOS等。它的运行效率比较高、占用资源少,但是功能简陋。
本发明提供的动态更新ACPI DSDT描述表的方法结合Jailhouse,可以使嵌入式虚拟化管理软件Jailhouse在ARM架构下支持ACPI设备管理机制,能够使Jailhouse应用于使用ACPI设备管理机制的工控机、个人PC甚至是高性能服务器中,使Jailhouse的应用领域大大增加。
虽然本发明已利用上述较佳实施例进行说明,然其并非用以限定本发明的保护范围,任何本领域技术人员在不脱离本发明的精神和范围之内,相对上述实施例进行各种变动与修改仍属本发明所保护的范围,因此本发明的保护范围以权利要求书所界定的为准。
Claims (5)
1.Jailhouse使用ACPI实现设备隔离的方法,其特征在于,包括如下步骤:
步骤S1:使用设备ACPI信息导出工具提取当前内核的ACPI表得到acpidump.bin;
步骤S2:提取acpidump.bin文件中的板载设备定义表文件dsdt.dat;
步骤S3:把dsdt.dat文件翻译成可进行文本编辑的dsdt.dsl源码文件;
步骤S4:对dsdt.dsl源码文件进行修改;对dsdt.dsl源码文件进行的修改包括注释掉需隔离设备对应的特定设备描述;
步骤S5:把修改后的dsdt.dsl文件编译成可以被linux系统启动时识别的dsdt.aml文件;
步骤S6:把dsdt.aml文件放到根据内核代码中规定的路径创建kernel/firmware/acpi目录下;
步骤S7:把所形成的内核文件夹打包成cpio格式的dsdt.img文件,并把dsdt.img文件与linux系统启动时默认使用的initramfs.img文件合并成一个文件,并重命名为dsdt-new.img;
步骤S8:在系统启动时选择dsdt-new.img,等待系统启动完成后得到特定设备隔离的Linux系统。
2.如权利要求1所述的Jailhouse使用ACPI实现设备隔离的方法,其特征在于,还包括步骤S9:在系统启动后,使用ipa命令查看,无法找到eth1网卡,证明设备隔离成功。
3.如权利要求1所述的Jailhouse使用ACPI实现设备隔离的方法,其特征在于,所述步骤S3中,使用iasl工具把dsdt.dat文件翻译成可进行文本编辑的dsdt.dsl源码文件。
4.如权利要求1所述的Jailhouse使用ACPI实现设备隔离的方法,其特征在于,所述步骤S4中,对dsdt.dsl源码文件进行的修改还包括对需隔离的特定设备增加文件版本号。
5.如权利要求1所述的Jailhouse使用ACPI实现设备隔离的方法,其特征在于,所述步骤S4中,对dsdt.dsl源码文件进行的修改包括:找到ETH1设备描述部分,并且使用注释符号注释掉ETH1描述部分,于此同时修改该文件的版本号,将版本号加1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211486619.9A CN115543545B (zh) | 2022-11-25 | 2022-11-25 | Jailhouse使用ACPI实现设备隔离的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211486619.9A CN115543545B (zh) | 2022-11-25 | 2022-11-25 | Jailhouse使用ACPI实现设备隔离的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115543545A CN115543545A (zh) | 2022-12-30 |
CN115543545B true CN115543545B (zh) | 2023-03-17 |
Family
ID=84721060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211486619.9A Active CN115543545B (zh) | 2022-11-25 | 2022-11-25 | Jailhouse使用ACPI实现设备隔离的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115543545B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115686889B (zh) * | 2023-01-04 | 2023-03-28 | 麒麟软件有限公司 | Jailhouse基于ACPI使用Ivshmem的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111966423A (zh) * | 2020-07-24 | 2020-11-20 | 苏州浪潮智能科技有限公司 | 一种实现内存操作系统的方法和设备 |
CN113672342A (zh) * | 2021-08-02 | 2021-11-19 | 上海交通大学 | 嵌入式虚拟化系统及构建、测试方法、终端及介质 |
CN114398145A (zh) * | 2021-12-06 | 2022-04-26 | 麒麟软件有限公司 | 基于X86平台的Jailhouse运行non-root Linux的方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770379B (zh) * | 2008-12-31 | 2013-10-02 | 北京联想软件有限公司 | 加载高级配置与电源接口命名空间的方法及计算机系统 |
CN106708596B (zh) * | 2015-11-13 | 2020-02-14 | 华为技术有限公司 | 一种输入输出虚拟化资源的调整方法及处理器 |
CN111198719A (zh) * | 2020-01-07 | 2020-05-26 | 天津飞腾信息技术有限公司 | Arm平台实现acpi的方法、装置、设备及存储介质 |
CN115269057B (zh) * | 2022-09-23 | 2023-01-20 | 麒麟软件有限公司 | 基于设备树的隔离系统生成配置文件的方法 |
-
2022
- 2022-11-25 CN CN202211486619.9A patent/CN115543545B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111966423A (zh) * | 2020-07-24 | 2020-11-20 | 苏州浪潮智能科技有限公司 | 一种实现内存操作系统的方法和设备 |
CN113672342A (zh) * | 2021-08-02 | 2021-11-19 | 上海交通大学 | 嵌入式虚拟化系统及构建、测试方法、终端及介质 |
CN114398145A (zh) * | 2021-12-06 | 2022-04-26 | 麒麟软件有限公司 | 基于X86平台的Jailhouse运行non-root Linux的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115543545A (zh) | 2022-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9311313B2 (en) | System and method for converting a physical disk to a virtual disk | |
US8196138B2 (en) | Method and system for migrating virtual machines between hypervisors | |
US8677345B2 (en) | System for creating virtual application, method for installing virtual application, method for calling native API and method for executing virtual application | |
US10635420B2 (en) | Overriding a migrated method in an updated type | |
CN106406951B (zh) | 一种操作系统的安装方法和装置 | |
CN109426613B (zh) | 在uefi中检索调试数据的方法及其电脑系统 | |
US10268628B2 (en) | Method for extracting BIOS attributes for BIOS management and system therefor | |
CN115543545B (zh) | Jailhouse使用ACPI实现设备隔离的方法 | |
EP3207453B1 (en) | Api versioning independent of product releases | |
US20120246632A1 (en) | Device Flags | |
CN112463662B (zh) | 一种用户态控制i2c设备的方法与终端 | |
US9411603B2 (en) | Chip and starting method thereof | |
WO2017185204A1 (zh) | 一种虚拟机创建方法和装置 | |
US20130205291A1 (en) | Recipe-Based Application Conversion | |
US20130326189A1 (en) | Extensible method and system for storage metadata | |
US20210026648A1 (en) | Method for converting device tree data into acpi data for edge device operating in a network | |
US10616944B2 (en) | Computer system and method thereof for sharing of wireless connection information between UEFI firmware and OS | |
CN115794259B (zh) | 通过acpi生成设备树的方法 | |
CN114756290A (zh) | 一种操作系统安装方法、设备及可读存储介质 | |
CN115686889B (zh) | Jailhouse基于ACPI使用Ivshmem的方法 | |
US11200203B1 (en) | Accessing files stored in a firmware volume from a pre-boot application | |
US7103767B2 (en) | Method and apparatus to support legacy master boot record (MBR) partitions | |
CN110968566A (zh) | 基于迁移工具的国产化应用系统迁移方法 | |
US7240187B2 (en) | Method and apparatus to support legacy master boot record (MBR) partitions | |
KR101624170B1 (ko) | 윈도우즈의 레지스트리를 이기종 운영체제의 ini파일로 변환하는 레지스트리변환방법, 컴퓨터 장치 및 컴퓨터에서 판독가능한 기록매체 |
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 |