nasu_star's blog

那須で自然に親しみ、星と自然を愛するブログ

PC音途切れの原因判明

2013-02-18 18:40:15 | パソコン

今日は確定申告に市役所へ行きました。 午前中いっぱいかかって改造人間になった証である医療費控除と住宅ローン減税の手続きを完了してきました。

お昼を食べて、どこかフラフラしようと思ったのですが、あいにくの天気のためおとなしく家に帰りました。

1月27日に書いたPCの不具合の中で、3項目に書いた「音声がブツブツ途切れてしまう」問題の件で、音声ドライバのバージョンを戻すことで直ったかのように見えましたが、実はその後も事象が出たり出なかったりしていました。

先週、その事象面から見た原因は突き止めたのですが、根本原因が分からずそのままほっておいたので、それをやっつけることにしました。

●事象面での原因究明

 ドライバのバージョンを戻したりしようとして、BDドライブにASUSのDVDデータディスクを挿入して作業をしているときに、ふと気づくと音切れの事象が直っています。 

 CPUの使用状況を監視してみると、8コアの仮想CPUの内CPU0だけが、常に50%の負荷が掛かっていて、この状態だとどんなソフトでどんなファイルを再生しても音がブツブツ途切れます。 

ところが、BDドライブで再生するものだけは音が途切れません。 更に、何でも良いのでとにかくディスクをBDドライブに挿入すると、なぜかCPU0の負荷は0%になります。(空のディスクはだめ)

この状態での音楽でもビデオでもHDDにあるものでもネット上のものでも問題なく途切れずに音が出ます。

BDのドライブが壊れているのかと、手持ちの別なドライブと交換しても事象は同じ。

BDのドライブを外してしまえば事象は発生しない。

リソースモニタで原因のプロセスを特定しようと確認すると、「遅延プロシージャ呼び出しと割り込みサービスルーチン」と言うプロセスがこのCPU0の50%の負荷を起こしている事が分かった。

●真の原因調査

 セーフモードで立ち上げると・・・ CPU0の負荷が無い。

 再度オンラインで立ち上げ、「ファイル名を指定して実行」からmsconfig実行により、「サービス」の画面のすべてのサービスを停止に設定し立ち上げると CPU0の負荷は出ない。

 更に、サービスの半分づつ「停止」から「実行中」に変えて行って、原因サービスの絞り込み実施。

原因判明:marvell storage management service

 このサービスが動作していると、BDドライブが接続され、何もディスクが挿入されて無いとCPU0が50%負荷となり、結果的に音声の途切れが発生することが分かった。

●このソフトは何?

IntelのSATAは6ポートすべてをHDDとSSDで使用してしまったため、BDドライブはmarvell のSATAに接続していたが、暮れのSSDクラッシュにより、OSのインストール等を行った際に、ついでに各ドライバも最新版に更新した。 その時に確かmarvell の管理ソフト(marvell Tray)もインストールした記憶があるのですが、確かに以前はこのソフトはインストールしてなかったものだったので、何か役に立つだろう程度の軽い気持ちでインストールしたものでした。 それが間違いの元だったようです。

このソフトって再度ネットで確認すると、どうやらmarvell製 のSATAのポートにHDD等を接続した場合それを起動ディスクとして使えるようにするのに使うみたいですね。 ASUSの取説にも基本的にmarvell 製SATAポートは起動ディスクには使えない(データ用HDDとして使用)と書いてありましたが、このソフトを入れることで起動HDDが接続できるらしい。

推測ですが、起動ディスクが接続されたかどうかを常に監視していて、それでCPU0にずっと負荷をかけているのだろうと思います。 本来ならHDDが接続されていれば直ぐに監視は終了されるのでしょうが、BDドライブの場合には、何時起動ディスクが挿入されてもそのディスクから直ぐシステムを起動できるように監視を怠らずに真面目に動作し続けて頂いたのでしょう。 それで、何らかのディスクが挿入されると起動ディスクでは無いと判断ができて監視が止まるのでは無いでしょうか。

全くもって、ありがた迷惑でした。

●まとめ

marvell 製のSATAにBDドライブを接続している場合にはmarvell Storage Utility(marvell Tray)はインストールしない方が良いみたいです。


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする