CN113568816A - Process monitoring method, device and equipment - Google Patents

Process monitoring method, device and equipment Download PDF

Info

Publication number
CN113568816A
CN113568816A CN202111104025.2A CN202111104025A CN113568816A CN 113568816 A CN113568816 A CN 113568816A CN 202111104025 A CN202111104025 A CN 202111104025A CN 113568816 A CN113568816 A CN 113568816A
Authority
CN
China
Prior art keywords
result
processing
calculation result
arbiter
calculation
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
Application number
CN202111104025.2A
Other languages
Chinese (zh)
Other versions
CN113568816B (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.)
Guoqi Intelligent Control Beijing Technology Co Ltd
Original Assignee
Guoqi Intelligent Control Beijing 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 Guoqi Intelligent Control Beijing Technology Co Ltd filed Critical Guoqi Intelligent Control Beijing Technology Co Ltd
Priority to CN202111104025.2A priority Critical patent/CN113568816B/en
Publication of CN113568816A publication Critical patent/CN113568816A/en
Application granted granted Critical
Publication of CN113568816B publication Critical patent/CN113568816B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system

Landscapes

  • Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Abstract

The application provides a process monitoring method, a process monitoring device and process monitoring equipment. The method comprises the following steps: the electronic equipment acquires a first calculation result of a first process and a second calculation result of a second process; if the first calculation result is consistent with the second calculation result, determining that the calculation logic in the first process is correct, and outputting the first calculation result; if the first calculation result is not consistent with the second calculation result, entering an arbitration process: the first arbitration method is: indicating the first process and the second process to process respectively based on the same preset input value, and comparing the processing result of the first process and the processing result of the second process with a preset output value to obtain a first arbitration result; or adopting a second arbitration mode: and starting a third process to process the real input value, and comparing the calculation result of the third process with the first calculation result and the second calculation result to obtain a second arbitration result. The judgment and detection of whether the computational logic in the process is correct or not are realized.

Description

