PIOモードとDMAモードの違い
ATAには「PIOモード(Programmed I/O Mode)」と「DMAモード(Direct Memory Access Mode)」という2種類の転送モードが定義されています。PIOモードによる転送は非常に低速で、デバイスとメモリ間の転送をプロセッサが仲介する必要があります。一方、DMAモード転送はプロセッサの介入なしで行われるため、はるかに高速です。ATAチャンネル上のいずれかのデバイスでPIOモードが使用されている場合、両方のデバイスでPIOモードを使用しなければなりません。これによりスループットが低下し、プロセッサに大きな負荷がかかるため、ドライブにアクセスするたびにシステムが遅延します。
現在のATAおよびATAPIデバイスはすべてDMAモードをサポートしていますが、後方互換性のため、ほとんどのデバイスでPIOモードを使用する設定が可能です。PIOモードを使用することは推奨されません。システムをアップグレードする際、PIOモードしかサポートしていないドライブが見つかった場合は交換してください。そもそもPIOモードに限られるのは非常に古いハードドライブや光学ドライブだけであるため、交換するのが当然の選択と言えます。
DMAモード転送の有効化
ハードディスクとインターフェースがサポートしているDMAのレベルに応じて、DMA転送を有効にしてもディスクパフォーマンスに目に見える変化がない場合もありますが、DMAを有効にする価値は常にあります。なぜなら、PIO転送がプロセッサにかける負荷を大幅に軽減できるからです。PIO転送時にCPU使用率が75%になるコンピュータでも、DMA転送を使用すれば、CPU使用率1.5%程度で同等以上のディスクパフォーマンスが得られる可能性があります。マルチタスクのオペレーションシステムでは、解放されたCPUリソースがシステム全体のレスポンス向上につながります。
DMA転送を使用するには、ハードドライブ、BIOS、およびチップセットが明示的にDMAをサポートしている必要があり、かつオペレーションシステムにDMAドライバーがインストール、ロードされ、有効になっている必要があります。Windowsの最近のバージョンはすべてDMA転送をサポートしていますが、次のように、常にデフォルトでDMAが有効になっているとは限りません。
- Windowsをクリーンインストールすると、DMA対応のドライバーが自動的にインストールされ、BIOS、インターフェース、ハードドライブのDMA互換性がテストされます。これらのテストのいずれかが失敗すると、DMAは無効になります。3つすべてが成功した場合、ドライブとインターフェースで共通の最も高速なDMAモードで、DMAが自動的に有効になります。
- 既存のシステムをWindows XPにアップグレードする場合、以前にDMAが有効になっていた場合にのみ、自動的にDMAが有効になります。以前にDMAが無効になっていた場合は、手動で有効にする必要があります。
2台目のハードドライブをインストールしてシステムを再起動したら、直ちにそのドライブの現在のDMAステータスを確認し、有効になっていない場合はDMAを有効にしてください。その手順は以下の通りです。
図7-13:Windows XPにおいて、このハードドライブがUDMA-5(UltraATA-100)転送モードを使用していることを示しています
- 「マイコンピュータ」を右クリックし、「プロパティ」を選択して「システムのプロパティ」ダイアログを表示します。
- 「ハードウェア」タブをクリックし、「デバイスマネージャ」ボタンをクリックしてデバイスマネージャを表示します。
- 「IDE ATA/ATAPIコントローラ」項目を見つけて展開します。両方のATAコントローラが有効な標準システムでは、3つの項目がリストアップされます。最初の項目はATAコントローラ自体を示すものであり、無視して構いません。他の2つの項目が「プライマリIDEチャネル」と「セカンダリIDEチャネル」です。
- DMAを有効にしたいデバイスが接続されているチャネルを右クリックし、「プロパティ」を選択してから「詳細設定」タブをクリックすると、図7-13に示すダイアログが表示されます。
- このダイアログには、選択したATAチャネル上のデバイス0(マスター)およびデバイス1(スレーブ)の「デバイスの種類」と「現在の転送モード」が表示されます。「現在の転送モード」フィールドには現在使用中の転送モードが表示され、以下のように変更できる場合があります。
DMA Mode x または Ultra DMA Mode x
Windowsは表示されているDMAモードまたはUDMAモードを使用しています。これは、インターフェース、ケーブル、およびデバイスがサポートする最も高速なモードです。例えば、ハードドライブがUltraATA-100をサポートし、マザーボードのオンボードインターフェースがUltraATA-66をサポートしていても、標準の40芯ATAケーブルを使用している場合、WindowsはインターフェースをUltraATA-33で使用するように構成します。そのケーブルを80芯のUltraDMAケーブルに交換してシステムを再起動すると、Windowsはインターフェースを再構成してUltraATA-66を使用するように設定します。使用するUDMAモードを明示的に選択することはできません。
PIO Mode または PIO Mode x
Windowsはインターフェースとデバイスがサポートする最も高速なPIOモード(通常はPIO-4、16.7 MB/s)を使用しています。転送モードが現在「PIOのみ」に設定されている場合、転送モードを「DMA(利用可能な場合)」に設定してシステムを再起動することで、DMAを有効にできる可能性があります。システム再起動後もデバイスの現在の転送モードがPIOモードのまま表示される場合、そのデバイスはDMAモードで使用できません。DMAをサポートするデバイスに交換してください。
該当なし
デバイスがインストールされていません。
Windowsの最近のバージョンはすべて、明らかなDMAの問題を検出すると、起動時に自動的にDMA転送を無効にし、PIO転送に戻ります。システムを再起動してもチェックが入ったままにならないDMAのチェックボックスは、コンピュータがDMAを適切にサポートしていないことを示す良い兆候です。残念ながら、このサポート状況を確認する方法は完全ではありません。DMAが正常にインストールされたように見えても、断続的な問題が発生する可能性があります。以下の症状のいずれかが発生する場合は、DMAの問題を示唆している可能性があります(そうでない場合もあります)。
- ハードディスクにまったくアクセスできない、またはファイルが破損している、あるいは見当たらない。
- ファイルアクセス中に、ドライブが短時間停止したり、速度が上がったり下がったりするように見える。
- キーボードやフォアグラウンドのアプリケーションが一時的に応答しなくなったり、マウスの動きがカクついたり応答しなくなったりする。
- セットアップのプラグアンドプレイ検出フェーズ中にWindowsがフリーズする。
- Windowsがセーフモードでしか起動しない。
- WindowsのシャットダウンがDMAを有効にする前よりも大幅に時間がかかる。
これらの問題が発生したからといって、必ずしもコンピュータでDMAを使用できないわけではありません。考えられる原因は以下の通りです。
ケーブル
ATA規格によると、ケーブルの長さは最大18インチ(0.45 m)ですが、24インチや36インチのPATAケーブルもよく見かけます。こうした長いケーブルは、高速なDMAモードでは正常に動作しない、あるいはまったく動作しないことがあります。ケーブルの品質も大きく異なります。コンピュータショップの箱の中に1.99ドルで売られているようなケーブルは、新しいハードドライブに付属しているケーブルよりも、高速環境での信頼性が低い可能性があります。ハードドライブをインストールする際は、必ず古いATAケーブルをドライブに付属のケーブルと交換してください。ドライブにケーブルが付属していなかった場合は、高品質なDMAケーブルを別途購入してください。DMAで問題が発生している場合、ケーブルをより良いものに交換することで解決する可能性があります。
ドライブ
現在のドライブはすべてDMAを適切にサポートしていますが、初期のUltraATA-33ドライブの中にはDMAモードを正しく実装していないものがありました。古いドライブをDMAを使用するように再構成する場合は、まずメーカーのウェブサイトでそのモデルの詳細を確認してください。一部のモデルにはソフトウェアパッチが提供されています。
BIOS
DMAサポートを公称している初期のBIOS実装の一部には、正しく動作しないものがあります。コンピュータの新しいBIOSリビジョンが利用可能な場合は、ダウンロードしてインストールすることで、断続的なDMAの問題が解決する可能性があります。現在のBIOSがDMAをサポートしていない場合でも、改訂版をインストールすることでその機能を追加できる場合があります。
SATAは手軽です
さまざまなPIOモードやDMAモードを使用する可能性があるPATAドライブやインターフェースとは異なり、SATAドライブとインターフェースはDMAモードのみを使用します。手動で設定を構成する必要はありません。SATAドライブが動作していれば、最適化された設定が使用されていると確信して間違いありません。
0 件のコメント