闰秒(leapsecond)和原子钟(Atomic Clock)究竟是什么

简介: 文章解释了闰秒的概念和必要性,它是为保持世界标准时间(UTC)与原子时的一致而增加的一秒,以及原子钟的工作原理和最新发展,包括新型小型化原子钟的应用前景。

什么是闰秒

为了让“原⼦时”与“世界时”协调⼀致,北京时间7⽉1⽇全球将增加⼀秒,届时,将出现7:59:60的特殊现象。也就今天晚上,时间会多出现⼀秒,也就是我们所说的闰秒(leapsecond)。

为什么需要闰秒

闰秒是在UTC(中⽂“世界标准时间”或“世界协调时间”/英⽂“Coordinated Universal Time”/法⽂“Temps Universel Cordonné”)向Atomic Clock(原⼦时钟)对⻬的⼀种⽅法,因为UTC是⺠⽤时间,其精确值是毫秒,⽽Atomic Clock精确值是纳秒,所以,1972年制定的UTC为了确保其时间相对于Atomic Clock的时间误差不能超过0.9秒,因为在过⼀段时间后需要加⼀秒。

从1972年到现在,在这四⼗多年⾥已经进⾏过25次的闰秒调整。闰秒是在每年6⽉或12⽉的最后⼀天的最后⼀分钟进⾏跳秒或不跳秒。是否加⼊闰秒由位于巴黎的国际地球⾃转和参考坐标系统服务(IERS – International Earth Rotation and ReferenceSystems Service)决定。如果决定加⼊闰秒,那么这⼀秒是被加在第⼆天的00:00:00前的,也就是说,时间会出现23:59:60的情况,然后才是第⼆天的00:00:00。如果是负闰秒的话,23:59:58的下⼀秒就直接跳到第⼆天的00:00:00了。

现时所有闰秒都是正闰秒。计算机处理闰秒那么,对于我们的电脑系统来说,怎么处理这个闰秒呢?⼀般来说,我们需要为我们的电脑系统配置UTC时钟,并通过NTP (Network time protocol)来进⾏时间同步,NTP服务器会⼀级⼀级地下发闰秒事件通知直到最边缘的NTP服务器,然后NTP就会把闰秒通知给客户端的操作系统,由操作系统来处理闰秒通知。

虽然闰秒调整对普通⺠众的⽇常⽣活不会产⽣影响。我们的操作系统是怎么处理正闰秒通知的?通常来说有三种实现:

● 后退⼀秒。

● 停⽌⼀秒。

● 真正的增加⼀秒。

前两种⽅式是以⼀种Workaround或Hack的⽅式解决这个问题。第⼀种⽅式会导致⼀些基于timestamp的 消息通知乱序了,⽽第⼆种会导致出现两个⼀模⼀样的timestamp。最后⼀种不会出现timestamp的问题。

原子钟(Atomic Clock)是什么

是使用铯元素或铷元素制作的精准时钟,每一百万年仅有一秒之误差。

原子钟(Atomic Clock)工作原理

每一原子都有自己的特征振动频率(特征谱线)。譬如当食盐被喷洒到火焰上时食盐中的元素钠会发出的桔黄色的光。一个原子具有多种振动频率,一些位于无线电波波段,一些位于可见光波段,而另一些则处在两者之间。铯133则被普遍地选用作原子钟。将铯原子共振子置于原子钟内,需要测量其中一种的跃迁频率。通常是采用锁定晶体振荡器到铯原子的主要微波谐振来实现。这一信号处于无线电的微波频谱范围内,并恰巧与广播卫星的发射频率相似,因此工程师们对制造这一频谱的仪器十分在行。为了制造原子钟,铯原子会被加热至汽化,并通过一个真空管。在这一过程中,首先铯原子气要通过一个用来选择合适的能量状态原子的磁场,然后通过一个强烈的微波场。微波能量的频率在一个很窄的频率范围内震荡,以使得在每一个循环中一些频率点可以达到9,192,631,770Hz。精确的晶体振荡器所产微波的频率范围已经接近于这一精确频率。当一个铯原子接收到正确频率的微波能量时,能量状态将会发生相应改变。在更远的真空管的尽头,另一个磁场将那些由于微波场在正确的频率上而已经改变能量状态的铯原子分离出来。在真空管尽头的探测器将打击在其上的铯原子呈比例的显示出,并在处在正确频率的微波场处呈现峰值。这一峰值被用来对产生的晶体振荡器作微小的修正,并使得微波场正好处在正确的频率。这一锁定频率被9,192,631,770除,得到常见的现实世界需要的每秒一个脉冲。

FTS和NIST原子钟系统

第一台商用铯原子钟由美国马萨诸塞国家公司制作。现在,Frequrency Electronics,FTS,以及惠普公司都生产商用原子钟。由于原子钟体积太大,耗费能量过高,因此以前一直无法商用。最近,NIST克服了传统原子钟的这些缺点。新型的原子钟体积同一粒米差不多大小,准确度为126年每秒(经过126年时间才会相差一秒),可以用在计算机芯片以及商用手持设备中,比如收音机,GPS系统以及蜂窝电话等等。

总结

之所以出现润秒的现象,本质上是我们采用的UTC(Coordinated Universal Time)计时存在一定误差,不能真正反映实际时间的流逝,由此引发了需要找到一种更为精确的计时方法,目前就是原子钟原子钟(Atomic Clock)。

相关文章
|
15天前
|
编解码 安全 Linux
Clock sources, Clock events, sched_clock() and delay timers【ChatGPT】
Clock sources, Clock events, sched_clock() and delay timers【ChatGPT】
|
3月前
|
编译器 测试技术
常用函数\clock
常用函数\clock
20 1
clock函数
clock函数
73 0
|
网络协议 测试技术
TIME_WAIT过多及解决
最近用http_load做压测,跑出来一大串“Cannot assign requested address ”的错误,查了一下,是TIME_WAIT过多导致的。因为短时间内有太多连接,所以占用了大量端口,同时关闭连接后又处于TIME_WAIT状态,端口不能复用,所以慢慢的无端口可用,所以就“Cannot assign requested address”了。
1093 1
|
Linux Windows 开发工具
POSIX下三种time(atime,mtime,ctime)
在windows下一个文件有三种时间属性: 1>创建时间 2>修改时间 3>访问时间 相似的在Linux下一个文件也有三种时间属性: (与windows不同的是linux没有创建时间,而多了个访问时间) 1>访问时间(access time 简写为atime) ...
1840 0
|
网络协议 关系型数据库 MySQL
[LeetCode] Exclusive Time of Functions 函数的独家时间
Given the running logs of n functions that are executed in a nonpreemptive single threaded CPU, find the exclusive time of these functions.
966 0