亚洲一级簧片_性 毛片_国产乱子视频_久久影城_强伦女教师视频_成人精品久久

電腦重裝系統(tǒng)中斷

發(fā)布時間: 2023-04-15 18:09 閱讀: 文章來源:轉(zhuǎn)載

1. 中斷的由來

?

1956年,ERA 1103A計算機系統(tǒng)引入了中斷(interrupt)機制。

?

ERA 1103A用于接收、處理風洞試驗數(shù)據(jù),再將數(shù)據(jù)處理結(jié)果返回給風洞,如此循環(huán)往復(fù)。但風洞數(shù)據(jù)的準備時間比較長,ERA 1103A只能處于等待狀態(tài),這段時間被白白的浪費掉了。為了提高ERA 1103A的利用率,其引出了一條中斷線,在等待風洞數(shù)據(jù)的這段時間運行其他程序,當風洞數(shù)據(jù)到來的時通過中斷線告知ERA 1103A停止當前工作去接收風洞數(shù)據(jù)。

以上就是最初的中斷設(shè)計原型。

ERA 1103A計算機系統(tǒng)

2. 中斷分類

現(xiàn)代處理器的中斷概念變得越來越廣泛,已經(jīng)不僅僅局限于外部設(shè)備中斷。中斷存在的意義是CPU控制外部設(shè)備的同時,外部設(shè)備也可以高效的“控制CPU”。發(fā)展至今,這種設(shè)計思想擴展到了外部硬件控制CPU、軟件控制CPU、CPU運行管理等三個方面。因此,使用events事件來表示則更加的貼切實際,但在平時描述中,基本上仍然采用了中斷這個詞。

events的分類如下圖所示,主要包括中斷和異常,外部硬件控制CPU對應(yīng)hardware interupt,軟件控制CPU對應(yīng)software interrupt,CPU運行管理則對應(yīng)exception

2.1 hardware interrupt

硬件中斷是我們平時接觸的最多的一類event,比如鼠標、鍵盤、網(wǎng)卡等等都可以產(chǎn)生硬件中斷。因為CPU并不知道外部硬件設(shè)備何時產(chǎn)生硬件中斷請求,也不會提前獲知產(chǎn)生硬件中斷的前提,因此,硬件中斷屬于異步event。

CPU和外部IO設(shè)備通過一根或多根硬件連線進行硬件中斷信號的傳遞。這種硬件連線可以在SoC內(nèi)部實現(xiàn),也可以在外部PCB板上實現(xiàn)。

當CPU內(nèi)部集成了中斷控制器IP之后,各個IO設(shè)備的中斷信號線可以在SoC內(nèi)部連接到中斷控制器。例如非常常見的ARM GIC,當然,它不僅可以處理外部IO設(shè)備的硬件中斷,也可以處理CPU內(nèi)部之間硬件中斷。其內(nèi)部結(jié)構(gòu)如下圖所示:

內(nèi)部GIC

外部IO設(shè)備可以通過中斷控制芯片連接到CPU,該類芯片通常稱之為PIC。

此類中斷控制芯片中最具有代表性的應(yīng)該是Intel 8259,在微機原理課程中就能找到它的影子。

Intel 8259 PIC

它是為Intel 8085和Intel 8086微處理器設(shè)計的可編程中斷控制器(PIC)。8259將多個中斷輸入源組合成一個到主微處理器的單一中斷輸出,將系統(tǒng)中可用的中斷級別擴展到處理器芯片上的一個或兩個級別之外。在如今高性能GIC中,仍然可見這種分層次、可擴展的中斷架構(gòu)設(shè)計理念。

2.2 software interrupt

假設(shè)操作系統(tǒng)阻止非特權(quán)代碼直接訪問系統(tǒng)資源,那么應(yīng)用程序如何訪問這些受保護的資源呢?此時,軟件中斷就可以實現(xiàn)這一目的。當一個應(yīng)用軟件終止或者它向操作系統(tǒng)請求一些服務(wù)時,軟件中斷就會發(fā)生。如果說在軟件代碼中包含了系統(tǒng)調(diào)用,那么可以將software interrupt理解為同步事件。

當CPU接收到一個軟件中斷信號時,它可能會暫時將控制切換到一個中斷處理程序程序,并且內(nèi)核中被中斷掛起的進程(例如,一個程序的運行實例)將在中斷被接受后恢復(fù)。

應(yīng)用程序基于系統(tǒng)調(diào)用完成應(yīng)用層和操作系統(tǒng)內(nèi)核之間的通信,實現(xiàn)對CPU的控制。

2.3 異常

CPU異常發(fā)生在各種錯誤的情況下,例如當訪問無效的內(nèi)存地址或除零時,為了對它們作出反應(yīng),產(chǎn)生了異常處理機制。不同架構(gòu)的處理器對異常類型的定義有所不同,但核心思想是CPU工作過程遇到了不被允許的錯誤或者強制停止指令等,我們可以將異常做如下分類。

對于Faults異常,通常不影響軟件代碼的繼續(xù)運行,此類異常主要包括:

  • 除0操作
  • 無效操作碼
  • 設(shè)備不可用

對于Traps異常,比較常見的就是JTAG debug。當CPU收到了debug指令后,會進入到異常模式。此類異常主要包括:

  • 斷點
  • 溢出
  • 調(diào)試指令

對于Abort異常,比較常見的就是取指異常,當我們從RAM中沒有正確的獲取到待執(zhí)行指令時,CPU進入到Abort異常。此類異常主要包括:

  • 訪存錯誤
  • 總線錯誤
  • cache錯誤
???展開全文
相關(guān)文章
主站蜘蛛池模板: 亚洲日本va中文字幕 | 精品一区视频 | 91日韩 | 久久久婷 | 色欧美综合 | 亚洲欧美一区二区三区国产精品 | 俄罗斯a级毛片 | 国产亚洲欧美在线 | 久久久久久久久久久国产 | 国产精品成人一区二区三区夜夜夜 | 精品午夜视频 | 成人黄色毛片 | 在线黄av | 日本在线一区二区三区 | 日韩一二| a视频在线观看免费 | 亚洲乱码国产乱码精品精 | 一级黄色大片在线观看 | 日韩精品一区二区在线 | 一区二区在线电影 | 一区二区福利视频 | 欧美区国产区 | 成人黄色在线观看 | 欧美爱爱网 | 欧美视频一区二区三区 | 国产一区二区免费看 | av中文在线资源 | 成人精品视频在线 | 成人性生活大片免费看一 | 亚洲欧洲精品成人久久奇米网 | 国产在线精品一区二区三区 | 黄色三级免费看 | 色妇视频 | 国产成人精品久久久 | 一级片a | 一区二区三区国产视频 | 日本一二区视频 | 男女涩涩视频 | 黄色网址视频免费 | 麻豆一级| 最近中文字幕免费视频 |