linux时间管理
/etc/sysconfig/clock
date –R
busybox的ntpd
ntpd -p ntp_server_addr -qNn
hwclock –w
ntpd vs ntpdate
ntpdate直接调整时间到指定server。
ntpd一方面将自己作为server响应下级请求,另一方面逐步调整本机时间以对齐上级服务器时间,因此ntpd既是client又是server。
另有一个ntpclient程序可作为轻量级的ntp client使用。
jiffies变量:unsigned long 型变量,要么与jiffies_64相同,要么取其低32位。
比较缓存值与当前值:
#include<linux/jiffies.h>
int time_after(unsigned long a,unsigned long b);
int time_before(unsigned long a,unsigned long b);
int time_after_eq(unsigned long a,unsigned long b);
int time _before_eq(unsigned long a,unsigned long b);
如果需要精度很高的计时:
x86上可以使用TSC:
<asm/msr.h>
// Architecture dependent
rdtsc(low32,high32);
rdtscl(low32);
rdtscll(var64);
一个与体系结构无关的函数:
<linux/timex.h>
cycles_t get_cycles(void);
在不支持的平台上返回0。
除了do_gettimeofday,还有一个函数可以获取绝对时间:
struct timespec current_kernel_time(void);
(?区别?)
以上两个函数在ARM平台都是通过 xtime 变量得到数据的。
adjtimex
一般情况下,linux仅在启动时读下RTC,然后就用system ticks跑时钟了。
氮素,RTC和用system ticks跑出来的时钟之间肯定是有偏差的,adjtimex可以计算出这个偏差是多少,并告诉内核该用怎样的参数去调整。
有两个man page和adjtimex相关:
man 2 adjtimex # 这个是syscall 的adjtimex
man 8 adjtimex # 这个是sys util的adjtimex
注意一下timex::freq的设置:
if(timex::mode == ADJ_FREQUENCY)
{
// 当前时钟频率低,需要提高:freq为正
// 当前时钟频率高,需要降低:freq为负
}
linux时间管理的更多相关文章
- Linux时间管理涉及数据结构和传统低分辨率时钟的实现
上篇文章大致描述了Linux时间管理的基本情况,看了一些大牛们的博客感觉自己写的内容很匮乏,但是没办法,只能通过这种方式提升自己……闲话不说,本节介绍下时间管理下重要的数据结构 设备相关数据结构 // ...
- linux 时间管理——概念、注意点(一)【转】
转自:http://www.cnblogs.com/openix/p/3324243.html 参考:1.http://bbs.eyeler.com/thread-69-1-1.html ...
- linux时间管理 之 jiffies
1.jiffies 又称时钟滴答,是一个全局变量,它的值在系统引导的时候初始化为0,在时钟中断初始化完成后,每次时钟中断发生,在时钟中断处理例程中都会将jiffies的值 +1. jiffies_64 ...
- linux设备驱动归纳总结(七):1.时间管理与内核延时【转】
本文转载自:http://blog.chinaunix.net/uid-25014876-id-100005.html linux设备驱动归纳总结(七):1.时间管理与内核延时 xxxxxxxxxxx ...
- 《Linux内核设计与实现》读书笔记(十一)- 定时器和时间管理【转】
转自:http://www.cnblogs.com/wang_yb/archive/2013/05/10/3070373.html 系统中有很多与时间相关的程序(比如定期执行的任务,某一时间执行的任务 ...
- 5 个在 Linux 中管理文件类型和系统时间的有用命令
对于想学习 Linux 的初学者来说要适应使用命令行或者终端可能非常困难.由于终端比图形用户界面程序更能帮助用户控制 Linux 系统,我们必须习惯在终端中运行命令.因此为了有效记忆 Linux 不同 ...
- Linux内核——定时器和时间管理
定时器和时间管理 系统定时器是一种可编程硬件芯片.它能以固定频率产生中断.该中断就是所谓的定时器中断.它所相应的中断处理程序负责更新系统时间,还负责执行须要周期性执行的任务. 系统定时器和时钟中断处理 ...
- Linux用户管理的复习时间
所谓三天不练手生,你还记得关于Linux用户管理的所有知识吗?现在就来跟我一起复习一下吧! 1.常用配置文件 用户信息文件: /etc/password 密码文件: /etc/shadow 用户组文件 ...
- Linux内核入门到放弃-时间管理-《深入Linux内核架构》笔记
低分辨率定时器的实现 定时器激活与进程统计 IA-32将timer_interrupt注册为中断处理程序,而AMD64使用的是timer_event_interrupt.这两个函数都通过调用所谓的全局 ...
随机推荐
- editplus 常用快捷键汇总 大小写代码折叠
文本类 新建普通文本:Ctrl+N新建浏览器窗口:Ctrl+Shift+B新建HTML页:Ctrl+Shift+N打开:Ctrl+O打开一个现有的文档文件结尾:Ctrl+End选区扩展到文档结尾处:C ...
- 冒泡排序(C++版)
/** Bubble Sort * * Key * * position: where swap * * iter: sub-position in each trip * */ template & ...
- [翻译]Java垃圾收集精粹(Java Garbage Collection Distilled)
source URL: http://www.infoq.com/articles/Java_Garbage_Collection_Distilled Name: Java Garbage Colle ...
- tyvj 1056 能量项链 区间dp (很神)
P1056 能量项链 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景 NOIP2006 提高组 第一道 描述 在Mars星球上,每个Mars人都随身佩 ...
- 获取验证码,60秒倒计时js
<input type="button" id="btn" value="免费获取验证码" /><script type= ...
- 整理的一些免费的Android项目实战系列视频教程
http://blog.itpub.net/29737144/viewspace-1212539/
- UDP通讯程序设计---6
一.函数化 1.1服务器使用的函数 创建socket----->socket 绑定地址-------->bind 接受数据-------->recvfrom 发送数据-------- ...
- php部分---面向对象:定义、实例化、构造函数、析构函数;
类 − 定义了一件事物的抽象特点.类的定义包含了数据的形式以及对数据的操作. 对象 − 是类的实例.一切皆对象.由类实例化出来的. 成员变量 − 定义在类内部的变量.该变量的值对外是不可见的,但是可以 ...
- codeforces 725/C
Hidden Word time limit per test 2 seconds memory limit per test 256 megabytes input standard input o ...
- Codeforces Round #339 Div.2 B - Gena's Code
It's the year 4527 and the tanks game that we all know and love still exists. There also exists Grea ...