關於設備控制器和 I/O 通道的理解


設備控制器

設備控制器是CPU 與 I/O 設備之間的接口,它接收 CPU 發來的命令,去控制 I/O 設備工作,使 CPU 從繁雜的設備控制事務中解放出來。

當 CPU 要操作 I/O 設備時,首先要啟動這個設備,一方面將啟動命令發送給設備控制器,另一方面通過地址線將 I/O 設備的地址發給設備控制器,設備控制器的 I/O 邏輯對收到的地址進行譯碼,再根據所譯出的命令對相應的設備進行操作。

由此看來,I/O 設備控制器的作用是 譯碼器+執行器

CPU 對 I/O 的操作命令並不是只有一條,而是多條的,因此操作一次 I/O 設備,首先 CPU 向設備控制器發送一條條命令,設備控制器接收到一條條命令,然后譯碼、執行。因此設備控制器一定程度上使 CPU 從 I/O 控制上解脫了出來,但並未完全解脫。這就有了 I/O 通道的產生。

I/O通道

關於 I/O 通道的工作流程詳見這篇博文

I/O 通道實際上是一種特殊的處理機,並且其與 CPU 共享內存。

當 CPU 要操作某個 I/O 設備時,它並不需要一條條將 I/O 指令(稱為通道程序)發送給設備控制器,只需要向通道發出 I/O 指令,指明這一條條指令在內存的什么地方,並且指明要操作的是哪個設備,然后 CPU 就可以去忙別的事情了。

I/O 通道接收要 CPU 發送來的這些信息之后,就可以從內存中找到並執行這個通道程序,即發送啟動命令和一條條 I/O 命令給設備控制器;當對 I/O 設備的操作完成之后,通道向 CPU 發出中斷信號,告訴 CPU 相應的操作已經完成。

由此看出,I/O 通道作為一種特殊的處理機(實際上就相當於早期的外圍機),承擔了原來 CPU 處理 I/O 操作的一部分功能,使得 CPU 從 I/O 操作種解放出來,CPU 和對 I/O 操作可以並行。

在引入 I/O 通道之后,I/O 系統結構形成了四級結構:

  • 最低級為I/O設備,
  • 次低級為設備控制器,
  • 次高級為I/O通道,
  • 最高級是 CPU。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM