知識マップ: 高速スタートアップの正体 ── Windowsの「シャットダウン」が再起動と違う理由

記事「高速スタートアップの正体 ── Windowsの「シャットダウン」が再起動と違う理由」の主張を、概念と関係(エッジ)に分解した知識グラフの全体です。各関係には根拠・確認日・確度が付いています。

Windows 8以降の「シャットダウン」は既定でハイブリッドシャットダウンになり、ユーザーセッションをサインアウトしたあとカーネル・ドライバー・サービスの状態を休止ファイルへ保存して、次回起動でそのまま復元します。再起動は設定にかかわらず常に完全なブートサイクルを行うため、シャットダウンで直らない不具合が再起動で直ることがあります。ただし再起動で直ったことだけでは持ち越された状態が原因とは確定できず、複数回の再現とKernel-Bootイベント27やドライバー側の記録で裏付けてから原因として扱います。稼働時間がリセットされないことと一部の更新が完了しないことは同じ仕組みの帰結です。Wake on LANが効かないのは、Windowsがシャットダウン状態(ハイブリッドでも完全なS5でも)からのwakeをサポートしないという別の制約で、高速スタートアップをオフにしても解決しません。設定を変えずに電源オフの完全シャットダウンをするには shutdown /s /t 0 か、bRebootAfterShutdown を FALSE にした InitiateSystemShutdownEx、SHUTDOWN_HYBRID を付けずに SHUTDOWN_POWEROFF を指定した InitiateShutdown、EWX_HYBRID_SHUTDOWN を組み合わせずに EWX_POWEROFF を指定した ExitWindowsEx を使います(TRUE・SHUTDOWN_RESTART・EWX_REBOOT は再起動、ExitWindowsEx の uFlags が 0 ならサインアウトで、ハイブリッドのフラグを外しただけでは操作は決まりません)。無効化はレジストリの HiberbootEnabled で行い、powercfg /h off は休止状態ごと消す別の操作です。別OSと同じボリュームを共有する端末では明示的な休止状態でも同じ不整合が起きるので、powercfg /h off で休止状態ごと無効にするか、OSを切り替える前の完全シャットダウンを手順で必須にします。

高速スタートアップ(ハイブリッドシャットダウン)の知識マップハイブリッドシャットダウンが休止(S4)を使いカーネルセッションを休止ファイルへ保存すること、再起動は常に完全ブートであること、状態の持ち越し・更新の保留・Wake on LAN非対応という帰結、shutdownコマンドやAPIによる完全シャットダウン、レジストリ・ポリシー・休止ファイルによる構成を示す図利用するに保存される前提とする実装を担う原因になり得る原因になり得るで確認できる原因になり得る推奨される対応両立しない推奨される対応推奨される対応推奨される対応で確認できる実装を担う実装を担う実装を担うで構成できるで構成できる前提とする両立しないで構成できる両立しない推奨される対応ハイブリッドシャットダウン(高速スタートアップ)完全なブートサイクル休止状態(S4)セッション0休止ファイル(hiberfil.sys)再起動カーネル・ドライバー・サービス状態の持ち越し稼働時間がリセットされない状態稼働時間(LastBootUpTime)完全シャットダウンを待つ更新プログラムWake on LAN(Wake on Magic Packet)S3スリープ(従来のスリープ)Modern Standby対応デバイスSYSTEM_POWER_STATE_CONTEXTshutdownコマンド(Shutdown.exe)完全シャットダウン(S5)InitiateSystemShutdownExSHUTDOWN_HYBRID / EWX_HYBRID_SHUTDOWNフラグHiberbootEnabledレジストリ値ポリシー「高速スタートアップの使用を要求する」縮小休止ファイルpowercfgSERVICE_CONTROL_SHUTDOWNSERVICE_ACCEPT_POWEREVENT(サービスの電源イベント通知)

概念間の関係(全24件)

図と同じ関係を文章でも列挙します。表示している文と機械可読な意味データ(RDFa)は同じ要素に載っています。確度が「確立した関係」のものは直接の関係として、「条件付きの関係」のものは成立条件つきの言明(rdf:Statement)として表現しています。

主要概念の定義

