基本情報技術者メモリ階層とI/Oの基礎オリジナル・公式資料照合難易度★★☆☆☆

大量データを主記憶とI/O装置の間で転送する。CPUがデータを1語ずつ読み書きする負担を減らすためDMAを使う。この仕組みについて正しい説明はどれか。

A
DMAでは、CPUが全データを1語ずつコピーする処理を必ず繰り返す

データをCPU自身が逐次コピーし続ける方式とは異なります。装置側によるメモリ転送を利用してCPU負担を減らします。

B
CPUやドライバーが転送先等を設定し、デバイス側がメモリへ転送することで、転送中にCPUが別の仕事を行える★ 正解

CPUが準備を行い、装置側が転送する役割分担です。CPUが別処理へ進めることと、一切関与しないことは異なります。

C
DMAを使う装置には、任意のアプリの仮想アドレスを無条件にそのまま渡してよい

装置が参照するDMAアドレスにはマッピング等の制約があります。ユーザー仮想アドレスを無条件に装置へ渡すことはできません。

D
DMAでは、転送設定・完了確認・エラー処理にCPUが一切関与しなくなる

転送の準備や完了通知への対応、必要な同期・エラー処理はあります。DMAはCPUの関与を全てなくす機構ではありません。

解説

DMAはCPUによる逐次コピーを減らす仕組みです。転送バッファーの設定や完了処理等は残ります。CPUが使う仮想アドレスと装置向けDMAアドレスが同じとは限らず、ドライバーは適切なDMA API等を用います。

根拠資料・確認情報

対応範囲:2026年度 基本情報技術者試験 科目A・B

資料確認日:2026-10-28

同じレッスンの問題

アプリで毎日学習しよう

ゲーミフィケーションで 基本情報技術者 合格を目指す。無料・課金なし。

更新: 2026/10/28