clock_gettime接口和linux时间系统
来源:互联网 发布:dnf经常网络中断2017 编辑:程序博客网 时间:2024/04/29 03:52
RTC/OSC
RTC,Real Time Clock,真实时钟,也叫做CMOS时钟,又叫walltime
OSC,Operation System Clock,系统时钟。在开机时操作系统取得RTC中的时间数据来初始化OSC,之后完全由完全由操作系统控制。
当设置OSC时间时,RTC时间不会自动同步,待关闭或者重启时,操作系统会自动同步OSC时间到RTC, 操作系统每隔一个固定时间会刷新或校正RTC中的信息,当操作系统关机时,时间交由主板上的RTC去记时,因为主板上的CMOS有锂电池供电.
当再次开机时,操作系统会去主板RTC上获取时间。
CLOCK_REALTIME/CLOCK_REALTIME
CLOCK_REALTIME,真实时间,walltime,即RTC,会被settime()/settimeofday()影响。
CLOCK_MONOTONIC,单调时间,即从某个时间点开始到现在过去的时间。用户不能修改这个时间,但是当系统进入休眠(suspend)时,CLOCK_MONOTONIC是不会增加的。不会被settime()/settimeofday()影响。
NTP的影响
如果NTP调整时间时调用了adjtimex()接口,会同时对CLOCK_REALTIME和CLOCK_MONOTONIC都有影响。
CLOCK_MONOTONIC_RAW
与monotonic时间类似,也是单调递增的时间,但raw monotonic time不会受到NTP时间调整的影响
int clock_gettime(clockid_t clk_id, struct timespec *tp);
clk_id为CLOCK_MONOTONIC,则返回系统启动后秒数和纳秒数。
clk_id为CLOCK_REALTIME,则返回RTC
RTC,Real Time Clock,真实时钟,也叫做CMOS时钟,又叫walltime
OSC,Operation System Clock,系统时钟。在开机时操作系统取得RTC中的时间数据来初始化OSC,之后完全由完全由操作系统控制。
当设置OSC时间时,RTC时间不会自动同步,待关闭或者重启时,操作系统会自动同步OSC时间到RTC, 操作系统每隔一个固定时间会刷新或校正RTC中的信息,当操作系统关机时,时间交由主板上的RTC去记时,因为主板上的CMOS有锂电池供电.
当再次开机时,操作系统会去主板RTC上获取时间。
CLOCK_REALTIME/CLOCK_REALTIME
CLOCK_REALTIME,真实时间,walltime,即RTC,会被settime()/settimeofday()影响。
CLOCK_MONOTONIC,单调时间,即从某个时间点开始到现在过去的时间。用户不能修改这个时间,但是当系统进入休眠(suspend)时,CLOCK_MONOTONIC是不会增加的。不会被settime()/settimeofday()影响。
NTP的影响
如果NTP调整时间时调用了adjtimex()接口,会同时对CLOCK_REALTIME和CLOCK_MONOTONIC都有影响。
CLOCK_MONOTONIC_RAW
与monotonic时间类似,也是单调递增的时间,但raw monotonic time不会受到NTP时间调整的影响
int clock_gettime(clockid_t clk_id, struct timespec *tp);
clk_id为CLOCK_MONOTONIC,则返回系统启动后秒数和纳秒数。
clk_id为CLOCK_REALTIME,则返回RTC
0 0
- clock_gettime接口和linux时间系统
- linux 上时间相关的函数 time ,_ftime , gettimeofday, clock_gettime
- linux下的c语言时间函数clock_gettime
- clock_gettime获取时间
- linux getusage && linux clock_gettime
- clock_gettime系统调用详解
- clock_gettime(系统调用)
- clock_gettime系统调用详解
- linux clock_gettime函数详解
- linux clock_gettime函数详解
- linux clock_gettime函数详解
- clock_gettime和gettimeofday
- clock_gettime测代码运行时间
- LInux系统时间和硬件时间
- linux 设置系统时间和硬件时间
- Linux的系统时间和硬件时间
- linux 系统时间和硬件时间设置
- Linux 系统时间和硬件时间
- 第二篇、创建型设计模式——工厂方法模式
- iOS NSPredicate特殊字符判断无法正常使用
- JS中使用Date对象实时显示系统时间小示例
- Android 资源下载地址
- Hi3519V100与Hi3519V101的区别
- clock_gettime接口和linux时间系统
- BZOJ 1007
- No service of type Factory available in ProjectScopeServices apply plugin: 'com.github.dcendents.an
- windows安装mysql到最后一步时卡死
- 【Android】SQLite数据库实例
- RabbitMQ与java、Spring结合实例详细讲解
- SpringMVC学习(01)--前端控制器DispatcherServlet的初始化
- Java进阶3 —— 类和接口设计原则
- AOP术语