(57)【特許請求の範囲】
【請求項１】
情報処理装置であって、
前記情報処理装置の電源をオフにするための指示を受け付ける受付手段と、
前記受付手段が前記指示を受け付けた場合に、前記情報処理装置のソフトウェアが変更されるか否かに基づいて、前記情報処理装置の電源をオフにする必要があるか否か判断する判断手段と、
前記判断手段が前記情報処理装置の電源をオフにする必要があると判断した場合に、前記情報処理装置の電源をオフにするように制御し、前記判断手段が前記情報処理装置の電源をオフにする必要がないと判断した場合に、前記情報処理装置の電源をオフにしないように制御する制御手段とを有することを特徴とする情報処理装置。
【請求項２】
前記制御手段は、前記判断手段が前記情報処理装置の電源をオフにする必要があると判断した場合に、前記情報処理装置のシャットダウン処理を実行して、前記情報処理装置の電源をオフにするように制御することを特徴とする請求項１に記載に情報処理装置。
【請求項３】
前記制御手段は、前記判断手段が前記情報処理装置の電源をオフにする必要があると判断した場合に、前記情報処理装置を再起動させるように制御することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記制御手段は、前記判断手段が前記情報処理装置の電源をオフにする必要がないと判断した場合に、前記情報処理装置を省電力状態に移行させるように制御することを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記省電力状態は、記憶手段に記憶された情報を用いて復帰可能なサスペンド状態であることを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記情報処理装置が前記省電力状態のときに、前記受付手段が前記情報処理装置の電源をオンにするための指示を受け付けた場合、前記制御手段は、前記ソフトウェアを初期化せずに、前記情報処理装置をスタンバイ状態にすることを特徴とする請求項４又は５に記載の情報処理装置。
【請求項７】
前記情報処理装置の電源がオフのときに、前記受付手段が前記情報処理装置の電源をオンにするための指示を受け付けた場合、前記制御手段は、前記ソフトウェアを初期化して、前記情報処理装置をスタンバイ状態にすることを特徴とする請求項１乃至５の何れか１項に記載の情報処理装置。
【請求項８】
前記情報処理装置の電源をオフにするための指示は、前記情報処理装置の電源スイッチがＯＦＦにすることであることを特徴とする請求項１乃至７の何れか１項に記載の情報処理装置。
【請求項９】
前記ソフトウェアは、ＯＳを含むことを特徴とする請求項１乃至８の何れか１項に記載の情報処理装置。
【請求項１０】
前記ソフトウェアは、モジュール・ドライバを含むことを特徴とする請求項１乃至９の何れか１項に記載の情報処理装置。
【請求項１１】
用紙に画像を形成する画像形成手段をさらに有することを特徴とする請求項１乃至１０の何れか１項に記載の情報処理装置。
【請求項１２】
原稿の画像を読み取る読取手段をさらに有することを特徴とする請求項１乃至１１の何れか１項に記載の情報処理装置。
【請求項１３】
情報処理装置の制御方法であって、
前記情報処理装置の電源をオフにするための指示を受け付ける受付ステップと、
前記受付ステップで前記指示を受け付けた場合に、前記情報処理装置のソフトウェアが変更されるか否かに基づいて、前記情報処理装置の電源をオフにする必要があるか否か判断する判断ステップと、
前記判断ステップで前記情報処理装置の電源をオフにする必要があると判断された場合に、前記情報処理装置の電源をオフにするように制御し、前記判断ステップで前記情報処理装置の電源をオフにする必要がないと判断された場合に、前記情報処理装置の電源をオフにしないように制御する制御ステップとを有することを特徴とする情報処理装置の制御方法。
【請求項１４】
情報処理装置のコンピュータを、
前記情報処理装置の電源をオフにするための指示を受け付ける受付手段と、
前記受付手段が前記指示を受け付けた場合に、前記情報処理装置のソフトウェアが変更されるか否かに基づいて、前記情報処理装置の電源をオフにする必要があるか否か判断する判断手段と、
前記判断手段が前記情報処理装置の電源をオフにする必要があると判断した場合に、前記情報処理装置の電源をオフにするように制御し、前記判断手段が前記情報処理装置の電源をオフにする必要がないと判断した場合に、前記情報処理装置の電源をオフにしないように制御する制御手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理装置の制御方法、及び、プログラムに関する。
【背景技術】
【０００２】
近年の情報処理システムは、プログラムの増大によりシステムの起動時間が増える傾向にあり、このようなシステムを高速に起動させるため、サスペンド・レジューム（若しくはハイバネーション）機能を使用する提案がなされている。
【０００３】
特許文献１では、復帰時には予め用意した、起動が完了した時点の各プログラムのメモリイメージをロードすることで、アプリケーションの起動開始から起動完了までの時間を短縮する発明が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２８４４９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
通常、ユーザは、情報処理システムの全ての初期化を行う起動と、レジュームを使用した起動との処理の違いを意識することは無く、ユーザが電源ボタンをオンすることにより、起動設定に応じたどちらかの起動処理が行われている。
【０００６】
一方、情報処理システムを終了したい場合、ユーザは、状況に応じてシャットダウン処理か、サスペンド処理かを選択する必要がある。
また、情報処理システムの定常状態において、システムの再起動が必要な設定変更が行われた場合に、ユーザはその設定変更がシステム再起動の必要な変更であることを判断し、起動設定に関わらずシャットダウン処理を行う必要がある。
【０００７】
しかしながら、このような判断を一般のユーザが間違いなく行うことは非常に困難であった。このため、シャットダウンの必要な変更があったにも関わらずシャットダウンが行われずに変更が適切に反映されなかったり、シャットダウンの必要が無いにも関わらずシャットダウンを行ってしまい次回の起動時間が無駄に長くなってしまったりしていた。
【０００８】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、ユーザに意識させることなく、サスペンド（若しくはハイバネーション）と、シャットダウンとを適切に使い分け、装置の適切な初期化、高速起動、及び、優れたユーザビリティを実現した情報処理環境を実現する仕組みを提供することである。
【課題を解決するための手段】
【０００９】
本発明は、情報処理装置であって、前記情報処理装置の電源をオフにするための指示を受け付ける受付手段と、前記受付手段が前記指示を受け付けた場合に、前記情報処理装置のソフトウェアが変更されるか否かに基づいて、前記情報処理装置の電源をオフにする必要があるか否か判断する判断手段と、前記判断手段が前記情報処理装置の電源をオフにする必要があると判断した場合に、前記情報処理装置の電源をオフにするように制御し、前記判断手段が前記情報処理装置の電源をオフにする必要がないと判断した場合に、前記情報処理装置の電源をオフにしないように制御する制御手段とを有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、電源オフ操作を行ったユーザに意識させることなく、休止処理とシャットダウン処理とを適切に使い分け、情報処理装置の適切な初期化、高速起動、及び、優れたユーザビリティを実現することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施例を示す情報処理装置を適用可能なコントローラ部が搭載された情報処理システムの一例を示すブロック構成図である。
【図２】コントローラ部１１０の構成の一例を示すブロック図である。
【図３】本実施例の情報処理システムの状態遷移図である。
【図４】本実施例の情報処理システムがスタンバイ状態からサスペンド状態に移行する処理を示す第１のフローチャートである。
【図５】本実施例の情報処理システムがスタンバイ状態からサスペンド状態に移行する処理を示す第２のフローチャートである。
【図６】本実施例の情報処理システムがスリープ状態からサスペンド状態に移行する処理を示すフローチャートである。
【図７】情報処理システム１の電源供給構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【実施例１】
【００１３】
図１は、本発明の一実施例を示す情報処理装置を適用可能なコントローラ部が搭載された情報処理システムの一例を示すブロック構成図である。
図１において、１は本発明の情報処理装置の一実施例を示す情報処理システム（画像入出力システム）である。情報処理システム１は、イーサネット（登録商標）等のＬＡＮ（Ｌｏｃａｌ Ａｒｅａ Ｎｅｔｗｏｒｋ）４００にてホストコンピュータ（本実施例では第一のホストコンピュータ３、第二のホストコンピュータ４）に接続されている。
【００１４】
情報処理システム１は、リーダ部２と、プリンタ部６と、操作部７と、ハードディスク部８と、ＦＡＸ部９０と、コントローラ部１１０とを有する。
なお、リーダ部２は、画像データの読取処理を行うためのものである。プリンタ部６は、画像データの出力処理を行うためのものである。操作部７は、画像データの入出力操作を行うキーボード、電源スイッチを含む各種ハードキー、及び画像データや各種機能の表示などを行う液晶パネルを備える。ハードディスク部８には、制御プログラムや画像データ等が予め書き込まれている（コンピュータ読み取り可能に記録されている）。ＦＡＸ部９０は、ファクシミリの入出力処理を行うためのものである。
【００１５】
また、コントローラ部１１０は、リーダ部２、プリンタ部６、操作部７、ハードディスク部８、ＦＡＸ部９０等の各構成要素と接続され、該各構成要素を制御する。
さらに、リーダ部２は、原稿用紙を搬送する原稿給紙ユニット（部）１０と、原稿画像を光学的に読み取って電気信号としての画像データに変換するスキャナ部１１とを有する。
【００１６】
プリンタ部６は、記録用紙を収容する複数段の給紙カセットを備えた給紙ユニット（部）１２と、画像データを記録用紙に転写、定着するマーキングユニット（部）１３と、印字された記録用紙にソート処理やステイプル処理を施して、外部に排出する排紙ユニット（部）１４とを有している。
【００１７】
図２は、コントローラ部１１０の構成の一例を示すブロック図である。
図２に示すように、コントローラ部１１０は、大きく分けて、一般的な情報処理を司るメインＣＰＵ部２２００（メインボード）と、画像形成処理を司るサブＣＰＵ部２２２０（サブボード）から構成される。
【００１８】
なお、メインＣＰＵ部２２００とサブＣＰＵ部２２２０を一つのボードとして構成することが可能であることは言うまでも無い。しかし、説明を簡潔にするため本実施形態では、メインＣＰＵ部２２００とサブＣＰＵ部２２２０の２つから構成される場合を例に取って、以降説明していく。
【００１９】
メインＣＰＵ部２２００には、ブートロム（ＢｏｏｔＲＯＭ）２２０１、ＣＰＵ２２０２、揮発性メモリ（ＤＲＡＭ２２１３、ＳＲＡＭ２２１６）と、メモリコントローラ（Ｍｅｍｏｒｙ Ｃｏｎｔｒｏｌｌｅｒ）２２１２が実装される。
【００２０】
ブートロム２２０１は、起動プログラムが格納された不揮発性メモリである。ＣＰＵ２２０２は、起動プログラム及び他のプログラムを実行する演算装置である。揮発性メモリ２２１３は、プログラムやデータを一時的に格納する揮発性メモリである。メモリコントローラ２２１２は、揮発性メモリ２２１３を制御する。
【００２１】
また、メインＣＰＵ部２２００には、上記の他に、サブＣＰＵ部２２２０との接続を司るバスコントローラ（Ｂｕｓ Ｃｏｎｔｒｏｌｌｅｒ）２２０４、ハードディスクドライブ（ＨＤＤ）２２０９を制御するディスクコントローラ（Ｄｉｓｋ Ｃｏｎｔｒｏｌｌｅｒ）２２０５等も実装される。なお、ハードディスクドライブ２２０９は、図１のハードディスク部８に格納されている。
【００２２】
また、ディスクコントローラ２２０５には、接続デバイスへのアクセス可否を切り替えるポートスイッチ（Ｐｏｒｔ Ｓｗｉｔｃｈ）２２０６を介してポートセレクタ（Ｐｏｒｔ Ｓｅｌｅｃｔｏｒ）２２０７が接続されている。
【００２３】
ポートセレクタ２２０７には、フラッシュディスク（Ｆｌａｓｈ Ｄｉｓｋ）２２０８及びハードディスクドライブ２２０９が接続され、ポートセレクタ２２０７により選択される何れかが、ディスクコントローラ２２０５から制御可能となる。
【００２４】
なお、本実施例では、ディスクコントローラ２２０５、ポートスイッチ２２０６及びポートセレクタ２２０７は、別々のモジュールとして記載しているが、これらの一部あるいは全部を一つのモジュールとして実装することが可能である。
【００２５】
なお、フラッシュディスク２２０８又はハードディスクドライブ２２０９には、ＯＳ（オペレーティングシステム、アプリケーションプログラム）等の各種プログラムが格納されている。
【００２６】
また、メインＣＰＵ部２２００には、メインＣＰＵ部２２００とサブＣＰＵ部２２２０をバスで接続するためにバスブリッジ（Ｂｕｓ Ｂｒｉｄｇｅ）２２１４が実装される。さらに、メインＣＰＵ部２２００には、メインＣＰＵ部２２００とサブＣＰＵ部２２２０のメモリを転送するＤＭＡコントローラ（ＤＭＡ Ｃｏｎｔｒｏｌｌｅｒ）２２１５が実装される。
【００２７】
一方、サブＣＰＵ部２２２０には、ブートロム（Ｂｏｏｔ ＲＯＭ）２２２１、ＣＰＵ２２２２、揮発性メモリ（ＤＲＡＭ）２２４２、メモリコントローラ（Ｍｅｍｏｒｙ Ｃｏｎｔｒｏｌｌｅｒ）２２４０が実装される。
【００２８】
ブートロム２２２１は、起動プログラムが格納された不揮発性メモリである。ＣＰＵ２２２２は、起動プログラムや他のプログラムを実行する演算装置である。揮発性メモリ２２４２は、プログラムやデータを一時的に格納する揮発性メモリである。メモリコントローラ２２４０は、揮発性メモリ２２４２を制御する。
【００２９】
また、サブＣＰＵ部２２２０には、上記の他に、バスコントローラ（Ｂｕｓ Ｃｏｎｔｒｏｌｌｅｒ）２２２５が実装されている。さらに、サブＣＰＵ部２２２０には、イメージプロセッサ（Ｉｍａｇｅ Ｐｒｏｃｅｓｓｏｒ）２２２４、デバイスコントローラ（Ｄｅｖｉｃｅ Ｃｏｎｔｒｏｌｌｅｒ）２２２６も実装されている。
【００３０】
バスコントローラ２２２５は、メインＣＰＵ部２２００との接続を司る。イメージプロセッサ２２２４は、画像形成処理を高速に実行する。デバイスコントローラ２２２６は、接続されたファックススエンジン（ＦＡＸ Ｅｎｇｉｎｅ）２２２７、プリントエンジン（Ｐｒｉｎｔ Ｅｎｇｉｎｅ）２２２８、スキャンエンジン（Ｓｃａｎ Ｅｎｇｉｎｅ）２２２９等の画像形成デバイスの制御や画像形成処理を実行する。なお、ＦＡＸエンジン２２２７、プリントエンジン２２２８、スキャンエンジン２２２９はそれぞれ、図１に示したＦＡＸ部９０、プリンタ部６、リーダ部２に格納されている。
【００３１】
また、サブＣＰＵ部２２２０には、メインＣＰＵ部２２００とサブＣＰＵ部２２２０のメモリを転送するＤＭＡコントローラ（ＤＭＡ Ｃｏｎｔｒｏｌｌｅｒ）２２４１が実装される。
【００３２】
また、コントローラ部１１０は、図示しないネットワークインタフェースを有する。このネットワークインタフェースを制御するネットワーク・ドライバは、フラッシュディスク２２０８、ハードディスクドライブ２２０９、又はブートロム２２２１等に格納されている。また、ＦＡＸエンジン２２２７、プリントエンジン２２２８、スキャンエンジン２２２９等を含む各種モジュールを制御する各モジュール・ドライバは、フラッシュディスク２２０８、ハードディスクドライブ２２０９、又はブートロム２２２１等に格納されている。
【００３３】
図３は、本実施例の情報処理システムの状態遷移図である。
図３に示すように、コントローラ部１１０は、通電されていない状態（システムＯＦＦ状態）（３０１）から電源スイッチＯＮ操作により起動処理が実行されてスタンバイ状態（３０２）に移行する。このスタンバイ状態（３０２）では、コピーやプリントといったジョブを受け付けることが出来る。なお、起動処理では、情報処理システム１は初期化される。
【００３４】
スタンバイ状態（３０２）でジョブを受け付けたコントローラ部１１０は、ジョブ実行状態（３０３）に移行し、各種のジョブ処理を行う。ジョブが終了すると、コントローラ部１１０は、スタンバイ状態（３０２）に移行する。
【００３５】
また、コントローラ部１１０は、スタンバイ状態（３０２）において、一定時間操作が無い場合は、スリープ状態（３０４）に移行する。そして、スリープ状態（３０４）において、スイッチ操作、ネットワークパケット受信や指定時刻タイマー等のスリープ復帰要因が発生したら、コントローラ部１１０は、スタンバイ状態（３０２）に移行（復帰）する。
【００３６】
また、コントローラ部１１０は、スタンバイ状態（３０２）での電源スイッチＯＦＦ操作により、シャットダウンの必要があるか判定する（３１０）。そして、シャットダウンの必要がある場合（３１０でＹｅｓ）、コントローラ部１１０は、カーネルやドライバのシャットダウン処理を行い、システムＯＦＦ状態（３０１）に移行する。一方、シャットダウンの必要が無い場合（３１０でＮｏ）、コントローラ部１１０は、カーネルやドライバのサスペンド処理を行い、サスペンド状態（３０５）に移行する。なお、シャットダウン処理とは、情報処理システム１を終了させる終了処理に対応する。また、サスペンド処理とは、情報処理システム１の状態をＤＲＡＭ２２１３、ＨＤＤ２２０９、又はフラッシュディスク２２０８に記憶した後に情報処理システム１を休止させる休止処理に対応する。なお、本実施例でサスペンドという場合、サスペンドのみならずハイバネーションも含むものとする。
【００３７】
サスペンド状態（３０５）のコントローラ部１１０は、電源スイッチＯＮ操作によりレジューム処理を行い、スタンバイ状態（３０２）に移行する。なお、レジューム処理とは、サスペンド処理時にＤＲＡＭ２２１３、ＨＤＤ２２０９、又はフラッシュディスク２２０８に記憶された情報を用いて、情報処理システム１の状態を、サスペンド前の状態に復帰させる復帰処理に対応する。
【００３８】
以下、図４〜図６のフローチャートを参照して、本実施例の情報処理システムの状態遷移動作について説明する。
図４は、本実施例の情報処理システムがスタンバイ状態３０２からサスペンド状態３０５に移行し、再びスタンバイ状態３０２に移行する処理の一例を示すフローチャートである。なお、このフローチャートの処理は、コントローラ部１１０のＣＰＵ２２０２が、記録媒体（ブートＲＯＭ２２０１、ＨＤＤ２２０９、フラッシュディスク２２０８等）にコンピュータ読み取り可能に記録されるプログラムを実行することにより実現される。
【００３９】
電源スイッチＯＮ操作されたコントローラ部１１０のＣＰＵ２２０２は（Ｓ４０１）、ＯＳカーネルやドライバの初期化を行う（Ｓ４０２）。さらに、ＣＰＵ２２０２は、各種ジョブ操作を行うアプリケーションプログラムを初期化して情報処理システムを稼動させ、スタンバイ状態３０２（ジョブ受付状態）に移行する（Ｓ４０３）。
【００４０】
そして電源スイッチＯＦＦ操作（電源オフ要求）があった場合（Ｓ４０４でＹｅｓ）、ＣＰＵ２２０２は、Ｓ４０５に処理を進める。
Ｓ４０５では、ＣＰＵ２２０２は、シャットダウンフラグに基づいて、情報処理システムのシャットダウン又は再起動（即ち、ＯＳカーネルの初期化やモジュール・ドライバの初期化）の必要性を判断する。なお、シャットダウンフラグは、例えばＨＤＤ２２０９又はフラッシュディスク２２０８内に保持されるものとする。
【００４１】
上記Ｓ４０５でシャットダウン又は再起動が必要であると判断する場合（即ち、シャットダウンフラグがＯＮされる場合）とは、例えば、以下の（１）〜（３）などの場合が考えられる。
（１）ＯＳカーネルの更新処理に入りたい場合。
（２）ＯＳカーネルの起動モード（通常モード、又は、更新モード）を変更したい場合。
（３）任意のモジュール・ドライバ（設定変更を反映させるために再起動が必要となるモジュール・ドライバ）の再起動処理を行いたい場合。
例えば、スタインバイ状態（通常モード）等で、ユーザが操作部７を操作してＯＳの更新（アップデート）を指示したとする。この更新指示を検知した場合、ＣＰＵ２２０２は、シャットダウンが必要であることを意味するフラグ（シャットダウンフラグ）をＯＮに変更し、更新モード起動フラグもＯＮにする。これは、通常モードで起動しているＯＳをシャットダウンし、カーネルの起動モードを「更新モード」に変更して立ち上げ（２）、ＯＳカーネルの更新処理（１）を行うためである。なお、更新モード起動フラグは、例えばＨＤＤ２２０９又はフラッシュディスク２２０８内に保持されるものとする。
また、スタインバイ状態等で、ユーザが操作部７を操作してネットワーク・ドライバの設定（例えば、ＩＰアドレスの設定）を変更したとする。これを検知した場合、ＣＰＵ２２０２は、シャットダウンフラグをＯＮに変更する。これは、ネットワーク・ドライバを再起動し（３）、上記設定を反映させるためである。また、スタインバイ状態等で、ユーザが操作部７を操作してモジュール・ドライバを更新したとする。これを検知した場合、ＣＰＵ２２０２は、シャットダウンフラグをＯＮに変更する。これは、更新したモジュール・ドライバを再起動し（３）、上記更新を反映させるためである。即ち、ＣＰＵ２２０２は、情報処理システム１に特定の変更（上記ネットワークの変更、モジュール・ドライバの更新を含むモジュール・ドライバの初期化が必要な更新）がなされた場合、シャットダウンフラグをＯＮに変更する。
そして、電源スイッチがＯＦＦされると（Ｓ４０４）、ＣＰＵ２２０２は、上記シャットダウンフラグがＯＮの場合、上記Ｓ４０５において、シャットダウン又は再起動が必要であると判断する。一方、上記シャットダウンフラグがＯＦＦの場合、上記Ｓ４０５において、シャットダウン又は再起動が必要無いと判断する。
【００４２】
ＣＰＵ２２０２は、シャットダウン又は再起動の必要があると判断した場合（Ｓ４０５でＹｅｓ）、アプリケーションプログラムの終了処理を行い、ＯＳカーネル・ドライバの終了処理を行って（Ｓ４０６）、システムを終了する（シャットダウン（Ｓ４０７））。即ち、システムＯＦＦ状態（３０１）に移行する。この後、電源スイッチがＯＮされると、ＣＰＵ２２０２は、上記更新モード起動フラグがＯＮの場合、更新モードでＯＳを起動するように制御する。この際、ＯＳカーネル・ドライバの初期化、アプリケーションプログラムの初期化が行われる。
【００４３】
一方、ＣＰＵ２２０２は、上記Ｓ４０５でシャットダウン又は再起動の必要が無いと判断した場合（Ｓ４０５でＮｏ）、カーネル・ドライバのサスペンド処理やハードウェアのサスペンド処理を行って（Ｓ４１０）、サスペンド状態（３０５）に移行する。
【００４４】
このサスペンド状態（３０５）において、電源スイッチＯＮ操作があった場合（Ｓ４１１でＹｅｓ）、ＣＰＵ２２０２は、ハードウェアのレジューム処理やＯＳカーネル・ドライバのレジューム処理を行って（Ｓ４１２）、情報処理システムを稼動させる。そして、ジョブ受付状態（スタンバイ状態３０２）に移行する（Ｓ４０３）。
【００４５】
なお、図４の処理の代わりに、以下の図５の処理を行うように構成してもよい。
図５は、本実施例の情報処理システムがスタンバイ状態３０２から一度システムの再起動を行ってからサスペンド状態３０５に移行し、再びスタンバイ状態３０２に移行する処理の一例を示すフローチャートである。なお、このフローチャートの処理は、コントローラ部１１０のＣＰＵ２２０２が、記録媒体（ブートＲＯＭ２２０１、ＨＤＤ２２０９、フラッシュディスク２２０８等）にコンピュータ読み取り可能に記録されるプログラムを実行することにより実現される。
【００４６】
電源スイッチＯＮ操作されたコントローラ部１１０のＣＰＵ２２０２は（Ｓ５０１）、ＯＳカーネルやドライバの初期化を行う（Ｓ５０２）。さらに、ＣＰＵ２２０２は、各種ジョブ操作を行うアプリケーションプログラムを初期化して情報処理システムを稼動させ、スタンバイ状態３０２（ジョブ受付状態）に移行する（Ｓ５０３）。
【００４７】
そして電源スイッチＯＦＦ操作（電源オフ要求）があった場合（Ｓ５０４でＹｅｓ）、ＣＰＵ２２０２は、Ｓ５０５に処理を進める。
Ｓ５０５では、ＣＰＵ２２０２は、上述のシャットダウンフラグに基づいて、情報処理システムのシャットダウン又は再起動（即ち、ＯＳカーネルの初期化やモジュール・ドライバの初期化）の必要性を判断する。このＳ５０５の処理でシャットダウン又は再起動が必要と判断される場合（即ち、シャットダウンフラグがＯＮされる場合）は、図４の説明で示した通りである。
【００４８】
ＣＰＵ２２０２は、上記Ｓ５０５でシャットダウン又は再起動の必要があると判断した場合（Ｓ５０５でＹｅｓ）、アプリケーションプログラムの終了処理を行い、ＯＳカーネル・ドライバの終了処理を行い（Ｓ５０６）。さらに、ＯＳカーネル・ドライバを再初期化しアプリケーションプログラムも再初期化する（Ｓ５０７）。即ち、システムを再起動する。なお、ＯＳの再起動の際、ＣＰＵ２２０２は、上述した更新モード起動フラグがＯＮの場合、更新モードでＯＳを起動するように制御する。
【００４９】
次に、情報処理システム１が定常状態（スタンバイ状態３０２）に移行してから、ＣＰＵ２２０２は、カーネル・ドライバのサスペンド処理やハードウェアのサスペンド処理を行って（Ｓ５１０）、サスペンド状態（３０５）に移行する。このサスペンド状態（３０５）において、電源スイッチＯＮ操作があった場合（Ｓ５１１でＹｅｓ）、ＣＰＵ２２０２は、ハードウェアのレジューム処理やＯＳカーネル・ドライバのレジューム処理を行って（Ｓ５１２）、情報処理システムを稼動させる。そして、ジョブ受付状態（スタンバイ状態３０２）に移行する（Ｓ５０３）。
【００５０】
一方、ＣＰＵ２２０２は、上記Ｓ５０５でシャットダウン又は再起動の必要が無いと判断した場合（Ｓ５０５でＮｏ）、上記Ｓ５１０〜Ｓ５１２の処理を行って、情報処理システムを稼動させる。そして、ジョブ受付状態（スタンバイ状態３０２）に移行する（Ｓ５０３）。
【００５１】
なお、図５の処理では、再起動が必要な場合の処理に図４の処理より時間がかかるものの、次回、ユーザが電源オンを行った際には、サスペンド状態から復帰するため、図４のように電源オフ状態からの起動より、高速に起動することが可能となる。
【００５２】
次に、図６を用いて、本実施例の情報処理システムがスリープ状態３０４からサスペンド状態３０５に移行し、再びスリープ状態３０４に移行する処理について説明する。
図６は、本実施例の情報処理システムがスリープ状態３０４からサスペンド状態３０５に移行し、再びスリープ状態３０４に移行する処理の一例を示すフローチャートである。なお、このフローチャートの処理は、コントローラ部１１０のＣＰＵ２２０２が、記録媒体（ブートＲＯＭ２２０１、ＨＤＤ２２０９、フラッシュディスク２２０８等）にコンピュータ読み取り可能に記録されるプログラムを実行することにより実現される。
【００５３】
電源スイッチＯＮ操作されたコントローラ部１１０のＣＰＵ２２０２は（Ｓ６０１）、ＯＳカーネルやドライバの初期化を行う（Ｓ６０２）。そして、ＣＰＵ２２０２は、各種ジョブ操作を行うアプリケーションプログラムを初期化して情報処理システムを稼動させ、スタンバイ状態３０２に移行する。ここで、図３で説明したように一定時間操作が無い場合は、ＣＰＵ２２０２は、スリープ処理を行い、スリープ状態（３０４）に移行する（Ｓ６０３）。
【００５４】
次に、電源スイッチＯＦＦ操作（電源オフ要求）があった場合（Ｓ６０４でＹｅｓ）、ＣＰＵ２２０２は、スリープ復帰処理を行って（Ｓ６０５）、スリープ状態から復帰し、一旦スタンバイ状態（３０２）に移行する。スタンバイ状態（３０２）に移行した後、ＣＰＵ２２０２は、上述のシャットダウンフラグに基づいて、情報処理システムのシャットダウン又は再起動（即ち、ＯＳカーネルの初期化やモジュール・ドライバの初期化）の必要性を判断する（Ｓ６０６）。このＳ６０６の処理でシャットダウン又は再起動が必要と判断される場合（即ち、シャットダウンフラグがＯＮされる場合）は、図４の説明で示した通りである。
【００５５】
ＣＰＵ２２０２は、シャットダウン又は再起動の必要があると判断した場合（Ｓ６０６でＹｅｓ）、アプリケーションプログラムの終了処理を行い、ＯＳカーネル・ドライバの終了処理を行って（Ｓ６０７）、システムを終了する（シャットダウン（Ｓ６０８））。即ち、システムＯＦＦ状態（３０１）に移行する。この後、電源スイッチがＯＮされると、ＣＰＵ２２０２は、上記更新モード起動フラグがＯＮの場合、更新モードでＯＳを起動するように制御する。
【００５６】
一方、ＣＰＵ２２０２は、上記Ｓ６０６でシャットダウン又は再起動の必要が無いと判断した場合（Ｓ６０６でＮｏ）、カーネル・ドライバのサスペンド処理やハードウェアのサスペンド処理を行って（Ｓ６１０）、サスペンド状態（３０５）に移行する。
【００５７】
このサスペンド状態（３０５）において、電源スイッチＯＮ操作があった場合（Ｓ６１１でＹｅｓ）、ＣＰＵ２２０２は、ハードウェアのレジューム処理やＯＳカーネル・ドライバのレジューム処理を行って（Ｓ６１２）、情報処理システムを稼動させる。そして、ジョブ受付状態（スタンバイ状態３０２）に移行する。ここで、一定時間操作が無い場合は、ＣＰＵ２２０２は、スリープ処理を行い、スリープ状態（３０４）に移行する（Ｓ６０３）。
【００５８】
以下、図７を参照して、情報処理システム１の電源供給構成については説明する。
図７は、情報処理システム１の電源供給構成の一例を示すブロック図である。
図７において、７００は商用電源、７０１は電源スイッチ、７０２はリレースイッチである。リレースイッチ７０２は、電源スイッチ７０１が切断された場合でも、商用電源７００から電力を供給することができるように、電源スイッチ７０１と並列に配置されている。なお、コントローラ部１１０のＣＰＵ２２０２は、リレーＯＮ／ＯＦＦ信号７０３により、リレースイッチ７０２のＯＮ／ＯＦＦを制御することができる。
【００５９】
上述したように、コントローラ部１１０のＣＰＵ２２０２は、ユーザより電源スイッチ７０１のＯＦＦ操作がなされた場合、シャットダウンの必要性を判定し、必要性があればシャットダウンを行ってシステムＯＦＦ状態へ移行し、一方、必要性がなければサスペンド処理を行ってサスペンド状態に移行するように制御する。
シャットダウンを行う場合、図７（ａ）に示すように、コントローラ部１１０のＣＰＵ２２０２は、リレースイッチ７０２をＯＦＦ状態として、商用電源７００からのコントローラ部１１０への電力供給を遮断するように制御する。
一方、サスペンド処理を行う場合、図７（ｂ）に示すように、コントローラ部１１０のＣＰＵ２２０２は、リレースイッチ７０１をＯＮ状態に維持して、商用電源７００からのコントローラ部１１０への電力供給をし続けるように制御する。これにより、ＤＲＡＭ２２４２等の一部のユニットへの電力供給を維持することが可能となる。そして、サスペンド状態にて電源スイッチ７０１のＯＮ操作がなされた場合、ＤＲＡＭ２２４２等から高速にデータを読み出すことで起動を高速化することが可能となる。
【００６０】
以上示したように、電源オフ操作を行ったユーザに意識させることなく、サスペンド（若しくはハイバネーション）とシャットダウンとを適切に使い分け、情報処理システムの適切な初期化、高速起動、及び、優れたユーザビリティを実現できる。
【００６１】
即ち、ユーザは、休止処理（サスペンド若しくはハイバネーション）とシャットダウンの違いを特に意識する必要が無く、通常の電源オフ操作により、システムが自動的に判断して適切に休止処理とシャットダウンを行うように動作する。これにより、情報処理システムの適切な初期化、高速起動、及び、優れたユーザビリティを実現することができる。
【００６２】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【００６３】
（他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００６４】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【００６５】
１    情報処理システム
３，４    ホストコンピュータ
１１０    コントローラ部
【図１】
0005701043.tif 000002
【図２】
0005701043.tif 000003
【図３】
0005701043.tif 000004
【図４】
0005701043.tif 000005
【図５】
0005701043.tif 000006
【図６】
0005701043.tif 000007
【図７】
0005701043.tif 000008