linux定時器和時間管理

2021-08-30 17:15:20 字數 523 閱讀 6025

linux系統的時間是靠乙個叫『系統定時器』的晶元控制的

系統定時器相當於乙個晶振,產生固定的頻率,作業系統利用這個固定頻率來計時

系統定時器按照一定的頻率傳送中斷訊號,這個中斷我們叫定時器中斷

這個頻率值叫節拍率是可配置的,linux 2.5之前節拍率是100

2.5之後提高到了1000hz

就是說一秒鐘產生1000個定時器中斷,提高頻率的好處是:

系統計時更精確

系統的效能提高了很多

順便說一下windows的節拍率是100

linux程序排程是完全依賴系統定時器的

進行一次程序排程時需要計算每個程序分配的時間片,這個時間片實際上就是乙個有定時器中斷來控制的

如有3個程序 a、b、c分配的時間片分別是10ms 20ms 30ms

在當程序ab都用完了時間片 c在使用21ms後程式執行了

這時節拍率為1000的系統會直接進行下一次的程序排程

節拍率為100的系統則會浪費9ms,直到下一次的定時器中斷到來時才會重新執行排程

Linux核心 定時器和時間管理

系統定時器是一種可程式設計硬體晶元。它能以固定頻率產生中斷。該中斷就是所謂的定時器中斷。它所相應的中斷處理程式負責更新系統時間,還負責執行須要週期性執行的任務。系統定時器和時鐘中斷處理程式是linux系統核心管理機制中的中樞。另外乙個關注的焦點是動態定時器 一種用來推遲執行程式的工具。比方說。假設軟...

(六)定時器和時間管理

1 什麼是相對時間 絕對時間 節拍率 節拍 牆上時間 系統執行時間a 相對時間 i.有些是週期執行的,如對排程程式中的執行佇列進行平衡調整或對螢幕進行重新整理,都需要定期執行 系統定時器負責 ii.另一些函式需要等待乙個相對時間後才執行,如需要推後執行的磁碟i o操作等 b 絕對時間 i.核心還必須...

Linux2 6 33定時器和時間管理

在中定義 extern unsigned long volatile jiffies 第二變數也定義在中 extern u64 jiffies 64 ld鏈結指令碼用於連線核心映像 x86位於arch x86 kernel vmlinux.lds.s 然後jiffies 64變數的初值覆蓋jiffi...