BUG,是程式設計師們的死敵,消滅BUG,是程式設計師們的使命。我們今天故事的主角,就是人類史上最有威脅,也是最難對付的BUG之一 —— 「千年蟲」。
遙想當年,三星用一款NOTE7手機.重新定義了「易燃易爆」物品,以一己之力,改變了航空公司的安檢規則。自此之後,三星在中國的銷量一路滑坡存在感越來越低。
可能是覺得自己戲份太少,三星又整了個么蛾子來搶熱搜。從5月23號開始,大批三星手機突然崩潰黑屏、顯示亂碼、無限重啟總之就是罷工了。用戶們也是一臉懵猜著三星手機崩潰的原因,零件有缺陷?黑客攻擊了三星?誰也沒想到,真實原因竟然是一年景不好 。
今年是鼠年。按照農曆曆法來算,四月份過完之後並不會到五月,而是要再過一個閏四月。
5月23日,就是農曆閏四月初一。
三星手機的鎖屏程序裡是帶有一個農曆日曆插件的。但三星的程式設計師們沒有把閏四月給算進去,鎖屏程序就因時間紊亂而崩潰。解決辦法也很簡單,只要修改掉系統時間調成閏四月以外的日期就好或者更新一下鎖屏程序升級成有閏四月的日曆。
時間回到1999年末新的千年馬上就要到來。世界本應該是一片歡樂喜慶的海洋然而現實是全球都陷入了恐慌普通人忙著取現金、忙著屯糧還有人鑽進山洞避難;他們感覺世界末日即將到來而政府部門、金融機構、軍隊都忙著做安全測試,並找來大量技術人員組成搶修隊。
這場混亂的源頭就是所謂的「千年蟲』。它並非真正的蟲子,而是電子產品系統中存在的,時間紊亂BUG。1999年到2000年只隔1年但是跨越了1個世紀,系統無法識別,隨後崩潰。
至於為什麼會出現千年蟲,這還得從計算機剛誕生時講起。
50年代初,計算機的儲存設備相當昂貴貴到大公司都會覺得肉疼,5MB的磁碟,一年的租金要35000美元!這還只是租,不是買所以程式設計師在寫代碼時候每一個字符都要精打細算。