一、原理解釋:
此測試是要確認個人電腦的即時時鐘(RTC)是否可以正確表示公元 2000 年之後的時間。
二、
- 個人電腦的時間計算主要是由硬體的即時時鐘來提供,軟體透過 BIOS 來取得即時
時鐘的時間當成系統的時間,以下是完全公元 2000 年相容的即時時鐘結構:
- 早期的即時時鐘為了省硬體,捨棄「世紀」的資料不儲存,所以會有 Y2K 問題
(即 1999 年不會自動跳到 2000 年),不過有些 BIOS 會將世紀資料存放在 CMOS
(存放系統設定之用)中,因此公元 2000 年之後只需設定一下 BIOS 的時間,即可
順利運作下去(CMOS 存的資料不會因為關機而消失)。
- 有些 BIOS 並沒有利用關機不會忘記的 CMOS 來存世紀資料,或者處理有問題,
以致於不但 1999 年不會自動跳到 2000 年,甚至手動改時間之後,關機再開還是無
法正確的顯示 2000 年之後的時間。
- 最糟糕的狀況就是即時時鐘沒有世紀資料,而 BIOS 沒有或無法處理(可能因為
CMOS 或 BIOS 的空間問題),以致於完全無法設定 2000 年以後的時間資料。
三、測試方式:
- 手動測試:
- 將 BIOS 時間調整到 1999 年 12 月 31 日 23 點 59 分,看看 BIOS 的時間是
否會跳到 2000 年 1 月 1 日。如果可以順利跳過去,那就是上文第一項的情況,RTC
完全支援 2000 年。如果這樣,建議再測試時間是否可以設定為 2000 年 2 月 29 日。
- 如果無法自行跳過 2000 年,顯然就是上文 2-4 的狀況,請測試是否可以手動
調整年份到公元 2000 年,如果可以,就是上文 2-3 的狀況,如果不行,就是上文
第四項的狀況。
- 如果可以設定時間到 2000 年以後,請將 BIOS 時間儲存,將電源關掉。然後重新
打開電源檢查剛剛設定的時間是否還是維持正確,如果時間正確,就是第二種狀況,如
果時間錯誤,就是第三種狀況。
- 程式測試:
- 提供 NSTL YMARK2000 測試程式一套,將磁片放入電腦中開機,回答版權宣告
「y」之後,由程式測試系統時間。(如果無法由 1.44M 磁片開機,請用乾淨 DOS 開機
後,執行磁片中的 2000.exe 即可,此程式不能在 95 或 NT 底下正確執行)
- YMARK 2000 會指出第一、四項狀況,如果是第二、三項狀況,程式會要求使用
手動關機測試,此時請使用手動測試的 c 項目中所說的程序來測試。
(本文作者為本中心負責人、高雄醫學大學電算中心主任)
|