Linux 操作系统的时钟系统


时钟系统介绍

对于 Linux 操作系统,主要有两种时钟系统:

1、 硬件时钟系统:该时钟系统的运行独立于任何系统控制程序,在CPU 内部运行,既使系统断电,该时钟系统仍然保持运行。此时钟系统常常被称为实时时钟系统(RTC)、 BIOS 时钟系统或CMOS 时钟系统。

2 、系统时间:该时间为 Linux 内核的时钟系统所维护,并且被定时中断程序所驱动,该时间仅当Linux 系统运行过程中有意义。该系统时间表示为以UTC(通用协调时间,Universal Time Coordinated) 计算,自1970 年1 月1 日0时0 分0 秒起至当前时刻所经过的秒数(该数字不是整数,以小数方式表示精度)。

在 Linux 系统中,真正起作用的是系统时间。硬件时钟系统的唯一作用是在Linux 系统没有运行时,保持时间的运行。当Linux 操作系统启动时,系统会自动将硬件时钟系统的时间同步到Linux 系统时间,并且在之后的整个Linux运行过程中,不再使用该硬件时钟系统(这与DOS 的实现方式完全不同在DOS 中只有硬件时间系统的概念)。而在Linux 操作系统关闭时,系统会自动将当前的Linux 系统时间同步到硬件时钟系统所维护的时间。


硬件时钟系统与系统时间的同步

/sbin/hwclock 用于同步硬件时钟系统的时间与Linux 操作系统时间。
查看当前硬件时钟系统时间的命令为
/sbin/hwclock –show

将硬件时钟系统时间同步到 Linux 操作系统时间的命令为:

/sbin/hwclock –hctosys

将 Linux 操作系统时间同步到硬件时钟系统时间的命令为:

/sbin/hwclock –systohc

如果观察系统启动/关闭时执行的初始化脚本”/etc/rc.d/rc.sysinit”, 我们不难发现系:统启动过程中,自动调用“/sbin/hwclock –hctosys” 将硬件时钟系统时间同步到操作系统时间;而在系统关闭过程中,自动调用“/sbin/hwclock
–systohc” 将操作系统时间同步到硬件时钟系统时间。

粤ICP备11097351号-1