热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux怎么从旧版本内核,转:关于低版本linux内核的时间解决方案

各bit从低位到高位依次表示STA_PLLEnablePLLupdates(read-write).STA_PPSFREQEnablePPSfreqdiscipline(read-

各bit从低位到高位依次表示

STA_PLL Enable PLL updates (read-write).

STA_PPSFREQ Enable PPS freq discipline (read-write).

STA_PPSTIME Enable PPS time discipline (read-write).

STA_FLL Select frequency-lock mode (read-write).

STA_INS Insert leap (read-write).

STA_DEL Delete leap (read-write).

STA_UNSYNC Clock unsynchronized (read-write).

STA_FREQHOLD Hold frequency (read-write).

STA_PPSSIGNAL PPS signal present (read-only).

STA_PPSJITTER PPS signal jitter exceeded (read-only).

STA_PPSWANDER PPS signal wander exceeded (read-only).

STA_PPSERROR PPS signal calibration error (read-only).

STA_CLOCKERR Clock hardware fault (read-only).

STA_UNSYNC在0x40位,也就是前面提到的64bit,当此位为0时,11分钟模式是开启的,为1时关闭,因此当结构中modes的MOD_STATUS位为1,且STA_UNSYNC为1时,执行ntp_adjtime后将关闭该模式,MOD_STATUS位为1且STA_UNSYNC为0时,执行ntp_adjtime后将开启该模式。

再附上我修改ntp-4.2.4p4版本ntpd的patch

diff -ur ntp-4.2.4p4/ntpd/ntp_loopfilter.c

ntp-4.2.4p4.modify/ntpd/ntp_loopfilter.c

--- ntp-4.2.4p4/ntpd/ntp_loopfilter.c 2007-02-24

19:02:05.000000000 +0800

+++ ntp-4.2.4p4.modify/ntpd/ntp_loopfilter.c 2008-07-04

13:41:03.000000000 +0800

@@ -636,15 +636,18 @@

}

}

+

+ ntv.status |= STA_UNSYNC;

+

