这里先讲述一下时间在Linux中的概念:
1.RTC(Real Time Clock) -- 实时时钟
也叫做CMOS时钟, 它是PC主机板上的一块芯片,它靠电池供电,即使系统断电,也可以维持日期和时间。由于它独立于操作系统,所以也被称为硬件时钟,它为整个计算机提供一个计时标准,是最原始最底层的时钟数据,Linux只用RTC来获得时间和日期;然而,通过作用于/dev/rtc设备文件,也允许进程对RTC编程。通过执行/sbin/clock系统程序,系统管理员可以配置时钟.
2.OSC(Operation System Clock) -- 操作系统时钟
OSC时钟产生于PC主板上的定时/计数芯片,由操作系统控制这个芯片的工作,OS时钟的基本单位就是该芯片的计数周期。在开机时操作系统取得RTC中的时间数据来初始化OSC,然后通过计数芯片的向下计数形成了OSC,它更应该被称为一个计数器。OSC只在开机时才有效,而且完全由操作系统控制,所以也被称为软时钟或系统时钟
3.Java Date
[color=red]Java是基于VM的,OSC的出现正是为上层应用提供调用,避免与硬件交互,VM是一个基于操作系统的应用,所以Java的Date是取自OSC[/color].
4.时间同步
当设置OSC时间时,RTC时间不会自动同步,待关闭或者重启时,操作系统会自动同步OSC时间到RTC, 操作系统每隔一个固定时间会刷新或校正RTC中的信息,当操作系统关机时,时间交由主板上的RTC去记时,因为主板上的CMOS有锂电池供电.
当再次开机时,操作系统会去主板RTC上获取时间。
4.1 单独设置RTC
4.2 单独设置OSC
4.3 同步RTC时间到OSC
这条命令得理解才能记住,其实很简单就是 system to hardware,好理解吧:)
4.3 同步OSC时间到RTC
同样的可以理解为hardware to system , :)
1.RTC(Real Time Clock) -- 实时时钟
也叫做CMOS时钟, 它是PC主机板上的一块芯片,它靠电池供电,即使系统断电,也可以维持日期和时间。由于它独立于操作系统,所以也被称为硬件时钟,它为整个计算机提供一个计时标准,是最原始最底层的时钟数据,Linux只用RTC来获得时间和日期;然而,通过作用于/dev/rtc设备文件,也允许进程对RTC编程。通过执行/sbin/clock系统程序,系统管理员可以配置时钟.
2.OSC(Operation System Clock) -- 操作系统时钟
OSC时钟产生于PC主板上的定时/计数芯片,由操作系统控制这个芯片的工作,OS时钟的基本单位就是该芯片的计数周期。在开机时操作系统取得RTC中的时间数据来初始化OSC,然后通过计数芯片的向下计数形成了OSC,它更应该被称为一个计数器。OSC只在开机时才有效,而且完全由操作系统控制,所以也被称为软时钟或系统时钟
3.Java Date
[color=red]Java是基于VM的,OSC的出现正是为上层应用提供调用,避免与硬件交互,VM是一个基于操作系统的应用,所以Java的Date是取自OSC[/color].
4.时间同步
当设置OSC时间时,RTC时间不会自动同步,待关闭或者重启时,操作系统会自动同步OSC时间到RTC, 操作系统每隔一个固定时间会刷新或校正RTC中的信息,当操作系统关机时,时间交由主板上的RTC去记时,因为主板上的CMOS有锂电池供电.
当再次开机时,操作系统会去主板RTC上获取时间。
4.1 单独设置RTC
clock --set --date 2010-11-27
4.2 单独设置OSC
date -s 2010-11-27
4.3 同步RTC时间到OSC
clock --hctosys
这条命令得理解才能记住,其实很简单就是 system to hardware,好理解吧:)
4.3 同步OSC时间到RTC
clock --systohc
同样的可以理解为hardware to system , :)