ハイブリッドシャットダウン(高速スタートアップ)
ユーザーセッションはサインアウトするが、カーネルセッションは閉じずに休止ファイルへ保存し、次回起動でそのまま復元する既定のシャットダウン動作。
完全なブートサイクル
カーネルセッションを休止ファイルから復元せず、デバイスドライバーを含めて初期化し直す起動。高速スタートアップが有効な構成でも再起動は常にこれを行い、shutdown /s や InitiateSystemShutdownEx などハイブリッドのフラグを伴わないシャットダウンのあとの起動もこれになる。
セッション0
Windows Vista以降、サービスなど対話的ユーザーに関わらないプロセス専用に予約された、ユーザーの対話的セッションとは分離されたセッション。
再起動
電源メニューの「再起動」。高速スタートアップの設定にかかわらず常に完全なブートサイクルを行い、カーネル・ドライバー・サービスを初期化し直す。
稼働時間がリセットされない状態
カーネルの起動時刻(LastBootUpTime)が更新されず、タスク マネージャーの稼働時間が伸び続ける状態。ハイブリッドシャットダウンのほか、スリープや休止状態からの復帰、完了しなかったシャットダウンでも起きるため、これだけでは起動の種類を確定できず、判定にはKernel-Bootイベント27の値を使う。
S3スリープ(従来のスリープ)
CPUを停止しRAMだけ通電して状態を保持する、計算処理が一切走らないシステムスリープ状態。
Modern Standby対応デバイス
画面オフ中も低電力でネットワーク接続を維持できる高速スリープモデルに対応したデバイス。選択できるPower planがBalanced系に制限される。
休止状態(S4)
メモリの内容を休止ファイルへ書き出してから電源を切る、計算処理が一切走らないシステムスリープ状態。
shutdownコマンド(Shutdown.exe)
ローカルまたはリモートのコンピューターをシャットダウン・再起動するコマンド。/s は既定で完全シャットダウンで、/hybrid を付けたときだけ高速スタートアップ用のシャットダウンになる。
InitiateSystemShutdownEx
シャットダウンを開始するWin32 API。InitiateSystemShutdownとともに、ハイブリッドにはならず常に完全なシャットダウンを行う。bRebootAfterShutdown が FALSE なら電源オフ(S5)、TRUE ならシャットダウン後すぐに再起動する。ローカルPCをシャットダウンするには、呼び出すスレッドの実効トークン(偽装中ならスレッドトークン、そうでなければプロセストークン)で SE_SHUTDOWN_NAME 特権を AdjustTokenPrivileges で有効にしておく必要があり、無効のままだと呼び出しは失敗する。
SHUTDOWN_HYBRID / EWX_HYBRID_SHUTDOWNフラグ
InitiateShutdownとExitWindowsExに渡す、高速スタートアップ用のシャットダウンを要求するフラグ。InitiateShutdownで高速スタートアップ用の電源オフにするにはSHUTDOWN_HYBRIDをSHUTDOWN_POWEROFFと組み合わせて指定する(ドキュメント上はSHUTDOWN_HYBRIDを同じ表のいずれかのフラグと組み合わせるとされ単独では指定しないが、SHUTDOWN_RESTARTと組み合わせれば再起動、SHUTDOWN_NOREBOOTなら電源を切らずに止まるだけで、高速スタートアップ用の電源オフになるのはSHUTDOWN_POWEROFFとの組み合わせだけ)。SHUTDOWN_HYBRIDが無ければハイブリッドにはならず、操作はSHUTDOWN_POWEROFF(電源オフ)やSHUTDOWN_RESTART(再起動)などの操作フラグで決まる。ExitWindowsExではEWX_HYBRID_SHUTDOWNを組み合わせなければハイブリッドにはならず、操作はEWX_POWEROFF(電源オフ)・EWX_SHUTDOWN(電源を安全に切れる状態で止めるだけで電源は切らない)・EWX_REBOOT(再起動)で決まる(uFlagsを0にするとEWX_LOGOFF、つまりサインアウトになる)。いずれのAPIも SE_SHUTDOWN_NAME 特権を AdjustTokenPrivileges で有効にしてから呼ぶ(ExitWindowsEx は呼び出すプロセスのトークン、InitiateShutdown は呼び出すスレッドの実効トークン)。
ポリシー「高速スタートアップの使用を要求する」
WinInit.admxのポリシー設定(コンピューターの構成 > システム > シャットダウン)。有効にすると高速スタートアップと休止状態の有効化を要求し、無効または未構成ならローカルの設定が使われる。
縮小休止ファイル
既定サイズが物理メモリの20%の休止ファイル。高速スタートアップだけをサポートし、休止状態とハイブリッドスリープはサポートしない。
SERVICE_CONTROL_SHUTDOWN
シャットダウン処理の中でサービスへ届く制御コード SERVICE_CONTROL_SHUTDOWN。dwControlsAccepted に SERVICE_ACCEPT_SHUTDOWN を立てたサービスにだけ届く。猶予は既定で約20秒、上限はWaitToKillServiceTimeout。これより先に届く SERVICE_CONTROL_PRESHUTDOWN は別の受け入れ宣言(SERVICE_ACCEPT_PRESHUTDOWN)で、猶予も別に構成する。
SERVICE_ACCEPT_POWEREVENT(サービスの電源イベント通知)
Windowsサービスがスリープ・休止への遷移と復帰などの電源管理イベントを制御ハンドラーで受け取るために宣言する受け入れフラグ。宣言したサービスはサスペンド通知を直列に受け取り、サービスごとに30秒のタイムアウトが適用される。

機械可読データ

このデータセットについて

作成
合同会社小村ソフト
ライセンス
CC BY 4.0 ── 出典(合同会社小村ソフト)とライセンスへのリンクを明示し、改変した場合はその旨を示すことを条件に、再配布・改変を含めて再利用できます
最終確認日
2026-09-04 ── 収録する関係のうち、最後に出典と照合した日

このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。