Disclosure of Invention
The invention mainly aims to provide a data acquisition method, a data acquisition device and computer equipment based on a blockchain network, and aims to solve the problem that the safety of data cannot be guaranteed.
The invention provides a data acquisition method based on a block chain network, which comprises the following steps:
the method comprises the steps that a first block chain link point receiving terminal is used for obtaining an obtaining instruction of performance data, wherein the first block chain node is a node in a pre-constructed block chain network, and the obtaining instruction comprises authority information of the terminal for obtaining the performance data;
judging whether the authority information meets preset acquisition authorities or not;
if the acquisition permission is met, analyzing data information used for representing an address where performance data are located in the acquisition instruction, and recording the data information and the acquisition instruction into the blockchain network;
sending a performance data acquisition request to a second blockchain node in the blockchain network according to the address represented by the data information;
and receiving the parameter data based on the performance data acquired by the JMeter in real time and sent by each second blockchain node, generating a performance data report, and sending the performance data report to the terminal.
Further, after the step of receiving the parameter data based on the performance data obtained by JMeter in real time and sent by each second blockchain node and generating a performance data report, the method further includes:
acquiring a conference file uploaded by the terminal;
identifying a data form in the conference file through a semantic identification technology, and acquiring performance data required by the data form;
and acquiring the performance data required by the data table from the performance data report, and importing the performance data into the data table.
Further, the step of receiving the parameter data based on the performance data obtained by JMeter in real time and sent by each second blockchain node and generating a performance data report includes:
detecting whether abnormal data exists in the performance data report;
if abnormal data exist, acquiring position information of the abnormal data;
transmitting the location information and the abnormal data to the second blockchain node;
and receiving the generation reason of the abnormal data sent by the second blockchain node and marking the generation reason in the performance data report.
Further, the step of detecting whether abnormal data exists in the performance data report includes:
acquiring data of the same dimension in the performance data report;
calculating the difference value between each dimension data and other dimension data in the data of the same dimension, and establishing a difference value set for each dimension data according to the difference value;
according to the formulaCalculating the density of each difference set, wherein ρ c (O) represents the density of each difference set, N (O) represents the difference set, P represents one of the other dimensional data, O represents the dimensional data, d c (O, P) represents the difference value between other dimension data P and dimension data O, and c is a preset constant;
according to the formulaCalculating an outlier of the set of differences; wherein LOF c (O) represents an outlier of the dimension data, N represents all dimension data in the same dimension, ρ c (P) represents the density of the difference set corresponding to the dimension data P;
judging whether the abnormal value is larger than a preset abnormal value or not;
if the dimension data is larger than the preset abnormal value, judging that the dimension data corresponding to the abnormal value is abnormal data.
Further, the step of generating the performance data report includes:
acquiring the subject information of the performance data required to be acquired in the acquisition instruction;
extracting initial data corresponding to the subject information from the parameter data;
acquiring a preset processing mode for processing each initial data in the subject information, and processing the initial data according to a corresponding preset processing mode to obtain target data;
and importing the target data into an initial data table to obtain the performance data report.
Further, before the step of the first block link point receiving terminal for acquiring the performance data acquisition instruction, the method includes:
creating a blockchain class by using a Go language, giving specific parameters to the blockchain class, thereby obtaining an created blockchain node, and setting a hash value in the created block;
generating sub-blockchain nodes by adopting a preset blockchain node generation technology based on the created blockchain nodes so as to build the blockchain network; the sub-block chain nodes record hash values of adjacent previous block chain nodes, and the first block chain node and each second block chain node are respectively one sub-block chain node.
Further, after the step of sending the performance data report to the terminal, the method includes:
acquiring a reference performance data report closest to the time of the performance data report from a database storing the performance data report;
comparing each dimension of the performance data report with the reference performance data report;
according to the formulaCalculating a difference value between the reference performance data report and the performance data report; wherein X represents the reference performance data report, Y represents the performance data report, and X i A value representing the ith dimension of the reference performance data report, y i And (3) representing the numerical value of the ith dimension of the performance data report, wherein n represents the number of dimensions, and f (X, Y) represents the difference value.
The invention also provides a data acquisition device based on the block chain network, which comprises:
the system comprises an instruction acquisition module, a performance data acquisition module and a performance data processing module, wherein the instruction acquisition module is used for acquiring an acquisition instruction of performance data, the first blockchain node is a node in a blockchain network constructed in advance, and the acquisition instruction comprises authority information of the terminal for acquiring the performance data;
the permission acquisition verification module is used for judging whether the permission information meets preset permission acquisition;
the data information analysis module is used for analyzing the data information used for representing the address where the performance data is located in the acquisition instruction if the acquisition permission is met, and recording the data information and the acquisition instruction into the blockchain network;
a data acquisition message sending module, configured to send a performance data acquisition request to a second blockchain node in the blockchain network according to the address indicated by the data information;
and the receiving module is used for receiving the parameter data based on the performance data acquired by the JMeter in real time and sent by each second blockchain node, generating a performance data report, and sending the performance data report to the terminal.
The invention also provides a computer device comprising a memory storing a computer program and a processor implementing the steps of any of the methods described above when the processor executes the computer program.
The invention also provides a computer readable storage medium having stored thereon a computer program which when executed by a processor performs the steps of the method of any of the preceding claims.
The invention has the beneficial effects that: and verifying the authority of the terminal through the blockchain network, acquiring corresponding parameter data after the verification is passed, and generating a corresponding performance data report according to the acquired parameter data, thereby realizing automatic generation of the corresponding performance data report, reducing the workload of accounting personnel and improving the confidentiality of the data. In addition, according to the corresponding instruction of the parameter data response, the corresponding performance data report is automatically generated and sent to the terminal, so that the performance data report is automatically generated, and the manual calculation amount is reduced.
Detailed Description
The following description of the embodiments of the present invention will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are only some, but not all embodiments of the invention. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
It should be noted that, in the embodiments of the present invention, all directional indicators (such as up, down, left, right, front, and back) are merely used to explain the relative positional relationship, movement conditions, and the like between the components in a specific posture (as shown in the drawings), if the specific posture is changed, the directional indicators correspondingly change, and the connection may be a direct connection or an indirect connection.
The term "and/or" is herein merely an association relation describing an associated object, meaning that there may be three relations, e.g., a and B, may represent: a exists alone, A and B exist together, and B exists alone.
Furthermore, descriptions such as those referred to as "first," "second," and the like, are provided for descriptive purposes only and are not to be construed as indicating or implying a relative importance or implying an order of magnitude of the indicated technical features in the present disclosure. Thus, a feature defining "a first" or "a second" may explicitly or implicitly include at least one such feature. In addition, the technical solutions of the embodiments may be combined with each other, but it is necessary to base that the technical solutions can be realized by those skilled in the art, and when the technical solutions are contradictory or cannot be realized, the combination of the technical solutions should be considered to be absent and not within the scope of protection claimed in the present invention.
Referring to fig. 1, the invention provides a data acquisition method based on a blockchain network, which comprises the following steps:
s1: the method comprises the steps that a first block chain link point receiving terminal is used for obtaining an obtaining instruction of performance data, wherein the first block chain node is a node in a pre-constructed block chain network, and the obtaining instruction comprises authority information of the terminal for obtaining the performance data;
s2: judging whether the authority information meets preset acquisition authorities or not;
s3: if the acquisition permission is met, analyzing data information used for representing an address where performance data are located in the acquisition instruction, and recording the data information and the acquisition instruction into the blockchain network;
s4: sending a performance data acquisition request to a second blockchain node in the blockchain network according to the address represented by the data information;
s5: and receiving the parameter data based on the performance data acquired by the JMeter in real time and sent by each second blockchain node, generating a performance data report, and sending the performance data report to the terminal.
In the step S1, the first blockchain node receives an acquiring instruction for acquiring performance data from the terminal, where the acquiring instruction should include information for acquiring corresponding parameter data, for example, the acquiring instruction includes a stability performance data report of the software to be acquired, and then the acquiring instruction should acquire a plurality of parameter data related to stability.
As described in step S2, it is determined whether the permission information satisfies a preset acquisition permission. The acquiring instruction contains information containing corresponding parameter data to be acquired, each network node can judge whether the acquiring authority is met or not according to the required parameter data, if the parameter data corresponding to the performance data does not exist in the data of a certain blockchain node, the first blockchain node does not have the right to acquire the parameter data of the blockchain node, and each second blockchain node only sends the corresponding parameter data to the first blockchain node, and the parameter data irrelevant to the performance data does not need to be sent to the first blockchain node, so that the confidentiality of other parameter data of each node is improved. In some embodiments, all the data may be sent to the first blockchain node for storage, so that after the first blockchain node receives a message that the terminal obtains the performance data, the first blockchain node may obtain the corresponding performance data more quickly.
And if the acquisition permission is met, analyzing data information used for representing the address where the performance data is located in the acquisition instruction, and recording the data information and the acquisition instruction into the blockchain network. When the acquisition right is met, the second blockchain node is connected with the corresponding platform, so that a plurality of parameter data can be acquired, in order to improve the confidentiality of the data, the corresponding parameter data in the data information is only required to be sent to the first blockchain node, namely, the acquisition instruction is firstly analyzed to acquire the corresponding data information to be acquired, and in order to facilitate the data recording and sending, the data information and the acquisition instruction can be recorded in the blockchain network.
And as described in the step S4, sending a performance data acquisition request to a second blockchain node in the blockchain network according to the address indicated by the data information. The parameter data to be acquired is compiled into corresponding data acquisition information and is sent to a corresponding second block chain node, and the second block chain node analyzes the parameter data to be acquired contained in the data acquisition information after receiving the corresponding data acquisition information. It should be appreciated that the parameter data that may be acquired by the different second blockchain nodes is also different, and that the different parameter data should be acquired at the corresponding second blockchain node, and that the content in the data acquisition message sent to the different second blockchain nodes may also be different. In some embodiments, the content in the data acquisition messages sent to different second blockchain nodes may also be the same, that is, the acquisition modes of all the parameter data in the data information are included, and each second blockchain node only needs to feed back the parameter data that can be acquired by itself.
As described in the above step S5, the second blockchain node acquires corresponding parameter data in real time based on the JFER. The JMeter is a Java-based stress testing tool developed by the Apache organization for stress testing software. The corresponding parameter data can be obtained through the JMeter, wherein the parameter data can be the performance parameter of the software, and the obtained parameter data can be the performance parameter of the current software operation or the performance parameter in a time period and can be set according to the requirement. After the second block chain nodes acquire the corresponding parameter data, the parameter data are sent to the first block chain nodes, namely the first block chain nodes receive the parameter data acquired by the second block chain nodes in real time based on the jmeters, and corresponding performance data reports are generated according to the acquired parameter data response acquisition instructions. That is, the parameter data acquired by each second blockchain node generally includes multiple dimensions, and the first blockchain node only needs a part of parameter data, so that the corresponding parameter data is screened out according to the acquired parameter data and according to the content in the acquisition instruction, and a performance data report is correspondingly generated and sent to the terminal.
In one embodiment, after the step S5 of receiving the parameter data of the performance data sent by each second blockchain node and obtained in real time based on JMeter and generating a performance data report, the method further includes:
s601: acquiring a conference file uploaded by the terminal;
s602: identifying a data form in the conference file through a semantic identification technology, and acquiring performance data required by the data form;
s603: and acquiring the performance data required by the data table from the performance data report, and importing the performance data into the data table.
As described in the above steps S601-S603, automatic entry of data in the conference file is achieved. Firstly, acquiring a conference file uploaded by a terminal, identifying the conference file through OCR semantics, identifying form parameters in the conference file, for example, the form parameters are parameters of stability of each device, acquiring performance data required by a data form after semantic identification, filling corresponding data in a performance data report form into corresponding positions in the conference file, specifically, acquiring the data form in the conference file, detecting head lifting of the form, and filling data content in the performance data report form into the data form, thereby completing automatic input of the data in the conference file.
In one embodiment, the step S5 of receiving the parameter data of the performance data sent by each second blockchain node and acquired in real time based on JMeter and generating a performance data report includes:
s501: detecting whether abnormal data exists in the performance data report;
s502: if abnormal data exist, acquiring position information forming the abnormal data;
s503: transmitting the location information and the abnormal data to the second blockchain node;
s504: and receiving the generation reason of the abnormal data sent by the second blockchain node and marking the generation reason in the performance data report.
As described in the above steps S501-S504, the marking of the abnormal data is realized, so that the abnormal data can be analyzed later, and the processing speed of the abnormal situation can be increased. Specifically, whether abnormal data exists in the performance data report may be detected first, the detection method may be that an average value of each dimension is calculated, then dimension data differing from the average value by more than a preset value is marked as abnormal data, then position information of the abnormal data is sent to a second blockchain node, and a generation reason of the abnormal data is acquired by the second blockchain node at a corresponding position according to the position information of the abnormal data, wherein the generation reason may be analyzed through big data, that is, after statistics is performed on each abnormal data and the generated reason in advance, a corresponding relation between each abnormal data and the generation reason is established, and the corresponding relation may be that one abnormal data corresponds to a plurality of generation reasons. And then marking the corresponding generation reasons at the set positions of the performance data report. Therefore, the marking of the abnormal data is realized, and the problem can be processed conveniently.
In one embodiment, the step S501 of detecting whether abnormal data exists in the performance data report includes:
s5011: acquiring data of the same dimension in the performance data report;
s5012: calculating the difference value between each dimension data and other dimension data in the data of the same dimension, and establishing a difference value set for each dimension data according to the difference value;
s5013: according to the formulaCalculating the density of each difference set, wherein ρ c (O) represents the density of each difference set, N (O) represents the difference set, P represents one of the other dimensional data, O represents the dimensional data, d c (O, P) represents the difference value between other dimension data P and dimension data O, and c is a preset constant;
s5014: according to the formulaCalculating an outlier of the set of differences; wherein LOF c (O) represents an outlier of the dimension data, N represents all dimension data in the same dimension, ρ c (P) represents the density of the difference set corresponding to the dimension data P;
s5015: judging whether the abnormal value is larger than a preset abnormal value or not;
s5016: if the dimension data is larger than the preset abnormal value, judging that the dimension data corresponding to the abnormal value is abnormal data.
As described in the above steps S7011-S7016, detection of abnormal data is achieved, specifically, detection of each data of each dimension is performed, where the difference between each dimension data and other dimension data in the same dimension may be calculated first, so as to reflect the phase difference between each dimension data and other dimension data. The density of the difference value set of the dimension data can be obtained according to a formula, the density can also be considered as the density corresponding to the dimension data, then the abnormal value in the difference value set is calculated according to the formula, whether the dimension data is abnormal or not is judged according to the abnormal value, the judging method can be that a preset abnormal value is set, the obtained abnormal value is compared with the preset abnormal value, if the obtained abnormal value is larger than the preset abnormal value, the dimension data is considered to be abnormal, and if the preset abnormal value is not reached, the dimension data is considered to be normal.
In one embodiment, the step S7 of generating a performance data report includes:
s711: acquiring the subject information of the performance data required to be acquired in the acquisition instruction;
s712: extracting initial data corresponding to the subject information from the parameter data;
s713: acquiring a preset processing mode for processing each initial data in the subject information, and processing the initial data according to a corresponding preset processing mode to obtain target data;
s714: and importing the target data into an initial data table to obtain the performance data report.
As described in steps S711-S714 above, the generation of the performance data report is accomplished. Specifically, the acquiring instruction includes each piece of theme information, that is, data information to be acquired, and then acquires initial data in parameter data according to the theme information, and since the initial data cannot meet the needs in most cases, further processing needs to be performed on the initial data, that is, corresponding preset processing modes are required, of course, different processing modes are required for different initial data, average values are required for some initial data, sum needs to be calculated for some initial data, probability that abnormal values need to be counted for some initial data, and the like, the initial data can be acquired according to the corresponding theme information, finally target data corresponding to the theme information is obtained, and the target data is imported into a table to obtain a final performance data report. Therefore, the technical effects of automatically obtaining corresponding target data according to the obtained initial data and further generating the performance data report are achieved, and the workload of accounting staff is greatly reduced.
In one embodiment, before the step S1 of receiving the acquiring instruction of the terminal to acquire the performance data, the first blockchain node includes:
s001: creating a blockchain class by using a Go language, giving specific parameters to the blockchain class, thereby obtaining an created blockchain node, and setting a hash value in the created block;
s002: generating sub-blockchain nodes by adopting a preset blockchain node generation technology based on the created blockchain nodes so as to build the blockchain network; the sub-block chain nodes record hash values of adjacent previous block chain nodes, and the first block chain node and each second block chain node are respectively one sub-block chain node.
Building a blockchain network is achieved as described in steps S401-S403 above. The language in which the blockchain class is created may be any feasible language, such as JAVA, C++, go, etc., with the Go language being preferred for this embodiment to optimize the blockchain class. The method comprises the steps of defining a blockchain, instantiating the blockchain, namely determining specific parameters of the blockchain, so as to obtain a first blockchain node (an originating blockchain node), and taking the first blockchain node as a generation basis of other sub-blockchain nodes. Since the originating blockchain node is the first blockchain node, there is virtually no previous block, and therefore the hash value of the originating blockchain node needs to be set. The preset consensus mechanism can be any consensus mechanism, such as a workload proof mechanism, a rights proof mechanism, a Bayesian fault tolerance mechanism, etc. The preset block generation technology is, for example, setting a block head and a block body; a hash value of a previous block in the block header, a hash value of a local block and a timestamp; the data prepared in advance is stored in the block body so that the block head and the block body constitute one block.
In one embodiment, after the step S8 of sending the performance data report to the terminal, the method includes:
s901: acquiring a reference performance data report of the performance data report;
s902: comparing each dimension of the performance data report with the reference performance data report;
s903: according to the formulaCalculating a difference value between the reference performance data report and the performance data report; wherein X represents the reference performance data report, Y represents the performance data report, and X i A value representing the ith dimension of the reference performance data report, y i And (3) representing the numerical value of the ith dimension of the performance data report, wherein n represents the number of dimensions, and f (X, Y) represents the difference value.
As described in the above steps S901-S903, the analysis of the performance data report is implemented, that is, the reference performance data report of the performance data report is obtained, in the process of detecting the software, multiple detection and analysis are required to be performed on the software, and each function of the software is continuously optimized, so that the current performance data report needs to be compared with the reference or the previous parts, in this embodiment, the reference performance data report is compared, that is, the obtained performance data report is compared with the reference performance data report in each dimension, the difference value is calculated according to the formula, the data analysis is performed on the performance data report and the reference report according to the difference value, when the difference value is too large, the change condition of the software is illustrated to be large, and when the difference value is small, the change condition of the software is illustrated to be small.
The invention has the beneficial effects that: and verifying the authority of the terminal through the blockchain network, acquiring corresponding parameter data after the verification is passed, and generating a corresponding performance data report according to the acquired parameter data, thereby realizing automatic generation of the corresponding performance data report, reducing the workload of accounting personnel and improving the confidentiality of data.
Referring to fig. 2, the present invention further provides a data acquisition device based on a blockchain network, including:
the instruction acquisition module 10 is used for receiving an acquisition instruction of a terminal for acquiring performance data, wherein the first blockchain node is a node in a blockchain network constructed in advance, and the acquisition instruction comprises authority information of the terminal for acquiring the performance data;
the acquisition permission verification module 20 is configured to determine whether the permission information meets a preset acquisition permission;
the data information analysis module 30 is configured to analyze data information, which is used for representing an address where the performance data is located, in the acquisition instruction if the acquisition permission is satisfied, and record the data information and the acquisition instruction into the blockchain network;
a data acquisition message sending module 40, configured to send a performance data acquisition request to a second blockchain node in the blockchain network according to the address indicated by the data information;
and the receiving module 50 is used for receiving the parameter data based on the performance data acquired by the JMeter in real time and sent by each second blockchain node, generating a performance data report, and sending the performance data report to the terminal.
In one embodiment, the blockchain network-based data acquisition device further includes:
the conference file acquisition module is used for acquiring conference files uploaded by the terminal;
the data form identification module is used for identifying the data form in the conference file through a semantic identification technology and acquiring performance data required by the data form;
and the content filling module is used for acquiring the performance data required by the data table from the performance data report and importing the performance data into the data table.
In one embodiment, the receiving module 50 includes:
the abnormal data detection sub-module is used for detecting whether abnormal data exists in the performance data report;
the position information acquisition sub-module is used for acquiring position information forming the abnormal data if the abnormal data exist;
a generation cause acquisition sub-module for transmitting the location information and the abnormal data to the second blockchain node;
and the remarking sub-module is used for receiving the generation reason of the abnormal data sent by the second blockchain node and marking the generation reason in the performance data report.
In one embodiment, the abnormal data detection sub-module includes:
the acquisition unit acquires data of the same dimension in the performance data report;
the difference value calculation unit is used for calculating the difference value between each dimension data and other dimension data in the data of the same dimension, and establishing a difference value set for each dimension data according to the difference value;
a density calculating unit for calculating a density according to the formulaCalculating the density of each difference set, wherein ρ c (O) represents the density of each difference set, N (O) represents the difference set, P represents one of the other dimensional data, O represents the dimensional data, d c (O, P) represents the difference value between other dimension data P and dimension data O, and c is a preset constant;
an outlier calculating unit for calculating an outlier according to the formulaCalculating an outlier of the set of differences; wherein LOF c (O) represents an outlier of the dimension data, N represents all dimension data in the same dimension, ρ c (P) represents the density of the difference set corresponding to the dimension data P;
the dimension data judging unit is used for judging whether the abnormal value is larger than a preset abnormal value or not;
and the judging unit is used for judging that the dimension data corresponding to the abnormal value is abnormal data if the dimension data is larger than the preset abnormal value.
In one embodiment, the receiving module 50 includes:
the theme information acquisition sub-module is used for acquiring theme information of the performance data required to be acquired in the acquisition instruction;
an initial data acquisition sub-module, configured to extract initial data corresponding to the subject information from the parameter data;
the theme information processing sub-module is used for acquiring a preset processing mode for processing each initial data in the theme information, and processing the initial data according to a corresponding preset processing mode to obtain target data;
and the target data importing sub-module is used for importing the target data into an initial data table to obtain the performance data report.
In one embodiment, the blockchain network-based data acquisition device further includes:
the giving module is used for creating a blockchain class by using a Go language, giving specific parameters of the blockchain class so as to obtain an created blockchain node, and setting a hash value in the created block;
the building module is used for generating sub-blockchain nodes by adopting a preset blockchain node generation technology based on the generated blockchain nodes so as to build the blockchain network; the sub-block chain nodes record hash values of adjacent previous block chain nodes, and the first block chain node and each second block chain node are respectively one sub-block chain node.
In one embodiment, the blockchain network-based data acquisition device further includes:
the reference performance data report acquisition module is used for acquiring a reference performance data report closest to the performance data report time in a database storing the performance data report;
the dimension comparison module is used for comparing each dimension of the performance data report and the reference performance data report;
the difference value calculation module is used for calculating the difference value according to the formulaCalculating a difference value between the reference performance data report and the performance data report; wherein X represents the reference performance data report, Y represents the performance data report, and X i A value representing the ith dimension of the reference performance data report, y i And (3) representing the numerical value of the ith dimension of the performance data report, wherein n represents the number of dimensions, and f (X, Y) represents the difference value.
Referring to fig. 3, a computer device is further provided in the embodiment of the present application, where the computer device may be a server, and the internal structure of the computer device may be as shown in fig. 3. The computer device includes a processor, a memory, a network interface, and a database connected by a system bus. Wherein the computer is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, computer programs, and a database. The memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The database of the computer device is used for storing various parameter data and the like. The network interface of the computer device is used for communicating with an external terminal through a network connection. The computer program, when executed by a processor, may implement the blockchain network-based data acquisition method of any of the embodiments described above.
Those skilled in the art will appreciate that the architecture shown in fig. 3 is merely a block diagram of a portion of the architecture in connection with the present application and is not intended to limit the computer device to which the present application is applied.
The embodiment of the application further provides a computer readable storage medium, on which a computer program is stored, where the computer program can implement the data acquisition method based on the blockchain network according to any of the above embodiments when executed by a processor.
Those skilled in the art will appreciate that implementing all or part of the above described methods may be accomplished by hardware associated with a computer program stored on a non-transitory computer readable storage medium, which when executed, may comprise the steps of the embodiments of the methods described above. Any reference to memory, storage, database, or other medium provided herein and used in embodiments may include non-volatile and/or volatile memory. The nonvolatile memory can include Read Only Memory (ROM), programmable ROM (PROM), electrically Programmable ROM (EPROM), electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms such as Static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual speed data rate SDRAM (SSRSDRAM), enhanced SDRAM (ESDRAM), synchronous Link DRAM (SLDRAM), memory bus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), among others.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, apparatus, article, or method that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, apparatus, article, or method. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, apparatus, article or method that comprises the element.
The above description is only of the preferred embodiments of the present invention and is not intended to limit the present invention, but various modifications and variations can be made to the present invention by those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention should be included in the scope of the claims of the present invention.