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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux mips 时钟中断,Linux内核中地时钟中断.pdf

發(fā)布時間:2023/12/20 linux 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux mips 时钟中断,Linux内核中地时钟中断.pdf 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Linux內(nèi)核中地時鐘中斷

Linux 內(nèi)核中的時鐘中斷

第七章 Linux 內(nèi)核的時鐘中斷

(By 詹榮開,NUDT)

Copyright ? 2003 by 詹榮開

E-mail:zhanrk@

Linux-2.4.0

Version 1.0.0,2003-2-14

摘要:本文主要從內(nèi)核實現(xiàn)的角度分析了Linux 2.4.0 內(nèi)核的時鐘中斷、內(nèi)核對時間的表示等。本文是

為那些想要了解Linux I/O 子系統(tǒng)的讀者和Linux 驅(qū)動程序開發(fā)人員而寫的。

關(guān)鍵詞:Linux、時鐘、定時器

申明:這份文檔是按照自由軟件開放源代碼的精神發(fā)布的,任何人可以免費獲得、使用和重新發(fā)布,

但是你沒有限制別人重新發(fā)布你發(fā)布內(nèi)容的權(quán)利。發(fā)布本文的目的是希望它能對讀者有用,但沒有任

何擔(dān)保,甚至沒有適合特定目的的隱含的擔(dān)保。更詳細的情況請參閱GNU 通用公共許可證(GPL),以

及GNU 自由文檔協(xié)議(GFDL)。

你應(yīng)該已經(jīng)和文檔一起收到一份GNU 通用公共許可證(GPL)的副本。如果還沒有,寫信給:

The Free Software Foundation, Inc., 675 Mass Ave, Cambridge,MA02139, USA

歡迎各位指出文檔中的錯誤與疑問。

第 1 頁

Linux 內(nèi)核中的時鐘中斷

前言

時間在一個操作系統(tǒng)內(nèi)核中占據(jù)著重要的地位,它是驅(qū)動一個OS 內(nèi)核運行的“起博器”。一般說來,

內(nèi)核主要需要兩種類型的時間:

1. 在內(nèi)核運行期間持續(xù)記錄當(dāng)前的時間與日期,以便內(nèi)核對某些對象和事件作時間標(biāo)記(timestamp,

也稱為“時間戳”),或供用戶通過時間syscall 進行檢索。

2. 維持一個固定周期的定時器,以提醒內(nèi)核或用戶一段時間已經(jīng)過去了。

PC 機中的時間是有三種時鐘硬件提供的,而這些時鐘硬件又都基于固定頻率的晶體振蕩器來提供時

鐘方波信號輸入。這三種時鐘硬件是:(1)實時時鐘(Real Time Clock,RTC);(2)可編程間隔定時器

(Programmable Interval Timer,PIT);(3)時間戳計數(shù)器(Time Stamp Counter,TSC)。

7.1 時鐘硬件

7.1.1 實時時鐘RTC

自從IBM PC AT 起,所有的PC 機就都包含了一個叫做實時時鐘(RTC)的時鐘芯片,以便在PC 機

斷電后仍然能夠繼續(xù)保持時間。顯然,RTC 是通過主板上的電池來供電的,而不是通過PC 機電源來供電

的,因此當(dāng)PC 機關(guān)掉電源后,RTC 仍然會繼續(xù)工作。通常,CMOS RAM 和RTC 被集成到一塊芯片上,

因此RTC 也稱作“CMOS Timer”。最常見的RTC 芯片是MC146818(Motorola)和DS12887(maxim),

DS12887 完全兼容于MC 146818,并有一定的擴展。本節(jié)內(nèi)容主要基于MC 146818 這一標(biāo)準(zhǔn)的RTC 芯片。

具體內(nèi)容可以參考MC146818 的Datasheet。

7.1.1.1 RTC 寄存器

MC146818 RTC 芯片一共有64 個寄存器。它們的芯片內(nèi)部地址編號為0x00~0x3F(不是I/O 端口地

址),這些寄存器一共可以分為三組:

(1)時鐘與日歷寄存器組:共有 10 個(0x00~0x09),表示時間、日歷的具體信息。在PC 機中,這

些寄存器中的值都是以BCD 格式來存儲的(比如23dec=0x23BCD)。

(2)狀態(tài)和控制寄存器組:共有4 個(0x0A~0x0D),控制RTC 芯片的工作方式,并表示當(dāng)前的狀態(tài)。

(3)CMOS 配置數(shù)據(jù):通用的CMOS RAM,它們與時間無關(guān),因此我們不關(guān)心它。

時鐘與日歷寄存器組的詳細解釋如下:

Address Function

00 Current second for RTC

01 Alarm second

02 Current minute

03 Alarm minute

總結(jié)

以上是生活随笔為你收集整理的linux mips 时钟中断,Linux内核中地时钟中断.pdf的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。