コンピュータ

プログラム制御方式とは

プログラム制御方式

プログラム制御方式とは、入出力装置から主記憶装置(メインメモリ)へのデータ転送をCPUが直接制御する方式のことです。PIO(Programmed I/O)方式や直接制御方式とも呼ばれています。

コンピュータはさまざまな機器とデータのやり取りを行います。プログラム制御方式では、このさまざまな機器とのやり取り(入出力の制御)をCPUが直接制御します。

プログラム制御方式のイメージ例

上記はプログラム制御方式のイメージ例です。入出力装置からの命令を受けたCPUは、CPUのレジスタを経由して主記憶装置にデータを転送します。

プログラム制御方式は、入出力のたびにCPUが主記憶装置と入出力装置間のデータ転送を直接制御するため、処理効率が悪い方式です。(低速な入出力処理を待っている間、CPUは他の処理ができない

このプログラム制御方式の課題を解消したのがDMA(Direct Memory Access:ダイレクトメモリアクセス)という制御方式です。

DMAでは、CPUを介さずにDMAコントローラが主記憶装置と入出力装置間のデータ転送を行います。