2000年问题的解决方案

“2000年问题”的测试

  1. 2000年问题须特别测试的一些日期

须测日期(月/日/年)

测试原因

12/31/1999

世纪末

01/01/2000

新世纪第一天

02/28/2000

闰年日期前一天

02/29/2000

闰年日

03/01/2000

闰年日期后一天

02/29/2001

非法日期

02/28/2004

闰年日期前一天

02/29/2004

闰年日

03/01/2004

闰年日期后一天

2、手动测试方法

★开机进入BIOS设置日期时间项,检查日期项中是否用4位数字表示“年”。如果不是,则该电脑存在2000年问题。

★将日期设置为19991231日,时间设置为:235901,观察BIOS的时钟在走到59秒后能否顺利变到2000110001。如果不能进到2000年,则该电脑存在2000年问题。

★将日期设置为2000228日,时间设置为:235901,观察BIOS的时钟在走到59秒后能否顺利变到20002290001。如果不能变到该日期,则该电脑存在2000年问题。

★检查 02/29/2000 - 03/01/200002/28/2001 03/01/2001  02/28/2004 -- 02/29/200402/29/2004 -- 03/01/2004等日期的过渡情况,若不能正常过渡,则该电脑存在2000年问题。

3、软件测试方法

针对PC硬件2000年问题的测试,工业界由著名的美国国家软件测试实验室NSTL推出YMARK2000测试工具2000.EXE,该软件使用于DOS3.2以上环境。测试方法如下:

    1. DOS启动。
    2. 运行2000.EXE
    3. 阅读显示的运行结果。

NSTLY2K测试程序YMARK2000测试过程如下:

(1)测试被测系统RTC芯片与Motorola MC146818 (标准RTC芯片)的兼容性。该测试确认时间和日期符合MC146818标准,并且日期符合BCD格式。一些非DOS操作系统,如UNIX,不是通过BIOS而是通过驱动程序来直接访问实时钟。如果该芯片不兼容MC146818标准,那么象UNIX之类的操作系统或程序进行直接读实时钟时就会出现错误。

(2)检验从19991231日到200011日的时钟运行情况。如果不能够自动跳转,那么需进行手工设置日期的测试。

(3)检验对转换到2000年后闰年的支持。

该程序返回结果如下(数字表示DOS批处理命令所用的错误级别):

0 该系统2000年就绪。

1 时钟硬件与MC146818不兼容,

2 不支持运行到下一个世纪。

3 不支持改变到下个世纪且硬件时钟与MC146818不兼容.

6 不识别2000

7 不识别2000年且硬件时钟与MC146818不兼容

8 不识别2000年的闰年

18 如果系统使用AWARD BIOS, 则需要手动启动机器测试2000

19 程序运行错误 & 实时时钟错误 & AWARD 4.50GBIOS

22 错误Y2K & AWARD 4.50GBIOS

23 错误Y2K & 实时钟错误 & AWARD 4.50GBIOS

26 闰年错误 & 程序运行错误 & AWARD 4.50GBIOS

27 闰年错误 & 程序运行错误 & 实时钟错误 & AWARD 4.50GBIOS

255 程序执行失败. 原因是不接受许可协定,或者实时钟未运行, 或者是出现了一个未知的命令行参数.

该程序测试完成,如果YMark2000提示需要进行手工重启测试,请按如下步骤操作:

1.用DOS3.2或更高版本的启动盘启动被测试的系统,

2.用DATE指令将日期设置为2000年,重启系统,请不要取出启动盘

3.重启之后核对日期,如果日期和上一步所设置的日期相同则不需要重新设置。如果不同,则需要手动设置一次日期。

4.将计算机的日期恢复成当天的日期。

2000年问题的解决

2000.sys(放在CONFIG中)和2000.com(放在AUTOEXEC.BAT中)取其中之一放在自己的机器中,即可。

Next-->page>>回上一页,看更多资料