CN112068928A - 一种基于重定向的虚拟机数据存储方法及系统 - Google Patents
一种基于重定向的虚拟机数据存储方法及系统 Download PDFInfo
- Publication number
- CN112068928A CN112068928A CN202010806452.4A CN202010806452A CN112068928A CN 112068928 A CN112068928 A CN 112068928A CN 202010806452 A CN202010806452 A CN 202010806452A CN 112068928 A CN112068928 A CN 112068928A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- user data
- configuration information
- storage area
- storage
- 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.)
- Granted
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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- 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/45579—I/O management, e.g. providing access to device drivers or storage
Abstract
本发明提供了虚拟机技术领域的一种基于重定向的虚拟机数据存储方法及系统,方法包括如下步骤:步骤S10、在服务器上创建一用于持久化存储数据的存储区;步骤S20、池模式虚拟机开机后,配置需要持久化存储的用户数据的配置信息;步骤S30、池模式虚拟机将所述配置信息以及用户数据存储至存储区;步骤S40、池模式虚拟机重启后,基于所述配置信息将用户数据从存储区重定向至池模式虚拟机的系统盘,完成池模式虚拟机的用户数据的持久化存储。本发明的优点在于:实现对池模式虚拟机中用户指定数据进行持久化存储,进而极大的提升了用户体验。
Description
技术领域
本发明涉及虚拟机技术领域,特别指一种基于重定向的虚拟机数据存储方法及系统。
背景技术
虚拟机是由虚拟CPU、虚拟网络、虚拟磁盘以及虚拟内存等虚拟设备构成。在主流的KVM、XenServer、Esxi等虚拟化平台中,虚拟机支持配置系统重启后系统盘是否恢复到初始状态,对于重启需要还原系统盘到初始状态的虚拟机叫做池模式虚拟机。
池模式虚拟机解决了操作系统长期运行产生大量的临时垃圾文件,导致操作系统运行缓慢的问题,保障良好的用户体验。但是,系统盘运行生成的临时文件并不是都是垃圾文件,比如用户安装的软件、用户新建的工作文档等,这些数据需要重启后还能持久保存,不能丢失,而传统上并不存在池模式虚拟机数据持久存储的方法。
因此,如何提供一种基于重定向的虚拟机数据存储方法及系统,实现对池模式虚拟机中用户指定数据进行持久化存储,进而提升用户体验,成为一个亟待解决的问题。
发明内容
本发明要解决的技术问题,在于提供一种基于重定向的虚拟机数据存储方法及系统,实现对池模式虚拟机中用户指定数据进行持久化存储,进而提升用户体验。
第一方面,本发明提供了一种基于重定向的虚拟机数据存储方法,包括如下步骤:
步骤S10、在服务器上创建一用于持久化存储数据的存储区;
步骤S20、池模式虚拟机开机后,配置需要持久化存储的用户数据的配置信息;
步骤S30、池模式虚拟机将所述配置信息以及用户数据存储至存储区;
步骤S40、池模式虚拟机重启后,基于所述配置信息将用户数据从存储区重定向至池模式虚拟机的系统盘,完成池模式虚拟机的用户数据的持久化存储。
进一步地,所述步骤S10中,所述存储区存储的数据在池模式虚拟机重启后不会丢失。
进一步地,所述步骤S20中,所述用户数据包括文件或者文件夹;所述配置信息包括文件的文件名以及文件路径,或者文件夹的文件夹名以及文件夹路径。
进一步地,所述步骤S30具体包括:
步骤S31、池模式虚拟机检查所述存储区是否已经存储有相同的配置信息,若是,则进入步骤S32;若否,则将所述配置信息存储至存储区,并进入步骤S32;
步骤S32、池模式虚拟机基于所述配置信息检查存储区是否已经存储有相同的用户数据,若是,则进入步骤S40;若否,则将所述用户数据存储至存储区,并进入步骤S40。
进一步地,所述步骤S40中,所述基于所述配置信息将用户数据从存储区重定向至池模式虚拟机的系统盘具体为:
基于所述配置信息,将所述存储区中对应文件名或者文件夹名的用户数据,通过所述文件路径或者文件夹路径映射到池模式虚拟机的系统盘中。
第二方面,本发明提供了一种基于重定向的虚拟机数据存储系统,包括如下模块:
存储区创建模块,用于在服务器上创建一用于持久化存储数据的存储区;
配置信息配置模块,用于池模式虚拟机开机后,配置需要持久化存储的用户数据的配置信息;
用户数据存储模块,用于池模式虚拟机将所述配置信息以及用户数据存储至存储区;
重定向模块,用于池模式虚拟机重启后,基于所述配置信息将用户数据从存储区重定向至池模式虚拟机的系统盘,完成池模式虚拟机的用户数据的持久化存储。
进一步地,所述存储区创建模块中,所述存储区存储的数据在池模式虚拟机重启后不会丢失。
进一步地,所述配置信息配置模块中,所述用户数据包括文件或者文件夹;所述配置信息包括文件的文件名以及文件路径,或者文件夹的文件夹名以及文件夹路径。
进一步地,所述用户数据存储模块具体包括:
配置信息检测存储单元,用于池模式虚拟机检查所述存储区是否已经存储有相同的配置信息,若是,则进入用户数据检测存储单元;若否,则将所述配置信息存储至存储区,并进入用户数据检测存储单元;
用户数据检测存储单元,用于池模式虚拟机基于所述配置信息检查存储区是否已经存储有相同的用户数据,若是,则进入重定向模块;若否,则将所述用户数据存储至存储区,并进入重定向模块。
进一步地,所述重定向模块中,所述基于所述配置信息将用户数据从存储区重定向至池模式虚拟机的系统盘具体为:
基于所述配置信息,将所述存储区中对应文件名或者文件夹名的用户数据,通过所述文件路径或者文件夹路径映射到池模式虚拟机的系统盘中。
本发明的优点在于:
通过在服务器创建一数据在池模式虚拟机重启后不会丢失的存储区,在配置需要持久化存储的用户数据的配置信息后,将用户数据以及配置信息存储至存储区中,当池模式虚拟机重启后,基于配置信息将用户数据重定向至池模式虚拟机的系统盘中对应的位置,最终实现对池模式虚拟机中用户指定数据进行持久化存储,在保障池模式虚拟机运行流畅性的同时,避免一些重要的数据在池模式虚拟机重启后被清除,进而极大的提升了用户体验。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1是本发明一种基于重定向的虚拟机数据存储方法的流程图。
图2是本发明一种基于重定向的虚拟机数据存储系统的结构示意图。
具体实施方式
本申请实施例中的技术方案,总体思路如下:在池模式虚拟机中,把系统盘中需要持久化存储的用户数据(用户安装的软件、配置等文件或者文件夹)存储在独立的存储区;在虚拟机使用到这些用户数据时,直接利用配置信息从存储区重定向至池模式虚拟机的系统盘,避免池模式虚拟机关机或者重启后用户数据被清除。
请参照图1至图2所示,本发明一种基于重定向的虚拟机数据存储方法的较佳实施例,包括如下步骤:
步骤S10、在服务器上创建一用于持久化存储数据的存储区;所述存储区本质上是一个虚拟磁盘文件,可以根据要保存的数据量,动态扩展空间;
步骤S20、池模式虚拟机开机后,配置需要持久化存储的用户数据的配置信息;所述配置信息可依据用户的实际需求进行动态扩展;所述配置信息相当于用户数据的清单;
步骤S30、池模式虚拟机将所述配置信息以及用户数据存储至存储区;
步骤S40、池模式虚拟机重启后,或者关机再开机,基于所述配置信息将用户数据从存储区重定向至池模式虚拟机的系统盘,完成池模式虚拟机的用户数据的持久化存储。
所述步骤S10中,所述存储区存储的数据在池模式虚拟机重启后不会丢失。
所述步骤S20中,所述用户数据包括文件或者文件夹;所述配置信息包括文件的文件名以及文件路径,或者文件夹的文件夹名以及文件夹路径。
所述步骤S30具体包括:
步骤S31、池模式虚拟机检查所述存储区是否已经存储有相同的配置信息,若是,则进入步骤S32;若否,则将所述配置信息存储至存储区,并进入步骤S32;
步骤S32、池模式虚拟机基于所述配置信息检查存储区是否已经存储有相同的用户数据,若是,则进入步骤S40;若否,则将所述用户数据存储至存储区,并进入步骤S40。
通过检测所述存储区内是否已经存储有相同的配置信息或者用户数据,若是则不再进行存储,避免了数据的重复存储,减小了池模式虚拟机的开销,保障池模式虚拟机的流畅性。
所述步骤S40中,所述基于所述配置信息将用户数据从存储区重定向至池模式虚拟机的系统盘具体为:
基于所述配置信息,将所述存储区中对应文件名或者文件夹名的用户数据,通过所述文件路径或者文件夹路径映射到池模式虚拟机的系统盘中,即将所述用户数据恢复到原来的位置。
本发明一种基于重定向的虚拟机数据存储系统的较佳实施例,包括如下模块:
存储区创建模块,用于在服务器上创建一用于持久化存储数据的存储区;所述存储区本质上是一个虚拟磁盘文件,可以根据要保存的数据量,动态扩展空间;
配置信息配置模块,用于池模式虚拟机开机后,配置需要持久化存储的用户数据的配置信息;所述配置信息可依据用户的实际需求进行动态扩展;所述配置信息相当于用户数据的清单;
用户数据存储模块,用于池模式虚拟机将所述配置信息以及用户数据存储至存储区;
重定向模块,用于池模式虚拟机重启后,或者关机再开机,基于所述配置信息将用户数据从存储区重定向至池模式虚拟机的系统盘,完成池模式虚拟机的用户数据的持久化存储。
所述存储区创建模块中,所述存储区存储的数据在池模式虚拟机重启后不会丢失。
所述配置信息配置模块中,所述用户数据包括文件或者文件夹;所述配置信息包括文件的文件名以及文件路径,或者文件夹的文件夹名以及文件夹路径。
所述用户数据存储模块具体包括:
配置信息检测存储单元,用于池模式虚拟机检查所述存储区是否已经存储有相同的配置信息,若是,则进入用户数据检测存储单元;若否,则将所述配置信息存储至存储区,并进入用户数据检测存储单元;
用户数据检测存储单元,用于池模式虚拟机基于所述配置信息检查存储区是否已经存储有相同的用户数据,若是,则进入重定向模块;若否,则将所述用户数据存储至存储区,并进入重定向模块。
通过检测所述存储区内是否已经存储有相同的配置信息或者用户数据,若是则不再进行存储,避免了数据的重复存储,减小了池模式虚拟机的开销,保障池模式虚拟机的流畅性。
所述重定向模块中,所述基于所述配置信息将用户数据从存储区重定向至池模式虚拟机的系统盘具体为:
基于所述配置信息,将所述存储区中对应文件名或者文件夹名的用户数据,通过所述文件路径或者文件夹路径映射到池模式虚拟机的系统盘中,即将所述用户数据恢复到原来的位置。
综上所述,本发明的优点在于:
通过在服务器创建一数据在池模式虚拟机重启后不会丢失的存储区,在配置需要持久化存储的用户数据的配置信息后,将用户数据以及配置信息存储至存储区中,当池模式虚拟机重启后,基于配置信息将用户数据重定向至池模式虚拟机的系统盘中对应的位置,最终实现对池模式虚拟机中用户指定数据进行持久化存储,在保障池模式虚拟机运行流畅性的同时,避免一些重要的数据在池模式虚拟机重启后被清除,进而极大的提升了用户体验。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (10)
1.一种基于重定向的虚拟机数据存储方法,其特征在于:包括如下步骤:
步骤S10、在服务器上创建一用于持久化存储数据的存储区;
步骤S20、池模式虚拟机开机后,配置需要持久化存储的用户数据的配置信息;
步骤S30、池模式虚拟机将所述配置信息以及用户数据存储至存储区;
步骤S40、池模式虚拟机重启后,基于所述配置信息将用户数据从存储区重定向至池模式虚拟机的系统盘,完成池模式虚拟机的用户数据的持久化存储。
2.如权利要求1所述的一种基于重定向的虚拟机数据存储方法,其特征在于:所述步骤S10中,所述存储区存储的数据在池模式虚拟机重启后不会丢失。
3.如权利要求1所述的一种基于重定向的虚拟机数据存储方法,其特征在于:所述步骤S20中,所述用户数据包括文件或者文件夹;所述配置信息包括文件的文件名以及文件路径,或者文件夹的文件夹名以及文件夹路径。
4.如权利要求1所述的一种基于重定向的虚拟机数据存储方法,其特征在于:所述步骤S30具体包括:
步骤S31、池模式虚拟机检查所述存储区是否已经存储有相同的配置信息,若是,则进入步骤S32;若否,则将所述配置信息存储至存储区,并进入步骤S32;
步骤S32、池模式虚拟机基于所述配置信息检查存储区是否已经存储有相同的用户数据,若是,则进入步骤S40;若否,则将所述用户数据存储至存储区,并进入步骤S40。
5.如权利要求3所述的一种基于重定向的虚拟机数据存储方法,其特征在于:所述步骤S40中,所述基于所述配置信息将用户数据从存储区重定向至池模式虚拟机的系统盘具体为:
基于所述配置信息,将所述存储区中对应文件名或者文件夹名的用户数据,通过所述文件路径或者文件夹路径映射到池模式虚拟机的系统盘中。
6.一种基于重定向的虚拟机数据存储系统,其特征在于:包括如下模块:
存储区创建模块,用于在服务器上创建一用于持久化存储数据的存储区;
配置信息配置模块,用于池模式虚拟机开机后,配置需要持久化存储的用户数据的配置信息;
用户数据存储模块,用于池模式虚拟机将所述配置信息以及用户数据存储至存储区;
重定向模块,用于池模式虚拟机重启后,基于所述配置信息将用户数据从存储区重定向至池模式虚拟机的系统盘,完成池模式虚拟机的用户数据的持久化存储。
7.如权利要求6所述的一种基于重定向的虚拟机数据存储系统,其特征在于:所述存储区创建模块中,所述存储区存储的数据在池模式虚拟机重启后不会丢失。
8.如权利要求6所述的一种基于重定向的虚拟机数据存储系统,其特征在于:所述配置信息配置模块中,所述用户数据包括文件或者文件夹;所述配置信息包括文件的文件名以及文件路径,或者文件夹的文件夹名以及文件夹路径。
9.如权利要求6所述的一种基于重定向的虚拟机数据存储系统,其特征在于:所述用户数据存储模块具体包括:
配置信息检测存储单元,用于池模式虚拟机检查所述存储区是否已经存储有相同的配置信息,若是,则进入用户数据检测存储单元;若否,则将所述配置信息存储至存储区,并进入用户数据检测存储单元;
用户数据检测存储单元,用于池模式虚拟机基于所述配置信息检查存储区是否已经存储有相同的用户数据,若是,则进入重定向模块;若否,则将所述用户数据存储至存储区,并进入重定向模块。
10.如权利要求8所述的一种基于重定向的虚拟机数据存储系统,其特征在于:所述重定向模块中,所述基于所述配置信息将用户数据从存储区重定向至池模式虚拟机的系统盘具体为:
基于所述配置信息,将所述存储区中对应文件名或者文件夹名的用户数据,通过所述文件路径或者文件夹路径映射到池模式虚拟机的系统盘中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010806452.4A CN112068928B (zh) | 2020-08-12 | 2020-08-12 | 一种基于重定向的虚拟机数据存储方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010806452.4A CN112068928B (zh) | 2020-08-12 | 2020-08-12 | 一种基于重定向的虚拟机数据存储方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112068928A true CN112068928A (zh) | 2020-12-11 |
CN112068928B CN112068928B (zh) | 2023-10-20 |
Family
ID=73661202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010806452.4A Active CN112068928B (zh) | 2020-08-12 | 2020-08-12 | 一种基于重定向的虚拟机数据存储方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112068928B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103034453A (zh) * | 2011-09-30 | 2013-04-10 | 国际商业机器公司 | 管理虚拟机实例中预安装应用的持久数据的方法和装置 |
CN103713937A (zh) * | 2013-12-13 | 2014-04-09 | 广东电网公司信息中心 | 变电站终端系统运行方法 |
CN104461757A (zh) * | 2014-11-03 | 2015-03-25 | 中国联合网络通信集团有限公司 | 一种恢复虚拟机的方法及装置 |
US20160055018A1 (en) * | 2014-08-22 | 2016-02-25 | Netapp Inc. | Virtual machine reboot information persistence into host memory |
CN106104477A (zh) * | 2014-03-24 | 2016-11-09 | 桑迪士克科技有限责任公司 | 用于扩展应用虚拟机的对象存储区的方法和系统 |
-
2020
- 2020-08-12 CN CN202010806452.4A patent/CN112068928B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103034453A (zh) * | 2011-09-30 | 2013-04-10 | 国际商业机器公司 | 管理虚拟机实例中预安装应用的持久数据的方法和装置 |
CN103713937A (zh) * | 2013-12-13 | 2014-04-09 | 广东电网公司信息中心 | 变电站终端系统运行方法 |
CN106104477A (zh) * | 2014-03-24 | 2016-11-09 | 桑迪士克科技有限责任公司 | 用于扩展应用虚拟机的对象存储区的方法和系统 |
US20160055018A1 (en) * | 2014-08-22 | 2016-02-25 | Netapp Inc. | Virtual machine reboot information persistence into host memory |
CN104461757A (zh) * | 2014-11-03 | 2015-03-25 | 中国联合网络通信集团有限公司 | 一种恢复虚拟机的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112068928B (zh) | 2023-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11550675B2 (en) | Remote data replication method and system | |
CN107590272B (zh) | 一种基于Overlay文件系统的操作系统快照实现方法 | |
EP2731013B1 (en) | Backing up method, device, and system for virtual machine | |
JP5772127B2 (ja) | 仮想マシン管理方法、情報処理装置および仮想マシン管理プログラム | |
JP6708929B2 (ja) | ストレージ制御装置、ストレージシステムおよびストレージ制御プログラム | |
CN103970585B (zh) | 创建虚拟机的方法及装置 | |
JP4809040B2 (ja) | ストレージ装置及びスナップショットのリストア方法 | |
JP4832521B2 (ja) | フラッシュメモリメディアにおけるデータ管理方法 | |
US9514138B1 (en) | Using read signature command in file system to backup data | |
EP2840495B1 (en) | Container-based processing method and apparatus | |
US9037541B2 (en) | Metadata for data storage array | |
CN109542682B (zh) | 一种数据备份方法、装置、设备和存储介质 | |
CN102567136A (zh) | 一种计算机系统的备份、还原方法、装置及计算机系统 | |
US9146928B1 (en) | Techniques for storing metadata of a filesystem in persistent memory | |
CN103617097B (zh) | 文件恢复方法及装置 | |
EP1879109A1 (en) | Information processing device, program, and storage medium | |
JP2013520744A (ja) | 最小ブートイメージの生成方法及びその装置 | |
CN103198122A (zh) | 重启内存数据库的方法和装置 | |
CN110162429A (zh) | 系统修复方法、服务器及存储介质 | |
CN103530144A (zh) | 一种从遗留系统生成虚拟机镜像的方法 | |
US11210024B2 (en) | Optimizing read-modify-write operations to a storage device by writing a copy of the write data to a shadow block | |
CN111078359B (zh) | 一种通过目录映射实现虚机即时恢复的方法及系统 | |
JP2000020367A (ja) | 情報記憶方法および情報記憶装置および記録媒体 | |
CN112068928A (zh) | 一种基于重定向的虚拟机数据存储方法及系统 | |
JP4390618B2 (ja) | データベース再編成プログラム、データベース再編成方法、及びデータベース再編成装置 |
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 |