日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux 内核获取时间,Linux内核中的jiffies 以及时间的获取time

發布時間:2023/12/19 linux 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux 内核获取时间,Linux内核中的jiffies 以及时间的获取time 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

硬件給內核提供一個系統定時器用以計算和管理時間,內核通過編程預設系統定時器的頻率,即節拍率(tick rate),每一個周期稱作一個tick(節拍)。Linux內核從2.5版內核開始把頻率從100調高到1000(當然帶來了很多優點,也有一些缺點).

jiffies是內核中的一個全局變量,用來記錄自系統啟動一來產生的節拍數。譬如,如果計算系統運行了多長時間,可以用 jiffies/tick rate 來計算。jiffies定義在文件中:

extern unsigned long volatile jiffies;

可以利用jiffies設置超時等,譬如:

unsigned long timeout = jiffies + tick_rate * 2; // 2秒鐘后超時

if(time_before(jiffies, timeout){

// 還沒有超時

}

else{

// 已經超時

}

內核提供了四個宏來比較節拍計數,這些宏定義在文件中:

time_before(unknown, known)

time_after(unknown, known)

time_before_eq(unknown, known)

time_after_eq(unknown, known)

比較的時候用這些宏可以避免jiffies由于過大造成的回繞問題。

除了系統定時器外,還有一個與時間有關的時鐘:實時時鐘(RTC),這是一個硬件時鐘,用來持久存放系統時間,系統關閉后靠主板上的微型電池保持計時。系統啟動時,內核通過讀取RTC來初始化Wall Time,并存放在xtime變量中,這是RTC最主要的作用。

===================================

struct timeval tv;

do_gettimeofday(&tv);

總結

以上是生活随笔為你收集整理的linux 内核获取时间,Linux内核中的jiffies 以及时间的获取time的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。