CN107797842B - Method and device for calling virtual machine management tool - Google Patents

Method and device for calling virtual machine management tool Download PDF

Info

Publication number
CN107797842B
CN107797842B CN201610786301.0A CN201610786301A CN107797842B CN 107797842 B CN107797842 B CN 107797842B CN 201610786301 A CN201610786301 A CN 201610786301A CN 107797842 B CN107797842 B CN 107797842B
Authority
CN
China
Prior art keywords
data
virtual machine
demand
command set
parameter
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
CN201610786301.0A
Other languages
Chinese (zh)
Other versions
CN107797842A (en
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.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum 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 Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201610786301.0A priority Critical patent/CN107797842B/en
Publication of CN107797842A publication Critical patent/CN107797842A/en
Application granted granted Critical
Publication of CN107797842B publication Critical patent/CN107797842B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; 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

The invention provides a method and a device for calling a virtual machine management tool, wherein the method for calling the virtual machine management tool comprises the following steps: receiving data sent by a requester, wherein the data comprises a first part of data and a second part of data, the first part of data comprises an action identifier, the second part of data comprises a demand parameter and an index value corresponding to the demand parameter, determining a command set corresponding to the action identifier, generating an execution parameter according to the command set and the second part of data, sending the execution parameter to a task scheduler of the virtual machine management tool, receiving an execution result returned by the task scheduler, and returning the execution result to the requester. According to the scheme provided by the invention, partial functions of a virtual machine management tool, especially scvmm, can be called, the efficiency of the existing virtual machine management work is improved, and the increasing operation and maintenance requirements of the virtual machine are met.

Description

Method and device for calling virtual machine management tool
Technical Field
The invention relates to the technical field of software development, in particular to a method and a device for calling a virtual machine management tool.
Background
The SCVMM (system Center Virtual Machine manager) is a microsoft Virtual Machine deployment and management tool, and can implement management work of Virtual machines in an enterprise, and perform operations such as opening, modifying, deleting and the like on the Virtual machines through a graphical interface provided by the SCVMM. However, SCVMM does not provide any Application Programming Interface (API), only supports some commands of powershell command line, and cannot integrate with third party Application programs, i.e. perform secondary development and use.
Because the SCVMM does not provide an external API, the existing virtual machine management work can only be operated through a graphical interface, which is inefficient. In addition, in the presence of increasing operation and maintenance requirements of virtual machines, the imaging mode is not satisfactory, the number of operation parameters of a command line is large, the steps are complex, and operation and maintenance personnel cannot rapidly realize the operation and maintenance requirements.
Disclosure of Invention
In view of the above, the present invention has been made to provide a method and apparatus for invoking a virtual machine management tool that overcomes or at least partially solves the above-mentioned problems.
In one aspect, the present invention provides a method for calling a virtual machine management tool, including:
receiving data sent by a requester, wherein the data comprises a first part of data and a second part of data, the first part of data comprises an action identifier, and the second part of data comprises a demand parameter and an index value corresponding to the demand parameter;
determining a command set corresponding to the action identifier;
if the demand parameters in the command set are consistent with the demand parameters in the second part of data, generating execution parameters according to the command set and the second part of data;
sending the execution parameters to a task scheduler of the virtual machine management tool, and receiving an execution result returned by the task scheduler;
and returning the execution result to the requester.
In another aspect, the present invention further provides a device for invoking a virtual machine management tool, including:
the data processing device comprises a receiving unit, a processing unit and a processing unit, wherein the receiving unit is used for receiving data sent by a requester, the data comprises a first part of data and a second part of data, the first part of data comprises an action identifier, and the second part of data comprises a demand parameter and an index value corresponding to the demand parameter;
the determining unit is used for determining a command set corresponding to the action identifier;
a generating unit, configured to generate an execution parameter according to the command set and the second partial data when a demand parameter in the command set is consistent with a demand parameter in the second partial data;
the sending unit is used for sending the execution parameters to a task scheduler of the virtual machine management tool and receiving an execution result returned by the task scheduler;
and the first returning unit is used for returning the execution result to the requester.
By means of the technical scheme, the method and the device for calling the virtual machine management tool can call partial functions of the virtual machine management tool, particularly scvmm, improve the efficiency of the existing virtual machine management work, and meet the increasing operation and maintenance requirements of the virtual machine.
The foregoing description is only an overview of the technical solutions of the present invention, and the embodiments of the present invention are described below in order to make the technical means of the present invention more clearly understood and to make the above and other objects, features, and advantages of the present invention more clearly understandable.
Drawings
Various other advantages and benefits will become apparent to those of ordinary skill in the art upon reading the following detailed description of the preferred embodiments. The drawings are only for purposes of illustrating the preferred embodiments and are not to be construed as limiting the invention. Also, like reference numerals are used to refer to like parts throughout the drawings. In the drawings:
FIG. 1 illustrates a flow diagram of a method of invoking a virtual machine management tool in accordance with an embodiment of the present invention;
FIG. 2 illustrates a flow diagram for generating execution parameters in accordance with a specific embodiment of the present invention;
fig. 3 is a schematic structural diagram of an apparatus for invoking a virtual machine management tool according to an embodiment of the present invention.
Detailed Description
Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
Referring to fig. 1, an embodiment of the present invention provides a method for invoking a virtual machine management tool, which includes the following steps 101 to 105, which are described in detail below.
Step 101: receiving data sent by a requester, wherein the data comprises a first part of data and a second part of data, the first part of data comprises an action identifier, and the second part of data comprises a requirement parameter and an index value corresponding to the requirement parameter.
The requesting party is specifically a third-party application program. The virtual machine management tool is specifically microsoft virtual machine deployment and management tool SCVMM.
The data sent by the third-party application (i.e., the requester) to the virtual machine management tool normally includes at least two parts of data, i.e., a first part of data and a second part of data.
The first part of data at least comprises an action identifier, and more specifically, the first part of data comprises an action function and an action identifier corresponding to the action function. The action function is a field action named by self definition, and the action identifier is a value corresponding to the action. For example, the first portion of data is: action search _ sc _ jobA.
The second part of data comprises a demand parameter and an index value corresponding to the demand parameter. Wherein the requirement parameter is one parameter in a parameter set args. For example, the second portion of data is: guid 21fqwe-12313-dfds-s12 efe.
In the embodiment of the present invention, the step 101 includes:
and receiving the data sent by the requester through a specified API data interface.
The API data interface is, for example, an entry written in python, which receives API data interaction, and defines an API format therein, allowing receiving some data transmitted by a third-party application.
It should be noted that, under an abnormal condition, the data sent by the third-party application program to the virtual machine management tool may not include the action function, that is, the virtual machine management tool may not detect the action function in the received data, at this time, a subsequent calling process is not performed, but a friendly prompt message is returned to the third-party application program to prompt that the sent data is incorrect.
Step 102: and determining a command set corresponding to the action identifier.
In the embodiment of the present invention, the command set is an scvmm powershell command set, and the format is, for example:
the action function is as follows: action identification, command: command corresponding value, parameter set: a demand parameter; namely, it is
action:[xx],cmd:[yy],args:[zz]。
Specifically, in order to determine the command set corresponding to the action identifier, a plurality of scvmmm powershell command sets need to be preset to select a matching command set.
For example, the scvmmm powershell command sets are:
Figure BDA0001102023050000041
thus, when the first part of data received in step 101 is action, search _ sc _ job, i.e. the action id is search _ sc _ job, step 102 determines that the corresponding command set is: ' action ' search _ sc _ jobb ', ' cmd ': sc-jobb ', ' args ': guid '.
Step 103: and if the demand parameters in the command set are consistent with the demand parameters in the second part of data, generating execution parameters according to the command set and the second part of data.
In the embodiment of the invention, the execution parameter is a character string and is formed by splicing a value corresponding to the command in the command set, a demand parameter and an index value corresponding to the demand parameter.
Wherein, the splicing mode is for example: [ cmd ] - [ args ] [ args-value ].
Specifically, referring to fig. 2, the step of generating the execution parameter according to the command set and the second partial data includes:
step 201: determining a value corresponding to a command from the command set;
step 202: determining an index value corresponding to the demand parameter from the second part of data;
step 203: and generating the execution parameters according to the value corresponding to the command, the demand parameters and the index values corresponding to the demand parameters.
In the embodiment of the present invention, if the demand parameters in the command set are not consistent with the demand parameters in the second part of data, an error message needs to be returned to the requester, i.e., the third-party application.
Step 104: and sending the execution parameters to a task scheduler of the virtual machine management tool, and receiving an execution result returned by the task scheduler.
Specifically, after the execution parameter is generated in step 103, the execution parameter may be sent to the scvmm task scheduler to call the powershell command console, execute the execution parameter, and wait for receiving the execution result returned by the scvmm task scheduler.
Step 105: and returning the execution result to the requester.
Therefore, the calling of partial functions of the virtual machine management tool, particularly scvmm, is realized, the efficiency of the existing virtual machine management work is improved, and the increasing operation and maintenance requirements of the virtual machine are met.
The present invention is described in detail below with reference to a specific application scenario.
Firstly, a third-party application program A accesses an API data interface of the scvmm system and sends two pieces of data, which are respectively:
action:search_sc_job;
guid:21fqwe-12313-dfds-s12efe。
secondly, the scvmm system selects a command set corresponding to the "search _ sc _ jobs" from a plurality of preset command sets according to the action identifier "search _ sc _ jobs" corresponding to the action, specifically:
‘action’:‘search_sc_job’,‘cmd’:‘sc-job’,‘args’:‘guid’;
taking out a requirement parameter guid in the args, and searching an index value of the guid in the data to obtain:
guid:21fqwe-12313-dfds-s12efe;
performing character splicing on cmd and args according to a splicing mode [ cmd ] - [ args ] [ args-value ], and obtaining a character string: sc-job-guid 21fqwe-12313-dfds-s12 efe.
And finally, transmitting the character string to a powershell command desk for execution to obtain a return result B, and returning the return result B to the third-party application program A.
Referring to fig. 3, an embodiment of the present invention further provides an apparatus for invoking a virtual machine management tool, where the apparatus corresponds to the method for invoking the virtual machine management tool shown in fig. 1, and the apparatus includes:
a receiving unit 31, configured to receive data sent by a requester, where the data includes a first part of data and a second part of data, where the first part of data includes an action identifier, and the second part of data includes a requirement parameter and an index value corresponding to the requirement parameter;
a determining unit 32, configured to determine a command set corresponding to the action identifier;
a generating unit 33, configured to generate an execution parameter according to the command set and the second partial data when a requirement parameter in the command set is consistent with a requirement parameter in the second partial data;
a sending unit 34, configured to send the execution parameter to a task scheduler of the virtual machine management tool, and receive an execution result returned by the task scheduler;
a first returning unit 35, configured to return the execution result to the requester.
Preferably, the generating unit 33 includes:
a first determining subunit, configured to determine a value corresponding to a command from the command set;
the second determining subunit is configured to determine an index value corresponding to the demand parameter from the second part of data;
and the generating subunit is configured to generate the execution parameter according to the value corresponding to the command, the requirement parameter, and the index value corresponding to the requirement parameter.
Wherein, the receiving unit 31 is specifically configured to: and receiving the data sent by the requester through a specified API data interface.
In the embodiment of the present invention, the apparatus further includes:
and the second returning unit is used for returning error information to the requester when the demand parameters in the command set are inconsistent with the demand parameters in the second part of data.
In this embodiment of the present invention, the apparatus for calling a virtual machine management tool includes a processor and a memory, where the receiving unit 31, the determining unit 32, the generating unit 33, the sending unit 34, the first returning unit 35, and the like are all stored in the memory as program units, and the processor executes the program units stored in the memory to implement corresponding functions.
The processor comprises a kernel, and the kernel calls the corresponding program unit from the memory. The kernel can be set to be one or more than one, and partial functions of a virtual machine management tool, especially scvmm, are called by adjusting kernel parameters, so that the efficiency of the existing virtual machine management work is improved, and the increasing operation and maintenance requirements of the virtual machine are met.
The memory may include volatile memory in a computer readable medium, Random Access Memory (RAM) and/or nonvolatile memory such as Read Only Memory (ROM) or flash memory (flash RAM), and the memory includes at least one memory chip.
The device for calling the virtual machine management tool can call partial functions of the virtual machine management tool, particularly scvmm, improve the efficiency of the conventional virtual machine management work and meet the increasing operation and maintenance requirements of the virtual machine.
An embodiment of the present invention further provides a computer program product, which, when executed on a data processing apparatus, is adapted to execute program code that initializes the following method steps:
receiving data sent by a requester, wherein the data comprises a first part of data and a second part of data, the first part of data comprises an action function and an action identifier corresponding to the action function, and the second part of data comprises a demand parameter and an index value corresponding to the demand parameter;
determining a command set corresponding to the action identifier;
if the demand parameters in the command set are consistent with the demand parameters in the second part of data, generating execution parameters according to the command set and the second part of data;
sending the execution parameters to a task scheduler of the virtual machine management tool, and receiving an execution result returned by the task scheduler;
and returning the execution result to the requester.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). The memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
The above are merely examples of the present application and are not intended to limit the present application. Various modifications and changes may occur to those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims (8)

