Macをお使いの方はご存知の通り、Mac OS Xの省エネルギー設定を見てもさほど詳しい設定はありません。
この様に、操作されてない状態が続いた時どのくらいの時間でディスプレイをスリープさせ、さらにコンピュータをスリープさせるかの設定のみです。ハイバネーション(休止状態 もしくは ディープスリープ – Deep Sleep – )という言葉は一切出てきません。
MacBook系を使っているウチにとって、スリープ状態で持ち運ぶ事で浪費してしまうバッテリー残量は大きな悩みでした。そこで見つけた便利そうなシステム環境設定項目を紹介してみます。
SmartSleepです。フリーのシステム環境設定項目です。
ダウンロードしてインストールすると、システム環境設定にアイコンが追加されます。
早速クリックしてみると、最初は設定が変更出来ない様にロックされていますので、左下のカギをクリック、パスワードを入力して設定変更出来る様ロックを解除します。
デフォルトでは「sleep and hibernate」の設定になっていると思います。このSmartSleepがすばらしいと感じたのは、ディスプレイを閉じたときの挙動を好きな設定へ変更出来る事と、バッテリー残量が多いときはスリープ(スタンバイ)になるけれど、バッテリー残量が設定した値より低い場合にスリープ&ハイバネーション(スタンバイ&休止状態)に移行してくれる「smart sleep」という設定がある事です。
ターミナルを用いてコマンドを実行すれば同等の設定は出来ますが、フリーのシステム環境設定で手軽にMacの眠り方を設定出来るのは便利です。
- sleep and hibernate:
標準の設定です。ほとんどsleep onlyと同じで、RAMの内容を保持する為にバッテリーが常に消費されています。さらに、スリープへ移行する時にRAMの内容をHDDへ書き出し、万が一完全にバッテリー残量が無くなった場合、その後ACアダプターを接続するとハイバネーションから復帰します。 - sleep only:
スリープに限定します。よって、RAMの内容を保持する為にバッテリーが常に消費されます。ただし、スリープへの移行も復帰も高速で、ディスプレイの開閉で瞬時に移行出来ます。 - hibernate only:
ハイバネーションに限定します。RAMの内容をディスクへ保存するのでバッテリーは全く消費されません(シャットダウンしたのと同じ)。ただし、RAMの容量にもよりますが、ハイバネーションへの移行時にRAMの内容をハードディスクへ書き出す時間がかかり、復帰も同様にディスクからRAMへ読み出す時間がかかります。 - smart sleep:
このオプションを選択するとどのレベルに達したら”sleep and hibernate”動作をするか指定するバーが表示されます。デフォルトは20となっており、バッテリー残量が20%以上又は20分以上の場合はsleepし、それ以下の場合はsleep & hibernate動作。さらにバッテリー残量が5%もしくは5分以下になるとhibernate動作します。
バッテリーの残り残量重視であればhibernate only。スピード重視であればsleep only。どちらもという場合はsmart sleepという設定に使えそうです。
個人的に求めていたのはsmart sleepで、設定した値以下になった場合に”sleep & hibernate”動作ではなく、”hibernate only”動作をして欲しかったのが惜しいですが…。こちらについては作者へ直接問い合わせてみたいと思います。
ちなみにこのSmartSleep、ユーザが選択したモードにあわせてconfigdコマンドを使って/Library/Preferences/SystemConfiguration/フォルダにあるcom.apple.PowerManagement.plist設定を変更している様です。このplistファイルにあるhibernate modeの値を色々変更する事で、同等の設定をすることができます。こちらは別の機会に紹介してみたいと思います。
[Mar/25/2010追記]
早速SmartSleepの作者、Patrick氏にメールで ‘smart sleep’ において、バッテリー残量が設定した値以下になった場合にハイバネーションへ移行する機能について提案したところ、以下のような回答を得ました。
A different slider for the hibernation level is what I had in mind for version 3.0
まだまだ忙しく、Version 3.0の登場までは時間がかかりそうですが、次期バージョンが楽しみです。
「Macのスリープについて」への2件のフィードバック