手机或电脑的CPU损坏会有什么表现?

手机或电脑的CPU损坏会有什么表现?

是机器就会故障,CPU、内存、硬盘、GPU 等等都不例外。一台机器里只要有一个部件故障了,其计算出来的结果就有可能是错的,或者整个机器就直接宕掉了。

常见的故障有两种,一种是拜占庭故障,一种是沉默故障。解决办法一般就是利用各种各样的『冗余』。

沉默故障就是某机器或者 CPU 挂了,不再工作了。常用解决方法就是让别的机器接替它。这是一种机器冗余。可靠性计算的一个分领域就是专门研究容错系统和容错算法的。比如某个机器挂了,那它上面的数据可能也没了,新的用来取代它的机器要重新获得一些数据并从头计算,这样就很慢,所以一个常用做法就是在跑程序的过程中维护检查点,每个检查点存储着一些数据和现场信息,这样一旦出错,只需要回溯至最近的检查点然后继续工作即可,这样就可以降低由于故障带来的损失。这里面比较有挑战的地方就包括在什么时间、什么地点建立检查点,每个检查点又具体存什么。这样的检查点就是一种数据冗余。

所谓拜占庭故障,就是由于某种原因,某机器或某处理器的运算出错了,但它依然在工作。这种情况比较麻烦,因为如果没有专门的检测措施,我们不知道这个机器在产生错误的结果,后果严重。这个故障名的出处是『拜占庭将军问题』。在打仗的时候,各个将军之间需要通过传递信息来互通战场动态,达成共识,才能做出重要决定。但假如将军中有间谍或叛徒,他们就会释放错误的信息来干扰正常的决定,忠诚的好将军也会被拖累。那么问题就是如果在已知有间谍和叛徒的情况下,如何依然保证忠诚的将军可以达成共识并做出正确决定呢?在计算机可靠性领域,间谍和叛徒就是出现拜占庭故障的机器或者 CPU,忠诚的将军就是正常的机器或者 CPU。为了解决这类问题,计算机届有一系列算法。一种常见的思路就是让多个机器互通信息(机器冗余),然后根据大多数机器的数据来作决定。这种思路能够起作用的前提就是『世界上还是好人多』。

简而言之,我们有各种各样的容错、纠错和防错技术。这些技术一般用在一些可靠性比较重要的领域,比如战斗机上的机载计算机、银行的交易系统和一些云计算应用等。例如某战斗机上计算机系统装三套,每次要决策时,三套投票,最后采用获两票已上的决策。一般的个人计算机并不需要很高的可靠性,现在的计算机也没那么容易挂,如果真挂了,换一个就行了。