一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

进程监控方法、装置和设备与流程

2021-10-29 22:54:00 来源:中国专利 TAG:装置 进程 监控 计算机 方法


1.本技术涉及计算机技术领域,尤其涉及一种进程监控方法、装置和设备。


背景技术:

2.在计算机等设备上安装有操作系统,在操作系统的运行过程中,响应于用户的需求,常常需要启动进程,在进程的工作过程中,需要对进程的状态进行监控。
3.现有技术中,通常利用监测工具实现对进程的状态的监控。例如在linux操作系统中,一般是利用inotify这一工具实现对进程的状态的监控。
4.然而现有技术中,采用现有的监测工具对进程进行监控时,只能检测到进程的状态是否正确,但是无法对进程的内部逻辑是否正确进行检测和分析。


技术实现要素:

5.本技术实施例提供一种进程监控方法方法、装置和设备,用以解决无法对进程的内部逻辑是否正确进行检测和分析的问题。
6.第一方面,本技术提供一种进程监控方法,所述方法应用于电子设备,所述方法包括:获取第一进程的第一计算结果和第二进程的第二计算结果;其中,所述第一计算结果为所述第一进程基于真实输入值处理所得到,所述第二计算结果为所述第二进程基于所述真实输入值处理所得到,所述第一进程为待监控的进程,所述第一进程和所述第二进程采用相同的计算逻辑;若确定所述第一计算结果与所述第二计算结果一致,则确定所述第一进程的内部逻辑正确,并将所述第一计算结果输出给输出单元进行处理;若确定所述第一计算结果与所述第二计算结果不一致,则基于所述第一进程和所述第二进程对预设输入值进行处理得到第一仲裁结果,或者,启动第三进程对所述真实输入值进行处理得到第二仲裁结果;其中,所述第一仲裁结果、所述第二仲裁结果均表征所述第一进程的内部逻辑是否正确。
7.在可选的一种实施方式中,所述电子设备中运行有仲裁器;若确定所述第一计算结果与所述第二计算结果不一致,则基于所述第一进程和所述第二进程对预设输入值进行处理得到第一仲裁结果,包括:若基于所述仲裁器确定所述第一计算结果与所述第二计算结果不一致,则暂停所述第一进程的外部输入过程,并将所述仲裁器输出的所述预设输入值输入至所述第一进程中进行处理,得到第一处理结果,且将所述仲裁器输出的所述预设输入值输入至所述第二进程中进行处理,得到第二处理结果;基于所述仲裁器依据所述第一处理结果、所述第二处理结果以及所述仲裁器所预存的预设处理结果,确定所述第一仲裁结果;其中,所述预设处理结果为与所述预设输入值对应的处理结果。
8.在可选的一种实施方式中,基于所述仲裁器依据所述第一处理结果、所述第二处理结果以及所述仲裁器所预存的预设处理结果,确定所述第一仲裁结果,包括:若基于所述仲裁器确定所述第一处理结果与所述预设处理结果一致、且所述第二处理结果与所述预设处理结果不一致,则确定所述第一仲裁结果表征所述第一进程的内部逻辑正确,并将所述第一计算结果输出给输出单元进行处理;恢复所述第一进程的外部输入过程,重启所述第二进程;若基于所述仲裁器确定所述第一处理结果、所述第二处理结果均与所述预设处理结果一致,或者,确定所述第一处理结果、所述第二处理结果均与所述预设处理结果不一致,则确定所述第一仲裁结果表征所述第一进程的内部逻辑错误,并丢弃所述第一计算结果和所述第二计算;重启所述第一进程和所述第二进程;若基于所述仲裁器确定所述第一处理结果与所述预设处理结果不一致、且所述第二处理结果与所述预设处理结果一致,则确定所述第一仲裁结果表征所述第一进程的内部逻辑错误,并将所述第二计算结果输出给输出单元进行处理;重启所述第一进程。
9.在可选的一种实施方式中,所述电子设备中运行有仲裁器;若确定所述第一计算结果与所述第二计算结果不一致,则启动第三进程对所述真实输入值进行处理得到第二仲裁结果,包括:若基于所述仲裁器确定所述第一计算结果与所述第二计算结果不一致,则基于所述仲裁器获取所述真实输入值,并基于所述仲裁器启动所述第三进程;在所述仲裁器中基于所述第三进程对所述真实输入值进行处理,得到第三计算结果;基于所述仲裁器依据所述第一计算结果、所述第二计算结果以及所述第三计算结果,确定所述第二仲裁结果。
10.在可选的一种实施方式中,基于所述仲裁器依据所述第一计算结果、所述第二计算结果以及所述第三计算结果,确定所述第二仲裁结果,包括:若基于所述仲裁器确定所述第一计算结果与所述第三计算结果一致,则确定所述第二仲裁结果表征所述第一进程的内部逻辑正确,并将所述第一计算结果输出给输出单元进行处理;恢复所述第一进程的外部输入过程,重启所述第二进程;若基于所述仲裁器确定所述第二计算结果与所述第三计算结果一致,则确定所述第二仲裁结果表征所述第一进程的内部逻辑错误,并将所述第二计算结果输出给输出单元进行处理;重启所述第一进程;若基于所述仲裁器确定所述第一计算结果、所述第二计算结果均与所述第三计算结果不一致,则确定所述第二仲裁结果表征所述第一进程的内部逻辑错误,并将所述第三计算结果输出给输出单元进行处理;重启所述第一进程和所述第二进程。
11.在可选的一种实施方式中,所述电子设备中运行有仲裁器;若确定所述第一计算结果与所述第二计算结果一致,则确定所述第一进程的内部逻辑正确,并将所述第一计算结果输出给输出单元进行处理,包括:若基于所述仲裁器确定所述第一计算结果与所述第二计算结果一致,则基于所述仲裁器确定所述第一进程的内部逻辑正确,并基于所述仲裁器将所述第一计算结果输出给输出单元进行处理。
12.在可选的一种实施方式中,所述第一计算结果和所述第二计算结果中包括相同的唯一标识;所述相同的唯一标识用于表征所述第一计算结果和所述第二计算结果为同一处理任务所得到的。
13.第二方面,本技术提供一种进程监控装置,所述装置应用于电子设备,所述装置包括:获取单元,用于获取第一进程的第一计算结果和第二进程的第二计算结果;其中,所述第一计算结果为所述第一进程基于真实输入值处理所得到,所述第二计算结果为所述第二进程基于所述真实输入值处理所得到,所述第一进程为待监控的进程,所述第一进程和所述第二进程采用相同的计算逻辑;处理单元,用于若确定所述第一计算结果与所述第二计算结果一致,则确定所述第一进程的内部逻辑正确,并将所述第一计算结果输出给输出单元进行处理;第一仲裁单元,用于若确定所述第一计算结果与所述第二计算结果不一致,则基于所述第一进程和所述第二进程对预设输入值进行处理得到第一仲裁结果;第二仲裁单元,用于若确定所述第一计算结果与所述第二计算结果不一致,则启动第三进程对所述真实输入值进行处理得到第二仲裁结果;其中,所述第一仲裁结果、所述第二仲裁结果均表征所述第一进程的内部逻辑是否正确。
14.在可选的一种实施方式中,所述电子设备中运行有仲裁器;所述第一仲裁单元,包括:第一处理子单元,用于若基于所述仲裁器确定所述第一计算结果与所述第二计算结果不一致,暂停所述第一进程的外部输入过程,则将所述仲裁器输出的所述预设输入值输入至所述第一进程中进行处理,得到第一处理结果,且将所述仲裁器输出的所述预设输入值输入至所述第二进程中进行处理,得到第二处理结果;第一确定子单元,用于基于所述仲裁器依据所述第一处理结果、所述第二处理结果以及所述仲裁器所预存的预设处理结果,确定所述第一仲裁结果;其中,所述预设处理结果为与所述预设输入值对应的处理结果。
15.在可选的一种实施方式中,所述第一确定子单元,包括:第一处理模块,用于若基于所述仲裁器确定所述第一处理结果与所述预设处理结果一致、且所述第二处理结果与所述预设处理结果不一致,则确定所述第一仲裁结果表征所述第一进程的内部逻辑正确,并将所述第一计算结果输出给输出单元进行处理,恢复所述第一进程的外部输入过程,重启所述第二进程;第二处理模块,用于若基于所述仲裁器确定所述第一处理结果、所述第二处理结果均与所述预设处理结果一致,或者,确定所述第一处理结果、所述第二处理结果均与所述预设处理结果不一致,则确定所述第一仲裁结果表征所述第一进程的内部逻辑错误,并丢弃所述第一计算结果和所述第二计算;重启所述第一进程和所述第二进程;第三处理模块,用于若基于所述仲裁器确定所述第一处理结果与所述预设处理结果不一致、且所述第二处理结果与所述预设处理结果一致,则确定所述第一仲裁结果表征所述第一进程的内部逻辑错误,并将所述第二计算结果输出给输出单元进行处理;重启所述第一进程。
16.在可选的一种实施方式中,所述电子设备中运行有仲裁器;所述第二仲裁单元,包
括:获取子单元,用于若基于所述仲裁器确定所述第一计算结果与所述第二计算结果不一致,则基于所述仲裁器获取所述真实输入值;启动子单元,用于基于所述仲裁器启动所述第三进程;第二处理子单元,用于在所述仲裁器中基于所述第三进程对所述真实输入值进行处理,得到第三计算结果;第二确定子单元,用于基于所述仲裁器依据所述第一计算结果、所述第二计算结果以及所述第三计算结果,确定所述第二仲裁结果。
17.在可选的一种实施方式中,所述第二确定子单元,包括:第四处理模块,用于若基于所述仲裁器确定所述第一计算结果与所述第三计算结果一致,则确定所述第二仲裁结果表征所述第一进程的内部逻辑正确,并将所述第一计算结果输出给输出单元进行处理;恢复所述第一进程的外部输入过程,重启所述第二进程;第五处理模块,用于若基于所述仲裁器确定所述第二计算结果与所述第三计算结果一致,则确定所述第二仲裁结果表征所述第一进程的内部逻辑错误,并将所述第二计算结果输出给输出单元进行处理;重启所述第一进程;第六处理模块,用于若基于所述仲裁器确定所述第一计算结果、所述第二计算结果均与所述第三计算结果不一致,则确定所述第二仲裁结果表征所述第一进程的内部逻辑错误,并将所述第三计算结果输出给输出单元进行处理;重启所述第一进程和所述第二进程。
18.在可选的一种实施方式中,所述电子设备中运行有仲裁器;所述处理单元包括:第三确定子单元,用于若基于所述仲裁器确定所述第一计算结果与所述第二计算结果一致,则基于所述仲裁器确定所述第一进程的内部逻辑正确;输出子单元,用于基于所述仲裁器将所述第一计算结果输出给输出单元进行处理。
19.在可选的一种实施方式中,所述第一计算结果和所述第二计算结果中包括相同的唯一标识;所述相同的唯一标识用于表征所述第一计算结果和所述第二计算结果为同一处理任务所得到的。
20.第三方面,本技术提供一种电子设备,所述电子设备包括:存储器,处理器;存储器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行如第一方面所述的方法。
21.第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面所述的方法。
22.第五方面,本技术提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如第一方面所述的方法。
23.本技术实施例提供的进程监控方法方法、装置和设备,应用于计算机技术领域,待监控的第一进程基于内部逻辑对真实输入值进行计算时,同时第二进程也基于相同的真实输入值、相同的内部逻辑进行计算,电子设备获取到第一进程计算得到的第一计算结果,第二进程计算得到的第二计算结果;若确定第一计算结果与第二计算结果一致,则确定第一
进程的内部逻辑正确,并将第一计算结果输出给输出单元进行处理;若确定第一计算结果与第二计算结果不一致,则进入仲裁流程:第一进程与第二进程分别基于同一个预设输入值进行处理,通过将第一进程的处理结果、第二进程的处理结果与预设的输出值进行对比分析,得到第一仲裁结果;或者,启动第三进程对真实输入值进行处理,将第三进程的计算结果与第一计算结果、第二计算结果进行对比分析,得到第二仲裁结果,判断第一进程的内部逻辑是否正确这个过程实现了对进程的内部逻辑是否正确的检测和分析。
附图说明
24.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
25.图1为本技术实施例提供的一种进程监控方法的流程图;图2为本技术实施例提供的另一种进程监控方法的流程图;图3为本技术实施例提供的一种进程监控装置的示意图;图4为本技术实施例提供的另一种进程监控装置的示意图;图5为本技术实施例提供的一种电子设备的结构示意图;图6是本技术实施例提供的一种终端设备的框图。
26.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
27.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
28.在计算机等电子设备上安装有操作系统,在操作系统的运行过程中,响应于用户的需求,常常需要启动进程,进行文件的读写、数据的计算等等,在进程的工作过程中,需要对进程的状态进行实时的监控,以确定进程的状态是否正常。若发现进程的状态不正常,对该进程及时进行处理,以免造成对计算机资源的浪费,影响工作效率。
29.一个示例中,通常利用监测工具实现对进程的状态的监控。例如在linux操作系统中,一般是利用inotify这一工具实现对进程的状态的实时监控。进程启动之前先在inotify中进行注册登记,以提示该进程需要进行监控,在进程的工作过程中,inotify可以实时的获取到进程的状态,例如正在运行、正在等待、正在休息等状态,当获取到进程不处于以上三种正常状态中的任意一种状态时,则认定该计算进程发生了错误。
30.然而当进程处于正常状态,但进程内部计算逻辑错误时,进程会依据错误的计算逻辑对输入的信息进行计算,进而输出错误的计算结果。而这一错误无法被监测工具监测到,基于错误的计算结果进行后续的工作处理,可能会导致导致电子设备出现很多的问题,无法进行正常的工作,甚至造成不可估量的损失。
31.本技术实施例提供的进程监控的方法、装置和设备,旨在解决现有技术的如上技
术问题。
32.下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
33.图1为本技术实施例提供的一种进程监控方法的流程图,该方法应用于电子设备,如图1所示,该方法包括:101、获取第一进程的第一计算结果以及第二进程的第二计算结果;其中,第一计算结果为第一进程基于真实输入值处理所得到,第二计算结果为第二进程基于真实输入值处理所得到,第一进程为待监控的进程,第一进程和第二进程采用相同的计算逻辑。
34.示例性地,当启动第一进程,并且输入一个真实的输入值后,待监控的第一进程基于内部的计算逻辑对该输入值,即真实输入值,进行独立计算,同时第二进程也基于相同的真实输入值、相同的计算逻辑进行独立计算,两个进程分别进行独立计算得出计算结果后,电子设备获取到第一进程计算得到的第一计算结果,第二进程计算得到的第二计算结果。其中,第二进程为电子设备为监控监测第一进程而主动创建的。
35.102、若确定第一计算结果与第二计算结果一致,则确定第一进程的内部逻辑正确,并将第一计算结果输出给输出单元进行处理。
36.示例性地,对第一进程计算得到的第一计算结果,第二进程计算得到的第二计算结果中包含的信息进行对比分析,如果两者所包含的信息一致,则认为第一计算结果经过了验证,确定第一计算结果是正确有效的,基于该判断,进而确定第一进程内部的计算逻辑是正确的,并将第一计算结果输出给输出单元进行处理。
37.103、若确定第一计算结果与第二计算结果不一致,则基于第一进程和第二进程对预设输入值进行处理得到第一仲裁结果,或者,启动第三进程对真实输入值进行处理得到第二仲裁结果;其中,第一仲裁结果、第二仲裁结果均表征第一进程的内部逻辑是否正确。
38.示例性地,对第一进程计算得到的第一计算结果,第二进程计算得到的第二计算结果中包含的信息进行对比分析,如果两者所包含的信息不一致,此时不能确定第一计算结果是否正确,同样的,也不能确定第二计算结果是否正确,进而不能确定第一进程内部的计算逻辑是否正确。此时进入仲裁流程:第一种仲裁方式是令第一进程与第二进程分别基于同一个预设输入值进行处理,分别获取到第一进程的处理结果、第二进程的处理结果,并将两个处理结果与预设的输出值进行对比分析,得到判断第一进程内部的计算逻辑是否正确的第一仲裁结果;或者,采用第二种仲裁方式:启动另一个进程,即第三进程,对该真实输入值进行处理计算,获取到第三进程的计算结果,并将第三进程的计算结果与第一计算结果、第二计算结果中包含的信息进行对比分析,得到判断第一进程内部的计算逻辑是否正确的第二仲裁结果。
39.本实施例中,需要被监控的第一进程基于内部的计算逻辑对真实输入值进行计算时,同时启动第二进程也基于相同的真实输入值、相同的计算逻辑进行计算,电子设备获取到第一进程计算得到的第一计算结果,第二进程计算得到的第二计算结果;若确定第一计算结果与第二计算结果一致,则确定第一进程内部的计算逻辑正确,并将第一计算结果输出给输出单元进行处理;若确定第一计算结果与第二计算结果不一致,则进入仲裁流程:第一种仲裁方式为:指示第一进程与第二进程分别基于同一个预设输入值进行处理,通过将
第一进程的处理结果、第二进程的处理结果与预设的输出值进行对比分析,得到第一仲裁结果;或者,采用第二种仲裁方式:启动第三进程对真实输入值进行处理,将第三进程的计算结果与第一计算结果、第二计算结果进行对比分析,得到第二仲裁结果。其中,第一仲裁结果或第二仲裁结果都判断出了第一进程的内部逻辑是否正确。在这个过程中,通过对第一计算结果的正确性的分析判断,实现了对进程内部的计算逻辑正确与否的判断检测。
40.图2为本技术实施例提供的另一种进程监控方法的流程图,该方法应用于电子设备,如图2所示,该方法包括:201、获取第一进程的第一计算结果以及 第二进程的第二计算结果;其中,第一计算结果为第一进程基于真实输入值处理所得到,第二计算结果为第二进程基于真实输入值处理所得到,第一进程为待监控的进程,第一进程和第二进程采用相同的计算逻辑。
41.一个示例中,第一计算结果和第二计算结果中包括相同的唯一标识;相同的唯一标识用于表征第一计算结果和第二计算结果为同一处理任务所得到的。
42.示例性地,当启动第一进程,并且输入一个真实的输入值后,待监控的第一进程基于内部的计算逻辑对该输入值,即真实输入值,进行独立计算,同时第二进程也基于相同的真实输入值、相同的计算逻辑进行独立计算,两个进程分别进行独立计算得出计算结果后,电子设备获取到第一进程计算得到的第一计算结果,第二进程计算得到的第二计算结果。其中,第一计算结果与第二计算结果包含有相同的标识。这是由于电子设备中可能同时运行着执行不同计算任务的多个进程,进而也存在着多个计算任务的计算结果,为了便于识别,需要赋予第一计算结果与第二计算结果相同的标识。
43.202、电子设备中运行有仲裁器,若基于仲裁器确定第一计算结果与第二计算结果一致,则基于仲裁器确定第一进程的内部逻辑正确,并基于仲裁器将第一计算结果输出给输出单元进行处理。
44.示例性地,基于仲裁器对第一进程计算得到的第一计算结果,第二进程计算得到的第二计算结果中包含的信息进行对比分析,如果两者所包含的信息一致,则认为第一计算结果经过了验证,确定第一计算结果是正确有效的,基于该判断,进而确定第一进程内部的计算逻辑是正确的,并将第一计算结果输出给输出单元进行处理。其中,该仲裁器运行于电子设备中,用于对第一计算结果与第二计算结果的有效性进行分析判断,并对第一进程内部的计算逻辑的正确性进行判断。
45.203、若基于仲裁器确定第一计算结果与第二计算结果不一致,则暂停第一进程的外部输入过程,并将仲裁器输出的预设输入值输入至第一进程中进行处理,得到第一处理结果,且将仲裁器输出的预设输入值输入至第二进程中进行处理,得到第二处理结果。
46.示例性地,如果基于仲裁器对第一计算结果、第二计算结果进行的判断分析,发现第一计算结果,第二计算结果中包含的信息不一致,此时不能确定第一计算结果是否正确,同样的,也不能确定第二计算结果是否正确,进而不能确定第一进程内部的计算逻辑是否正确,在这种情况下,如果第一进程继续接收外部的输入值,基于该正确性未知的计算逻辑进行计算,所得出的计算结果的正确性无法保证,因此对第一进程的外部输入过程进行暂停处理,为了对第一计算结果、第二计算结果以及第一进程的内部计算逻辑的正确性进行仲裁判断,令第一进程与第二进程分别基于同一个预设输入值进行处理,分别获取到第一进程的第一处理结果、第二进程的第二处理结果,其中,该预设输入值是预先存储在该仲裁
器中的,同时存储的还有与该预设输入值对应的、确定正确的预设处理结果。
47.204、基于仲裁器依据第一处理结果、第二处理结果以及仲裁器所预存的预设处理结果,确定第一仲裁结果;其中,预设处理结果为与预设输入值对应的处理结果。
48.一个示例中,步骤204具体包括以下步骤:若基于仲裁器确定第一处理结果与预设处理结果一致、且第二处理结果与预设处理结果不一致,则确定第一仲裁结果表征第一进程的内部逻辑正确,并将第一计算结果输出给输出单元进行处理;恢复第一进程的外部输入过程,重启第二进程。
49.若基于仲裁器确定第一处理结果、第二处理结果均与预设处理结果一致,或者,确定第一处理结果、第二处理结果均与预设处理结果不一致,则确定第一仲裁结果表征第一进程的内部逻辑错误,并丢弃第一计算结果和第二计算;重启第一进程和第二进程。
50.若基于仲裁器确定第一处理结果与预设处理结果不一致、且第二处理结果与预设处理结果一致,则确定第一仲裁结果表征第一进程的内部逻辑错误,并将第二计算结果输出给输出单元进行处理;重启第一进程。
51.示例性地,基于仲裁器对第一处理结果、第二处理结果以及预设处理结果中包含的信息进行的对比分析,得到第一仲裁结果,其中,第一仲裁结果表明了第一进程的内部逻辑是否正确。由于对第一处理结果、第二处理结果、预设处理结果进行对比,会有几种可能的不同的对比结果,不同的对比结果对应着不同的第一仲裁结果。
52.如果确定第一处理结果中包含的信息与预设处理结果中包含的信息一致,并且第二处理结果中包含的信息与预设处理结果中包含的信息不一致,则第一仲裁结果判定第一进程内部的计算逻辑是正确的。这是由于预设处理结果是确定正确的,所以与预设处理结果一致的第一处理结果是正确的,因为第一处理结果是基于第一进程内部的计算逻辑得到的,所以判断第一进程内部的计算逻辑是正确的。进而基于该计算逻辑所得出的第一计算结果也是正确的,因此将第一计算结果输出给输出单元进行处理。并且恢复第一进程的外部输入过程,而第二处理结果与预设处理结果不一致,表明第二进程存在着错误,需要对其进行重启。
53.如果确定第一处理结果中包含的信息、第二处理结果中包含的信息与预设处理结果中包含的信息都一致,或者,如果确定第一处理结果中包含的信息、第二处理结果中包含的信息与预设处理结果中包含的信息都不一致,则第一仲裁结果判定第一进程内部的计算逻辑是错误的。这是由于第一进程与第二进程基于相同的真实输入值进行计算,得出了不相同的第一计算结果与第二计算结果,但是此次基于相同的预设输入值确得出了相同的第一处理结果与第二处理结果,说明第一进程与第二进程的计算存在很大的不确定性,第一进程内部的计算逻辑可能存在错误,是无法保证其计算结果的正确有效性的,对第一计算结果与第二计算结果均无法判断,所以丢弃第一计算结果与第二计算结果,重启第一进程与第二进程。
54.如果确定第一处理结果中包含的信息与预设处理结果中包含的信息不一致,并且第二处理结果中包含的信息与预设处理结果中包含的信息一致,则第一仲裁结果判定第一进程内部的计算逻辑是错误的。这是由于预设处理结果是确定正确的,所以与预设处理结果不一致的第一处理结果是错误的,因为第一处理结果是基于第一进程内部的计算逻辑得到的,所以判断第一进程内部的计算逻辑是错误的,进而基于该计算逻辑所得出的第一计
算结果也是错误的,需要对第一进程进行重启。而第二处理与预设处理结果一致,则第二处理结果是正确的,第二处理结果与第二计算结果都是第二进程计算的,因此第二计算结果也是正确的,因此将第二计算结果输出给输出单元进行处理。
55.205、若基于仲裁器确定第一计算结果与第二计算结果不一致,则基于仲裁器获取真实输入值,并基于仲裁器启动第三进程。
56.示例性地,如果基于仲裁器对第一计算结果、第二计算结果进行的判断分析,发现第一计算结果,第二计算结果中包含的信息不一致,此时不能确定第一计算结果是否正确,同样的,也不能确定第二计算结果是否正确,进而不能确定第一进程内部的计算逻辑是否正确,此时基于仲裁器启动第三进程对第一进程与第二进程相同的真实输入值进行处理计算。
57.206、在仲裁器中基于第三进程对真实输入值进行处理,得到第三计算结果。
58.示例性地,基于仲裁器启动的第三进程,对与第一进程与第二进程相同的真实输入值进行独立的处理计算,得到第三计算结果。
59.207、基于仲裁器依据第一计算结果、第二计算结果以及第三计算结果,确定第二仲裁结果。
60.一个示例中,步骤207具体包括以下步骤:若基于仲裁器确定第一计算结果与第三计算结果一致,则确定第二仲裁结果表征第一进程的内部逻辑正确,并将第一计算结果输出给输出单元进行处理;恢复第一进程的外部输入过程,重启第二进程。
61.若基于仲裁器确定第二计算结果与第三计算结果一致,则确定第二仲裁结果表征第一进程的内部逻辑错误,并将第二计算结果输出给输出单元进行处理;重启第一进程。
62.若基于仲裁器确定第一计算结果、第二计算结果均与第三计算结果不一致,则确定第二仲裁结果表征第一进程的内部逻辑错误,并将第三计算结果输出给输出单元进行处理;重启第一进程和第二进程。
63.示例性地,将第三计算结果与第一计算结果、第二计算结果进行对比分析,得到第二仲裁结果。其中,第二仲裁结果表明了第一进程的内部逻辑是否正确。由于对第一计算结果、第二计算结果、第三计算结果进行对比分析,会有几种可能的不同的对比结果,不同的对比结果对应着不同的第一仲裁结果。
64.如果确定第一计算结果中包含的信息与第三计算结果中包含的信息一致,则第二仲裁结果判定第一进程内部的计算逻辑是正确的。这是由于基于仲裁器认为第三计算结果是确定正确的,所以与第三结果一致的第一计算结果是正确的,因为第一计算结果是基于第一进程内部的计算逻辑得到的,所以判断第一进程内部的计算逻辑是正确的。因此将第一计算结果输出给输出单元进行处理。并且恢复第一进程的外部输入过程,而第二处理结果与第三计算结果不一致,表明第二进程存在着错误,需要对其进行重启。
65.如果确定第二计算结果中包含的信息与第三计算结果中包含的信息一致,则第二仲裁结果判定第一进程内部的计算逻辑是错误的。这是由于基于仲裁器认为第三计算结果是确定正确的,所以与第三结果一致的第二计算结果是正确的,因此将第二计算结果输出给输出单元进行处理。而对内部的计算逻辑存在错误的第一进程进行重启。
66.如果确定第一计算结果、第二计算结果中包含的信息与第三计算结果中包含的信
息都不一致,则第二仲裁结果判定第一进程内部的计算逻辑是错误的。这是由于基于仲裁器认为第三计算结果是确定正确的,所以与第三结果不一致的第一计算结果以及第二计算结果都是错误的,所以丢弃第一计算结果与第二计算结果,因为第一计算结果是基于第一进程内部的计算逻辑得到的,所以判断第一进程内部的计算逻辑是错误的,对第一进程以及第二进程都进行重启处理,并将第三计算结果输出给输出单元进行处理。
67.本实施例中,如果基于仲裁器对第一计算结果、第二计算结果进行的判断分析,发现第一计算结果,第二计算结果中包含的信息一致,则确定第一进程内部的计算逻辑是正确的,并将第一计算结果输出给输出单元进行处理;如果基于仲裁器对第一计算结果、第二计算结果进行的判断分析,发现第一计算结果,第二计算结果中包含的信息不一致,此时不能确定第一计算结果与第二计算结果是否正确,进而不能确定第一进程内部的计算逻辑是否正确,此时先对第一进程的外部输入过程进行暂停处理,对第一计算结果、第二计算结果以及第一进程的内部计算逻辑的正确性进行仲裁判断,第一种仲裁方式为:指示第一进程与第二进程分别基于同一个预设输入值进行处理,通过将第一进程的处理结果、第二进程的处理结果与预设处理结果进行对比分析,得到第一仲裁结果;或者,采用第二种仲裁方式:启动第三进程对相同的真实输入值进行处理,将第三计算结果与第一计算结果、第二计算结果进行对比分析,得到第二仲裁结果。其中,第一仲裁结果或第二仲裁结果都判断出了第一进程的内部逻辑是否正确。在这个过程中,通过对第一计算结果的正确性的分析判断,实现了对进程内部的计算逻辑正确与否的判断检测。
68.图3为本技术实施例提供的一种进程监控装置的示意图,该装置应用于电子设备,如图3所示,该装置包括:获取单元31,用于获取第一进程的第一计算结果和第二进程的第二计算结果;其中,第一计算结果为第一进程基于真实输入值处理所得到,第二计算结果为第二进程基于真实输入值处理所得到,第一进程为待监控的进程,第一进程和第二进程采用相同的计算逻辑;处理单元32,用于若确定第一计算结果与第二计算结果一致,则确定第一进程的内部逻辑正确,并将第一计算结果输出给输出单元进行处理;第一仲裁单元33,用于若确定第一计算结果与第二计算结果不一致,则基于第一进程和第二进程对预设输入值进行处理得到第一仲裁结果;第二仲裁单元34,用于若确定第一计算结果与第二计算结果不一致,则启动第三进程对真实输入值进行处理得到第二仲裁结果;其中,第一仲裁结果、第二仲裁结果均表征第一进程的内部逻辑是否正确。
69.图4为本技术实施例提供的另一种进程监控装置的示意图,该装置应用于电子设备,在图3所示实施例的基础上,如图4所示,该装置包括:一个示例中,电子设备中运行有仲裁器;第一仲裁单元33,包括:第一处理子单元41,用于若基于仲裁器确定第一计算结果与第二计算结果不一致,暂停第一进程的外部输入过程,则将仲裁器输出的预设输入值输入至第一进程中进行处理,得到第一处理结果,且将仲裁器输出的预设输入值输入至第二进程中进行处理,得到第二处理结果;第一确定子单元42,用于基于仲裁器依据第一处理结果、第二处理结果以及仲裁
器所预存的预设处理结果,确定第一仲裁结果;其中,预设处理结果为与预设输入值对应的处理结果。
70.一个示例中,第一确定子单元42,包括:第一处理模块421,用于若基于仲裁器确定第一处理结果与预设处理结果一致、且第二处理结果与预设处理结果不一致,则确定第一仲裁结果表征第一进程的内部逻辑正确,并将第一计算结果输出给输出单元进行处理,恢复第一进程的外部输入过程,重启第二进程;第二处理模块422,用于若基于仲裁器确定第一处理结果、第二处理结果均与预设处理结果一致,或者,确定第一处理结果、第二处理结果均与预设处理结果不一致,则确定第一仲裁结果表征第一进程的内部逻辑错误,并丢弃第一计算结果和第二计算;重启第一进程和第二进程;第三处理模块433,用于若基于仲裁器确定第一处理结果与预设处理结果不一致、且第二处理结果与预设处理结果一致,则确定第一仲裁结果表征第一进程的内部逻辑错误,并将第二计算结果输出给输出单元进行处理;重启第一进程。
71.一个示例中,电子设备中运行有仲裁器;第二仲裁单元34,包括:获取子单元43,用于若基于仲裁器确定第一计算结果与第二计算结果不一致,则基于仲裁器获取真实输入值;启动子单元44,用于基于仲裁器启动第三进程;第二处理子单元45,用于在仲裁器中基于第三进程对真实输入值进行处理,得到第三计算结果;第二确定子单元46,用于基于仲裁器依据第一计算结果、第二计算结果以及第三计算结果,确定第二仲裁结果。
72.一个示例中,第二确定子单元46,包括:第四处理模块461,用于若基于仲裁器确定第一计算结果与第三计算结果一致,则确定第二仲裁结果表征第一进程的内部逻辑正确,并将第一计算结果输出给输出单元进行处理;恢复第一进程的外部输入过程,重启第二进程;第五处理模块462,用于若基于仲裁器确定第二计算结果与第三计算结果一致,则确定第二仲裁结果表征第一进程的内部逻辑错误,并将第二计算结果输出给输出单元进行处理;重启第一进程;第六处理模块463,用于若基于仲裁器确定第一计算结果、第二计算结果均与第三计算结果不一致,则确定第二仲裁结果表征第一进程的内部逻辑错误,并将第三计算结果输出给输出单元进行处理;重启第一进程和第二进程。
73.一个示例中,处理单元32包括:第三确定子单元47,用于若基于仲裁器确定第一计算结果与第二计算结果一致,则基于仲裁器确定第一进程的内部逻辑正确;输出子单元48,用于基于仲裁器将第一计算结果输出给输出单元进行处理。
74.一个示例中,第一计算结果和第二计算结果中包括相同的唯一标识;相同的唯一标识用于表征第一计算结果和第二计算结果为同一处理任务所得到的。
75.图5为本技术实施例提供的一种电子设备的结构示意图,如图5所示,电子设备包
括:存储器51,处理器52。
76.存储器51;用于存储处理器52可执行指令的存储器。
77.其中,处理器52被配置为执行如上述实施例提供的方法。
78.图6是本技术实施例提供的一种终端设备的框图,该设备可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
79.装置800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(i/ o)接口812,传感器组件814,以及通信组件816。
80.处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
81.存储器804被配置为存储各种类型的数据以支持在装置800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
82.电源组件806为装置800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。
83.多媒体组件808包括在装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当装置800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
84.音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(mic),当装置800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
85.i/ o接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
86.传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到装置800的打开/关闭状态,组件的相对定位,例如组件
为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
87.通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如wifi,2g或3g,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件816还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
88.在示例性实施例中,装置800可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
89.在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由装置800的处理器820执行以完成上述方法。例如,非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd

rom、磁带、软盘和光数据存储设备等。
90.本技术实施例还提供了一种非临时性计算机可读存储介质,当该存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述实施例提供的方法。
91.本技术实施例还提供了一种计算机程序产品,计算机程序产品包括:计算机程序,计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从可读存储介质读取计算机程序,至少一个处理器执行计算机程序使得电子设备执行上述任一实施例提供的方案。
92.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求书指出。
93.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求书来限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