Process monitoring method, device and equipment
Technical Field
The present application relates to the field of computer technologies, and in particular, to a process monitoring method, apparatus, and device.
Background
An operating system is installed on a computer or other equipment, and in the running process of the operating system, a process is often required to be started in response to the requirement of a user, and in the working process of the process, the state of the process is required to be monitored.
In the prior art, monitoring of the state of a process is generally achieved by using a monitoring tool. For example, in a Linux operating system, monitoring of the state of a process is generally achieved by using an inotify tool.
However, in the prior art, when the process is monitored by using the existing monitoring tool, only whether the state of the process is correct or not can be detected, but whether the internal logic of the process is correct or not cannot be detected and analyzed.
Disclosure of Invention
The embodiment of the application provides a process monitoring method, a process monitoring device and process monitoring equipment, which are used for solving the problem that whether internal logic of a process is correct or not cannot be detected and analyzed.
In a first aspect, the present application provides a process monitoring method, where the method is applied to an electronic device, and the method includes:
acquiring a first calculation result of a first process and a second calculation result of a second process; the first calculation result is obtained by processing the first process based on a real input value, the second calculation result is obtained by processing the second process based on the real input value, the first process is a process to be monitored, and the first process and the second process adopt the same calculation logic;
if the first calculation result is consistent with the second calculation result, determining that the internal logic of the first process is correct, and outputting the first calculation result to an output unit for processing;
if the first calculation result is determined to be inconsistent with the second calculation result, processing a preset input value based on the first process and the second process to obtain a first arbitration result, or starting a third process to process the real input value to obtain a second arbitration result; wherein the first arbitration result and the second arbitration result both characterize whether internal logic of the first process is correct.
In an alternative embodiment, an arbiter is running in the electronic device; if it is determined that the first calculation result is inconsistent with the second calculation result, processing a preset input value based on the first process and the second process to obtain a first arbitration result, including:
if the first calculation result is determined to be inconsistent with the second calculation result based on the arbiter, suspending an external input process of the first process, inputting the preset input value output by the arbiter into the first process for processing to obtain a first processing result, and inputting the preset input value output by the arbiter into the second process for processing to obtain a second processing result;
determining the first arbitration result based on the arbiter according to the first processing result, the second processing result and a preset processing result prestored by the arbiter; and the preset processing result is a processing result corresponding to the preset input value.
In an optional embodiment, determining the first arbitration result based on the arbiter according to the first processing result, the second processing result, and a preset processing result pre-stored by the arbiter includes:
if the first processing result is determined to be consistent with the preset processing result and the second processing result is determined to be inconsistent with the preset processing result based on the arbiter, determining that the first arbitration result represents that the internal logic of the first process is correct, and outputting the first calculation result to an output unit for processing; restoring the external input process of the first process and restarting the second process;
if the first processing result and the second processing result are determined to be consistent with the preset processing result or the first processing result and the second processing result are determined to be inconsistent with the preset processing result based on the arbiter, determining that the first arbitration result represents an internal logic error of the first process, and discarding the first calculation result and the second calculation; restarting the first process and the second process;
if the first processing result is determined to be inconsistent with the preset processing result and the second processing result is determined to be consistent with the preset processing result based on the arbiter, determining that the first arbitration result represents the internal logic error of the first process, and outputting the second calculation result to an output unit for processing; restarting the first process.
In an alternative embodiment, an arbiter is running in the electronic device; if the first calculation result is determined to be inconsistent with the second calculation result, a third process is started to process the real input value to obtain a second arbitration result, and the method comprises the following steps:
if the first calculation result is determined to be inconsistent with the second calculation result based on the arbiter, acquiring the real input value based on the arbiter, and starting the third process based on the arbiter;
processing the real input value in the arbiter based on the third process to obtain a third calculation result;
determining the second arbitration result based on the arbiter as a function of the first calculation result, the second calculation result, and the third calculation result.
In an alternative embodiment, determining the second arbitration result based on the arbiter as a function of the first calculation result, the second calculation result, and the third calculation result includes:
if the first calculation result is determined to be consistent with the third calculation result based on the arbiter, determining that the second arbitration result represents that the internal logic of the first process is correct, and outputting the first calculation result to an output unit for processing; restoring the external input process of the first process and restarting the second process;
if the second calculation result is determined to be consistent with the third calculation result based on the arbiter, determining that the second arbitration result represents an internal logic error of the first process, and outputting the second calculation result to an output unit for processing; restarting the first process;
if the arbiter determines that the first calculation result and the second calculation result are not consistent with the third calculation result, determining that the second arbitration result represents an internal logic error of the first process, and outputting the third calculation result to an output unit for processing; restarting the first process and the second process.
In an alternative embodiment, an arbiter is running in the electronic device; if the first calculation result is determined to be consistent with the second calculation result, determining that the internal logic of the first process is correct, and outputting the first calculation result to an output unit for processing, wherein the processing includes:
and if the first calculation result is determined to be consistent with the second calculation result based on the arbiter, determining that the internal logic of the first process is correct based on the arbiter, and outputting the first calculation result to an output unit for processing based on the arbiter.
In an optional embodiment, the first calculation result and the second calculation result include the same unique identifier; the same unique identifier is used for representing that the first calculation result and the second calculation result are obtained by the same processing task.
In a second aspect, the present application provides a process monitoring apparatus, which is applied to an electronic device, and includes:
the device comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring a first calculation result of a first process and a second calculation result of a second process; the first calculation result is obtained by processing the first process based on a real input value, the second calculation result is obtained by processing the second process based on the real input value, the first process is a process to be monitored, and the first process and the second process adopt the same calculation logic;
the processing unit is used for determining that the internal logic of the first process is correct if the first calculation result is determined to be consistent with the second calculation result, and outputting the first calculation result to the output unit for processing;
the first arbitration unit is used for processing a preset input value based on the first process and the second process to obtain a first arbitration result if the first calculation result is determined to be inconsistent with the second calculation result;
the second arbitration unit is used for starting a third process to process the real input value to obtain a second arbitration result if the first calculation result is determined to be inconsistent with the second calculation result; wherein the first arbitration result and the second arbitration result both characterize whether internal logic of the first process is correct.
In an alternative embodiment, an arbiter is running in the electronic device; the first arbitration unit includes:
a first processing subunit, configured to, if it is determined, based on the arbiter, that the first computation result is inconsistent with the second computation result and an external input process of the first process is suspended, input the preset input value output by the arbiter into the first process for processing to obtain a first processing result, and input the preset input value output by the arbiter into the second process for processing to obtain a second processing result;
a first determining subunit, configured to determine, based on the arbiter according to the first processing result, the second processing result, and a preset processing result pre-stored by the arbiter, the first arbitration result; and the preset processing result is a processing result corresponding to the preset input value.
In an optional embodiment, the first determining subunit includes:
the first processing module is used for determining that the first arbitration result represents that the internal logic of the first process is correct and outputting the first calculation result to an output unit for processing if the first processing result is determined to be consistent with the preset processing result and the second processing result is determined to be inconsistent with the preset processing result based on the arbiter, recovering the external input process of the first process and restarting the second process;
a second processing module, configured to determine that the first arbitration result represents an internal logic error of the first process and discard the first calculation result and the second calculation if it is determined that the first processing result and the second processing result are both consistent with the preset processing result or that the first processing result and the second processing result are both inconsistent with the preset processing result based on the arbiter; restarting the first process and the second process;
a third processing module, configured to determine that the first arbitration result represents an internal logic error of the first process and output the second calculation result to an output unit for processing if it is determined, based on the arbiter, that the first processing result is inconsistent with the preset processing result and the second processing result is consistent with the preset processing result; restarting the first process.
In an alternative embodiment, an arbiter is running in the electronic device; the second arbitration unit includes:
an obtaining subunit, configured to obtain the true input value based on the arbiter if it is determined that the first calculation result is inconsistent with the second calculation result based on the arbiter;
a start promoter unit for starting the third process based on the arbiter;
the second processing subunit is configured to process, in the arbiter, the real input value based on the third process to obtain a third calculation result;
a second determining subunit, configured to determine the second arbitration result based on the arbiter according to the first calculation result, the second calculation result, and the third calculation result.
In an optional embodiment, the second determining subunit includes:
the fourth processing module is used for determining that the second arbitration result represents that the internal logic of the first process is correct if the first calculation result is determined to be consistent with the third calculation result based on the arbiter, and outputting the first calculation result to an output unit for processing; restoring the external input process of the first process and restarting the second process;
a fifth processing module, configured to determine that the second arbitration result represents an internal logic error of the first process and output the second calculation result to an output unit for processing if it is determined that the second calculation result is consistent with the third calculation result based on the arbiter; restarting the first process;
a sixth processing module, configured to determine that the second arbitration result represents an internal logic error of the first process and output the third calculation result to an output unit for processing if it is determined, based on the arbiter, that the first calculation result and the second calculation result are both inconsistent with the third calculation result; restarting the first process and the second process.
In an alternative embodiment, an arbiter is running in the electronic device; the processing unit includes:
a third determining subunit, configured to determine, based on the arbiter, that the internal logic of the first process is correct if it is determined, based on the arbiter, that the first calculation result is consistent with the second calculation result;
and the output subunit is used for outputting the first calculation result to an output unit for processing based on the arbiter.
In an optional embodiment, the first calculation result and the second calculation result include the same unique identifier; the same unique identifier is used for representing that the first calculation result and the second calculation result are obtained by the same processing task.
In a third aspect, the present application provides an electronic device, comprising: a memory, a processor;
a memory; a memory for storing the processor-executable instructions;
wherein the processor is configured to perform the method of the first aspect.
In a fourth aspect, the present application provides a computer-readable storage medium having stored thereon computer-executable instructions for implementing the method according to the first aspect when executed by a processor.
In a fifth aspect, the present application provides a computer program product comprising a computer program which, when executed by a processor, implements the method according to the first aspect.
The method, the device and the equipment for monitoring the process are applied to the technical field of computers, when a first process to be monitored calculates a real input value based on internal logic, a second process also calculates based on the same real input value and the same internal logic, and the electronic equipment obtains a first calculation result obtained by calculating the first process and a second calculation result obtained by calculating the second process; if the first calculation result is consistent with the second calculation result, the internal logic of the first process is determined to be correct, and the first calculation result is output to an output unit for processing; if the first calculation result is not consistent with the second calculation result, entering an arbitration process: the first process and the second process are respectively processed based on the same preset input value, and a first arbitration result is obtained by comparing and analyzing a processing result of the first process, a processing result of the second process and a preset output value; or, a third process is started to process the real input value, the calculation result of the third process is compared with the first calculation result and the second calculation result to obtain a second arbitration result, and whether the internal logic of the first process is correct or not is judged.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and together with the description, serve to explain the principles of the application.
Fig. 1 is a flowchart of a process monitoring method according to an embodiment of the present application;
fig. 2 is a flowchart of another process monitoring method according to an embodiment of the present application;
fig. 3 is a schematic diagram of a process monitoring apparatus according to an embodiment of the present application;
FIG. 4 is a schematic diagram of another process monitoring apparatus according to an embodiment of the present application;
fig. 5 is a schematic structural diagram of an electronic device according to an embodiment of the present disclosure;
fig. 6 is a block diagram of a terminal device according to an embodiment of the present application.
With the above figures, there are shown specific embodiments of the present application, which will be described in more detail below. These drawings and written description are not intended to limit the scope of the inventive concepts in any manner, but rather to illustrate the inventive concepts to those skilled in the art by reference to specific embodiments.
Detailed Description
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.
An operating system is installed on an electronic device such as a computer, and in the running process of the operating system, in response to the requirement of a user, a process is often required to be started, and file reading and writing, data calculation and the like are performed. If the state of the process is found to be abnormal, the process is processed in time so as to avoid wasting computer resources and influencing the working efficiency.
In one example, monitoring of the state of a process is typically accomplished using a monitoring tool. For example, in a Linux operating system, the status of a process is generally monitored in real time by using an inotify tool. Before the process is started, the inotify is registered in the inotify to prompt that the process needs to be monitored, in the working process of the process, the inotify can acquire the state of the process in real time, such as running, waiting, resting and the like, and when the acquired process is not in any one of the three normal states, the calculation process is determined to have an error.
However, when the process is in a normal state and the computation logic in the process is incorrect, the process may compute the input information according to the incorrect computation logic, and then output an incorrect computation result. The error cannot be monitored by the monitoring tool, and subsequent work processing is performed based on the wrong calculation result, which may cause many problems of the electronic equipment, and the electronic equipment cannot work normally, even cause immeasurable loss.
The method, the device and the equipment for process monitoring provided by the embodiment of the application aim to solve the technical problems in the prior art.
The following describes the technical solutions of the present application and how to solve the above technical problems with specific embodiments. The following several specific embodiments may be combined with each other, and details of the same or similar concepts or processes may not be repeated in some embodiments. Embodiments of the present application will be described below with reference to the accompanying drawings.
Fig. 1 is a flowchart of a process monitoring method provided in an embodiment of the present application, where the method is applied to an electronic device, and as shown in fig. 1, the method includes:
101. acquiring a first calculation result of a first process and a second calculation result of a second process; the first calculation result is obtained by processing the first process based on the real input value, the second calculation result is obtained by processing the second process based on the real input value, the first process is a process to be monitored, and the first process and the second process adopt the same calculation logic.
Illustratively, when a first process is started and a real input value is input, the first process to be monitored independently calculates the input value, namely the real input value, based on internal calculation logic, and simultaneously a second process independently calculates the input value, namely the real input value, based on the same real input value and the same calculation logic, and after the two processes respectively independently calculate to obtain calculation results, the electronic device obtains a first calculation result calculated by the first process and a second calculation result calculated by the second process. The second process is actively created for the electronic device to monitor the first process.
102. And if the first calculation result is consistent with the second calculation result, determining that the internal logic of the first process is correct, and outputting the first calculation result to an output unit for processing.
Illustratively, the information contained in the first calculation result calculated by the first process and the information contained in the second calculation result calculated by the second process are compared and analyzed, if the information contained in the first calculation result and the information contained in the second calculation result are consistent, the first calculation result is considered to be verified, the first calculation result is determined to be correct and effective, based on the judgment, the calculation logic inside the first process is further determined to be correct, and the first calculation result is output to the output unit for processing.
103. If the first calculation result is determined to be inconsistent with the second calculation result, processing a preset input value based on the first process and the second process to obtain a first arbitration result, or starting a third process to process a real input value to obtain a second arbitration result; and the first arbitration result and the second arbitration result both represent whether the internal logic of the first process is correct or not.
Illustratively, information contained in a first calculation result calculated by a first process and information contained in a second calculation result calculated by a second process are compared and analyzed, if the information contained in the first calculation result and the information contained in the second calculation result are inconsistent, whether the first calculation result is correct or not cannot be determined, and similarly, whether the second calculation result is correct or not cannot be determined, and further whether a calculation logic inside the first process is correct or not cannot be determined. At this time, an arbitration flow is entered: the first arbitration mode is that a first process and a second process are respectively processed based on the same preset input value, the processing result of the first process and the processing result of the second process are respectively obtained, and the two processing results are compared and analyzed with a preset output value to obtain a first arbitration result for judging whether the computational logic in the first process is correct or not; or, adopting a second arbitration mode: and starting another process, namely a third process, processing and calculating the real input value, acquiring a calculation result of the third process, and comparing and analyzing the calculation result of the third process with the information contained in the first calculation result and the second calculation result to obtain a second arbitration result for judging whether the calculation logic in the first process is correct or not.
In this embodiment, when a first process to be monitored calculates a real input value based on an internal calculation logic, a second process is started to calculate based on the same real input value and the same calculation logic, and the electronic device obtains a first calculation result calculated by the first process and a second calculation result calculated by the second process; if the first calculation result is consistent with the second calculation result, the calculation logic inside the first process is determined to be correct, and the first calculation result is output to the output unit for processing; if the first calculation result is not consistent with the second calculation result, entering an arbitration process: the first arbitration method is: indicating the first process and the second process to be processed based on the same preset input value respectively, and obtaining a first arbitration result by comparing and analyzing a processing result of the first process, a processing result of the second process and a preset output value; or, adopting a second arbitration mode: and starting a third process to process the real input value, and comparing and analyzing the calculation result of the third process with the first calculation result and the second calculation result to obtain a second arbitration result. Wherein the first arbitration result or the second arbitration result determines whether the internal logic of the first process is correct. In the process, the correctness of the calculation logic in the process is judged and detected by analyzing and judging the correctness of the first calculation result.
Fig. 2 is a flowchart of another process monitoring method provided in an embodiment of the present application, where the method is applied to an electronic device, and as shown in fig. 2, the method includes:
201. acquiring a first calculation result of a first process and a second calculation result of a second process; the first calculation result is obtained by processing the first process based on the real input value, the second calculation result is obtained by processing the second process based on the real input value, the first process is a process to be monitored, and the first process and the second process adopt the same calculation logic.
In one example, the first calculation result and the second calculation result include the same unique identifier; the same unique identifier is used for representing that the first calculation result and the second calculation result are obtained by the same processing task.
Illustratively, when a first process is started and a real input value is input, the first process to be monitored independently calculates the input value, namely the real input value, based on internal calculation logic, and simultaneously a second process independently calculates the input value, namely the real input value, based on the same real input value and the same calculation logic, and after the two processes respectively independently calculate to obtain calculation results, the electronic device obtains a first calculation result calculated by the first process and a second calculation result calculated by the second process. The first calculation result and the second calculation result contain the same identification. This is because a plurality of processes executing different computing tasks may be simultaneously run in the electronic device, and further, computing results of a plurality of computing tasks exist, and for the convenience of identification, it is necessary to give the same identifier to the first computing result and the second computing result.
202. The electronic equipment runs with an arbiter, if the first calculation result is determined to be consistent with the second calculation result based on the arbiter, the internal logic of the first process is determined to be correct based on the arbiter, and the first calculation result is output to the output unit for processing based on the arbiter.
Illustratively, the arbiter is used for comparing and analyzing information contained in a first calculation result calculated by the first process and information contained in a second calculation result calculated by the second process, if the information contained in the first calculation result and the information contained in the second calculation result are consistent, the first calculation result is considered to be verified, the first calculation result is determined to be correct and valid, based on the judgment, the calculation logic inside the first process is further determined to be correct, and the first calculation result is output to the output unit for processing. The arbiter runs in the electronic device and is used for analyzing and judging the validity of the first calculation result and the second calculation result and judging the correctness of the calculation logic in the first process.
203. If the first calculation result is determined to be inconsistent with the second calculation result based on the arbiter, the external input process of the first process is suspended, the preset input value output by the arbiter is input into the first process for processing to obtain a first processing result, and the preset input value output by the arbiter is input into the second process for processing to obtain a second processing result.
Illustratively, if the first calculation result and the second calculation result are found to be inconsistent based on the judgment analysis of the arbiter performed on the first calculation result and the second calculation result, it cannot be determined whether the first calculation result is correct, and similarly, it cannot be determined whether the second calculation result is correct, and further it cannot be determined whether the calculation logic inside the first process is correct, in this case, if the first process continues to receive the external input value, the calculation is performed based on the calculation logic whose correctness is unknown, and the correctness of the obtained calculation result cannot be guaranteed, so the external input process of the first process is suspended, and in order to arbitrate and judge the correctness of the first calculation result, the second calculation result, and the calculation logic inside the first process, the first process and the second process are respectively performed based on the same preset input value, and respectively acquiring a first processing result of the first process and a second processing result of the second process, wherein the preset input value is pre-stored in the arbiter, and a correct preset processing result corresponding to the preset input value is also stored.
204. Determining a first arbitration result based on the arbiter according to the first processing result, the second processing result and a preset processing result prestored by the arbiter; and the preset processing result is a processing result corresponding to the preset input value.
In one example, step 204 specifically includes the following steps:
if the first processing result is determined to be consistent with the preset processing result and the second processing result is determined to be inconsistent with the preset processing result based on the arbiter, determining that the first arbitration result represents that the internal logic of the first process is correct, and outputting the first calculation result to the output unit for processing; and restoring the external input process of the first process and restarting the second process.
If the first processing result and the second processing result are determined to be consistent with the preset processing result or the first processing result and the second processing result are determined to be inconsistent with the preset processing result based on the arbiter, determining that the first arbitration result represents an internal logic error of the first process, and discarding the first calculation result and the second calculation; and restarting the first process and the second process.
If the first processing result is determined to be inconsistent with the preset processing result and the second processing result is determined to be consistent with the preset processing result based on the arbiter, determining that the first arbitration result represents an internal logic error of the first process, and outputting the second calculation result to the output unit for processing; the first process is restarted.
Illustratively, the first arbitration result is obtained based on a comparative analysis performed by the arbiter on the first processing result, the second processing result, and information included in the preset processing result, where the first arbitration result indicates whether the internal logic of the first process is correct. Since the first processing result, the second processing result and the preset processing result are compared, there are several possible different comparison results, and the different comparison results correspond to different first arbitration results.
If it is determined that the information included in the first processing result is consistent with the information included in the preset processing result and the information included in the second processing result is inconsistent with the information included in the preset processing result, the first arbitration result determines that the computational logic inside the first process is correct. This is because the preset processing result is determined to be correct, so the first processing result that coincides with the preset processing result is correct, and because the first processing result is obtained based on the calculation logic inside the first process, it is determined that the calculation logic inside the first process is correct. And the first calculation result obtained based on the calculation logic is also correct, so the first calculation result is output to the output unit for processing. And recovering the external input process of the first process, wherein the second processing result is inconsistent with the preset processing result, which indicates that the second process has errors and needs to be restarted.
If it is determined that the information included in the first processing result, the information included in the second processing result, and the information included in the preset processing result are all consistent, or if it is determined that the information included in the first processing result, the information included in the second processing result, and the information included in the preset processing result are all inconsistent, the first arbitration result determines that the computation logic inside the first process is erroneous. The first process and the second process perform calculation based on the same real input value to obtain different first calculation results and second calculation results, but the same first processing results and second processing results are obtained based on the same preset input value, which indicates that the calculation of the first process and the second process has great uncertainty, the calculation logic inside the first process may have errors, the correctness and the validity of the calculation results cannot be ensured, and neither the first calculation results nor the second calculation results can be judged, so the first calculation results and the second calculation results are discarded, and the first process and the second process are restarted.
The first arbitration result determines that the computational logic inside the first process is erroneous if it is determined that the information contained in the first processing result is inconsistent with the information contained in the preset processing result and the information contained in the second processing result is consistent with the information contained in the preset processing result. This is because the preset processing result is determined to be correct, so the first processing result inconsistent with the preset processing result is incorrect, and because the first processing result is obtained based on the calculation logic inside the first process, it is determined that the calculation logic inside the first process is incorrect, and further, the first calculation result obtained based on the calculation logic is also incorrect, and the first process needs to be restarted. And if the second processing is consistent with the preset processing result, the second processing result is correct, and the second processing result and the second calculation result are calculated by the second process, so that the second calculation result is also correct, and the second calculation result is output to the output unit for processing.
205. If it is determined based on the arbiter that the first calculation result is inconsistent with the second calculation result, a true input value is obtained based on the arbiter, and a third process is started based on the arbiter.
Illustratively, if the information contained in the first calculation result and the information contained in the second calculation result are inconsistent based on the judgment and analysis of the first calculation result and the second calculation result performed by the arbiter, it may not be determined whether the first calculation result is correct, and similarly, it may not be determined whether the second calculation result is correct, and further it may not be determined whether the calculation logic inside the first process is correct, and at this time, a third process is started based on the arbiter to perform processing calculation on the same real input value of the first process and the second process.
206. The true input value is processed in the arbiter based on a third process to obtain a third calculation result.
Illustratively, based on a third process started by the arbiter, the same real input value as the first process and the second process is independently processed and calculated, and a third calculation result is obtained.
207. The second arbitration result is determined based on the arbiter as a function of the first calculation result, the second calculation result, and the third calculation result.
In one example, step 207 specifically includes the following steps:
if the first calculation result is determined to be consistent with the third calculation result based on the arbiter, determining that the second arbitration result represents that the internal logic of the first process is correct, and outputting the first calculation result to the output unit for processing; and restoring the external input process of the first process and restarting the second process.
If the second calculation result is determined to be consistent with the third calculation result based on the arbiter, determining that the second arbitration result represents the internal logic error of the first process, and outputting the second calculation result to the output unit for processing; the first process is restarted.
If the first calculation result and the second calculation result are determined to be inconsistent with the third calculation result based on the arbiter, determining that the second arbitration result represents an internal logic error of the first process, and outputting the third calculation result to the output unit for processing; and restarting the first process and the second process.
Illustratively, the third calculation result is compared with the first calculation result and the second calculation result to obtain a second arbitration result. Wherein the second arbitration result indicates whether the internal logic of the first process is correct. Because the first calculation result, the second calculation result and the third calculation result are compared and analyzed, there are several possible different comparison results, and the different comparison results correspond to different first arbitration results.
The second arbitration result determines that the computational logic internal to the first process is correct if it is determined that the information contained in the first computation result is consistent with the information contained in the third computation result. This is because the first calculation result, which coincides with the third result, is correct based on the arbiter considering that the third calculation result is determined to be correct, and the calculation logic inside the first process is judged to be correct because the first calculation result is obtained based on the calculation logic inside the first process. The first calculation result is output to the output unit for processing. And recovering the external input process of the first process, wherein the second processing result is inconsistent with the third calculation result, which indicates that the second process has an error and needs to be restarted.
The second arbitration result determines that the computational logic internal to the first process is erroneous if it is determined that the information contained in the second computation result is consistent with the information contained in the third computation result. This is because the second calculation result, which coincides with the third result, is correct based on the arbiter considering that the third calculation result is determined to be correct, and thus the second calculation result is output to the output unit for processing. And restarting the first process with the error in the internal computing logic.
The second arbitration result determines that the computational logic internal to the first process is erroneous if it is determined that none of the first computation result, the information contained in the second computation result, and the information contained in the third computation result are consistent. This is because the first calculation result and the second calculation result that are inconsistent with the third result are both erroneous based on the arbiter considering that the third calculation result is determined to be correct, and therefore the first calculation result and the second calculation result are discarded.
In this embodiment, if the first calculation result and the second calculation result are found to be consistent based on the judgment and analysis of the arbiter on the first calculation result and the second calculation result, it is determined that the calculation logic inside the first process is correct, and the first calculation result is output to the output unit for processing; if the first calculation result and the second calculation result are found to be inconsistent based on the judgment analysis of the arbiter on the first calculation result and the second calculation result, it cannot be determined whether the first calculation result and the second calculation result are correct, and further it cannot be determined whether the calculation logic inside the first process is correct, at this time, the external input process of the first process is suspended first, and the first calculation result, the second calculation result and the correctness of the internal calculation logic of the first process are judged in an arbitration manner, where the first arbitration manner is: indicating the first process and the second process to be processed based on the same preset input value respectively, and comparing and analyzing a processing result of the first process, a processing result of the second process and a preset processing result to obtain a first arbitration result; or, adopting a second arbitration mode: and starting a third process to process the same real input value, and comparing and analyzing a third calculation result with the first calculation result and the second calculation result to obtain a second arbitration result. Wherein the first arbitration result or the second arbitration result determines whether the internal logic of the first process is correct. In the process, the correctness of the calculation logic in the process is judged and detected by analyzing and judging the correctness of the first calculation result.
Fig. 3 is a schematic diagram of a process monitoring apparatus according to an embodiment of the present application, where the apparatus is applied to an electronic device, and as shown in fig. 3, the apparatus includes:
an acquiring unit 31 configured to acquire a first calculation result of a first process and a second calculation result of a second process; the first calculation result is obtained by processing a first process based on a real input value, the second calculation result is obtained by processing a second process based on the real input value, the first process is a process to be monitored, and the first process and the second process adopt the same calculation logic;
the processing unit 32 is configured to determine that the internal logic of the first process is correct if it is determined that the first calculation result is consistent with the second calculation result, and output the first calculation result to the output unit for processing;
the first arbitration unit 33 is configured to, if it is determined that the first calculation result is inconsistent with the second calculation result, process the preset input value based on the first process and the second process to obtain a first arbitration result;
the second arbitration unit 34 is configured to, if it is determined that the first calculation result is inconsistent with the second calculation result, start a third process to process the real input value to obtain a second arbitration result; and the first arbitration result and the second arbitration result both represent whether the internal logic of the first process is correct or not.
Fig. 4 is a schematic view of another process monitoring apparatus provided in an embodiment of the present application, the apparatus is applied to an electronic device, and based on the embodiment shown in fig. 3, as shown in fig. 4, the apparatus includes:
in one example, an arbiter is running in the electronic device; the first arbitration unit 33 includes:
a first processing subunit 41, configured to, if it is determined based on the arbiter that the first calculation result is inconsistent with the second calculation result and the external input process of the first process is suspended, input the preset input value output by the arbiter into the first process for processing to obtain a first processing result, and input the preset input value output by the arbiter into the second process for processing to obtain a second processing result;
a first determining subunit 42, configured to determine a first arbitration result based on the arbiter according to the first processing result, the second processing result, and a preset processing result pre-stored by the arbiter; and the preset processing result is a processing result corresponding to the preset input value.
In one example, the first determining subunit 42 includes:
the first processing module 421 is configured to determine that the first arbitration result represents that the internal logic of the first process is correct, output the first calculation result to the output unit for processing, recover an external input process of the first process, and restart the second process if it is determined that the first processing result is consistent with the preset processing result and the second processing result is inconsistent with the preset processing result based on the arbiter;
the second processing module 422 is configured to determine that the first arbitration result represents an internal logic error of the first process and discard the first calculation result and the second calculation if it is determined that the first processing result and the second processing result are both consistent with the preset processing result or that the first processing result and the second processing result are both inconsistent with the preset processing result based on the arbiter; restarting the first process and the second process;
a third processing module 433, configured to determine that the first arbitration result represents an internal logic error of the first process and output the second calculation result to the output unit for processing if it is determined, based on the arbiter, that the first processing result is inconsistent with the preset processing result and the second processing result is consistent with the preset processing result; the first process is restarted.
In one example, an arbiter is running in the electronic device; a second arbitration unit 34, comprising:
an obtaining subunit 43, configured to obtain a true input value based on the arbiter if it is determined that the first calculation result is inconsistent with the second calculation result based on the arbiter;
a start promoter unit 44 for starting the third process based on the arbiter;
a second processing subunit 45, configured to process, in the arbiter, the real input value based on a third process, so as to obtain a third calculation result;
a second determining subunit 46, configured to determine a second arbitration result based on the arbiter according to the first calculation result, the second calculation result, and the third calculation result.
In one example, the second determining subunit 46 includes:
a fourth processing module 461, configured to determine that the second arbitration result represents that the internal logic of the first process is correct if it is determined, based on the arbiter, that the first calculation result is consistent with the third calculation result, and output the first calculation result to the output unit for processing; restoring the external input process of the first process and restarting the second process;
a fifth processing module 462, configured to determine that the second arbitration result represents an internal logic error of the first process if it is determined, based on the arbiter, that the second calculation result is consistent with the third calculation result, and output the second calculation result to the output unit for processing; restarting the first process;
a sixth processing module 463, configured to determine that the second arbitration result represents an internal logic error of the first process and output the third calculation result to the output unit for processing if it is determined that the first calculation result and the second calculation result are both inconsistent with the third calculation result based on the arbiter; and restarting the first process and the second process.
In one example, the processing unit 32 includes:
a third determining subunit 47, configured to determine, based on the arbiter, that the internal logic of the first process is correct if it is determined that the first calculation result is consistent with the second calculation result based on the arbiter;
and the output subunit 48 is used for outputting the first calculation result to the output unit for processing based on the arbiter.
In one example, the first calculation result and the second calculation result include the same unique identifier; the same unique identifier is used for representing that the first calculation result and the second calculation result are obtained by the same processing task.
Fig. 5 is a schematic structural diagram of an electronic device according to an embodiment of the present application, and as shown in fig. 5, the electronic device includes: memory 51, processor 52.
A memory 51; a memory for storing instructions executable by processor 52.
Wherein the processor 52 is configured to perform the method as provided in the above embodiments.
Fig. 6 is a block diagram of a terminal device, which may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, an exercise device, a personal digital assistant, etc., according to an embodiment of the present application.
The apparatus 800 may include one or more of the following components: a processing component 802, a memory 804, a power component 806, a multimedia component 808, an audio component 810, an input/output (I/O) interface 812, a sensor component 814, and a communication component 816.
The processing component 802 generally controls overall operation of the device 800, such as operations associated with display, telephone calls, data communications, camera operations, and recording operations. The processing components 802 may include one or more processors 820 to execute instructions to perform all or a portion of the steps of the methods described above. Further, the processing component 802 can include one or more modules that facilitate interaction between the processing component 802 and other components. For example, the processing component 802 can include a multimedia module to facilitate interaction between the multimedia component 808 and the processing component 802.
The memory 804 is configured to store various types of data to support operations at the apparatus 800. Examples of such data include instructions for any application or method operating on device 800, contact data, phonebook data, messages, pictures, videos, and so forth. The memory 804 may be implemented by any type or combination of volatile or non-volatile memory devices such as Static Random Access Memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic or optical disks.
Power components 806 provide power to the various components of device 800. The power components 806 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the apparatus 800.
The multimedia component 808 includes a screen that provides an output interface between the device 800 and the user. In some embodiments, the screen may include a Liquid Crystal Display (LCD) and a Touch Panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive an input signal from a user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundary of a touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 808 includes a front facing camera and/or a rear facing camera. The front camera and/or the rear camera may receive external multimedia data when the device 800 is in an operating mode, such as a shooting mode or a video mode. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.
The audio component 810 is configured to output and/or input audio signals. For example, the audio component 810 includes a Microphone (MIC) configured to receive external audio signals when the apparatus 800 is in an operational mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signals may further be stored in the memory 804 or transmitted via the communication component 816. In some embodiments, audio component 810 also includes a speaker for outputting audio signals.
The I/O interface 812 provides an interface between the processing component 802 and peripheral interface modules, which may be keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to: a home button, a volume button, a start button, and a lock button.
The sensor assembly 814 includes one or more sensors for providing various aspects of state assessment for the device 800. For example, the sensor assembly 814 may detect the open/closed status of the device 800, the relative positioning of the components, such as a display and keypad of the device 800, the sensor assembly 814 may also detect a change in the position of the device 800 or a component of the device 800, the presence or absence of user contact with the device 800, the orientation or acceleration/deceleration of the device 800, and a change in the temperature of the device 800. Sensor assembly 814 may include a proximity sensor configured to detect the presence of a nearby object without any physical contact. The sensor assembly 814 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 814 may also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
The communication component 816 is configured to facilitate communications between the apparatus 800 and other devices in a wired or wireless manner. The device 800 may access a wireless network based on a communication standard, such as WiFi, 2G or 3G, or a combination thereof. In an exemplary embodiment, the communication component 816 receives a broadcast signal or broadcast related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, communications component 816 further includes a Near Field Communications (NFC) module to facilitate short-range communications. For example, the NFC module may be implemented based on Radio Frequency Identification (RFID) technology, infrared data association (IrDA) technology, Ultra Wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
In an exemplary embodiment, the apparatus 800 may be implemented by one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), controllers, micro-controllers, microprocessors or other electronic components for performing the above-described methods.
In an exemplary embodiment, a non-transitory computer-readable storage medium comprising instructions, such as the memory 804 comprising instructions, executable by the processor 820 of the device 800 to perform the above-described method is also provided. For example, the non-transitory computer readable storage medium may be a ROM, a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.
Embodiments of the present application also provide a non-transitory computer-readable storage medium, where instructions in the storage medium, when executed by a processor of an electronic device, enable the electronic device to perform the method provided by the above embodiments.
An embodiment of the present application further provides a computer program product, where the computer program product includes: a computer program, stored in a readable storage medium, from which at least one processor of the electronic device can read the computer program, the at least one processor executing the computer program causing the electronic device to perform the solution provided by any of the embodiments described above.
Other embodiments of the present application will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the invention following, in general, the principles of the application and including such departures from the present disclosure as come within known or customary practice within the art to which the invention pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the application being indicated by the following claims.
It will be understood that the present application is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the application is limited only by the appended claims.

