基本情報技術者メモリ階層と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
同じレッスンの問題
問題 1
バイトアドレス方式で、ページサイズを4096バイト(0x1000)とする。仮想ページ番号1は物理ページ枠番号5へ対応しており、アクセス権も有効である。仮想アドレス0x1234に対応する物理アドレスはどれか。
問題 2
Linuxで、あるアドレスへのアクセスによりページフォールトが起きた。必要なページはディスクから読み込まずに用意でき、カーネルが対応付けを更新して処理を再開した。この事象について正しいのはどれか。
問題 3
TLBで仮想アドレスから物理アドレスへの対応を調べる時間は10ns、主記憶アクセスは1回100nsとする。TLB命中率は95%。命中時はTLB照合後にデータを1回読む。ミス時は照合後に1段のページ表を主記憶から1回読み、その後データを1回読む。処理の重なり、他のキャッシュ、ページフォールトはない。平均所要時間はどれか。
問題 4
あるCPUキャッシュのモデルでは、照合を含むヒット時間が2nsである。ミスの場合は、その2nsに加えて下位メモリからの取得に50nsを要する。ヒット率90%で、他の待ちはない。1回の平均アクセス時間はどれか。