感谢博主:「行者三个石」的原創文章原文链接:/qq_/article/details/
1.linux 持续显示时间 是如何管理时间的?
在系统启动时linux 持续显示时间操作系统将时间从CMOS中读到系统变量中,以后修改时间通过修改系统时间变量实现为了保持系统时间和CMOS时间一致,linux 持续显示时间每隔11分钟会将系统时间写入CMOS同步时间
1)从CMOS中读取。
修改时间呮有一种:修改系统中时间
1)修改CMOS时间无效,会被定时重写
2)我经过亲自试验,校时是立刻生效的
t是以秒为单位的时间值从GMT1970年1月1日0時0分0秒开始计算。
成功返回0错误返回-1,errno错误码EFAULT表示传递的参数错误,如时间值是无效的值EPERM表示权限不够,注意只有root用户才有修改系統时间的权限如果要让普通程序修改系统时间,可以先切换到root用户操作修改完成后,再切换到普通用户或者用命令chmod +s给执行文件加上root鼡户的权限。
2)通过settimeofday()函数来设置系统时间这个函数设置的精度可以精确到微秒。
tz参数为时区时区结构中tz_dsttime在linux 持续显示时间中不支持,应該置为0通常将参数tz设置为NULL,表示使用当前系统的时区该函数是glib中的,但在mingw中没有实现