2014年6月1日日曜日

Windows でスリープ後の反応が悪いので、一度ハイバネーションを無効にし、システムファイルを修復する

1. スリープ後の反応が悪い

Windows がスリープから復帰した後、反応が悪くなる。

特に Firefox の動作がもっさりとする。

 

a. スリープの種類

Windows のスリープ状態には、「スリープ」「休止状態」「ハイブリッドスリープ」の 3 種類ある。

第22回 節電にはWindows7を!!(ハイブリッドスリープのお話):IT Bootstrap:ITmedia オルタナティブ・ブログ によると、

  • スリープ
    稼働中のOSの状態をそのままメモリに保持してOSを停止させます。スリープから解除させるとそのまま中断した状態に即時復帰できます。但し、電源を落としてしまうと、その状態も消えてしまいます。
  • 休止状態(ハイバネーション)
    稼働中のOSをハードディスクに保存します。電源を落としてもその状態は保持されます。再度電源を入れるとハードディスクからメモリの状態をメモリに戻します。これで休止前の状態に復帰できます。ハードディスクからの読み込みに若干の時間がかかりますが、OSを再起動させてもとの作業状態に戻すよりは遙かに簡単です。
  • ハイブリッドスリープ
    WindowsVista以降から実装された機能です。こちらはスリープ状態にするのと同時に、休止状態と同様にハードディスクにもメモリの状態を保存します。

つまり、ハイブリッドスリープは、復帰させる時電源が入ったままであるのならばスリープの復帰と同様に即時元の作業状態に復帰でき、電源を落としてしまった場合でも休止状態からの復帰と同様ハードディスクからメモリに状態を読み込み復帰させます。

 

b. ACPI の規格

ACPI の規格では、6 つの状態が定義されている。

 ACPIとは 【 Advanced Configuration and Power Interface 】 - 意味/解説/説明/定義 : IT用語辞典

パソコンの電力制御に関する規格の一つ。OSがBIOSと連携してコンピュータ内部の各パーツの電力を管理するための統一された方式を定めている。

 Advanced Configuration and Power Interface – Wikipedia

システムスリープ状態はS0・S1・S2・S3・S4・S5の6状態が定義されており、深いスリープ状態ほど復帰への時間がかかるが、待機時の電力消費は少ない

S0
通常の運用状態。
S1
スタンバイとよばれるメモリ、デバイス、レジスタコンテクストおよびキャッシュコンテクストをCPUが保持したまま割り込み等を止め、低消費電力状態に移行する状態である。…
S2
デバイスなどのコンテクストが保存されているのはS1と同様であるが、キャッシュコンテクストがとレジスタコンテクストが失われているためS3と同様の方式で復帰する必要がある(ほとんど実装されている事例を見ない)。
S3
Suspend to RAMまたはスリープと呼ばれる状態で、メモリは保持されているが、チップセットの情報やレジスタコンテクストが失われる。…
S4
Suspend to Diskまたはハイバネーションと呼ばれる状態で、メモリ内容も失われる。メモリをディスクに書き出し、電源断状態にするのと同じである。…
S5
完全なる電源断である。商用電源あるいは無停電電源装置から電力を全く消費しない状態。

 

2. ハイバネーションを一度無効にし、システムファイルを修復

a. ハイバネーションの設定

スリープから復帰した後、反応が悪くなる場合、ハイバネーションを一度無効にする。

「コマンド プロンプト」を管理者モードで起動し、(スタートメニューで cmd.exe を検索し、右クリック > 管理者として実行)

powercfg /h off

再びハイバネーションを有効にするには、

powercfg /h on

Slow system performance after resuming from the sleep mode - Microsoft Community によると、

Try disabling Hibernation and this will remove hybersis file.
After this try enabling Hibernation and check because Hybersis file may be the issue.

Please click an this Link for How to Enable and Disable Hibernation

Hibernate - Enable or Disable - Windows 7 Help Forums

When hibernate is disabled, the Hibernate option is missing from the Start Menu (Windows 7 only), Shut Down Windows dialog, Power menu (Windows 8 only) and the Advanced Power Plan Options.

レッツ! Windows 7 - 電源管理編(1) (1) ハイブリッドスリープと休止状態 | マイナビニュース

ハイブリッドスリープとは、ハイバネーション(休止状態)のようにバッテリー寿命を延ばすことが目的ではなく、消費電力の軽減とスリープからの復帰を安全かつ高速化させるためのもの。

ハイバネーション実行時に使用する「hiberfil.sys」を制御するには、コマンドプロンプトなどから「powercfg /h on」もしくは「powercfg /h off」と実行してください。有効時(on)には同ファイルが復活し、無効時(off)には、同ファイルをHDDから削除できます

 

b. 設定の確認

設定の確認をするには、

powercfg /a

この結果、以下のように表示された。

以下のスリープ状態がこのシステムで利用可能です: スタンバイ ( S1 S3 ) 休止状態 ハ
イブリッド スリープ
以下のスリープ状態はこのシステムでは利用できません:
スタンバイ (S2)
       システム ファームウェアはこのスタンバイ状態をサポートしていません。

S1, S2, S3 の意味は、上記の ACPI の定義を参照。

 

c. システムファイルの修復

また、ついでに、システムファイルも修復しておく。

sfc /scannow

 

3. ダメならハイバネーションをオフ

これでも調子が悪い場合、ハイバネーションをオフにしたままの方が安定している気がする。

powercfg /h off

この状態で、設定の確認 powercfg /a をすると、以下のように表示される。

以下のスリープ状態がこのシステムで利用可能です: スタンバイ ( S1 S3 )
以下のスリープ状態はこのシステムでは利用できません:
スタンバイ (S2)
       システム ファームウェアはこのスタンバイ状態をサポートしていません。
休止状態
       休止状態は有効にされていません。
ハイブリッド スリープ

 

a. Firefox が安定した

ハイバネーションをオフにしたら、Firefox が安定した。

Firefox の画面が黒くなった後必ずクラッシュするので、ハードウェアアクセラレーションを切り、WebGL を無効にし、アドオンを変更していたが、元の設定に戻した。

 

b. 無停電電源装置が欲しい

この運用の場合、停電やブレーカーが落ちて電源が供給されなくなったときに備えて、無停電電源装置を利用したほうが いいかな。

 

関連記事

1コメント:

わさび さんのコメント...

詳しく教えてくれてありがとうございます。
ホームページ:http://www.coolmuster.jp/