linux系统时间和硬件时钟时间 FAQ

Linux有两个时钟, 一个是system time, 一个是hardware clock. 使用date和hwclock命令可分别查看和设定系统时间和硬件时间.
The Hardware Clock: 该时钟通常称为硬件时钟,实时时钟(RTC,real time clock)或CMOS时钟。它独立于任何软件,在关机时仍然运行。
The System Time: 该时钟有Linux Kernel维护,并由时钟中断驱动。只有Linux运行时,该时钟才有意义。系统时间是自00:00:00 January 1, 1970 UTC经过的总秒数. 但是系统时间并不是一个整数, 它的精度是虚拟无穷的.
通常两个时钟是不同步的, 它们之间存在漂移(drift).可以实验一下,分别执行date和sbin/hwclock命令,得到的时间是不同的。
$ date
Thu Jun 15 19:28:49 CST 2006

$/sbin/hwclock
Thu 15 Jun 2006 07:28:40 PM CST -0.079624 seconds
1. 查看和设定硬件时间 - hwclock命令
hwclock命令用于查看或设定硬件时间。该命令的老版本是clock(新的命名更清晰,避免了混淆),为保持兼容,老的命令仍然可用,它只是一个指向hwclock的symbolic link.
hwclock的选项:

--systohc
将系统时间写入到硬件时钟. 也就是说, 将Hardware Clock调整到current System Time的值.
-–hctosys
将硬件时间写入到系统时间. 通常每次linux启动的时候, 都要执行该命令, 将硬件时间的值写到system time中.

--adjust
Add or subtract time from the Hardware Clock to account for systematic drift since the last time the clock was set or adjusted.
硬件时钟通常不太精确, 每天会快或慢一定的时间. 着称为系统化漂移(systematic drift). hwclock的"adjust"功能可以纠正这种偏移.
它的工作原理是, 根据用户多次调用hwclock –-set(或--systohc)跳转硬件时钟的历史记录计算时钟每天的漂移量, 得到一个adjust的值, 从而hwclock --adjust.
这些设定硬件时钟的历史记录由hwclock保存在文件/etc/adjtime中, called the adjtime file.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值