if (ntp_adjtime(&ntv) == TIME_ERROR) {

- NLOG(NLOG_SYNCEVENT | NLOG_SYSEVENT)

- msyslog(LOG_NOTICE,

- "kernel time sync error x", ntv.status);

+ //NLOG(NLOG_SYNCEVENT | NLOG_SYSEVENT)

+ //msyslog(LOG_NOTICE,

+ //"kernel time sync error x", ntv.status);

ntv.status &= ~(STA_PPSFREQ |

STA_PPSTIME);

} else {

if ((ntv.status ^ pll_status) & ~STA_FLL)

附ntpdate的用法

ntpdate 支持下列选项:

-a

启用身份验证功能并指定要用于身份验证的密钥标识符。密钥和密钥标识符必须在客户端密钥文件和服务器密钥文件中都匹配。缺省设置是禁用身份验证功能。

-B 强制始终使用adjtime 系统调用来微调时间(即使测量到的偏移量大于+-128 毫秒)。缺省设置是在偏移量大于+-128

毫秒时使用clock_settime 系统调用步进时间。请注意,如果偏移量比+-128

毫秒大得多,则可能需要较长的时间(数小时)来将时钟微调到正确的值。在此期间,不应使用主机来同步化客户端。

-b 强制使用clock_settime 系统调用来步进时间,而不是使用adjtime

系统调用来微调时间(缺省值)。如果在引导时从启动文件中调用,则应使用该选项。

-d 启用调试模式,在该模式下ntpdate

将经历所有步骤,而不仅仅是调整本地时钟。另外还将输出可用于一般性调试的信息。

-e authdelay 将执行身份验证功能的处理延迟指定为值authdelay

(以秒及其分数为单位;有关详细信息,请参阅xntpd(1M) )。虽然指定一个值可以在速度很慢的CPU

上提高走时精度,但是该数通常都非常小,以至在大多数情况下都可以将其忽略。

-k keyfile 将身份验证密钥文件的路径指定为字符串keyfile 。缺省值为/etc/ntp.keys

。该文件应该采用xntpd 中所述的格式。

-o version 将外发数据包的NTP 版本指定为整数版本(可以是1 或2)。缺省值是3。它允许将ntpdate与早期NTP

版本一起使用。

-p samples 将要从每个服务器中获取的示例数指定为整数示例,其值的范围是1 到8(包括这两个数)。缺省值为4。

-q 输出偏移量测量结果、服务器层次以及延迟测量结果,但不调整本地时钟。它类似于-d

选项,后者提供更为详细的调试信息。

-s 将日志记录输出从标准输出(缺省)转移到系统syslog (请参阅syslog(3C) )工具。它主要是为便于使用cron

脚本而设计。

-t timeout 将等待服务器响应的最长时间指定为超时值,以秒及其分数为单位。该值将四舍五入成0.2 秒的倍数。缺省值是1

秒,该值适用于轮询局域网。

-u 指示ntpdate

将无特权的端口用于外发的数据包。在防火墙后,如果阻塞向特权端口的传入流量,并且您希望与防火墙后的主机进行同步,则该选项极为有用。请注意,

-d 选项始终使用无特权的端口。

-v 输出NTP 版本号和偏移量测量信息。

当ntpdate提示下面错误时,使用ntpdate –b x.x.x.x就ok了

ntpdate: Can't adjust the time of day: Invalid argumen



推荐阅读
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • Answer:Theterm“backslash”isonofthemostincorrectlyusedtermsincomputing.People ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了重温Linux内核:互斥和同步相关的知识,希望对你有一定的参考价值。文章目录 ... [详细]
  • 第2讲 Android Camera Native Framework 初识cameraserver进程
    本讲是AndroidCameraNativeFramework专题的第2讲,我们初识CameraServer,包括如下内容:Camera ... [详细]
  • 开发笔记:实验7的文件读写操作
    本文介绍了使用C++的ofstream和ifstream类进行文件读写操作的方法,包括创建文件、写入文件和读取文件的过程。同时还介绍了如何判断文件是否成功打开和关闭文件的方法。通过本文的学习,读者可以了解如何在C++中进行文件读写操作。 ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • Windows7 64位系统安装PLSQL Developer的步骤和注意事项
    本文介绍了在Windows7 64位系统上安装PLSQL Developer的步骤和注意事项。首先下载并安装PLSQL Developer,注意不要安装在默认目录下。然后下载Windows 32位的oracle instant client,并解压到指定路径。最后,按照自己的喜好对解压后的文件进行命名和压缩。 ... [详细]
  • This article discusses the efficiency of using char str[] and char *str and whether there is any reason to prefer one over the other. It explains the difference between the two and provides an example to illustrate their usage. ... [详细]
  • 本文详细介绍了git常用命令及其操作方法,包括查看、添加、提交、删除、找回等操作,以及如何重置修改文件、抛弃工作区修改、将工作文件提交到本地暂存区、从版本库中删除文件等。同时还介绍了如何从暂存区恢复到工作文件、恢复最近一次提交过的状态,以及如何合并多个操作等。 ... [详细]
  • 本文介绍了使用哈夫曼树实现文件压缩和解压的方法。首先对数据结构课程设计中的代码进行了分析,包括使用时间调用、常量定义和统计文件中各个字符时相关的结构体。然后讨论了哈夫曼树的实现原理和算法。最后介绍了文件压缩和解压的具体步骤,包括字符统计、构建哈夫曼树、生成编码表、编码和解码过程。通过实例演示了文件压缩和解压的效果。本文的内容对于理解哈夫曼树的实现原理和应用具有一定的参考价值。 ... [详细]
  • Android自定义控件绘图篇之Paint函数大汇总
    本文介绍了Android自定义控件绘图篇中的Paint函数大汇总,包括重置画笔、设置颜色、设置透明度、设置样式、设置宽度、设置抗锯齿等功能。通过学习这些函数,可以更好地掌握Paint的用法。 ... [详细]
  • Linux I2C 几个结构体间的关系以及对于一个I2C设备的移植,我们需要做些什么工作
    在Linux内核源代码中的drivers目录下包含一个i2c目录,而在i2c目录下又包含如下文件和文件夹:•i2c-core.c这个文件实现了I2C核心的功能以及proc ... [详细]
  • .netFramework4.5框架下运行4.0站点程序的问题
    事件的起因:公司部署好的站点突然发现出了问题,经过一步步的查找(查找问题所在的艰辛只有自己知道),查源代码发现 ... [详细]
  • 显卡750ti价格(750ti显卡发行价格)
    |责编:林光楠在当前这个B2BB2C逐步取代传统卖场占据主导地位的时代,通过电商、淘宝平台直接购买电脑相信已经成了不少对DIY认识不太深入的主流用户首选的配机方案。相比线下购买,网 ... [详细]
author-avatar
潇湘V烟雨
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有