基本情報暗記無料で始める

DMAとは?だいれくとめもりあくせす

DMA(Direct Memory Access:直接メモリアクセス)は、入出力装置と主記憶の間のデータ転送を、プロセッサを介さずDMAコントローラが直接行う方式。転送中プロセッサは別の処理を進められるため、大量のデータを扱う装置ほど効果が大きい。転送の完了は割込み(実行中の処理を一時止めて、別の処理を先にさせる仕組み)によってプロセッサへ通知される。

最終更新:2026-10-10

試験情報

基本情報技術者試験の過去問では1問の解説で触れられています。

基本情報技術者試験の頻出用語/テクノロジ系

別名:DMA(ダイレクトメモリアクセス)、ダイレクトメモリアクセス

この語が出る過去問を解く →

背景

入出力装置はプロセッサに比べて動きが遅く、プロセッサが1語ずつ転送に付き合うと、待ち時間のぶんだけ計算が止まってしまう。転送という単純な作業を専用の回路に預ければ、プロセッサは待たずに次の仕事へ進める。この分業として考えられたのがDMAである。

具体例

ディスクから1Mバイト読み出す場合、プログラム制御では1語ごとにプロセッサが介在するが、DMAでは開始アドレスと転送語数を設定するだけで済む。ネットワークインタフェースやGPUでも同じ仕組みが使われている。

試験での引っ掛け

DMA中も、主記憶とやり取りする通り道(メモリバス)はプロセッサと共有されるため、プロセッサのメモリアクセスと競合して速度が落ちることがある(DMAがバスを使う間プロセッサが待たされることを、サイクルスチールと呼ぶ)。またDMAが書き換えた主記憶の領域は、キャッシュに残る内容と食い違うので、両者をそろえる制御が必要になる。

関連用語

出た過去問

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

この語が出る過去問を解く →

試験での特徴
  • 1問の解説で触れられる
  • 分野:テクノロジ系
  • DMA中も、主記憶とやり取りする通り道(メモリバス)はプロセッサと共有されるため、プロセッサのメモリアクセスと競合して速度が落ちることがある(DMAがバスを使う間プロセッサが待たされることを、サイクルスチールと呼ぶ)。