1960年代计算机程序以6位数字来存储时间,引发“千年虫”问题
芝麻汤圆
09月29日 15:32
此文约为430字,阅读需要2分钟
千年虫(Y2K)问题,是指由于计算机程序设计的一些问题,使得计算机在处理2000年1月1日以后的日期和时间时,可能会出现不正确的操作,从而可能导致一些敏感的工业部门(比如电力,能源)和银行,政府等部门在2000年1月1日零点工作停顿甚至是发生灾难性的结果。
扩展阅读
两千年问题始于1960年代,当时计算机内存和外部存储介质的成本很高,大多数数据处理需要借助穿孔卡片。
为了节省硬件成本,葛丽丝·霍普在Harvard Mark I上以6位数字来存储时间,即年、月、日各两位。类似“95.11.02”,意思就是1995年11月2号。如果到了2000年,那前两位数字应该就是“00”,而计算机终归不是人类,“00”对它们来说不一定就是2000年,也有可能是公元1900年或公元1000年,这样就会得到不正确的计算结果,进而引发一系列的问题,在一些嵌入式的系统(家用电器的数控板)中一样会出现这个问题。
多年之后,人们迎来了时间的报复。而葛丽丝·霍普,第一个发现bug并解决bug的人,她也创作了一个巨大的bug。
两千年问题是由Bob Bemer在1958年第一次提出的。
在其后的二十年里,他用了很大的努力,希望政府、企业和国际组织(如IBM和ISO)来关注这个问题,但反响寥寥。直到2000年将要到来的时候,人们才感觉到两千年问题的紧迫性。于是社会和政府都投入了大量的人力和物力来避免发生大规模的计算机灾难。而从现在来看,这些努力也获取了相应的成果。
未知的网友