パソコンが重い、もしかしてPIO病かも?

J.Stone J.Stone

ある日突然パソコンが遅くなったと感じたり異様に重いと思った時は故障を疑いがちですが、それはもしかしたらPIO病かもしれません。故障を疑う前にPIO病なのかを確認したうえで故障チェックをしないと余計な出費を招くことにつながります。今回はPIO病の直し方を含めて解説していきます。

パソコンを遅くする病……PIO病

PCを使っていてある日突然遅くなったら、故障を疑いますよね?
しかし、全てが故障である可能性はなく、実は設定が勝手に変わってしまった可能性があります。
それはひょっとしたらPIO病かもしれません。
今回はWindowsOSを使っている場合に起こるPIO病とその直し方について解説していきます。

PIO病とは

まずPIO病とは何なのかを解説しておく必要があります。
PIO病とは、WindowsOSで古くから起こる現象のことで、勝手に設定が変わることでドライブへのアクセスが著しく遅くなり、PC全体が重くなる症状を指します。
HDDには転送モードが2種類あるのですが、このHDDの転送モードがDMAモードからPIOモードへ勝手に切り替わってしまうと、PC負荷が上がり重くなるのです。

DMAモードとは、通常のHDDドライブで適用される転送モードで、正式名称をDirect Memory Accessといいます。
このモードの場合、ドライブ間のデータはメモリを通して読み書きされ、高速処理される仕組みになっています。

一方、PIOモードとは低速&高負荷モードで、通常は使われません。
ところが、DMAモードの転送で何かしらの不具合が複数回発生した場合、Windowsは自動的にPIOモードへと切り替えるようになっています。
PIOモードではドライブ間のデータをCPUを通して行われるようになり、CPUに多大な負荷をかけます。
これによってPCが激重になり、ドライブへのアクセスも異様に遅くなるのです。

この勝手に切り替わってしまう現象の事を病気に例えてPIO病と呼ぶのです。
近年のWindowsOSではあまり起こっているように感じませんし、むしろ筆者もここ10年お目にかかっていないほどですが、WindowsOSであれば起こりうる現象であり、特にWindowsXP以前のPCでは割と発生する現象でした。WinXP以前ではドライブの接続方式がIDEであったため頻発していたようですが、近年はSATA接続が主流な為、環境によってはPIOの影響を受けず症状を見かけることは減った模様です。
ただもし、このPIO病になっている場合には、PCが壊れたと思うぐらい重くなるので、この現象を知らないと故障と勘違いしてしまいやすいのです。

PIO病の直し方

では、PIO病の直し方を解説していきます。
PIO病はあくまでも転送モードの設定が勝手に変わっているだけなので、設定を元に戻せば元通りになります。

●デバイスマネージャー

まず、Windowsマークを右クリックし、デバイスマネージャーを開きます。
次に「IDE ATA/ATAPIコントローラー」という項目を展開し、プライマリIDEチャンネル又はセカンダリIDEチャンネル等という名前を見つけます。
その各項目の上で「右クリック→プロパティ」と進み、詳細設定を開くと転送モードの設定項目があります。
後は現在の転送モードをPIOからDMAに切り替えれば完了となります。
設定後は念のため再起動したほうが良いです。

再起動後にもう一度確認し、DMAのままであればOKです。

ちなみに最近の環境では、プライマリIDEチャンネル等の名前が表示されず、標準SATA AHCIになっていることがあります。
これら表示はマザーボードによって変わり、SATA接続の場合は標準SATA AHCIとなります。
SATAの場合、転送モードの変更設定が見当たらないので、この方法は使えません。

SATAの場合は、標準SATA AHCIのドライバ再インストールでDMAモードに戻せるようです。
ちなみに、SATAの場合は内部的にPIOモードになっていても影響はない模様。(詳細求む)

●レジストリエディタから対策

PIO病に勝手に切り替わらないように予め対策もできるようです。
これにはレジストリエディタを弄る必要があり、多少細かな作業が必要となります。尚、レジストリの設定は自己責任となります。

まず「Winキー+R」を押し、ファイル名を指定して実行の欄に「regedit」と入力してEnter。
次に「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e96a-e325-11ce-bfc1-08002be10318}」と辿り、「0000」や「0001」などが入ったところまで展開。
次に「0000」や「0001」を開くと画面右側に色々な設定が出てきます。その中から「DriveDesc」という設定を見つけ、その隣に書かれている文字を確認。ここがチャンネル名になっており、設定を変えたい名前のチャンネルをコレを観ながら決めます。標準SATA AHCIの場合は「Standard SATA AHCI Controller」という名前が該当し、このフォルダが「0001」なので該当のファイルを選択。
画面右側で「新規作成→DWORD値」と選択し「ResetErrorCountersOnSuccess」と名前を付けます。次にダブルクリックで開き、「値のデータ」に1と入力。
他にも設定したい箇所があれば同様に設定を加えます。

後は再起動で完了となります。

電源プランがおかしい場合も

HDDの異様な読み込みの遅さがある場合、電源設定がおかしい場合もあります。コチラも念のため確認しておきましょう。
まず、「スタート→設定→システム→電源とスリープ→電源の追加設定」と進み電源オプションを開きます。
次に「プラン設定の変更→詳細な電源設定の変更→ハードディスク→次の時間が経過後ハードディスクの電源を切る」と進み、ここを0分とします。
0分設定は無効化を意味し、 ここに0以外の数字がある場合には一定時間でHDDの電源が切れてしまい、アクセス遅延が発生する原因となります 
特に省電力設定のPCの場合にはHDDを自動停止していることがあり、アクセス遅延につながりますので、電源設定も一度確認してみましょう。

まとめ

PIO病はPCの動作を重くする。
何らかのエラーによってHDDの転送モードがDMAからPIOに変わってしまったのが原因。
SATA接続環境下やWinVista以後のPCではなり辛く、SATAの場合は特に影響はない模様。
PIO病はデバイスマネージャーから転送モードを切り替えることで治すことが出来、対策にはレジストリエディタの該当項目に設定を追加する必要がある。
近年のPCはSATA接続であり、PIO病の影響を受けづらい為、電源設定の不備によってパフォーマンス低下を引き起こしている場合がある。その場合には電源設定からHDDの自動電源オフ設定を確認すると良い。

以上が今回のまとめになります。
もし、PCが突然異様に重くなった場合には、以上の内容を確認してみると良いでしょう。
万が一これらで治らない場合にはハードウェアの不具合の可能性があります。
その場合は一度PC内部を点検してみることをお勧めします。

マザーボードやパーツの破損をチェックする方法はコチラからどうぞ!

関連記事はコチラから

    この記事をシェアする

パソコンやITでお困りの方のお手伝い

もしならを運営している関係者が各種お悩みを解決します。 ゲームの開発やパソコン導入や会社のIT導入など。困ったときの強力な助っ人がほしい方へ。

コメント/情報提供

コメントを残す

「ハードウェア」の関連記事

「テクノロジー」の人気記事
パソコン・スマホのカテゴリ一覧