hack のためのネタ帳, etc,,,

Display Power Management Signaling
ディスプレイ(モニタ)の電源管理とか省電力機能とか

仕様、参考になる資料

Linux FrameBuffer

/sys/class/graphics/fb0/blank を叩くと良い
echo 0 > /sys/class/graphics/fb0/blank; # unblank
echo 1 > /sys/class/graphics/fb0/blank; # blank
参考:

Linux console

blank または powerdown するのに最低1分必要なのが難点ではあるが
/dev/console に対して以下のようなエスケープシーケンスを発行すれば良い
echo -n "\033[9;n]"  > /dev/console; # Set screen blank timeout to n minutes.
echo -n "\033[13]"   > /dev/console; # Unblank the screen.
echo -n "\033[14;n]" > /dev/console; # Set the VESA powerdown interval in minutes.
これらのエスケープシーケンスは console_codes(4) に載っている
参考:
その他にも setterm コマンドを使う方法もある模様
参考:

X11

xset コマンドを使うと良い
usage:  xset [-display host:dpy] option ...
    ...
    To control Energy Star (DPMS) features:
        -dpms      Energy Star features off
        +dpms      Energy Star features on
         dpms [standby [suspend [off]]]
              force standby
              force suspend
              force off
              force on
              (also implicitly enables DPMS features)
              a timeout value of zero disables the mode
    ...

Windows

WM_SYSCOMMAND の SC_MONITORPOWER を SendMessage で HWND_BROADCAST に送ってやると良い
SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM) -1); // turn on (undocumented)
SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM)  1); // low power
SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM)  2); // shut off

関連

タグ

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Wiki内検索

フリーエリア

管理人/副管理人のみ編集できます