美文网首页
linux的系统时钟

linux的系统时钟

作者: 小胖_20c7 | 来源:发表于2019-07-19 16:09 被阅读0次
    在说linux的系统时钟之前,先弄清楚几个概念
    HZ:        即cpu一秒钟发生多少次时间中断(cat /boot/config-`uname -r` | grep '^CONFIG_HZ='(通常=1000))
    Tick:      1/HZ,即每隔多少秒发送一次时间中断
    Jiffies:   系统自开机以来,已经过了多少tick
    
    系统时钟的驱动方式
    系统时钟本质上,就是通过cpu的时间中断来实现的
          对于单调递增时钟(CLOCK_MONOTONIC),每次时间中断来的时候Jiffies + 1
          对于wall clock时钟(CLOCK_REALTIME),每次时间中断来的时候wall time + Tick
    还有另外一种时间描述,即clock_t,是用来描述进程指令的消耗时间
          这种时间,不是时间中断来驱动的(有另外一种驱动方式,但是是什么不知道,反正不是一个体系的东西,和wall clock不是一回事)
    
    系统时钟的设置
      date(查看系统时钟)
      date -s 5/11/2015(设置日期)
      date -s 15:35:30(设置时间)
      date -s "5/11/2015 15:35:30"(一起设置时间和日期)
    
    centos 7中的时区和时间设置
      timedatectl status
      timedatectl set-timezone Asia/Shanghai
    
    linux系统的启动和运行时间
      uptime:
              系统命令
      cat /proc/uptime:
              记录系统运行的时间
      计算系统启动的时间:
              date -d "$(awk -F. '{print $1}' /proc/uptime) second ago" +"%Y-%m-%d %H:%M:%S"
      计算系统的运行时间:
              cat  /proc/uptime | awk -F. '{run_days=$1 / 86400;run_hour=($1 % 86400)/3600;run_minute=($1 % 3600)/60;run_second=$1 % 60;printf("系统已运行:%d天%d时%d分%d秒\n",run_days,run_hour,run_minute,run_second)}'
    

    相关文章

      网友评论

          本文标题:linux的系统时钟

          本文链接:https://www.haomeiwen.com/subject/vkhslctx.html