(57)【要約】  システムは、ＡＣ停電状態に応じてシステムをメモリにサスペンドされた状態にするサスペンドプロセスが開始されたときに、システムの動作状態の持続的コピーを保存するいくつかのデータ転送動作を開始すべく割り込みをする機能を持つ基本入出力システム（ＢＩＯＳ）を備える。  ＢＩＯＳは、データ転送動作が完了したか否かを１回以上チェックし、ＢＩＯＳがチェックを実行していない少なくとも１つの期間、システムのプロセッサに低電力消費モードで動作させる機能をさらに備える。
2007505396.tif 000002
【特許請求の範囲】
【請求項１】
装置におけるオペレーション方法であって、
前記装置を、バックアップ電力によって維持される、メモリにサスペンドされた状態にすべく、前記装置のＡＣ停電状態に応答して開始されたサスペンドプロセスに基本入出力システム（ＢＩＯＳ）が割り込みをする段階と、
前記装置の動作状態の持続的コピーを保存すべく、前記装置のメモリの中の少なくとも選択された内容を持続的記憶装置に転送する複数のデータ転送動作を、前記割り込みの一部として前記ＢＩＯＳが開始する段階と、
前記ＢＩＯＳがさらに、前記割り込みの一部として、前記複数のデータ転送動作が完了したか否かを判断すべく１度以上チェックする段階と、
前記ＢＩＯＳがさらに、前記割り込みの一部として、前記ＢＩＯＳが前記チェックする段階を実行していない間、少なくとも前記装置の１つのプロセッサに少なくとも１つの期間、低電力消費モードで動作させる段階と
を備える方法。
【請求項２】
前記ＢＩＯＳが前記チェックする段階を実行していない間の少なくとも１つの期間、少なくとも前記装置の１つのプロセッサに低電力消費モードで動作させる前記段階は、前記ＢＩＯＳが前記チェックする段階を実行していない第１の期間の間、前記ＢＩＯＳが前記装置の１つのプロセッサに少なくとも中止させる段階を有する
請求項１に記載の方法。
【請求項３】
前記ＢＩＯＳが前記チェックする段階を実行していない第１の期間の間、前記装置の１つのプロセッサに少なくとも中止させる前記段階は、前記ＢＩＯＳが前記チェックする段階を実行していない第１の期間の間、前記ＢＩＯＳが前記装置のプロセッサをＡＣＰＩのＣ１状態に移行させる
請求項２に記載の方法。
【請求項４】
前記ＢＩＯＳが前記チェックする段階を実行していない第１の期間の間、前記装置の１つのプロセッサに少なくとも中止させる前記段階は、前記ＢＩＯＳが前記チェックする段階を実行していない第１の期間の間、前記ＢＩＯＳが前記装置のプロセッサをＡＣＰＩ  Ｃ２状態及びＡＣＰＩ  Ｃ３状態の選択された１つに移行させる
請求項２に記載の方法。
【請求項５】
前記ＢＩＯＳが前記チェックする段階を実行していない第１の期間の間、前記装置の１つのプロセッサに少なくとも中止させる前記段階は、前記ＢＩＯＳが前記データ転送動作を開始した後に実行される
請求項２に記載の方法。
【請求項６】
前記ＢＩＯＳが前記チェックする段階を実行していない第１の期間の間、前記ＢＩＯＳが前記装置の１つのプロセッサに少なくとも中止させる前記段階は、前記ＢＩＯＳがチェックの一部として、前記データ転送動作が引き続き進行中であると判断した後に実行される
請求項２に記載の方法。
【請求項７】
前記ＢＩＯＳが前記チェックする段階を実行していない間、前記装置の少なくとも１つのプロセッサを少なくとも１つの期間低電力消費モードにする前記段階は、前記ＢＩＯＳが、前記プロセッサに割り込みをすべく前記第１の期間の最後に満了するタイマをセッティングし、前記プロセッサに前記低電力消費モードの動作を終了させる段階をさらに有する
請求項２に記載の方法。
【請求項８】
前記チェックする段階は、前記データ転送動作が完了したか否かを決定すべく前記ＢＩＯＳが複数回チェックする段階を有する
請求項１に記載の方法。
【請求項９】
前記動作させる段階は、前記ＢＩＯＳが前記チェックする段階を実行していない間に、複数の期間、前記ＢＩＯＳが前記装置の少なくとも１つのプロセッサに低電力消費モードで動作させる段階を有する
請求項１に記載の方法。
【請求項１０】
前記データ転送動作が終了すると、前記ＢＩＯＳが、前記装置の前記動作状態の前記持続的コピーを有効としてマーキングする段階
をさらに備える請求項１に記載の方法。
【請求項１１】
前記割り込みの一部として、メモリに前記サスペンドされた状態から前記装置を起動するのに適格なただ１つの起動イベントとしてＡＣの再アベイラビリティを残して1以上の起動イベントを、前記ＢＩＯＳが、前記装置がメモリに前記サスペンドされた状態に移行した後に前記装置を起動するのに不適格として設定する段階
をさらに備える請求項１に記載の方法。
【請求項１２】
前記データ転送動作の完了の後に、前記ＢＩＯＳが前記サスペンドプロセスを完了させる段階
をさらに備える請求項１に記載方法。
【請求項１３】
装置におけるオペレーション方法であって、
前記装置が非給電状態にある間に前記装置へのＡＣ電力の再利用性に応じて、基本入出力システム（ＢＩＯＳ）がコールドスタートリセットプロセスを開始する段階と、
前記コールドスタートリセットプロセスの一部として、有効な保存された前記装置の動作状態を前記装置の持続的記憶装置が有するか否かを前記ＢＩＯＳが決定する段階と、
前記持続的記憶装置が有効な保存された前記装置の動作状態を有すると判断された場合、前記有効な保存された前記装置の動作状態を前記ＢＩＯＳが無効として再マーキングする段階と、
前記保存された前記装置の動作状態を前記持続的記憶装置から前記装置のメモリに回復すべく、前記保存された前記装置の動作状態を前記持続的記憶装置から前記装置のメモリに転送する複数のデータ転送動作を、前記ＢＩＯＳが開始する段階と
を備える方法。
【請求項１４】
前記データ転送動作が完了すると、前記ＢＩＯＳが、前記装置を即時に起動する即時起動イベントをセットアップして、前記装置をメモリにサスペンドされた状態にする段階であって、結果として、前記装置を即時に起動する即時起動イベントの前記セットアップが、前記コールドスタートリセットプロセスにレジュームプロセスとして継続させ、最終的に前記装置が、前記装置の前記回復された動作状態から継続して、アクティブ状態での動作を開始させるように導く段階
をさらに備える請求項１３に記載の方法。
【請求項１５】
前記持続的記憶装置が前記装置の有効な保存された動作状態を有さないことを決定すると、前記コールドスタートリセットプロセスを継続する段階
をさらに備える請求項１３に記載の方法。
【請求項１６】
システムであって、
前記システムの現在の動作状態を少なくとも記憶するメモリと、
持続的記憶装置と、
プロセッサと、
前記メモリ、前記持続的記憶装置、及びプロセッサに動作的に結合された基本入出力システム（ＢＩＯＳ）であって、前記システムのＡＣ停電状態に応答して前記システムをメモリにサスペンドされた状態にサスペンドするサスペンドプロセスに割り込みをし、前記システムの前記動作状態の持続的コピーを前記持続的記憶装置に保存する基本入出力システム（ＢＩＯＳ）と
を備え、
前記基本入出力システム（ＢＩＯＳ）は、
前記動作状態を前記持続的記憶装置にコピーする複数のデータ転送動作を開始し、
前記割り込みの一部として、前記複数のデータ転送動作が完了したか否かを判断すべく１回以上チェックし、
前記割り込みの一部として、前記ＢＩＯＳが前記チェックを実行していない少なくとも１つの期間、少なくとも前記プロセッサに低電力消費モードで動作させる
システム。
【請求項１７】
前記ＢＩＯＳは、前記ＢＩＯＳが前記チェックを実行していない第１の期間にわたって前記プロセッサを少なくとも中止させることによって、前記ＢＩＯＳが前記チェックを実行していない少なくとも一期間、少なくとも前記プロセッサに低電力消費モードで動作させる
請求項１６に記載のシステム。
【請求項１８】
前記ＢＩＯＳは、前記ＢＩＯＳが前記チェックを実行していない第１の期間にわたって前記プロセッサをＡＣＰＩのＣ１状態に移行させることによって、前記ＢＩＯＳが前記チェックを実行していない第１の期間にわたって前記プロセッサを少なくとも中止させる
請求項１７に記載のシステム。
【請求項１９】
前記ＢＩＯＳは、前記ＢＩＯＳが前記チェックを実行していない第１の期間にわたって前記プロセッサをＡＣＰＩのＣ２状態及びＡＣＰＩのＣ３状態のうちの選択された１つに移行させることによって、前記ＢＩＯＳが前記チェックを実行していない第１の期間にわたって前記プロセッサを少なくとも中止させる
請求項１７に記載のシステム。
【請求項２０】
前記ＢＩＯＳは、前記ＢＩＯＳが前記複数のデータ転送動作を開始した後に、前記ＢＩＯＳが前記チェックを実行していない間、第１の期間にわたって前記プロセッサを少なくとも中止させる
請求項１７に記載のシステム。
【請求項２１】
前記ＢＩＯＳは、前記ＢＩＯＳが前記データ転送動作が依然として進行中であることをチェックの一部として判断した後に、前記ＢＩＯＳが前記チェックを実行していない間、第１の期間にわたって前記プロセッサを少なくとも中止させる
請求項１７に記載のシステム。
【請求項２２】
前記ＢＩＯＳはさらに、前記プロセッサに割り込みをすべく前記第１の期間の終わりで満了するタイマを設定して、前記プロセッサに前記低電力消費モードの動作を終了させことによって、前記ＢＩＯＳが前記チェックを実行していない間、少なくとも１つの期間にわたって、少なくとも前記プロセッサに低電力消費モードで動作させる
請求項１７に記載のシステム。
【請求項２３】
前記ＢＩＯＳは、前記複数のデータ転送動作が完了したか否かを判断すべく複数回チェックする
請求項１６に記載のシステム。
【請求項２４】
前記ＢＩＯＳは、前記ＢＩＯＳが前記チェックを実行していない間、複数の期間において、前記装置の少なくともプロセッサを低電力消費モードで動作させる
請求項１６に記載のシステム。
【請求項２５】
前記ＢＩＯＳはさらに、前記複数のデータ転送動作が完了すると、前記装置の前記動作状態の前記保存されたコピーを有効としてマークする
請求項１６に記載のシステム。
【請求項２６】
前記ＢＩＯＳはさらに、前記割り込みの一部として、前記装置が前記メモリにサスペンドされた状態に移行した後に、前記メモリにサスペンドされた状態から前記装置を起動するためのただ１つの有効な起動イベントとしてＡＣ再アベイラビリティを残して、１以上の起動イベントを、前記装置を起動するのに不適格と設定する
請求項１６に記載のシステム。
【請求項２７】
前記ＢＩＯＳはさらに、前記複数のデータ転送動作の前記完了に続けて、前記サスペンドプロセスを完了させる
請求項１６に記載のシステム。
【請求項２８】
前記ＢＩＯＳに動作的に結合されたネットワークインタフェースをさらに備える
請求項１６に記載のシステム。
【請求項２９】
前記システムは、セットトップボックス、娯楽制御装置（entertainment control console）、ビデオレコーダ、及びビデオプレーヤの選択された１つである
請求項１６に記載のシステム。
【請求項３０】
システムであって、
メモリと、
前記システムの保存された動作状態を少なくとも記憶する持続的記憶装置と、
前記メモリ及び前記持続的記憶装置に機能的に接続された基本入出力システム（ＢＩＯＳ）であって、前記システムが非給電状態にある間に前記システムへのＡＣ電力の再利用性に応答して開始されたコールドスタートリセットプロセスの一部として、前記持続的記憶装置が有効な保存された前記システムの動作常態を含むか否かを判断し、前記持続的記憶装置の中に前記有効な前記システムの保存された動作状態の存在を判断すると、前記保存された前記システムの動作状態の、前記持続的記憶装置から前記メモリへの回復を開始する前又は実質的に同時に、前記有効な前記システムの保存された動作状態を無効としてマークする基本入出力システム（ＢＩＯＳ）と
を備えるシステム。
【請求項３１】
前記ＢＩＯＳはさらに、
前記保存された前記システムの動作状態を前記持続的記憶装置から前記メモリに回復する複数のデータ転送動作を開始し、
前記複数のデータ転送動作が完了すると、前記システムを起動すべく起動イベントをセットアップし、前記システムをメモリにサスペンドされた状態にし、結果として、起動イベントの前記セットアップが前記システムを即時に起動して前記コールドスタートリセットプロセスにレジュームプロセスとして継続させ、最終的に前記システムが、前記システムの前記回復された動作状態から継続して、アクティブ状態での動作を開始させるように導く
請求項３０に記載のシステム。
【請求項３２】
前記ＢＩＯＳはさらに、前記持続的記憶装置が有効な保存された前記システムの動作状態を有していないことを判断すると、前記コールドスタートリセットプロセスを継続するよう設計されている
請求項３０に記載のシステム。
【請求項３３】
前記ＢＩＯＳに動作的に結合されたネットワークインタフェース
をさらに備える請求項３０に記載のシステム。
【請求項３４】
製品であって、
記憶メディアと、
前記記憶メディアに記憶されたプログラミング命令であって、装置のＡＣ停電状態に応答して、基本入出力システム（ＢＩＯＳ）が動作する前記装置をメモリにサスペンドされた状態にサスペンドすべく開始されたサスペンドプロセスに割り込みをし、前記装置の動作状態の持続的コピーを保存する前記ＢＩＯＳを実装するプログラミング命令と
を備え、
前記プログラミング命令は、
前記装置のメモリの少なくとも選択された内容を前記装置の持続的記憶装置に転送する複数のデータ転送動作を開始し、
前記割り込みの一部として、前記複数のデータ転送動作が完了したか否かを判断すべく１回以上チェックし、
前記割り込みの一部として、前記ＢＩＯＳが前記チェックを実行していない間、少なくとも１つの期間、少なくとも前記装置のプロセッサを低電力消費モードで動作させる製品。
【請求項３５】
前記ＢＩＯＳはさらに、前記複数のデータ転送動作が完了すると、前記装置の前記動作状態の前記持続的コピーを有効としてマークする
請求項３４に記載の製品。
【請求項３６】
前記ＢＩＯＳはさらに、前記割り込みの一部として、前記装置が前記メモリにサスペンドされた状態に移行した後、前記装置を前記メモリにサスペンドされた状態から起動するのに適格なただ１つの起動イベントとしてＡＣ再アベイラビリティを残して１以上の起動イベントを、前記装置を起動するのに不適格として設定する
請求項３４に記載の製品。
【請求項３７】
前記ＢＩＯＳはさらに、前記複数のデータ転送動作の完了に続いて、前記サスペンドプロセスを完了させる
請求項３４に記載の製品。
【請求項３８】
記憶メディアと、
前記記憶メディアに記憶された複数のプログラミング命令と
を備え、
前記複数のプログラミング命令は、
前記装置が非給電状態にある間における装置へのＡＣの再利用性に応答して開始された、装置のコールドスタートリセットプロセスの一部として、前記装置の持続的記憶装置が有効な保存された前記装置の動作状態を有するか否かを判断し、
前記持続的記憶装置から前記装置のメモリへの、前記保存された前記装置の動作状態の回復を開始する前又は実質的に同時に、前記有効な保存された前記装置の動作状態を無効としてマークする機能を有する基本入出力システム（ＢＩＯＳ）
を実装する製品。
【請求項３９】
前記ＢＩＯＳはさらに、
前記保存された前記システムの動作状態を前記持続的記憶装置から前記メモリに回復する複数のデータ転送動作を開始し、
前記複数のデータ転送動作が完了すると、前記システムを起動すべく起動イベントをセットアップして、前記システムをメモリにサスペンドされた状態にし、結果として、起動イベントの前記セットアップが前記システムを即時に起動して前記コールドスタートリセットプロセスをレジュームプロセスとして継続させ、最終的に前記システムが、前記システムの前記回復された動作状態から継続して、アクティブ状態での動作を開始させるように導く
請求項３８に記載の製品。
【請求項４０】
前記ＢＩＯＳはさらに、前記持続的記憶装置が前記装置の保存された動作状態を有さないと判断されると、前記コールドスタートリセットプロセスを継続して完了させるよう設計される請求項３８に記載の製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２００３年８月１９日に出願された、この現出願と少なくとも一部共通の発明者適格を持つ、タイトル" Operational State Preservation in the Absence of AC Power"の米国特許出願番号１０／６４４４３２の、一部継続出願である。
【背景技術】
【０００２】
集積回路及びマイクロプロセッサ技術の進歩は、パーソナルコンピュータのような、かつて"メインフレーム"として予約されていたコンピューティング能力を持つコンピューティングバイスの利用可能性を実現させた。その結果、パーソナルコンピュータのようなコンピューティングデバイスが、幅広い多くのコンピューテーション、そしてしばしば"重要な"コンピューテーションにますます多く使用されるようになっている。
【０００３】
しかし、パーソナルコンピュータのようなコンピューティングデバイスは、依然として内蔵バックアップ電力のサポートなしで供給されている。さらに、それらのサーバ類とは異なり、典型的には、追加の外部のバックアップ電力のサポートはあまり使用されない。したがって、電源が停電するたびに、それらのコンピューティングデバイスは電力が供給されない状態になり、システム状態は失われる。
【０００４】
Advanced Configuration and Power Interface（ＡＣＰＩ）（ヒューレット・パッカード、インテル及びその他によって共同開発された）にしたがって実装された電力管理を持つコンピューティングデバイスにとって、そのコンピューティングデバイスは"給電されていない"Ｇ３状態にあると言われる。
【０００５】
その上、電力が回復して、ユーザがコンピューティングデバイスの電力ボタンを押したとき、そのユーザは典型的には、そのコンピューティングデバイスのオペレーティングシステム（ＯＳ）からの数多くのメッセージを受け取る。不幸なことに、これらのメッセージの多くは、高度な知識を備えたユーザにしかわからない。これらのメッセージの例は、コンピューティングデバイスをセーフモードへと起動させる、ディスクドライブをスキャンさせる等をユーザが望むか否かをユーザに問うことを含む。
【０００６】
パーソナルコンピュータのようなコンピューティングデバイスの採用が広がり続け、そのコンピューティングデバイスが、"娯楽"アプリケーションのような、ますます多様なアプリケーションのためにより多くのユーザによって利用されていくとすれば、それらの使いやすさ、可用性、及び／又は信頼性が進歩しつづける必要がある。したがって、パーソナルコンピュータのようなコンピューティングデバイスの、電力障害を処理する能力を改善する必要がある。
【図面の簡単な説明】
【０００７】
この発明の実施例は複数の添付図面を用いて説明され、そこでは同類の符号は類似の要素を示している。
【０００８】
【図１】システムがメモリにサスペンドするときにシステム状態の持続的コピーを保存するＢＩＯＳを含む、この発明の一実施形態の教示が組み込まれたシステムの概要を示す図である。
【図２ａ】システム状態の持続的コピーが保存されてメモリにサスペンドされた状態を含む、一実施形態における図１のシステムの動作状態を示す図である。
【図２ｂ】ＡＣ及びＤＣ電力源の充足／不足をモニタリングするモニタを含む、図１の電源の一実施形態をさらに詳細に示す図である。
【図２ｃ】一実施形態における、図１のＢＩＯＳの全て又は関連する部分を実装するプログラミング命令を持つ製品のサンプルを示す図である。
【図２ｄ】一実施形態における、図１の起動イベント設定レジスタの一例を示す図である。
【図３ａ】システム状態の持続的コピーを保存すべく割り込むＢＩＯＳを含む、アクティブ状態で動作中にＡＣ不足状態に応じてシステムをメモリにサスペンドするシステムの関連する動作フローの一実施形態を示す図である。
【図３ｂ】ＡＣ不足以外の理由によって開始されたサスペンドプロセスの一部としてＢＩＯＳがシステム状態の持続的コピーを保存している間の、ＡＣ不足状態に応答するシステムの関連する動作フローの一実施形態を示す図である。
【図３ｃ】ＡＣ不足以外の理由によってシステムがメモリにサスペンドされている間の、ＡＣ不足状態に応答するシステムの関連する動作フローの一実施形態を示す図である。
【図４】メモリにサスペンドされた状態においてバックアップ電源によって動作している間の、ＡＣの再充足状態に応答してアクティブ状態にシステムをレジュームするシステムの関連する動作フローの一実施形態を示す図である。
【図５】保存されたシステム状態の持続的コピーを利用可能な場合に用いてレジュームプロセスに転換することを含む、無給電状態で動作している間のＡＣ再充足状態に応答してシステムをアクティブ状態へとコールドスタート及びリセットする、システムの関連する動作フローの一実施形態を示す図である。
【発明の開示】
【０００９】
この発明の複数の実施形態は、ＡＣ停電時にシステムのシステム状態の持続的コピーを保存する方法、当該方法の実行を促進するＢＩＯＳ、ＡＣ停電を通知する電源、並びに当該ＢＩＯＳ及び当該電源の全て又は一部の機能を持つ複数のコンポーネント、複数の回路基板、又は複数のデバイスを含むが、これらに制限されない。
【００１０】
以下の記載には、この発明の一実施形態の種々の特徴が記載される。しかしながら、いくつか又は全ての記載された特徴とともに他の複数の実施形態が実施され得ることが、当業者に明らかであろう。説明を目的として、特定の数、材料及び構成が、複数の実施形態の完全な理解を提供すべく示されている。しかしながら、細かに詳述することなく他の複数の実施形態が実施され得ることが、当業者に明らかだろう。他の具体例では、記述がわかりにくくならないように、良く知られた機能は省略又は簡略化されている。
【００１１】
様々な動作が、複数の実施形態を理解するのに最も役立つ方法で、複数の別個の動作として順に記載されているだろう。しかしながら、記載の順番は、これらの動作が必ず順番に依存するということを示していると解釈されるべきではない。特に、これらの動作が説明の順で実行される必要はない。
【００１２】
"一実施形態"という語句が繰り返し使用されている。この語句は、通常、同一の実施形態を参照していないが、同一の実施形態を示しているかもしれない。"備える"、"持つ"、及び"含む"という用語は、文脈が異なることを示さない限り、同義である。
【００１３】
図１は、この発明の一実施形態の教示を含むシステムの概要を示す。本実施形態では、システム１００は、示されるように互いに結合された、プロセッサ１０２、不揮発性メモリ１０４、メモリ１０６、コントローラ／バス・ブリッジ１０８、持続的記憶装置１１０、他の複数のＩ／Ｏデバイス１１２、複数のバス１１４ａ−１１４ｂ、及び電源１１６を含む。コントローラ／バス・ブリッジ１０８は、メモリ及びＩ／Ｏコントローラ／バス・ブリッジ、すなわちＭＣＨ／ＩＣＨ／ＢＢとも呼ばれるだろう。
【００１４】
プロセッサ１０２は、特に、割り込み１３４を受信する端子（例えば、ピン）を持つ。特に、プロセッサ１０２は、少なくともノーマル電力消費モード及び低電力消費モードで動作する機能を持つ。いくつかの実施形態では、プロセッサ１０２は１つの期間中止する機能を持つ。その期間の間は、命令は実効されず、その結果プロセッサ１０２は低減された電力量を消費することになる。しかしながら、プロセッサ１０２は、すべての関連する状態情報、例えばプロセッサのプログラムカウンタ、スタックポインタ、インターナルキャッシュ等を維持し続ける。プロセッサ１０２がそのノーマル消費動作モードに戻るまでの待ち時間は、どのオペレーティングシステム（ＯＳ）１２６にとっても考慮する上で重要ではない。いくつかの実施例では、低電力消費動作モードは、ＡＣＰＩ仕様書バージョン２．０ｂに定義されるように、ＡＣＰＩのＣ１状態に準拠する。
【００１５】
他の実施形態では、プロセッサ２０２は（ＭＣＨ／ＩＣＨ／ＢＢ１０８とともに）、Ｃ２及びＣ３状態を含むがそれに限定されない、付加的なＡＣＰＩの低電力消費状態をサポートしてもよい。
【００１６】
不揮発性メモリ１０４は特に、以下により十分に説明される、この発明の一実施形態の教示を有する基本入出力システム（ＢＩＯＳ）１２４を含む。メモリ１０６は、オペレーティングシステム（ＯＳ）１２６のワーキングコピーと、アプリケーション及びデータ１２８ａを含むシステム状態とを有する。ＯＳ１２６は、システム１００に"メモリにサスペンドされた"状態に移行させるサスペンドプロセスを開始する機能を持つ。
【００１７】
ＭＣＨ／ＩＣＨ／ＢＢ１０８は、システム１００がアクティブな状態であってＡＣが停電又は不足する状態が発生した場合に、プロセッサ１０２に割込みをかける。より詳細には、本実施形態では、当該停止はＭＣＨ／ＩＣＨ／ＢＢ１０８のＩＣＨ部によって発行される。ＭＣＨ／ＩＣＨ／ＢＢ１０８は特に、ＯＳ１２６がシステム１００に"メモリにサスペンドされた"状態に移行させることを促進するレジスタ１２２、及びＢＩＯＳ１２４がシステム１００を起動する適格な複数の起動イベントを構築することを促進するレジスタ１２２をさらに含む。
【００１８】
さらに、ＭＣＨ／ＩＣＨ／ＢＢ１０８は、システム１００に"メモリにサスペンドされた"状態をひき起こすべく、（スタンバイ電力だけを残して）"ノーマル"電力の供給を遮断する機能を備える。ＭＣＨ／ＩＣＨ／ＢＢ１０８は、システム１００がメモリにサスペンドされた状態にある間におけるＡＣの再充足の通知を含む、デバイスの起動イベントを処理する機能も備える。特に、ＭＣＨ／ＩＣＨ／ＢＢ１０８は、"ノーマル"電力の供給の再開を許可し、システム１００の起動を開始し、ＢＩＯＳがレジュームプロセスを開始することを助ける機能を備える。同様に、本実施形態では、デバイスの起動イベントの処理は、ＭＣＨ／ＩＣＨ／ＢＢ１０８のＩＣＨ部で実行される。
[ＡＣ＝交流]
【００１９】
いくつかの実施形態では、ＭＣＨ／ＩＣＨ／ＢＢ１０８は、ＡＣが不足している期間の後に再び利用可能になったときに、"ノーマル電力"の供給の再開及びシステム１００の起動を遅延する、例えば遅延要素をさらに備える。この付加的な機能は、システム１００を起動する前及びレジュームプロセスをトリガする前にＡＣが安定していることを保証することを助けるだろう。
【００２０】
電源１１６は、システム１００がＡＣが停電又はＡＣ不足状態にある間にシステム１００に電力を供給する内蔵バックアップＤＣ電源１３２、及び電源１１６でのＡＣ電力の充足又は不足を信号１３６送信する機能を備えるモニタ１３０を含む。内蔵バックアップＤＣ電源１３２の一例はバッテリである。本出願の目的のために、"ＡＣ停電"、"ＡＣ不足"、及び他の複数の変形の語句は、文脈が明らかに反対を示さない限り同義とみなされるべきである。以下では、内蔵バックアップＤＣ電源１３２は、単にバックアップ電源又はＤＣ電源とも呼ばれるかもしれない。そのうえ、他の複数の実施例においては、バックアップ電源は非ＤＣ電源であってよい。
[ＤＣ＝直流]
【００２１】
持続的記憶装置１１０は特に、システム１００が"メモリにサスペンドされた"状態に移行するとき、アプリケーション及びデータ１２８ｂを含むシステム状態の持続的コピーを記憶するために用いられる。ここで用いられる"システム状態"という語句は、ＯＳ並びにアプリケーション状態及びデータを含む。
【００２２】
結果としてシステム１００は、ＡＣ電源が失われても、システム状態の持続性の複製が保存されることを可能にする重要な期間に少なくともわたって、"メモリにサスペンドされた"状態に（ＤＣ電源によって）好ましく維持される。
【００２３】
さらに、ＡＣ電源が戻ると、システム１００は保存されたシステム状態にスムーズに戻され得る。このように、システム１００は、テレビのような従来の消費者向け電化製品に似た使いやすい体験をそのユーザに提供し得る。例えば、ユーザの視点からは、テレビは、テレビが同調された最後のチャンネルを記憶していて、その特定のチャンネルに同調してターンオンする。組み込まれた教示によって、システム１００の複数の実施形態もまた、ユーザの視点からは、電源が"切断"された後にその最後の状態へとターンオンするという、同様の"記憶"動作を示す。
【００２４】
図１を参照して、組み込まれたこの発明の複数の実施形態の教示の他は、プロセッサ１０２、不揮発性メモリ１０４、メモリ１０６、ＭＣＨ／ＩＣＨ／ＢＢ１０８、持続的記憶装置１１０、複数のＩ／Ｏデバイス１１２、複数のバス１１４ａ−１１４ｂは全て、これらの要素の対応する広い範囲を示す。特に、Ｉ／Ｏデバイスの一例は、ネットワークインタフェースである。同様に、組み込まれたこの発明の一実施形態の教示の他は、ＢＩＯＳ１２４及びＯＳ１２６もまた、その複数の要素の対応する広い範囲を示す。
【００２５】
ＢＩＯＳ１２４、電源１１６、システム１００の動作状態及び様々な動作フローに組み込まれたこれらの教示のいくつかの実施形態が、これらの要素が進歩を提供すべく協動する方法とともに以下に順に記載されるだろう。
【００２６】
いくつかの実施形態において、システム１００は、デスクトップコンピュータ、セットトップボックス、娯楽制御装置（entertainment control console）、ビデオレコーダ、ビデオプレーヤ、又は他の類似するプロセッサベースの複数のデバイスであってよい。
【００２７】
さらに、他の複数の実施形態は、列挙された要素なしで、または他の複数の要素とともに、実施されてよい。とりわけ、他の複数の実施形態は、システム１００の内蔵要素であるＤＣ電源１３２なしで実施されてよい。すなわち、これらの実施形態では、ＤＣ電力はシステム１００の外部の電源から供給される。
【００２８】
図２ａは、システム１００の動作状態の一実施例を示す。理解を容易にすべく、システム１００がＡＣＰＩの実装をも含み、複数のＡＣＰＩ状態にマッピングされると仮定して、その動作状態が説明される。本実施例では、システム１００の動作状態は、３つの主要な動作状態、アクティブ状態（ＡＣＰＩ  Ｓ０、又は単にＳ０）２０２、サスペンド状態（ＡＣＰＩ  Ｓ３又は単に、Ｓ３）２０４、及び無給電状態（ＡＣＰＩ  Ｇ３又は単にＧ３）２０６を含む。一方、他の複数の実施形態は、ＡＣＰＩ状態へのマッピング又はＡＣＰＩの実装なしで実施されてよい。これらのＡＣＰＩ状態についてのさらなる情報については、前述のＡＣＰＩ仕様バージョン２．０ｂも参照すること。
【００２９】
アクティブ状態（Ｓ０）２０２のうちで、システム１００は"ビジュアルオン"状態２１２又は"ビジュアルオフ"状態２１４にあってよい。システム１００が"ビジュアルオン"状態２１２にある間、システムの稼動状態の指示を知覚することができるユーザは、適切な表示デバイス、発光ダイオード（ＬＥＤ）、スピーカ等を含むがそれに限定されないもので選択的にアクチベートされてよい。
【００３０】
一方、システム１００が"ビジュアルオフ"状態２１４にある間、システム１００の全ての視覚的及び聴覚的要素は"オフ"であり、システム１００が"スイッチを切られた"という印象をユーザに与える。図示されるように、システム１００は、パワーボタン（ＰＢ）イベント２２２に少なくとも部分的に基づいて、"ビジュアルオン"状態２１２及び"ビジュアルオフ"状態２１４の間を遷移し得る。
【００３１】
アクティブ状態（Ｓ０）２０２の中にビジュアル"オン"及び"オフ"状態２１２及び２１４を持つことは、開示されたこの発明の実施形態の非主要な側面である。この特徴は、２００３年８月１９日に出願された、番号、タイトル"Method, Apparatus and System For Operating Data Processing Devices"の、同時係属中の米国特許出願の対象である。さらなる詳細については、同時係属中の出願を参照すること。
【００３２】
図２ａを参照して、本実施例では、サスペンド状態（Ｓ３）２０４の中で、システム１００は、"メモリにサスペンドされた"状態２１６又は"システム状態の持続的コピーが保存され、メモリにサスペンドされた"状態２１８にあり得る。システム１００が"ビジュアルオン"状態２１２にある間、システムの稼動状態の指示を知覚することができるユーザは、適切な表示デバイス、発光ダイオード（ＬＥＤ）、スピーカ等を含むがそれに限定されないもので選択的にアクチベートされるだろう。電源１１６にＡＣが不足しているときは、システム１００は"ＡＣ停電"状態にあるとされる。さらに、提示された複数の教示によって、システム１００はその時のシステム状態の持続的コピーを自動的に保存して、"システム状態の持続的コピーが保存され、メモリにサスペンドされた"状態２１８に移行する。
【００３３】
本実施形態では、システム状態を保存するプロセスは、例えばＡＣ電力の回復によって中断されてよい。以下でさらに詳しく説明されるように、システム状態を保存するプロセスは"中止"され、サスペンドプロセスが完了に進むことが可能にされ（遷移２４０の最初の部分）、結果としてシステム１００がメモリにサスペンドされた状態２１６になる。そのタイミングで、システム１００は直ちにビジュアルオフ状態２１４に戻る（遷移２４０の残りの部分）。
【００３４】
内蔵ＤＣ電源が遮断されるか消耗２３０した場合には、システム１００は、"システム状態の持続的コピーが保存され、メモリにサスペンドされた"状態２１８から非給電状態（Ｇ３）２０６に移行してよい。ＤＣ電源が消耗することを防ぐためにある期間の後にＤＣ電源を遮断することもまた、この発明の開示された複数の実施形態の主要な側面ではない。この特徴は、２００３年８月１９日に出願された、番号１０／６４４６８３、タイトル"Automatic Shut Off of DC Power Source in the Extended Absence of AC Power"の、同時係属中の米国特許出願の対象である。さらに詳しくは、同時継続中の出願を参照すること。
【００３５】
システム１００は、システム１００におけるＡＣ電力の再充足、又は（状態２１８にはインアクティビティによって移行され）ＡＣが充足していればパワーボタン／デバイス起動イベント２３２／２３４に応じて、"システム状態の持続的コピーが保存され、メモリにサスペンドされた"状態２１８から、"ビジュアルオン"状態２１２又は"ビジュアルオフ"状態２１４のいずれかに戻ることができる。いくつかの実施形態では、後の遷移は、電源１１６にＡＣが充足している場合（状態２１８にはインアクティビティによって移行される）にのみ許容され、さもなければパワーボタン又はデバイス起動イベントは抑制される。
【００３６】
さらに、システム１００が"非給電"状態（Ｇ３）２０６にある場合にＡＣが再び充足するようになると、システム１００は"ビジュアルオフ"状態２１４に戻る。
【００３７】
図２ｂは、電源１１６の一実施形態を示す。示されるように、本実施形態では、電源１１６は前述したような内蔵バックアップＤＣ電源１３２及びモニタ１３０を含む。さらに、電源１１６は複数の電力出力（パワーレールとも呼ばれる）２４４を有する。その複数の要素は、示されるように互いに結合される。
【００３８】
したがって、電力出力２４４は、電源１１６にＡＣが不足しているときに、内蔵ＤＣ電源１３２を利用して、システム１００の複数の要素に電力を供給し続けることができる。さらに、モニタ１３０は、任意の時点において電源１１６にＡＣの充足又は不足を示す信号を出力することができる。
【００３９】
いくつかの実施形態において、ＤＣ電源１３２はバッテリであってよい。モニタ１３０は、信号１３６を供給すべくコンパレータに結合された複数のダイオード及びＲＣ回路を用いて実装され得る。さらに、信号１３６の論理の"１"は電源１１６でのＡＣ充足を示すのに対し、信号１３６の論理の"０"は電源１１６でのＡＣ不足を示す。
【００４０】
いくつかの実施形態では、ＭＣＨ／ＩＣＨ／ＢＢ１０８が備える"遅延"能力に加えて又は代えて、電源１１６が、ＡＣの非アベイラビリティ（不足）を知らせる信号１３６を出力した後にＡＣのアベイラビリティ（再充足）を知らせる信号１３６の出力を遅延する、例えば遅延要素をさらに備えてよい。この付加的な能力は、その再充足を知らせる前に、ＡＣが安定していることを保証することを助ける。
【００４１】
いくつかの実施形態では、電力出力２４４はノーマル及びスタンバイ電力を含んでよい。ノーマル電力出力は＋１２Ｖ、＋５Ｖ、＋３Ｖ、及び−１２Ｖを含むのに対し、スタンバイ電力出力は＋５Ｖを含む。さらに、ノーマル電力出力又はその供給は遮断され得る。
【００４２】
図２ｄは、一実施形態における、システム１００を起動するのに適格な起動イベントの設定を促進するのに好適なレジスタ１２２の例を示す。図示されるように、レジスタ１２２は、対応する起動イベントがシステム１００を起動するのに適格であるか不適格であるかを（ビット値で）示すいくつかのデータビットを記憶するためのいくつかの記憶位置を含む。本実施形態では、レジスタ１２２は、それぞれリアルタイムクロック（ＲＴＣ）、ユニバーサル・シリアル・バス（ＵＳＢ）アクティビティ、モデムアクティビティによって発生する起動イベントの起動適格性を示す特定ビット２７２〜２７６を含む。レジスタ１２２はさらに、いつかのperipheral control interface（ＰＣＩ）デバイス（ＰＭＥウェイク）の１つ、及びＡＣ再充足によって開始される起動イベントの起動適格性をそれぞれ示すビット２７８〜２８０を含む。他の実施形態では、さらに多くの又はさらに少ない設定可能な起動イベントがサポートされてよい。
【００４３】
図２ｃは、一実施形態における、図１のＢＩＯＳ１２４の全て又は関連する部分を実装するプログラミング命令を持つ製品のサンプルを示す。図示されるように、製品２５０は記憶媒体２５２及び図１のＢＩＯＳ１２４の全て又は関連する部分を実装する複数のプログラミング命令２５２を含む。先で示唆されたように、そして以下で詳細に説明されるが、ＢＩＯＳ１２４は、システム１００が"ＡＣ停電"状態にあるときにシステム１００の動作状態の保存を促進する、この発明の一実施形態の複数の教示を含む。
【００４４】
本実施形態では、製品２５０はディスケットであってよい。他の実施形態では、製品２５０はコンパクトディスク（ＣＤ）、ディジタル多目的ディスク（ＤＶＤ）、テープ、コンパクトフラッシュ、又は他の着脱可能な記憶デバイスであってよく、例えばネットワーク接続を介してＢＩＯＳ１２４の全て又は関連する部分をダウンロードするためにアクセス可能な、ハードディスクドライブのような大容量記憶装置であってよい。
【００４５】
図３ａは、アクティブ状態２０２で動作中に、ＡＣ停電状態に応じてシステム１００をメモリにサスペンドする、システム１００の関連する動作フローの一実施形態を示す。
【００４６】
図示されるように、アクティブ状態２０２で動作している間、電源１１６はＡＣの充足又は不足をモニタして、それに応じてＡＣの充足又は不足を示す信号を出力する（ブロック３０２）。他の実施形態では、電源１１６でのＡＣの充足又は不足の監視及び信号送信は、電源１１６以外の他の要素によって実行され得る。電源１１６でＡＣが充足している限り、その監視及び信号送信は継続する。
【００４７】
しかしながら、ＡＣが停電した又は電源１１６から不足し、モニタ１３０がそのように示す信号を出力したとき、本実施形態では、ＭＣＨ／ＩＣＨ／ＢＢ１０８は割り込みをアサートし、ＡＣ停電又は不足状態であることをプロセッサ１０２に通知する（ブロック３０４）。この出願の目的として、"ＡＣ停電"又は"ＡＣ不足"という語句は同義である。いくつかの実施例では、前述したように、その割り込みはＭＣＨ／ＩＣＨ／ＢＢ１０８のＩＣＨ部によってアサートされる。
【００４８】
本実施形態では、割り込みに応じて、プロセッサ１０２は、メモリにサスペンドするプロセスを開始することで応答するＯＳ１２６の一部分（割り込みハンドラ）に実行を切り替える（ブロック３０６）。特に、ＯＳ１２６は、ＭＣＨ／ＩＣＨ／ＢＢ１０８に電源１１６のノーマル電力出力の供給を遮断させて、メモリ１０６のような少数の要素へのスタンバイ電力出力のみ利用可能にすべく、ＭＣＨ／ＩＣＨ／ＢＢ１０８のレジスタ１２２に書き込む。
【００４９】
本実施形態では、システム１００は、ＯＳの書き込みに応じてＢＩＯＳ１２４の指定された割り込みハンドラに制御を移す割り込みを生成して初期化される。いくつかの実施形態では、その割り込みは、アンマスクされない（unmaskable）システム管理割り込み（ＳＭＩ）であってよい。
【００５０】
したがって、本実施形態では、ＢＩＯＳ１２４は、メモリへのサスペンドプロセスに割り込んで、ハードディスクドライブのような持続的記憶装置にその時のシステム状態の持続的コピーを保存することができる（ブロック３０８）。その時のシステム状態の持続的コピーを持続的記憶装置に保存すると、ＢＩＯＳ１２４は、ＭＣＨ／ＩＣＨ／ＢＢ１０８のレジスタ１２２へのＯＳの書き込みを終了する（ブロック３０８）。
【００５１】
いくつかの実施形態では、ＢＩＯＳ１２４は、システム状態１２８ｂの持続的コピーを生成することを実現すべく、少なくとも選択された内容をメモリ１０６から持続的記憶装置１１０に転送するいくつかのデータ転送動作を開始する。より詳しくは、ＢＩＯＳ１２４は、メモリの内容の持続的記憶装置１１０への独立した転送を実現すべく、メモリ１０６のいくつかのダイレクトメモリアクセス（ＤＭＡ）開始する。いくつかの実施形態では、ＤＭＡエンジン（図示せず）によってＤＭＡは実行される。
【００５２】
さらに、バックアップ電力をさらに保護すべく、データ転送動作を開始すると、ＢＩＯＳ１２４は、プロセッサ１０２にノーマル電力消費動作モードに復帰させるためにプロセッサ１０２に割り込むべく１つの期間後に満了するタイマーをセットアップする。タイマーをセットアップすると、ＢＩＯＳ１２４はプロセッサ１０２に低電力消費動作モードに移行させる。より具体的には、プロセッサ１０２がＡＣＰＩ電力状態Ｃ０及びＣ１を実装している一実施形態では、ＢＩＯＳ１２４はプロセッサ１０２を休止して、プロセッサ１０２に電力状態Ｃ０（ノーマル電力消費）での動作から電力状態Ｃ１（低電力消費）に遷移させてよい。
【００５３】
プロセッサ１０２がＡＣＰＩ電力状態Ｃ２或いはＣ２及びＣ３を実装している他の実施形態では、ＢＩＯＳ１２４はプロセッサ１０２に電力状態Ｃ２又はＣ３に遷移させる。
【００５４】
タイマーが満了し、プロセッサ１０２が割り込まれると、ＢＩＯＳ１２４は再び制御を与えられる。このとき、ＢＩＯＳ１２４は複数のデータ転送動作が完了したかをチェックする。いくつかの実施形態では、ＢＩＯＳ１２４は、ＤＭＡを実行するためにメモリ１０４にアロケートされたコントロールブロックの１つの中の完了ビットをチェックする。
【００５５】
コピー動作が完了するのに要する時間は、コピーされるメモリ１０６（例えば、アロケートされたメモリ）の量に依存し、そのスピードデータは持続的記憶装置１１０に転送されてよい。いくつかの実施形態では、ＢＩＯＳ１２４がプロセッサ１０２を低電力消費状態にする期間は、コピー動作を完了するのに要する時間の見積もりに基づく（できるだけ早くシステム１００をメモリにサスペンドされた状態にすることを実現するために、保守側にバイアスして、いくらかの変動のマージンを許容する）。ＢＩＯＳ１２４は、デフォルトの見積もりで予め設定されるか、見積もりを直接計算してよい。
【００５６】
したがって、プロセッサ１０２がノーマル電力消費モードに戻ったときにＢＩＯＳ１２４が最初にデータ転送動作の完了をチェックしたとき、典型的には、データ転送動作はまだ完全には完了していない。この実施形態では、ＢＩＯＳ１２４は、複数のチェックの間のウェイト時間の大きさを減少させながら、単にデータ転送動作の完了を繰り返しチェックする。
【００５７】
しかしながら、他の実施形態、特にＢＩＯＳ１２４がプロセッサ１０２に低電力消費動作モードで動作させる期間が保護的に選択された短い期間である他の実施形態では、ＢＩＯＳ１２４は、電力保護プロセス、すなわちタイマーをセットアップして、プロセッサ１０２に低電力消費動作モードに移行させる電力保護プロセスを再び繰り返してよい。この電力保護プロセスは、より一層保守的な短い期間で繰り返される。
【００５８】
他にも、ＤＭＡエンジンは、前述のＢＩＯＳに制御を戻すことを促進すべく、（タイマーに代えて）プロセッサに割り込みをする機能を備えてよい。
【００５９】
どの場合でも、やがてＢＩＯＳ１２４は、データ転送動作が完了したこと、すなわちシステム状態１２８ｂの持続的コピーが生成されたことを判断する。そのとき、いくつかの実施形態では、ＢＩＯＳ１２４は、システム状態１２８ｂの持続的コピーを、有効な保存されたコピーとしてマークする。いくつかの実施形態では、ＢＩＯＳ１２４はフラグをセッティングすることによってその有効性をマークする。一実施形態では、そのフラグは持続的記憶装置１１０にも保存される。
【００６０】
さらに、いくつかの実施形態では、サスペンドプロセスはユーザ、アプリケーション、又は他の理由によってＯＳ１２６によっても開始されるので、ＢＩＯＳ１２４は、制御が与えられた初期に、ＡＣ停電状態に応じてサスペンドプロセスが開始されているか、すなわちシステム１００がＡＣ停電状態にあるか否かを判断する。サスペンドプロセスがＡＣ停電状態に応じて開始されたことを判断すると、ＢＩＯＳ１２４はさらに、システム１００をメモリにサスペンドされた状態に維持するバックアップ電力が十分であることの可能性を増加すべく、ＡＣが再び利用できるようになるまで、ＡＣの再アベイラビリティを除く全て起動イベントをシステム１００起動するのに不適当とするようレジスタ１２２を設定する。
【００６１】
ある期間の後にバックアップ電源１３２の自動的な遮断をサポートする一実施形態においては、ブロック３０８において、ＢＩＯＳ１２４はまた、ＭＣＨ／ＩＣＨ／ＢＢ１０８のレジスタ１２２へのＯＳの書き込みを終了する前に、その期間が経過した後に引き続いてバックアップ電源１３２を遮断すべく装置をセットアップする。一つの方法は、ＢＩＯＳ１２４にバックアップ電力を遮断する機会を与えるべく、システム１００を起動させるためのシステムのリアルタイムクロック（ＲＴＣ）の使用を含む（さらに詳しくは上記同時係属中の出願を参照すること）。
【００６２】
この方法では、ＡＣの再アベイラビリティを、システム１００を起動するただ１つの適格な起動イベントとして限定する代わりに、ＢＩＯＳ１２４はシステム１００を起動する適切な起動イベントとしてＲＴＣを（例えばそれを不適切としないことによって）さらに含める。
【００６３】
前述したように、レジスタ１２２への書き込み動作は、メモリ１０６のような少数の要素のためのスタンバイ電力出力の供給を残して、ＭＣＨ／ＩＣＨ／ＢＢ１０８による電源１１６のノーマル電力出力の供給の遮断を引き起こす。
【００６４】
このように、システム１００を"メモリにサスペンドされた"状態２１６にすべくＯＳが開始することに応じて、システム１００は代わりに"システム状態の持続的コピーが保存され、メモリにサスペンドされた"状態２１８に好ましくは置かれる。システム１００は後に、ＡＣ電源が回復したときに、スムーズにアクティブ状態に戻されるだろう。
【００６５】
図３ａを参照するとさらに、前述したように、ＢＩＯＳ１２４は、システム状態の持続的コピーを保存している間に、例えばＡＣ電力の回復によって割り込まれ得る。そのとき、本実施形態では、ＢＩＯＳ１２４は保存動作を"中止"し、サスペンドプロセスを完了すべく速やかに実行し（ブロック３０８）、その結果システム１００がメモリにサスペンドされた状態２１６（遷移２４０の最初の部分）になる。
【００６６】
このとき、システム１００はビジュアルオフ状態２１４（遷移２４０の残りの部分）に速やかに戻る。このプロセスは、図４で後に参照しながら説明される、サスペンド状態２１８からビジュアルオフ状態２１４に遷移するプロセスに似ている。
【００６７】
いくつかの実施形態では、ＢＩＯＳ１２４は、適格な（複数の）起動イベントの（複数の）ソースを継続的にポーリングすることによって、データ転送動作が実行されている間におけるＡＣ電力の回復を検出する。ＡＣの再アベイラビリティがただ１つの適切な起動イベントである実施形態では（ＡＣ停電に応じてサスペンドプロセスが開始された場合には）、ＡＣの充足又は不足状態を提供するソース（例えば電源）だけがポーリングされる。
【００６８】
データ転送動作が実行されている間にプロセッサ１０２に低電力消費モードで動作させることがサポートされる実施形態では、ＢＩＯＳ１２４は、データ転送動作の完了（プロセッサ１０２がノーマル電力消費動作モードに回復するとき）をチェックするのと実質的に同時に、そのポーリングを実行してよい。
【００６９】
図３ｂを参照すると、さらに、ＡＣ停電又は不足は、ＢＩＯＳ１２４がシステム状態の持続的コピーを保存している間、又はＢＩＯＳ１２４が保存プロセスを完了した後に、システム１００が"サスペンドされた"状態２１８にある間にも生じ得る。その保存プロセスは、例えばインアクティビティのような、ＡＣ停電以外の理由によって開始されるサスペンドプロセスの一部である。図３ａ〜３ｂはそれぞれ、前述の状況のそれぞれの下で発生したＡＣ停電状態に応答する、システム１００の関連する動作フローのそれぞれの一実施形態を示す。
【００７０】
図３ｂに示されるように、前者（すなわち、ＡＣ停電以外の理由により開始されたサスペンドプロセスの一部としてＢＩＯＳ１２４がシステム状態の持続的コピーを保存している間の、ＡＣ停電）に対して、ＡＣ停電状態（ブロック３２２）を示しているにもかかわらず、ＢＩＯＳ１２４はシステム状態の持続的コピーを保存すること完了すべく進め、その後、サスペンドプロセスを続ける（ブロック３２４）。この時点で、システム１００はバックアップ電源１３２によって電力が供給されていることに留意すること。さらに、いくつかの実施形態では、ＡＣ停電以外の理由によってサスペンドプロセスが開始された場合には、ＢＩＯＳ１２４は、システム状態１２８ａの持続的コピーを生成している間の前述の電力保護操作をスキップしてよい。しかしながら、ＢＩＯＳ１２４は、システム状態１２８の持続的コピーが生成されている間にＡＣ停電を検出すると、電力保護操作を開始してよい。すなわち、ＢＩＯＳ１２４は、プロセッサ１０２に、１つの期間にわたって低電力消費動作モードに移行させ、前述のように、ＢＩＯＳ１２４がデータ転送動作の完了をチェックしている間、及び／又はＡＣの再アベイラビリティに応じて、ノーマル電力消費動作モードに戻る。
【００７１】
図３ｂを参照すると、次に、ＭＣＨ／ＩＣＨ／ＢＢ１０８は、スタンバイ電力だけを残してノーマル電力の供給を遮断し、これにより、前述のようにシステム１００をサスペンド状態２１８にする（ブロック３２６）。しかしながら、ＭＣＨ／ＩＣＨ／ＢＢ１０８は、速やかにノーマル電力の供給を再び可能にし、システム１００の起動を開始する（ブロック３２６）。
【００７２】
そして、ＢＩＯＳ１２４は、ＯＳ１２６によって予めセットアップされた再開ベクトルを用いて、ハードウェア要素を初期化してレジュームプロセスを開始する（ブロック３２８）。
【００７３】
ブロック３３０においてＯＳ１２６はレジュームプロセスを完了する。しかしながら、ＯＳは、ＡＣ停電状態を考慮して、速やかに他のサスペンドプロセスを再び開始して、図３ａを参照して先に説明されたプロセスが実行される。
【００７４】
図３ｃは、システム１００がサスペンド状態２１８にある間に発生したＡＣ停電状態に応答する、（遮断機能を有する）システム１００の関連する動作フローの一実施形態を示す。
【００７５】
図３ｃに示されるように、後者（すなわち、ＡＣ停電以外の理由によって開始されたサスペンドプロセスの一部としてＢＩＯＳ１２４がシステム状態の持続的コピーの保存を完了した後のＡＣ停電）に対しては、ＡＣ不足が通知されたとき（ブロック３４２）、ＭＣＨ／ＩＣＨ／ＢＢ１０８はノーマル電力の供給を再開して、システム起動プロセスを開始する（ブロック３４４）。
【００７６】
そして、図３ｂのプロセスと同様に、ＢＩＯＳ１２４はハードウェア要素を初期化して、レジュームプロセスを開始する（ブロック３４６）。その後、ブロック３４８において、ＯＳは前述したようにレジュームプロセスを完了する。しかしながら、ＯＳは、ＡＣ停電状態を考慮して、他のサスペンドプロセスを速やかに再開して、図３ａを参照して先に説明されたプロセスが実行される。
【００７７】
（例えばインアクティビティによって開始されたサスペンドプロセスの一部としてシステム状態の持続的コピーをＢＩＯＳ１２４が保存しているとき又は保存を終了したときの、ＡＣ不足に応答するための）図３ｂ及び３ｃの前述の実施形態のそれぞれは、他のサスペンドプロセスを再度開始すべくＯＳ１２６にレジュームするアプローチを用いて説明された。しかしながら、他の実施形態は、ＯＳ１２６にレジュームせずに実施され得る。例えば、ＢＩＯＳ１２４はさらに、例えばインアクティビティによって開始されたサスペンドプロセスの一部としてシステム状態の持続的コピーをＢＩＯＳ１２４が保存していたとき又は保存を完了したときにＡＣが停電したためにシステム１００が起動しているということを理解するのに十分な情報を維持してよい。さらに、ＢＩＯＳ１２４は、システム１００が起動している理由を理解するとともに、ＡＣ停電によって開始されたサスペンドプロセスの間に（図３ａを参照して前述したような）通常実行する動作を行うことを進めてよい。
【００７８】
図４は、サスペンド状態２１８においてＤＣ電源で動作している間にＡＣの再充足状態に応じて、システム１００をアクティブ状態にレジュームするシステム１００の関連する動作フローを示す。先の説明を振り返ると、本実施形態では、サスペンド状態２１８は" システム状態の持続的コピーが保存されるとともにメモリにサスペンドされた"状態である。
【００７９】
図示されるように、本実施形態では、"システム状態の持続的コピーが保存されるとともにメモリにサスペンドされた"状態２１８においてＤＣ電源１３２で動作している間、電源１１６はＡＣの充足又は不足を監視して、それに応じてＡＣの充足又は不足を示す信号を出力する（ブロック４０２）。また、先に説明したように、他の実施形態において、ＡＣの充足又は不足の監視及び信号送信は、電源１１６以外の他の要素によって実行され得る。電源１１６にＡＣが不足している限り、その監視及び信号送信が継続する。
【００８０】
しかしながら、電源１１６にＡＣが再度充足すると、モニタ１３０はそのように示す信号を出力する。本実施形態では、ＭＣＨ／ＩＣＨ／ＢＢ１０８は、信号１３６にデバイス起動イベントとして応答して、電源１１６のノーマル電力出力のシステム１００の複数の要素への供給を再び可能にして、ＢＩＯＳ１２４に制御を移す（ブロック４０４）。前述したように、いくつかの実施形態では、デバイス起動イベントは、ＭＣＨ／ＩＣＨ／ＢＢ１０８のＩＣＨ部によって処理される。
【００８１】
ブロック４０６において、ＢＩＯＳ１２４は様々なハードウェア要素の初期化を適宜実行して、（メモリへのサスペンドプロセスの一部として）ＯＳ１２６によって前に準備されたレジュームベクトルに制御を移す。バックアップ電源を遮断する機能を持つ実施形態において、ＢＩＯＳ１２４はさらにスケジュールされた遮断をキャンセルしてよい。
【００８２】
ブロック４０８において、ＯＳ１２６はレジュームプロセスを完了し、システム１００はメモリ１０６内に前もってサスペンドされたシステム状態から開始して、動作を継続する。
【００８３】
いくつかの実施形態では、ＭＣＨ／ＩＣＨ／ＢＢ１０８及び／又は電源１１６に備えられた"遅延"機能に加えて又は代えて、ＢＩＯＳ１２４は、"ＡＣ再充足"起動イベントに応答して、（例えば、応答する前にある短い期間ウェイトすることによって）上記の"レジューム"関連の動作の実行を遅延する機能を備えてよい。
【００８４】
同様に、その付加的な機能は、システム１００をレジュームする前にＡＣが安定していることを保証することを助けるだろう。
【００８５】
図５は、無給電状態（Ｇ３）２０６で動作している間の、ＡＣ再充足状態に応答する、システム１００の関連する動作フローを示す。本実施形態では、電源１１６にＡＣが再充足したときに、そのイベントはシステム１００にコールドスタート・リセットをひき起こす。それに応じて、ＢＩＯＳ１２４は制御が与えられ、様々なハードウェア要素を初期化するコールドスタート処理を開始する。コールドスタートプロセスの一部として、ＢＩＯＳ１２４は、システム状態の有効な持続的コピーが存在するか否かを決定する（ブロック５０２）。
【００８６】
システム状態の有効な持続的コピーが存在する場合には、ＢＩＯＳ１２４は、システム状態の持続的コピーをメモリ１０６に保存すべく、いくつかのデータ転送動作を開始する（ブロック５０４）。さらに、データ転送動作の開始より前又は実質的に同時に、ＢＩＯＳ１２４は、発見されたシステム状態の持続的コピーを無効としてマークする。そのマーキング動作は、システム状態の持続的コピーのそれぞれに対するただ１つの試みられた回復を効果的に可能にするが、そのマーキング動作はシステム１００の整合性を好ましく保証するということに留意すること。
【００８７】
他の実施形態では、ＢＩＯＳ１２４は、ＯＳが無事にリスタートするか否かをチェックする機能をさらに備えてよい。ＢＩＯＳ１２４は、そのようなチェックを実行する機会を与えるために、例えばウォッチドッグタイマーを用いてよい。これらの実施形態では、ＢＩＯＳ１２４は、ＯＳが無事リスタートした後、又はｎ回の失敗した試みの後に、システム状態の持続的コピーを無効とマークしてよい。ｎは設定可能であってよい。
【００８８】
図５の参照を続けて、システム状態の持続的コピーをメモリ１０６にコピーすることが成功すると、ＢＩＯＳ１２４はレジュームプロセス下で実行される動作に似た動作を継続して、ＯＳ１２６がレジュームプロセスを完了し、メモリ１０６の中の回復されたシステム状態から開始してシステム１００が動作を継続することになる。
【００８９】
ＢＩＯＳ１２４がＡＣの再アベイラビリティを除く全ての起動イベントの適格性を無効にする実施形態では、ＢＩＯＳ１２４は、ＯＳ１２６にレジュームする前に、無効にされた起動イベントの適格性を再び有効にしてよい。他にも、起動イベントの適格性を再び有効にすることは、レジュームプロセスの一部としてＯＳ１２６によって提供されるレジューム通知に応答して、様々なデバイスのデバイスドライバによって再び設定され得る。
【００９０】
しかしながら、いくつかの理由によってシステム状態の持続的コピーが見つからない場合には、保存されたシステム状態の持続的コピーの回復は失敗し、ＢＩＯＳ１２４は、コールドスタートプロセスで継続し、ハードウェア要素の様々な初期化を実行し、それからＯＳ１２６に移る（ブロック５０８）。そのとき、ＯＳ１２６はコールドスタート処理を完了して、システム１００はメモリ１０６中の新しいシステム状態から開始して動作を続ける（ブロック５１０）。
【００９１】
このように、上記から分かるように、ＡＣが不足している場合において動作状態を保存する方法が説明された。特に、システム１００の複数の実施形態は、ＡＣ不足の間において、少なくとも、持続的コピーを作成することができる十分な期間にわたって、ＤＣ電源によってメモリにサスペンドされた状態に維持され得る。その結果、システム１００の複数の実施形態は、ＡＣが回復したときに、保存されたシステム状態に復帰し得る。
【００９２】
前述したように、この機能は、コンピューティングデバイスのユーザに、テレビのような従来の消費者向け電化製品により近い使いやすい体験を提供することにおいて特に有用である。
【００９３】
上記の複数の実施例によってこの発明が説明されたが、記載された複数の実施形態にこの発明が限定されないことを当業者は理解するだろう。他の複数の実施形態は、添付の複数の特許請求の範囲の趣旨及び範囲内の変形及び変更とともに実施され得る。したがって、本記載は、限定的ではなく説明的とみなされるべきである。
【図１】
2007505396.tif 000003
【図２ａ】
2007505396.tif 000004
【図２ｂ】
2007505396.tif 000005
【図２ｃ】
2007505396.tif 000006
【図２ｄ】
2007505396.tif 000007
【図３ａ】
2007505396.tif 000008
【図３ｂ】
2007505396.tif 000009
【図３ｃ】
2007505396.tif 000010
【図４】
2007505396.tif 000011
【図５】
2007505396.tif 000012
【国際調査報告】
2007505396.tif 000013
2007505396.tif 000014
2007505396.tif 000015