Claims (17)

1. A process monitoring method is applied to an electronic device, and comprises the following steps:
acquiring a first calculation result of a first process and a second calculation result of a second process; the first calculation result is obtained by processing the first process based on a real input value, the second calculation result is obtained by processing the second process based on the real input value, the first process is a process to be monitored, and the first process and the second process adopt the same calculation logic;
if the first calculation result is consistent with the second calculation result, determining that the internal logic of the first process is correct, and outputting the first calculation result to an output unit for processing;
if the first calculation result is determined to be inconsistent with the second calculation result, processing a preset input value based on the first process and the second process to obtain a first arbitration result, or starting a third process to process the real input value to obtain a second arbitration result; wherein the first arbitration result and the second arbitration result both characterize whether internal logic of the first process is correct.
2. The method of claim 1, wherein an arbiter is running in the electronic device; if it is determined that the first calculation result is inconsistent with the second calculation result, processing a preset input value based on the first process and the second process to obtain a first arbitration result, including:
if the first calculation result is determined to be inconsistent with the second calculation result based on the arbiter, suspending an external input process of the first process, inputting the preset input value output by the arbiter into the first process for processing to obtain a first processing result, and inputting the preset input value output by the arbiter into the second process for processing to obtain a second processing result;
determining the first arbitration result based on the arbiter according to the first processing result, the second processing result and a preset processing result prestored by the arbiter; and the preset processing result is a processing result corresponding to the preset input value.
3. The method of claim 2, wherein determining the first arbitration result based on the arbiter according to the first processing result, the second processing result, and a preset processing result pre-stored by the arbiter comprises:
if the first processing result is determined to be consistent with the preset processing result and the second processing result is determined to be inconsistent with the preset processing result based on the arbiter, determining that the first arbitration result represents that the internal logic of the first process is correct, and outputting the first calculation result to an output unit for processing; restoring the external input process of the first process and restarting the second process;
if the first processing result and the second processing result are determined to be consistent with the preset processing result or the first processing result and the second processing result are determined to be inconsistent with the preset processing result based on the arbiter, determining that the first arbitration result represents an internal logic error of the first process, and discarding the first calculation result and the second calculation; restarting the first process and the second process;
if the first processing result is determined to be inconsistent with the preset processing result and the second processing result is determined to be consistent with the preset processing result based on the arbiter, determining that the first arbitration result represents the internal logic error of the first process, and outputting the second calculation result to an output unit for processing; restarting the first process.
4. The method of claim 1, wherein an arbiter is running in the electronic device; if the first calculation result is determined to be inconsistent with the second calculation result, a third process is started to process the real input value to obtain a second arbitration result, and the method comprises the following steps:
if the first calculation result is determined to be inconsistent with the second calculation result based on the arbiter, acquiring the real input value based on the arbiter, and starting the third process based on the arbiter;
processing the real input value in the arbiter based on the third process to obtain a third calculation result;
determining the second arbitration result based on the arbiter as a function of the first calculation result, the second calculation result, and the third calculation result.
5. The method of claim 4, wherein determining the second arbitration result based on the arbiter as a function of the first calculation result, the second calculation result, and the third calculation result comprises:
if the first calculation result is determined to be consistent with the third calculation result based on the arbiter, determining that the second arbitration result represents that the internal logic of the first process is correct, and outputting the first calculation result to an output unit for processing; restoring the external input process of the first process and restarting the second process;
if the second calculation result is determined to be consistent with the third calculation result based on the arbiter, determining that the second arbitration result represents an internal logic error of the first process, and outputting the second calculation result to an output unit for processing; restarting the first process;
if the arbiter determines that the first calculation result and the second calculation result are not consistent with the third calculation result, determining that the second arbitration result represents an internal logic error of the first process, and outputting the third calculation result to an output unit for processing; restarting the first process and the second process.
6. The method of any of claims 1-5, wherein an arbiter is running in the electronic device; if the first calculation result is determined to be consistent with the second calculation result, determining that the internal logic of the first process is correct, and outputting the first calculation result to an output unit for processing, wherein the processing includes:
and if the first calculation result is determined to be consistent with the second calculation result based on the arbiter, determining that the internal logic of the first process is correct based on the arbiter, and outputting the first calculation result to an output unit for processing based on the arbiter.
7. The method of any of claims 1-5, wherein the first and second computation results include a same unique identifier; the same unique identifier is used for representing that the first calculation result and the second calculation result are obtained by the same processing task.
8. A process monitoring apparatus applied to an electronic device, the apparatus comprising:
the device comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring a first calculation result of a first process and a second calculation result of a second process; the first calculation result is obtained by processing the first process based on a real input value, the second calculation result is obtained by processing the second process based on the real input value, the first process is a process to be monitored, and the first process and the second process adopt the same calculation logic;
the processing unit is used for determining that the internal logic of the first process is correct if the first calculation result is determined to be consistent with the second calculation result, and outputting the first calculation result to the output unit for processing;
the first arbitration unit is used for processing a preset input value based on the first process and the second process to obtain a first arbitration result if the first calculation result is determined to be inconsistent with the second calculation result;
the second arbitration unit is used for starting a third process to process the real input value to obtain a second arbitration result if the first calculation result is determined to be inconsistent with the second calculation result; wherein the first arbitration result and the second arbitration result both characterize whether internal logic of the first process is correct.
9. The apparatus of claim 8, wherein an arbiter is running in the electronic device; the first arbitration unit includes:
a first processing subunit, configured to, if it is determined, based on the arbiter, that the first computation result is inconsistent with the second computation result and an external input process of the first process is suspended, input the preset input value output by the arbiter into the first process for processing to obtain a first processing result, and input the preset input value output by the arbiter into the second process for processing to obtain a second processing result;
a first determining subunit, configured to determine, based on the arbiter according to the first processing result, the second processing result, and a preset processing result pre-stored by the arbiter, the first arbitration result; and the preset processing result is a processing result corresponding to the preset input value.
10. The apparatus of claim 9, wherein the first determining subunit comprises:
the first processing module is used for determining that the first arbitration result represents that the internal logic of the first process is correct and outputting the first calculation result to an output unit for processing if the first processing result is determined to be consistent with the preset processing result and the second processing result is determined to be inconsistent with the preset processing result based on the arbiter, recovering the external input process of the first process and restarting the second process;
a second processing module, configured to determine that the first arbitration result represents an internal logic error of the first process and discard the first calculation result and the second calculation if it is determined that the first processing result and the second processing result are both consistent with the preset processing result or that the first processing result and the second processing result are both inconsistent with the preset processing result based on the arbiter; restarting the first process and the second process;
a third processing module, configured to determine that the first arbitration result represents an internal logic error of the first process and output the second calculation result to an output unit for processing if it is determined, based on the arbiter, that the first processing result is inconsistent with the preset processing result and the second processing result is consistent with the preset processing result; restarting the first process.
11. The apparatus of claim 8, wherein an arbiter is running in the electronic device; the second arbitration unit includes:
an obtaining subunit, configured to obtain the true input value based on the arbiter if it is determined that the first calculation result is inconsistent with the second calculation result based on the arbiter;
a start promoter unit for starting the third process based on the arbiter;
the second processing subunit is configured to process, in the arbiter, the real input value based on the third process to obtain a third calculation result;
a second determining subunit, configured to determine the second arbitration result based on the arbiter according to the first calculation result, the second calculation result, and the third calculation result.
12. The apparatus of claim 11, wherein the second determining subunit comprises:
the fourth processing module is used for determining that the second arbitration result represents that the internal logic of the first process is correct if the first calculation result is determined to be consistent with the third calculation result based on the arbiter, and outputting the first calculation result to an output unit for processing; restoring the external input process of the first process and restarting the second process;
a fifth processing module, configured to determine that the second arbitration result represents an internal logic error of the first process and output the second calculation result to an output unit for processing if it is determined that the second calculation result is consistent with the third calculation result based on the arbiter; restarting the first process;
a sixth processing module, configured to determine that the second arbitration result represents an internal logic error of the first process and output the third calculation result to an output unit for processing if it is determined, based on the arbiter, that the first calculation result and the second calculation result are both inconsistent with the third calculation result; restarting the first process and the second process.
13. The apparatus according to any one of claims 8-12, wherein an arbiter is running in the electronic device; the processing unit includes:
a third determining subunit, configured to determine, based on the arbiter, that the internal logic of the first process is correct if it is determined, based on the arbiter, that the first calculation result is consistent with the second calculation result;
and the output subunit is used for outputting the first calculation result to an output unit for processing based on the arbiter.
14. The apparatus of any of claims 8-12, wherein the first and second computation results include a same unique identifier; the same unique identifier is used for representing that the first calculation result and the second calculation result are obtained by the same processing task.
15. An electronic device, characterized in that the electronic device comprises: a memory, a processor;
a memory; a memory for storing the processor-executable instructions;
wherein the processor is configured to perform the method of any one of claims 1-7.
16. A computer-readable storage medium having computer-executable instructions stored thereon, which when executed by a processor, perform the method of any one of claims 1-7.
17. A computer program product, characterized in that it comprises a computer program which, when being executed by a processor, carries out the method of any one of claims 1-7.
CN202111104025.2A 2021-09-22 2021-09-22 Process monitoring method, device and equipment Active CN113568816B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111104025.2A CN113568816B (en) 2021-09-22 2021-09-22 Process monitoring method, device and equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111104025.2A CN113568816B (en) 2021-09-22 2021-09-22 Process monitoring method, device and equipment

