輸入輸出系統

2022-10-06 22:51:03 字數 3975 閱讀 6352

輸入輸出系統是計算機系統中的主機與外部進行通訊的系統。它由外圍裝置和輸入輸出控制系統兩部分組成,是計算機系統的重要組成部分。外圍裝置包括輸入裝置、輸出裝置和磁碟儲存器、磁帶儲存器、光碟儲存器等。

從某種意義上也可以把磁碟、磁帶和光碟等裝置看成一種輸入輸出裝置,所以輸入輸出裝置與外圍裝置這兩個名詞經常是通用的。在計算機系統中,通常把處理機和主儲存器之外的部分稱為輸入輸出系統,輸入輸出系統的特點是非同步性、實時性和裝置無關性。

cpu從資訊傳輸速率來講,相差也很懸殊。如果把高速工作的主機同不同速度工作的外圍裝置相連線,保證主機與外圍裝置在時間上同步要討論的外圍裝置的定時問題。

輸入/輸出裝置同cpu交換資料的過程:

輸入過程:

(1)cpu把乙個位址值放在位址匯流排上,這一步將選擇某一輸入裝置;

(2)cpu等候輸入裝置的資料成為有效;

(3)cpu從資料匯流排讀入資料,並放在乙個相應的暫存器中。

輸出過程:

(1)cpu把乙個位址值放在位址匯流排上,選擇輸出裝置;

(2)cpu把資料放在資料匯流排上;

(3)輸出裝置認為資料有效,從而把資料取走。

輸入輸出系統-定時方式

網路模型

由於輸入/輸出裝置本身的速度差異很大,因此,對於不同速度的外圍裝置,需要有不同的定時方式,總的說來,cpu與外圍裝置之間的定時,有以下三種情況。

1.速度極慢或簡單的外圍裝置

對這類裝置,如機械開關、顯示二極體等等,cpu總是能足夠快地作出響應。換句話說,對機械開關來講,cpu可以認為輸入的資料一直有效,因為機械開關的動作相對cpu的速度來講是非常慢的,對顯示二極體來講,cpu可以認為輸出一定準備就緒,因為只要給出資料,顯示二極體就能進行顯示,所以,在這種情況下,cpu只要接收或傳送資料就可以了。

2.慢速或中速的外圍裝置

由於這類裝置的速度和cpu的速度並不在乙個數量級,或者由於裝置(如鍵盤)本身是在不規則時間間隔下操作的,因此,cpu與這類裝置之間的資料交換通常採用非同步定時方式。其定時過程如下:

鍵盤如果cpu從外設接收乙個字,則它首先詢問外設的狀態,如果該外設的狀態標誌表明裝置已「準備就緒」,那麼cpu就從匯流排上接收資料。cpu在接收資料以後,發出輸入響應訊號,告訴外設已經把資料匯流排上的資料取走。然後,外設把「準備就緒」的狀態標誌復位,並準備下乙個字的交換。

如果cpu起先詢問外設時,外設沒有「準備就緒」,那麼它就發出表示外設「忙」的標誌。於是,cpu將進入乙個迴圈程式中等待,並在每次迴圈中詢問外設的狀態,一直到外設發出「準備就緒」訊號以後,才從外設接收資料。

cpu傳送資料的情況也與上述情況相似,外設先發出請求輸出訊號,而後,cpu詢問外設是否準備就緒。如果外設已準備就緒,cpu便發出準備就緒訊號,並送出資料。外設接收資料以後,將向cpu發出「資料已經取走」的通知。

通常,把這種在cpu和外設間用問答訊號進行定時的方式叫做應答式資料交換。

3.高速的外圍裝置

由於這類外設是以相等的時間間隔操作的,而cpu也是以等間隔的速率執行輸入/輸出指令的,因此,這種方式叫做同步定時方式。一旦cpu和外設發生同步,它們之間的資料交換便靠時鐘脈衝控制來進行。

輸入輸出系統-控制方式

控制方式

程式查詢方式和程式中斷方式適用於資料傳輸率比較低的外圍裝置,而dma方式、通道方式和ppu方式適用於資料傳輸率比較高的裝置。在微控制器和微型機中多採用程式查詢方式、程式中斷方式和dma方式。通道方式和ppu方式大都用在中、大型計算機中。

在計算機系統中,cpu管理外圍裝置也有幾種類似的方式:

1 程式查詢方式

程式查詢方式是早期計算機中使用的一種方式。資料在cpu和外圍裝置之間的傳送完全靠計算機程式控制,查詢方式的優點是cpu的操作和外圍裝置的操作能夠同步,而且硬體結構比較簡單。但問題是,外圍裝置動作很慢,程式進入查詢迴圈時將白白浪費掉cpu很多時間。

這種情況同上述例子中第一種方法相仿,cpu此時只能等待,不能處理其他業務。即使cpu採用定期地由主程式轉向查詢裝置狀態的子程式進行掃瞄輪詢的辦法,cpu寶貴資源的浪費也是可觀的。因此當前除微控制器外,很少使用程式查詢方式。

程式中斷方式

2 程式中斷方式

中斷是外圍裝置用來「主動」通知cpu,準備送出輸入資料或接收輸出資料的一種方法。通常,當乙個中斷發生時,cpu暫停它的現行程式,而轉向中斷處理程式,從而可以輸入或輸出乙個資料。當中斷處理完畢後,cpu又返回到它原來的任務,並從它停止的地方開始執行程式。

這種方式和我們前述例子的第二種方法相類似。可以看出,它節省了cpu寶貴的時間,是管理i/o操作的乙個比較有效的方法。中斷方式一般適用於隨機出現的服務,並且一旦提出要求,應立即進行。

