説明

画像形成装置、画像形成方法およびプログラム

【課題】プリンタ、コピーおよびファクリミリ装置などに対応する各ソフトウエアを効率良く開発するとともに装置全体としての生産性を高めること。
【解決手段】ハードウエア資源を有し、画像形成処理に係るユーザーサービスを提供する画像形成装置であって、各ユーザーサービスにそれぞれ固有の処理をおこなうアプリケーションを複数搭載可能とし、前記アプリケーションと前記ハードウエア資源との間に介在し、前記ユーザーサービスを提供する際に、前記アプリケーションの少なくとも2つが共通的に必要とする前記ハードウエア資源の管理、実行制御、画像形成処理並びにジョブ生成をおこなうプラットホームを有し、前記プラットホームは、前記ハードウエア資源の管理、実行制御並びに画像形成処理をおこなう共通システムサービスと、前記複数のアプリケーションと前記共通システムサービスとの間に介在し、少なくともアプリケーションに対応するジョブの生成をおこなうアプリサービスとを備えた。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、表示部、印刷部および撮像部などのハードウエア資源を有し、プリンタ、コピーまたはファクシミリなどの複合サービスをおこなう画像形成装置、画像形成方法およびプログラムに関し、特に、プリンタ、コピーおよびファクリミリ装置などに対応する各ソフトウエア(アプリケーション)を効率良く開発するとともに装置全体としての生産性を高めることができる画像形成装置、画像形成方法およびプログラムに関する。
【背景技術】
【0002】
従来、プリンタ、コピー、ファクシミリは、それぞれ別筐体として配設されるのが一般的であったが、最近では、これら各装置の機能を1つの筐体内に収納した画像形成装置(以下「複合機」と言う)が知られている。
【0003】
この複合機は、1つの筐体内に表示部、印刷部および撮像部などを設けるとともに、プリンタ、コピーおよびファクシミリ装置にそれぞれ対応する3種類のソフトウエアを設け、ソフトウエアの切り替えによって、該装置をプリンタ、コピーまたはファクリミリ装置として動作させるものである。
【0004】
かかる複合機を用いることにより、室内にプリンタ、コピーおよびファクシミリをそれぞれ別個に設ける必要がなくなるので、トータルな低コスト化および省スペース化を図ることができる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、かかる複合機内にプリンタ、コピーおよびファクリミリ装置に対応するソフトウエア(専用OSを含む)をそれぞれ別個に設けることとしたのでは、各ソフトウエアの開発に多大の時間を要する。
【0006】
すなわち、かかる従来の複合機は、単に筐体を1つにまとめたものにすぎず、従来と同様に、プリンタ用ソフトウエア、コピー用ソフトウエアおよびファクシミリ用ソフトウエアを別個に開発せねばならない。
【0007】
もともと、プリンタのソフトウエア、コピーのソフトウエアおよびファクシミリのソフトウエアは、同種の画像を取り扱う性質上様々な面でアルゴリズムが共用できるため、ソフトウエアを別個に作成していたのでは、メモリ容量の累増などを招く問題もある。
【0008】
このため最近では、3種類の専用OSを別個に設けた場合の重複処理を省くために、UNIX(登録商標)などの汎用OSをかかる複合機に採用されることも多いが、単にOS部分を共通化するだけでは、ソフトウエアの開発効率をさほど高めることはできない。
【0009】
なお、特許文献1には、サーバダイアログおよび分散型アプリケーションなどからなるアプリケーション層と、フォントマネージャーやネットワークマネージャーなどからなる機能層と、オペレーティングシステムなどからなる制御層とで文書サービスアーキテクチャーを階層化する電子印刷システムが開示されているが、この従来技術のものは、フォントなどの一部の機能を共通化したものにすぎず、各ソフトウエアの開発効率を高めるものではない。
【0010】
また、複合機やプリンタなどに接続するパソコンには、複数のアプリケーションを搭載することができるが、このパソコンは、複合機に係るハードウエア資源を管理するものではない。本発明は、パソコンそのものではなく、パソコンが接続される複合機などの画像形成装置自体に関するものである。
【0011】
この発明は、上述した従来技術による問題点を解消するためになされたものであり、プリンタ、コピーおよびファクリミリ装置などに対応する各ソフトウエア(アプリケーション)を効率良く開発するとともに装置全体としての生産性を高めることができる画像形成装置、画像形成方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
上述した課題を解決し、目的を達成するため、請求項1の発明に係る画像形成装置は、表示部、印刷部および撮像部などの画像形成処理で使用されるハードウエア資源を有し、プリンタ、コピーまたはファクシミリなどの画像形成処理に係るユーザーサービスを提供する画像形成装置であって、前記プリンタ、コピーまたはファクシミリなどの各ユーザーサービスにそれぞれ固有の処理をおこなうアプリケーションを複数搭載可能とし、前記アプリケーションと前記ハードウエア資源との間に介在し、前記ユーザーサービスを提供する際に、前記アプリケーションの少なくとも2つが共通的に必要とする前記ハードウエア資源の管理、実行制御、画像形成処理並びにジョブ生成をおこなうプラットホームを有し、前記プラットホームは、前記ハードウエア資源の管理、実行制御並びに画像形成処理をおこなう共通システムサービスと、前記複数のアプリケーションと前記共通システムサービスとの間に介在し、少なくともアプリケーションに対応するジョブの生成をおこなうアプリサービスと、を備えたことを特徴とする。
【0013】
この請求項1の発明によれば、プリンタ、コピーまたはファクシミリなどの各ユーザーサービスにそれぞれ固有の処理をおこなうアプリケーションを複数搭載可能とし、アプリケーションと前記ハードウエア資源との間に介在し、ユーザーサービスを提供する際に、前記アプリケーションの少なくとも2つが共通的に必要とするハードウエア資源の管理、実行制御、画像形成処理並びにジョブ生成をおこなうプラットホームを有し、このプラットホームは、ハードウエア資源の管理、実行制御並びに画像形成処理をおこなう共通システムサービスと、複数のアプリケーションと前記共通システムサービスとの間に介在し、少なくともアプリケーションに対応するジョブの生成をおこなうアプリサービスとを有することとしたので、各ユーザーサービスのアプリケーションを作成する場合には、画面表示制御やキー操作部分を作成すれば足りる。
【0014】
また、請求項2の発明に係る画像形成装置は、請求項1の発明において、前記プラットホームは、あらかじめ定義された関数により前記アプリケーションからの処理要求を受信可能とするアプリケーションプログラムインターフェースを有することを特徴とする。
【0015】
この請求項2の発明によれば、あらかじめ定義された関数によりアプリケーションからの処理要求を受信可能とするアプリケーションプログラムインターフェースをプラットホームに設けることとしたので、アプリケーションとプラットホームの間の円滑な連携を維持することができる。
【0016】
また、請求項3の発明に係る画像形成装置は、請求項1または2の発明において、前記共通システムサービスは、前記アプリケーションからの処理要求を解釈して、前記ハードウエア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウエア資源の管理をおこない、前記コントロールサービスからの前記獲得要求を調停するシステムリソースマネージャーとを有することを特徴とする。
【0017】
この請求項3の発明によれば、共通システムサービス内に、アプリケーションからの処理要求を解釈して、ハードウエア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウエア資源の管理をおこない、コントロールサービスからの獲得要求を調停するシステムリソースマネージャーとを設けることとしたので、各アプリケーションによるハードウエア資源の利用などを円滑におこなうことができる。
【0018】
また、請求項4の発明に係る画像形成装置は、請求項3の発明において、前記コントロールサービスは、複数のサービスモジュールにより形成されることを特徴とする。
【0019】
この請求項4の発明によれば、コントロールサービスが、複数のサービスモジュールにより形成されることとしたので、モジュールレベルでプラットホームの機能拡張や機能変更を実現することができる。
【0020】
また、請求項5の発明に係る画像形成装置は、請求項4の発明において、前記サービスモジュールは、エンジンをコントロールするエンジンコントロールサービス、メモリおよびハードディスクをコントロールするメモリコントロールサービス、オペレーションパネルをコントロールするオペレーションパネルコントロールサービス、ファックス通信をコントロールするファックスコントロールサービスまたはネットワーク通信をコントロールするネットワークコントロールサービスのいずれか2以上のモジュールにより形成されることを特徴とする。
【0021】
この請求項5の発明によれば、サービスモジュールが、エンジンをコントロールするエンジンコントロールサービス、メモリおよびハードディスクをコントロールするメモリコントロールサービス、オペレーションパネルをコントロールするオペレーションパネルコントロールサービス、ファックス通信をコントロールするファックスコントロールサービスまたはネットワーク通信をコントロールするネットワークコントロールサービスのいずれか2以上のモジュールにより形成されることとしたので、プラットホームによってエンジン制御、メモリ制御、オペパネ制御、ファックス通信制御またはネットワーク通信制御をおこなうことができる。
【0022】
また、請求項6の発明に係る画像形成装置は、請求項4の発明において、前記サービスモジュールは、ネットワーク通信をコントロールするネットワークコントロールサービスを少なくとも有し、前記アプリケーションは、前記ネットワークコントロールサービスにより接続されたネットワークを経由して取得されて搭載されることを特徴とする。
【0023】
この請求項6の発明によれば、サービスモジュールは、ネットワーク通信をコントロールするネットワークコントロールサービスを少なくとも有し、アプリケーションは、ネットワークコントロールサービスにより接続されたネットワークを経由して取得されて搭載されることとしたので、外部のネットワークを介して新たなアプリケーションを効率良く搭載することができる。
【0024】
また、請求項7の発明に係る画像形成装置は、請求項3〜6のいずれか一つに記載の発明において、前記プラットホームは、汎用オペレーティングシステムをさらに有し、前記システムリソースマネージャーは、前記汎用オペレーティングシステムを介して前記一または複数のハードウエア資源を管理することを特徴とする。
【0025】
この請求項7の発明によれば、プラットホームが、汎用オペレーティングシステムをさらに有し、システムリソースマネージャーは、汎用オペレーティングシステムを介して一または複数のハードウエア資源を管理することとしたので、汎用オペレーティングシステム下でのプロセス実行により、効率良くハードウエア資源を管理することができる。
【0026】
また、請求項8の発明に係る画像形成装置は、請求項1〜7のいずれか一つに記載の発明において、前記複数のアプリケーションは、それぞれアプリケーションごとに追加または削除することができることを特徴とする。
【0027】
この請求項8の発明によれば、各アプリケーションが、それぞれアプリケーションごとに追加または削除できることとしたので、画像形成装置の機能をユーザが望む形に最適化することができる。
【0028】
また、請求項9の発明に係る画像形成装置は、請求項1〜8のいずれか一つに記載の発明において、前記複数のアプリケーションは、前記プリンタ、コピー並びにファクシミリなどの各サービスにかかる画面制御およびキー操作制御をそれぞれおこなうことを特徴とする。
【0029】
この請求項9の発明によれば、各アプリケーションが、プリンタ、コピー並びにファクシミリなどの各サービスにかかる画面制御およびキー操作制御をそれぞれおこなうこととしたので、かかるユーザインターフェースに関連する処理をおこなう軽易なアプリケーションを用いて各種処理を実現することができる。
【0030】
また、請求項10の発明に係る画像形成装置は、請求項9の発明において、前記複数のアプリケーションは、プリンタアプリ、コピーアプリ、ファックスアプリ、スキャナアプリ、ネットファイルアプリおよび工程検査アプリを少なくとも有することを特徴とする。
【0031】
この請求項10の発明によれば、複数のアプリケーションが、プリンタアプリ、コピーアプリ、ファックスアプリ、スキャナアプリ、ネットファイルアプリおよび工程検査アプリを少なくとも有することとしたので、ユーザーがプリンタ、コピー、ファックス、スキャナ、ネットファイルおよび工程検査をおこなうことができる。
【0032】
また、請求項11の発明に係る画像形成装置は、請求項1〜10のいずれか一つに記載の発明において、前記アプリサービスは、各アプリケーションに対応するジョブを生成するジョブ生成モジュールと、各アプリケーションに係るデータ通信をおこなうデータ通信モジュールと、を備えたことを特徴とする。
【0033】
この請求項11の発明によれば、アプリサービスが、各アプリケーションに対応するジョブを生成するジョブ生成モジュールと、各アプリケーションに係るデータ通信をおこなうデータ通信モジュールとを備えることとしたので、ジョブの生成およびデータ通信を各アプリケーション共通におこなうことができる。
【0034】
また、請求項12の発明に係る画像形成方法は、表示部、印刷部および撮像部などの画像形成処理で使用されるハードウエア資源を用いて、プリンタ、コピーまたはファクシミリなどの画像形成処理に係るユーザーサービスを提供する画像形成方法であって、複数搭載可能なアプリケーションを用いて前記プリンタ、コピーまたはファクシミリなどの各ユーザーサービスにそれぞれ固有の処理をおこない、前記アプリケーションと前記ハードウエア資源との間に介在し、前記ハードウエア資源の管理、実行制御並びに画像形成処理をおこなう共通システムサービスと、前記複数のアプリケーションと前記共通システムサービスとの間に介在し、少なくともアプリケーションに対応するジョブの生成をおこなうアプリサービスとを備えたプラットホームを用いて、前記ユーザーサービスを提供する際に、前記アプリケーションの少なくとも2つが共通的に必要とする前記ハードウエア資源の管理、実行制御、画像形成処理並びにジョブ生成をおこなうことを特徴とする。
【0035】
この請求項12の発明によれば、複数搭載可能なアプリケーションを用いてプリンタ、コピーまたはファクシミリなどの各ユーザーサービスにそれぞれ固有の処理をおこない、アプリケーションとハードウエア資源との間に介在し、ハードウエア資源の管理、実行制御並びに画像形成処理をおこなう共通システムサービスと、複数のアプリケーションと前記共通システムサービスとの間に介在し、少なくともアプリケーションに対応するジョブの生成をおこなうアプリサービスとを備えたプラットホームを用いて、ユーザーサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とするハードウエア資源の管理、実行制御、画像形成処理並びにジョブ生成をおこなうこととしたので、各ユーザーサービスのアプリケーションを作成する場合には、画面表示制御やキー操作部分を作成すれば足りる。
【0036】
また、請求項13の発明に係るプログラムは、表示部、印刷部および撮像部などの画像形成処理で使用されるハードウエア資源を有し、プリンタ、コピーまたはファクシミリなどの画像形成処理に係るユーザーサービスを提供する画像形成装置に複数搭載可能なアプリケーションプログラムであって、前記プリンタ、コピーまたはファクシミリなどの各ユーザーサービスを提供する際に、前記ハードウエア資源の管理、実行制御並びに画像形成処理をおこなう共通システムサービスと、前記複数のアプリケーションと前記共通システムサービスとの間に介在し、少なくともアプリケーションに対応するジョブの生成をおこなうアプリサービスとを備えたプラットホーム上で動作実行することを特徴とする。
【0037】
この請求項13の発明によれば、プリンタ、コピーまたはファクシミリなどの各ユーザーサービスを提供する際に、前記ハードウエア資源の管理、実行制御並びに画像形成処理をおこなう共通システムサービスと、前記複数のアプリケーションと前記共通システムサービスとの間に介在し、少なくともアプリケーションに対応するジョブの生成をおこなうアプリサービスとを備えたプラットホーム上で動作実行することとしたので、プラットホームを利用した処理の軽いアプリケーションプログラムを提供することができる。
【発明の効果】
【0038】
請求項1の発明によれば、プリンタ、コピーまたはファクシミリなどの各ユーザーサービスにそれぞれ固有の処理をおこなうアプリケーションを複数搭載可能とし、アプリケーションと前記ハードウエア資源との間に介在し、ユーザーサービスを提供する際に、前記アプリケーションの少なくとも2つが共通的に必要とするハードウエア資源の管理、実行制御、画像形成処理並びにジョブ生成をおこなうプラットホームを有し、このプラットホームは、ハードウエア資源の管理、実行制御並びに画像形成処理をおこなう共通システムサービスと、複数のアプリケーションと前記共通システムサービスとの間に介在し、少なくともアプリケーションに対応するジョブの生成をおこなうアプリサービスとを備えるよう構成したので、各ユーザーサービスのアプリケーションを作成する場合には、画面表示制御やキー操作部分を作成すれば足りる。
【0039】
また、請求項2の発明によれば、あらかじめ定義された関数によりアプリケーションからの処理要求を受信可能とするアプリケーションプログラムインターフェースをプラットホームに設けるよう構成したので、アプリケーションとプラットホームの間の円滑な連携を維持することができる。
【0040】
また、請求項3の発明によれば、共通システムサービス内に、アプリケーションからの処理要求を解釈して、ハードウエア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウエア資源の管理をおこない、コントロールサービスからの獲得要求を調停するシステムリソースマネージャーとを設けるよう構成したので、各アプリケーションによるハードウエア資源の利用などを円滑におこなうことができる。
【0041】
また、請求項4の発明によれば、コントロールサービスが、複数のサービスモジュールにより形成されるよう構成したので、モジュールレベルでプラットホームの機能拡張や機能変更を実現することができる。
【0042】
また、請求項5の発明によれば、サービスモジュールが、エンジンをコントロールするエンジンコントロールサービス、メモリおよびハードディスクをコントロールするメモリコントロールサービス、オペレーションパネルをコントロールするオペレーションパネルコントロールサービス、ファックス通信をコントロールするファックスコントロールサービスまたはネットワーク通信をコントロールするネットワークコントロールサービスのいずれか2以上のモジュールにより形成されるよう構成したので、プラットホームによってエンジン制御、メモリ制御、オペパネ制御、ファックス通信制御またはネットワーク通信制御をおこなうことができる。
【0043】
また、請求項6の発明によれば、サービスモジュールは、ネットワーク通信をコントロールするネットワークコントロールサービスを少なくとも有し、アプリケーションは、ネットワークコントロールサービスにより接続されたネットワークを経由して取得されて搭載されるよう構成したので、外部のネットワークを介して新たなアプリケーションを効率良く搭載することができる。
【0044】
また、請求項7の発明によれば、プラットホームが、汎用オペレーティングシステムをさらに有し、システムリソースマネージャーは、汎用オペレーティングシステムを介して一または複数のハードウエア資源を管理するよう構成したので、汎用オペレーティングシステム下でのプロセス実行により、効率良くハードウエア資源を管理することができる。
【0045】
また、請求項8の発明によれば、各アプリケーションが、それぞれアプリケーションごとに追加または削除できるよう構成したので、画像形成装置の機能をユーザが望む形に最適化することができる。
【0046】
また、請求項9の発明によれば、各アプリケーションが、プリンタ、コピー並びにファクシミリなどの各サービスにかかる画面制御およびキー操作制御をそれぞれおこなうよう構成したので、かかるユーザインターフェースに関連する処理をおこなう軽易なアプリケーションを用いて各種処理を実現することができる。
【0047】
また、請求項10の発明によれば、複数のアプリケーションが、プリンタアプリ、コピーアプリ、ファックスアプリ、スキャナアプリ、ネットファイルアプリおよび工程検査アプリを少なくとも備えるよう構成こととしたので、ユーザーがプリンタ、コピー、ファックス、スキャナ、ネットファイルおよび工程検査をおこなうことができる。
【0048】
また、請求項11の発明によれば、アプリサービスが、各アプリケーションに対応するジョブを生成するジョブ生成モジュールと、各アプリケーションに係るデータ通信をおこなうデータ通信モジュールとを備えるよう構成したので、ジョブの生成およびデータ通信を各アプリケーション共通におこなうことができる。
【0049】
また、請求項12の発明によれば、複数搭載可能なアプリケーションを用いてプリンタ、コピーまたはファクシミリなどの各ユーザーサービスにそれぞれ固有の処理をおこない、アプリケーションとハードウエア資源との間に介在し、ハードウエア資源の管理、実行制御並びに画像形成処理をおこなう共通システムサービスと、複数のアプリケーションと前記共通システムサービスとの間に介在し、少なくともアプリケーションに対応するジョブの生成をおこなうアプリサービスとを備えたプラットホームを用いて、ユーザーサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とするハードウエア資源の管理、実行制御、画像形成処理並びにジョブ生成をおこなうよう構成したので、各ユーザーサービスのアプリケーションを作成する場合には、画面表示制御やキー操作部分を作成すれば足りる。
【0050】
また、請求項13の発明によれば、プリンタ、コピーまたはファクシミリなどの各ユーザーサービスを提供する際に、前記ハードウエア資源の管理、実行制御並びに画像形成処理をおこなう共通システムサービスと、前記複数のアプリケーションと前記共通システムサービスとの間に介在し、少なくともアプリケーションに対応するジョブの生成をおこなうアプリサービスとを備えたプラットホーム上で動作実行するよう構成したので、プラットホームを利用した処理の軽いアプリケーションプログラムを提供することができる。
【図面の簡単な説明】
【0051】
【図1】この発明の実施の形態に係る複合機の概念を説明するための説明図である。
【図2】図1に示したプラットホームを説明するための説明図である。
【図3】図1に示した複合機の具体的なソフトウエア構成を示す構成図である。
【図4】図3に示したコピーアプリを用いたコピー動作を説明するための説明図である。
【図5】図3に示したプリンタアプリを用いたプリント動作を説明するための説明図である。
【図6】図3に示したスキャナアプリを用いたスキャナ動作を説明するための説明図である。
【図7】コピーアプリ、プリンタアプリ、スキャナアプリの3つのアプリケーションの起動時処理と、それぞれのアプリ画面を生成し表示する処理と、アプリ画面選択キーが押下されたときの処理を説明するための説明図である。
【図8】ファックスアプリまたはプリンタアプリを用いたファックス送信動作を説明するための説明図である。
【図9】図1に示した複合機のハードウエア構成を示す構成図である。
【図10】図9に示したASICの細部構成を示すブロック図である。
【発明を実施するための形態】
【0052】
以下に添付図面を参照して、この発明に係る画像形成装置、画像形成方法およびプログラムの好適な実施の形態を詳細に説明する。なお、本実施の形態では、本発明を複合機に適用した場合を示すこととする。
【0053】
まず最初に、本実施の形態に係る複合機の概念について図1および図2を用いて説明する。図1は、本実施の形態に係る複合機の概念を説明するための説明図であり、図2は、図1に示したプラットホームを説明するための説明図である。
【0054】
図1(a)に示すように、従来のプリンタ100は、描画・印刷機能並びにエンジン制御をおこなう専用OS101上にプリンタ用アプリケーション(プリンタアプリ)が搭載されていた。また、ファクシミリやコピーについても別個の筐体で構成されていた。また、これらを1つの筐体上にまとめる複合機も登場してきたが、単にプリンタ、コピーおよびファクシミリの機能を独立に設けたのでは効率的ではない。
【0055】
このため、同図(b)に示すように、従来の専用OS101を汎用OS部分111とエンジン制御部分112で形成し、これらをエンジンインターフェース(I/F)で連結するとともに、該汎用OS111上にプリンタアプリ113、コピーアプリ114および各種アプリ115を搭載する装置構成が採用されてきた。
【0056】
かかる複合機110では、たとえばUNIX(登録商標)などの汎用OSを採用しているので、プリンタアプリ113、コピーアプリ114、各種アプリ115をそれぞれプロセスとして簡単に並列実行することができる。
【0057】
しかしながら、この複合機110についても、プリンタアプリ113、コピーアプリ114、各種アプリ115が、それぞれ独立に開発される必要があるので、各ソフトウエアの開発負担をさほど軽減できるわけではない。
【0058】
そこで、本実施の形態に係る複合機120では、図1(c)に示すように、各アプリケーションの共通部分を共通システムサービス121aおよびアプリサービス121bとして括りだし、この共通システムサービス121a、アプリサービス121bおよび汎用OS111によりプラットホーム122を形成する。
【0059】
特に、この複合機120では、アプリサービス121bが各アプリ123〜125と共通システムサービス121aとの間に介在するよう構成することにより、本来各アプリ123〜125がそれぞれ独立しておこなうべきジョブの生成やデータ通信をアプリサービス121bが一括しておこなうこととしている。このため、このプラットホーム122上に搭載するプリンタアプリ123、コピーアプリ124および各種アプリ125の開発労力軽減並びにアプリケーションのスリム化を図ることができる。
【0060】
たとえば、図2(a)に示すように、コピーアプリが130,000ステップ、ファックスアプリが125,000ステップ、プリンタアプリが100,000ステップのコードからなる場合に、これらを別個のアプリケーションとして形成すると、合計で130,000+125,000+100,000=355,000ステップのコードを要する。
【0061】
ここで、各アプリケーションに共通に利用できる部分が180,000ステップであるならば、この部分をプラットホームとして集約することにより、生産性が向上する。
【0062】
たとえば、同図(b)に示すように、コピーアプリが40,000ステップ、ファックスアプリが100,000ステップ、プリンタアプリが35,000ステップ、プラットホームが90,000ステップのコードで形成できるとすると、合計で40,000+100,000+35,000+90,000=265,000ステップとなり、装置全体の生産性が134%(355,000/265,000)向上する。
【0063】
また、プラットホーム部分を考えると、生産性が200%(180,000/90,000)向上し、さらにコピーアプリ、ファックスアプリ、プリンタアプリの開発効率についても大幅に向上する。
【0064】
このように、本実施の形態に係る複合機120では、アプリサービス121b、共通システムサービス121aおよび汎用OS111からなるプラットホーム122上に、プリンタアプリ123、コピーアプリ124および各種アプリ125を搭載するよう構成しているので、装置全体の生産性を高めるとともに、各アプリケーションの開発効率を高めることができる。
【0065】
次に、図1に示した複合機120のソフトウエア構成についてさらに詳細に説明する。図3は、図1に示した複合機120の具体的なソフトウエア構成を示す構成図である。
【0066】
同図に示すように、この複合機120は、白黒ラインプリンタ(B&W LP)301、カラーラインプリンタ(Color LP)302、その他ハードウエアリソース303などを有するとともに、ソフトウエア群310は、プラットホーム320およびアプリケーション340からなる。
【0067】
プラットホーム320は、汎用OS321と、共通システムサービス330と、アプリサービス329とで形成される。なお、このプラットホーム320は、あらかじめ定義された関数により前記アプリケーションからの処理要求を受信可能とするアプリケーションプログラムインターフェースを有する。
【0068】
汎用OS321は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム320並びにアプリケーション340の各ソフトウエアをそれぞれプロセスとして並列実行する。オープンソースのUNIX(登録商標)を用いることにより、プログラムの安全性を確保できるとともに、ネットワーク対応可能となり、ソースコードの入手も容易となる。さらに、OS、TCP/IPのロイヤリティが不要であり、アウトソーシングも容易となる。
【0069】
共通システムサービス330は、アプリケーション340に対して基本的な共通サービスを提供するものであり、アプリケーション330からの処理要求を解釈して、ハードウエア資源の獲得要求を発生させる下記に示すコントロールサービスと、一または複数のハードウエア資源の管理をおこない、コントロールサービスからの獲得要求を調停するシステムリソースマネージャー(SRM(System Resource Manager)323)とを有する。
【0070】
このコントロールサービスは、複数のサービスモジュールにより形成され、具体的には、SCS(System Control Service)322と、ECS(Engine Control Service)324と、MCS(Memory Control Service)325と、OCS(Operation panel Control Service)326と、FCS(FAX Control Service)327と、NCS(Network Control Service)328とがある。
【0071】
SRM323は、SCS322とともにシステムの制御およびリソースの管理をおこなうものであり、スキャナ部やプリンタ部などのエンジン、メモリ、HDDファイル、ホストI/O(セントロI/F、ネットワークI/F、IEEE1394I/F、RS232CI/Fなど)のハードウエア資源を利用する上位層からの要求にしたがって調停をおこない、実行制御する。
【0072】
具体的には、このSRM323は、要求されたハードウエア資源が利用可能であるかどうか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウエア資源が利用可能である旨を上位層に伝える。また、上位層からの要求に対してハードウエア資源の利用スケジューリングをおこない、要求内容(たとえば、プリンタエンジンによる紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施するようにしてもよい。
【0073】
SCS322は、(1)アプリ管理、(2)操作部制御、(3)システム画面表示(ジョブリスト画面、カウンタ表示画面など)、(4)LED表示、(5)リソース管理、(6)割り込みアプリ制御をおこなう。具体的には、(1)アプリ管理では、アプリの登録と、その情報を他のアプリに通知する処理をおこなう。登録されたアプリに対しては、システムの設定やアプリからの要求設定に応じてエンジン状態を通知する。また、登録済みのアプリに対しては、電力モード移行の問い合わせ、割り込みモードなど、システムの状態遷移のための可否問い合わせをおこなう。
【0074】
また、(2)操作部制御では、アプリの操作部使用権の排他制御をおこなう。そして、操作部の使用権を持つアプリへ操作部ドライバ(OCS)からのキー情報を排他的に通知する。このキー情報は、アプリ切替中などのシステムの状態遷移に応じて一時的に通知を停止するマスク制御をおこなう。
【0075】
また、(3)システム画面表示では、操作部使用権を持つアプリからの要求内容に応じて、エンジン状態に対応する警告画面の表示をおこなう。これらのなかには、利用者制限画面などアプリの状態に応じて警告表示をオン/オフするものもある。エンジン状態以外では、ジョブの予約・実行状況を表示するためのジョブリスト画面、トータルカウンタ類を表示するためのカウンタ画面、CSSの通報中を示す画面の表示制御をおこなう。これらのシステム画面表示に関しては、アプリへ操作部使用権の解放を要求せず、アプリ画面を覆うシステム画面として描画をおこなう。
【0076】
また、(4)LED表示では、警告LED、アプリキーなどのシステムLEDの表示制御をおこなう。アプリ固有のLEDについては、アプリが直接表示用ドライバを使用して制御する。
【0077】
また、(5)リソース管理では、アプリ(ECS)がジョブを実行するにあたって、排他しなければならないエンジンリソース(スキャナ、ステープルなど)の排他制御のためのサービスをおこない、(6)割り込みアプリ制御では、特定のアプリを優先動作せさるための制御・サービスをおこなう。
【0078】
ECS324は、白黒ラインプリンタ(B&W LP)301、カラーラインプリンタ(Color LP)302、その他ハードウエアリソース303などのエンジンを制御するものであり、画像読み込みと印刷動作、状態通知、ジャムリカバリなどをおこなう。
【0079】
具体的には、アプリケーション340から受け取ったジョブモードの指定にしたがい、印刷要求をSRM323に順次発行していくことで、一連のコピー/スキャン/印刷動作を実現する。このECS324が取り扱う対象のジョブは、画像入力デバイスにスキャナ(SCANNER)が指定されているか、または、画像出力デバイスにプロッタ(PLOTTER)が指定されているものとする。
【0080】
たとえば、コピー動作の場合には「SCANNER → PLOTTER」と指定され、ファイル蓄積の場合には「SCANNER → MEMORY」と指定され、ファクシミリ送信の場合には「SCANNER → FAX_IN」と指定される。また、蓄積ファイル印刷またはプリンタアプリ311からの印刷の場合には「MEMORY → PLOTTER」と指定され、ファクシミリ受信の場合には「FAX_OUT → PLOTTER」と指定される。
【0081】
なお、ジョブの定義はアプリケーションによって異なるが、ここでは利用者が取り扱う1セットの画像群に対する処理動作を1ジョブと定義する。たとえば、コピーのADF(Automatic Document Feeder)モードの場合は、原稿台に置かれた1セットの原稿を読み取る動作が1ジョブとなり、圧板モードは最終原稿が確定するまでの読み取り動作が1ジョブとなる。また、コピーアプリ312の場合には、一束の原稿をコピーする動作が1ジョブとなり、ファックスアプリ313の場合には、1文書の送信動作または1文書の受信動作が1ジョブとなり、プリンタアプリの場合には、1文書の印刷動作が1ジョブとなる。
【0082】
MCS325は、メモリ制御をおこなうものであり、具体的には、画像メモリの取得および開放、ハードディスク装置(HDD)の利用、画像データの圧縮および伸張などをおこなう。
【0083】
ここで、ハードディスク装置に蓄積される画像データファイルとして必要な情報を管理するために必要な機能としては、(1)ファイルアクセス(生成/削除/オープン/クローズ)機能(排他処理を含む)、(2)ファイル名称/ID管理(ファイル/ユーザ)/パスワード管理/蓄積時刻管理/ページ数/データフォーマット(圧縮方式など)/アクセス制限/作成アプリ/印刷条件管理などの各種ファイル属性管理(物理的なページ単位の画像データのファイルとしての管理)、(3)ファイル単位およびページ単位での結合/挿入/切断機能、(4)ファイルソート機能(蓄積時刻順/ユーザID順など)、(5)全ファイル情報の通知(表示/検索用)、(6)リカバリ機能(破損ファイルのファイル/ページ破棄)、(7)ファイルの自動削除機能などがある。
【0084】
また、RAMなどのメモリへ画像データを保持しアクセスするための機能としては、(1)アプリケーション340からのファイルおよびページ/バンド属性情報を取得する機能、(2)アプリケーション340からの画像データ領域の確保、解放、リード(Read)、ライト(Write)機能などがある。
【0085】
OCS326は、オペレータと本体制御間の情報伝達手段となる操作パネルを制御するモジュールであり、オペレータのキー操作イベントを本体制御に通知する処理、各アプリがGUIを構築するためのライブラリ関数を提供する処理、構築されたGUI情報をアプリ別に管理する処理、操作パネル上への表示反映処理などをおこなう。
【0086】
このOCS326は、(1)GUI構築のためのライブラリの提供機能、(2)操作部ハードウエア資源管理機能、(3)VRAM描画/LCD表示機能(ハードウエア表示、表示アプリ切替、表示言語切替、ウインドウ暗色表示、メッセージ/アイコンブリンク表示、メッセージの連結表示)、(4)ハードキー入力検出機能、(5)タッチパネルキー入力検出機能、(6)LED出力機能、(7)ブザー出力機能などを有する。
【0087】
FCS327は、システムコントローラの各アプリ層からPSTN/ISDN網を使ったファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読み取り、ファクシミリ受信印刷、融合送受信をおこなうためのAPIを提供するものである。
【0088】
具体的には、このFCS327は、(1)アプリ層から送信依頼されたドキュメントをPSTN/ISDN網を使ってファクシミリ受信機に送信をおこなう送信機能、(2)PSTN/ISDN網から受信したファクシミリ受信画面、各種レポート類を各アプリ層に転送、印刷をおこなう受信機能、(3)ファックスボードに記憶されている電話帳、グループ情報などのファクシミリ管理項目の引用や登録をおこなう電話帳引用・登録機能、(4)ファックスボードに搭載されているBKMに記憶されている送受信結果履歴情報などを必要としているアプリに通知するファックスログ通知機能、(5)ファックスボードの状態変化があったときにFCSに登録してあるアプリに変化のあったイベントを通知するイベント通知機能などを有する。
【0089】
NCS328は、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのモジュール群であり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介をおこなう。具体的には、ftpd、httpd、lpd、snmpd、telnetd、smtpdなどのサーバデーモンや、同プロトコルのクライアント機能などを有する。
【0090】
アプリサービス329は、プラットホーム320を形成する共通サービスの一つであるが、上記共通システムサービス330を形成するECS324、MCS325、OCS326、FCS327、NCS328、SRM323およびSCS322とは異なり、アプリケーション340側に立ったサービスを提供するものである。
【0091】
言い換えると、このアプリサービス329は、アプリケーション340と共通システムサービス330との間に介在し、両者の間の橋渡しを担う役割を果たしている。
【0092】
具体的には、このアプリサービス329は、コピーアプリ312、ファックスアプリ313、スキャナアプリ314などが、本来おこなうべきジョブの生成やデータ通信の機能を一括して代行する。このため、コピーアプリ312、ファックスアプリ313、スキャナアプリ314などは、画面やキー操作を対象とすれば足りるので、アプリの開発効率が向上する。
【0093】
アプリケーション340は、ページ記述言語(PDL)、PCLおよびポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ311と、コピー用アプリケーションであるコピーアプリ312と、ファクシミリ用アプリケーションであるファックスアプリ313と、スキャナ用アプリケーションであるスキャナアプリ314と、ネットファイル用アプリケーションであるネットファイルアプリ315と、工程検査用アプリケーションである工程検査アプリ316とを有する。
【0094】
各アプリケーション311〜316は、プラットホーム320上の各プロセスを利用して動作実行し得るため、画面制御およびキー操作制御などをおこなう画面表示制御プログラムがその主体となる。特に、アプリサービス329がプラットホーム320上に設けられているので、ジョブの生成やデータ通信の機能を設ける必要がない。なお、NCS328により接続されたネットワークを介して新たなアプリケーションをネットワーク経由で搭載することもできる。また、各アプリケーションはアプリケーションごとに追加または削除することができる。
【0095】
次に、図3に示したコピーアプリ312を用いたコピー動作、プリンタアプリ311を用いたプリント動作、スキャナアプリ314を用いたスキャナ動作についてさらに具体的に説明する。
【0096】
図4は、図3に示したコピーアプリ312を用いたコピー動作を説明するための説明図である。同図に示すように、コピーアプリ312はコピー画面・キー操作モジュール312aを有し、オペパネからコピー条件が指定され、スタートキーが押下されると、コピー画面・キー操作モジュール312aがアプリサービス329のアプリジョブ生成モジュール329aに対してコピー条件を転送する(ステップS401)。なお、このコピー条件には、紙サイズ、部数、両面、ソート、ステープルなどがある。
【0097】
その後、アプリジョブ生成モジュール329aは、ECS324のAPIを用いてエンジンジョブ実行制御モジュール324aに対してエンジンジョブ生成関数を呼び出し、ジョブモードの設定をおこなう。なお、かかるジョブモードとは、スキャナ、プロッタ、フィニッシャなどを動作させるために必要なパラメータ群であり、上記コピー条件から生成される。さらに、アプリジョブ生成モジュール329aは、ECS324のAPIを用いてエンジンジョブ実行制御モジュール324aに対してジョブ実行開始関数を呼び出し、ジョブ実行を指示する(ステップS402)。
【0098】
エンジンジョブ実行制御モジュール324aは、MCS325のAPIを用いて画像メモリハンドリングモジュール325aに対して画像メモリ確保関数を呼び出し、画像メモリの確保を指示する(ステップS403)。
【0099】
画像メモリハンドリングモジュール325aは、SRM323のメモリ資源管理モジュール323bに対してメモリ取得関数を呼び出しメモリを取得する(ステップS404)。エンジンジョブ実行制御モジュール324aは、SRM323のエンジン資源管理モジュールに対して資源取得関数を呼び出し、スキャナおよびプロッタの動作を開始し、コピージョブを実行する。
【0100】
次に、図3に示したプリンタアプリ311を用いたプリント動作についてさらに具体的に説明する。図5は、図3に示したプリンタアプリ311を用いたプリント動作を説明するための説明図である。同図に示すように、プリンタアプリ311は、RIP処理モジュール311aと、プリンタ画面・キー操作モジュール311bとを有する。
【0101】
PCなどのホストからセントロI/F、USBI/F、ネットワークI/Fなどを経由してSRM323のホストI/O資源管理モジュール323dに印刷データコマンドが入力されると(ステップS501)、このホストI/O資源管理モジュール323dは、印刷データをNCS328のホスト通信I/F制御モジュール328aに転送する。ここで、このホスト通信I/F制御モジュール328aは、入力された印刷データを解析して送り先アプリケーションを判定する。ホスト通信I/F制御モジュール328aは、複数の通信プロトコルまたはホストI/Fからデータを受け取り、送り先を調停する(ステップS502)。
【0102】
印刷データが、アプリサービス329内のアプリデータ通信モジュール329bに転送されると(ステップS503)、さらにアプリジョブ生成モジュール329aに入力され、新たなプリントジョブが生成される(ステップS504)。
【0103】
アプリジョブ生成モジュール329aは、印刷データの言語種類に応じてプリンタアプリ311のRIP処理モジュール311aにデータを転送し(ステップS505)、このRIP処理モジュール311aは、印刷データの画像展開をおこなった後に、アプリジョブ生成モジュール329aに戻される(ステップS506)。
【0104】
そして、このアプリジョブ生成モジュール329aで生成された画像データは、MCS325の画像メモリハンドリングモジュール325aに出力される(ステップS507)。画像メモリには複数のアプリからの要求が発生するため、メモリ資源の調停をおこなうSRM323のメモリ資源管理モジュール323bに対してメモリ確保要求を発行し、取得した後に展開された画像データがメモリ上に書き込まれる(ステップS508)。
【0105】
画像データの印刷準備が完了すると、アプリジョブ生成モジュール329aがECS324のAPIを用いてエンジンジョブ実行制御モジュール324aに対してエンジンジョブ生成関数を呼び出し、ジョブモード設定をおこなった後に、ジョブ開始関数を呼び出し、ジョブ実行を指示する(ステップS509)。
【0106】
エンジンジョブ実行制御モジュール324aは、SRM323のエンジン資源管理モジュール323aに対してエンジン資源取得関数を呼び出し、プロッタの動作を開始し、プリントジョブを実行する(ステップS510)。
【0107】
次に、図3に示したスキャナアプリ314を用いたスキャナ動作についてさらに具体的に説明する。図6は、図3に示したスキャナアプリ314を用いたスキャナ動作を説明するための説明図である。同図に示すように、スキャナアプリ314は、スキャナ画面・キー操作モジュール314aを有する。
【0108】
オペパネからスキャナアプリ314を選択するとともにスキャン条件が入力され、スタートキーが押下されると、スキャナ画面・キー操作モジュール314aがアプリサービス329のアプリジョブ生成モジュール329aに対してスキャナ条件を転送すると(ステップS601)、アプリジョブ生成モジュール329aは、要求された画像サイズにしたがってスキャンに必要なメモリを確保するために、MCS325の画像メモリハンドリングモジュール325aが、メモリ資源の調停をおこなうSRM323のメモリ資源管理モジュール323bに対してメモリ確保要求を発行し、メモリが取得された後に画像データがメモリ上に書き込まれる(ステップS602〜S603)。
【0109】
画像データのスキャン準備が完了すると、アプリジョブ生成モジュール329aが、ECS324のエンジンジョブ実行制御モジュール324aに対してエンジンジョブ生成関数を呼び出し、ジョブモード設定をおこなった後にジョブ開始関数を呼び出し、スキャンジョブ実行を指示する(ステップS604)。
【0110】
エンジンジョブ実行制御モジュール324aは、SRM323のエンジン資源管理モジュール323aに対してエンジン資源取得関数を呼び出し、スキャナの動作を開始し、スキャナジョブを実行する(ステップS605)。
【0111】
アプリジョブ生成モジュール329aが、ECS324からスキャン完了のイベントを受け取ると、読み取り画像をネットワーク他のホストI/O資源を利用して外部のPCに転送をおこなうため、アプリデータ通信モジュール329bがNCS328のホスト通信I/F制御モジュール328aに対してURLなどの転送先PCのアドレスおよびスキャンした画像データ(またはメモリ上のアドレス)を送る(ステップS606〜S607)。ここでは、ftpやhttpなどのファイル転送をおこなうプロトコル機能を使って画像データ通信を制御することとする。
【0112】
ホスト通信I/F制御モジュール328aは、ネットワーク、IEEE1394、USB、SCSIなどのホストI/O資源を確保するために、SRM323のホストI/O資源管理モジュール323dの資源確保関数を呼び出す(ステップS608)。ホストI/O資源管理モジュール323dは、要求されたホストI/O資源が利用可能となった時点で画像データ通信をおこなう(ステップS609)。
【0113】
次に、コピーアプリ312、プリンタアプリ311、スキャナアプリ314の3つのアプリケーションの起動時処理と、それぞれのアプリ画面を生成し表示する処理と、アプリ画面選択キーが押下されたときの処理について説明する。図7は、コピーアプリ312、プリンタアプリ311、スキャナアプリ314の3つのアプリケーションの起動時処理と、それぞれのアプリ画面を生成し表示する処理と、アプリ画面選択キーが押下されたときの処理を説明するための説明図である。
【0114】
アプリケーションの起動時処理; 電源オンやシステムリセット時には少なくともSCS322とOCS326が起動された後にアプリケーションが起動される。コピーアプリ312、プリンタアプリ311およびスキャナアプリ314は、SCS322のアプリ登録管理モジュール322bに対して起動された旨を登録する(ステップS701〜S703)。
【0115】
画面生成処理; OCS326では、複数のアプリケーションがそれぞれ仮想的な画面メモリを複数持つことができる図面管理機能を有する。このため、コピーアプリ312、プリンタアプリ311およびスキャナアプリ314は、それぞれウインドウ制御ライブラリモジュール326aにより画面生成を実行することができる(ステップS704〜S708)。
【0116】
表示処理; 複数の画面メモリのうち一つが表示パネル上に描画される。また、複数の画面メモリの内容を合成した画面が表示されるようにしても良い。たとえば、コピー動作中にファックス受信した場合には、アプリ共通の画面領域にファックス受信中である旨を表示することができる。
【0117】
画面切換処理; 表示パネルに描画される画面メモリは、SCS322のシステム画面表示制御モジュールによって切り換えられる。たとえば、操作パネル上のアプリ選択キーが押下された場合には、ステップS709〜S714にしたがって選択されたアプリ画面が描画される。また、SCS322には、機器内部ハードウエアやエンジンの状態情報を保持する機器状態管理モジュール322cがあるため、ジャムや紙なしなどのエラーや異常時の表示画面などを切り換えることができる。
【0118】
次に、ファックスアプリ313またはプリンタアプリ311を用いたファックス送信動作について説明する。図8は、ファックスアプリ313またはプリンタアプリ311を用いたファックス送信動作を説明するための説明図である。
【0119】
同図に示すように、ファックスアプリ313を用いたファックス送信動作については、ファックス操作画面において送信宛先番号が入力され、スタートキーが押下されると、ファックス画面・キー操作モジュール313aがアプリサービス329のアプリジョブ生成モジュール329aに対してジョブ生成関数を呼び出し(ステップS801)、このファックスジョブ生成モジュール313bが、FCS327のファックスジョブ実行制御モジュール327aに対して送信開始関数を呼び出す(ステップS802)。
【0120】
すると、このファックスジョブ実行制御モジュール327aは、ECS324のAPIを用いてエンジンジョブ実行制御モジュール324aに対してエンジンジョブ生成関数を呼び出し、ジョブモードの設定をおこなう(ステップS803)。このエンジンジョブ実行制御モジュール324aは、MCS325のAPIを用いて画像メモリハンドリングモジュール325aに対して画像メモリ確保関数を呼び出し、画像メモリの確保を指示する(ステップS804)。
【0121】
画像メモリハンドリングモジュール325aは、SRM323に対してメモリ取得関数を呼び出し、ファックス原稿のスキャンに必要なメモリを取得し(ステップS805)、メモリが確保されると、エンジンジョブ実行制御モジュール324aは、SRM323のエンジン資源管理モジュール323aに対してスキャナ資源の確保を要求する関数を呼び、確保できた後にスキャナ動作を開始する(ステップS806)。
【0122】
スキャナから原稿画像データがメモリ上に保持されると、ECS324からFCS327に対してスキャン完了イベントが通知され、ファクシミリジョブ実行制御モジュール327aが、ファックスボード資源管理モジュール323gの送信開始関数を呼び出すと、PSTN、ISDN回線などを使ってファックス送信手順が開始される(ステップS807〜S808)。
【0123】
次に、プリンタアプリ311を用いたファックス送信動作については、通常のプリント動作と同様に、印刷データがホストI/O資源管理モジュール323dに入力され、その際に送信宛先番号などのファクシミリ送信に必要な情報を含むコマンド情報が付加される(ステップS809)。
【0124】
ファックス送信用の印刷データが、NCS328のホスト通信I/F制御モジュールからアプリサービス329のアプリデータ通信モジュール329bを経て、アプリジョブ生成モジュール329aに転送されると(ステップS810〜S812)、新たなファックス送信用プリントジョブが生成される。
【0125】
そして、印刷データがRIP処理モジュール311aに転送され、画像データが生成されると、この画像データは、ファクシミリ送信に必要な情報とともに、FCS327のファックスジョブ実行制御モジュール327aに入力され(ステップS813〜815)、以後ファックス送信動作と同様の処理がなされる(ステップS807〜S808)。
【0126】
なお、上記ステップS813〜S814によるRIP処理をおこなうのではなく、PSTNやISDN回線などを使ってバイナリーデータの転送をおこなうプロトコル(BFTP;Binary File Transfer Protocol)によって印刷データを送信することもできる。
【0127】
また、ここでは説明の便宜上、送信動作のみを説明したが、たとえば、ステップS808、S807、S802、S803、S804、S805、S806の順に処理することにより、ファックス受信や印刷が可能となる。なお、BFTPを用いた印刷データの受信および印刷は、ステップS808、S807、S802、S815、S813、S814、S815、S803、S804、S805、S806の順に処理することで実現できる。
【0128】
次に、図1に示した複合機120のハードウエア構成について説明する。図9は、図1に示した複合機120のハードウエア構成を示す構成図である。同図に示すように、この複合機120は、CPU902、SDRAM903、フラッシュメモリ904およびHD905などをASIC901に接続したコントローラボード900と、オペレーションパネル910と、ファックスコントロールユニット(FCU)920と、USB930と、IEEE1394940と、プリンタ950とからなる。
【0129】
そして、オペレーションパネル910はASIC901に直接接続され、FCU920、USB930、IEEE1394940およびプリンタ950は、PCIバスを介してASIC901に接続されている。
【0130】
図10は、図9に示したASIC901の細部構成を示すブロック図である。同図に示すように、このASIC901は、CPUインターフェース(CPU I/F)、SDRAMインターフェース(SDRAM I/F)、ローカルバスインターフェース(Local BUS I/F)、PCIインターフェース(PCI I/F)、1284、MAC(Media Access Controllor)、I/O、OPEインターフェース(OPE I/F)、HDインターフェース(HD I/F)、Comp/de-comp、Rotateによって形成されている。
【0131】
かかるハードウエア構成を採用することにより、デバイスの共有化による低コスト設計が可能となるとともに、アプリ間融合が容易となる。また、低速機から高速機までスケーラブルなアーキテクチャーとなり、各アプリで使用するハード/ソフトが共通化され、開発効率を向上させることができる。また、新規機能に対する対応が容易となる。
【0132】
上述してきたように、本実施の形態では、各アプリケーションの共通部分をアプリサービス121bおよび共通システムサービス121aとして括りだし、このアプリサービス121b、共通システムサービス121aおよび汎用OS111によりプラットホーム122を形成し、このプラットホーム122上に、プリンタアプリ123、コピーアプリ124および各種アプリ125を搭載するよう構成したので、各アプリケーションの開発労力軽減並びにアプリケーションのスリム化を図ることができる。
【符号の説明】
【0133】
100 プリンタ
101 専用OS
102 プリンタアプリ
110 複合機
111 汎用OS
112 エンジン制御部
113 プリンタアプリ
114 コピーアプリ
115 各種アプリ
120 複合機
121a 共通システムサービス
121b アプリサービス
122 プラットホーム
123 プリンタアプリ
124 コピーアプリ
125 各種アプリ
【先行技術文献】
【特許文献】
【0134】
【特許文献1】特公平7−79368号公報

【特許請求の範囲】
【請求項1】
表示部、印刷部および撮像部などの画像形成処理で使用されるハードウエア資源を有し、プリンタ、コピーまたはファクシミリなどの画像形成処理に係るユーザーサービスを提供する画像形成装置であって、
前記プリンタ、コピーまたはファクシミリなどの各ユーザーサービスにそれぞれ固有の処理をおこなうアプリケーションを複数搭載可能とし、
前記アプリケーションと前記ハードウエア資源との間に介在し、前記ユーザーサービスを提供する際に、前記アプリケーションの少なくとも2つが共通的に必要とする前記ハードウエア資源の管理、実行制御、画像形成処理並びにジョブ生成をおこなうプラットホームを有し、
前記プラットホームは、
前記ハードウエア資源の管理、実行制御並びに画像形成処理をおこなう共通システムサービスと、
前記複数のアプリケーションと前記共通システムサービスとの間に介在し、少なくともアプリケーションに対応するジョブの生成をおこなうアプリサービスと、
を備えたことを特徴とする画像形成装置。
【請求項2】
前記プラットホームは、あらかじめ定義された関数により前記アプリケーションからの処理要求を受信可能とするアプリケーションプログラムインターフェースを有することを特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記共通システムサービスは、
前記アプリケーションからの処理要求を解釈して、前記ハードウエア資源の獲得要求を発生させるコントロールサービスと、
一または複数のハードウエア資源の管理をおこない、前記コントロールサービスからの前記獲得要求を調停するシステムリソースマネージャーと
を有することを特徴とする請求項1または2に記載の画像形成装置。
【請求項4】
前記コントロールサービスは、複数のサービスモジュールにより形成されることを特徴とする請求項3に記載の画像形成装置。
【請求項5】
前記サービスモジュールは、エンジンをコントロールするエンジンコントロールサービス、メモリおよびハードディスクをコントロールするメモリコントロールサービス、オペレーションパネルをコントロールするオペレーションパネルコントロールサービス、ファックス通信をコントロールするファックスコントロールサービスまたはネットワーク通信をコントロールするネットワークコントロールサービスのいずれか2以上のモジュールにより形成されることを特徴とする請求項4に記載の画像形成装置。
【請求項6】
前記サービスモジュールは、ネットワーク通信をコントロールするネットワークコントロールサービスを少なくとも有し、前記アプリケーションは、前記ネットワークコントロールサービスにより接続されたネットワークを経由して取得されて搭載されることを特徴とする請求項4に記載の画像形成装置。
【請求項7】
前記プラットホームは、汎用オペレーティングシステムをさらに有し、前記システムリソースマネージャーは、前記汎用オペレーティングシステムを介して前記一または複数のハードウエア資源を管理することを特徴とする請求項3〜6のいずれか一つに記載の画像形成装置。
【請求項8】
前記複数のアプリケーションは、それぞれアプリケーションごとに追加または削除することができることを特徴とする請求項1〜7のいずれか一つに記載の画像形成装置。
【請求項9】
前記複数のアプリケーションは、前記プリンタ、コピー並びにファクシミリなどの各サービスにかかる画面制御およびキー操作制御をそれぞれおこなうことを特徴とする請求項1〜8のいずれか一つに記載の画像形成装置。
【請求項10】
前記複数のアプリケーションは、プリンタアプリ、コピーアプリ、ファックスアプリ、スキャナアプリ、ネットファイルアプリおよび工程検査アプリを少なくとも有することを特徴とする請求項9に記載の画像形成装置。
【請求項11】
前記アプリサービスは、各アプリケーションに対応するジョブを生成するジョブ生成モジュールと、各アプリケーションに係るデータ通信をおこなうデータ通信モジュールと、を備えたことを特徴とする請求項1〜10のいずれか一つに記載の画像形成装置。
【請求項12】
表示部、印刷部および撮像部などの画像形成処理で使用されるハードウエア資源を用いて、プリンタ、コピーまたはファクシミリなどの画像形成処理に係るユーザーサービスを提供する画像形成方法であって、
複数搭載可能なアプリケーションを用いて前記プリンタ、コピーまたはファクシミリなどの各ユーザーサービスにそれぞれ固有の処理をおこない、
前記アプリケーションと前記ハードウエア資源との間に介在し、前記ハードウエア資源の管理、実行制御並びに画像形成処理をおこなう共通システムサービスと、前記複数のアプリケーションと前記共通システムサービスとの間に介在し、少なくともアプリケーションに対応するジョブの生成をおこなうアプリサービスとを備えたプラットホームを用いて、前記ユーザーサービスを提供する際に、前記アプリケーションの少なくとも2つが共通的に必要とする前記ハードウエア資源の管理、実行制御、画像形成処理並びにジョブ生成をおこなう
ことを特徴とする画像形成方法。
【請求項13】
表示部、印刷部および撮像部などの画像形成処理で使用されるハードウエア資源を有し、プリンタ、コピーまたはファクシミリなどの画像形成処理に係るユーザーサービスを提供する画像形成装置に複数搭載可能なアプリケーションプログラムであって、
前記プリンタ、コピーまたはファクシミリなどの各ユーザーサービスを提供する際に、前記ハードウエア資源の管理、実行制御並びに画像形成処理をおこなう共通システムサービスと、前記複数のアプリケーションと前記共通システムサービスとの間に介在し、少なくともアプリケーションに対応するジョブの生成をおこなうアプリサービスとを備えたプラットホーム上で、動作実行する
ことを特徴とするプログラム。

【図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


【公開番号】特開2012−70429(P2012−70429A)
【公開日】平成24年4月5日(2012.4.5)
【国際特許分類】
【出願番号】特願2011−267211(P2011−267211)
【出願日】平成23年12月6日(2011.12.6)
【分割の表示】特願2010−272804(P2010−272804)の分割
【原出願日】平成13年5月16日(2001.5.16)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】