山海经|“千年虫”是什么东西?一个在计算机诞生之初,遗留下来的巨大BUG( 二 )


如果到了2000年 , 那前两位数字应该就是“00” , 而计算机终归不是人类 , “00”对它们来说不一定就是2000年 , 也有可能是公元1900年或公元1000年 , 这样就会得到不正确的计算结果 , 进而引发一系列的问题 , 在一些嵌入式的系统(家用电器的数控板)中一样会出现这个问题 。 这就是千年虫的由来 , 为什么要叫“千年虫”其实也很好理解 , 千年指的就是千禧年 , 虫就是对bug的直译 。 英文名称是“Year 2000 Problem” , 可以翻译成2000年问题 。
其实在上世纪五十年代末的时候 , 一个叫“鲍勃·贝默”的程序员就发现了这个隐藏的严重问题 。 随后的时间里鲍勃一直想让人们了解到这件事情的严重性 , 但并没有得到人们的重视 。 其中原因也很简单 , 千禧年在当时看来完全就是遥遥无期 , 很多人也清楚自己根本活不到那个时候 , 所以这些复杂的事情就交给后人去解决吧 , 而且这么长的时间 , 解决办法一定会出现的 。 现在一看 , 千禧年都已经过去20年了 。
事实还真是这样 , 到了九十年代的时候 , 人们才开始着急起来 , 虽然当时计算机还没有大量的普及 , 但在很多方面已经深入了我们的生活之中 。 临近千禧年的时候 , 这一现象尤为严重 , 1999年 , 因为计算机的误判 , 分别在三个日子出现大规模bug现象 , 这似乎在提醒人们“00”造成的影响将更为严重 。 为此大量的人力和物力被投入到了这件事中 , 各行各业的程序员想尽了办法来阻止千年虫的出现 。
结语随着最后的钟声响起 , 千禧年来了 , 和它一起来的也有千年虫 。 而后的一年中 , 虽然不少电脑系统崩溃 , 同时也造成了不小的经济影响 , 但实际情况却不像人们想的那么恐怖 , 因为提前做了大量的准备 , 所以当你去取款时发现利息都没了的这种现象少之又少 。 同时有一部分人向不了解情况的人过度夸大千年虫的危害 , 甚至将其描绘成一种传染病毒 , 倒是引起了不小的麻烦 。
千年虫的危机已经过去很久了 , 今天电脑和家用电器的系统也更加的完善和先进 , 这也多亏了前人们所付出的种种努力 。 但我们是否应该反思一下 , 这种制造完问题后 , 再抛给后人去解决的行为 , 其实无时无刻都在持续着 , 而且不仅仅是计算机行业之中 。
参考文献《2000年问题》、《Y2K bug rears its ugly head》、《Y2K Notebook Problems》


推荐阅读