決定するためにバス管理ユニットというものが存在する。8ビット・16ビットなどの初期のPCにはバス管理ユニットは存在せず、直接バスで繋がっていた。内部バスは、CPU内部でのデータのやり取りに使用する。一般に、データ伝送速度が極めて速い超高速バスが用いられる。内部バスには次のものがある。プロセッサバスCPU内の各装置を接続する。メモリバスCPUと主記憶装置を接続する。システムバスCPU・主記憶装置と入出力装置を接続する。外部バスは、入出力制御装置と補助記憶装置や、入出力装置間のデータのやり取りに使用される。一般に、外付けHDDやMOなどの高速なデータのやり取りが必要とされる場合には高速バスが使われる。キーボードやマウス、FDDなどの低速でも問題ない場合には低速バスが用いられる。†バスは通信路を共有するので、複数の装置が同時にデータを送信する場合もある。衝突を防止するため、通信路の調停を行う仕組みを仕組みである。これをバスアービトレーション、バスアービトレーションする機構をバスアービタ、バスアービトレーションを行う装置をバスマスターという。バス使用権を持ったバスマスターが、バス上の信号を支配することになる。†S転送元(source)D転送先(destination)GスリーステートバッファによるゲートCクロックパルス例:転送元のS0〜S3は信号線(1組の共通信号線)から切り離された状態とする。このときに、S1の内容をD1に転送したいとき、送信元側はG1だけをその制御入力によって導通状態にして、S1の内容をバスに乗せる。転送先側はクロックC1にパルスを加えて、D1を知らせる。†やり取りの結果を受け取る。メインメモリと入出力インタフェースへのやり取りを指示する。†1:該当するデバイスのチップセレクト信号をONにする。チップセレクト信号とは、メインメモリであるDRAMや複数存在する入出力インタフェースのデバイスに対して、どれを対象に処理を行うかを指定する信号のことである。2:該当するデバイスに書き込み/読み出しモードの信号を出力する。3:アドレスを指定する。4:データを書き込む/読み出す。上記の手順のうち1〜2はバス管理ユニット、3〜4はCPUが担当する。†DMA転送とは、CPUを介さずに、入出力装置とメインメモリの間で直接データ転送を行うものである。バス管理ユニットはDMA転送の機能を持ち、CPUの負担を低減できる。このDMA転送の機能のおかげで、次の情報をバス管理ユニットに与えるだけで、後はデータ転送処理は全てバス管理ユニットが行ってくれる。転送元である入出力インタフェースのアドレス転送先であるメインメモリのアドレスデータの転送回数DMAのデータ転送形式として、ATAやIDEなどが一般的に利用されている。/proc/dma」を実行すればよい。†バス管理ユニットは、通常2つのチップセットで構成されます。一般的なものは、ノースブリッジとサウスブリッジと呼ばれるチップセットを採用したものである。†メインメモリ用の超高速バスとグラフィックボード用の高速バスであるAGPを提供する。PCIもノースブリッジと接続される。目的ごとにIDE、USB、その他の低速デバイス用の3つのバスが提供される。†バス管理ユニットは、入出力インタフェースのコントローラに指示を与えると共に、対象となるデータをメモリに書き込む。これを受けたコントローラは、外部装置に該当する転送手段に変換して、指示とデータを転送する。IDEならばIDEコントローラ、USBならばUSBコントローラというものが存在し、それを介して外部装置と直接やり取りを行うわけだ。よって、サウスブリッジはバス管理ユニットの役割だけでなく、入出力インタフェースのコントローラ機能も内蔵しているわけである。†ノースブリッジとサウスブリッジによる一般的な構成以外には、インテル社のハブアーキテクチャによる構成がある。Hub)と呼ばれるチップが採用されている。GMCHとICHは専用高速バスで連結されている。この専用高速バスは、266MB/sの転送速度を持つ。†グラフィックボードに備わっていたグラフィック処理機能がチップに内蔵されているのが大きな特徴である。このような仕様により高速な描画・表示処理が可能となる。メインメモリとやり取りを行う。†CPUはメインメモリや入出力インターフェースにアクセスするために、システムバスを利用する。†システムバスは次の3つのバスに分類できる。†やり取りの相手を特定するバス。メインメモリに対しては対象となる命令やデータの所在を指定し、入出力インタフェースに対しては入出力の対象となる機器を指定する。†アドレスバスで指定された対象との間でデータのやり取りを行うのに用いるバスである。メインメモリに対してはアドレスを指定してメインメモリから出力された情報をこのバスを介して読み出し、また書き込む場合にはアドレスを指定してこのバスを介して書き込む情報を提供する。入出力インタフェースに対しても同じで、入出力装置とのデータのやり取りは最終的にこのバスをを介して行われる。†メインメモリや入出力インタフェースとの間で制御情報をやり取りするために用いられるバスである。CPUはメインメモリであるRAMに対して、これからデータを読み出すのか、それとも書き込むのかを指示してやる必要がある。その指示を行うのがコントロールバスである。入出力インタフェースに対しては、外部に情報を出力するのか、それとも外部から情報を入力するのかなどの指示を行う場合に用いられる。†バスは複数の信号線でできており、バスが何本の信号線でできているかを表すのがバス幅である。バス幅が大きければワンクロック(クロック回路が1回信号を送る間)に送れるデータの量は多くなる。例:32本のバスではワンクロックに1本で1ビットずつなので、32ビットのデータを送ることができる。これを32ビットバスという。バス幅が1ビットのバスをシリアルバス、バス幅が2ビット以上のバスをパラレルバスという。†パラレルバスでは複数の信号線を利用してデータを転送する。それぞれの信号線が送るタイミングがばらばらだと、送る前と送った後でデータの内容が変わってしまう。そのために、パラレルバスではそれぞれの信号線がクロック信号にタイミングを合わせることで同期を取って、データを転送する。データを順序よく取り出すことができる。データの順番がわからなくなってしまう。ディスク間の通信を可能にする。この通信の規格を定めた各種のインタフェースが存在する。ディスクコントローラとハードディスク間で現在一般に用いられるインタフェースには次の3種類がある。†HDDと同様に転送量のみで性能を判断できない。シーケンシャルアクセスによる転送量が上限になることもあるが、ランダムアクセスのI/O回数の上限が影響することが大きい。バスはケーブルなのでHDDのように頭出しの時間はないが、1回のI/O当たりのオーバーヘッドは存在する。そのため、I/O回数が多いと負荷がかかる。これはネットワークにおいてショートパケットはスループットが出ない現象と似ている。スリーステートバッファ(4463d)。