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

首頁 > 系統 > Linux > 正文

Linux之時鐘中斷詳解

2019-10-26 18:56:31
字體:
來源:轉載
供稿:網友

在Linux的0號中斷是一個定時器中斷。在固定的時間間隔都發生一次中斷,也是說每秒發生該中斷的頻率都是固定的。該頻率是常量HZ,該值一般是在100 ~ 1000之間。該中斷的作用是為了定時更新系統日期和時間,使系統時間不斷地得到跳轉。另外該中斷的中斷處理函數除了更新系統時間外,還需要更新本地CPU統計數。指的是調用scheduler_tick遞減進程的時間片,若進程的時間片遞減到0,進程則被調度出去而放棄CPU使用權。

時鐘中斷的產生

Linux的OS時鐘的物理產生原因是可編程定時/計數器產生的輸出脈沖,這個脈沖送入CPU,就可以引發一個中斷請求信號,我們就把它叫做時鐘中斷。

“時鐘中斷”是特別重要的一個中斷,因為整個操作系統的活動都受到它的激勵。系統利用時鐘中斷維持系統時間、促使環境的切換,以保證所有進程共享CPU;利用時鐘中斷進行記帳、監督系統工作以及確定未來的調度優先級等工作。可以說,“時鐘中斷”是整個操作系統的脈搏。

時鐘中斷的物理產生如圖所示:

操作系統對可編程定時/計數器進行有關初始化,然后定時/計數器就對輸入脈沖進行計數(分頻),產生的三個輸出脈沖Out0、Out1、Out2各有用途,很多接口書都介紹了這個問題,我們只看Out0上的輸出脈沖,這個脈沖信號接到中斷控制器8259A_1的0號管腳,觸發一個周期性的中斷,我們就把這個中斷叫做時鐘中斷,時鐘中斷的周期,也就是脈沖信號的周期,我們叫做“滴答”或“時標”(tick)。從本質上說,時鐘中斷只是一個周期性的信號,完全是硬件行為,該信號觸發CPU去執行一個中斷服務程序,但是為了方便,我們就把這個服務程序叫做時鐘中斷。

Linux實現時鐘中斷的全過程

1.可編程定時/計數器的初始化

IBM PC中使用的是8253或8254芯片。有關該芯片的詳細知識我們不再詳述,只大體介紹以下它的組成和作用,如下表5.1所示:

表 8253/8254的組成及作用

    1. <td id="r3o9u"></td>

      名稱

      端口地址

      工作方式

      產生的輸出脈沖的用途

      計數器0

      0x40

      方式3

      時鐘中斷,也叫系統時鐘

      計數器1

      0x41

      方式2

      動態存儲器刷新

      計數器2

      0x42

      方式3

      揚聲器發聲

      控制寄存器

      0x43

      /

      發表評論 共有條評論
      用戶名: 密碼:
      驗證碼: 匿名發表
      主站蜘蛛池模板: 怀柔区| 兰坪| 三门峡市| 凭祥市| 平乡县| 通渭县| 昭觉县| 靖州| 宿迁市| 湟源县| 新野县| 班玛县| 景泰县| 奉化市| 孟津县| 华亭县| 玉树县| 雷州市| 涿州市| 兰西县| 成都市| 陵川县| 揭西县| 吉木萨尔县| 城市| 太谷县| 上栗县| 宁夏| 依安县| 石棉县| 武安市| 东乌珠穆沁旗| 沈阳市| 海晏县| 屏山县| 桐柏县| 南陵县| 巩留县| 屯留县| 铜鼓县| 若尔盖县|