(57)【要約】【課題】システムの初期化処理を効率化する。【解決手段】１つのシステムを構成する複数のコンポーネントを含むソフトウェアを実行する情報処理装置は、各コンポーネントのタスクを呼び出して実行するコンポーネントタスク実行手段と、システム全体を制御するシステムタスクを呼び出して実行するシステムタスク実行手段と、を備える。コンポーネントタスク実行手段は、システムの初期化処理の内、個別のコンポーネントに依存するコンポーネント依存初期化処理を、タスクとして実行する。システムタスク実行手段は、システムの初期化処理の内、個別のコンポーネントに依存しない基本初期化処理を、コンポーネント依存初期化処理の前にシステムタスクとして実行する。【選択図】図５
2011141596.tif 000002
【特許請求の範囲】
【請求項１】
１つのシステムを構成する複数のコンポーネントを含むソフトウェアを実行する情報処理装置であって、
各前記コンポーネントのタスクを呼び出して実行するコンポーネントタスク実行手段と、
前記システム全体を制御するシステムタスクを呼び出して実行するシステムタスク実行手段と、を備え、
前記コンポーネントタスク実行手段は、前記システムの初期化処理の内、個別の前記コンポーネントに依存するコンポーネント依存初期化処理を、前記タスクとして実行し、
前記システムタスク実行手段は、前記システムの初期化処理の内、個別の前記コンポーネントに依存しない基本初期化処理を、前記コンポーネント依存初期化処理の前に前記システムタスクとして実行する、情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記システムタスク実行手段は、前記システムタスクとして、すべての前記コンポーネントについての前記基本初期化処理の結果を所定の記憶領域に一度にまとめて書き込む、情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、さらに、
前記基本初期化処理が完了したタイミングを外部に知らせる通知部を備える、情報処理装置。
【請求項４】
請求項１ないし請求項３のいずれかに記載の情報処理装置であって、
前記コンポーネントは、前記情報処理装置が有するハードウェアを制御するためのコンポーネントと、前記ハードウェアを利用して所定の機能を実現するためのコンポーネントと、前記情報処理装置が有する操作部の操作に関する制御を行うためのコンポーネントと、のいずれかである、情報処理装置。
【請求項５】
１つのシステムを構成する複数のコンポーネントを含むプログラムであって、
各前記コンポーネントのタスクを呼び出して実行するコンポーネントタスク実行機能と、
前記システム全体を制御するシステムタスクを呼び出して実行するシステムタスク実行機能と、をコンピューターに実現させ、
前記コンポーネントタスク実行機能は、前記システムの初期化処理の内、個別の前記コンポーネントに依存するコンポーネント依存初期化処理を、前記タスクとして前記コンピューターに実行させる機能であり、
前記システムタスク実行機能は、前記システムの初期化処理の内、個別の前記コンポーネントに依存しない基本初期化処理を、前記コンポーネント依存初期化処理の前に前記システムタスクとして前記コンピューターに実行させる機能である、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、効率的な初期化処理を実現する情報処理装置およびプログラムに関する。
【背景技術】
【０００２】
ＣＰＵといったハードウェアとソフトウェア（プログラム）とで構成される情報処理装置としてのコンピューターが組み込まれた装置（以下、組み込み装置とも呼ぶ）として、例えばプリンターが広く用いられている。組み込み装置としてのプリンターでは、コンピューターが、例えばプリンターエンジンの制御や表示用モニターの制御といった各種制御を実行する。
【０００３】
一般に、組み込み装置に組み込まれるコンピューターを構成するソフトウェアは、１つのシステムを構成する複数のコンポーネント（モジュール）を含んでおり、コンピューターのＣＰＵは各コンポーネントを実行して各コンポーネントに対応する制御を行う。組み込み装置の起動の際には、システムを初期化する初期化処理が実行される（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２００５−５３７５７５号公報
【特許文献２】特開２００５−８４９００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来、システムの初期化処理は、各コンポーネントのタスクとして実行されていた。しかし、例えば初期化処理にはコンポーネント間で問い合わせを行う処理が含まれる場合があるといった理由から、すべての初期化処理を各コンポーネントのタスクとして実行するのは効率的ではない場合があった。
【０００６】
なお、上記課題は組み込み装置を制御するコンピューターによる初期化処理に限らず、システムの初期化処理一般に共通の課題であった。
【０００７】
本発明は、上記の課題を解決するためになされたものであり、システムの初期化処理を効率化することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題の少なくとも一部を解決するために、本発明は、以下の形態または適用例として実現することが可能である。
【０００９】
［適用例１］
１つのシステムを構成する複数のコンポーネントを含むソフトウェアを実行する情報処理装置であって、
各前記コンポーネントのタスクを呼び出して実行するコンポーネントタスク実行手段と、
前記システム全体を制御するシステムタスクを呼び出して実行するシステムタスク実行手段と、を備え、
前記コンポーネントタスク実行手段は、前記システムの初期化処理の内、個別の前記コンポーネントに依存するコンポーネント依存初期化処理を、前記タスクとして実行し、
前記システムタスク実行手段は、前記システムの初期化処理の内、個別の前記コンポーネントに依存しない基本初期化処理を、前記コンポーネント依存初期化処理の前に前記システムタスクとして実行する、情報処理装置。
【００１０】
この情報処理装置では、システムの初期化処理の内の個別のコンポーネントに依存するコンポーネント依存初期化処理がコンポーネントタスク実行手段のタスクとして実行され、コンポーネント依存初期化処理の前に、システムの初期化処理の内の個別のコンポーネントに依存しない基本初期化処理がシステムタスク実行手段のシステムタスクとして実行される。そのため、この情報処理装置では、基本初期化処理の際のスイッチングに伴うオーバーヘッドが低減されると共に、コンポーネント依存初期化処理が他のコンポーネントについてのコンポーネント依存初期化処理の状況とは無関係に効率的に実行されるため、システムの初期化処理を効率化することができる。
【００１１】
［適用例２］適用例１に記載の情報処理装置であって、
前記システムタスク実行手段は、前記システムタスクとして、すべての前記コンポーネントについての前記基本初期化処理の結果を所定の記憶領域に一度にまとめて書き込む、情報処理装置。
【００１２】
この情報処理装置では、電源を切断するとシステムに不具合が発生する可能性のあるリスク時間を短縮することができる。
【００１３】
［適用例３］適用例２に記載の情報処理装置であって、さらに、
前記基本初期化処理が完了したタイミングを外部に知らせる通知部を備える、情報処理装置。
【００１４】
この情報処理装置では、ユーザーは電源切断が可能になったタイミングを把握することができるため、装置の利便性を向上させることができる。
【００１５】
［適用例４］適用例１ないし適用例３のいずれかに記載の情報処理装置であって、
前記コンポーネントは、前記情報処理装置が有するハードウェアを制御するためのコンポーネントと、前記ハードウェアを利用して所定の機能を実現するためのコンポーネントと、前記情報処理装置が有する操作部の操作に関する制御を行うためのコンポーネントと、のいずれかである、情報処理装置。
【００１６】
この情報処理装置では、装置が有するハードウェアを制御するためのコンポーネントと、ハードウェアを利用して所定の機能を実現するためのコンポーネントと、装置が有する操作部の操作に関する制御を行うためのコンポーネントと、のいずれかである複数のコンポーネントにより構成されるシステムの初期化処理を効率化することができる。
【００１７】
なお、本発明は、種々の態様で実現することが可能であり、例えば、情報処理装置、情報処理装置の制御方法、これらの方法または装置の機能を実現するためのコンピュータープログラム、そのコンピュータープログラムを記録した記録媒体、そのコンピュータープログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施例におけるプリンター１００の構成を概略的に示す説明図である。
【図２】本実施例における制御プログラム１２４のコンポーネント構成を示す説明図である。
【図３】本実施例のプリンター１００における初期化処理の流れを示す説明図である。
【図４】本実施例のプリンター１００における初期化処理の流れを示す説明図である。
【図５】システムの初期化処理の所要時間を概念的に示す説明図である。
【発明を実施するための形態】
【００１９】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．実施例：
Ａ−１．構成：
Ａ−２．初期化処理：
Ｂ．変形例：
【００２０】
Ａ．実施例：
Ａ−１．構成：
図１は、本発明の実施例におけるプリンター１００の構成を概略的に示す説明図である。本実施例のプリンター１００は、プリント機能とスキャン機能とファックス機能とを有するマルチファンクションプリンターである。プリンター１００は、ＣＰＵ１１２と、メモリー１１４と、不揮発性メモリー１１６と、操作パネル１４０と、プリンターエンジン１５０と、スキャナーエンジン１６０と、ファックスエンジン１７０と、記憶媒体インターフェイス１９２と、ネットワークインターフェイス１９４と、を備えている。プリンター１００の各構成要素は、バスを介して互いに接続されている。
【００２１】
ＣＰＵ１１２とメモリー１１４と不揮発性メモリー１１６とは、組み込み装置としてのプリンター１００に組み込まれた情報処理装置としてのコンピューター１１０を構成する。メモリー１１４には、ソフトウェア（プログラム）としてオペレーションシステム（ＯＳ）１２２および制御プログラム１２４が格納されている。ハードウェアとしてのＣＰＵ１１２は、メモリー１１４からＯＳ１２２および制御プログラム１２４を読み出し、ＯＳ１２２の下で制御プログラム１２４を実行する。これにより、コンピューター１１０によるプリンター１００の制御が実現される。
【００２２】
プリンターエンジン１５０とスキャナーエンジン１６０とファックスエンジン１７０とは、それぞれ、プリント機能とスキャン機能とファックス機能とを提供するハードウェア機構（デバイス）である。操作パネル１４０は、ユーザーの操作のためのスイッチ１４２と、各種情報や画像を表示するモニター１４４と、インジケーターとしてのＬＥＤランプ１４６と、を含んでいる。記憶媒体インターフェイス１９２は、メモリーカードといった記憶媒体との間の通信を行うためのインターフェイスである。ネットワークインターフェイス１９４は、ＬＡＮといったネットワークとの間の通信を行うためのインターフェイスである。プリンター１００は、さらに、他の機器（例えばデジタルスチルカメラやパーソナルコンピューター）との通信を行うためのインターフェイスを備えているとしてもよい。
【００２３】
図２は、本実施例における制御プログラム１２４のコンポーネント構成を示す説明図である。プリンター１００の各種制御のための制御プログラム１２４（図１）は、１つのシステムを構成する複数のコンポーネント（モジュール）を含んでいる。具体的には、制御プログラム１２４は、システム統制コンポーネント２００と、操作制御コンポーネント３００と、機能制御コンポーネント４００と、デバイス制御コンポーネント５００と、アーキテクチャコンポーネント６００と、共用コンポーネント７００と、を含んでいる。
【００２４】
システム統制コンポーネント２００は、プリンター１００において制御プログラム１２４に含まれる複数のコンポーネントにより構成されるシステム全体の統制を行うコンポーネントであり、サブコンポーネントとして、例えば、各種設定機能コンポーネント２１０と、認証管理機能コンポーネント２２０と、メンテナンス機能コンポーネント２３０と、を含んでいる。
【００２５】
操作制御コンポーネント３００は、ユーザーによるプリンター１００の操作に関する制御を行うコンポーネントであり、サブコンポーネントとして、例えば操作パネル１４０（図１）を制御する操作パネル制御コンポーネント３１０を含んでいる。
【００２６】
機能制御コンポーネント４００は、プリンター１００の提供する各機能、すなわち、プリント機能、スキャン機能、コピー機能、ファックス機能に関する制御を行うコンポーネントであり、サブコンポーネントとして、プリント機能制御コンポーネント４１０と、スキャン機能制御コンポーネント４２０と、コピー機能制御コンポーネント４３０と、ファックス機能制御コンポーネント４４０と、を含んでいる。これらのサブコンポーネントのそれぞれは、さらに、各機能を実現するための１つまたは複数のサブコンポーネントを含んでいるとしてもよい。
【００２７】
デバイス制御コンポーネント５００、プリンター１００に含まれる各ハードウェア機構（デバイス）、すなわち、プリンターデバイス、スキャナーデバイス、ファックスデバイスに関する制御を行うコンポーネントであり、サブコンポーネントとして、プリンターデバイス制御コンポーネント５１０と、スキャナーデバイス制御コンポーネント５２０と、ファックスデバイス制御コンポーネント５３０と、を含んでいる。これらのサブコンポーネントのそれぞれは、さらに、各デバイスの制御を実現するための１つまたは複数のサブコンポーネントを含んでいるとしてもよい。
【００２８】
アーキテクチャコンポーネント６００は、プリンター１００のアーキテクチャに関する制御を行うコンポーネントであり、サブコンポーネントとして、全体制御コンポーネント６１０と、機能制御コンポーネント６２０と、デバイス制御コンポーネント６３０と、画像処理メモリー管理コンポーネント６４０と、不揮発性データ管理コンポーネント６５０と、リソースデータ管理コンポーネント６６０と、を含んでいる。
【００２９】
共用コンポーネント７００は、プリンター１００の各構成要素に共用されるコンポーネントであり、サブコンポーネントとして、例えば、リソースデータコンポーネント７１０と、不揮発性データコンポーネント７２０と、デバイスドライバーコンポーネント７３０と、ライブラリーコンポーネント７４０と、を含んでいる。
【００３０】
ＣＰＵ１１２（図１）は、図２に示した各コンポーネントのタスクを呼び出して実行することにより、各コンポーネントに対応する処理を行う。例えば、ＣＰＵ１１２は、システム統制コンポーネント２００のタスク（システムタスク）を呼び出して実行することにより、システム全体の制御を実現する。以下の説明では、コンポーネントやタスクを実行するＣＰＵを単にコンポーネント名やタスク名で呼ぶものとする。なお、図２に示した各コンポーネントの内容および実現する制御・機能は、マルチファンクションプリンターにとって一般的なものであるため、ここでは詳述しない。
【００３１】
Ａ−２．初期化処理：
図３および図４は、本実施例のプリンター１００における初期化処理の流れを示す説明図である。本実施例の初期化処理は、例えばプリンター１００の起動時に、図２に示す各コンポーネントにより構成されるシステムを初期化する処理である。図３および図４には、初期化処理における各状態において各コンポーネントにより実行される処理を時系列的に沿って示している。
【００３２】
図３の上段に示すように、プリンター１００の電源が投入されると、（Ｉ）初期状態における処理が開始される。（Ｉ）初期状態では、ＯＳ１２２（図１）が起動され、起動されたＯＳ１２２によりシステム統制コンポーネント２００（図２）のシステムタスクが呼び出されて起動される（図３の「１」）。システムタスクは、起動時におけるプリンター１００の状況、例えば、特殊操作の状況やハードディスクドライブの装着状況、ライセンスの有無といった状況の把握を行う（図３の「１．１」）。
【００３３】
次に、（ＩＩ）基本部初期化中状態における処理が開始される。（ＩＩ）基本部初期化中状態では、システムタスクが、アーキテクチャが提供する基本サービスの初期化を実行する。具体的には、メモリー１１４を管理するメモリー管理者の生成・初期化と（図３の「１．２」）、リソースデータを管理するリソース管理者の生成・初期化と（図３の「１．３」）、不揮発性メモリー１１６を管理する不揮発性メモリー管理者の生成・初期化と（図３の「１．４」）、が実行される。
【００３４】
次に、（ＩＩＩ）コンポーネント構築中状態における処理が開始される。（ＩＩＩ）コンポーネント構築中状態では、アーキテクチャが提供する基本サービス（メモリー管理者、リソース管理者、不揮発性メモリー管理者）のみが利用可能となっている。このときシステムタスクは、各コンポーネントの初期化を独立して実行し、処理結果を不揮発性メモリー１１６に書き込む。具体的には、システムタスクは、自らの保存データを不揮発性メモリー１１６に書き込む（図３の「１．５」）。また、システムタスクは、操作制御コンポーネント３００と機能制御コンポーネント４００とデバイス制御コンポーネント５００とのそれぞれについての初期化を実行し（図３の「１．６」、「１．７」、「１．８」）、初期化処理の結果を保存データとして不揮発性メモリー１１６に書き込む（図３の「１．６．１」、「１．７．１」、「１．８．１」）。このように、本実施例では、すべてのコンポーネントについての初期化処理結果の不揮発性メモリー１１６への書き込みは、一度にまとめて実行される。なお、不揮発性メモリー１１６の情報が初期化されている場合には、工場出荷時の情報が不揮発性メモリー１１６に書き込まれる。
【００３５】
また、不揮発性メモリー１１６への書き込みが完了すると、初期化された操作制御コンポーネント３００のタスクは、操作パネル１４０に初期表示を行わせる処理を行う（図３の「１．６．２」）。この初期表示は、操作パネル１４０のモニター１４４にメッセージや画像を表示する処理であってもよいし、ＬＥＤ１４６を所定の態様で点灯（または点滅）させる処理であってもよい。初期表示により、すべてのコンポーネントについての初期化処理が完了し、処理結果の不揮発性メモリー１１６への書き込みが完了したことを外部（例えばユーザー）に知らせることができる。
【００３６】
次に、図４に示すように、（ＩＶ）起動中状態における処理が開始される。（ＩＶ）起動中状態では、システムタスクが、操作制御コンポーネント３００と機能制御コンポーネント４００とデバイス制御コンポーネント５００のタスクを呼び出して起動する（図４の「１．１６」、「１．１７」、「１．１８」）。起動された各コンポーネントのタスクは、コンポーネント間の通知処理を行う（図４の「３」〜「９」）。操作制御コンポーネント３００および機能制御コンポーネント４００のタスクは、コンポーネント間の通知処理が完了すると、システムタスクに対して起動完了通知を行う（図４の「１０」、「１１」）。また、デバイス制御コンポーネント５００のタスクは、プリンターデバイス、スキャナーデバイス、ファックスデバイスといった各デバイス（ハードウェア）の初期化を実行する（図４の「２」）。各デバイスから初期化の完了が通知されると（図４の「２．１」）、デバイス制御コンポーネント５００のタスクは、システムタスクに対して起動完了通知を行う（図４の「２．１．１」）。システムタスクに対して起動完了通知を行ったコンポーネントは、使用可能となる。
【００３７】
以上説明したように、本実施例のプリンター１００では、システムの初期化処理の内、（ＩＩ）基本部初期化中状態における初期化処理と（ＩＩＩ）コンポーネント構築中状態における初期化処理とがシステムタスクとして実行される。ここで、（ＩＩ）基本部初期化中状態および（ＩＩＩ）コンポーネント構築中状態における初期化処理は、個別のコンポーネントに依存しない初期化処理（以下、「基本初期化処理」とも呼ぶ）である。個別のコンポーネントに依存しない初期化処理とは、各コンポーネントの構成や機能の相違の有無にかかわらず、各コンポーネントに共通の態様で実行される初期化処理を意味している。例えば、各コンポーネントの初期化（図３の「１．６」、「１．７」、「１．８」）や不揮発性メモリー１１６への書き込み（図３の「１．６．１」、「１．７．１」、「１．８．１」）は、各コンポーネントに共通の態様で実行される基本初期化処理である。
【００３８】
また、本実施例のプリンター１００では、システムの初期化処理の内、（ＩＶ）起動中状態において各コンポーネントのタスクが起動された後の初期化処理が、各コンポーネントのタスクとして実行される。ここで、（ＩＶ）起動中状態における初期化処理は、個別のコンポーネントに依存する初期化処理（以下、「コンポーネント依存初期化処理」とも呼ぶ）である。個別のコンポーネントに依存する初期化処理とは、各コンポーネントの構成や機能に応じた態様で実行される初期化処理を意味している。例えば、各デバイス（ハードウェア）の初期化（図４の「２」）は、デバイス制御コンポーネント５００のタスクによってのみ実行されるコンポーネント依存初期化処理であるし、通知処理（図４の「３」〜「９」）は、各コンポーネント間の関係に応じた態様で実行されるコンポーネント依存初期化処理である。
【００３９】
このように、本実施例のプリンター１００では、個別のコンポーネントに依存する初期化処理が各コンポーネントのタスクとして実行され、個別のコンポーネントに依存しない初期化処理がシステムタスクとして実行されるため、以下に説明するように、システムの初期化処理を効率化することができる。
【００４０】
図５は、システムの初期化処理の所要時間を概念的に示す説明図である。図５（ａ）には、システム統制コンポーネントと他の３つのコンポーネント（コンポーネントＡ、Ｂ、Ｃ）とから構成されるシステムにおける本実施例の初期化処理の経過を示しており、図５（ｂ）には、同様のシステムにおける比較例の初期化処理の経過を示している。
【００４１】
図５（ａ）に示すように、本実施例の初期化処理では、タイミングＴ００からＴ０１の間にＯＳの起動が実行された後、すべてのコンポーネントを対象に、図３および図４に示した（Ｉ）初期状態における処理と（ＩＩ）基本部初期化中状態における処理と（ＩＩＩ）コンポーネント構築中状態における処理と（ＩＶ）起動中状態における処理とが順次実行される。一方、比較例の初期化処理では、初期化処理が各コンポーネント毎に各コンポーネントのタスクとして実行される。すなわち、図５（ｂ）に示すように、ＯＳの起動が実行された後、まずシステム統制コンポーネントの初期化がシステムタスクとして実行され、次に、例えば最も優先度の高いコンポーネントＣの初期化がコンポーネントＣのタスクとして実行され、続いてコンポーネントＡの初期化がコンポーネントＡのタスクとして実行され、最後にコンポーネントＢの初期化がコンポーネントＢのタスクとして実行される。
【００４２】
実施例の初期化処理では、個別のコンポーネントに依存しない初期化処理（（ＩＩ）基本部初期化中状態から（ＩＩＩ）コンポーネント構築中状態における処理）がシステムタスクとして実行されるため、この処理の際のスイッチングに伴うオーバーヘッドが低減され、処理に要する時間は比較的短くなる。また、個別のコンポーネントに依存する初期化処理は各コンポーネントのタスクとして実行されるが、各コンポーネントのタスクは、他のコンポーネントの状況とは無関係に（他のコンポーネントに状況を問い合わせするなどの処理を行うことなく）効率的に実行することができる。従って、実施例の初期化処理では、開始時（タイミングＴ００）から完了時（タイミングＴ０５）までに要する時間は比較的短くなる。一方、比較例の初期化処理では、１つのコンポーネントの初期化処理が完了した後に、次のコンポーネントの初期化処理が開始されるという具合に、各コンポーネントの一通りの初期化処理が順次実行される。従って、比較例の初期化処理では、スイッチングに伴うオーバーヘッドが増大し、処理に要する時間が比較的長くなると共に、後段のコンポーネントが前段のコンポーネントの初期化処理の完了を待つ必要があるため、開始時（タイミングＴ１０）から完了時（タイミングＴ１７）までに要する時間は、実施例と比較して長くなる。このように、本実施例では、システムの初期化処理を効率化することができる。
【００４３】
また、プリンター１００では、初期化処理における不揮発性メモリー１１６への書き込み中に電源が切断されるとシステムに不具合が発生する可能性がある。本実施例の初期化処理では、すべてのコンポーネントについての処理結果の不揮発性メモリー１１６への書き込みがシステムタスクとして一度にまとめて実行されるため、電源を切断するとシステムに不具合が発生する可能性のある時間（リスク時間、図５（ａ）の例ではタイミングＴ０３からＴ０４までの時間）が比較的短くなると共に、初期化開始から電源切断が可能となるまでの時間（図５（ａ）の例ではタイミングＴ００からＴ０４までの時間）も比較的短くなる。一方、比較例の初期化処理では、不揮発性メモリー１１６への書き込みが、コンポーネント毎にばらばらに実行されるため、リスク時間（図５（ｂ）の例ではタイミングＴ１２からＴ１６までの時間）が比較的長くなると共に、初期化開始から電源切断が可能となるまでの時間（図５（ｂ）の例ではタイミングＴ１０からＴ１６までの時間）も比較的長くなる。このように、本実施例の初期化処理では、リスク時間を短縮することができると共に、初期化開始からリスク時間の終わりまでの時間（電源を切断すべきでない時間）も短縮することができる。
【００４４】
また、本実施例の初期化処理では、すべてのコンポーネントについての基本初期化処理が完了し、処理結果の不揮発性メモリー１１６への書き込みが完了したことを外部に知らせる初期表示が実行されるため、装置の利便性を向上させることができる。例えば、ユーザーはプリンター１００の電源切断が可能になったタイミングを把握することができ、製品出荷工程の効率化等を図ることができる。
【００４５】
Ｂ．変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【００４６】
Ｂ１．変形例１：
上記実施例におけるプリンター１００のハードウェア構成やプリンター１００の提供する機能は、あくまで一例であり、種々変形可能である。また、制御プログラム１２４を構成する各コンポーネント（図２）は、プリンター１００のハードウェア構成やプリンター１００の提供する機能に応じて、種々変形可能である。例えば、プリンター１００は、スキャナーエンジン１６０およびファックスエンジン１７０を有さず、プリント機能のみを提供するシングルファンクションプリンターであるとしてもよい。また、上記実施例における初期化処理の内容は、あくまで一例であり、システムを構成するコンポーネントの構成やプリンター１００のハードウェア構成に応じて、種々変形可能である。また、本発明は、プリンター１００に限らず、情報処理装置における初期化処理一般に適用可能である。
【００４７】
また、上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。また、本発明は、プリンターに限らず、コンピューターが組み込まれた装置においてコンピューターにより制御を行う場合に共通に適用可能である。
【００４８】
また、本発明の機能の一部または全部がソフトウェアで実現される場合には、そのソフトウェア（コンピュータープログラム）は、コンピューター読み取り可能な記録媒体に格納された形で提供することができる。この発明において、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスクやＣＤ−ＲＯＭのような携帯型の記録媒体に限らず、各種のＲＡＭやＲＯＭ等のコンピューター内の内部記憶装置や、ハードディスク等のコンピューターに固定されている外部記憶装置も含んでいる。
【符号の説明】
【００４９】
１００…プリンター
１１０…コンピューター
１１２…ＣＰＵ
１１４…メモリー
１１６…不揮発性メモリー
１２４…制御プログラム
１４０…操作パネル
１４２…スイッチ
１４４…モニター
１５０…プリンターエンジン
１６０…スキャナーエンジン
１７０…ファックスエンジン
１９２…記憶媒体インターフェイス
１９４…ネットワークインターフェイス
２００…システム統制コンポーネント
２１０…各種設定機能コンポーネント
２２０…認証管理機能コンポーネント
２３０…メンテナンス機能コンポーネント
３００…操作制御コンポーネント
３１０…操作パネル制御コンポーネント
４００…機能制御コンポーネント
４１０…プリント機能制御コンポーネント
４２０…スキャン機能制御コンポーネント
４３０…コピー機能制御コンポーネント
４４０…ファックス機能制御コンポーネント
５００…デバイス制御コンポーネント
５１０…プリンターデバイス制御コンポーネント
５２０…スキャナーデバイス制御コンポーネント
５３０…ファックスデバイス制御コンポーネント
６００…アーキテクチャコンポーネント
６１０…全体制御コンポーネント
６２０…機能制御コンポーネント
６３０…デバイス制御コンポーネント
６４０…画像処理メモリー管理コンポーネント
６５０…不揮発性データ管理コンポーネント
６６０…リソースデータ管理コンポーネント
７００…共用コンポーネント
７１０…リソースデータコンポーネント
７２０…不揮発性データコンポーネント
７３０…デバイスドライバーコンポーネント
７４０…ライブラリーコンポーネント
【図１】
2011141596.tif 000003
【図２】
2011141596.tif 000004
【図３】
2011141596.tif 000005
【図４】
2011141596.tif 000006
【図５】
2011141596.tif 000007