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形式的地图展示,可以自行绘制图形,高亮区 ...
随机推荐
- leetcode 之Remove Duplicates from Sorted Array(1)
删除数组中的重复元素并返回新数组的个数 思路:保留不同的元素即可. int removeDeplicates(int A[], int n) { ; ; i < n; i++) { if (A[ ...
- Windows内核分析——内核调试机制的实现(NtCreateDebugObject、DbgkpPostFakeProcessCreateMessages、DbgkpPostFakeThreadMessages分析)
本文主要分析内核中与调试相关的几个内核函数. 首先是NtCreateDebugObject函数,用于创建一个内核调试对象,分析程序可知,其实只是一层对ObCreateObject的封装,并初始化一些结 ...
- 取消cp确认
使用cp -r -f 强制覆盖拷贝命令时,每一个文件都需要认为的键入“Y”进行确认 可以通过取消同名cp的定义,命令如下unalias cp
- TestDirector其他
一.查看连接TD的用户 1.用单击界面上的“Connections”按钮,进入如下图: 二.Licenses管理 1.单击“Licenses”按钮,显示如下图: 2.单击“Modify License ...
- 未能从程序集“Elmah”中加载类型“Elmah.ErrorLogModule”错误
项目名与Elmah重名了,以为是配置文件的问题,搞了好久.
- 洛谷P3402 【模板】可持久化并查集 [主席树,并查集]
题目传送门 可持久化并查集 n个集合 m个操作 操作: 1 a b 合并a,b所在集合 2 k 回到第k次操作之后的状态(查询算作操作) 3 a b 询问a,b是否属于同一集合,是则输出1否则输出0 ...
- C++ 四种显示转换
转自:http://www.jellythink.com/archives/205 (果冻想) 前言 这篇文章总结的是C++中的类型转换,这些小的知识点,有的时候,自己不是很注意,但是在实际开发中 ...
- 第10天-JavaScript正则表达式
正则有什么用 给定的字符串是否符合正则表达式的过滤逻辑 通过正则表达式,从字符串中获取我们想要的特定部分 替换字符串满足正则表达式的字符 例如:验证邮箱.手机号.银行卡.采集器(爬虫).中奖信息133 ...
- mysql-8.0.12安装和配置
1.下载Mysql8.0.12压缩包.下载地址:https://dev.mysql.com/downloads/file/?id=480557 2.解压文件到本地指定目录.这里我的mysql根目录是: ...
- RabbitMQ (一)
学习RabbitMQ 可以先先了解一下AMQP 简单介绍: AMQP从一开始就设计成为开放标准,以解决众多的消息队列需求和拓扑结构问题,凭借开发,任何人都可以执行这一标准.针对标准编码的任何人都可以和 ...