linux 下高精度时间】的更多相关文章

今天在公司代码中看到了使用select函数的超时功能作定时器的用法,便整理了如下几个Linux下的微秒级别的定时器.在我的Ubutu10.10 双核环境中,编译通过. /* * @FileName: test_sleep.c * @Author: wzj * @Brief: * * * @History: * * @Date: 2012年02月07日星期二22:20:00 * */ #include<stdio.h> #include<stdlib.h> #include<t…
Linux下长时间ping网络加时间戳并记录到文本   由于一些原因,比如需要检查网络之间是否存在掉包等问题,会长时间去ping一个地址,由于会输出大量的信息而且最好要有时间戳,因此我们可以使用简单的几个shell命令组合就可以实现:长时间ping一个地址,记录每次ping的时间戳,并输出到文本保存,另外我们还可以将这个动作放到后台去执行,以免登陆注销之后被中断.   首先是长时间ping,这个非常简单,使用参数-c即可:  [root@test ~]# ping 192.168.2.1 -c…
Linux下精确控制时间的函数 在测试程序接口运行时间的时候,常用time,gettimeofday等函数,但是这些函数在程序执行的时候是耗费时间的,如果仅仅测试时间还行,但是如果程序中用到时间控制类的函数,如time,  gettimeofday自身还会消耗不少时间,且增加程序执行的成本,这样得到的时间不精确. 针对这种情况,使用CPU心跳的函数来处理时间,经封装后的函数得到时间精确,且使用方便. 缺点:有一些机子由于硬件原因,可能不支持CPU心跳rdtscpll函数的使用,一般在虚拟机上都不…
Linux下设置时间 提供两种最根本有效的方式,就是更改时区.这里以更改为国内上海时间例子,其他地方时区同理. 方法一 备份文件 mv /etc/localtime /etc/localtime.bak 复制时区文件 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 这里选择了亚洲下的上海时区,可ls查看各文件夹下的时区文件. 3.重启系统 4.查看当前时间 date 是否已经是正确时间啦.一般建议使用第二种建立链接方式 方法二 备份文件 m…
Linux下系统时间函数.DST等相关问题总结 下面这个结构体存储了跟时区相关的位移量(offset)以及是否存在DST等信息,根据所在的时区信息,很容易找到系统时间与UTC时间之间的时区偏移,另外根据rule是否为-1来确定此时区是否实施了夏令时,若为-1,表明这个时区地已经实现了夏令时,则还需要经过去DST阶段,否则只需要经过去时区就可以得到UTC时间. struct zone zones[N_ZONES] = { /* offset rules */ { -43200, -1 }, /*…
1.linux下时间管理机制: 在系统启动时,Linux操作系统将时间从CMOS中读到系统时间变量中,以后修改时间通过修改系统时间实现.为了保持系统时间与CMOS时间的一致性,Linux每隔11分钟会将系统时间写入CMOS,同步时间. 从这可以看出,获取系统时间有两个途径,一种是从CMOS中读,一种是从系统中读,但修改时间却只有一种,即修改linux系统中的时间,而修改CMOS中的时间是无效的,因为CMOS中的时间会被定时重写掉. 另外还有一点要注意,修改了系统时间并不是马上生效的.2.查看系统…
一.修改linux的时间在root用户下,使用date指令:date -s1.只修改日期,不修改时间,输入: date -s -- 2.只修改时间,输入: date -s :: 3.同时修改日期时间,注意要加单/双引号,日期与时间之间有一空格,输入: date -s "2015-03-06 14:15:00" 4.修改完后,把系统时间写入CMOS,输入: clock -w 二.修改时区不重启在root用户下复制相应的时区文件,替换系统时区文件: cp /usr/share/zonein…
2017/6/21 时间这一概念在生活中至关重要,而在操作系统中也同样重要,其在系统中的功能绝不仅仅是给用户提供时间这么简单,内核的许多机制都依赖于时间子系统.但凡是要在某个精确的时间执行某个事件,必然会用到时间子系统.而内核中定时器的发展可以以2.6版本的内核作为一个分界点.之前主要是低分辨率定时器,2.6开发期间便引入了高分辨率定时器.分辨率的高低意味着时间粒度的大小. 本节重点介绍下涉及到的几个重点概念 时钟设备 周期时钟/动态时钟 高分辨率/低分辨率 定时器 时钟设备时钟设备算是最低层的…
本文转载自:http://blog.csdn.net/little_walt/article/details/52880840 Linux系统下包含两个时间:系统时间和RTC时间. 系统时间:是由主芯片的定时器进行维护的时间,一般情况下都会选择芯片上最高精度的定时器作为系统时间的定时基准,以避免在系统运行较长时间后出现大的时间偏移.特点是掉电后不保存. RTC时间:是指系统中包含的RTC芯片内部所维护的时间.RTC芯片都有电池+系统电源的双重供电机制,在系统正常工作时由系统供电,在系统掉电后由电…
在RHEL下,如果只装英文版系统,设置好时区以后(上海时间,UTC) 在命令行下用date命令查看,总是与实际的北京时间差8小时,其实硬件时间都是准确的.会带来视觉不便. 今天下决心解决此问题,不过也没费时,有人写好了. http://www.opsers.org/linux-home/base/talk-about-rhel6-system-issues-an-eight-hour-time-difference.html 方法很简单: 复制正确时区文件 cp /usr/share/zonei…
点评:在Linux中,用于时钟查看和设置的命令主要有date.hwclock和clock.其中,clock和 hwclock用法相近,只不过clock命令除了支持x86硬件体系外,还支持Alpha硬件体系 以前一直用date设置,这次参考网上资料,终于整了个全的. Linux时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称RTC)时钟.系统时钟是指当前Linux Kernel中的时钟,而硬件时钟则是主板上由电池供电的时钟,这个硬件时钟可以在BIOS中进行设…
修改linux的时间可以使用date指令 date命令的功能是显示和设置系统日期和时间. 输入date 查看目前系统时间. 修改时间需要 date -功能字符 修改内容 命令中各选项的含义分别为: -d datestr, --date datestr 显示由datestr描述的日期 -s datestr, --set datestr 设置datestr 描述的日期 -u, --universal 显示或设置通用时间 时间域 %H 小时(00..23) %I 小时(01..12) %k 小时(0.…
在嵌入式编程中中.常常须要输出系统的当前时间.计算程序的运行时间.使用计时器等.近期也做了不少关于时间的操作.今天就认真总结一下,部分内容是在网上看到的.自己经过验证总结出来. 1.时间的类型 1.格林威治标准时间    coordinated universal time(UTC)是世界标准时间,即常说的格林威治标准时间(greenwich mean time,GMT). 2.日历时间    日历时间(calendar time)是用"一个标准时间点(如1970年1月1日0点)到此时经过的秒数…
修改linux的时间可以使用date指令 date命令的功能是显示和设置系统日期和时间. 输入date 查看目前系统时间. 修改时间需要 date -功能字符 修改内容 命令中各选项的含义分别为: -d datestr, --date datestr 显示由datestr描述的日期 -s datestr, --set datestr 设置datestr 描述的日期 -u, --universal 显示或设置通用时间 时间域 %H 小时(00..23) %I 小时(01..12) %k 小时(0.…
[root@host1 ~]# date #显示时间 2017年 06月 01日 星期四 17:02:59 CST 以指定格式显示时间: [root@host1 ~]# date +%Y%m%d 20170601 [root@host1 ~]# date +"%Y-%m-%d %H:%M:%S" 2017-06-01 17:53:16 设置时间: [root@host1 ~]# date -s "19:19:19" 2017年 06月 01日 星期四 19:19:1…
linux中有关系统时间.时钟时间的命令: 1显示系统时间的命令 ># date 2显示时钟时间的命令 ># clock或hwclock 3系统时间与互联网同步的命令 ># ntpdate [时间服务器网址]                 例:># ntpdate time.windows.com 4系统时间与时钟时间同步的命令 ># hwclock --systohc…
方法一.使用命令 ntpdate time-a.nist.gov 方法二.本地安装ntpdate客户端 在本地安装ntpdate客户端,更新时用 ntpdate cn.pool.ntp.org 如果你的机子不支持域名,则可以用 ping cn.pool.ntp.org 得到该域名的IP地址. 然后用 ntpdate IP 就可以更新时间了 更新完后要用 clock -w 或 hwclock -w 实时间写入到BIOS中,这样下次启动时,时间就会自动更新了.…
[root@test ~]# ping 192.168.2.1 -c 10 PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=0.638 ms64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=0.341 ms64 bytes from 192.168.2.1: icmp_seq=3 ttl=64…
一.时间设置及同步 1修改系统时间 #date -s 06/18/14 #date -s 14:20:50 2命令查看.设置硬件时间 #hwclock  --show 或者clock  --show #设置硬件时间 hwclock --set --date="06/18/14 14:55" 或者# clock --set --date="06/18/14 14:55" 3同步系统及硬件时钟 # hwclock --hctosys 或者 # clock --hctos…
ls -lrt| awk '{print $9}'| head -n 10 | xargs rm -rf 1.文件按时间排序: 2.获取文件名字: 3.取前10个文件 4.删除文件…
一.hour #获取当前时间年月日时分秒current_create_time=`date +"%Y-%m-%d %H:%M:%S"` echo $current_create_time #获取当前时间向前一小时的时间(年月日时分秒) timeFlag=`date -d "60 minute ago" +"%Y-%m-%d %H:%M:%S"`#获取当前时间向前一小时的时间(年月日时) timeFlag1=${timeFlag:0:13} ech…
1.使用tzseletect glibc-common-2.12-1.192.el6.x86_64 : Common binaries and locale data for glibc Repo : base 2.使用ntpdate ntpdate -u time.windows.com…
#include <stdio.h> #include <stdlib.h> #include <time.h> #include <sys/time.h> #include <unistd.h> void main() { printf("before time set"); fflush(stdout); system("date"); system("hwclock"); Time…
Linux使用小Tips 整理些Linux些常遇到的问题. Linux下设置时间 提供两种最根本有效的方式,就是更改时区.这里以更改为国内上海时间例子,其他地方时区同理. 方法一 备份文件 mv /etc/localtime /etc/localtime.bak 复制时区文件 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 这里选择了亚洲下的上海时区,可ls查看各文件夹下的时区文件. 查看当前时间 date 是否已经是正确时间啦.一般建议使…
http://www.cnblogs.com/liuyou/archive/2012/07/29/2614338.html Linux时间基准 以上我们了解了RTC(实时时钟.硬件时钟)和OS时钟(系统时钟.软时钟).下面我们具体描述OS时钟.OS时钟是由可编程定时/计数器产生的输出脉冲触发中断而产生的.输出脉冲的周期叫做一个“时钟滴答”.计算机中的时间是以时钟滴答为单位的,每一次时钟滴答,系统时间就会加1.操作系统根据当前时钟滴答的数目就可以得到以秒或毫秒等为单位的其他时间格式. 定义“时间基…
Linux下长时间ping网络加时间戳并记录到文本   由于一些原因,比如需要检查网络之间是否存在掉包等问题,会长时间去ping一个地址,由于会输出大量的信息而且最好要有时间戳,因此我们可以使用简单的几个shell命令组合就可以实现:长时间ping一个地址,记录每次ping的时间戳,并输出到文本保存,另外我们还可以将这个动作放到后台去执行,以免登陆注销之后被中断.   首先是长时间ping,这个非常简单,使用参数-c即可:  [root@test ~]# ping 192.168.2.1 -c…
第一部分: 一)概述: 事实上在Linux中有两个时钟系统,分别是系统时间和硬件时间 UTC是协调世界时(Universal Time Coordinated)英文缩写,它比北京时间早8个小时.   二)date date可以打印/设定系统时间. 打印系统时间时,date命令会通过调用clock_gettime函数获取时间,同时会通过localtime文件(时区文件)计算出本地的时间. 设定系统时间时,date命令会通过读取localtime文件(时区文件)确定本地的时区,再调用clock_se…
1.时间类型.Linux下常用的时间类型有6个:time_t,struct timeb, struct timeval,struct timespec,clock_t, struct tm. (1) time_t是一个长整型,一般用来表示用1970年以来的秒数. 该类型定义在<sys/time.h>中. 一般通过 time_t time = time(NULL); 获取. (2) struct timeb结构: 主要有两个成员, 一个是秒, 另一个是毫秒, 精确度为毫秒. struct tim…
Linux下使用clock_gettime给程序计时 #include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <string.h> #include <time.h> int main(int argc, char *argv[]) { struct timeval tv; ] = ""; gettimeofday(&tv,NULL); s…
Linux下提供了丰富的api以供开发者们处理和时间相关的问题.然而这些接口看似各自为政实则有有着千丝万缕的联系,在学习和时间中引发了各种各样的混乱.因此时间处理成为了许多Linux开发者的梦魇,遇到时间处理往往避之不及.不过只要你稍微花费一点点精力,学会在Linux上优雅的处理时间和日期也并不是什么难事. 所以本文将会详细介绍Linux api和c标准库对时间的处理,对于更现代化的c++的chrono,会在另一篇文章里再讲. 本文并不会涉及定时器(timer),timer和时间有着关联,而且t…