linux时间调整为dst,Linux上系统时间函数、DST等相关有关问题总结
Linux下系統時間函數、DST等相關問題總結
1. 內核中時間的基本類型:
在Linux內核中,常見的時間類型有以下兩種:系統時間(system time)和實時時間(real time),其實,方便理解,可以將二者分別認為是相對時間和絕對時間,同時它們分別對應于內核中的兩個全局變量值:jiffies和xtime。
xtime: xtime值是從cmos電路中取得的時間,一般是從某個歷史時刻(1970年1月1日0時0分)開始到現在的時間,其實也就是我們操作系統上面所顯示的時間,它的精度是微秒。
jiffies:jiffies是記錄從電腦開機到現在總共的時鐘中斷次數(拍數),它的值取決于系統的頻率,單位是HZ,其倒數即表示一秒鐘中斷所產生的次數,在Linux 2.5內核版本之后將HZ從100提高到1000MHZ,它的精度也就是10毫秒。
根據對上面兩個全局變量值的介紹,大提升應該了解到Linux系統中系統時間與實時時間之間的區別,前者表示的是從電腦開機到現在的時間,可以通過全局變量jiffies值換算而來;而實時時間則是指我們日常生活中的日期時間,它跟UTC有著密切關系,這些將在后面章節做介紹。
2. Linux time API中常見的時間結構:
(1)time_t:它是一個長整型數據,用來表示從1970年之后到現在的秒數。一般通過time函數獲取。
(2)timeval結構:通過gettimeofday函數獲取。
struct timeval
{
long tv_sec; /* seconds */
long tv_usec; /* microseconds */
};
(3)timezone結構:通過gettimeofday函數獲取。
struct timezone
{
int tz_minuteswest; /*?和Greewich時間差了多少分鐘*/
int tz_dsttime; /*DST types*/
};
【引申】常見的DST類型如下:
#define???DST_NONE?? ???0??? /* not on dst */
#define???DST_USA??????? 1??? /* USA style dst */
#define???DST_AUST?? 
總結
以上是生活随笔為你收集整理的linux时间调整为dst,Linux上系统时间函数、DST等相关有关问题总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 7.0修改网卡ip,Cent
- 下一篇: linux系统默认的环境变量path,L