真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Linux時(shí)鐘與計(jì)時(shí)器-創(chuàng)新互聯(lián)

對 Linux 系統(tǒng)來說,時(shí)鐘和計(jì)時(shí)器是兩個(gè)十分重要的概念。時(shí)鐘反應(yīng)的是絕對時(shí)間,也可認(rèn)為是實(shí)時(shí)時(shí)間。計(jì)時(shí)器反應(yīng)的則是相對時(shí)間,即相對于系統(tǒng)啟動(dòng)后的計(jì)時(shí)。操作系統(tǒng)內(nèi)核需要管理運(yùn)行時(shí)間(uptime)和墻上時(shí)間(wall time),而內(nèi)核中大量事務(wù)需要由時(shí)間驅(qū)動(dòng)。Linux時(shí)鐘與計(jì)時(shí)器
系統(tǒng)時(shí)鐘

系統(tǒng)內(nèi)核需要借助硬件設(shè)施來管理時(shí)間,實(shí)時(shí)時(shí)鐘(RTC)是用來持久存放系統(tǒng)時(shí)間的設(shè)備,它由主機(jī)電池供電,因此即使關(guān)閉系統(tǒng),實(shí)時(shí)時(shí)鐘仍然在持續(xù)工作。

成都創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)提供從項(xiàng)目策劃、軟件開發(fā),軟件安全維護(hù)、網(wǎng)站優(yōu)化(SEO)、網(wǎng)站分析、效果評估等整套的建站服務(wù),主營業(yè)務(wù)為成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作,App定制開發(fā)以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。成都創(chuàng)新互聯(lián)公司深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!

當(dāng)系統(tǒng)啟動(dòng)時(shí),系統(tǒng)內(nèi)核從實(shí)時(shí)時(shí)鐘(RTC)讀取實(shí)時(shí)時(shí)間,并將該時(shí)間轉(zhuǎn)換為自 1970 年 1 月 1 日零時(shí)零分零秒以來所經(jīng)歷的秒數(shù)(即 Linux 時(shí)間秒),并將該秒數(shù)保存在系統(tǒng)變量 xtime 中??梢哉f實(shí)時(shí)時(shí)鐘的主要作用就是初始化 xtime 變量。

系統(tǒng)計(jì)時(shí)器

系統(tǒng)計(jì)時(shí)器驅(qū)動(dòng)著周期性發(fā)生的事件,在 X86 架構(gòu)的系統(tǒng)中,系統(tǒng)計(jì)時(shí)器通常是一種可編程硬件芯片。系統(tǒng)計(jì)時(shí)器的頻率稱之為節(jié)拍率(tick rate),在內(nèi)核中使用 HZ 變量來表示節(jié)拍率。

對 X86 架構(gòu)系統(tǒng)而言,內(nèi)核版本 2.4 之前,系統(tǒng)計(jì)時(shí)器的節(jié)拍率為 100。自內(nèi)核版本 2.6 開始,系統(tǒng)計(jì)時(shí)器節(jié)拍率設(shè)置為 1000。節(jié)拍率 HZ = 1000 的含義是系統(tǒng)計(jì)時(shí)器每秒鐘可產(chǎn)生 1000 次中斷請求,每一個(gè)計(jì)時(shí)中斷周期稱之為一個(gè)節(jié)拍(tick),也就是說每個(gè)節(jié)拍時(shí)長為 1 秒 / 1000次 = 0.001 秒 = 1 毫秒。節(jié)拍的時(shí)長決定著系統(tǒng)時(shí)間控制的精度,當(dāng)節(jié)拍率從 100 提升到 1000 時(shí),也就意味著系統(tǒng)計(jì)時(shí)器的精度從 10 毫秒提升到了 1 毫秒,這大大提高了系統(tǒng)對時(shí)間驅(qū)動(dòng)事件調(diào)度的精度。而過于頻繁的時(shí)鐘中斷會(huì)不可避免地增加系統(tǒng)計(jì)時(shí)開銷。

系統(tǒng)計(jì)時(shí)器及其計(jì)時(shí)中斷處理程序是 Linux 內(nèi)核管理機(jī)制的中樞,計(jì)時(shí)中斷處理程序會(huì)定期地處理以下事務(wù)(包含而不限于):

