TurboLinux11system»adjtimex简介
Adjtimex介绍
linux 系统有两个时钟:一个是由主板电池驱动的“Real Time Clock”也叫做RTC或者叫CMOS时钟,硬件时钟。当操作系统关机的时候,用这个来记录时间,但是对于运行的系统是不用这个时间的。另一个时间是 “System clock”也叫内核时钟或者软件时钟,是由软件根据时间中断来进行计数的,内核时钟在系统关机的情况下是不存在的,所以,当操作系统启动的时候,内核时 钟是要读取RTC时间来进行时间同步(有些情况下,内核时钟也可以通过ntp服务器来读取时间) 这两个时钟通常会有一些误差,所以长时间可以导致这两个时钟偏离的比较多,最简单的保持两个时间同步的方法是用软件测出他们之间的误差率,然后用软件进行 修正。在每次重新启动系统的时候,系统都会用hwclock命令对时间进行同步。如果内核时钟在每一个时间中断都快或者慢的话,可以用adjtimex命 令进行调整,使得RTC和内核时间走的快慢一致。 adjtimex 允许用户来调整内核的时间参数,因此可以改变内核时间的速度,可以用hwclock命令来比较出内核时间和RTC时间的偏移率,然后利用adjtimex 命令根据偏移率来对内核时间进行校正,使得内核时间走的快些或者慢些,当经过调整的内核时间跟RTC时间走的同样快的时候,可以把这个命令行写到启动脚本 里面,让每次机器启动的时候都可以把内核的时间参数调整正确。
Adjtimex安装
首先请到下面网址下载:
ftp://ftp.cse.cuhk.edu.hk/pub/redhat/linux/9/en/os/i386/RedHat/RPMS/adjtimex-1.13-6.i386.rpm
然后使用下面指令安装:
# rpm –ivh adjtimex-1.13-6.i386.rpm
Adjtimex命令使用说明
语法:adjtimex [OPTION]… 主要参数说明:
-p, –print 输出内核时间变量的值
-t, –tick val 设置内核时钟计数间隔(微秒)
-f, –frequency newfreq 设置系统时钟偏移量
-c, –compare[=count] 比较系统时钟和CMOS时钟
-i, –interval tim 设置时钟比较间隔时间 (sec)
-l, –log[=file] 将当前时间记录到文件中
–host timeserver 查询时间服务器
-u, –utc 将CMOS时钟设置成UTC
Adjtimex应用
查看当前内核时间变量的信息
# adjtimex -p
mode: 0
offset: 0
frequency: 573135
maxerror: 16384000
esterror: 16384000
status: 65
time_constant: 6
precision: 1
tolerance: 33554432
tick: 10000
raw time: 1189736934s 800946us = 1189736934.800946
return value = 5
比较系统时钟和CMOS时钟的误差
# adjtimex --compare
--- current --- -- suggested --
cmos time system-cmos 2nd diff tick freq tick freq
1191706436 -1969378.503326 -1969378.503326 10000 573135
1191706446 -1969378.503351 -0.000026 10000 573135
1191706456 -1969378.503359 -0.000007 10000 573135 10000 619952
1191706466 -1969378.503403 -0.000045 10000 573135 10000 866825
1191706476 -1969378.503406 -0.000003 10000 573135 10000 591825
1191706486 -1969378.503454 -0.000048 10000 573135 10000 887140
1191706496 -1969378.503449 0.000005 10000 573135 10000 540265
1191706506 -1969378.503510 -0.000061 10000 573135 10000 973075
2nd diff表示系统时间在10秒周期内快了还是慢了几秒种,如“-0.000026”在这里表示系统时间在10秒钟内慢了0.000026秒(注意,这里系 统会连续测试出好几个连续的差别,一般可以参考平均值)。 前面的tick/freq字段表示内核的tick和freq值,后面的tick/freq表示系统对tick和freq的推荐值,用这个值可以对系统时间 进行校正。针对上面的误差可以不需要校正,若需要修正可使用adjtimex –t或adjtimex –f指令进行修正。
修正系统时间和CMOS时间之间的误差:
# adjtimex –t 10002
把系统10秒(10000微秒)的长度定义成实际时间的10002微秒,也就是说让系统时间走的快点,也可以说每系统时间走10秒(10000微秒)就快2微秒,从而系统时间跟上了RTC时间,达到了时间校正的目的。
TurboLinux11system»adjtimex简介的更多相关文章
- ASP.NET Core 1.1 简介
ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...
- MVVM模式和在WPF中的实现(一)MVVM模式简介
MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...
- Cassandra简介
在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...
- REST简介
一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...
- Microservice架构模式简介
在2014年,Sam Newman,Martin Fowler在ThoughtWorks的一位同事,出版了一本新书<Building Microservices>.该书描述了如何按照Mic ...
- const,static,extern 简介
const,static,extern 简介 一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 执行时刻:宏是预编 ...
- HTTPS简介
一.简单总结 1.HTTPS概念总结 HTTPS 就是对HTTP进行了TLS或SSL加密. 应用层的HTTP协议通过传输层的TCP协议来传输,HTTPS 在 HTTP和 TCP中间加了一层TLS/SS ...
- 【Machine Learning】机器学习及其基础概念简介
机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...
- Cesium简介以及离线部署运行
Cesium简介 cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎,一款开源3DGIS的js库.cesium支持3D,2D,2.5D形式的地图展示,可以自行绘制图形,高亮区 ...
随机推荐
- POJ 1386 Play on Words(单词建图+欧拉通(回)路路判断)
题目链接:http://poj.org/problem?id=1386 题目大意:给你若干个字符串,一个单词的尾部和一个单词的头部相同那么这两个单词就可以相连,判断给出的n个单词是否能够一个接着一个全 ...
- LeetCode解题报告—— Best Time to Buy and Sell Stock
Best Time to Buy and Sell Stock Say you have an array for which the ith element is the price of a gi ...
- Remove Duplicates from Sorted List II——简单的指针问题
Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numb ...
- 第 18 章 Django 入门
当今的网站实际上都是富应用程序(rich application),就像成熟的桌面应用程序一样.Python提供了一组开发Web应用程序的卓越工具.在本章中,我们将学习如何使用Django(http: ...
- 使用matlab表示“段数不确定”的分段函数
示例函数: 分段函数f(x)的段数为数组a的长度减1,在表达f(x)时,不能直接使用a的长度5-1=4. 方法1: 先计算每个间隔点的函数值f(a2),f(a3),f(a4),再循环表示f(x). f ...
- bzoj 1176 CDQ分治
思路:首先我们将问题转换一下,变成问在某个点左下角的权值和,那么每一个询问可以拆成4的这样的询问,然后 进行CDQ 分治,回溯的时候按x轴排序,然后用树状数组维护y的值. #include<bi ...
- 【C#】编码史记
计算机中的字是如何处理的? 如果你用放大镜看一下,可以看出屏幕上的字是由一个一个的像素点组成的,每一个字符用一组像素点拼接出来,这些像素点组成一幅图像,变成了我们的文字,计算机又是如何将我们的文字保存 ...
- Python类总结-封装(Property, setter, deleter)
Property #property #内置装饰器函数,只在面向对象中使用 from math import pi class Circle: def __init__(self,r ): self. ...
- MySQL 5.7 安装完成后,首次登陆的几个问题
Server:CentOS 7.0 MySQL : 5.7.20 MySQL Community Server (GPL) 1.首次登陆后修改密码: 根据安装时的选择不同,有mysqld_safe用m ...
- ddms 安卓录制
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 屏幕录制, 视频录制 保存为 . 打开 .显示在浏览器里. 设备屏幕捕捉 刷 ...