Publications (2)

Publication Number Publication Date
CN113568816A true CN113568816A (en) 2021-10-29
CN113568816B CN113568816B (en) 2022-01-25

Family

ID=78173858

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111104025.2A Active CN113568816B (en) 2021-09-22 2021-09-22 Process monitoring method, device and equipment

Country Status (1)

Country Link
CN (1) CN113568816B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5530802A (en) * 1994-06-22 1996-06-25 At&T Corp. Input sequence reordering method for software failure recovery
US7797702B1 (en) * 2005-02-22 2010-09-14 Symantec Corporation Preventing execution of remotely injected threads
CN103761172A (en) * 2013-12-29 2014-04-30 哈尔滨工业大学 Hardware fault diagnosis system based on neural network
CN106991070A (en) * 2016-10-11 2017-07-28 阿里巴巴集团控股有限公司 Real-time computing technique and device
CN111841019A (en) * 2020-06-23 2020-10-30 腾讯科技(成都)有限公司 Game application security verification method, device, equipment and storage medium
US20200364331A1 (en) * 2018-01-31 2020-11-19 Hewlett-Packard Development Company, L.P. Process verification

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5530802A (en) * 1994-06-22 1996-06-25 At&T Corp. Input sequence reordering method for software failure recovery
US7797702B1 (en) * 2005-02-22 2010-09-14 Symantec Corporation Preventing execution of remotely injected threads
CN103761172A (en) * 2013-12-29 2014-04-30 哈尔滨工业大学 Hardware fault diagnosis system based on neural network
CN106991070A (en) * 2016-10-11 2017-07-28 阿里巴巴集团控股有限公司 Real-time computing technique and device
US20200364331A1 (en) * 2018-01-31 2020-11-19 Hewlett-Packard Development Company, L.P. Process verification
CN111841019A (en) * 2020-06-23 2020-10-30 腾讯科技(成都)有限公司 Game application security verification method, device, equipment and storage medium

