Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如果我无限期地运行此代码,那么出错的概率是多少_Python_Cpu_Computer Science_Processor - Fatal编程技术网

Python 如果我无限期地运行此代码,那么出错的概率是多少

Python 如果我无限期地运行此代码,那么出错的概率是多少,python,cpu,computer-science,processor,Python,Cpu,Computer Science,Processor,假设我用任何语言运行这段代码,可能在任何计算机上都是c、python或javascript等语言,让我们假设在macbook-pro-late-2011上运行(这就是我拥有的计算机)。如果我无限期地运行此代码,则出错的概率是多少 int a=1; int b=1; while(true) { if(a!=b){ //error occurred } } 简言之 现代处理器的可靠性如何 在手机或平板电

假设我用任何语言运行这段代码,可能在任何计算机上都是c、python或javascript等语言,让我们假设在macbook-pro-late-2011上运行(这就是我拥有的计算机)。如果我无限期地运行此代码,则出错的概率是多少

    int a=1;
    int b=1;

    while(true)
    {
        if(a!=b){
          //error occurred
         }
    }
简言之

  • 现代处理器的可靠性如何
  • 在手机或平板电脑等设备上,是否有廉价品牌的处理器经常会产生此类错误
  • 是否有一个著名的案例(来自过去),现代处理器确实产生了错误的结果
  • 编辑1


    假设机器永远不会死,过热,蓝屏,或其他什么

    是的,错误可能以非零概率发生,但不太可能导致程序达到无效条件检查

    您可能会有alpha粒子在适当的时候击中CPU或内存中的某些关键逻辑以翻转某些位(这可能会导致几乎任何事情),或者您可能会将某些页面交换到具有不正常段的磁盘。这种情况的确切发生率取决于以下几点:

  • 你的CPU使用的电压水平——现代CPU的节能水平要低得多,移动CPU可能是最敏感的。电压越低,阈值越低,一些外力越容易翻转逻辑值
  • 你运行的环境——为航天飞机、核电站甚至CERN超级对撞机设计CPU的人可能正在拼命工作,以防止这种情况发生,因为这些CPU可能会不断受到辐射的轰炸,出现更高的故障率
  • 机器上的压力。24/7工作的CPU更容易受到攻击
  • CPU区域-具有多个核心的服务器更容易受到攻击,它们只是构成了一个更大的目标
  • 内置错误检测和纠正支持-大多数现代CPU在大多数敏感硬件区域都有位和奇偶校验。单个错误通常可以被纠正,更复杂的错误(几个位翻转)可能会被检测到而无法纠正,但硬件至少会在这一点上引发一些故障或机器检查错误(因此您甚至无法在代码中进行错误检查)。 当然,对于磁盘可靠性,您还有另一组功能,如RAID
  • 请注意,一些关键系统需要更高级别的可靠性(例如,银行),因此他们可能会购买提供更好功能的CPU。智能手机和桌子通常是不那么重要的部分,但我想你可能会看到桌子系统中有一些这样的东西

    无论哪种方式,今天任何合理的CPU都应该有足够的保护,以高概率捕获大多数可能的错误,并在“引擎盖下”进行修复,因此您甚至不知道它们的存在。无法处理的复杂错误仍然最有可能被发现,并可能导致您的计算机挂起或重新启动。你可以假设一个简单的程序会有几乎100%概率的确定性行为。

    所以我的两分钱价值,(你有权获得全额退款)

    这是一个很容易问的问题,但只要你仔细研究,事情就会变得有点模糊

    如果你把问题定义为具体的情况,那么a和b是不同的。在Python中(据我所知),a是b,因此永远不会失败。(这只是说,如果a发生变化,b也会发生变化)。 现在将变焦旋钮旋出一点。现在是“!=”部件可能会因为任何原因而失败,并且(在python的脑海中)a仍然是b。在你的问题框架内,这是一个失败吗

    再将放大按钮调低一点,“while True”会失败吗?这是你问题的一部分吗?操作系统的故障是否算数?Windows将重新启动,因为

    然后我们进入利奥的观点

    随着我们不断缩小,我们不断发现不符合问题的案例。如果运行此功能的数据中心被使用电磁脉冲武器的僵尸摧毁。。。。你知道这是怎么回事

    在我的过去,我不得不沿着这条路追问这个问题

    因此,接下来的通告是“我们能检测出故障吗?” (我想到了利奥关于ECC的观点)。如果它失败了,但我们抓住了它,它失败了吗


    量子力学告诉我们,最终“这块石头”!='在合理的假设下,在运行无限时间的过程中发生错误的概率为1。预期失效时间是一个更有趣的数字。这一点说得很好——但我认为你的意思是“…错误发生的概率…是100%”错误在无限时间内发生的概率是100%。如果你有几千台机器在工作,你几乎可以保证其中一台会在几天内坏掉。增加更多的机器,某个地方发生故障的概率就会增加。如果你有数百万台机器,每天都会有一些地方出现故障。你能解释一下为什么你认为
    a
    在Python中是
    b
    ?当然,语法不是Python,但是如果您有
    a=1;b=1
    ,当然
    a
    b
    是分开的,即使它们当前引用相同的值,那么后续的
    b=2
    也不会改变
    a
    ?如果是这样的话,那么宇宙射线可以改变
    b
    中指向
    1
    的部分,因此它指向其他的东西。如果
    1
    发生了变化,那么程序将无法发现差异。当然,宇宙射线也可以改变正在执行的字节码。
    >>a=1>>>b=1>>>a是b真>>>
    a和b都指向同一实例。如果你改变了b,那么你已经做到了,改变了b。但如果不是