悟空學Linux專欄----第11篇

  上節課悟空感覺受益匪淺,聽課果然比自學效果要好,所以這次悟空一大早就來。今天達人先生要講的是時鐘源。

  達人:上節課我們講的是Linux時間的表示方法。

  悟空:老師,那麼Linux系統的時間是哪裏來的呢?

  達人:Linux系統的時鐘是由時鐘源產生的,軟件用結構體struct clocksource表示時鐘源。在硬件上面,這個時鐘源往往是一個固定頻率的計數器,這個計數器只能單調遞增,直到溢出爲止。

  悟空:時鐘源有沒有好壞之別,什麼時鐘源是好的時鐘源,什麼時鐘源是不好的時鐘源呢?

  達人:時鐘源的好壞通過兩個參數表示,一個是時鐘源的精度,一個是時鐘源的穩定度。時鐘源的精度用struct clocksource結構體中的rating字段表示,它的值越大,表示時鐘源的精度越高,取值在0-500之間,一般都大於399。而時鐘源的穩定度則由系統檢測,如果在0.5秒內,時間誤差大於0.0625秒,則說明這個時鐘源不穩定,因此需要對時鐘源進行切換。

  悟空:老師,按照你上面說,一個系統應該不只有一個時鐘源吧?

  達人:的確,一個系統一般不只有一個時鐘源,而是由多個硬件時鐘源,當時鍾源註冊的時候,系統會判斷新的時鐘源是不是比當前時鐘源精度更高,如果精度更高則系統會更換爲新的時鐘源。

  八戒:老師,爲什麼是在誤差大於0.0625秒是爲不穩定啊,爲什麼不是0.0525或者0.0325啊?

  達人:這個……這個……哦,時間到了,我們下課吧。

  說完達人快步走出教室,八戒無語。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章