1. A method of invoking a virtual machine management tool, comprising:
receiving data sent by a requester, wherein the data comprises a first part of data and a second part of data, the first part of data comprises an action function and an action identifier corresponding to the action function, and the second part of data comprises a demand parameter and an index value corresponding to the demand parameter;
determining a command set corresponding to the action identifier;
if the demand parameters in the command set are consistent with the demand parameters in the second part of data, generating execution parameters according to the command set and the second part of data;
sending the execution parameters to a task scheduler of the virtual machine management tool, and receiving an execution result returned by the task scheduler;
and returning the execution result to the requester.
2. The method of claim 1, wherein the step of generating execution parameters based on the command set and the second portion of data comprises:
determining a value corresponding to a command from the command set;
determining an index value corresponding to the demand parameter from the second part of data;
and generating the execution parameters according to the value corresponding to the command, the demand parameters and the index values corresponding to the demand parameters.
3. The method of claim 1, wherein the step of receiving the data sent by the requesting party comprises:
and receiving the data sent by the requester through a specified API data interface.
4. The method of claim 1-claim 3, further comprising:
and if the demand parameters in the command set are inconsistent with the demand parameters in the second part of data, returning error information to the requester.
5. An apparatus for invoking a virtual machine management tool, comprising:
the data processing device comprises a receiving unit, a processing unit and a processing unit, wherein the receiving unit is used for receiving data sent by a requester, the data comprises a first part of data and a second part of data, the first part of data comprises an action function and an action identifier corresponding to the action function, and the second part of data comprises a demand parameter and an index value corresponding to the demand parameter;
the determining unit is used for determining a command set corresponding to the action identifier;
a generating unit, configured to generate an execution parameter according to the command set and the second partial data when a demand parameter in the command set is consistent with a demand parameter in the second partial data;
the sending unit is used for sending the execution parameters to a task scheduler of the virtual machine management tool and receiving an execution result returned by the task scheduler;
and the first returning unit is used for returning the execution result to the requester.
6. The apparatus of claim 5, wherein the generating unit comprises:
a first determining subunit, configured to determine a value corresponding to a command from the command set;
the second determining subunit is configured to determine an index value corresponding to the demand parameter from the second part of data;
and the generating subunit is configured to generate the execution parameter according to the value corresponding to the command, the requirement parameter, and the index value corresponding to the requirement parameter.
7. The apparatus according to claim 5, wherein the receiving unit is specifically configured to:
and receiving the data sent by the requester through a specified API data interface.
8. The apparatus of claims 5-7, further comprising:
and the second returning unit is used for returning error information to the requester when the demand parameters in the command set are inconsistent with the demand parameters in the second part of data.
CN201610786301.0A 2016-08-30 2016-08-30 Method and device for calling virtual machine management tool Active CN107797842B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610786301.0A CN107797842B (en) 2016-08-30 2016-08-30 Method and device for calling virtual machine management tool

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610786301.0A CN107797842B (en) 2016-08-30 2016-08-30 Method and device for calling virtual machine management tool

