Windows 8で搭載されたコネクテッドスタンバイ(Connected Standby)は、スリープ中一定時間ごとに通信を可能にして、バックグラウンドで動作する通信を維持するものだ。

Connected Standbyが有効になった機種では、コマンドライン上のツールから確認できる
もともとは「Connected Standby」も
現在は「Instant Go」に名前を変更
現在では「Instant Go」という名称に変更され、32bit版のWindows 8.1をプレインストールするメーカー製のマシン(Atom系プロセッサ)では標準的に有効になっている。一方、64bit版Windowsをプレインストールするマシンでは、一部の機種のみ有効だ。ただし、Windowsのユーティリティなどで出力するファイルなどでは、まだConnected Standbyという名称が残っているため、ここでは、Connected Standbyと統一して表記することにする。
Connected Standbyは、電源キーや一定時間操作を行なわずにスリープ状態に移行した後、30秒に1回、画面はオフにしたまま、通信をするバックグラウンド処理を実行させるというもの。たとえば、新着メールのチェックやSNSアプリの更新確認などに利用されている。
Connected Standbyが使うのは、従来のノートPCなどが行っていたスリープやハイバネーションではなく、非常に消費電力が低い「アイドル状態」であり、CPUが積極的に休むことで実現される状態を利用する。このアイドル状態をWindowsは、DRIPS(Deepest Runtime Idle Platform State)と呼ぶ。これは、インテルのCPUでいうS0ixに相当する。
インテルのCPUでは、アクティブな状態をS0、従来のスリープ状態をS3としている。S0ixは、アクティブ状態ながら、非常に消費電力が低い状態となる。もちろんS3の待機電力のほうが小さいのだが、CPUがS0に復帰するまでの時間はS0ixのほうが速い。Connected Standbyでは、通常状態へ極めて短時間で復帰することが求められるため、スリープの場合、メモリなど一部の回路には電力が供給されるが、周辺回路の大部分は電源がオフになる。しかし、Connected Standbyでは、ネットワーク部分に関しては、電力が供給されて通信状態が維持され、CPUは、通信コントローラーなどからの割り込みで一時的にアクティブになることができる。
スリープ状態から30秒に1回アクティブになって
バックグラウンドで通信などを行なう
Connected Standbyの状態では、システムは30秒に1回アクティブな状態となり、さまざまなバックグラウンド処理を行なう。ただし、アプリケーションが勝手に通信するのではなく、モダンUI環境のストアアプリがAPIで登録したバックグラウンド処理だけが通信でき、各バックグラウンド処理は、15分に1回、通信を行なう機会を得るように調整される。どの通信も長時間連続して行うことはできず、モダンUI環境内での処理は、最長5秒以下とされている。
通信は、無線LAN、イーサネット、モバイルブロードバンド(3G/4Gの通信)が対象で、Connected Standbyの仕様に対応した通信デバイスだけが利用できる。通信デバイスは常に動作しており、パケットなどを受け取った場合には、割り込みを発生させて、一時的にシステムをアクティブにしてこれを処理する。同様にバッテリ管理機能や充電機構、温度センサーなども割り込みを発生させることができる。
通信や音声再生のハードウェアは、決まった処理をCPUに代わって行なう「オフロード」機能を持つ必要がある。たとえば、受信したパケットがWoLのパターンに合致しているかどうかを判定する機能や、音楽データを自動で再生する機能などを持ち、CPUがDRIPSの間も動作できるようになっている。また、GPSデバイスに関しては、Geofencing機能(一定範囲に入ったり、出たりしたことを検出する機能)がオフロード機能として定義されている。
また、デスクトップ環境は、従来のスリープと同じ状態となり、デスクトップのアプリケーションはConnected Standbyの間は中断された状態となる。なお、Windows Updateは、設定されたスケジュールに従って動作し、緊急アップデートのダウロードのみがConnected Standby中に行われる。
Connected Standbyが有効になっている場合、デバイスドライバなどに一定の条件が付き、原則メーカーが提供する公式ドライバを使わないとConnected Standbyが動作できない。このほか、無線LANのスキャン回数などが減らされ、一見、無線LANの感度が落ちたように感じることがある。
しかし、Windows自体はConnected Standbyが有効になっているかどうかをGUIでは直接表示しないため、自分のマシンが正しく動作しているのかがわかりにくい。原則Connected Standbyを有効にするかどうかは、PCメーカー(OEM)が決めるため、前述のように64bit版Windowsを採用しているマシンでは、必ずしも動作しているわけではない。
32bit版Windowsの場合、インテルがAtomプロセッサのリファレンス設計を提供しており、その上でConnected Standbyを可能にするドライバなども提供しているため、原則、Atomプロセッサ(CloverTrailおよびBayTrail)を採用したマシンでは、Connected Standbyが有効になっている。

この連載の記事
-
第398回
PC
Windows Subsystem for Androidの進化を確認 エクスプローラーからのファイルのドラッグ&ドロップが可に -
第397回
PC
Windowsにおけるディスク、ドライブ、パーティションの扱いの違い -
第396回
PC
Windows 11における新規作成コンテキストメニュー -
第395回
PC
Windowsの「近距離共有」は微妙だが、Windows版も登場した「ニアバイシェア」は使える -
第394回
PC
コマンドの出力が長いとき、PowerShellではとりあえずselect-objectでなんとかする -
第393回
PC
Windows 11のWinUI3対応で、MicrosoftはWin32アプリ、さらにWindows自体を改良しようとしている -
第392回
PC
あらためてWindowsにおける2進数、10進数、16進数について -
第391回
PC
WindowsのNTFS/ReFSに搭載されている「再解析ポイント」とは何か? -
第390回
PC
この秋登場予定のWindows 11 Ver.23H2はどうなるか? -
第389回
PC
Windowsにおけるファイルリンクについてあらためて説明する -
第388回
PC
アプリ評価環境「Windows SandBox」のWindows 11での状況 - この連載の一覧へ