平成19年 春期 ソフトウェア開発技術者 午前 問21

DMAの説明として、適切なものはどれか。

 ア  CPUが磁気ディスクと主記憶のデータの受渡しを行う転送方式である。
 イ  主記憶の入出力専用アドレス空間に入出力装置のレジスタを割り当てる方式である。
 ウ  専用の制御回路が入出力装置や主記憶などの間のデータ転送を行う方式である。
 エ  複数の命令の実行ステージを部分的にオーバラップさせて同時に処理し、全体としての処理時間を短くする方式である。


答え ウ


解説

 ア  マルチワードDMAモード(Multiword DMA Mode)の説明(?)です。
DMAの一種ですが、一般的なDMAとは異なりますので、正解ではありません。
 イ  メモリマップドI/Oの説明です。
CPUはメモリ・入出力装置の区別なく、アドレスが付与されていて、同じようにアクセスすることができます。(同じ命令でアクセスできます。)
これに対応するのは、ポートマップドI/Oといい、メモリと入出力装置のアドレスを異なったアドレス空間に割り当て、メモリにアクセスするときと、I/Oにアクセスするときには、異なった命令を使用します。
 ウ  DMAの説明です。
メモリ・メモリ間の転送を行うことも可能です。
また、メモリマップドI/Oであれば、入出力装置・入出力装置間の転送をDMAで行うことも可能です。
 エ  パイプラインの説明です。
CPUの処理能力を上げるための技術です。


キーワード
・DMA

キーワードの解説
  • DMA(Direct Memory Access)
    コンピュータがメモリにアクセスするには、CPUがメモリへのアクセスを行う必要があるが、メモリと入出力装置間の転送では処理に時間がかかり、CPUが他の仕事をたびたび中断して行うため効率が悪かった。
    入出力装置とのデータ転送は、あらかじめ転送サイズ、転送先、転送元のアドレスがわかっているため、CPUでなくては行えないわけではなく、メモリと入出力装置に両方アクセスできれば、CPU以外の処理部が行うことも可能であり、そのために開発されたのがDMAである。
    DMAはCPUを介さずにメモリと入出力装置の間のデータ転送を行うため、CPUの負荷を軽減できる。
    ただし、バスは使用するので、CPUとバス競合が発生した場合、CPU/DMAの処理が待たされることになる。

もっと、「DMA」について調べてみよう。

戻る 一覧へ 次へ