オペレーティングシステムのI / O管理:1。I/ Oコントローラ、I / O制御モード(プログラムダイレクト制御モード、割り込みドライブモード、DMAモード、チャネル制御モード)

基本知識

マインドマッピング

ここに画像の説明を挿入します

I / Oデバイスとは何ですか?

ここに画像の説明を挿入します

分類

ここに画像の説明を挿入します
ここに画像の説明を挿入します![ここに画像の説明を挿入します
ここに画像の説明を挿入します

I / Oコントローラー

マインドマッピング

ここに画像の説明を挿入します

I / Oコントローラー機能

ここに画像の説明を挿入します

I / Oコントローラーの構成

ここに画像の説明を挿入します
ここに画像の説明を挿入します

メモリマップドI / Oと独立したレジスタアドレス指定

ここに画像の説明を挿入します

I / O制御方式

1.直接プログラム制御方式

ここに画像の説明を挿入します
ここに画像の説明を挿入します

上記の方法の欠点を解決するために、割り込み駆動型の方法が作成されました

2.割り込みドライブモード

ここに画像の説明を挿入します

直接プログラム制御との違いは次のとおり
です。1。CPUが読み取り/書き込みコマンドを送信した後、I / Oを待機しているプロセスをブロックし、実行のために別のプロセスに切り替えることができます。2。I
/ Oが完了した後、コントローラは割り込み信号を送信します。CPUは割り込み信号を検出した後、現在のプロセスの動作環境情報を保存し、割り込みハンドラを実行して割り込みを処理します。
3. CPUは、I / Oコントローラから1ワードのデータを読み取り、CPUレジスタに転送してから、メインメモリに書き込みます。
問題:割り込み処理中にプロセスの動作環境を保存および復元する必要があります。。このプロセスには、一定の時間とオーバーヘッドが必要です。割り込みの頻度が高すぎると、システムパフォーマンスも低下することがわかります。I/ Oデバイスとメモリ間の各ワード転送はCPUを通過する必要があります。この目的のために、DMA法が提案されています。

3. DMAモード(ダイレクトメモリアクセス)

ここに画像の説明を挿入します

1.CPUからI / Oへの操作はDMAコントローラーによって完了され、データ送信はCPUによって処理されません。CPUは、1つ以上のデータブロックの送信の開始時と終了時にのみ介入する必要があります。
2.割り込み駆動方式とは異なり、データ送信用にDMAコントローラーがもう1つ追加されています。
3. DMAコントローラー:
ここに画像の説明を挿入します
1。DMA制御図から、メモリからI / Oデバイスへのデータ転送は、CPUの介入を必要としないDMAを介して完了できることがわかります。これにより、CPUとIの間の並列効率が大幅に向上します。 / Oデバイス
2.CPUは、I / Oデバイスへの要求の発行、データ送信が完了したときの割り込みの受信のみを担当します

ここに画像の説明を挿入します

4.チャネル制御方式

ここに画像の説明を挿入します

チャネル制御方式はDMA方式とは異なります。CPUがI / Oデバイスを要求すると、最初にメモリ内のタスクリストにタスクが追加され、次にチャネルがメモリ内のタスクリストをチェックします。タスクでは、チャネルはI / Oデバイスとの通信を担当します。データ送信。したがって、データブロックのセットを毎回読み書きできます。

ここに画像の説明を挿入します

比較

ここに画像の説明を挿入します

おすすめ

転載: blog.csdn.net/qq_41587740/article/details/109068412