Linux时钟与时钟函数解析.ppt

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Linux时钟与时钟函数 主要内容 一、Linux时钟概念 1、Linux两个时钟概念 硬件时钟 又叫RTC时钟(Real Time Clock)、CMOS时钟 由主板电池驱动的时钟振荡器生成 用于操作系统关机时记录时间 软件时钟 又叫系统时钟(System Clock)、内核时钟 系统时钟源于时钟中断 操作系统关机时系统时钟不存在 2、Linux两个时间概念 Wall-clock “墙上时钟时间” 从“1970.1.1 00:00:00 UTC”开始经过的时间 由全局变量xtime记录 System-time 系统启动后经过的时间 由全局变量jiffies记录 单位是时钟滴答 3、时区的概念 时区的由来 地球自转造成地域时间差 1884年在华盛顿召开的国际经度会议上,规定将全球划分为24个时区 中时区(零时区)、东1-12区、西1-12区 常用时区缩写 UTC:Universal Time Coordinated GMT:Greenwich Mean Time(GMT=UTC) CST:Chinese Standard Time(CST=UTC+8) 世界时区图 4、夏令时的概念和由来 夏令时的概念 又叫夏时制、日光节约时间 常用缩写DST(Daylight Saving Time) 是一种为节约能源而人为规定地方时间的制度,制度实行期间所采用的统一时间称为“夏令时间” 夏令时的由来 本杰明·富兰克林首次提出夏令时的思想 1916年,德国首先实行夏令时 目前全世界有近110个国家每年实行夏令时 5、夏令时的利弊 优点 充分利用光照,节约了能源 燃料的使用减少了,温室气体排放也相应减少 有人认为夏令时对患有夜盲症的人大有好处 也让人们养成了早睡早起的好习惯 弊端 时间更换对人们生活带来不便 有人认为夏令时在旅游业和能源消耗上获利不明显 扰乱了人类和动物的生物钟 6、中国的夏令时 1986年至1991年,中华人民共和国在全国范围实行了六年夏令时 规定每年从4月中旬的第一个星期日2时整(北京时间)到9月中旬第一个星期日的凌晨2时整(北京夏令时) 夏令时制度在1992年停止施行 二、Linux时钟原理 1、时钟电路的组成 电脑主板时钟电路组成 晶振 时钟芯片(常见ICS和Winbond) 电容、电感、电阻等 2、时钟频率的来源 时钟频率的来源 时钟振荡器 时钟振荡器组成 晶体振荡器(简称晶振) 时钟芯片 时钟振荡器原理 晶体压电效应与压电谐振 有源放大反馈电路 时钟芯片原理图 主板时钟分布图 3、系统时钟的成因——时钟中断 时钟中断的概念 由时钟中断电路按照一定的时间周期向CPU发出的中断 时钟中断的周期称为一个滴答(tick) 时钟中断电路的组成: 可编程逻辑定时器 中断管理器 3、系统时钟的成因——时钟中断 时钟中断的主要工作 更新系统启动后的时间流失(即更新jiffies) 更新系统“墙上时钟时间”(即更新xtime) 计算进程的时间片 更新资源计数 引发软件定时器 4、系统时钟运作机制 三、Linux时钟设置 1、Linux时钟配置文件(1) Linux时钟涉及到的配置文件 /etc/sysconfig/clock /usr/share/zoneinfo /etc/localtime /etc/rc.d/rc.sysinit 1、Linux时钟配置文件(2) /etc/sysconfig/clock 包含系统时区信息 决定硬件时钟是UTC时钟还是本地时钟 1、Linux时钟配置文件(3) /usr/share/zoneinfo/ 包含世界全部时区信息 1、Linux时钟配置文件(4) /etc/localtime 是Linux的时区配置文件 是/usr/share/zoneinfo目录下对应文件的符号连接 如上海应为:/usr/share/zoneinfo/Asia/Shanghai 1、Linux时钟配置文件(5) /etc/rc.d/sysinit 是Linux的启动脚本之一,其中包含了系统时钟初始化过程 该脚本运行/sbin/hwclock程序,把当前的硬件时钟复制为系统时钟 该脚本会读取/etc/sysconfig/clock文件的设置,从而确定硬件时钟是本地时钟还是UTC时钟 rc.sysinit时钟初始化部分示例 2、Linux时钟命令(1) 查看系统系统时钟 date 设置系统时钟 date MMDDhhmmYYYY.ss 查看硬件时钟 hwclock –show clock --show 设置硬件时钟 hwclock --set --date=“07/07/06 10:19” (月/日/年 时:分:秒) clock --set --date=“07/07/06 10:19” (月/日/年 时:分:秒) 2

您可能关注的文档

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档