WaterMind PC Blog

PCとネットワークに関するニュースコラム.

Windows Vista用更新 「KB943899」に致命的な不具合か?(ただし一部PCのみ)

2008-02-02 11:00:10 | Windows

 すでにスラッシュドット ジャパン等で報道されているように,Windows Vista 用の更新として,WindowsUpdateによって配布された「KB943899」に致命的な不具合が存在した模様.特にWindows Vista採用の一部ノートPCにおいては,Windowsが立ち上がらなくなるようだ.

 このKB943899は,12月にMSダウンロードセンターからダウンロードが可能となり,その後,1月のWindowsUpdateの推奨更新に加えられたようだ(未確認情報).MSサイトの説明によれば,KB943899の更新を行うことにより,下記の点が改善される(注:MS日本語ページが機械翻訳のためなのか,意味がよくわからないので,一部原文を参照して翻訳した)

  • ハイバネート状態にコンピュータを切り替えようとすると,「STOP 0x000000A0 」エラーが表示される.
  • ハイバネート状態,またはスタンバイ状態に移行する場合,あるいは,それらの状態から復帰する場合,「STOP 0x0000009f」エラーが表示される. この問題は,ワイヤレス ネットワーク接続を持つコンピュータで発生する.
  • 一定時間,PCを操作していないのに,ハードディスクの回転が止まらない.(The disk does not spin down after a specified time of inactivity)

 このようにKB943899更新は,電源と節電に関する不具合を解消するための更新だが,この更新に含まれるハードディスク設定の変更に問題があったようだ.その変更とは…

 私のメインマシンもそうなのだが,サーバや一部のPCにおいては,RAIDが構築されており,ハードディスクが複数台,内蔵されている場合がある.ハードディスクの内蔵台数にもよるが,このようなハード構成をしているマシンにおいては,1つの問題がある.

 それはマシン起動時のハードディスクへの突入電流だ.ご存じの方も多いと思うが,PCだけではなく通常の電器製品においても,電源投入時に,通常動作時以上の電流が流れる製品がある.この時の電流が突入電流だ.詳しくは上記のリンクを参照してほしいのだが,節電のために,機械の電源を頻繁にオンオフすると,逆に節電にならない場合があるのは,そのためだ.また突入電流は,機械やその電源に対して負荷をかけるため,故障の原因ともなりえる.

 複数台のハードディスクを内蔵したマシンの電源投入時に,内蔵ハードディスクのすべてのモーターが一斉に回り出すと,かなりの突入電流が生じるらしい.その結果,内蔵電源に負荷をかけ,電源を劣化させたり,場合によっては,電源の容量を超えてしまうこともありえる.

 これに対処するために,シリアルATA規格から,「Staggered Spin-up」という機能がハードディスクに追加された.これは,マシン起動時に複数台のハードディスクのモーターを同時に回転開始せず,一台ずつ順番に回転させることを可能とする機能だ.

 このStaggered Spin-upと似たハードディスク機能として,「Power-Up In Standby」という機能を持つハードディスクも存在する.この機能が有効なハードディスクは,電源投入時と同時にスタンバイ状態となる.従って,電源投入時にモーターは回転しない.このスタンバイ状態のハードディスクは,PC本体から送信される「spin up」コマンドを受信しない限り,モーターは回転しない.先ほどのStaggered Spin-upとの違いは,

  • Staggered Spin-upは,ハード的な手法(信号線)
  • 「Power-Up In Standby」は,ソフト的な方法(コマンド)

であることだろう(未確認)

 話が長くなったが,KB943899更新は,どうやらハードディスクに対して,この「Power-Up In Standby」機能を有効にするコマンドを送信するようだ.このため,

  1. 内蔵ハードディスクが「Power-Up In Standby」機能を持つ
  2. BIOS側が,「Power-Up In Standby」機能が有効になった状態でのマシン電源投入を想定していない.すなわち,マシン電源投入直後に「spin up」コマンドをハードディスクに送信しない.

上記2つの条件を満たすPCにKB943899更新を適用した後は,電源投入時にハードディスクのモーターが永遠に回転を開始しないため,OSブートが不可能となり,タイムアウト・エラーがBIOSにより表示されてしまう.

 上記3条件を満たすPCは,主にノートPCであり,スラッシュドット ジャパンの記事では

  • Let's note CF-R6M/CF-R6A(BIOSがV1.00L13 / V2.00L10)
  • ThinkPad T60

などが例としてあげられているので,特にVistaノートPCのユーザは,要注意だ.

 ただ,仮にこの更新が原因で,PCがブートしなくなっても,仙石氏提供の修復用LinuxをUSBフラッシュメモリ等に入れ,そこからLinuxを起動することによって,修復が可能のようだ.

 さらにKB943899更新は,バッテリー関係設定をも変更するため,この起動不具合以外にも,ディスプレイ表示異常,光学ドライブ使用不能などの不具合も起こっている模様.

 ちなみに私のメインマシンは,3台のハードディスク(Seagate: ST3320620AS SATA3Gb/s x 3)でRAID5を構成しているVista PCだ.このメインマシンには,すでにKB943899更新がインストールされているが,今のところPCの起動には問題がないようだ.

 今後,KB943899更新の更新がリリースされると思うが,それまでの間,この更新の適用は保留しておいた方が無難だと思われる.



最新の画像もっと見る