同程式查詢方式相比,硬體結構相對複雜一些,服務開銷時間較大。

3 直接記憶體訪問(dma)方式

用中斷方式交換資料時,每處理一次i/o交換,約需幾十微秒到幾百微秒。對於一些高速的外圍裝置,以及成組交換資料的情況,仍然顯得速度太慢。直接記憶體訪問(dma)方式是一種完全由硬體執行i/o交換的工作方式。

這種方式既考慮到中斷響應,同時又要節約中斷開銷。此時,dma控制器從cpu完全接管對匯流排的控制,資料交換不經過cpu,而直接在記憶體和外圍裝置之間進行,以高速傳送資料。這種方式和前述例子的第三種方法相仿,主要優點是資料傳送速度很高,傳送速率僅受到記憶體訪問時間的限制。

與中斷方式相比,需要更多的硬體。dma方式適用於記憶體和高速外圍裝置之間大批資料交換的場合。

外圍處理機(ppu)方式

4 通道方式

dma方式的出現已經減輕了cpu對i/o操作的控制,使得cpu的效率有顯著的提高,而通道的出現則進一步提高了cpu的效率。這是因為,cpu將部分權力下放給通道。通道是乙個具有特殊功能的處理器,某些應用中稱為輸入輸出處理器(iop),它可以實現對外圍裝置的統一管理和外圍裝置與記憶體之間的資料傳送。

這種方式與前述例子的第四種方法相仿,大大提高了cpu的工作效率。然而這種提高cpu效率的辦法是以花費更多硬體為代價的。

5 外圍處理機方式

外圍處理機(ppu)方式是通道方式的進一步發展。由於ppu基本上獨立於主機工作,它的結構更接近一般處理機,甚至就是微小型計算機。在一些系統中,設定了多台ppu,分別承擔i/o控制、通訊、維護診斷等任務。

從某種意義上說,這種系統已變成分布式的多機系統。

輸入輸出系統-外圍裝置

輸出裝置

外圍裝置的種類相當繁多,有機械式和電動式,也有電子式和其他形式。其輸入訊號,可以是數字式的電壓,也可以是模擬式的電壓和電流。外圍裝置包括輸入裝置、輸出裝置和磁碟儲存器、磁帶儲存器、光碟儲存器等。

輸入裝置

輸入裝置:向計算機輸入資料和資訊的裝置。是計算機與使用者或其他裝置通訊的橋梁。

輸入裝置是使用者和計算機系統之間進行資訊交換的主要裝置之一。鍵盤,滑鼠,攝像頭,掃瞄器,光筆,手寫輸入板,遊戲杆,語音輸入裝置等都屬於輸入裝置。輸入裝置(inputdevice)是人或外部與計算機進行互動的一種裝置,用於把原始資料和處理這些數的程式輸入到計算機中。

計算機能夠接收各種各樣的資料,既可以是數值型的資料,也可以是各種非數值型的資料,如圖形、影象、聲音等都可以通過不同型別的輸入裝置輸入到計算機中,進行儲存、處理和輸出。

滑鼠輸出裝置

輸出裝置(outputdevice)是人與計算機互動的一種部件,用於資料的輸出。它把各種計算結果資料或資訊以數字、字元、影象、聲音等形式表示出來。常見的有顯示器、印表機、繪圖儀、影像輸出系統、語音輸出系統、磁記錄裝置等。

將計算機輸出資訊的表現形式轉換成外界能接受的表現形式的裝置。利用各種輸出裝置可將計算機的輸出資訊轉換成印在紙上的數字、文字、符號、圖形和影象等,或記錄在磁碟、磁帶、紙帶和卡片上,或轉換成模擬訊號直接送給有關控制裝置。有的輸出裝置還能將計算機的輸出轉換成語聲。

儲存器儲存器(memory)是計算機系統中的記憶裝置,用來存放程式和資料。計算機中的全部資訊,包括輸入的原始資料、電腦程式、中間執行結果和最終執行結果都儲存在儲存器中。它根據控制器指定的位置存入和取出資訊。

儲存器是用來儲存程式和資料的部件,有了儲存器,計算機才有記憶功能,才能保證正常工作。按用途儲存器可分為主儲存器(記憶體)和輔助儲存器(外存)。外存通常是磁性介質或光碟等,能長期儲存資訊。

記憶體指主機板上的儲存部件,用來存放當前正在執行的資料和程式,但僅用於暫時存放程式和資料,關閉電源或斷電,資料就會丟失。[1]

數字輸入輸出

數字輸入 輸出就是二進位制值輸入 輸出如開關接通是1,斷開是0 輸入裝置向計算機輸入資料和資訊的裝置。是計算機與使用者或其他裝置通訊的橋梁。輸入裝置是使用者和計算機系統之間進行資訊交換的主要裝置之一.鍵盤,滑鼠,攝像頭,掃瞄器,光筆,手寫輸入板,遊戲杆,語音輸入裝置等都屬於輸入裝置 input de...

9 1輸入輸出流

第九章輸入輸出流 9.1 輸入輸出流的概念 一 c 的輸入輸出包含三方面內容 1.對系統指定的標準裝置的輸入輸出,例如鍵盤作為輸入裝置,螢幕作為輸出裝置,簡稱標準io。2.對磁碟檔案進行輸入輸出,簡稱檔案io。3.對記憶體空間進行輸入輸出,通常把乙個字元陣列作為儲存空間,稱為字串輸入輸出,簡稱串io...

Linux輸入輸出函式總結

輸入輸出函式總結 sscanf 格式化字串輸入 相關函式 scanf,fscanf 表頭檔案 include 定義函式 int sscanf const char str,const char format 函式說明 sscanf 會將引數str的字串根據引數format字串來轉換並格式化資料。格式...