Also Published As

Publication number Publication date
CN113568816B (en) 2022-01-25

Similar Documents

Publication Publication Date Title
EP3418885B1 (en) Method and device for calling software development kit
US9800666B2 (en) Method and client terminal for remote assistance
EP3099063A1 (en) Video communication method and apparatus
EP3163411A1 (en) Method, device and apparatus for application switching
US10610152B2 (en) Sleep state detection method, apparatus and system
WO2017071050A1 (en) Mistaken touch prevention method and device for terminal with touch screen
EP3136216A1 (en) Method for controlling mobile terminal and mobile terminal
EP3163884A1 (en) Image acquiring method and apparatus, computer program and recording medium
EP2990949B1 (en) Methods and devices for backing up file
CN109284149B (en) Method and device for starting application program
EP3261046A1 (en) Method and device for image processing
EP3035172A1 (en) Method and device for activating operation state of mobile terminal
CN116069612A (en) Abnormality positioning method and device and electronic equipment
CN113515430A (en) Method, device and equipment for monitoring state of process
CN110213062B (en) Method and device for processing message
CN113568816B (en) Process monitoring method, device and equipment
EP3460717A1 (en) Method, apparatus, terminal, and computer-readable storage medium for processing fingerprints
US10671827B2 (en) Method and device for fingerprint verification
CN106354595B (en) Mobile terminal, hardware component state detection method and device
CN109976563B (en) Misoperation determining method and device and touch operation response method and device
CN110502714B (en) Information detection method and device, electronic equipment and storage medium
CN111079467B (en) Fingerprint identification method and device, electronic equipment and storage medium
CN109144587B (en) Terminal control method, device, equipment and storage medium
CN113064739A (en) Inter-thread communication method and device, electronic equipment and storage medium
CN107526683B (en) Method and device for detecting functional redundancy of application program and storage medium

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