成人午夜激情影院,小视频免费在线观看,国产精品夜夜嗨,欧美日韩精品一区二区在线播放

為什么7月的閏秒對互聯網影響那么大?

2012-07-02 14:57:50來源:酷殼作者:陳皓

2012年6月30日,也就今天晚上,時間會多出現一秒,也就是我們所說的閏秒。我不知道大家對閏秒的了解有多少,所以寫下這篇文章。

2012年6月30日,也就今天晚上,時間會多出現一秒,也就是我們所說的閏秒。我不知道大家對閏秒的了解有多少,所以寫下這篇文章。

背景知識

閏秒是在在UTC(中文“世界標準時間”或“世界協調時間”/英文“Coordinated Universal Time”/法文“Temps Universel Cordonné”)向Atomic Clock(原子時鐘)對齊的一種方法,因為UTC是民用時間,其精確值是毫秒,而Atomic Clock精確值是納秒,所以,1972年制定的UTC為了確保其時間相對于Atomic Clock的時間誤差不能超過0.9秒,因此在過一段時間后需要加一秒。下圖是有UTC以來閏秒的調整表(來自Wikipedia閏秒的中文詞條

\

從上表中我們可以看到,從1972年到現在,在這四十年里已經進行過25次的閏秒調整。閏秒是在每年6月或12月的最后一天的最后一分鐘進行跳秒或不跳秒。是否加入閏秒由位于巴黎的國際地球自轉和參考坐標系統服務(IERS – International Earth Rotation and Reference Systems Service)決定。如果決定加入閏秒,那么這一秒是被加在第二天的00:00:00前的,也就是說,時間會出現23:59:60的情況,然后才是第二天的00:00:00。如果是負閏秒的話,23:59:58的下一秒就直接跳到第二天的00:00:00了。現在,所有閏秒都是正閏秒。

計算機處理閏秒

那么,對于我們的電腦系統來說,怎么處理這個閏秒呢?一般來說,我們需要為我們的電腦系統配置UTC時鐘,并通過NTP (Network time protocol)來進行時間同步,NTP服務器會一級一級地下發閏秒事件通知直到最邊緣的NTP服務器,然后NTP服務器就會把閏秒通知發給客戶端的操作系統,由操作系統來處理閏秒通知。

雖然閏秒調整對普通民眾的日常生活不會產生影響。不過,這個問題將影響部分開啟ntp服務的Linux操作系統——會導致Linux內核Crash!Linux kernel是在2.6.18-164.e15之后的版本中解決了這個問題。換句話說,Linux kernel低于2.6.18-164的Linux系統,無論是什么公司的Linux都將受到影響。(今晚過后大家可以查看一下你的Linux系統日志,看看閏秒有沒有發生)

可以參看下面的bug描述:

那么,我們的操作系統是怎么處理正閏秒通知的?通常來說有三種實現:

  1. 后退一秒。
  2. 停止一秒。
  3. 真正的增加一秒。

懂編程的人一眼就能看出來,前兩種方式是以一種Workaround或Hack的方式解決這個問題。第一種方式會導致一些基于timestamp的消息通知亂序了,而第二種會導致出現兩個一模一樣的timestamp。最后一種不會出現timestamp的問題。對了,你還記得以前那篇《你確信你了解時間嗎?》的文章嗎?

最后,說說Windows,Windows  Time Service不支持閏秒通知,所以,當閏秒發生的時候,你的Windows上的時間會比實際時間快一秒鐘,這需要等下一次的時鐘同步才會完成修正。你可以查看這篇文章:http://support.microsoft.com/kb/909614/en-us

關鍵詞:閏秒互聯網

贊助商鏈接:

主站蜘蛛池模板: 定襄县| 河间市| 黑山县| 东丽区| 石柱| 建瓯市| 潮安县| 罗江县| 华宁县| 阿坝县| 泸州市| 临夏市| 文山县| 博罗县| 安庆市| 乌鲁木齐市| 聂拉木县| 溆浦县| 鹤岗市| 葵青区| 连城县| 丁青县| 凉城县| 龙泉市| 贞丰县| 千阳县| 特克斯县| 吉木乃县| 鄢陵县| 雷波县| 昌都县| 南阳市| 昌邑市| 布尔津县| 山丹县| 溧水县| 天长市| 南丹县| 朝阳县| 普定县| 柳林县|