2000年《千年虫的最后一天》

2022-08-04 04:15
电脑报 2022年29期
关键词:程序运行计算机检测

“千年虫”,这是一个很多“90后”可能都没听说过的词儿,但在1999年到2000年,这可是全球计算机行业的重大安全事件。其实所谓的“千年虫”问题,本质上是一个历史积累的问题,在计算机刚发明不久的1960年,为了节约硬件成本,年月日的表达只有6位数字,比如1997年10月1日就是971001,这一方式也在后来的三十多年内应用于整个计算机程序界。

但这个时间记录方式在具体的时间可能会导致系统出现问题,比如2000年,00代表的是1900年还是1800年或者其他xx00年呢?系统会因此出现时间识别错误,比如2000年是闰年,但因为无法识别具体是哪一个xx00年,所以系统不会生成2月29日这一天,这对于很多需要严格记录时间信息的行业,比如金融、电力、交通行业来说可能会导致严重的后果。除此之外一些比较老的计算机系统会使用数字串99来标定一些特殊事件,比如文件结束、删除等操作,在1999年9月9日处理到内容中含有日期的文件时,就可能导致错误操作,引发系统混乱甚至崩溃。

但從《千年虫的最后一天》文章中我们可以看到,包括我国在内的大多数国家,通过计算机工作者连续多个日夜的奋战,平安度过了这次千年虫危机。解决的方法也可以说是简单粗暴,针对上世纪80年代中期之前投入使用的电脑所运行的程序往往最容易中招,但这些程序运行到2000年左右时也已经有了非常庞大的规模,比如美国AT&T电信公司就检测了超过3.6亿行代码。

除此之外,所有采用嵌入式芯片的电子设备也是千年虫的“重灾区”,因为这些设备渗透到了我们日常生活每个角落,所以检测和替换工作都非常繁琐,这也是千年虫问题最大的难点——它的解决方法其实很简单,但因为工作量庞大到无法计算,所以才成为世界性的难题。

猜你喜欢
程序运行计算机检测
“不等式”检测题
“一元一次不等式”检测题
“一元一次不等式组”检测题
计算机操作系统
行政公益诉讼诉前程序运行检视
基于计算机自然语言处理的机器翻译技术应用与简介
信息系统审计中计算机审计的应用
小波变换在PCB缺陷检测中的应用
论刑事错案的成因
Fresnel衍射的计算机模拟演示