Publications (2)

Publication Number Publication Date
CN107797842A CN107797842A (en) 2018-03-13
CN107797842B true CN107797842B (en) 2021-07-16

Family

ID=61528357

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610786301.0A Active CN107797842B (en) 2016-08-30 2016-08-30 Method and device for calling virtual machine management tool

Country Status (1)

Country Link
CN (1) CN107797842B (en)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102170428B (en) * 2011-03-22 2013-11-27 无锡城市云计算中心有限公司 Dynamic expansion management method of isomerous virtual machine platform
CN102662745B (en) * 2012-04-18 2015-01-21 国家电网公司 Virtual machine management system and virtual machine management method
TWI456944B (en) * 2012-05-02 2014-10-11 Quanta Comp Inc Management method and system using the same
CN102981888B (en) * 2012-10-16 2016-02-03 北京华胜天成科技股份有限公司 For the virtualization implementation method of Power server
CN103973465B (en) * 2013-01-25 2017-09-19 中国电信股份有限公司 distributed cross-platform virtualization capability management method and system
US9298502B2 (en) * 2013-01-31 2016-03-29 Empire Technology Development Llc Pausing virtual machines using API signaling
CN103729234B (en) * 2013-12-20 2017-06-27 中电长城网际系统应用有限公司 A kind of cluster virtual machine management method and device

