2012年3月2日

閏年蟲

閏年蟲

閏年蟲(Leap Year Bug),是指由於電腦程式設計的一些問題,使得電腦在處理閏年2月29日的日期和時間時候,可能會出現不正確的操作。閏年蟲是人們對於一些電腦軟件在設計時未考慮閏年因素,將所有年份的2月都默認為有29天或者28天而出現運算錯誤的一種形象叫法,所以這一缺陷被稱為「閏年蟲」。

閏年蟲主要分為三種:

1. 沒有設置閏年:

有些電子產品沒有計算閏年的因素,將2月當作必定只有28日,那麼當碰到閏年時,2月29日便會誤作3月1日處理。

2. 閏年規則出錯:

微軟Zune音樂播放機在2008年12月31日誤以為閏年只有365天而進入實際上還未到的2009年1月1日,結果導致全球大當機,所幸全球使用率低,並沒有引起關注。

Playstation 3(PS3)遊戲機誤將「四年一閏」當作「兩年(逢雙數年)一閏」,導致在2010年3月1日錯誤當作不存在的2010年2月29日,結果出現罕見的全球大當機。

3. 2100年問題:

另有一種閏年蟲將會出現於2100年,又稱「2100年問題」。雖然閏年的規則大致上是「四年一閏」,但100的倍數而非400的倍數之年份卻是例外。故此2100年雖然是4的倍數,但都不是閏年。當電子產品沒有考慮到這條特例時,便會導致在2100年3月1日錯誤當作不存在的2100年2月29日。

閏年蟲

廣州出租車故障

2012年2月29日,是四年一遇的2月29日,「閏年蟲」準時降臨,29日凌晨零點剛過,廣州就有1500餘輛出租車計價器突然被「鎖表」,不能正常參與營運。受影響的哥將車輛開往白雲永泰的檢測中心進行維修,一度造成白雲大道長時間交通癱瘓。

南京交管網站無記錄

2012年2月29日,南京交管網站查詢違章記錄,結果都是「您好,截至查詢期止,數據庫中無違法記錄!」「交管在線」網站查詢違章信息時,默認是以兩年為查詢週期,也就是說,2012年2月29日查詢,系統自動將起始日期向前提兩年,也就是2010年2月29日。

2012年是閏年,2月有29日;而2010年不是閏年,2月沒有29日。但是,交管在線的查詢系統卻沒有注意到這個問題,自動把2010年的2月變成了29天,所以導致查詢不到違章記錄。

Related Posts Plugin for WordPress, Blogger...