Linux与Windows中的UTC时间

先介绍几个术语

UTC 协调世界时,又称世界标准时间或世界协调时间,简称UTC(从英文“Coordinated Universal Time”/法文“Temps Universel Cordonné”而来),是最主要的世界时间标准,其以原子时秒长为基础,在时刻上尽量接近于格林尼治平时。

GMT 格林威治标准时间(中国大陆翻译:格林尼治平均时间或格林尼治标准时间,台、港、澳翻译:格林威治标准时间;英语:Greenwich Mean Time,GMT)是指位于英国伦敦郊区的皇家格林威治天文台的标准时间,因为本初子午线被定义在通过那里的经线。

Localtime 本地时钟,即本地所在时区的当前时间。

简单意义上,UTC时间即等同于GMT时间。

操作系统使用两个时钟保存时间:硬件时钟和系统时钟。

  • 硬件时钟(即实时时钟 RTC 或 CMOS 时钟)仅能保存:年、月、日、时、分、秒这些时间数值,无法保存时间标准(UTC 或 localtime)和是否使用夏令时调节。
  • 系统时钟(即软件时间) 与硬件时间分别维护,保存了:时间、时区和夏令时设置。Linux 内核保存为自 UTC 时间 1970 年1月1日经过的秒数。初始系统时钟是从硬件时间计算得来,计算时会考虑/etc/adjtime的设置。系统启动之后,系统时钟与硬件时钟独立运行,Linux 通过时钟中断计数维护系统时钟。

硬件时钟是记录在BIOS中的时间。
对于Windows系统,默认会将BIOS中的硬件时钟当作Localtime,系统在关机时,Windows会将时间同步到硬件时间中去,因此BIOS时钟和系统时钟都成为Localtime.

对于Linux系统,如Red Hat系统,在安装时会有一个选项System clock uses UTC, 当勾选此选项时,表示系统将BIOS硬件时钟当作UTC时间,因此系统时钟会通过BIOS时间加减所在时区和夏令时计算出。如果不勾选此选项,系统将BIOS硬件时钟当作Localtime, 系统会直接同步硬件时钟到系统时钟而不经过时区的计算。Linux系统在关机时,这里还是举例Red Hat系统,在关机时会通过/etc/rc.d/init.d/halt这个脚本判断系统是否使用UTC硬件时间,如果使用UTC时间,这将系统时钟Localtime转换为UTC同步至硬件时钟,如果没有使用UTC时间,则直接同步系统时钟到硬件时钟,系统是否启用UTC硬件时钟在/etc/sysconfig/clock中设定。

Linux和Windows系统共存时

如果安装了Windows操作系统,那么最好将Windos设置为UTC硬件时钟,方法为修改注册表。这样Linux系统也可以使用UTC时钟,使用UTC时钟的好处是系统自动根据时区和夏令时来设置系统时钟。如果Windows要使用Localtime, 那么Linux最好也将UTC关闭使用Localtime. 如果Linux系统和Windows系统使用不一样的设置(即都使用默认设置),系统在关机时会同步硬件时钟,最后结果是硬件时钟被改来改去,不是Windows慢了8个小时,就是Linux快了8个小时。

Linux与Windows中的UTC时间的更多相关文章

  1. windows中查看开机时间

    windows中查看开机时间     在windows下可以使用systeminfo命令来查看. 下面是网站摘录的关于windows启动了多长时间的内容 1. windows系统可以查看从开机到现在共 ...

  2. 在linux和windows中使用selenium

     在linux和windows中使用selenium 一. selenium(浏览的人你们多大呀?是AI?) selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法 ...

  3. 内核中读取UTC时间

        记录这个知识点的原因是因为项目中需要保存充电日志,因此,趁着这个机会,深入了解一下Linux的时间系统. UTC:(Universal Time Coordinated) 协调世界时的缩写   ...

  4. Linux与Windows中动态链接库的分析与对比

    摘要:动态链接库技术实现和设计程序常用的技术,在Windows和Linux系统中都有动态库的概念,采用动态库可以有效的减少程序大小,节省空间,提高效率,增加程序的可扩展性,便于模块化管理.但不同操作系 ...

  5. Linux启动kettle及linux和windows中kettle往hdfs中写数据(3)

    在xmanager中的xshell运行进入图形化界面 sh spoon.sh 新建一个job

  6. linux和windows中设置环境变量经常使用命令

    Linux和Windows下查看环境变量方法 一.查看全部环境变量的名称和值: Linux下:export Windows下:set 二.依据名称查该环境变量的值: Linux下:echo $环境变量 ...

  7. Linux和Windows中查看端口占用情况

    一.命令 netstat -lnt  或 netstat -tnlp 如: 二.较全 netstat -antulp 三.简单 ss -tanl  或 ss -tanlp 三.补充 Windows中使 ...

  8. Linux、Windows中的相对路径和绝对路径

    获取系统的分隔符的方式:System.getProperty("file.separator")   Windows为 \   Linux为/ Windows绝对路径: 以盘符开始 ...

  9. linux使用windows中编辑的文件,格式问题

    参考:https://blog.csdn.net/yongan1006/article/details/8142527 运行脚本时出现了这样一个错误,打开之后并没有找到所谓的^M,查了之后才知道原来是 ...

随机推荐

  1. Kettle 中转换(transformation)的执行过程

    1,Spoon.java的main方法是整个Kettle运行的入口.当打开Kettle的设计器界面后,可以在其中设计作业和转换.这里讨论转换的执行过程. 2,设计好一个转换后,转换保存的本地文件是 . ...

  2. C#析构函数与Dispose

    有几种不同的操作方式 方式一: namespace ConsoleApp1 {     class Test     {         ~Test()// 析构函数         {        ...

  3. VS Sln图标空白修复办法

    环境:Win10,VS2017,曾经安装并卸载过VS2015之前安装了两个版本的VisualStudio,卸载一个后,就出现了图标空白问题,重新设置默认打开程序也没有作用,经摸索解决办法如下.(1)在 ...

  4. tomcat杂记

    组成 Server –> Service –> Connector & Container( Engine –> Host –> Context( Wrapper( S ...

  5. POI导出带格式的Excel模板——(六)

    Jar包

  6. Django开发笔记二

    Django开发笔记一 Django开发笔记二 Django开发笔记三 Django开发笔记四 Django开发笔记五 Django开发笔记六 1.xadmin添加主题.修改标题页脚和收起左侧菜单 # ...

  7. python中argparse模块用法实例详解

    python中argparse模块用法实例详解 这篇文章主要介绍了python中argparse模块用法,以实例形式较为详细的分析了argparse模块解析命令行参数的使用技巧,需要的朋友可以参考下 ...

  8. Statistics in Python

    Statistics in Python Materials for the “Statistics in Python” euroscipy 2015 tutorial. Requirements ...

  9. jython获取was5.1的jvm监控参数

    perfName = AdminControl.completeObjectName ('type=Perf,process=server1,node=TSC,cell=TSC,*') perfONa ...

  10. 001_a记录和canme的区别

    1.什么是域名解析? 域名解析就是国际域名或者国内域名以及中文域名等域名申请后做的到IP地址的转换过程.IP地址是网路上标识您站点的数字地址,为了简单好记,采用域名来代替ip地址标识站点地址.域名的解 ...