Also Published As

Publication number Publication date
CN107797842A (en) 2018-03-13

Similar Documents

Publication Publication Date Title
EP3353672B1 (en) Method and apparatus for transferring data between databases
US9811372B2 (en) Concurrent execution of a computer software application along multiple decision paths
US10789111B2 (en) Message oriented middleware with integrated rules engine
CN108959510B (en) Partition level connection method and device for distributed database
TWI694700B (en) Data processing method and device, user terminal
CN107832275A (en) The generation method of intelligent Contract ID, apparatus and system in block chain
WO2020215925A1 (en) Event subscription method and apparatus based on blockchain
CN107016016B (en) Data processing method and device
CN105824849A (en) Data import method and adapter
EP2778962B1 (en) Silo-aware databases
US20120159515A1 (en) Sharing object representations
CN109977317B (en) Data query method and device
CN108198582B (en) NAND Flash control method and device and SSD
CN110928941B (en) Data fragment extraction method and device
CN112711462A (en) Cloud platform virtual CPU hot binding method and device and computer readable storage medium
CN107797842B (en) Method and device for calling virtual machine management tool
CN109582396B (en) Task state processing method, device and system and storage medium
US9626371B2 (en) Attribute selectable file operation
CN112783954B (en) Data access method, device and server
CN114281818A (en) Data processing method, device, server and storage medium
CN109656672B (en) File loading method and system
CN111414162B (en) Data processing method, device and equipment thereof
CN118035042B (en) Application program performance analysis method and device, electronic equipment and storage medium
US20200403887A1 (en) Method for managing software service, and server
CN110704517B (en) Method and device for generating task, storage medium and processor

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