CN109508312B - 一种pcie外接卡热添加信息的发送方法及相关装置 - Google Patents

一种pcie外接卡热添加信息的发送方法及相关装置 Download PDF

Info

Publication number
CN109508312B
CN109508312B CN201811354572.4A CN201811354572A CN109508312B CN 109508312 B CN109508312 B CN 109508312B CN 201811354572 A CN201811354572 A CN 201811354572A CN 109508312 B CN109508312 B CN 109508312B
Authority
CN
China
Prior art keywords
hot
pcie
file
external card
information
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
Application number
CN201811354572.4A
Other languages
English (en)
Other versions
CN109508312A (zh
Inventor
王晓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201811354572.4A priority Critical patent/CN109508312B/zh
Publication of CN109508312A publication Critical patent/CN109508312A/zh
Application granted granted Critical
Publication of CN109508312B publication Critical patent/CN109508312B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4081Live connection to bus, e.g. hot-plugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请所提供的一种PCIE外接卡热添加信息的发送方法,包括:检测是否存在所述PCIE外接卡的热添加操作;若是,生成热添加操作信息;利用BIOS中ASL文件将所述热添加操作信息发送至BMC。本申请检测到PCIE外接卡的热添加操作后,先生成该操作对应的热添加操作信息,进而直接利用BIOS中ASL文件直接将热添加操作信息发送至BMC,无需使用其他应用程序等,解决了不用的应用程序在不同操作系统下的兼容性问题。本申请还提供一种PCIE外接卡热添加信息的发送系统、一种计算机可读存储介质和一种服务器,具有相同的有益效果。

Description

一种PCIE外接卡热添加信息的发送方法及相关装置
技术领域
本申请涉及服务器领域,特别涉及一种PCIE外接卡热添加信息的发送方法、发送系统、一种计算机可读存储介质和一种服务器。
背景技术
随着计算机技术的发展,对服务器的稳定性可靠性提出的要求越来越高,服务器往往提供PCIE扩展卡热插拔功能,以使得PCIE扩展卡出现问题时,可以在操作系统下添加该PCIE扩展卡然后添加一新PCIE扩展卡,实现不停机在线更换。该动作因是在操作系统运行时做的,称之为PCIE卡热插拔,包括热添加和热添加。
对于服务器管理员,希望能够实时获取和查看服务器上的PCIE卡信息,以便于管理。传统的收集实现方法为服务器启动阶段BIOS对所有PCIE卡扫描,得到PCIE卡的信息,再通过BIOS与BMC的接口如KCS等发送给BMC,用户再通过BMC提供的接口获取服务器上PCIE卡信息。
现有的PCIE卡热插拔实现通常由由操作系统下pcie热插拔驱动程序来完成,然而受系统支持操作系统限制,不同的操作系统需要开发对应操作系统下的应用程序,无法做到统一兼容。
发明内容
本申请的目的是提供一种PCIE外接卡热添加信息的发送方法、发送系统、一种计算机可读存储介质和一种服务器,解决现有的PCIE卡热插拔信息传输的兼容性差的问题。
为解决上述技术问题,本申请提供一种PCIE外接卡热添加信息的发送方法,其特征在于,包括:
当所述PCIE外接卡热添加时,触发操作系统中的SCI;
在所述SCI发生时执行BIOS中的ASL文件;
利用所述ASL文件获取所述PCIE外接卡的热添加操作信息后,将所述热添加操作信息发送至BMC。
其中,在所述SCI发生时执行BIOS中的ASL文件之前,还包括:
修改所述ASL文件,并将修改后的所述ASL文件添加至ACPI TABLE;
相应的,在所述SCI发生时执行BIOS中的ASL文件包括:
在所述SCI发生时从BIOS中的所述ACPI TABLE中执行ASL文件。
其中,将所述热添加操作信息发送至BMC之后,还包括:
所述BMC根据所述热添加操作信息更新PCIE设备信息。
其中,还包括:
利用所述ASL文件检测是否存在所述PCIE外接卡的热添加操作。
本申请还提供一种PCIE外接卡热添加信息的发送系统,包括:
触发模块,用于当所述PCIE外接卡热添加时,触发操作系统中的SCI;
文件执行模块,用于在所述SCI发生时执行BIOS中的ASL文件;
发送模块,用于利用所述ASL文件获取所述PCIE外接卡的热添加操作信息后,将所述热添加操作信息发送至BMC。
其中,所述发送系统还包括:
ASL文件修改模块,用于修改所述ASL文件,并将修改后的所述ASL文件添加至ACPITABLE;
则相应的,所述文件执行模块具体为用于在所述SCI发生时从BIOS中的所述ACPITABLE中执行ASL文件的模块。
其中,还包括:
更新模块,用于根据所述热添加操作信息更新PCIE设备信息。
其中,还包括:
检测模块,用于利用所述ASL文件检测是否存在所述PCIE外接卡的热添加操作。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的发送方法的步骤。
本申请还提供一种服务器,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如上所述的方法的步骤。
本申请所提供的一种PCIE外接卡热添加信息的发送方法,包括:检测是否存在所述PCIE外接卡的热添加操作;若是,生成热添加操作信息;利用BIOS中ASL文件将所述热添加操作信息发送至BMC。本申请检测到PCIE外接卡的热添加操作后,先生成该操作对应的热添加操作信息,进而直接利用BIOS中ASL文件直接将热添加操作信息发送至BMC,无需使用其他应用程序等,解决了不用的应用程序在不同操作系统下的兼容性问题。本申请还提供一种PCIE外接卡热添加信息的发送系统、一种计算机可读存储介质和一种服务器,具有相同的有益效果,此处不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种PCIE外接卡热添加信息的发送方法的流程图;
图2为本申请实施例所提供的一种PCIE外接卡热添加信息的发送系统结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例所提供的一种PCIE外接卡热添加信息的发送方法的流程图,该发送方法包括:
S101:当所述PCIE外接卡热添加时,触发操作系统中的SCI;
本步骤默认存在检测是否存在PCIE外接卡热添加操作的本步骤。可以理解的是,PCIE外接卡的热添加操作是SCI(System Control Interrupt,一种中断,操作系统在该中断产生后调用BIOS提供的相关接口)的触发条件,即必须检测到热添加操作后方可触发SCI。在此对于如何检测是否存在PCIE外接卡的热添加操作不作限定。例如,可以扫描系统中PCIE设备的状态并与上一次扫描结果相对比,以判断是否存在新的PCIE外接卡接入;或者在PCIE外接卡热添加时,对于该PCIE外接卡所在的端口的上电信号进行检测等。当然,还可以有其他检测方式,在此不一一举例限定。
S102:在所述SCI发生时执行BIOS中的ASL文件;
SCI是OS(operating system,操作系统)级别的中断,是ACPI定义的,专用于ACPI电源管理的一个IRQ(Interrupt Request,中断请求),需要OS支持。SCI pin触发后,CPU去执行某个放在中断描述表(IDT,Interrupt Descriptor Table,用于关联中断和相对应的处理过程)中的程式,一般都是指向驱动程式(ACPI.sys),ACPI driver会通知相关的驱动程式(ACPI EC Driver),然后跟BIOS取得一个代码,接着OS会去执行相应的ASL文件。
ASL文件指的是ACPI Source Language文件,经过编译器编译过后变成AML,然后由操作系统来执行。现有技术中,均由应用程序获取PCIE外接卡信息并发送至BMC,然而由于不同的操作系统下需要使用不用的应用程序,其兼容性较差。而ASL文件则是BIOS中的文件,并不存在对于不同操作系统不兼容的问题。
S103:利用所述ASL文件获取所述PCIE外接卡的热添加操作信息后,将所述热添加操作信息发送至BMC。
当执行SCI时,由ASL文件读取PCIE外接卡信息等并生成热添加操作信息。
本步骤旨在利用ASL文件获取热添加操作信息后,将热添加操作信息发送至BMC。热添加操作信息的目的是令BMC更新该PCIE设备信息,因此热添加操作信息应包括BMC所需要的信息。在此对于该热添加操作信息的具体内容不作限定,通常可以包括PCIE外接卡信息、端口信息等,其中PCIE外接卡信息为热添加操作信息中必需的信息,其他信息不作限定。
需要说明的是,上文所述的端口信息、PCIE外接卡信息均是已经存在于系统中的信息,而本步骤中的生成热添加操作信息其实指的是获取这些信息并整合。
本步骤中,只需对ASL文件的代码部分作相应修改即可,使其可以将热添加信息发送至BMC。
可以理解的是,本步骤之前还可以存在如下步骤:
修改所述ASL文件,并将修改后的所述ASL文件添加至ACPI TABLE。相应的,在所述SCI发生时从BIOS中的ACPI TABLE中执行ASL文件。
需要说明的是,该步骤旨在对ASL文件进行修改,使得ASL可以获取热添加操作信息,即利用所述ASL文件检测是否存在所述PCIE外接卡的热添加操作。
本申请实施例检测到PCIE外接卡的热添加操作后,先生成该操作对应的热添加操作信息,进而直接利用BIOS中ASL文件直接将热添加操作信息发送至BMC,无需使用其他应用程序等,解决了不用的应用程序在不同操作系统下的兼容性问题。
基于上述实施例,作为优选的实施例,利用BIOS中ASL文件将所述热添加操作信息发送至BMC后,还包括:
BMC根据所述热添加操作信息更新PCIE设备信息。
当BMC接收到热添加操作信息后,即更新自身所存储的PCIE设备信息,保证自身存储的PCIE设备信息为最新信息。BMC可以管理服务器上各种部件的信息,包括CPU、内存、硬盘、风扇等等,BMC更新自身的PCIE设备信息,有利于加强的PCIE设备的管理,保证服务器的正常运行。
基于上述实施例,作为优选的实施例,以下从BIOS的角度对上述实施例在PCIE外接卡热添加操作前及发生热添加操作后的整个过程作更清楚的说明:
对于BIOS而言,可以对其进行设置,例如设置PCIE外接卡热添加时触发SCI。此时可以修改BIOS中的ASL文件,并将ASL文件汇报到ACPI TABLE中,最后启动并进入操作系统。这是因为BIOS在开机过程中会把包在BIOS ROM中的ACPI TABLE载入到RAM(即内存)中,然后OS会寻找ACPI TABLE并加载执行。修改ASL文件的目的是令ASL文件具有PCIE外接卡热添加信息的读取功能,生成热添加操作信息的功能以及将热添加操作信息发送至BMC的功能。当然,更简单的说,ASL文件还可以在获取热添加操作信息中包括的内容后直接发送至BMC,这样只需具备“读取”和“发送”两个功能。
当启动进入操作系统后,此时发生PCIE外接卡热添加操作,由于BIOS已经提前设置PCIE外接卡热添加时触发SCI,因此直接触发SCI。在SCI时执行BIOS中的修改后的ASL文件,实现获取热添加操作信息并发送至BMC。本实施例无需在操作系统中开发任何应用程序,无需考虑应用程序造成的不兼容问题。
下面对本申请实施例提供的一种PCIE外接卡热添加信息的发送系统进行介绍,下文描述的发送系统与上文描述的一种PCIE外接卡热添加信息的发送方法可相互对应参照。
图2为本申请实施例所提供的一种PCIE外接卡热添加信息的发送系统结构示意图,该发送系统包括:
触发模块100,用于当所述PCIE外接卡热添加时,触发操作系统中的SCI;
文件执行模块200,用于在所述SCI发生时执行BIOS中的ASL文件;
发送模块300,用于利用所述ASL文件获取所述PCIE外接卡的热添加操作信息后,将所述热添加操作信息发送至BMC。
基于上述实施例,作为优选的实施例,所述发送系统还可以包括:
ASL文件修改模块,用于修改所述ASL文件,并将修改后的所述ASL文件添加至ACPITABLE;
则相应的,所述文件执行模块200具体为用于在所述SCI发生时从BIOS中的所述ACPI TABLE中执行ASL文件的模块。
基于上述实施例,作为优选的实施例,所述发送系统还可以包括:
更新模块,用于根据所述热添加操作信息更新PCIE设备信息。
基于上述实施例,作为优选的实施例,所述发送系统还可以包括:
检测模块,用于利用所述ASL文件检测是否存在所述PCIE外接卡的热添加操作。
本申请还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的一种PCIE外接卡热添加信息的发送方法的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请还提供了一种服务器,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的一种PCIE外接卡热添加信息的发送方法的步骤。当然所述服务器还可以包括各种网络接口,电源等组件。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的系统而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (8)

1.一种PCIE外接卡热添加信息的发送方法,其特征在于,包括:
当所述PCIE外接卡热添加时,触发操作系统中的SCI;
在所述SCI发生时执行BIOS中的ASL文件;
在利用所述ASL文件获取所述PCIE外接卡的热添加操作信息后,将所述热添加操作信息发送至BMC;
其中,在所述SCI发生时执行BIOS中的ASL文件之前,还包括:
修改所述ASL文件,令ASL文件具有PCIE外接卡热添加信息的读取功能,生成热添加操作信息的功能以及将热添加操作信息发送至BMC的功能,并将修改后的所述ASL文件添加至ACPI TABLE;
相应的,在所述SCI发生时执行BIOS中的ASL文件包括:
在所述SCI发生时从BIOS中的所述ACPI TABLE中执行ASL文件。
2.根据权利要求1所述的发送方法,其特征在于,将所述热添加操作信息发送至BMC之后,还包括:
所述BMC根据所述热添加操作信息更新PCIE设备信息。
3.根据权利要求1所述的发送方法,其特征在于,还包括:
利用所述ASL文件检测是否存在所述PCIE外接卡的热添加操作。
4.一种PCIE外接卡热添加信息的发送系统,其特征在于,包括:
触发模块,用于当所述PCIE外接卡热添加时,触发操作系统中的SCI;
文件执行模块,用于在所述SCI发生时执行BIOS中的ASL文件;
发送模块,用于利用所述ASL文件获取所述PCIE外接卡的热添加操作信息后,将所述热添加操作信息发送至BMC;
ASL文件修改模块,用于修改所述ASL文件,令ASL文件具有PCIE外接卡热添加信息的读取功能,生成热添加操作信息的功能以及将热添加操作信息发送至BMC的功能,并将修改后的所述ASL文件添加至ACPI TABLE;
则相应的,所述文件执行模块具体为用于在所述SCI发生时从BIOS中的所述ACPITABLE中执行ASL文件的模块。
5.根据权利要求4所述的发送系统,其特征在于,还包括:
更新模块,用于根据所述热添加操作信息更新PCIE设备信息。
6.根据权利要求4所述的发送系统,其特征在于,还包括:
检测模块,用于利用所述ASL文件检测是否存在所述PCIE外接卡的热添加操作。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-3任一项所述的发送方法的步骤。
8.一种服务器,其特征在于,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如权利要求1-3任一项所述的发送方法的步骤。
CN201811354572.4A 2018-11-14 2018-11-14 一种pcie外接卡热添加信息的发送方法及相关装置 Active CN109508312B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811354572.4A CN109508312B (zh) 2018-11-14 2018-11-14 一种pcie外接卡热添加信息的发送方法及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811354572.4A CN109508312B (zh) 2018-11-14 2018-11-14 一种pcie外接卡热添加信息的发送方法及相关装置

Publications (2)

Publication Number Publication Date
CN109508312A CN109508312A (zh) 2019-03-22
CN109508312B true CN109508312B (zh) 2021-10-29

Family

ID=65748506

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811354572.4A Active CN109508312B (zh) 2018-11-14 2018-11-14 一种pcie外接卡热添加信息的发送方法及相关装置

Country Status (1)

Country Link
CN (1) CN109508312B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101930419A (zh) * 2010-03-04 2010-12-29 成都市华为赛门铁克科技有限公司 热插拔方法、热插拔控制装置和热插拔卡系统
CN105573868A (zh) * 2015-12-10 2016-05-11 浪潮电子信息产业股份有限公司 适用于高端主机支持不停机在线更换计算节点的方法
CN107735769A (zh) * 2015-06-26 2018-02-23 英特尔公司 固件相关事件通知
CN107977322A (zh) * 2016-10-21 2018-05-01 英业达科技有限公司 基板管理控制器外接卡、主机系统及管理主机周边构件方法
WO2018200761A1 (en) * 2017-04-27 2018-11-01 Liqid Inc. Pcie fabric connectivity expansion card

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101930419A (zh) * 2010-03-04 2010-12-29 成都市华为赛门铁克科技有限公司 热插拔方法、热插拔控制装置和热插拔卡系统
CN107735769A (zh) * 2015-06-26 2018-02-23 英特尔公司 固件相关事件通知
CN105573868A (zh) * 2015-12-10 2016-05-11 浪潮电子信息产业股份有限公司 适用于高端主机支持不停机在线更换计算节点的方法
CN107977322A (zh) * 2016-10-21 2018-05-01 英业达科技有限公司 基板管理控制器外接卡、主机系统及管理主机周边构件方法
WO2018200761A1 (en) * 2017-04-27 2018-11-01 Liqid Inc. Pcie fabric connectivity expansion card

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
大型复杂系统内存热插拔技术的实现;高云岭等;《电子技术与软件工程》;20171231(第19期);全文 *

Also Published As

Publication number Publication date
CN109508312A (zh) 2019-03-22

Similar Documents

Publication Publication Date Title
US9558016B2 (en) Platform system, method for changing support hardware configuration of universal extensible firmware interface basic input output system and computer program product
US9542228B2 (en) Image processing apparatus, control method thereof and storage medium
CN110096314B (zh) 一种接口初始化方法、装置、设备及计算机可读存储介质
US12001285B2 (en) System booting method and apparatus, node device, and computer-readable storage medium
US11140291B2 (en) Information processing apparatus, control method thereof, and storage medium
US9965299B2 (en) Information processing apparatus, method for controlling the same, and storage medium
EP3029564B1 (en) System and method for providing access to original routines of boot drivers
TWI779515B (zh) 用於判定有無篡改統一可擴展韌體介面(uefi)之方法及系統、及相關非暫時性電腦可讀媒體
CN109491947B (zh) 一种pcie外接卡热移除信息的发送方法及相关装置
US10467173B2 (en) Hot plugging of virtual bridges in a virtual PCI system
CN114020340A (zh) 一种服务器系统及其数据处理方法
US10379872B1 (en) Method for creation of a device driver for a peripheral device
CN109508312B (zh) 一种pcie外接卡热添加信息的发送方法及相关装置
CN109669727B (zh) 一种服务器的配置方法、系统及相关组件
WO2011157105A2 (zh) 组件扩展方法和装置
CN115913913A (zh) 网卡预启动执行环境功能故障定位方法及装置
CN110119625A (zh) 一种可信计算方法
US11755745B2 (en) Systems and methods for monitoring attacks to devices
CN113672448A (zh) BootLoader启动流程的监控方法、装置及存储介质
CN111241553A (zh) 一种bios权限设置方法、装置、设备及存储介质
CN112732562A (zh) 一种计算机的测试方法、系统及相关装置
CN110908725B (zh) 应用程序启动方法、装置、电子设备及可读介质
CN112506574A (zh) ARM服务器中基于CentOS带内修改BIOS配置选项的方法
CN110825417A (zh) 应用程序更新方法及系统
CN112231704A (zh) 可信网络环境保护方法、装置和计算机可读存储介质

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