1. 程式人生 > >第六章 輸入輸出系統——I/O系統

第六章 輸入輸出系統——I/O系統

在這裡插入圖片描述

I/O系統的組成:

  • 需要用於輸入、輸出和儲存資訊的裝置;
  • 需要相應的裝置控制器;
  • 控制器與CPU連線的高速匯流排;
  • 有的大中型計算機系統,配置I/O通道;
    在這裡插入圖片描述
    裝置管理器:
  • 管理物件:
    - I/O裝置和相應的裝置控制器(I/O系統組成)
  • 基本任務:
    - 完成使用者提出的I/O請求,
    - 提高I/O速率、改善I/O裝置的利用率。
    - 為更高層程序方便使用裝置提供手段

在這裡插入圖片描述

I/O裝置的型別:

  • 按傳輸速率分類:
    - 低速、中速、高速(鍵盤、印表機、磁碟)
  • 按使用:儲存裝置、輸入輸出裝置
  • 按資訊交換的單位分類:
    - 塊裝置:有結構、速率高、可定址、DMA方式控制
    - 字元裝置:無結構、速率低、不可定址、中斷方式控制
  • 按裝置的共享屬性分類:
    - 獨佔:印表機
    - 共享:一個時刻上仍然是隻被一個程序佔用。可定址、可隨機訪問的色後備。磁碟。
    - 虛擬:使一臺獨佔裝置變換為若干臺邏輯裝置,供給若干使用者“同時使用”

I/O系統介面:

  • 塊裝置介面
  • 流裝置介面
  • 網路通訊介面

I/O裝置中的介面:

  • 資料訊號線(進出資料轉換、緩衝後傳送)
  • 控制訊號線(讀\寫\移動磁頭等控制)
  • 狀態訊號線
    在這裡插入圖片描述

裝置控制器:

  • 裝置並不直接與CPU通訊
  • 計算機中的一個實體——“裝置控制器”負責控制一個或多個I/O裝置,以實現I/O- 裝置和計算機之間的資料交換。
  • 控制器是CPU與I/O裝置之間的介面,作為中間人接收從CPU發來的命令,並去控制I/O裝置工作,以使處理機脫離繁雜的裝置控制事務
  • 常作成介面卡插入計算機
  • 可編址,不同類

① 基本功能:

  • 接收和識別CPU命令(控制暫存器:存放命令和引數)
  • 標識和報告裝置的狀態(狀態暫存器)
  • 資料交換(資料暫存器)
  • 地址識別(控制器識別裝置地址、暫存器地址。地址譯碼器)
  • 資料緩衝(協調I/O與CPU的速度差距)
  • 差錯控制

② 組成:

  • 裝置控制器與處理機的介面
  • 裝置控制器與裝置的介面
  • I/O邏輯
    在這裡插入圖片描述

③ 處理機與裝置控制器間:
-實現CPU與裝置控制器之間的通訊。

  • 共有三類訊號線:資料線、地址線、控制線

I/O通道

設定通道後

  • CPU只需向通道傳送一條I/O指令即可不再幹預後續操作。
  • 通道形成通道程式,執行I/O操作,完成後向CPU發中斷訊號

主要目的:

  • 建立更獨立的I/O操作,解放CPU。
    - 資料傳送的獨立
    - I/0操作的組織、管理及結束處理也儘量獨立。
  • 實際上I/O通道是一種特殊的處理機:
    - 指令型別單一,只用於I/O操作;
    - 通道沒有記憶體,它與CPU共享記憶體

通道型別:

  • 位元組多路通道
  • 陣列選擇通道
  • 陣列多路通道

中斷機構與處理

中斷:CPU對I/O裝置發來的中斷訊號的一種響應,中斷是由外部裝置引起的,又稱外中斷。
陷入:由CPU內部事件所引起的中斷,通常把這類中斷稱為內中斷或陷入(trap)。
中斷和陷入的主要區別:是訊號的來源。

對多中斷源的處理方式:

  • ①遮蔽(禁止)中斷:
  • ②巢狀中斷:

中斷處理程式

主要工作
①進行程序上下文的切換
②對處理中斷訊號源進行測試
③讀取裝置狀態
④修改程序狀態

中斷處理流程

  • 測定是否有未響應的中斷訊號
  • 保護被中斷程序的CPU環境
  • 轉入相應的裝置處理程式
  • 中斷處理
  • 恢復CPU的現場
    在這裡插入圖片描述

直接儲存器訪問DMA方式

①該方式的特點是:

  • 資料傳輸的基本單位是資料塊;
  • 所傳送的資料是從裝置直接送入記憶體的,或者直接從記憶體進裝置;不需要CPU操作。
  • CPU干預進一步減少:僅在傳送一個或多個數據塊的開始和結束時,才需CPU干預,整塊資料的傳送是在控制器的控制下完成的。
    可見DMA方式又是成百倍的減少了CPU對I/O的干預,進一步提高了CPU與I/O裝置的並行操作程度。

②DMA控制器的組成
DMA控制器由三部分組成:

  • 主機與DMA控制器的介面;
  • DMA控制器與塊裝置的介面;
  • I/O控制邏輯
    在這裡插入圖片描述

裝置分配

所需資料結構:

  • 裝置控制表
  • 控制器控制表
  • 通道控制表
  • 系統裝置(總)表

分配裝置:在這裡插入圖片描述
分配控制器:在這裡插入圖片描述