説明

コンピュータ機器及びその起動制御方法

【課題】 クイック起動を有効にして電源スイッチをオフした場合、RTCに時間が設定されていると、RTC割り込みが発生して起動してしまう。
【解決手段】 前回起動時の情報を保持しておき、当該情報を用いて起動するクイック起動が可能なコンピュータ機器であって、時間を計時し、設定された時間になると割り込み発生させるRTCを有し、電源オフ或いは電源オンが指示されたかどうかを検知し、電源オフが検知されたとき、クイック起動が有効かどうかを判定し、クイック起動が有効であると判定されると、RTCによる割り込みを無効にするように設定する(S802)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータ機器及びその起動制御方法に関する。
【背景技術】
【0002】
近年、画像形成装置の省電力化が要望されている。例えば、欧州待機電力実施規則案では、ネットワーク・遠隔スイッチ・内蔵センサ・タイマ等の刺激により主要機能が使える状態になるスタンバイモードと、ネットワーク等の刺激も受付けない0.50W以下のオフモードを定義している。そして、オフモード又はスタンバイモードへの自動切り替え機能を備える電力管理の義務が記載されている。
【0003】
また近年、画像形成装置の高機能化が要望されている。画像形成装置は、ユーザの業務効率を向上させるソリューションを提供するため、多機能化・高性能化が求められている。省電力と高機能との両方を満たすと起動時間が長くなる問題が起こる。これは省電力と高機能を満たすためにハードウェアと、それを制御するためのソフトウェアが複雑になり、電源スイッチをオンにしてから、ハードウェアとソフトウェアを初期化し、ユーザが使えるようになるまでの時間である、起動時間が長くなるためである。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平08−087362号公報
【特許文献2】特開2000−047536号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
このような起動時間が長くなる問題の対策として、ユーザが電源スイッチをオフした時に、主記憶メモリに通電したままにしておき、ユーザが電源スイッチをオンした時に、前回起動時の情報を使って起動を高速化する、所謂ACPI−S3方式がある。以降、このACPI−S3方式の高速化手法をクイック起動と呼ぶ。また、クイック起動が有効で、終了処理が完了した状態を、クイックオフと呼ぶ。クイック起動は、前回起動時の情報を保持するため、電源オフの状態でもRTCを含むハードウェアの一部に通電されている。この場合、RTCが有効なので、アラームが設定されていると、ユーザは電源スイッチをオフして終了しているつもりにもかかわらず、画像形成装置はRTC割り込みで復帰してしまう。但し、電源スイッチがオフであるため、起動しようとしてエンジンとスキャナが動作した後、途中で電源オフされる。つまり、単純にクイックオフすると、RTC割り込みで復帰して欲しくないのに復帰してしまうことになる。
【0006】
例えば、特許文献1の技術では、機器がオフ状態やサスペンド状態の時に、アラーム等の外部イベントでノーマル状態へ遷移し、逆にノーマル状態の時に、タイムアウトでスタンバイ状態やサスペンド状態に遷移する。このため、無対策だとオフ時にアラームで復帰してしまう。また、クイック起動の時は、欧州待機電力実施規則案の定義だと、0.50W以下のオフモードに相当するので、RTCタイマで復帰してはいけない。
【0007】
またRTCタイマを無効にする特許文献2の技術は、複数の複合機に分散して出力する重連機能を使っている時、1週間の各曜日の指定時間にシャットダウンするウィークリータイマを無効にする。この技術はジョブ実行中にソフトウェアタイマを無効にする方法である。
【0008】
このように従来は、ユーザが、クイック起動を有効にして電源スイッチをオフした場合、RTCに時間が設定されていると、RTC割り込みが発生して起動してしまう。
【0009】
また通常の起動時は、各モジュールの初期化時に必要ならばRTCに時間が設定されるが、クイック起動時は、電源スイッチをオフする以前の処理が継続されるため、何もしないとRTCに時間が再設定されない。
【0010】
更に、クイックオフ中に設定されているRTCの設定をクイックオフする前に解除し、クイック起動後にRTCにクイックオフ中の時間を再設定してRTC割り込みを実行することが考えられる。このような場合、RTC割り込みを受け取ったアプリケーションは、クイックオフ中の割り込みか、時間通りの割り込みか分からないため、RTCに過去の時間を設定した場合、設定した直後にRTC割り込みが発生することになる。
【0011】
また、クイックオフ期間が長かったなどの理由で、クイックオフ期間中のRTC割り込みの設定が複数ある場合、クイック起動時に大量の割り込みが発生して、クイック起動処理が長時間停止してしまう。更に、復帰時にRTC割り込みを再設定するかしないか、などの条件選択をすると、その条件が増えれば増えるほど、クイック起動を完了するまでの時間が延びてしまう。
【0012】
本発明の目的は上記従来技術の問題点を解決することにある。
【0013】
本願発明の特徴は、クイックオフ中の割り込み発生を防止する技術を提供することにある。
【課題を解決するための手段】
【0014】
上記目的を達成するために本発明の一態様に係るコンピュータ機器は以下のような構成を備える。即ち、
前回起動時の情報を保持しておき、当該情報を用いて起動するクイック起動が可能なコンピュータ機器であって、
時間を計時し、設定された時間になると割り込み発生させる計時手段と、
電源オフ或いは電源オンが指示されたかどうかを検知する検知手段と、
前記検知手段により電源オフが検知されたとき、前記クイック起動が有効かどうかを判定する判定手段と、
前記判定手段により前記クイック起動が有効であると判定されると、前記計時手段による割り込みを無効にするように設定する設定手段と、を有することを特徴とする。
【発明の効果】
【0015】
本発明によれば、クイックオフ中に割り込みで復帰しなくなるという効果がある。
【図面の簡単な説明】
【0016】
【図1】本実施形態に係る画像形成装置の構成及びシステム構成を示すブロック図。
【図2】実施形態に係るコントローラの構成を示すブロック図。
【図3】画像形成装置における電源と電源スイッチの構成を説明する図。
【図4】コントローラにおいて電源監視を行う構成を示すブロック図。
【図5】本実施形態に係る画像形成装置によるシャットダウン処理を説明するフローチャート。
【図6】実施形態に係る画像形成装置のブートシーケンスを説明するフローチャート。
【図7】本実施形態に係る起動シーケンスと電力状態の時間的変化を説明する図。
【図8】本実施形態1に係る終了処理を説明するフローチャート。
【図9】実施形態2に係る終了処理を説明するフローチャート(A)と、クイック起動処理を説明するフローチャート(B)。
【図10】実施形態3に係るクイック起動処理を説明するフローチャート。
【図11】実施形態4に係る終了処理を説明するフローチャート。
【図12】実施形態5に係る終了処理を説明するフローチャート(A)と、クイック起動処理を説明するフローチャート(B)である。
【発明を実施するための形態】
【0017】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。本実施形態では、本発明のコンピュータ機器の実施形態を画像形成装置に例に説明するが、本発明の対象となる機器或いはシステムは、このような画像形成装置に限定されない。また本実施形態では、前回起動時の情報を保持しておき、当該情報を用いて起動するクイック起動が可能な画像形成装置(コンピュータ機器)を例にして、その装置及び起動制御方法を説明する。
【0018】
図1は、本実施形態に係る画像形成装置の構成、及び画像形成装置を含むシステム構成を示すブロック図である。
【0019】
画像形成装置1は、原稿から光学的に画像を読み取ってデジタル画像データに変換するスキャナ装置2、デジタル画像を紙デバイスに出力するプリン装置4を備えている。更に、この画像形成装置1の操作を行なうための操作部5、デジタル画像や制御プログラム等を記憶するハードでディスク(HDD)6、電話回線等にデジタル画像を送信するFAX装置7と、これらと接続され、これらを制御するコントローラ3を有している。この画像形成装置1は、LAN8を経由して、コンピュータ9との間でデジタル画像データの入出力、ジョブや各種指示等の受信も行なうことができる。
【0020】
スキャナ装置2は、トレイに載置された原稿束から原稿を給紙する原稿給紙ユニット21、給紙さえれた原稿を光学的にスキャンしてデジタル画像データに変換するスキャナユニット22を有し、変換された画像データはコントローラ3に送信される。プリンタ装置4は、トレイ上に載置された複数枚の用紙から一枚づつ用紙を給紙可能な給紙ユニット42、給紙した用紙に画像データを印刷するためのマーキングユニット41、印刷後の紙を排紙するための排紙ユニット43を備えている。
【0021】
この画像形成装置1は多彩なジョブを実行可能である。一例を以下に記載する。
・複写機能
スキャナ装置2で得られた画像データをハードディスク6に記憶し、またプリンタ装置4に出力して印刷する。
・画像送信機能
スキャナ装置2から得られた画像データをLAN8を介してコンピュータ9に送信する。
・画像保存機能
スキャナ装置2から得られた画像データをハードディスク6に記憶し、必要に応じて送信や印刷を行なう
・画像印刷機能
コンピュータ9から送信された、例えばページ記述言語の印刷データを解析し、その印刷データに従ってプリンタ装置4で印刷する。
【0022】
図2は、実施形態に係るコントローラ3の構成を示すブロック図である。
【0023】
このコントローラ3は、メインボード200と、サブボード220とを具備している。メインボード200は汎用的なCPUシステムを搭載した基板である。全体を制御するCPU201、ブートプログラムを記憶しているブートROM202、CPU201がワークメモリとして使用するメモリ203、外部バスとのブリッジ機能を持つバス制御部204、不揮発メモリ205を有している。更に、ストレージ装置(HDD)を制御するディスクコントローラ206と、半導体デバイスで構成された比較的小容量なストレージ装置であるフラッシュディスク(SSD等)207、USBを制御するUSB制御部208等を具備している。またメインボード200には、USBメモリ209、操作部5、ハードディスク6等が接続される。RTC210はリアルタイムクロックで、CPU201の指示により計時を行い、指定された時間が経過すると割り込みを発生する等の計時処理を行う。
【0024】
サブボード220は比較的小さな汎用CPUシステムと画像処理用のハードウエアを備えている。CPU221、CPU221がワークメモリとして使用するメモリ223、外部バスとのブリッジ機能を持つバス制御部224、不揮発メモリ225を備えている。更に、リアルタイムで画像処理を行なう画像処理プロセッサ227とデバイス制御部226,228を有する。スキャナ装置2とプリンタ装置4は、それぞれデバイス制御部228,226を介して、サブボード220との間でデジタル画像データの受け渡しを行なう。FAX装置7はCPU221が直接制御する。尚、この図2はブロック図であり簡略化している。例えばCPU201,CPU221等にはチップセット、バスブリッジ、クロックジェネレータ等のCPU周辺ハードウェアが多数含まれているが、これらは本発明の主要部ではないため省略しており、このブロック図の構成が本発明を制限するものではない。
【0025】
このコントローラ3の動作を、画像の複写を例にして説明する。
【0026】
操作者が操作部5から画像の複写を指示すると、CPU201がCPU221を介してスキャナ装置2に画像の読み取り命令を送る。これによりスキャナ装置2は、原稿を光学的にスキャンし、デジタル画像データに変換してデバイス制御部228を介して画像処理プロセッサ227に供給する。画像処理プロセッサ227は、処理済の画像データをメモリ223にDMA転送してデジタル画像データの一時保存を行なう。
【0027】
CPU201は、デジタル画像データがメモリ223に一定量もしくは全て格納されたことを確認すると、プリンタ装置4に画像の印刷指示を出す。CPU221は、画像処理プロセッサ227にメモリ223の画像データの格納場所を教える。これにより、プリンタ装置4からの同期信号に従ってメモリ223の画像データは、画像処理プロセッサ227とデバイス制御部226を介してプリンタ装置4に送信され、プリンタ装置4によって用紙(シート)上に印刷される。
【0028】
尚、複数の部数を印刷する場合、CPU201がメモリ223の画像データをハードディスク6に保存し、2部目以降はスキャナ装置2からの画像データの供給なしにプリンタ装置4に画像データを送出して印刷する。
【0029】
図3は、この画像形成装置における電源と電源スイッチの構成を説明する図である。
【0030】
トグル型電源スイッチ301は、電源のオン/オフを行うのに使用される。電源ユニット302は、AC−DCコンバータ303を有し、AC−DCコンバータ303はAC電源入力部304から入力されるAC電圧をDC電圧に変換している。電源ケーブル305は、AC−DCコンバータ303から出力されるDC電圧をプリンタ装置4に供給している。また電源ケーブル306は、AC−DCコンバータ303から出力されるDC電圧をコントローラ3に供給している。信号線307は、電源スイッチ301の状態をコントローラ3に通知する。電源制御信号線308は、AC−DCコンバータ303の出力を制御するための信号線である。またスキャナ装置2も同様に、AC−DCコンバータ303から供給されるDC電圧により動作する。
【0031】
操作者は電源スイッチ301を操作することで、画像形成装置1への電力供給をオン/オフすることができる。この電源スイッチ301がオンされるとコントローラ3とAC−DCコンバータ303とが接続され、コントローラ3は、装置内の各部への電源の供給状態を制御することができる。また電源スイッチ301がオフされた時は、コントローラ3が装置のシャットダウンが完了するまで、電源ケーブル306を介したコントローラ3への電源供給が継続される。よって、コントローラ3は、信号線307を介して電源スイッチ301の状態を監視し、電源スイッチ301がオフされるとシャットダウン処理を行う。そして、そのシャットダウンが完了した後、信号線307を介してAC−DCコンバータ303に、電源ケーブル306を介したコントローラ3への電力供給を停止するように指示する。
【0032】
これらの説明は、シャットダウンが必要な一般的なコンピュータ機器に共通の構成である。トグル型電源スイッチ301は、オン/オフの状態のどちらか一方の状態をメカ的に保持し続けるスイッチである。操作者は、この電源スイッチ301を操作して、オン/オフのいずれかの状態を保持させる。
【0033】
尚、本実施形態では、オフ/オンが明示的なトグル型電源スイッチを用いているが、パーソナルコンピュータ等では、状態を持たない電源スイッチ(電源スイッチ自体が省電力移行スイッチとして機能するもの等も含む)を採用しているものが多数ある。これらの状態を持たないスイッチでは、オンされると、電源が入っている状態では「オフ/省電力状態移行指示」として機能し、電源が入っていない状態では「オン」と機能する。また、そのスイッチを一定時間以上押下し続けることで「強制オフ」を入力する、等の制御が可能である。よって、電源スイッチは、トグル型スイッチに限定するものではなく、上述した状態を持たないスイッチにも適用できる。
【0034】
図4は、本実施形態に係るコントローラ3において電源監視を行う構成を示すブロック図である。
【0035】
リセット回路401は、メインボード200に設けられている。BIOS402は、メインボード200上のハードウェア(H/W)の基本的な部分を制御するのに使用される。電源監視ハードウェア403は、この装置1の電源制御を監視しており、ASIC等の場合、小さなCPUシステム等でも良い。リセット回路404は、サブボード220上のリセット回路である。ハードウェア群405はメインボード200上のハードウェア群で、ハードウェア群406は、サブボード220上のハードウェア群である。
【0036】
尚、同期型のハードウェアは、リセットにより内部状態をリセットするため、同期型で組まれたハードウェア回路は、電源がオンされて各チップに電力が供給された後にリセット回路が各ハードウェアをリセットする必要がある。この際、複数のハードウェアチップは主従関係を持つため、リセットシーケンスを設計し、順次リセットを行うことになる。そのため一般的には本実施形態のように一つのボードに一つのリセット回路を備え、各々のボード内のリセット動作を各リセット回路が行う。
【0037】
メインボード200は、特に本装置1で主となるボードであり、電源監視ハードウェア403を有する。これは電源スイッチ301の状態を入力する信号線307、電源制御信号線308を用いてメインボード220における電源供給を制御する等の機能を有する。
【0038】
CPU201が正常に動作できる場合、CPU201の指示に従ってリセットを掛けることができる。また、CPU201に電源が供給されていない状態では、電源スイッチ301の状態を入力する信号線307に従って、電源制御信号線308を制御してコントローラ3の電源を投入することができる。
【0039】
BIOS402は、低レベルのハードウェア制御ライブラリ等を含む。一般的には、IBM互換機の互換性確保のためのものであり、いわゆるコンピュータシステム上必須ではない。しかしながら、例えばACPI規格による省電力機能の一部を実行する事も可能であるため実施形態に記載した。
【0040】
本実施形態では、省電力モードとして一般的なACPI−S3方式(メモリをレジュームする)を例に説明する。またBIOS402は、その機能の一部のためだけに記載したものである。
【0041】
以上のハードウェア構成を有する画像形成装置1において、例えばトグル型電源スイッチ301がオフにされると、CPU201は電源監視ハードウェア403を介して電源スイッチ301の状態を受け取る。通常、CPU201は、電源オフを検知するとシャットダウン処理を動作させ、電源監視ハードウェア403にシャットダウンを指示する。その結果、電源制御信号線308を介してDC−ACコンバータ303に電源オフが通知され、電源ケーブル306を介したコントローラ3へのDC電源供給が停止され、この装置1は完全にシャットダウンされる。このシャットダウンによりCPU201によるプログラムの実行も完全に終了するため、次回電源スイッチ301がオンされると、CPU201によるプログラムの実行も通常通り起動される。
【0042】
本実施形態では、装置の起動高速化を目指している。現在の技術で高速に起動することが可能な技術の一般的な一例として、ACPI−S3サスペンド方式による高速化手法がある。このACPI−S3方式を本装置に適用した場合について以下に説明する。
【0043】
操作者が電源スイッチ301をオフにすると、信号線307を介して電源監視ハードウェア403に通知される。このときCPU201は、割り込みにより、そのスイッチ301がオフされたことを検知する。そして、例えばカーネルの省電力インタフェースをコールすることで、最終的にBIOS402と電源監視ハードウェア403が持っている機能であるACPI−S3状態に遷移する。そして電源制御信号線308を介して電源ユニット302に対してACPI−S3の省電力状態(メモリと一部のハードウェアのみを通電状態)へと遷移させることが可能である。
【0044】
この時、装置1としてはオフ状態ではなく、メモリにプログラム状態を保持した「一時中断状態」となっており、その場合ACPI−S3の復帰処理に相当する時間で、コントローラ3を高速に起動することが可能である。しかし、このようなACPI−S3方式等のメモリレジュームによる省電力方式を採用した場合、電源スイッチ301のオフ、オンの操作により、各リセット回路401,404がリセットする対象のボード上のハードウェア群405,406にリセットがかかる。しかしながら、CPU201上で動作しているソフトウェアにはリセット制御がかからないことになる。
【0045】
長時間ソフトウェアをリセットしないことにより発生する不具合は一般的に知られており、理想的にはCPU201上で動作している制御ソフトウェアもリセットすることが好ましい。しかし、CPU201上の制御ソフトウェアをリセットしてしまうと、次回の起動時における起動時間が長くなり、ユーザが操作可能となるまでの立ち上がり時間が長くなってしまう。
【0046】
以下、本実施形態に従って、上記問題を解決する手法を説明する。
【0047】
図5は、本実施形態に係る画像形成装置1のCPU201によるシャットダウン処理を説明するフローチャートである。これら操作者が画像形成装置1の電源をオフしたときに処理を終了させるための動作を示す。尚、この処理を実行するプログラムはメモリ203に記憶されており、CPU201がそのプログラムを読み出して実行することにより実現される。
【0048】
この処理は、操作者が電源スイッチ301がオフしたことをCPU201が信号線307を介して検知することにより開始される。まずS501で、操作部5にシャットダウン中であることを示す画面を表示する。次にS502に進み、現在行っているサービス等の中断・終了処理を行う。この終了処理は複数のプロセスで並行して実行されているため、S503で、それらの全ての終了処理の完了を待つ。S503で終了処理が完了したことを検知するとS504に進み、メモリ203の値をHDD6に格納する。例えばDRAMにキャッシュしたストレージバッファの内容をHDD6にシンクする等の処理を行う。
【0049】
次にS505に進み、起動準備リブートフラグ(準備フラグ)を設定する。ここでCPU201は、CPU201がアクセス可能で、ハードウェアリセットにより状態がリセットされない何らかのレジスタに、この起動準備リブートフラグをセットする。本実施形態では、リセット回路401の上位に位置する電源監視ハードウェア403が存在するため、この電源監視ハードウェア403のレジスタに、この起動準備リブートフラグをセットする。
【0050】
次にS506に進み、CPU201がカーネルのシャットダウンI/Fを呼び、カーネルのソフトウェア最終終了処理を行う。その後、S507に進み、CPU201は電源監視ハードウェア403に対してシステムのリブート(リスタート)要求を発行する。
【0051】
電源監視ハードウェア403は、リセット回路401に対して装置全体のリセットを要求し、リセット回路401は、これをサブボード220上のリセット回路404に通知する。これによりボード全体にリセットが発行される。このリセットはリブート要求であるため、CPU201にもリセットがかかり、CPU201はリセット例外発行により、例えばBIOS402からのブート処理を行う。つまり、この装置1では、シャットダウンにも拘わらず、電源を落とすのではなくリブートすることになる。従って、このシャットダウンシーケンスは図6のブートシーケンスにつながることになる。
【0052】
図6は、実施形態に係る画像形成装置1のブートシーケンスを説明するフローチャートである。尚、この処理を実行するプログラムはメモリ203に記憶されており、CPU201がそのプログラムを読み出して実行することにより実現される。尚、このブート方法はシステムにより多段階的に起動するものであるが、非常に難しい部分であるため、CPU201が行う処理の概念をフロー化して説明する。
【0053】
まず最初にS601で、ハードウェアを初期化する。このハードウェアの初期化はレジスタや割り込みの初期化、カーネル起動部においては対応したデバイスドライバの登録等がある。
【0054】
次に、本実施形態の特徴であるS602に進み、現在の起動が高速起動のための準備のためのブートか否かを判断する。具体的には図5のS505で設定した起動準備リブートフラグがオンであるか否かを判断し、このフラグがオンである時にS603の処理をスキップする動作を行う。S603では、操作部5の初期化・表示を行う。ここでは最初の表示であるため、例えば「起動しています」の旨の表示を行う。つまり、起動準備リブートフラグがオンである場合は、操作部5に表示しない状態で初期化を継続させることになる。
【0055】
次にS604に進み、ソフトウェアレイヤの初期化に入る。ここでは各ライブラリの初期化ルーチンを呼び、次にS605で、第一各プロセス・スレッド群を起動する。主にこの起動は、周辺ハードウェアに影響のない純粋なソフトウェアサービス等が適切である。理由は後述する。次にS606に進み、S602でも参照した起動準備リブートフラグがオンかオフかを判定する。このフラグがオフの場合は通常起動であるためS611に遷移する。一方、オンの場合は、今回のブートが起動準備のための起動であるためS607に進み、S605の処理完了を待つ。もしくはウエイト等の非同期制御でも構わない。
【0056】
起動準備リブートフラグがオンで、この処理が実行されている場合、操作部5における表示はなされない。そしてS605の処理が完了すると、起動途中であるにもかかわらずS608に進んで省電力モードに移行する。この省電力モードは、高速に復帰することができるモードであるのが好ましい。一般的にはACPI−S4ハイバネーション、ACPI−S3サスペンド方式が主流であるが、速度的に優位性の高いS3の状態に遷移する。尚、ACPI−S3方式に入る方法は前述しているので、ここではその説明を省略する。この状態で起動は一旦停止し、電源の通電はメインボード200上のメモリ203と、電源監視ハードウェア403だけになり、ハードウェアのシステム起動は待機状態となる。
【0057】
このように、シャットダウンの際、シャットダウン後に電源を落とさずにリブートを行い、次回の起動時に操作部5に表示せずに、起動途中で省電力状態に入るのが、本実施形態の特徴的な一つのシーケンスである。この場合操作者は、リブートしたのではなくシャットダウンが通常よりも長く継続しているように見え、違和感を感じない。
【0058】
次に操作者が、この装置1を使用する場合は、電源スイッチ301をオンにする。これにより信号307を介して電源監視ハードウェア403は電源がオンされたことを検知する。そして、電源制御信号線308を介して電源ユニット302に「スイッチオンによる全装置オン」を通知する。そして電源ユニット302は、装置全体に電源オン時に応じた電力を供給する。具体的にはコントローラ3、プリンタ装置4、スキャナ装置2に各DC電源を供給する。これによりプリンタ装置4、スキャナ装置2において、各々のCPUが電源オンによる初期化動作を開始する。
【0059】
コントローラ3はサスペンド状態になっている場合、図6のS609の処理から抜けてS610に進み、操作部5を初期化して表示する。これにより装置1は「起動しています」を表示した状態となる。次にS611に進み、第二プロセス・スレッド群を起動する。これらのプログラムは主に周辺装置、例えばプリンタ装置4やスキャナ装置2と起動のためのコミュニケーションを行うために、S605のACPI−S3サスペンド省電力状態前では不適切なもののみを起動する。そしてS612に進み、プリンタ装置4、スキャナ装置2とネゴシエーションを行って通信を確立する。その後、S613に進み、アイドル状態へ移行する。
【0060】
このように本実施形態では、通常の起動において、起動時にS601〜S605の処理を省略することが出来るため、この時間分だけ高速に装置を起動することができる。
【0061】
このようなフローを製品に適用した場合の操作部5の表示の状態、装置本体の起動シーケンスと電力状態の時間的変化を図7に示す。
【0062】
図7は、本実施形態に係る起動シーケンスと電力状態の時間的変化を説明する図である。尚、図7において、横軸は時間を示す。ここでは701で、電源スイッチ301をオン、702で電源スイッチ301をオフ、更に703で、電源スイッチ301をオンしている。この場合の従来の動作を707,708で示し、本実施形態を採用した場合のシーケンスを709,710で示す。
【0063】
最初に714で示す、従来の線図707を説明する。ここで縦軸はブート状況を表し、Y軸=0地点を電源オフ、ブートアップ(BootUp)が記載されている地点をブート完了とする。701で示す電源オンの後、711で示す時間後、装置が起動する。この間、708で示すように、操作部5には起動中を示す表示がなされている。そして動作可能状態になり、702で電源オフが発生すると、712でシャットダウン処理を行う。このシャットダウンが完了すると電源はオフ状態となり、操作部5の表示もオフとなる。そして次に703で電源がオンになると、再度、711と同様の起動処理713を行う。こうして、オフ/オン時に行う処理に差異は無く、おおよそ同じ時間で起動する。これは一般的な起動からシャットダウンまでの処理となる。
【0064】
次に715で示す、本実施形態に係る線図709を説明する。
【0065】
721は、711と同様に通常の起動を示す。正常に起動が完了している状態で、電源スイッチ301が702のタイミングでオフされた場合、722で、図5のシャットダウン処理が実行される。723は、図5のS507でシステムリブート要求が発生することによる遅延を示す。その後、図6で示すブート処理が実行される。724は、図6のS601〜S607までのシーケンスの実行時間に対応している。本実施形態に係る起動の場合、S603での操作部5の初期化・表示が行われないため、この区間では操作部5の表示が無い状態で起動することができる。
【0066】
725は、S608の処理に対応し、省電力モード(本実施形態ではACPI−S3状態)へ移行する。通常は、この移行時間はさほどかからない。この移行が完了した状態で電源スイッチ301のオンを待つ期間が726で示されており、これがS609の処理に対応する。そして703で電源スイッチ301がオンされると、727で省電力からの復帰を行い、S610で操作部5の初期化及び表示が実行される。これにより斜線で示すように、728で示す期間、起動中の表示がなされることになる。この期間728では、S611,S612の処理が完了するまでの時間だけ起動中が継続し、その後S613で動作可能状態となる。尚、図7において、706はスタンバイ状態、705は省電力状態、そして704は、電源オフの状態を示す。710は、709の状態に対応した操作部5の表示状態を示す。
【0067】
このように操作者が、702で電源スイッチ301をオフした時に、次回の起動の準備処理を行っておくことで、次の起動時の時間を短くできる。また起動準備リブートフラグがオンであるときに操作部5への表示を行わないことで、外部から見てシャットダウン状態が継続しているのと等価となるため、特に違和感なく高速起動を実現することができる。
【0068】
尚、710において、操作部5の表示がオフの状態では、操作部の表示部の電源をオフにしても良く、また或いはバックライトを消す、また真黒を表示するといったオフ状態に相当する状態にしても同様の効果が得られる。
【0069】
また、見かけにこだわらない場合や操作部5を持たない装置の場合、710で、操作部に対して特別な操作を行わないという方法もある。図示しないがこの方法でも起動時間の短縮を行うことが可能である。この場合、電源スイッチ301がオフされた後、シャットダウン時、操作部5には「終了中」が表示され、その後、リブート時に通常の起動と同様に「起動中」が表示される。その後、操作部5の表示が消えて、703で電源スイッチ301がオンされるのを待つ、というシーケンスとなる。従って、元々、起動時間がさほど長く無い装置であれば、このような方式を採用しても違和感は少ない。
【0070】
また、図6のブート処理において、S611,S612の処理が必要ない場合が考えられる。その場合は、S607の終了時点が起動完了となり、S613と同様に図7の718で示す状態となる。本実施形態では、起動途中ではなく、起動完了後に省電力モードに入るため、図7の716で示すような図となる。この場合、717で示す省電力状態からの復帰時間が、動作可能になる状態までの経過時間となる。
【0071】
図7の716で示す本実施形態に係る方式を適用するにあたり、省電力起動を有する装置の場合、718で示す動作可能状態から省電力状態に入るまでの時間を予め規定しておく。通常、タイマによる省電力機能を有する場合、再起動後、一定時間後に省電力モードに自動的に移行する。従って、本実施形態を適用しなくても、再起動後に操作せずに所定時間放置することで、自動的に省電力状態へ移行することになる。しかし本実施形態では、この省電力に移行する時間より短い時間、理想的には、動作可能状態になってできるだけ早いタイミングで省電力状態に自発的に移行させることを特徴としている。これにより、装置の消費電力を最小にすることができる。
【0072】
以上の構成を基に本発明の実施形態を説明する。
【0073】
先に、スリープ復帰とクイック起動との違いについて説明する。電源オフ状態からの復帰要因として、スリープ処理では、シーソースイッチ、ネットワーク、FAX着信・オフフック、RTC210(タイマ・アラームなど)、USB挿抜などの複数の要因がある。一方、クイック起動はシーソースイッチのみで、他の復帰要因を受け付けてはいけないという点が異なる。ユーザから見ると、電源スイッチのオフとクイックオフは同じ意味になる。
【0074】
実施形態の詳細を以下に述べる。
【0075】
[実施形態1]
図5のS502の終了処理を行うときに、図8のフローチャートで示す処理を実施する。
【0076】
図8は、本実施形態1に係る終了処理を説明するフローチャートである。尚、この処理を実行するプログラムはメモリ203に記憶されており、CPU201がそのプログラムを読み出して実行することにより実現される。
【0077】
S801で、クイック起動が有効かどうかを判断し、クイック起動が無効の場合はS804に進み、通常の終了処理を実行する。一方、S801で、クイック起動が有効であればS802に進み、RTC210をクリアしてS803に進み、クイック起動の終了処理を行う。
【0078】
また、前述したように、RTC210の設定を解除するだけでなく、以下のようにしても良い。即ち、RTC210による割り込みをマスクする、RTC120を無効にするようハード設定する、RTC210のクロックを止める等の方法で、RTC割り込みが入らない状況を作ることでも対応可能である。
【0079】
この実施形態1により、クイックオフ中にRTC210による割り込みにより復帰することを防止できる。
【0080】
[実施形態2]
図5のS502の終了処理を行うときに、図9(A)のフローチャートで示す処理を実施する。
【0081】
図9(A)は、実施形態2に係る終了処理を説明するフローチャートである。
【0082】
S901で、クイック起動が有効かどうかを判断し、クイック起動が無効であると判定するとS905に進み、通常の終了処理を行う。一方、S901で、クイック起動が有効であると判定するとS902に進み、RTC設定値を退避する。そしてS903に進み、RTC210をクリアして、S904で、クイック起動の終了処理を行う。
【0083】
また図6のS611で、第二スレッド・プロセス群の起動処理で、図9(B)のフローチャートで示す処理を実施する。
【0084】
図9(B)は、実施形態2に係るクイック起動処理を説明するフローチャートである。
【0085】
図9(B)では、S901で、クイック起動の開始処理を行う。次にS911に進み、RTC設定値が退避されているかどうかを判定し、退避されている場合はS912に進み、RTC(タイマ・アラーム)を再設定する。また退避されていない場合は、処理を終了する。
【0086】
この実施形態2によれば、アプリケーションは、クイックオフ中のRTC割り込みを、クイック起動時に知ることができる。
【0087】
[実施形態3]
図10は、実施形態3に係るクイック起動処理を説明するフローチャートである。この処理は図9(B)のフローチャートで示す処理の後に実行される。
【0088】
S1001で、RTC割り込み発生するとS1002に進み、設定時間とRTC割り込み実行時間が一定時間以上(例えば、5分以上(所定値以上))異なっているかどうかを判定する。ここで異なっていると判定した場合はS1004に進み、RTC210を設定したアプリケーションに時間通りでないRTC割り込み、つまりクイック期間中に設定されたRTC割り込みが発生したことを通知する。一方、S1002で、設定時間と実行時間がほぼ同じだった場合はS1003に進み、RTC210を設定したアプリケーションに時間通りの割り込み、つまりクイック期間外に設定されたRTC割り込みが発生したことを通知する。
【0089】
尚、ここで、設定時間と実行時間に、時刻通りではなく差異に幅を持たせているのは、RTC210の精度が分単位である場合や、RTC割り込みでスリープ復帰した時に、アプリケーションに割込み応答を返すまで数十秒の復帰処理の時間がかかるためである。即ち、必ずしも指定時間通りに応答を返せないことがあるためである。
【0090】
この実施形態3によれば、アプリケーションは、クイックオフ中のRTC割り込みか、時間通りのRTC割り込みかを、割り込み発生時に得た情報から知ることができる。そのため、例えば指定時間配信など、時間通りでないなら実行しなくて良い処理を止めることが出来る。
【0091】
[実施形態4]
図11は、実施形態4に係る終了処理を説明するフローチャートである。この処理は図5の終了処理S502で実行される。
【0092】
まずS1101で、クイック起動が有効かどうかを判断し、クイック起動が無効の場合はS1105に進み、通常の終了処理を実行する。一方、S1101で、クイック起動が有効であると判断するとS1102に進み、クイック起動後に、RTC210に再設定するよう指定がある、RTC設定値を退避する。そしてS1103に進み、RTC210をクリアし、S1104で、クイック起動の終了処理を行うF404。
【0093】
尚、この実施形態4におけるクイック起動の復帰処理は、図9(B)と同じである。
【0094】
図6のS611の、第二スレッド・プロセス群の起動処理が行われるときに、図9(B)が実施される。即ち、S910で、クイック起動の開始処理を行い。S911で、RTC設定値が退避されていると判定するとS912で、その対比されている設定値を使用してRTC210を再設定する。
【0095】
前述のケースでは、終了処理時に、RTC210を再設定するよう指定がある場合は、RTC210の設定値を退避した。しかし、起動処理時に、RTC210を再設定するよう指定がある場合は、RTC210の設定値を復旧することも可能である。
【0096】
この実施形態4によれば、クイック起動時に、同時に起こるRTC割り込み数を減らすことができる。
【0097】
[実施形態5]
図12(A)は、実施形態5に係る終了処理を説明するフローチャートである。この処理は図5のS502の終了処理が行われるときに実施される。
【0098】
まずS1201で、クイック起動が有効かどうかを判断し、有効でないときはS1205に進み、通常の終了処理を行う。一方、S1201で、有効であると判断するとS1203に進み、アプリケーションに通知する。これによりS1203で、アプリケーションはRTC(タイマ・アラーム)をクリアし、S1204で、クイック起動の終了処理を行う。
【0099】
図12(B)は、実施形態5に係るクイック起動処理を説明するフローチャートである。この処理は図6のS611の第二スレッド・プロセス群の起動処理で実施される。
【0100】
まずS1211で、クイック起動の開始処理を行う。次にS1212に進み、アプリケーションにクイック起動したことを通知する。S1213で、アプリケーションはRTC(タイマ・アラーム)を再設定する。
【0101】
この実施形態5によれば、クイックオフ中のRTC割り込みが不要な場合は、クイック起動時にRTC割り込み自体を起こさなく出来る。
【0102】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。

