国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 操作系統 > 正文

wall time和monotonic time[轉載]

2024-06-28 13:21:45
字體:
來源:轉載
供稿:網友
wall time和monotonic time[轉載]

在一些系統調用中需要指定時間是用CLOCK_MONOTONIC還是CLOCK_REALTIME,以前總是搞不太清楚它們之間的差別,現在終于有所理解了。

CLOCK_MONOTONIC是monotonic time,而CLOCK_REALTIME是wall time。 monotonic time字面意思是單調時間,實際上它指的是系統啟動以后流逝的時間,這是由變量jiffies來記錄的。系統每次啟動時jiffies初始化為0,每來一個timer interrupt,jiffies加1,也就是說它代表系統啟動后流逝的tick數。jiffies一定是單調遞增的,因為時間不夠逆嘛! wall time字面意思是掛鐘時間,實際上就是指的是現實的時間,這是由變量xtime來記錄的。系統每次啟動時將CMOS上的RTC時間讀入xtime,這個值是"自1970-01-01起經歷的秒數、本秒中經歷的納秒數",每來一個timer interrupt,也需要去更新xtime。 以前我一直想不明白,既然每個timer interrupt,jiffies和xtime都要更新,那么不都是單調遞增的嗎?那它們之間使用時有什么區別呢?昨天看到一篇文章,終于明白了,wall time不一定是單調遞增的。因為wall time是指現實中的實際時間,如果系統要與網絡中某個節點時間同步、或者由系統管理員覺得這個wall time與現實時間不一致,有可能任意的改變這個wall time。最簡單的例子是,我們用戶可以去任意修改系統時間,這個被修改的時間應該就是wall time,即xtime,它甚至可以被寫入RTC而永久保存。一些應用軟件可能就是用到了這個wall time,比如以前用vmware workstation,一啟動提示試用期已過,但是只要把系統時間調整一下提前一年,再啟動就不會有提示了,這很可能就是因為它啟動時用gettimeofday去讀wall time,然后判斷是否過期,只要將wall time改一下,就可以欺騙過去了。轉自:http://zhangjun2915.blog.163.com/blog/static/38086236201051811936178/
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 静乐县| 西畴县| 大英县| 若尔盖县| 岱山县| 类乌齐县| 贡觉县| 屏南县| 延庆县| 谢通门县| 和龙市| 平利县| 东丽区| 吉安县| 巢湖市| 商都县| 布尔津县| 阿勒泰市| 台山市| 赫章县| 临清市| 三河市| 古浪县| 临安市| 塘沽区| 开江县| 疏附县| 布尔津县| 峨眉山市| 常德市| 恩平市| 三门峡市| 眉山市| 江北区| 遂溪县| 芜湖市| 潼关县| 洮南市| 永修县| 桐柏县| 西昌市|