SWSUSP(Software Suspend)について
SWSUSPは、
Linuxカーネルの電源管理フレームワークの一部で、カーネル3.8のデフォルトのサスペンド機能として機能します。この機能は、システムがアクティブでないときに、消費電力を抑えるためにサスペンド状態に移行できることを目的としています。さらに、サスペンド前の状態に戻すことが容易であるため、利便性が高いのが特徴です。
SWSUSPの目的
SWSUSPの主な目的は、システムを低電力状態に変換しつつ、その後すぐに元の状態に復帰することです。このプロセスは「サスペンド」と「レジューム」と呼ばれ、日常的な使用において電力効率を大幅に向上させることに貢献します。これにより、ユーザーはシステムを頻繁に利用しない場合でも、エネルギーを無駄にすることなく、すぐに使用を再開できます。
SWSUSPの機能
バージョン3.8の時点で、SWSUSPは以下のサスペンドオプションを提供しています。
1.
スタンバイ: CPUと主要なメモリ(RAM)が稼働中の状態で、CPUは休止状態に入る可能性があります。システムがわずかな電力で待機することができます。
2.
RAMへのサスペンド: RAMが動作しており、自己リフレッシュが行われている間にCPUの電源がオフになります。これにより、少ない電力での待機が可能になります。
3.
ディスクへのサスペンド: 現在のシステム状態(CPUレジスタおよびメモリの内容)を、ハードディスクのような不揮発性メモリに保存します。これにより、システムの電力を完全にオフにすることができます。
詳しい情報は、カーネルのドキュメントである `Documentation/power/swsusp.txt` を参照してください。
使用方法
SWSUSP機能を有効にするには、カーネルの構成設定で以下のオプションを選択する必要があります。これにより、適切な電源管理オプションが使用できるようになります。
- - Power management options → <> Power management support (CONFIG_PM)
- - Power management options → <> Software Suspend (CONFIG_SOFTWARE_SUSPEND)
- - Power management options → [/dev/resume_partition] Default resume partition (CONFIG_PM_STD_PARTITION)
ここで、`/dev/resume_partition`は実際のスワップパーティションに置き換える必要があります。これが行われないと、システム起動時にパラメータを指定する必要が生じます。サスペンドは、次のコマンドを使用して実行されます。
```bash
echo shutdown > /sys/power/disk;
echo disk > /sys/power/state
```
他のサスペンドオプションを確認したい場合は、以下のコマンドを利用できます。
```bash
cat /sys/power/state
```
設定によっては、利用可能なオプション(例:[スタンバイ]、[メモリ]、[ディスク]など)が表示されます。また、ディスクオプションの表示には以下のコマンドを利用します。
```bash
cat /sys/power/disk
```
使用中のカーネルの設定によって、表示内容は異なる場合があります。
SWSUSPの補足
SWSUSP自体には圧縮や進行状況のグラフィック表示機能はありませんが、これらの機能は`uswsusp`という別のツールを介して提供されています。
関連項目
- - TuxOnIce: SWSUSPに基づくディスクへのサスペンドの別実装であり、メインラインカーネルの外部パッチとして維持されています。
- - uswsusp: RAMおよびディスクへのサスペンドを実現するためのユーザー空間ソフトウェアです。
SWSUSPは
Linux環境において非常に重要な機能であり、エネルギー効率を向上させ、ユーザーの利便性を高めるためのベースとして広く利用されています。