【特許請求の範囲】
【請求項1】
前回起動時の情報を保持しておき、当該情報を用いて起動するクイック起動が可能なコンピュータ機器であって、
時間を計時し、設定された時間になると割り込み発生させる計時手段と、
電源オフ或いは電源オンが指示されたかどうかを検知する検知手段と、
前記検知手段により電源オフが検知されたとき、前記クイック起動が有効かどうかを判定する判定手段と、
前記判定手段により前記クイック起動が有効であると判定されると、前記計時手段による割り込みを無効にするように設定する設定手段と、
を有することを特徴とするコンピュータ機器。
【請求項2】
前記検知手段により電源オフが指示されたとき、シャットダウン処理で再起動のための準備フラグをセットする手段と、
前記準備フラグがセットされていると省電力モードに移行するように制御する省電力手段とを更に有することを特徴とする請求項1に記載のコンピュータ機器。
【請求項3】
前回起動時の情報を保持しておき、当該情報を用いて起動するクイック起動が可能なコンピュータ機器であって、
時間を計時し、設定された時間になると割り込み発生させる計時手段と、
電源オフ或いは電源オンが指示されたかどうかを検知する検知手段と、
前記検知手段により電源オフが検知されたとき、前記クイック起動が有効かどうかを判定する判定手段と、
前記判定手段により前記クイック起動が有効であると判定されると、前記計時手段に設定されている設定値を退避するとともに前記計時手段をリセットする退避手段と、
前記検知手段により電源オンが検知されたとき、前記退避手段により退避させた前記設定値を前記計時手段に設定する設定手段と、
を有することを特徴とするコンピュータ機器。
【請求項4】
前記計時手段により発生する割り込みを受け付けると、前記計時手段に設定された前記設定値と、当該割り込みの時間との差異を求め、当該差異が所定値以上であれば、前記割り込みが前記設定手段により設定された前記設定値に基づく割り込みであることを通知する通知手段を更に有することを特徴とする請求項3に記載のコンピュータ機器。
【請求項5】
前記退避手段は、前記判定手段により前記クイック起動が有効であると判定された場合、前記計時手段に設定されている設定値を退避させるように指定されているときに前記設定値を退避することを特徴とする請求項3に記載のコンピュータ機器。
【請求項6】
前回起動時の情報を保持しておき、当該情報を用いて起動するクイック起動が可能なコンピュータ機器であって、
時間を計時し、設定された時間になると割り込み発生させる計時手段と、
電源オフ或いは電源オンが指示されたかどうかを検知する検知手段と、
前記検知手段により電源オフが検知されたとき、前記クイック起動が有効かどうかを判定する判定手段と、
前記判定手段により前記クイック起動が有効であると判定されるとアプリケーションに通知する通知手段と、
前記検知手段により電源オンが検知されたとき、前記アプリケーションに通知する手段とを有し、
前記アプリケーションは前記通知手段による通知に応答して前記計時手段をリセットし、前記電源オンの通知に応答して、前記計時手段を再設定することを特徴とするコンピュータ機器。
【請求項7】
時間を計時し、設定された時間になると割り込み発生させるRTCを有し、前回起動時の情報を保持しておき、当該情報を用いて起動するクイック起動が可能なコンピュータ機器の起動制御方法であって、
電源オフ或いは電源オンが指示されたかどうかを検知する検知工程と、
前記検知工程で電源オフが検知されたとき、前記クイック起動が有効かどうかを判定する判定工程と、
前記判定工程で前記クイック起動が有効であると判定されると、前記RTCによる割り込みを無効にするように設定する設定工程と、
を有することを特徴とするコンピュータ機器の起動制御方法。
【請求項8】
時間を計時し、設定された時間になると割り込み発生させるRTCを有し、前回起動時の情報を保持しておき、当該情報を用いて起動するクイック起動が可能なコンピュータ機器の起動制御方法であって、
電源オフ或いは電源オンが指示されたかどうかを検知する検知工程と、
前記検知工程で電源オフが検知されたとき、前記クイック起動が有効かどうかを判定する判定工程と、
前記判定工程で前記クイック起動が有効であると判定されると、前記RTCに設定されている設定値を退避するとともに前記RTCをリセットする退避工程と、
前記検知工程で電源オンが検知されたとき、前記退避工程で退避させた前記設定値を前記RTCに設定する設定工程と、
を有することを特徴とするコンピュータ機器の起動制御方法。
【請求項9】
時間を計時し、設定された時間になると割り込み発生させるRTCを有し、前回起動時の情報を保持しておき、当該情報を用いて起動するクイック起動が可能なコンピュータ機器の起動制御方法であって、
電源オフ或いは電源オンが指示されたかどうかを検知する検知工程と、
前記検知工程で電源オフが検知されたとき、前記クイック起動が有効かどうかを判定する判定工程と、
前記判定工程で前記クイック起動が有効であると判定されるとアプリケーションに通知する通知工程と、
前記検知工程で電源オンが検知されたとき、前記アプリケーションに通知する工程とを有し、
前記アプリケーションは前記通知工程による通知に応答して前記RTCをリセットし、前記電源オンの通知に応答して、前記RTCを再設定することを特徴とするコンピュータ機器の起動制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2012−243219(P2012−243219A)
【公開日】平成24年12月10日(2012.12.10)
【国際特許分類】
【出願番号】特願2011−115144(P2011−115144)
【出願日】平成23年5月23日(2011.5.23)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】