《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 業(yè)界動(dòng)態(tài) > 18年后,我們還將再次遭遇「千年蟲(chóng)」

18年后,我們還將再次遭遇「千年蟲(chóng)」

2020-02-12
來(lái)源:新浪科技
關(guān)鍵詞: 18年 再次 千年蟲(chóng)

  90后或許從來(lái)沒(méi)聽(tīng)說(shuō)過(guò)‘千年蟲(chóng)’,但80后們對(duì)這個(gè)詞或許有所了解。所謂‘千年蟲(chóng)’,是指人類在2000年1月1日將遭遇由于時(shí)間錯(cuò)誤而大面積計(jì)算機(jī)故障的BUG 。在32位的Unix系統(tǒng)上,這個(gè)BUG還會(huì)再出現(xiàn)一次,具體時(shí)間將在2038年。

1.jpg

  這是因?yàn)樵缙谟?jì)算機(jī)都是以 6 位數(shù)來(lái)存儲(chǔ)時(shí)間信息,即年、月、日各兩位。到了二十世紀(jì)末,人們發(fā)現(xiàn)這種日期方法將導(dǎo)致計(jì)算機(jī)錯(cuò)誤的將 2000 年識(shí)別為 1900 年,導(dǎo)致大面積計(jì)算機(jī)故障。

  這個(gè)問(wèn)題在當(dāng)時(shí)得到了足夠的重視,但在一些以 Unix 為系統(tǒng)的服務(wù)器、包括以 Unix 為底層的系統(tǒng)上,還有一些小小的缺陷。

  1970 年初,第一批互聯(lián)網(wǎng)設(shè)備開(kāi)始出現(xiàn),人們急需一種統(tǒng)一時(shí)間,同步互聯(lián)網(wǎng)的中的每一個(gè)設(shè)備。當(dāng)時(shí)電氣和電子工程師協(xié)會(huì)(IEEE)成立了一個(gè)委員會(huì),從 1970 年 1 月 1 日(UTC/GMT 的午夜)開(kāi)始,用秒數(shù)計(jì)量時(shí)間,如果在 Mac 中打開(kāi)終端,輸入 date +%s ,就可查看到一串時(shí)間,這就是 1970 年 1 月 1 日 0:00 到當(dāng)前時(shí)間的秒數(shù)。

2.png

  ▲ 紅框內(nèi)為時(shí)間戳

  在 32 位系統(tǒng)中,這是數(shù)字最大為 2147483483647 ,對(duì)應(yīng)的時(shí)間為 2038 年 1 月 19 日凌晨 3 點(diǎn) 14 分。一旦超過(guò)了這個(gè)時(shí)間,在 32 位的 Unix 系統(tǒng)中,時(shí)間就會(huì)回到 1970 年。

3.png

  幸運(yùn)的是,這個(gè)問(wèn)題只在 32 位系統(tǒng)中才會(huì)出現(xiàn),如果換成 64 位系統(tǒng),最大時(shí)間將延長(zhǎng)到 9,223,372,036,854,775,807 ,相當(dāng)于 2923 億年,對(duì)人類來(lái)說(shuō)幾乎相當(dāng)于無(wú)限時(shí)間了。

  雖然目前主流的電腦和智能手機(jī)都已經(jīng)邁向了 64 位操作系統(tǒng),但在此之外還有其他設(shè)備底層采用了 Unix 系統(tǒng),例如某些洗衣機(jī)、智能臺(tái)燈、智能空調(diào)、或者一些電視。這些設(shè)備同樣會(huì)遇到這些 BUG 。

  好在這些家具很可能沒(méi)有那么長(zhǎng)的壽命,在遭遇 Y2K38 這一 BUG 之前,它們可能就已經(jīng)壽終正寢了。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。