更新系統(tǒng)運(yùn)行時(shí)間(uptime) 更新墻上時(shí)間(wall time) 在對稱多處理器系統(tǒng)(SMP)上,均衡調(diào)度各處理器上的運(yùn)行隊(duì)列 檢查當(dāng)前進(jìn)程時(shí)間片(time slice)是否耗盡,如果耗盡,則重新調(diào)度 運(yùn)行超時(shí)的動(dòng)態(tài)定時(shí)器 更新資源耗盡和處理器時(shí)間的計(jì)算 節(jié)拍、節(jié)拍率、節(jié)拍數(shù)

運(yùn)行時(shí)的 Linux 內(nèi)核會(huì)周期性地發(fā)出計(jì)時(shí)中斷請求(IRQ),每秒鐘發(fā)出的計(jì)時(shí)中斷請求數(shù)稱之為節(jié)拍率,每次計(jì)時(shí)中斷周期稱之為節(jié)拍,實(shí)際計(jì)時(shí)中斷次數(shù)稱之為節(jié)拍數(shù)。

Linux 內(nèi)核的節(jié)拍率在編譯時(shí)通過變量 HZ 來指定,一般設(shè)置為 100 或 1000,表示每秒中斷 100 次或 1000 次。如果節(jié)拍率設(shè)置為 1000,那么一個(gè)節(jié)拍周期則為 1 秒 / 1000 次 = 1 毫秒。Linux 系統(tǒng)使用變量 jiffies 來記錄系統(tǒng)開機(jī)以來經(jīng)歷的節(jié)拍數(shù),即從系統(tǒng)啟動(dòng)開始,每發(fā)生一次計(jì)時(shí)中斷,jiffies 則加 1。通過計(jì)算 jiffies 所表示的節(jié)拍數(shù),便可得到系統(tǒng)的運(yùn)行時(shí)間。

節(jié)拍數(shù)轉(zhuǎn)換為時(shí)間

時(shí)間(秒) = 節(jié)拍數(shù) × 節(jié)拍時(shí)長 = 節(jié)拍數(shù) / 節(jié)拍率

時(shí)間轉(zhuǎn)換為節(jié)拍數(shù)

節(jié)拍數(shù) = 時(shí)間(秒) / 節(jié)拍時(shí)長 = 時(shí)間(秒) × 節(jié)拍率

因此若已知系統(tǒng)內(nèi)核 HZ = 1000,jiffies = 1000 時(shí),便可以快速算出系統(tǒng)的運(yùn)行時(shí)間為 jiffies / HZ = 1000 / 1000 = 1 秒。

術(shù)語
名詞 釋義 備注
Real Time Clock (RTC)實(shí)時(shí)時(shí)鐘
Wall Time墻上時(shí)鐘即當(dāng)前實(shí)時(shí)時(shí)間
Uptime運(yùn)行時(shí)間
Time Slice時(shí)間片
Timer計(jì)時(shí)器
Timer Interrupt Request (IRQ)計(jì)時(shí)中斷請求
HZ每秒計(jì)時(shí)中斷請求次數(shù),也可稱為節(jié)拍率(tick rate)HZ 值一般為 100, 250, 300 或 1000。最常見的為 1000 和 100。
Tick節(jié)拍Tick 與 HZ 互為倒數(shù),表示單次計(jì)時(shí)中斷的時(shí)長。
Jiffies節(jié)拍數(shù)表示系統(tǒng)開機(jī)以來的節(jié)拍數(shù),即經(jīng)歷的 Tick 數(shù)量。
Second (s)
Millisecond (ms)毫秒1s = 1000ms
Microsecond (us)微秒1ms = 1000us
Nanosecond (ns)納秒1us = 1000ns
Picosecond (ps)皮秒1ns = 1000ps
Ref.:

Linux 內(nèi)核中的 jiffies 及其作用介紹及 jiffies 等相關(guān)函數(shù)詳解
Linux Kernel - Jiffies
Kernel Timer Systems


分享文章:Linux時(shí)鐘與計(jì)時(shí)器-創(chuàng)新互聯(lián)
文章轉(zhuǎn)載:http://weahome.cn/article/dpsigj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部