JP3798682B2 - 画像情報処理装置、画像情報処理システム、プロセス間通信情報取得方法およびその方法をコンピュータに実行させるプログラム - Google Patents

画像情報処理装置、画像情報処理システム、プロセス間通信情報取得方法およびその方法をコンピュータに実行させるプログラム Download PDF

Info

Publication number
JP3798682B2
JP3798682B2 JP2001349434A JP2001349434A JP3798682B2 JP 3798682 B2 JP3798682 B2 JP 3798682B2 JP 2001349434 A JP2001349434 A JP 2001349434A JP 2001349434 A JP2001349434 A JP 2001349434A JP 3798682 B2 JP3798682 B2 JP 3798682B2
Authority
JP
Japan
Prior art keywords
communication
information
communication information
application
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2001349434A
Other languages
English (en)
Other versions
JP2003150357A (ja
Inventor
和美 藤崎
邦洋 秋吉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2001349434A priority Critical patent/JP3798682B2/ja
Publication of JP2003150357A publication Critical patent/JP2003150357A/ja
Application granted granted Critical
Publication of JP3798682B2 publication Critical patent/JP3798682B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、コピー、プリンタ、スキャナおよびファクシミリなどの画像情報処理にかかるユーザサービスを提供する際に行われるプロセス間通信によって各プロセスで受信したされるデータ(プロセス間通信に関する通信情報)をデバッグのために取得することができる画像情報処理装置、画像情報処理システム、このようなプロセス間通信情報取得方法およびその方法をコンピュータに実行させるプログラムに関するものである。
【0002】
【従来の技術】
近年、プリンタ、コピー、ファクシミリ、スキャナなどの各装置の機能を1つの筐体内に収納した画像形成装置(以下、「複合機」という。)が一般的に知られている。この複合機は、1つの筐体内に表示部、印刷部および撮像部などを設けるとともに、プリンタ、コピーおよびファクシミリ装置にそれぞれ対応する3種類のソフトウェアを設け、ソフトウェアの切り替えによって、当該装置をプリンタ、コピー、スキャナまたはファクシミリ装置として動作させるものである。
【0003】
このような複合機では、プリンタ、コピー、ファクシミリ、スキャナなどの各機能単位でプロセスとして動作するアプリケーションプログラムを開発しているため、各機能単位のプロセスが複合機上で正常に動作しているか否かを、プロセス単位で調査するデバッグ作業を行っていた。
【0004】
このような従来の複合機では、コピー、プリンタ、スキャナおよびファクシミリなどの大きな機能単位でプロセスが実行されているため、プロセス間のデータの送受信などはさほど発生せず、従来のようなプロセスごとに行うデバッグ作業によって障害原因を容易に検出することが可能であった。たとえば、コピー動作に障害が生じた場合には、コピー機能を実現するコピープログラムのプロセスが正常動作しているか否かを、プリンタプログラムなど他の機能を実現するプロセスとは別個に検証すれば、障害の原因を容易に把握することができた。
【0005】
【発明が解決しようとする課題】
このような従来の複合機では、プリンタ、コピー、スキャナおよびファクシミリ装置に対応するソフトウェアをそれぞれ別個に設けているため、各ソフトウェアの開発に多大の時間を要する。このため、出願人は、表示部、印刷部および撮像部などの画像形成処理で使用されるハードウェア資源を有し、プリンタ、コピーまたはファクシミリなどの各ユーザサービスにそれぞれ固有の処理を行うアプリケーションを複数搭載し、これらのアプリケーションとハードウェア資源との間に介在して、ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行う各種コントロールサービスからなるプラットホームを備えた画像形成装置(複合機)を発明した。この複合機によれば、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行うプラットホームを備えた構成とすることによって、ソフトウェア開発の効率化を図るとともに、装置全体としての生産性を向上させることが可能となる。
【0006】
このような新規な複合機では、アプリケーションのプロセスが機能ごとに複数存在するばかりか、アプリケーションの少なくとも2つが共通的に必要とするサービスを提供するコントロールサービスのプロセスが存在し、複合機内部には、従来の複合機に比べて非常に多くのプロセスが互いにプロセス間通信を行いながら並列実行されている。また、各プロセス内部には、複数のスレッドが起動されており、スレッドレベルでの並列実行を実現しながら他のプロセスとプロセス間通信を行ってユーザサービスの機能を実現している。さらには、かかる複合機では、コントロールサービスのプロセスは、複数のアプリケーションが共通に必要とするサービスを提供するという位置づけにあるため、各コントロールサービスは多数のアプリケーションのプロセスとの間でデータ送受信が発生する。加えて、アプリケーションのプロセスとの間ばかりではなく、コントロールサービス同士のプロセス間においてもデータの送受信が生じる。
【0007】
このように、出願人が発明をした新規な複合機は、多数のプロセスやスレッドが複雑に絡み合って協働することによりコピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを提供するという特徴的な構成となっている。このため、従来の複合機のように、各プロセスごとにデバッグ作業を行うだけでは、プロセス間通信で送受信されるデータを正確に把握することができず、デバッグ作業が困難になるという問題がある。
【0008】
特に、複合機の開発においては、通常のコンピュータ上で動作するソフトウェア開発と異なり、コピー動作、プリンタ動作、スキャナ動作あるいはファクシミリ送信動作が正常でない場合に、その障害原因がスキャナエンジン、プリンタエンジンなどのエンジン部分であるハードウェアにあるのか、このようなエンジン部分を制御するソフトウェアにあるのかを障害調査の初期段階で切り分ける必要がある。上述の出願人が発明した新規な複合機では、かかるエンジン部分の制御は、コントロールサービスのプロセスによって行われており、このコントロールサービスはアプリケーションの下位の層に位置づけらている。このため、複数のコントロールサービスのプロセス間、またはコントロールサービスとアプリケーションのプロセス間の通信が正常に動作しているか否かを正確かつ容易に判断することが、ハードウェア障害とソフトウェア障害の切り分けに必要となるという新規な複合機に特有の問題が生じてくる。
【0009】
また、この複合機では、アプリケーションとコントロールサービスとを別個に設けているため、複合機の出荷後にユーザもしくは第三者であるサードベンダが新規なアプリケーションを開発して複合機に搭載可能な構成となっている。このため、新規に開発したアプリケーションのプロセスが、既存のコントロールサービスのプロセスや他の既存のアプリケーションのプロセスと正常にプロセス間通信を行っているか否かを正確かつ容易に判断しなければならないという、従来の複合機開発では問題にならなかった新規な課題が生じている。
【0010】
この発明は上記に鑑みてなされたもので、多数のプロセスが動作する環境でプロセス間通信情報を取得して、デバッグ作業を正確かつ容易に行うことができる画像情報処理装置、画像情報処理システム、プロセス間通信情報取得方法およびこれらの方法をコンピュータに実行させるプログラムを得ることを目的とする。
【0011】
【課題を解決するための手段】
上記目的を達成するため、請求項1にかかる発明は、印刷部または撮像部を有するハードウェア資源を利用して画像情報処理にかかるアプリケーションを複数搭載可能とし、オペレーティングシステムと、前記オペレーティングシステム上で動作し、複数の前記アプリケーションからアクセスされて前記ハードウェア資源の制御を行うプログラムとを備え、前記アプリケーションと前記プログラムはそれぞれプロセスとして動作し、プロセス間通信を行うことによって前記画像情報処理を行う画像情報処理装置であって、プロセス間通信に関する通信情報の取得条件を定めた制御情報を格納した記憶手段と、前記アプリケーションのプロセスまたは前記プログラムのプロセスを含む複数のプロセス間で共有される共有メモリと、前記アプリケーションおよび前記プログラムの各プロセス内部で起動され、前記アプリケーション同士または前記プログラム同士もしくは前記アプリケーションと前記プログラムの間のプロセス間通信によって受信した通信情報から、前記制御情報に基づいて前記通信情報を抽出して前記共有メモリに格納する通信情報取得手段と、を備えたことを特徴とする。
【0012】
この請求項1にかかる発明によれば、アプリケーションおよびプログラムの各プロセス内部で起動される通信情報取得手段によって、アプリケーションまたはプログラムのプロセス間通信によって受信した通信情報から、通信情報の取得条件を定めた制御情報に基づいて通信情報を抽出して共有メモリに格納することで、アプリケーションとプログラム間、アプリケーション間、およびプログラム間など、多数のプロセスが複雑に絡み合ってプロセス間通信を行う特徴的な構成の画像情報処理装置において必要なプロセス間通信情報を取得条件に従って容易に抽出して取得することができ、プロセス数が少ない従来の画像情報処理装置に比べて、デバッグ作業を効率的に行うことができる。また、このようなデバッグ作業の効率化によって結果的に画像情報処理装置の品質を向上させることができる。
【0013】
また、この請求項1にかかる発明によれば、通信情報取得手段によって、必要なプロセス間通信に関する通信情報を容易に取得でき、デバッグ作業を効率的に行えるので、アプリケーションおよびプログラムの開発ばかりか、サードベンダなどの第三者による新規アプリケーションの開発を促進することができる。
【0014】
さらに、この請求項1にかかる発明によれば、通信情報取得手段によって、取得した通信情報を、アプリケーションまたはプログラムのプロセスを含む複数のプロセスで共有される共有メモリに格納しているので、他のプロセスから共有メモリを利用したプロセス間通信によって通信情報を取得することが可能となる。このため、当該他のプロセスとして、通信情報からログを生成したり、表示するなどの処理を行うプロセスを設け、デバッグ作業の形態に応じた形式で通信情報を加工することも可能となり、デバッグ作業におけるユーザビリティを向上させることができる。
【0015】
加えて、この請求項1にかかる発明によれば、通信情報取得手段がアプリケーションおよびプログラムのプロセス内部で起動されており、このプロセス内部で、受信した通信情報から必要な通信情報を抽出してから共有メモリに格納しているので、共有メモリから通信情報を読み出してログ生成やログ表示などを行う場合に、ログ生成処理段階またはログ表示処理段階で通信情報を抽出する場合に比べ、ログ生成やログ表示時における抽出処理の負荷がかからず、ログ生成またはログ表示の処理効率を向上させることができる。
【0016】
この請求項1の発明における通信情報取得手段は、アプリケーションおよびプログラムのプロセス内部で起動されるものであれば良く、プロセス間通信による受信データを監視する監視スレッドの内部で実行する他、受信データの監視と通信情報の取得とを並列実行するために、当該監視スレッドと別スレッドで構成してもよい。
【0017】
また、この請求項1の発明における共有メモリは、複数のアプリケーションおよび複数のプログラムの各プロセスごとに設ける構成としたり、資源節約のため、すべてのプロセスで共有可能な単一の共有メモリとすることもできる。ただし、後者の場合には、プロセスの並列実行により通信情報の分断が生じる可能性があるため、各プロセスに対して共有メモリの排他制御を行う機構(たとえば、セマフォやクリティカル・セクションなどの同期メカニズムを利用した共有メモリの排他制御)を設けることが好ましい。
【0018】
この請求項1の発明における通信情報は、プロセス間通信に関する情報であればよく、イベントや通知などのメッセージや、関数呼び出しなどプロセス間通信を担う情報の他、プロセス識別情報やプロセスの生成または消滅に関する情報を通信情報に含めることもできる。
【0019】
この請求項1の発明における制御情報は、必要とする通信情報を抽出するための取得条件が指定されたものであればよく、具体的な取得条件については本発明では限定しない。また、制御情報には、このような取得条件の他、デバッグ作業を行うユーザの便宜を図るために、さらにプロセスの生成や消滅などのプロセス自体に関する情報なども取得条件として含めても良い。また、制御情報は、ハードディスクなどの記憶手段に格納されていればよく、フラッシュカードなどの記憶媒体から入力した記憶手段に格納する他、オペレーションパネルなどの操作部から入力したり、ネットワーク経由で受信して記憶手段に格納した場合も含まれる。
【0020】
また、請求項2にかかる発明は、請求項1に記載の画像情報処理装置において、前記制御情報は、前記プログラムまたは前記アプリケーションの中から前記通信情報の取得対象プロセスを指定したものであり、前記通信情報取得手段は、前記取得対象プロセスにおける前記通信情報を抽出して前記共有メモリに格納することを特徴とする。
【0021】
この請求項2にかかる発明によれば、通信情報取得手段によって、制御情報で指定された取得対象プロセスにおける通信情報を抽出することで、画像情報処理装置で動作するアプリケーションおよびプログラムの全てのプロセスにおけるプロセス間通信情報を希望しない場合に、必要なプロセスのみのプロセス間通信情報を取得することができ、通信情報取得の処理効率を向上させることができる。また、新規アプリケーションを開発した場合など、デバッグ作業に必要なアプリケーションやプログラムにおける通信情報だけを得ることができるので、デバッグ作業をより効率的に行うことができる。
【0022】
また、請求項3にかかる発明は、請求項2に記載の画像形成装置において、前記制御情報は、前記取得対象プロセスにおけるプロセス間通信の相手先プロセスをさらに指定したものであり、前記通信情報取得手段は、前記相手先プロセスからの通信情報のみを抽出して前記共有メモリに格納することを特徴とする。
【0023】
この請求項3にかかる発明によれば、通信情報取得手段によって、制御情報に指定された、取得対象プロセスにおけるプロセス間通信の相手先プロセスからの通信情報のみを抽出することで、アプリケーション、プログラムの中で、特定のプロセス間通信の通信情報だけを得ることができる。このため、画像情報処理装置のデバッグ作業において、障害が生じていると予想されるコンポーネント間のプロセス間通信だけを集中して検証することができ、デバッグ作業をより効率的に行うことができる。
【0024】
また、請求項4にかかる発明は、請求項1〜3のいずれか一つに記載の画像情報処理装置において、前記制御情報は、前記画像情報処理にかかるユーザサービスの中から一または複数のユーザサービスを指定したものであり、前記通信情報取得手段は、前記制御情報で指定された前記ユーザサービスを提供する際に実行される前記アプリケーションおよび前記プログラムのすべてのプロセスを選定して、選定されたプロセスで受信した前記通信情報を抽出して前記共有メモリに格納することを特徴とする。
【0025】
この請求項4にかかる発明における「ユーザサービス」とは、コピー、プリンタ、スキャナ、ファクシミリなどの画像情報処理にかかるサービスをいい、例えばアプリケーションを追加することにより新たにサービスが提供可能になった場合には、かかる新たなユーザサービスも含まれる。
【0026】
この請求項4にかかる発明によれば、通信情報取得手段によって、制御情報で指定されたユーザサービスを提供する際に実行されるアプリケーションおよびプログラムのすべてのプロセスを選定して、選定されたプロセスで受信した通信情報を抽出して共有メモリに格納することで、特定のユーザサービスの機能だけを検証する際に、当該機能に関連するアプリケーションやプログラムを知らなくても制御情報にはユーザサービスのみを指定すれば自動的に必要とされるすべてのプロセスの通信情報を得ることができる。このため、デバッグ作業における制御情報の設定が容易になるとともに、画像情報処理装置のコンポーネント構造を熟知していないユーザでもデバッグ作業を容易に行うことができる。また、デバッグ対象のアプリケーション、プログラムの指定の漏れをなくして、より確実なデバッグ作業を行うことができる。
【0027】
また、請求項5にかかる発明は、請求項1〜4のいずれか一つに記載の画像情報処理装置において、前記通信情報取得手段は、前記通信情報のデータ種別またはプロセス情報を含むヘッダ情報のみを前記通信情報として抽出して前記共有メモリに格納することを特徴とする。
【0028】
この請求項5にかかる発明によれば、通信情報取得手段によって、通信情報のデータ種別またはプロセス情報を含むヘッダ情報のみを通信情報として抽出することで、画像情報処理装置のデバッグ作業において、簡易な検証だけを希望する場合にヘッダ情報だけの通信情報を取得することができるので、受信データのすべてを共有メモリに格納する場合に比べ、格納されるデータ量に制限のある共有メモリ資源の節約を図ることができる。
【0029】
また、請求項6にかかる発明は、請求項1〜5のいずれか一つに記載の画像形成装置において、前記共有メモリに格納された前記通信情報を一定時間ごとに取得し、取得した前記通信情報を記録した通信履歴情報を生成する通信履歴生成手段をさらに備えたことを特徴とする。
【0030】
この請求項6にかかる発明によれば、通信履歴生成手段によって、共有メモリに格納された通信情報を一定時間ごとに取得して、この通信情報を記録した通信履歴情報を生成することで、多数のプロセス間で複雑に行われるプロセス間通信の状況を把握して障害の原因究明を行うことができ、デバッグ作業をより効率的に行うことができる。
【0031】
この請求項6にかかる発明における通信履歴情報は、通信情報を記録したものであればよく、通信情報を時系列順にソートして通信履歴情報としたり、プロセスごとに分類して通信履歴情報とすることができる。
【0032】
また、単に通信情報を収集するだけで、ソートや分類などを行わずに通信履歴情報としても良い。この場合には、デバッグ作業を行うユーザの便宜のために、例えば、通信履歴情報を表示または印刷などの出力処理を行う際に、別プロセスあるいは上記出力処理を行うPCなどで通信履歴情報の中の通信情報を時系列順にソートしたり、プロセスごとに分類するなどの加工処理を行うようにしても良い。
【0033】
また、請求項7にかかる発明は、請求項6に記載の画像情報処理装置において、前記通信履歴生成手段は、さらに前記通信履歴情報を、ネットワークに接続されて複数の画像情報処理装置を管理する管理装置に送信することを特徴とする。
【0034】
この請求項7にかかる発明によれば、通信履歴生成手段によって、通信履歴情報をネットワークに接続された、複数の画像情報処理装置を管理する管理装置に送信することで、生成された通信履歴情報を管理装置側で参照したり集計するなどの処理を行うことが可能となり、管理装置によって通信履歴情報に基づいた画像情報処理装置の適切な管理を行うことができる。
【0035】
この請求項7の発明における管理装置には、画像情報処理装置の管理を行う管理サーバの他、複数の画像情報処理装置の動作情報や障害情報を収集して一括管理する遠隔集中管理装置も含まれる。
【0036】
また、本発明の他の態様としては、請求項6または7に記載の画像情報処理装置において、前記通信履歴生成手段は、さらに前記通信履歴情報を、ネットワークに接続されたクライアント端末に送信することを特徴とするものがあげられる。
【0037】
この態様の発明によれば、通信履歴生成手段によって、通信履歴情報をネットワークに接続されたクライアント端末に送信することで、生成された通信履歴情報を画像情報処理装置内ばかりか、クライアント端末側で保存しておくことができ、通信履歴情報による集計や加工などが必要に応じて可能となり、通信履歴情報の有効利用を図ることができる。
【0038】
また、請求項8にかかる発明は、印刷部または撮像部を有するハードウェア資源を利用して画像情報処理にかかるアプリケーションを複数搭載可能とし、オペレーティングシステムと、前記オペレーティングシステム上で動作し、複数の前記アプリケーションからアクセスされて前記ハードウェア資源の制御を行うプログラムとを備え、前記アプリケーションと前記プログラムはそれぞれプロセスとして動作し、プロセス間通信を行うことによって前記画像情報処理を行う画像情報処理装置であって、プロセス間通信に関する通信情報の取得条件を定めた制御情報を格納した記憶手段と、前記アプリケーションのプロセスまたは前記プログラムのプロセスを含む複数のプロセス間で共有される共有メモリと、前記アプリケーションおよび前記プログラムのプロセスの中で起動され、前記アプリケーション同士または前記プログラム同士もしくは前記アプリケーションと前記プログラムの間のプロセス間通信により受信した通信情報を前記共有メモリに格納する通信情報取得手段と、一定時間ごとに、前記共有メモリから前記制御情報に基づいて前記通信情報を抽出し、抽出した前記通信情報を記録した通信履歴情報を生成する通信履歴生成手段と、を備えたことを特徴とする。
【0039】
この請求項8にかかる発明によれば、アプリケーションおよびプログラムのプロセスの中で起動される通信情報取得手段によって、アプリケーションおよびプログラムにおけるプロセス間通信により受信した通信情報を共有メモリに格納し、通信履歴生成手段によって、一定時間ごとに共有メモリから、通信情報の取得条件を定めた制御情報に基づいて、通信情報を抽出し、抽出した通信情報を記録した通信履歴情報を生成することで、多数のプロセスが動作している特徴的な構成の画像情報処理装置において必要なプロセス間通信情報を取得条件に従って容易に抽出して通信履歴情報を生成することができ、プロセス間通信の状況を容易に把握してデバッグ作業を効率的に行うことができる。
【0040】
また、この請求項8にかかる発明によれば、制御情報に基づいた通信情報の抽出を、共有メモリへの格納段階ではなく、共有メモリからの読み出し段階で行っているので、通信履歴情報の生成の際のデータ量が減少し、データ転送効率を向上させることができる。
【0041】
また、請求項9にかかる発明は、請求項8に記載の画像情報処理装置において、前記制御情報は、前記プログラムまたは前記アプリケーションの中から前記通信情報の取得対象プロセスを指定したものであり、前記通信履歴生成手段は、前記取得対象プロセスにおける前記通信情報を抽出して前記通信履歴情報を生成することを特徴とする。
【0042】
この請求項9にかかる発明によれば、通信履歴生成手段によって、制御情報で指定された取得対象プロセスにおける通信情報を抽出することで、画像情報処理装置で動作するアプリケーションおよびプログラムの全てのプロセスにおけるプロセス間通信情報を希望しない場合に、必要なプロセスのみのプロセス間通信情報を取得することができ、通信情報取得の処理効率を向上させることができる。また、新規アプリケーションを開発した場合など、デバッグ作業に必要なアプリケーションやプログラムにおける通信情報だけを得ることができるので、デバッグ作業をより効率的に行うことができる。
【0043】
また、請求項10にかかる発明は、請求項9に記載の画像情報処理装置において、前記制御情報は、前記取得対象プロセスにおけるプロセス間通信の相手先プロセスをさらに指定したものであり、前記通信履歴生成手段は、前記相手先プロセスからの前記通信情報のみを抽出して前記通信履歴情報を生成することを特徴とする。
【0044】
この請求項10にかかる発明によれば、通信履歴生成手段によって、制御情報に指定された、取得対象プロセスにおけるプロセス間通信の相手先プロセスからの通信情報のみを抽出することで、アプリケーション、プログラムの中で、特定のプロセス間通信の通信情報だけを得ることができる。このため、画像情報処理装置のデバッグ作業において、障害が生じていると予想されるコンポーネント間のプロセス間通信だけを集中して検証することができ、デバッグ作業をより効率的に行うことができる。
【0045】
また、請求項11にかかる発明は、請求項8〜10のいずれか一つに記載の画像情報処理装置において、前記制御情報は、前記画像情報処理にかかるユーザサービスの中から一または複数のユーザサービスを指定したものであり、前記通信履歴生成手段は、前記制御情報で指定された前記ユーザサービスを提供する際に実行される前記アプリケーションおよび前記プログラムのすべてのプロセスにおける前記通信情報を抽出して前記通信履歴情報を生成することを特徴とする。
【0046】
この請求項11にかかる発明によれば、通信履歴生成手段によって、制御情報で指定されたユーザサービスを提供する際に実行されるアプリケーションおよびプログラムのすべてのプロセスを選定して、選定されたプロセスで受信した通信情報を抽出して通信履歴情報を生成することで、特定のユーザサービスの機能だけを検証する際に、当該機能に関連するアプリケーションやプログラムを知らなくても制御情報にはユーザサービスのみを指定すれば自動的に必要とされるすべてのプロセスの通信情報を得ることができる。このため、デバッグ作業における制御情報の設定が容易になるとともに、画像情報処理装置のコンポーネント構造を熟知していないユーザでもデバッグ作業を容易に行うことができる。また、デバッグ対象のアプリケーション、プログラムの指定の漏れをなくして、より確実なデバッグ作業を行うことができる。
【0047】
また、請求項12にかかる発明は、請求項8〜11のいずれか一つに記載の画像情報処理装置において、前記通信履歴生成手段は、前記通信情報のデータ種別またはプロセス情報を含むヘッダ情報のみを前記通信情報として抽出して前記通信履歴情報を生成することを特徴とする。
【0048】
この請求項12にかかる発明によれば、通信履歴生成手段によって、通信情報のデータ種別またはプロセス情報を含むヘッダ情報のみを通信情報として抽出することで、画像情報処理装置のデバッグ作業において、簡易な検証だけを希望する場合にヘッダ情報だけの通信情報を取得することができるので、受信データのすべてを通信履歴情報として記録する場合に比べ、ハードディスクなどの資源の節約を図ることができる。
【0049】
また、請求項13にかかる発明は、請求項1〜12のいずれか一つに記載の画像情報処理装置において、通信履歴開始要求があったときに、プロセス間通信に関する通信情報の取得要求を前記アプリケーションまたは前記プログラムのプロセスに送信する通信履歴管理手段をさらに備え、前記通信情報取得手段は、前記アプリケーションおよび前記プログラムのプロセスが前記取得要求を受信したときに起動されることを特徴とする。
【0050】
この請求項13にかかる発明によれば、通信履歴開始要求があったときに、通信履歴管理手段によって、通信情報の取得要求をアプリケーションまたはプログラムのプロセスに送信し、アプリケーションおよびプログラムのプロセスがこの取得要求を受信したときに通信情報取得手段を起動することで、通信情報の取得や通信履歴情報の生成を、画像情報処理装置の再起動なしに、通信履歴開始要求に応じて動的に開始することができ、デバッグ作業を効率的に開始することができる。
【0051】
この請求項13の発明における通信履歴管理手段は、実行時のメモリ資源の節約のために、通信履歴生成手段と兼用した構成とすることができる。
【0052】
また、請求項14にかかる発明は、請求項13に記載の画像情報処理装置において、前記アプリケーションおよび前記プログラムは、前記通信情報取得手段をプロセス内部で起動する起動関数を有し、前記通信履歴管理手段は、前記起動関数の呼び出しにより、前記取得対象の前記アプリケーションのプロセスおよび前記プログラムのプロセスに前記取得要求を行うことを特徴とする。
【0053】
この請求項14にかかる発明によれば、通信履歴管理手段によって、アプリケーションおよびプログラムで用意された起動関数呼び出しにより、取得対象のアプリケーションのプロセスおよびプログラムのプロセスに取得要求を行うことで、アプリケーションおよびプログラムも起動関数を用意しておけば、通信履歴管理手段による関数呼び出しという簡易なプロセス間通信を利用して前記取得要求を行うことができ、プログラム開発労力の軽減を図ることができる。
【0054】
また、請求項15にかかる発明は、請求項13または14に記載の画像情報処理装置において、前記通信履歴管理手段は、さらに前記制御情報を受信し、受信した前記制御情報を前記記憶手段に格納することを特徴とする。
【0055】
この請求項15にかかる発明によれば、通信履歴管理手段によって、制御情報を受信し、受信した制御情報を記憶手段に格納することで、制御情報に設定された取得条件の変更などが生じた場合でも、取得条件変更に応じて動的に通信情報の取得や通信履歴の生成を行うことができ、制御情報の変更があるたびに画像情報処理装置を再起動させる必要がなく、デバッグ作業をより効率的に行うことができる。
【0056】
また、請求項16にかかる発明は、請求項13〜15のいずれか一つに記載の画像情報処理装置において、前記プログラムは、画像情報処理装置で動作するプロセスの制御およびオペレーションパネルの制御を行うシステムコントロールサービスを備え、前記システムコントロールサービスは、前記通信履歴開始要求と前記制御情報を受信し、受信した前記通信履歴開始要求と前記制御情報を前記通信履歴管理手段に転送することを特徴とする。
【0057】
この請求項16にかかる発明によれば、システムコントロールサービスによって、通信履歴開始要求と制御情報を受信し、受信した通信履歴開始要求と制御情報を通信履歴管理手段に転送することで、ユーザ操作によるオペレーションパネルからの通信履歴開始要求やネットワーク経由での通信履歴開始要求と制御情報の変更などを、システムコントロールサービスで一括して処理することができ、通信履歴開始要求や制御情報の送信先に応じて別個のコンポーネントを設ける必要がなく、実行時に必要なリソースの削減を図ることができる。
【0058】
また、請求項17にかかる発明は、請求項16に記載の画像情報処理装置において、前記システムコントロールサービスは、前記通信履歴開始要求と前記制御情報を、ネットワークに接続された複数の画像情報処理装置を管理する管理装置から受信することを特徴とする。
【0059】
この請求項17にかかる発明によれば、システムコントロールサービスによって、通信履歴開始要求と制御情報を、ネットワーク経由で管理装置から受信することで、管理装置からの要求に応じた通信情報の取得や通信履歴情報の生成が可能となり、管理装置による画像情報処理装置の集中管理に拡張性を持たせることができる。
【0060】
この請求項17の発明における管理装置には、画像情報処理装置の管理を行う管理サーバの他、複数の画像情報処理装置の動作情報や障害情報を収集して一括管理する遠隔集中管理装置も含まれる。
【0061】
また、請求項18にかかる発明は、請求項16に記載の画像情報処理装置において、前記システムコントロールサービスは、前記通信履歴開始要求と前記制御情報を、ネットワークに接続されたクライアント端末から受信することを特徴とする。
【0062】
この請求項18にかかる発明によれば、システムコントロールサービスによって、通信履歴開始要求と制御情報をネットワークに接続されたクライアント端末から受信することで、デバッグ作業を画像情報処理装置から離れた場所で行うことができ、デバッグ作業をより効率的に行うことができる。
【0063】
また、請求項19にかかる発明は、請求項1〜18のいずれか一つに記載の画像情報処理装置において、前記共有メモリは、前記通信情報の取得対象である前記プログラムまたは前記アプリケーションの各プロセスごとに別個に設けられていることを特徴とする。
【0064】
この請求項19にかかる発明によれば、共有メモリが通信情報の取得対象であるプログラムまたはアプリケーションの各プロセスごとに別個に設けられているので、プログラムまたはアプリケーションの複数のプロセスの並列実行時にCPUに占有されるプロセスの切り替えが生じた場合でも、各共有メモリに格納される通信情報に分断が生じることがなく、プロセスの並列実行時における通信情報の取得元プロセスの判別が常に可能となる。
【0065】
また、請求項20にかかる発明は、印刷部または撮像部を有するハードウェア資源を利用して画像情報処理にかかるアプリケーションを複数搭載可能とし、オペレーティングシステムと、前記オペレーティングシステム上で動作し、複数の前記アプリケーションからアクセスされて前記ハードウェア資源の制御を行うプログラムとを備え、前記アプリケーションと前記プログラムはそれぞれプロセスとして動作し、プロセス間通信を行うことによって前記画像情報処理を行う画像情報処理装置と、前記画像情報処理装置とネットワークによって接続され、前記画像情報処理装置を管理する管理サーバとを備えた画像情報処理システムであって、前記画像情報処理装置は、プロセス間通信に関する通信情報の取得条件を定めた制御情報を格納した記憶手段と、前記アプリケーションおよび前記プログラムの各プロセス内部で起動され、前記アプリケーション同士または前記プログラム同士もしくは前記アプリケーションと前記プログラムの間のプロセス間通信によって受信した通信情報から、前記制御情報に基づいて前記通信情報を抽出する通信情報取得手段と、前記通信情報取得手段によって抽出された前記通信情報を、前記管理サーバに送信する送信手段と、を備え、前記管理サーバは、前記画像情報処理装置から前記通信情報を受信し、受信した前記通信情報を記録した通信履歴情報を生成する通信履歴生成手段を備えたことを特徴とする。
【0066】
この請求項20にかかる発明によれば、画像情報処理装置の通信情報取得手段によって、受信した通信情報から制御情報に基づいて通信情報を抽出し、抽出した通信情報を、送信手段によって管理サーバに送信し、管理サーバの通信履歴生成手段によって、画像情報処理装置から受信した通信情報から通信履歴情報を生成することで、管理サーバ側で複数の画像情報処理装置のプロセス間通信情報の通信履歴情報を一括して管理することができ、複数の画像情報処理装置の通信状況を一カ所で容易に把握することができる。
【0067】
この請求項20の発明において、画像情報処理装置の送信手段は、通信情報取得手段と同一プロセス内に設けてもよい。この場合には、通信情報を取得した時点で直ちに管理サーバに送信することが可能となる。また、送信手段と通信情報取得手段とを別プロセスとして設けることも可能である。この場合にはメッセージ送信や共有メモリを利用したプロセス間通信によって通信情報を通信情報取得手段から送信手段に受け渡す必要がある。
【0068】
また、請求項21にかかる発明は、請求項20に記載の画像情報処理システムにおいて、前記画像情報処理装置は、前記アプリケーションのプロセスまたは前記プログラムのプロセスを含む複数のプロセス間で共有される共有メモリを備え、前記通信情報取得手段は、さらに抽出した前記通信情報を、前記共有メモリに格納し、前記送信手段は、前記共有メモリに格納された前記通信情報を一定時間ごとに取得して、取得した前記通信情報を前記管理サーバに送信することを特徴とする。
【0069】
この請求項21にかかる発明によれば、画像情報処理装置がアプリケーションのプロセスまたはプログラムのプロセスを含む複数のプロセス間で共有される共有メモリを備え、通信情報取得手段によって抽出した通信情報を、共有メモリに格納し、送信手段によって共有メモリに格納された通信情報を一定時間ごとに取得して管理サーバに送信することで、共有メモリを介したプロセス間通信によって通信情報を通信情報取得手段から送信手段に受け渡すことができる。このため、送信手段を通信情報取得手段とは別プロセスとし、収集した通信情報を一括して管理サーバに送信することができ、通信情報を取得するたびに管理サーバに送信する場合に比べて、ネットワークの負荷を軽減することができる。
【0070】
また、請求項22にかかる発明は、印刷部または撮像部を有するハードウェア資源を利用して画像情報処理にかかるアプリケーションを複数搭載可能とし、オペレーティングシステムと、前記オペレーティングシステム上で動作し、複数の前記アプリケーションからアクセスされて前記ハードウェア資源の制御を行うプログラムとを備え、前記アプリケーションと前記プログラムはそれぞれプロセスとして動作し、プロセス間通信を行うことによって前記画像情報処理を行う画像情報処理装置と、前記画像情報処理装置とネットワークによって接続され、前記画像情報処理装置を管理する管理サーバとを備えた画像情報処理システムであって、前記画像情報処理装置は、前記アプリケーションおよび前記プログラムのプロセスの中で起動され、前記アプリケーション同士または前記プログラム同士もしくは前記アプリケーションと前記プログラムの間のプロセス間通信により受信した通信情報を取得する通信情報取得手段と、前記通信情報取得手段により取得した前記通信情報を、前記管理サーバに送信する送信手段と、を備え、前記管理サーバは、プロセス間通信に関する通信情報の取得条件を定めた制御情報を格納した記憶手段と、前記画像情報処理装置から前記通信情報を受信し、受信した前記通信情報から前記制御情報に基づいて前記通信情報を抽出して通信履歴情報を生成する通信履歴生成手段と、を備えたことを特徴とする。
【0071】
この請求項22にかかる発明によれば、画像情報処理装置の通信情報取得手段によって、プロセス間通信により受信した通信情報を取得して、送信手段によって、取得した通信情報を管理サーバに送信し、管理サーバのログ生成手段によって受信した通信情報から制御情報に基づいて通信情報を抽出して通信履歴情報を生成することで、管理サーバ側で複数の画像情報処理装置のプロセス間通信情報の通信履歴情報を一括して生成することができ、複数の画像情報処理装置の通信状況を一カ所で容易に把握することができる。
【0072】
この請求項22の発明においても、画像情報処理装置の送信手段は、通信情報取得手段と同一プロセス内に設けてもよい。この場合には、通信情報を取得した時点で直ちに管理サーバに送信することが可能となる。また、送信手段と通信情報取得手段とを別プロセスとして設けることも可能である。この場合にはメッセージ送信や共有メモリを利用したプロセス間通信によって通信情報を通信情報取得手段から送信手段に受け渡す必要がある。
【0073】
また、請求項23にかかる発明は、請求項22に記載の画像情報処理システムにおいて、前記画像情報処理装置は、前記アプリケーションのプロセスまたは前記プログラムのプロセスを含む複数のプロセス間で共有される共有メモリをさらに備え、前記通信情報取得手段は、さらに取得した前記通信情報を前記共有メモリに格納し、前記送信手段は、一定時間ごとに、前記共有メモリから前記通信情報を取得して、取得した前記通信情報を前記管理サーバに送信することを特徴とする。
【0074】
この請求項23にかかる発明によれば、画像情報処理装置がアプリケーションのプロセスまたはプログラムのプロセスを含む複数のプロセス間で共有される共有メモリをさらに備え、通信情報取得手段によって、取得した通信情報を共有メモリに格納し、送信手段によって、一定時間ごとに共有メモリから通信情報を取得して管理サーバに送信することで、共有メモリを介したプロセス間通信によって通信情報を通信情報取得手段から送信手段に受け渡すことができる。このため、送信手段を通信情報取得手段とは別プロセスとし、収集した通信情報を一括して管理サーバに送信することができ、通信情報を取得するたびに管理サーバに送信する場合に比べて、ネットワークの負荷を軽減することができる。
【0075】
また、請求項24にかかる発明は、請求項20〜23のいずれか一つに記載の画像情報処理システムにおいて、前記管理サーバは、さらに前記通信履歴情報を、ネットワークに接続されて前記画像情報処理装置の動作情報を管理する遠隔集中管理装置に送信する遠隔送信手段をさらに備えたことを特徴とする。
【0076】
この請求項24にかかる発明によれば、管理サーバの遠隔送信手段によって、生成された通信履歴情報をネットワークに接続された遠隔集中管理装置に送信することで、遠隔集中管理装置は通信履歴情報に基づいて画像情報処理装置の障害情報の詳細を把握することができ、遠隔集中管理装置による画像情報処理装置の障害対応を的確に行うことができる。
【0077】
また、請求項25にかかる発明は、印刷部または撮像部を有するハードウェア資源を利用して画像情報処理にかかるアプリケーションを複数搭載可能とし、オペレーティングシステムと、前記オペレーティングシステム上で動作し、複数の前記アプリケーションからアクセスされて前記ハードウェア資源の制御を行うプログラムとを備え、前記アプリケーションと前記プログラムはそれぞれプロセスとして動作し、プロセス間通信を行うことによって前記画像情報処理を行う画像情報処理装置で行われるプロセス間通信に関する通信情報を取得するプロセス間通信情報取得方法であって、前記アプリケーションおよび前記プログラムの各プロセス内部で、前記アプリケーション同士または前記プログラム同士もしくは前記アプリケーションと前記プログラムの間のプロセス間通信による通信情報から、前記通信情報の取得条件を定めた制御情報に基づいて前記通信情報を抽出して前記共有メモリに格納する通信情報取得ステップを含んだことを特徴とする。
【0078】
この請求項25にかかる発明によれば、通信情報取得ステップによって、アプリケーションまたはプログラムのプロセス間通信で受信した通信情報から、通信情報の取得条件を定めた制御情報に基づいて通信情報を抽出して共有メモリに格納することで、アプリケーションとプログラム間、アプリケーション間、およびプログラム間など、多数のプロセスが複雑に絡み合ってプロセス間通信を行う特徴的な構成の画像情報処理装置において必要なプロセス間通信情報を取得条件に従って容易に抽出して取得することができ、プロセス数が少ない従来の画像情報処理装置のデバッグ作業に比べて、デバッグ作業を効率的に行うことができる。また、デバッグ作業の効率化によって結果的に画像情報処理装置の品質を向上させることができる。
【0079】
また、この請求項25にかかる発明によれば、必要なプロセス間通信に関する通信情報を容易に取得でき、デバッグ作業を効率的に行えるので、アプリケーションおよびプログラムの開発ばかりか、サードベンダなどの第三者による新規アプリケーションの開発を促進することができる。
【0080】
さらに、この請求項25にかかる発明によれば、通信情報取得ステップによって、取得した通信情報を共有メモリに格納しているので、他のプロセスから共有メモリを利用したプロセス間通信によって通信情報を取得することが可能となる。このため、通信ログを生成したり、表示するなどの処理を行うプロセスによって共有メモリ中の通信情報を利用することも容易に可能となり、デバッグ作業の形態に応じた形式で通信情報を利用することができ、デバッグ作業におけるユーザビリティを向上させることができる。
【0081】
加えて、この請求項25にかかる発明によれば、通信情報取得ステップがアプリケーションおよびプログラムのプロセス内部で実行され、このプロセス内部で、受信した通信情報から必要な通信情報を抽出してから共有メモリに格納しているので、共有メモリから通信情報を読み出してログ生成やログ表示などを行う場合に、ログ生成処理段階またはログ表示処理段階で通信情報を抽出する場合に比べ、ログ生成やログ表示時における抽出処理の負荷がかからず、ログ生成またはログ表示の処理効率を向上させることができる。
【0082】
また、請求項26にかかる発明は、請求項25に記載のプロセス間通信情報取得方法において、前記通信情報取得ステップは、前記制御情報により指定された前記通信情報の取得対象プロセスにおける前記通信情報を抽出して前記共有メモリに格納することを特徴とする。
【0083】
この請求項26にかかる発明によれば、通信情報取得ステップによって、制御情報で指定された取得対象プロセスにおける通信情報を抽出することで、画像情報処理装置で動作するアプリケーションおよびプログラムの全てのプロセスにおけるプロセス間通信情報を希望しない場合に、必要なプロセスのみのプロセス間通信情報を取得することができ、通信情報取得の処理効率を向上させることができる。また、新規アプリケーションを開発した場合など、デバッグ作業に必要なアプリケーションやプログラムにおける通信情報だけを得ることができるので、デバッグ作業をより効率的に行うことができる。
【0084】
また、請求項27にかかる発明は、請求項26に記載のプロセス間通信情報取得方法において、前記通信情報取得ステップは、前記制御情報により指定された前記取得対象プロセスにおけるプロセス間通信の相手先プロセスからの前記通信情報のみを抽出して前記共有メモリに格納することを特徴とする。
【0085】
この請求項27にかかる発明によれば、通信情報取得ステップによって、制御情報に指定された、取得対象プロセスにおけるプロセス間通信の相手先プロセスからの通信情報のみを抽出することで、アプリケーション、プログラムの中で、特定のプロセス間通信の通信情報だけを得ることができる。このため、画像情報処理装置のデバッグ作業において、障害が生じていると予想されるコンポーネント間のプロセス間通信だけを集中して検証することができ、デバッグ作業をより効率的に行うことができる。
【0086】
また、請求項28にかかる発明は、請求項25〜27のいずれか一つに記載のプロセス間通信情報取得方法において、前記通信情報取得ステップは、前記制御情報で指定された一または複数の前記ユーザサービスを提供する際に実行される前記アプリケーションおよび前記プログラムのすべてのプロセスにおける前記通信情報を抽出して前記共有メモリに格納することを特徴とする。
【0087】
この請求項28にかかる発明によれば、通信情報取得ステップによって、制御情報で指定されたユーザサービスを提供する際に実行されるアプリケーションおよびプログラムのすべてのプロセスを選定して、選定されたプロセスで受信した通信情報を抽出して共有メモリに格納することで、特定のユーザサービスの機能だけを検証する際に、当該機能に関連するアプリケーションやプログラムを知らなくても制御情報にはユーザサービスのみを指定すれば自動的に必要とされるすべてのプロセスの通信情報を得ることができる。このため、デバッグ作業における制御情報の設定が容易になるとともに、画像情報処理装置のコンポーネント構造を熟知していないユーザでもデバッグ作業を容易に行うことができる。また、デバッグ対象のアプリケーション、プログラムの指定の漏れをなくして、より確実なデバッグ作業を行うことができる。
【0088】
また、請求項29にかかる発明は、請求項25〜28のいずれか一つに記載のプロセス間通信情報取得方法において、前記通信情報取得ステップは、前記通信情報のデータ種別またはプロセス情報を含むヘッダ情報のみを前記通信情報として抽出して前記共有メモリに格納することを特徴とする。
【0089】
この請求項29にかかる発明によれば、通信情報取得ステップによって、通信情報のデータ種別またはプロセス情報を含むヘッダ情報のみを通信情報として抽出することで、画像情報処理装置のデバッグ作業において、簡易な検証だけを希望する場合にヘッダ情報だけの通信情報を取得することができるので、受信データのすべてを共有メモリに格納する場合に比べ、格納されるデータ量に制限のある共有メモリ資源の節約を図ることができる。
【0090】
また、請求項30にかかる発明は、請求項25〜29のいずれか一つに記載のプロセス間通信情報取得方法において、前記共有メモリに格納された前記通信情報を一定時間ごとに取得し、取得した前記通信情報を記録した通信履歴情報を生成する通信履歴生成ステップをさらに含んだことを特徴とする。
【0091】
この請求項30にかかる発明によれば、通信履歴生成ステップによって、共有メモリに格納された通信情報を一定時間ごとに取得して、この通信情報を記録した通信履歴情報を生成することで、多数のプロセス間で複雑に行われるプロセス間通信の状況を把握して障害の原因究明を行うことができ、デバッグ作業をより効率的に行うことができる。
【0092】
また、請求項31にかかる発明は、請求項30に記載のプロセス間通信情報取得方法において、前記通信履歴生成ステップは、前記通信履歴情報を、ネットワークに接続されて複数の画像情報処理装置を管理する管理装置に送信する送信ステップを含んだことを特徴とする。
【0093】
この請求項31にかかる発明によれば、遠隔送信ステップによって、通信履歴情報をネットワークに接続された、複数の画像情報処理装置の動作情報を収集する管理装置に送信することで、生成された通信履歴情報を管理装置側で参照したり集計するなどの処理を行うことが可能となり、管理装置によって通信履歴情報に基づいた画像情報処理装置の適切な管理を行うことができる。
【0094】
本発明の別の態様としては、請求項30または31に記載のプロセス間通信情報取得方法において、前記通信履歴生成ステップは、前記通信履歴情報を、ネットワークに接続されたクライアント端末に送信する端末送信ステップを含んだことを特徴とする。
【0095】
この発明によれば、端末送信ステップによって、通信履歴情報をネットワークに接続されたクライアント端末に送信することで、生成された通信履歴情報を画像情報処理装置内ばかりか、クライアント端末側で保存しておくことができ、通信履歴情報による集計や加工などが必要に応じて可能となり、通信履歴情報の有効利用を図ることができる。
【0096】
また、請求項32にかかる発明は、印刷部または撮像部を有するハードウェア資源を利用して画像情報処理にかかるアプリケーションを複数搭載可能とし、オペレーティングシステムと、前記オペレーティングシステム上で動作し、複数の前記アプリケーションからアクセスされて前記ハードウェア資源の制御を行うプログラムとを備え、前記アプリケーションと前記プログラムはそれぞれプロセスとして動作し、プロセス間通信を行うことによって前記画像情報処理を行う画像情報処理装置で行われるプロセス間通信に関する通信情報を取得するプロセス間通信情報取得方法であって、前記アプリケーションおよび前記プログラムの各プロセス内部で、プロセス間通信によって受信した通信情報を共有メモリに格納する通信情報取得ステップと、一定時間ごとに、前記共有メモリから、前記アプリケーション同士または前記プログラム同士もしくは前記アプリケーションと前記プログラムの間のプロセス間通信に関する通信情報の取得条件を定めた制御情報に基づいて前記通信情報を抽出し、抽出した前記通信情報を記録した通信履歴情報を生成する通信履歴生成ステップと、を含んだことを特徴とする。
【0097】
この請求項32にかかる発明によれば、アプリケーションおよびプログラムのプロセス内部で実行される通信情報取得ステップによって、アプリケーションおよびプログラムにおけるプロセス間通信により受信した通信情報を共有メモリに格納し、通信履歴生成ステップによって、一定時間ごとに共有メモリから、通信情報の取得条件を定めた制御情報に基づいて、通信情報を抽出し、抽出した通信情報を記録した通信履歴情報を生成することで、多数のプロセスが動作している特徴的な構成の画像情報処理装置において必要なプロセス間通信情報を取得条件に従って容易に抽出して通信履歴情報を生成することができ、プロセス間通信の状況を容易に把握してデバッグ作業を効率的に行うことができる。
【0098】
また、この請求項32にかかる発明によれば、制御情報に基づいた通信情報の抽出を、共有メモリへの格納段階ではなく、共有メモリからの読み出し段階で行っているので、通信履歴情報の生成の際のデータ量が減少し、データ転送効率を向上させることができる。
【0099】
また、請求項33にかかる発明は、請求項32に記載のプロセス間通信情報取得方法において、前記通信履歴生成ステップは、前記制御情報により指定された前記通信情報の取得対象プロセスにおける前記通信情報を抽出して、前記通信履歴情報を生成することを特徴とする。
【0100】
この請求項33にかかる発明によれば、通信履歴生成ステップによって、制御情報で指定された取得対象プロセスにおける通信情報を抽出することで、画像情報処理装置で動作するアプリケーションおよびプログラムの全てのプロセスにおけるプロセス間通信情報を希望しない場合に、必要なプロセスのみのプロセス間通信情報を取得することができ、通信情報取得の処理効率を向上させることができる。また、新規アプリケーションを開発した場合など、デバッグ作業に必要なアプリケーションやプログラムにおける通信情報だけを得ることができるので、デバッグ作業をより効率的に行うことができる。
【0101】
また、請求項34にかかる発明は、請求項33に記載のプロセス間通信情報取得方法において、前記通信履歴生成ステップは、前記制御情報により指定された前記取得対象プロセスにおけるプロセス間通信の相手先プロセスからの通信情報のみを抽出して、前記通信履歴情報を生成することを特徴とする。
【0102】
この請求項34にかかる発明によれば、通信履歴生成ステップによって、制御情報に指定された、取得対象プロセスにおけるプロセス間通信の相手先プロセスからの通信情報のみを抽出することで、アプリケーション、プログラムの中で、特定のプロセス間通信の通信情報だけを得ることができる。このため、画像情報処理装置のデバッグ作業において、障害が生じていると予想されるコンポーネント間のプロセス間通信だけを集中して検証することができ、デバッグ作業をより効率的に行うことができる。
【0103】
また、請求項35にかかる発明は、請求項32〜34のいずれか一つに記載のプロセス間通信情報取得方法において、前記通信履歴生成ステップは、前記制御情報で指定された一または複数の前記ユーザサービスを提供する際に実行される前記アプリケーションおよび前記プログラムのすべてのプロセスにおける前記通信情報を抽出して、前記通信履歴情報を生成することを特徴とする。
【0104】
この請求項35にかかる発明によれば、通信履歴生成ステップによって、制御情報で指定されたユーザサービスを提供する際に実行されるアプリケーションおよびプログラムのすべてのプロセスを選定して、選定されたプロセスで受信した通信情報を抽出して通信履歴情報を生成することで、特定のユーザサービスの機能だけを検証する際に、当該機能に関連するアプリケーションやプログラムを知らなくても制御情報にはユーザサービスのみを指定すれば自動的に必要とされるすべてのプロセスの通信情報を得ることができる。このため、デバッグ作業における制御情報の設定が容易になるとともに、画像情報処理装置のコンポーネント構造を熟知していないユーザでもデバッグ作業を容易に行うことができる。また、デバッグ対象のアプリケーション、プログラムの指定の漏れをなくして、より確実なデバッグ作業を行うことができる。
【0105】
また、請求項36にかかる発明は、請求項32〜35のいずれか一つに記載のプロセス間通信情報取得方法において、前記通信履歴生成ステップは、前記通信情報のデータ種別またはプロセス情報を含むヘッダ情報のみを前記通信情報として抽出して、前記通信履歴情報を生成することを特徴とする。
【0106】
この請求項36にかかる発明によれば、通信履歴生成ステップによって、通信情報のデータ種別またはプロセス情報を含むヘッダ情報のみを通信情報として抽出することで、画像情報処理装置のデバッグ作業において、簡易な検証だけを希望する場合にヘッダ情報だけの通信情報を取得することができるので、受信データのすべてを通信履歴情報として記録する場合に比べ、ハードディスクなどの資源の節約を図ることができる。
【0107】
また、請求項37にかかる発明は、請求項25〜36のいずれか一つに記載のプロセス間通信情報取得方法において、通信履歴開始要求があったときに、プロセス間通信に関する通信情報の取得要求を前記アプリケーションまたは前記プログラムのプロセスに送信する通信情報取得要求ステップをさらに備え、前記通信情報取得ステップは、前記アプリケーションおよび前記プログラムのプロセスが前記取得要求を受信したときに実行されることを特徴とする。
【0108】
この請求項37にかかる発明によれば、通信履歴開始要求があったときに、通信情報取得要求ステップによって、通信情報の取得要求をアプリケーションまたはプログラムのプロセスに送信し、アプリケーションおよびプログラムのプロセスがこの取得要求を受信したときに通信情報取得ステップが実行されることで、通信情報の取得や通信履歴情報の生成を、画像情報処理装置の再起動なしに、通信履歴開始要求に応じて動的に開始することができ、デバッグ作業を効率的に開始することができる。
【0109】
また、請求項38にかかる発明は、請求項37に記載のプロセス間通信情報取得方法において、前記アプリケーションおよび前記プログラムは、前記通信情報取得ステップをプロセス内部で実行する起動関数を有しており、前記通信情報取得要求ステップは、前記起動関数の呼び出しにより、前記取得対象の前記アプリケーションのプロセスおよび前記プログラムのプロセスに前記取得要求を行うことを特徴とする。
【0110】
この請求項38にかかる発明によれば、通信情報取得要求ステップによって、アプリケーションおよびプログラムで用意された起動関数呼び出しにより、取得対象のアプリケーションのプロセスおよびプログラムのプロセスに取得要求を行うことで、アプリケーションおよびプログラムも起動関数を用意しておけば、通信情報取得要求ステップによる関数呼び出しという簡易なプロセス間通信を利用して前記取得要求を行うことができ、プログラム開発労力の軽減を図ることができる。
【0111】
また、請求項39にかかる発明は、請求項37または38に記載のプロセス間通信情報取得方法において、前記通信情報取得要求ステップは、さらに前記制御情報を受信し、受信した前記制御情報を記憶手段に格納することを特徴とする。
【0112】
この請求項39にかかる発明によれば、通信情報取得要求ステップによって、制御情報を受信し、受信した制御情報を記憶手段に格納することで、制御情報に設定された取得条件の変更などが生じた場合でも、取得条件変更に応じて動的に通信情報の取得や通信履歴の生成を行うことができ、制御情報の変更があるたびに画像情報処理装置を再起動させる必要がなく、デバッグ作業をより効率的に行うことができる。
【0113】
また、請求項40にかかる発明は、請求項39に記載のプロセス間通信情報取得方法において、前記通信情報取得要求ステップは、前記通信履歴開始要求と前記制御情報を、ネットワークに接続された複数の画像情報処理装置を管理する管理装置から受信することを特徴とする。
【0114】
この請求項40にかかる発明によれば、通信情報取得要求ステップによって、通信履歴開始要求と制御情報を、ネットワーク経由で管理装置から受信することで、管理装置からの要求に応じた通信情報の取得や通信履歴情報の生成が可能となり、管理装置による画像情報処理装置の集中管理に拡張性を持たせることができる。
【0115】
また、請求項41にかかる発明は、請求項39に記載のプロセス間通信情報取得方法において、前記通信情報取得要求ステップは、前記通信履歴開始要求と前記制御情報を、ネットワークに接続されたクライアント端末から受信することを特徴とする。
【0116】
この請求項41にかかる発明によれば、通信情報取得要求ステップによって、通信履歴開始要求と制御情報をネットワークに接続されたクライアント端末から受信することで、デバッグ作業を画像情報処理装置から離れた場所で行うことができ、デバッグ作業をより効率的に行うことができる。
【0117】
また、請求項42にかかる発明は、請求項25〜41のいずれか一つに記載された方法をコンピュータに実行させるプログラムであるので、請求項25〜41のいずれか一つの動作をコンピュータによって実行することができる。
【0118】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかる画像情報処理装置、画像情報処理システム、プロセス間通信情報取得方法およびその方法をコンピュータに実行させるプログラムの好適な実施の形態を詳細に説明する。
【0119】
(実施の形態1)
図1は、この発明の実施の形態1である画像形成装置(以下、「複合機」という)の機能的構成を示すブロック図である。図1に示すように、複合機100は、白黒ラインプリンタ(B&W LP)101と、カラーラインプリンタ(Color LP)102と、スキャナ、ファクシミリ、ハードディスク、メモリ、ネットワークインタフェースなどのハードウェアリソース103を有するとともに、プラットホーム120とアプリケーション130とから構成されるソフトウェア群110とを備えている。
【0120】
プラットホーム120は、アプリケーション130からの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ(SRM)123と、汎用OS121と、ログ生成部117とを有する。
【0121】
コントロールサービスは、複数のサービスモジュールから形成され、SCS(システムコントロールサービス)122と、ECS(エンジンコントロールサービス)124と、MCS(メモリコントロールサービス)125と、OCS(オペレーションパネルコントロールサービス)126と、FCS(ファックスコントロールサービス)127と、NCS(ネットワークコントロールサービス)128とから構成される。なお、このプラットホーム120は、あらかじめ定義された関数により前記アプリケーション130から処理要求を受信可能とするアプリケーションプログラムインタフェース(API)を有する。
【0122】
汎用OS121は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。
【0123】
SRM123のプロセスは、SCS122とともにシステムの制御およびリソースの管理を行うものである。SRM123のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、HDDファイル、ホストI/O(セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど)のハードウェア資源を利用する上位層からの要求にしたがって調停を行い、実行制御する。
【0124】
具体的には、このSRM123は、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、SRM123は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施している。
【0125】
SCS122のプロセスは、アプリ管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御などを行う。
【0126】
ECS124のプロセスは、白黒ラインプリンタ(B&W LP)101、カラーラインプリンタ(Color LP)102、スキャナ、ファクシミリなどからなるハードウェアリソース103のエンジンの制御を行う。
【0127】
MCS125のプロセスは、画像メモリの取得および解放、ハードディスク装置(HDD)の利用、画像データの圧縮および伸張などを行う。
【0128】
FCS127のプロセスは、システムコントローラの各アプリ層からPSTN/ISDN網を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのAPIを提供する。
【0129】
NCS128のプロセスは、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行う。具体的には、ftpd、httpd、lpd、snmpd、telnetd、smtpdなどのサーバデーモンや、同プロトコルのクライアント機能などを有している。
【0130】
OCS126は、オペレータ(ユーザ)と本体制御間の情報伝達手段となるオペレーションパネル(操作パネル)210の制御を行う。OCS126は、オペレーションパネル210からキー押下をキーイベントとして取得し、取得したキーに対応したキーイベント関数をSCS122に送信するOCSプロセスの部分と、アプリケーション130またはコントロールサービスからの要求によりオペレーションパネル210に各種画面を描画出力する描画関数やその他オペレーションパネル210に対する制御を行う関数などがあらかじめ登録されたOCS関数ライブラリの部分とから構成される。なお、OCS126のすべてをプロセスとして動作させるように構成しても良く、あるいはOCS126のすべてをOCS関数ライブラリとして構成しても良い。
【0131】
アプリケーション130は、ページ記述言語(PDL)、PCLおよびポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、工程検査用アプリケーションである工程検査アプリ116とを有している。これらのアプリケーション130はいずれも複合機100の起動時に初期化部(図示せず)によりプロセスとして生成され、動作する。
【0132】
各アプリケーション130と各コントロールサービスには、本発明の通信情報取得手段を構成するロギングハンドラが設けられている。このロギングハンドラは、自プロセスが他のプロセスからメッセージや関数呼び出しなどのデータを受信した場合、受信データに応じた処理を実行する前に、後述する制御情報に基づいて受信データからプロセス間通信情報を抽出して、抽出した通信情報を各プロセスごとに確保された共有メモリに書き込む処理を行う。
【0133】
ログ生成部117は、コントロールサービス層でプロセスとして動作し、アプリケーション130とコントロールサービスにより共有メモリに書き込まれた通信情報から、かかる通信情報を記録した通信ログファイルを生成するものであり、本発明における通信履歴生成手段を構成する。ここで、通信ログファイルは本発明における通信履歴情報を構成する。なお、ロギングハンドラとログ生成部117の詳細な動作については後述する。
【0134】
このように、実施の形態1にかかる複合機100には、複数のアプリケーション130および複数のコントロールサービスが存在し、いずれもプロセスとして動作している。そして、これらの各プロセス内部には、一または複数のスレッドが生成されて、スレッド単位の並列実行が行われる。そして、コントロールサービスがアプリケーション130に対し共通サービスを提供しており、このため、これらの多数のプロセスが並列動作、およびスレッドの並列動作を行って互いに協調動作を行いながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを提供するようになっている。
【0135】
また、複合機100では、サードベンダーなどの第三者がコントロールサービス層の上のアプリケーション層に新規なアプリケーションを開発して搭載することが可能となっている。
【0136】
なお、実施の形態1にかかる複合機100では、複数のアプリケーション130のプロセスと複数のコントロールサービスのプロセスとが動作しているが、アプリケーション130とコントロールサービスのプロセスがそれぞれ単一の構成とすることも可能である。また、アプリケーション130が全く存在せず、コントロールサービスのプロセスと汎用OS121とハードウェア資源だけを設け、アプリケーション130をNCS128により接続されたネットワークを介して新規アプリケーションをネットワーク経由で搭載可能な構成とすることもできる。また、各アプリケーション130は、アプリケーションごとに追加または削除することができる。
【0137】
図2は、図1に示した実施の形態1の複合機100のハードウェア構成図である。図2に示すように、この複合機100は、CPU202、SDRAM203、SRAM208、フラッシュメモリ(フラッシュROM)204、フラッシュカードインタフェース部206およびHD205などをASIC201に接続したコントローラボード200と、オペレーションパネル210と、ファックスコントロールユニット(FCU)220と、USB230と、IEEE1394 240と、プリンタ250とから構成されている。オペレーションパネル210はASIC201に直接接続され、FCU220、USB230、IEEE1394 240およびプリンタ250はPCIバスを介してASIC201に接続されている。
【0138】
フラッシュカードインタフェース部206は、フラッシュカード207を挿入して、フラッシュカード207とデータのやりとりを行うインタフェースである。このフラッシュカードインタフェース部206によって、プロセス間通信情報の取得条件を設定した制御情報を記録したフラッシュカード207を読み込むことができるようになっている。
【0139】
SDRAM203には、各アプリケーション130や各コントロールサービスごとに、これらの各プロセスがログ生成部117のプロセスとの間で、通信情報の送受信を行う際にアクセスされる共有メモリが確保される。また、SDRAM203には、ユーザにより入力された制御情報を、アプリケーション130およびコントロールサービスの各プロセスと、ログ生成部117のプロセスから参照される制御情報用の共有メモリが確保される。
【0140】
HD205には、ログ生成部117によってアプリケーション130やコントロールサービスの通信情報からなる通信ログファイルが生成される。
【0141】
オペレーションパネル210は、利用者のキー入力、ボタン押下などのキー操作を入力する操作部と、ボタン、ウィンドウ、各種画面などの描画データを表示する表示部とから構成される。
【0142】
図3は、実施の形態1にかかる複合機100において、プロセス間通信情報取得処理および通信ログ生成処理を実行するプロセスの全体構成を示したブロック図である。なお、図3は、コピーアプリ112とMCS125のそれぞれを対象として、各プロセスのプロセス間通信による受信データからプロセス間通信情報を取得し、通信ログファイル307を生成する例を示している。
【0143】
図3に示すように、実施の形態1の複合機100によるプロセス間通信情報の取得および通信ログファイルの生成処理においては、複数の共有メモリ303,304a,304bが生成される。共有メモリには、ユーザが入力した制御ファイルの内容が制御情報として設定される制御情報用の共有メモリ303と、各アプリケーション130および各コントロールサービスの各プロセスごとに生成される通信情報用の共有メモリ304a,304bが、ログ生成部117のプロセスによって生成される。
【0144】
制御情報用の共有メモリ303は、本発明における記憶手段を構成する。この制御情報用の共有メモリ303には、ユーザが入力した制御ファイル302の設定内容がログ生成部117によって制御情報305として書きまれる。そして、この制御情報用の共有メモリ303に格納された制御情報305がログ生成部117と、各アプリケーション130および各コントロールサービスのプロセスによって参照される。
【0145】
図4(a)は、実施の形態1の複合機100で使用される制御ファイル302の内容を示す説明図である。制御ファイル302は、フラッシュカード207に記録して、フラッシュカードインタフェース部206によってフラッシュカード207から読み込まれる他、HD205の汎用OS121のシステムディレクトリに格納するように構成しても良い。
【0146】
図4(a)に示すように、制御ファイル302は、ログ生成部117による通信情報の取得タイミングを設定した「取得制御」ブロックと、通信情報を取得する対象プロセスを設定した「取得対象」ブロックとから構成される。
【0147】
図4(a)に示すように、制御ファイル302の中の「取得制御」ブロックは、ログ生成部117による通信情報用の共有メモリ304a,304bへのアクセスタイミングを指定する「ポーリング間隔」フィールドと、プロセスの生成および消滅情報を取得するために通信情報用の共有メモリ304a,304bにアクセスするタイミングを指定する「プロセス生成・消滅情報出力間隔」フィールドと、プロセス名とプロセスIDの対応情報を取得するために通信情報用の共有メモリ304a,304bにアクセスするタイミングを指定する「プロセス名・プロセスID対応情報出力間隔」フィールドと、通信ログファイル307の最大サイズを指定する「通信ログファイル最大サイズ」フィールドから構成される。
【0148】
制御ファイル302の取得対象ブロックは、通信ログファイル307に受信データのヘッダのみを記録するか、すべての受信データの情報を記録するかを指定する「ヘッダ」フィールドと、通信情報を取得する対象のプロセスを指定する「対象プロセス」フィールドと、この対象プロセスで指定されたプロセスまたは機能指定で関連するプロセスの受信データから特定のプロセスからの受信データのみを抽出する場合にその特定のプロセスを指定する「相手先プロセス」フィールドと、通信情報を取得するプロセスを複合機100で提供されるコピー、プリンタ、スキャナ、ファクシミリなどのユーザサービス名で指定する「機能指定」フィールドから構成される。
【0149】
「対象プロセス」フィールドは、さらに対象とするプロセス名(たとえば、図4(a)に示すように、コピーアプリ、MCSなど)と、指定されたアプリまたはコントロールサービスのプロセスに対して確保される通信情報用の共有メモリ304a,304bを識別する共有メモリキーIDと、確保する通信制御用の共有メモリ304a,304bのサイズとを指定するようになっている。
【0150】
「相手先プロセス」フィールドには、「対象プロセス」フィールドで指定したプロセスが通信情報として取得する受信データの送信元のプロセス名を対象プロセスごとに指定される。図4(a)の例では、コピーアプリ112におけるECS124からの受信データを、MCS125におけるECS124からの受信データのみを通信情報として取得することを指定している。
【0151】
「機能指定」フィールドには、「コピー」、「プリンタ」、「スキャナ」、「ファクシミリ送信」、「ファクシミリ受信」、「PCファクシミリ」などのユーザサービス名が指定される。
【0152】
通信情報用の共有メモリ304a,304bは、コピーアプリ112やMCS125などの各プロセスごとにログ生成部117によってSDRAM203上に生成され、さらにログ生成部117によって各共有メモリ内部に、通信情報を格納するFIFO(First-In First-Out)キュー306a,306bが生成される。このFIFOキュー306a,306bは、通信情報を格納順に読み出し可能となっている。このため、FIFOキューに格納された通信情報は時系列に読み出されることになる。このように共有メモリ304a,304bを各プロセスごとに生成しているのは、以下の理由による。すべてのプロセスで書き込み可能な単一の共有メモリを設けて通信情報を書き込むと、コピーアプリ112などのアプリケーションのプロセス、MCS125などのコントロールサービスのプロセスは、汎用OS121のカーネルの管理下で並列に実行されているため、共有メモリに書き込まれる通信情報が並列実行の状況によって分断されてしまい、どのプロセスから書き込まれた通信情報であるかを判別不可能となってしまうからである。実施の形態1の複合機100では、図3に示すように、各プロセスごとに別個の共有メモリ304a,304bを設けて通信情報を書き込むように構成しているので、通信情報の書き込み元のプロセスを容易に判別することが可能となっている。
【0153】
コピーアプリ112のプロセスとMCS125のプロセスの内部には、ロギングハンドラ301が起動される。このロギングハンドラ301は、制御情報305の設定内容を解析し、その設定内容に従って受信したデータから通信情報を抽出し、抽出された通信情報を、各プロセスごとの共有メモリのFIFOキュー306a,306bに格納する。
【0154】
図5は、実施の形態1にかかる複合機100のアプリケーション130およびコントロールサービスのプロセス内部の状態を示すブロック図である。アプリケーション130およびコントロールサービスのプロセスには、ディスパッチャ501と、関数ハンドラ502と、メッセージハンドラ503と、エラーハンドラ504と、ロギングハンドラ301が動作している。
【0155】
ディスパッチャ501は、他のプロセスのスレッドからの関数呼び出しおよびメッセージの受信を監視するスレッドである。ディスパッチャ501は、そのスレッド上で、関数ハンドラ502、メッセージハンドラ503、エラーハンドラ504およびロギングハンドラ301を起動する。関数ハンドラ502は、他のプロセスから呼び出された関数の具体的な処理を実行するものであり、実際には関数ごとに複数存在する。ディスパッチャ501は、他のプロセスから関数呼び出しを受信すると、受信データのデータ種別を判定し、受信データが関数データである場合には、受信した関数に対応する関数ハンドラ502を呼び出す。そして、呼び出された関数ハンドラ502によって要求された処理を実行し、その関数戻り値を関数呼び出しを行ったプロセスへ返信する。
【0156】
メッセージハンドラ503は、受信したメッセージに対する処理を行うものである。ディスパッチャ501は、受信データのデータ種別を判定し、受信データがメッセージの場合には、メッセージハンドラ503を呼び出すようになっている。エラーハンドラ504は、ディスパッチャ501の実行中にエラーが発生した場合に呼び出され、エラー通知などのエラー処理を行う。
【0157】
ロギングハンドラ301は、プロセスの起動時に、ログ生成部117のプロセスが存在している場合にのみ起動される。ロギングハンドラ301が起動された場合には、ディスパッチャ501が関数呼び出しやメッセージを受信したときに、上述のように関数ハンドラ502またはメッセージハンドラ503を直ちに呼び出すことはせず、先にロギングハンドラ301を呼び出して受信した関数呼び出しやメッセージを一旦ロギングハンドラ301に受け渡す。このとき、ロギングハンドラ301は受け渡された関数呼び出しやメッセージの受信データから、制御情報305の指定に従って通信情報を抽出して、共有メモリ304a,304bのFIFOキュー306a,306bに通信情報を書き込み、ディスパッチャ501に復帰する処理を行う。この後、ディスパッチャ501により関数ハンドラ502やメッセージハンドラ503が呼び出される。
【0158】
ログ生成部117は、ユーザがフラッシュカード207により入力した制御情報305を格納するための制御情報用の共有メモリ303やアプリケーション130およびコントロールサービスの各プロセスがプロセス間通信情報を格納するための通信情報用の共有メモリ304a,304bをSDRAM203に確保する。また、ログ生成部117は、一定時間ごとに各共有メモリ304a,304b内のFIFOキュー306a,306bを参照して、通信情報が格納されているか否かをチェックする。そして、FIFOキュー306a,306bに通信情報が格納されている場合には、通信情報を読み出して、HD205に通信ログファイル307を生成する。さらに生成された通信ログファイル307をNCS128に送信し、これによってLANなどネットワークに接続されたPC(Personal Computer)などのデバッグ作業用のクライアント端末と、公衆回線などのネットワークに接続された遠隔集中管理装置に送信する。なお、送信処理は、FTPなどのプロトコルを利用したファイル転送あるいは電子メールなどによってNCS128により行われる。
【0159】
図9は、通信ログファイル307の一レコードのフォーマットを示すデータ構造図である。図9に示すように、通信ログファイル307の一レコードは、取得時刻と、データ種別と、データ長と、発信元プロセスIDと、固有データとから構成される。取得時刻は、後述するようにロギングハンドラ301によって通信情報として取得した時刻が付与される。データ種別には、メッセージの識別情報であるメッセージID(Mnn)または関数の識別情報である関数ID(Fnn)が格納される。固有データは、具体的なメッセージのデータあるいは関数データが格納される。通信ログファイル307は、このようなフォーマットの複数のレコードが時系列に連結されて構成される。
【0160】
実施の形態1にかかる複合機100で実行されるプロセス間通信情報取得および通信ログ生成プログラムは(ロギングハンドラ301およびログ生成部117のプログラム)は、ソフトウェア開発キット(SDK:Software Development Kit)などの開発用ツールキットの一部または全部として、CD−ROMまたはFDなどの記憶媒体に実行可能な形式またはインストール可能な形式のファイルで提供される。また、このような実行可能な形式またはインストール可能な形式のファイルを、ネットワーク経由でNCS128を介して(あるいはNCS128を介さずに直接ダウンロードするなど)取得可能な方法で提供するようにしても良い。
【0161】
次に、以上のように構成された実施の形態1にかかる複合機100によるプロセス間通信情報取得処理および通信ログファイル生成処理について説明する。図6は、複合機100の起動時におけるプロセス間通信情報取得のための初期化処理の手順を示すフローチャートである。
【0162】
複合機100のフラッシュカードインタフェース部206に制御ファイル302を記録したフラッシュカード207を挿入した状態で、複合機100の電源を投入すると、ハードウェア資源の診断および初期化を行った後、初期化部(図示せず)により汎用OS121が起動され、その次にログ生成部117が起動され(ステップS601)、制御はログ生成部117に移行する。
【0163】
ログ生成部117は、まずフラッシュカード207の中の制御ファイル302をオープンして、制御情報用の共有メモリ303をSDRAM203上に生成する(ステップS602)。そして、制御ファイル302の内容を解析して、制御情報305として制御情報用の共有メモリ303に設定する(ステップS603)。
【0164】
ここで、制御ファイル302の解析および制御情報305の書き込みは次のように行われる。制御ファイル302の取得制御ブロックすべてと、取得対象ブロックの「対象プロセス」および「相手先プロセス」はそのまま制御情報305として共有メモリ303に書き込まれる。一方、取得対象ブロックの「機能指定」の設定内容は、指定されたユーザサービスを提供する際に実行されるアプリケーション130およびコントロールサービスのプロセス名に展開され、さらに展開されたアプリケーション130およびコントロールサービスごとに共有メモリキーID、共有メモリサイズを自動的に決定して「対象プロセス」フィールドに書き込まれる。プロセス名への展開は、あらかじめユーザサービスに対応して実行されるプロセス名の一覧を記述した機能別プロセスリストを参照して行われる。この機能別プロセスリストは、ログ生成部117で保持しておく。このような機能別プロセスリストの例としては、たとえば、「コピー:コピーアプリ、ECS、MCS、SRM」、「プリンタ:プリンタアプリ、ECS、MCS、NCS、SRM」、「ファクシミリ送信:ファックスアプリ、FCS、ECS、MCS、SRM」などを記録したファイルなどがあげられる。このように、共有メモリ303に設定された制御情報の一例を図4(b)に示す。図4(b)に示すように、図4(a)の制御ファイル中の「機能指定」の設定内容は、制御情報の「対象プロセス」に展開されている。
【0165】
次に、ログ生成部117は、HD205に通信情報を書き込むための通信ログファイル307を生成し、その先頭レコードにスタートレコードを書き込む(ステップS604)。このスタートレコードは、通信ログファイル307の存在を示すものである。
【0166】
次に、ログ生成部117は、制御情報用の共有メモリ303の中の制御情報305に設定されている「対象プロセス」を参照して、対象プロセスごとに指定された通信情報用の共有メモリ304a,304bをSDRAM203上に生成し、さらにその中にFIFOキュー306a,306bを生成する(ステップS605)。そして、制御情報305で指定された共有メモリキーIDを生成した各共有メモリ303に付与した後、制御を初期化部に戻す。その後、初期化部は、コントロールサービス、アプリケーション130の各プロセスを起動する(ステップS606)。
【0167】
起動されたコントロールサービスおよびアプリケーションの各プロセスでは、まずディスパッチャ501によって関数ハンドラ502、メッセージハンドラ503、エラーハンドラ504およびロギングハンドラ301を起動する(ステップS607)。そして、ログ生成部117のプロセスが存在するか否かをチェックする(ステップS608)。そして、ログ生成部117のプロセスが存在する場合には、制御情報用の共有メモリ303に格納されている制御情報305を参照する。一方、ログ生成部117のプロセスが存在しない場合には、通信情報の取得は行わないので、制御情報305の参照は行わない。
【0168】
そして、ログ生成部117のプロセスが存在する場合には、制御情報305により自プロセスが対象となっているか否かを判断する(ステップS609)。ここで、自プロセスが対象となっているか否かは、制御情報の「対象プロセス」に自プロセス名が設定されているか否かで判断する。
【0169】
そして、アプリケーション130、コントロールサービスにおけるこのような判断の結果、自プロセスが対象となっている場合には、制御情報で指定されたキーIDの共有メモリ303を自プロセスの仮想メモリ領域に割り当てることによって、共有メモリ303の割付けを行う(ステップS610)。一方、自プロセスが対象となっていない場合には、通信情報の取得は行わないものとする。
【0170】
図7は、アプリケーション130およびコントロールサービスのプロセスによる通信情報の取得処理の手順を示すフローチャートである。ディスパッチャ501が関数呼び出しやメッセージなどのデータを受信すると(ステップS701)、ディスパッチャ501はまずロギングハンドラ301を呼び出す(ステップS702)。
【0171】
ロギングハンドラ301は、まず制御情報305を参照し(ステップS703)、自プロセスが「対象プロセス」として指定されているか否かをチェックする(ステップS704)。そして対象として指定されている場合には、さらに制御情報305の「相手先プロセス」の設定の有無をチェックし(ステップS705)、設定されていない場合には制御情報305の「ヘッダ」の設定内容のチェックを行う(ステップS707)。
【0172】
一方、「相手先プロセス」が設定されている場合には、設定されている相手先プロセスと受信したデータのプロセスIDに対応するプロセス名とを比較し(ステップS706)、一致する場合にのみ受信データから通信情報の取得を行うこととする。
【0173】
次に、ロギングハンドラ301は、制御情報の「ヘッダ」の設定内容をチェックする(ステップS707)。そして、「ヘッダ」に「ヘッダのみ」が設定されている場合には、受信データから、データ種別(メッセージまたは関数)、発信元プロセスID、データ長などのヘッダ情報のみを通信情報として抽出する(ステップS708)。一方、「ヘッダ」に「全部」が設定されている場合には受信データのすべてを通信情報とする(ステップS709)。そして、現在時刻をシステム関数などで取得し、抽出した通信情報に取得した現在時刻を取得時刻として付加する(ステップS710)。そして、通信情報を自プロセス用の共有メモリ304a,304bのFIFOキュー306a,306bに書き込み(ステップS711)、ディスパッチャ501に復帰する。
【0174】
なお、実施の形態1の複合機100では、現在時刻を取得時刻として付与しているが、デバッグ作業においてはプロセス間通信により送受信されるデータのタイミング(相対時間)がわかればよいため、取得時刻として通信情報の取得処理開始からの経過時間を取得時刻として通信情報に付加するように構成してもよい。
【0175】
ここで、FIFOキュー306a.306bへの通信情報の書き込み処理は次のように行われる。FIFOキュー306a,306bは、読み出し開始位置を示すリードポインタと、書き込み開始位置を示すライトポインタを有している。FIFOキュー306a.306bへの書き込み処理では、このライトポインタの示す位置から通信情報を書き始め、全ての通信情報の書き込みが終了した後で、ライトポインタを最終の通信情報を書き込んだ位置に更新する。このため、FIFOキュー306a,306bのリードポインタとライトポインタの位置が異なっている場合には、FIFOキュー306a,306bに通信情報が存在していることになる。
【0176】
従って、通信情報のFIFOキュー306a,306bへの書き込み処理中に、アプリケーション130またはコントロールサービスのプロセスの並列実行に伴うプロセス切り替えが生じた場合でも、ライトポインタはまだ更新されていない。このため、後述するログ生成部117のプロセスがFIFOキュー306a,306bを参照して通信情報の存在チェックを行った場合でも、通信情報は格納されていないと判断され、書き込み途中の不完全な通信情報が読み込まれることはなく、通信情報の連続性が保証されることになる。
【0177】
ディスパッチャ501では、ロギングハンドラ301による処理が終了すると、受信データのデータ種別に対応したハンドラを呼び出し(ステップS712)、各ハンドラにより通常の受信データに応じた処理が行われる(ステップS713)。たとえば、受信データが関数呼び出しである場合には関数ハンドラ502が呼び出され、メッセージである場合にはメッセージハンドラ503が呼び出されて各ハンドラの処理が実行される。
【0178】
図8は、ログ生成部117による通信ログファイル生成処理の手順を示すフローチャートである。ログ生成部117は、共有メモリ304a,304bのFIFOキュー306a,306bを一定時間ごとにポーリング(参照)し(ステップS801)、FIFOキュー306a,306bに有効な通信情報が格納されているか否かをチェックする(ステップS802)。そして、通信情報が格納されている場合にはFIFOキュー306a,306bに格納されているすべての通信情報を繰り返し読み込む(ステップS803、S804)。
【0179】
ここで、FIFOキュー306a,306bに有効な通信情報が格納されているか否かの判断は、上述したリードポインタの位置とライトポインタの位置が異なっているか否かをチェックすることにより行われる。すなわち、FIFOキュー306a,306bのリードポインタの位置とライトポインタの位置が異なっている場合には、FIFOキュー306a,306bに有効な通信情報が格納されていると判断し、両ポインタの位置が同一である場合には、FIFOキュー306a,306bに通信情報は格納されていないと判断する。
【0180】
そして、ログ生成部117は、読み込んだ通信情報をHD205の通信ログファイル307に書き込む(ステップS805)。さらに、このようにして生成された通信ログファイルをNCS128経由でネットワークに接続されたデバッグ作業用PC、遠隔集中管理装置あるいは管理サーバに送信する(ステップS806)。このようなステップS801からS805までの処理を、プロセスごとに存在するすべての共有メモリ304a,304bのFIFOキュー306a,306bに対して行う(ステップS807)。このようにして生成された通信ログファイル307の一例を図10に示す。なお、図10では、通信ログファイル307の理解の都合上、ログ内容を文字列で示しているが、実際には数値データとして記録される。
【0181】
ここで、PC、遠隔集中管理装置あるいは管理サーバへの通信ログファイル307の送信について説明する。図11は、実施の形態1の複合機100を含む遠隔集中管理システムの構成を示すブロック図である。この遠隔集中管理システムは、遠隔集中管理装置1100および管理サーバ1110と、複数の複合機100とが公衆回線によって接続された構成となっている。また、遠隔集中管理装置1100と管理サーバ1110は、LAN1111などのネットワークにより接続されている。ここで、管理サーバ1110および遠隔集中管理装置1100は、本発明における管理装置を構成する。
【0182】
遠隔集中管理装置1100は、公衆回線によって接続された複数の複合機100から通信ログファイル307などの動作状況を収集し、一括して管理するものである。この遠隔集中管理装置1100は、システム全体の制御を実行するコンピュータ1101と、光磁気ディスク、磁気テープ、フレキシブルディスク(FD)、ICカード等の外部記憶装置1102と、多チャネル型の多チャネル通信制御装置(CCU)1103とにより構成されている。
【0183】
管理サーバ1110は、公衆回線に接続された複数の複合機100から通信ログファイル307を収集して、LAN1111経由で遠隔集中管理装置1100に送信するものであり、多チャネル通信制御装置(CCU)1103に接続されている。
【0184】
遠隔集中管理装置1100および管理サーバ1110の各多チャネル通信制御装置1103には、公衆回線網1104が接続され、通信アダプタ1105を介して、キーカード装置1106および複合機100が複数組接続されている。さらに、複合機100には、LANなどのネットワークによりプリンタクライアントとなるPC(Personal Computer)1107がクライアント端末として接続されている。
【0185】
また、キーカード装置1106は、顧客先に配置された複写機100ごとに接続され、複合機100の使用情報、障害情報などを通信アダプタ1105に出力するように構成されている。この通信アダプタ1105は、顧客先のキーカード装置1106および複合機100の近傍に配置されている。さらに、通信アダプタ1105は、顧客先のファクシミリ装置あるいは一般電話器と接続され、該ファクシミリ装置あるいは一般電話器の未使用時(回線の空き状態)に、多チャネル通信制御装置1103および通信アダプタ1105の間で公衆回線網1104を介してデータ通信(オフトーク通信方式)が可能に構成されている。
【0186】
従って、ログ生成部117は、生成した通信ログファイル307を、NCS128によってキーカード装置1106および通信アダプタ1105を経由して公衆回線網1104を利用して遠隔集中管理装置1100または管理サーバ1110に送信するとともに、クライアント端末であるPC1107にLAN経由で送信する。管理サーバ1110は、通信ログファイル307を受信した場合には、この通信ログファイル307を遠隔集中管理装置1100に送信する。
【0187】
このように実施の形態1にかかる複合機100では、アプリケーション130およびコントロールサービスの各プロセス内部で起動されるロギングハンドラ301によって、アプリケーション130またはコントロールサービスのプロセス間通信によって受信したすべての通信情報から、制御情報305に基づいて通信情報を抽出して共有メモリ304a,304bに格納しているので、多数のプロセスが動作し、かつ複雑に絡み合ってプロセス間通信を行っている場合でも、必要なプロセス間通信情報を制御情報305の設定内容に従って容易に抽出して取得することができ、プロセス数が少ない従来の複合機100に比べて、デバッグ作業を効率的に行うことができる。また、このようにデバッグ作業を効率的に行えるので、例えばサードベンダなどの第三者がアプリケーション層に追加する新規アプリケーションの開発が容易となり、この結果、新規アプリケーション開発の促進を図ることができる。
【0188】
また、実施の形態1にかかる複合機100では、ログ生成部117によって、共有メモリ304a,304bに格納された通信情報を一定時間ごとに取得して、通信ログファイル307をHD205に生成しているので、多数のプロセス間で複雑に行われるプロセス間通信の状況を把握することができ、障害の原因究明を容易に行うことができる。
【0189】
さらに、実施の形態1にかかる複合機100では、ロギングハンドラ301が受信した通信情報から必要な通信情報を抽出してから共有メモリ304a,304bに格納しているので、ログ生成部117による通信ログファイル生成時に抽出処理を行う必要がなく、処理効率を向上させることができる。
【0190】
(実施の形態2)
実施の形態1の複合機100は、通信情報の抽出および取得処理をアプリケーション130およびコントロールサービスのプロセス側で行っていたが、この実施の形態2にかかる複合機100は、通信情報の抽出および取得処理をログ生成部117によって行うものである。
【0191】
実施の形態2の複合機100の機能的構成、ハードウェア構成、プロセス間通信情報取得処理および通信ログ生成処理を実行するプロセスの全体構成は、実施の形態1の複合機100で説明した図1、図2および図3に示す構成と同様である。
【0192】
実施の形態2にかかる複合機100では、コントロールサービスおよびアプリケーション130のプロセス内部で動作するロギングハンドラ301は、実施の形態1におけるロギングハンドラ301と同様に本発明における通信情報取得手段を構成し、プロセスの起動時に、ログ生成部117のプロセスが存在している場合にのみ起動され、ディスパッチャ501が関数呼び出しやメッセージを受信したとき、関数ハンドラ502またはメッセージハンドラ503より先に呼び出される。しかし、実施の形態2では、ロギングハンドラ301はディスパッチャ501から受け渡された関数呼び出しやメッセージの受信データのすべてに現在時刻を付加して、共有メモリ304a,304bのFIFOキュー306a,306bに書き込み、受信データから通信情報の抽出処理は行わない。
【0193】
一方、実施の形態2の複合機100では、ログ生成部117は、本発明における通信履歴生成手段を構成し、実施の形態1と同様に、制御情報用の共有メモリ303、通信情報用の共有メモリ304a,304bの確保、および一定時間ごとに各共有メモリ304a,304b内のFIFOキュー306a,306bを参照する。しかし、実施の形態2では、ログ生成部117は、FIFOキュー306a,306bから読み出した受信データから制御情報305の設定内容に従って通信情報を抽出して、HD205に通信ログファイル307を生成する。なお、ログ生成部117は、実施の形態1と同様に生成された通信ログファイル307を、LAN上のリモートPCおよび公衆回線などに接続された遠隔集中管理装置に送信する。
【0194】
次に、このように構成された実施の形態2にかかる複合機100によるプロセス間通信情報取得処理および通信ログファイル生成処理について説明する。実施の形態2の複合機100では、複合機起動時におけるプロセス間通信情報取得のための初期化処理は、実施の形態1と同様の手順で行われるが、アプリケーション130およびコントロールサービスのプロセスによる通信情報の取得処理、およびログ生成部117による通信ログファイル生成処理の手順が実施の形態1の複合機100と異なっている。
【0195】
図12は、アプリケーション130およびコントロールサービスのプロセスによる通信情報の取得処理の手順を示すフローチャートである。ディスパッチャ501が関数呼び出しやメッセージなどのデータを受信すると(ステップS1201)、まずロギングハンドラ301を呼び出し、受信データを受け渡す(ステップS1202)。
【0196】
ロギングハンドラ301は、現在時刻をシステム関数などで取得し、取得時刻として受信データに付加する(ステップS1203)。そして受信データのすべてを自プロセス用の共有メモリ304a,304bのFIFOキュー306a,306bに書き込み(ステップS1204)、ディスパッチャ501に復帰する。
【0197】
ディスパッチャ501では、ロギングハンドラ301による処理が終了すると、受信データのデータ種別に対応したハンドラを呼び出し(ステップS1205)、各ハンドラにより通常の受信データに応じた処理が行われる(ステップS1206)。
【0198】
図13は、ログ生成部117による通信ログファイル生成処理の手順を示すフローチャートである。ログ生成部117は、まず共有メモリ303から制御情報305を読み込む(ステップS1301)。そして、共有メモリ304a,304bのFIFOキュー306a,306bを一定時間ごとに参照し(ステップS1302)、FIFOキュー306a,306bに有効な受信データが格納されているか否かをチェックする(ステップS1303)。そして、受信データが格納されている場合には、その受信データを読み込み(ステップS1304)、現在アクセスしている共有メモリ304aを割り付けているプロセスが、制御情報305の「対象プロセス」として指定されているか否かをチェックする(ステップS1305)。そして対象として指定されている場合には、さらに制御情報305の「相手先プロセス」の設定の有無をチェックし(ステップS1306)、設定されていない場合には制御情報305の「ヘッダ」の設定内容のチェックを行う。一方、「相手先プロセス」が設定されている場合には、設定されている相手先プロセスと受信したデータのプロセスIDに対応するプロセス名とを比較し(ステップS1307)、一致する場合にのみ受信データから通信情報の取得を行うこととする。
【0199】
次に、ログ生成部117は、制御情報305の「ヘッダ」の設定内容をチェックする(ステップS1308)。そして、「ヘッダ」に「ヘッダのみ」が設定されている場合には、受信データから、データ種別(メッセージまたは関数)、発信元プロセスID、データ長などのヘッダ情報のみを通信情報として抽出する(ステップS1309)。一方、「ヘッダ」に「全部」が設定されている場合には受信データのすべてを通信情報とする(ステップS1310)。
【0200】
そして、FIFOキュー306a,306bに格納されているすべての受信データを繰り返し読み込み(ステップS1311)、全受信データからの通信情報の取得を完了したら、読み込んだ通信情報をHD205の通信ログファイル307に書き込み(ステップS1312)、さらに生成された通信ログファイル307をNCS128経由でネットワークに接続されたデバッグ作業用PCおよび遠隔集中管理装置に送信する(ステップS1313)。
【0201】
このようなステップS1302からS1313までの処理を、全ての通信情報用の共有ファイル304a,304bに対して行い(ステップS1314)、通信ログ生成処理を完了する。
【0202】
このように実施の形態2にかかる複合機100では、ロギングハンドラ301によって、アプリケーション130およびコントロールサービスにおけるプロセス間通信により受信したすべての通信情報を共有メモリ304a,304bに格納し、ログ生成部117によって、一定時間ごとに、制御情報305に基づいて共有メモリ304a,304bから通信情報を抽出して、通信ログファイル307を生成しているので、多数のプロセスが動作している複合機100において必要なプロセス間通信情報を制御情報305の設定内容に従って容易に抽出して、プロセス間通信の状況を容易に把握してデバッグ作業を効率的に行うことができる。
【0203】
また、実施の形態2にかかる複合機100では、制御情報305に基づいた通信情報の抽出を、共有メモリ304a,304bへの格納段階ではなく、共有メモリ304a,304bからの読み出し段階で行っているので、通信ログファイル307の生成の際のデータ量が減少し、データ転送効率を向上させることができる。
【0204】
(実施の形態3)
実施の形態1および2にかかる複合機100は、いずれも複合機100の起動時にログ生成部117およびロギングハンドラ301を起動させていたが、この実施の形態3にかかる複合機100は、起動後のコピー、プリンタ、スキャナ、ファクシミリなどのユーザサービスを実行中に、ロギング開始要求がユーザなどから通知された場合に、ロギングハンドラ301およびログ生成部117を動的に起動させて、通信情報の取得および通信ログの生成を行うものである。また、実施の形態3にかかる複合機100は、通信情報の取得処理をコントロールサービス、アプリケーション130側で行うものである。
【0205】
実施の形態3の複合機100の機能的構成、ハードウェア構成は、実施の形態1の複合機100で説明した図1および図2に示す構成と同様である。
【0206】
図14は、実施の形態3の複合機100におけるプロセス間通信情報取得処理および通信ログ生成処理を実行するプロセスの全体構成を示すブロック図である。実施の形態3にかかる複合機100では、ログ生成部117、ロギングハンドラ301の他、SCS122、OCS126もプロセス間通信情報取得処理および通信ログ生成処理を行うために使用される。
【0207】
複合機100の稼働中に、ユーザが通信ログファイルの生成を依頼する場合には、ロギング開始要求と制御情報を複合機100に入力する。ユーザによるロギング開始要求および制御情報の入力は、オペレーションパネル210から入力する場合と、LAN上のリモートPCからRPC(リモートプロシージャコール)などの手段によるネットワーク経由のロギング開始要求およびFTPなどのプロトコルを利用した制御情報の送信を行う場合がある。
【0208】
オペレーションパネル210からロギング開始要求および制御情報が入力される場合には、OCS126のプロセスで入力したキー操作によるキーイベントが取得され、SCS122にロギング開始要求および制御情報のキーイベントが送信される。また、リモートPCからロギング開始要求と制御情報を送信した場合には、ロギング開始要求と制御情報をNCS128で受信して、SCS122に送信されるようになっている。
【0209】
また、公衆回線などのネットワークに接続された複数の複合機や複写機あるいはプリンタなどを管理する管理サーバ、あるいはこれらの複合機などの動作情報、障害情報などを管理する遠隔集中管理装置から、ロギング開始要求および制御情報が送信されてくる場合もある。このような場合には、実施の形態1の複合機100で説明した通信アダプタ1105によってロギング開始要求および制御情報を受信し、さらにNCS128によってロギング開始要求および制御情報がSCS122に送信される。
【0210】
SCS122は、このようにOCS126またはNCS128からロギング開始要求および制御情報を受信すると、ログ生成部117を起動し、受信したロギング開始要求と制御情報をログ生成部117に転送する。
【0211】
ログ生成部117は、本発明における通信履歴生成手段と通信履歴管理手段とを構成するものであり、SCS122からロギング開始要求と制御情報を受信したときに、実施の形態1の複合機100と同様に、制御情報の解析を行い、対象プロセスごとに共有メモリ304a,304bの確保を行う。また、ログ生成部117は、通信情報の取得要求のため後述する起動関数の呼び出しを、対象プロセスとなるコントロールサービスおよびアプリケーション130のプロセスに対して行う。また、ログ生成部117は、実施の形態1と同様に、通信ログファイル307の生成および送信処理を行う。
【0212】
ロギングハンドラ301は、本発明における通信情報取得手段を構成するものであり、コントロールサービスおよびアプリケーション130のプロセスがログ生成部117から起動関数呼び出しを受けたときに、コントロールサービスおよびアプリケーション130のプロセス内部で起動される。すなわち、アプリケーション130およびコントロールサービスのそれぞれは、起動関数やその他各種関数を登録した関数ライブラリとリンク(結合)して生成されている。この関数ライブラリは、他のプロセスをクライアントプロセスとしたサーバプロセスとして、当該クライアントプロセスに対してAPIを利用して提供する各種サービスを関数として登録したものであり、この関数ライブラリの中に、プロセス内部でロギングハンドラ301を起動する起動関数が登録されている。従って、ログ生成部117のプロセスからアプリケーション130またはコントロールサービスのプロセスに対して、起動関数呼び出しを行うことにより、ロギングハンドラ301が起動される。また、ロギングハンドラ301は、実施の形態1と同様に、受信データから制御情報の設定内容に従って通信情報の取得処理を行う。
【0213】
次に、このように構成された実施の形態3の複合機100において、ロギング開始要求があった場合の通信情報取得の初期化処理について説明する。図15は、通信情報取得の初期化処理の手順を示すフローチャートである。
【0214】
ユーザによるオペレーションパネル210のキー操作により、あるいはリモートPC1107や遠隔集中管理装置からロギング開始要求および制御情報をSCS122が受信すると(ステップS1501)、SCS122は、ログ生成部117のプロセスを生成して起動する(ステップS1502)。そして、SCS122は、受信したロギング開始要求と制御情報をログ生成部117に送信する(ステップS1503)。
【0215】
ログ生成部117では、ロギング開始要求と制御情報をSCS122から受信すると、HD205に通信ログファイル307を生成し、この通信ログファイル307にスタートレコードを書き込む(ステップS1504)。そして、SCS122から受信した制御情報を解析して、制御情報に指定されている「対象プロセス」ごとに、共有メモリ304a,304bを生成し、各共有メモリ304a,304bにFIFOキュー306a,306bを生成する(ステップS1505)。そして、「機能指定」の設定内容を、実施の形態1と同様に該当するプロセス名に展開した形式で制御情報を共有メモリ303に設定する(ステップS1506)。そして、ログ生成部117は、制御情報305に設定されている対象プロセスに対して、起動関数呼び出しを行う(ステップS1507)。
【0216】
制御情報で対象プロセスとして設定されているコントロールサービス、アプリケーション130のプロセスでは、ログ生成部117から起動関数呼び出しを受けると、ロギングハンドラ301を起動する(ステップS1508)。そして、ログ生成部117のプロセスを存在をチェックし(ステップS1509)、存在している場合には、共有メモリ303の制御情報305を参照して、自プロセスが「対象プロセス」に指定されているか否かを確認する(ステップS1510)。そして、対象プロセスとして指定されている場合には、共有メモリ304a,304bを自プロセスの仮想メモリ領域に割り付ける(ステップS1511)。これにより、初期化処理が完了する。
【0217】
なお、ロギングハンドラ301による通信情報取得処理およびログ生成部117による通信ログファイル生成処理については、実施の形態1の複合機100と同様の手順で行われる。
【0218】
次に、通信情報の取得処理および通信ログファイル307の生成処理が行われているときに、ユーザのオペレーションパネル210からの操作、またはリモートPC1107や遠隔集中管理装置から新たな制御情報を受信した場合に、新たな制御情報に基づいて現在の取得条件を動的に変更する処理について説明する。図16は、新たな制御情報を受信した場合の処理の手順を示すフローチャートである。
【0219】
SCS122は新たな制御情報を受信すると(ステップS1601)、すべてのコントロールサービスとアプリケーション130のプロセスに条件変更通知メッセージを送信する(ステップS1602)。そして、受信した新たな制御情報を共有メモリ303に上書きする(ステップS1603)。
【0220】
各コントロールサービスおよび各アプリケーション130は条件変更通知を受信し、新たな制御情報305を共有メモリ303から読み込んで解析を行う(ステップS1604)。そして、新たな制御情報305の設定内容に従って取得条件を変更して、通信情報の取得を行う(ステップS1605)。例えば、新たな制御情報305により、自プロセスが対象プロセスでなくなった場合には、通信情報の取得を開始する。また、新たな制御情報305により、自プロセスが対象プロセスとなった場合には、通信情報の取得を停止する。あるいは、制御情報305の「ヘッダ」の設定内容が変更された場合には、抽出する通信情報を、「ヘッダ」の設定内容に従って変更する。
【0221】
なお、以降のロギングハンドラ301による通信情報取得処理およびログ生成部117による通信ログファイル生成処理については、実施の形態1の複合機100と同様の手順で行われる。
【0222】
このように実施の形態3にかかる複合機100では、ロギング開始要求があったときに、ログ生成部117によって、ロギングハンドラ301の起動関数呼び出しを行ってロギングハンドラ301を起動させているので、通信情報の取得および通信ログファイル307の生成を、複合機100の再起動を行うことなく動的に行うことができ、デバッグ作業を効率的に開始することができる。
【0223】
(実施の形態4)
実施の形態3にかかる複合機100は、稼働中にロギング開始要求、制御情報を受信した場合に、動的にロギングハンドラ301およびログ生成部117を起動させ、あるいは動的に制御情報を更新し、ロギングハンドラ301により通信情報の抽出および取得処理を行っていたが、この実施の形態4にかかる複合機100は、稼働中にロギング開始要求、制御情報を受信した場合に、動的にログ生成部117により通信情報の抽出および取得処理を開始し、または新たな取得条件で通信情報の抽出および取得処理を行うものである。
【0224】
実施の形態4の複合機100の機能的構成、ハードウェア構成は、実施の形態2の複合機100で説明した図1および図2に示す構成と同様である。また、プロセス間通信情報取得処理および通信ログ生成処理を実行するプロセスの全体構成は、実施の形態3で説明した図14に示す構成と同様である。
【0225】
実施の形態4にかかる複合機100では、ログ生成部117は、本発明における通信履歴生成手段と通信履歴管理手段とを構成し、SCS122から制御情報を受信したときに、実施の形態2の複合機100と同様に、制御情報の解析を行い、対象プロセスごとに共有メモリ304a,304bの確保を行う。また、ログ生成部117は、起動関数呼び出しを、対象プロセスとなるコントロールサービスおよびアプリケーション130のプロセスに対して行う。また、ログ生成部117は、実施の形態2と同様に、制御情報の設定内容に従って受信データから通信情報の抽出を行い、通信ログファイル307の生成および送信処理を行う。
【0226】
ロギングハンドラ301は、本発明における通信情報取得手段を構成し、コントロールサービスおよびアプリケーション130のプロセスがログ生成部117から起動関数呼び出しを受けたときに、コントロールサービスおよびアプリケーション130のプロセス内部で起動される。
【0227】
次に、通信情報の取得処理および通信ログファイル307の生成処理が行われているときに、ユーザのオペレーションパネル210からの操作、またはリモートPC1107や遠隔集中管理装置から新たな制御情報を受信した場合に、新たな制御情報に基づいて現在の取得条件を動的に変更する処理について説明する。なお、ロギング開始要求があった場合の通信情報取得の初期化処理については、実施の形態3にかかる複合機100で説明した図15に示す手順と同様である。
【0228】
図17は、新たな制御情報を受信した場合の処理の手順を示すフローチャートである。SCS122は新たな制御情報を受信すると(ステップS1701)、ログ生成部117のプロセスに条件変更通知メッセージを送信する(ステップS1702)。そして、受信した新たな制御情報を共有メモリ305に上書きする(ステップS1703)。
【0229】
ログ生成部117は条件変更通知を受信し、新たな制御情報305を共有メモリ303から読み込んで解析を行う(ステップS1704)。そして、新たな制御情報305の設定内容に従って取得条件を変更して、通信情報の取得を行う(ステップS1705)。
【0230】
なお、以降のログ生成部117による通信情報取得処理および通信ログファイル生成処理については、実施の形態2の複合機100と同様の手順で行われる。
【0231】
このように実施の形態4にかかる複合機100は、ロギング開始要求があったときに、ログ生成部117によって、ロギングハンドラ301の起動関数呼び出しを行ってロギングハンドラ301を起動させているので、通信情報の取得および通信ログファイル307の生成を、複合機100の再起動を行うことなく動的に行うことができ、デバッグ作業を効率的に開始することができる。
【0232】
なお、実施の形態3および4にかかる複合機100では、ログ生成部117が、本発明における通信履歴管理手段と通信履歴生成手段とを兼用するように構成されているが、例えばログ管理部などをログ生成部117とは別個に設け、このログ管理部を通信履歴管理手段として構成しても良い。
【0233】
(実施の形態5)
実施の形態1〜4にかかる複合機100は、複合機100内のログ生成部117によって通信ログファイル307を生成した後に、遠隔集中管理装置1100または管理サーバに送信していたが、この実施の形態5にかかる複合機1900は、通信ログファイルの生成処理を管理サーバで行うものである。
【0234】
図18は、実施の形態5にかかる複合機1900を含む画像形成システムの構成を示すブロック図である。図18に示すように、実施の形態5にかかる画像形成システムは、管理サーバ1810と複数組の複合機1900が公衆回線網1104によって接続された構成となっている。また、管理サーバ1810は、LAN1111などのネットワークによって遠隔集中管理装置1800と接続されている。
【0235】
管理サーバ1810は、多チャネル通信制御装置(CCU)1103に接続されており、公衆回線に接続された複数の複合機100から通信情報を収集して、収集した通信情報を記録した通信ログファイル2007を生成する。そして、管理サーバ1810は、生成された通信ログファイル2007をLAN1111経由で遠隔集中管理装置1100に送信する。
【0236】
管理サーバ1110の各多チャネル通信制御装置1103には、公衆回線網1104が接続され、通信アダプタ1105を介して、キーカード装置1106および複合機1900が複数組接続されている。また、実施の形態1と同様に、複合機1900には、LANなどのネットワークによりプリンタクライアントとなるPC1107がクライアント端末として接続されている。
【0237】
遠隔集中管理装置1800は、管理サーバ1810から通信ログファイル2007などの動作状況を収集し、一括して管理するものである。この遠隔集中管理装置1800は、システム全体の制御を実行するコンピュータ1801と、光磁気ディスク、磁気テープ、フレキシブルディスク(FD)、ICカード等の外部記憶装置1802とにより構成されている。
【0238】
なお、多チャネル通信制御装置1803、キーカード装置1106、通信アダプタ1105のそれぞれの機能は、実施の形態1で説明した多チャネル通信制御装置、キーカード装置、通信アダプタと同様である。
【0239】
図19は、実施の形態5の複合機1900の機能的構成を示すブロック図である。また、図20は、実施の形態5にかかる画像形成システムにおける複合機1900と管理サーバ1810の構成を示すブロック図である。なお、複合機1900のハードウェア構成は、実施の形態1の複合機100で説明した図2に示す構成と同様である。
【0240】
図19および図20に示すように、実施の形態5にかかる複合機1900は、アプリケーション130およびコントロールサービスのプロセスの内部で起動されるロギングハンドラ2001と、ログ管理部1910のプロセスとを備えている。この複合機1900では、実施の形態1〜4の複合機100と異なり、ログ生成部117が存在せず、このため、複合機1900では制御情報305の設定内容に従った通信情報の取得のみを行い、通信情報からの通信ログファイル2007の生成は管理サーバ1810で行う。
【0241】
ロギングハンドラ2001は、実施の形態1と同様に、各プロセスにおけるプロセス間通信によって受信した通信情報から、制御情報305の設定内容に従った通信情報を抽出し、共有メモリ304a,304bに格納するものである。ロギングハンドラ2001は本発明における通信情報取得手段を構成する。
【0242】
ログ管理部1910は、各共有メモリ303、304a、304bの生成、制御ファイル302の解析、共有メモリ304a、304bからの通信情報の取得および管理サーバ1810への送信を行うものである。なお、ログ管理部1910とNCS128は、本発明における送信手段を構成する。
【0243】
管理サーバ1810は、ログ生成部2002とログ送信部2003とHD2004とを備えている。ログ生成部2002は、複数の複合機1900から通信情報を受信して、通信ログファイル2007を生成するものであり、本発明における通信履歴生成手段を構成する。
【0244】
このように実施の形態5にかかる画像形成システムでは、管理サーバ1810のログ生成部2102によって通信ログファイル2007を生成している。
【0245】
ログ送信部2003は、生成された通信ログファイル2007を遠隔集中管理装置にftpなどのプロトコルによって送信するものであり、本発明における遠隔送信手段を構成する。
【0246】
次にこのように構成された実施の形態5にかかる画像形成システムによる通信情報の取得および通信ログファイル2007の生成処理について説明する。まず、複合機1900の起動時においては、実施の形態1の複合機100におけるログ生成部117と同様に、ログ管理部1910が制御ファイル302の設定内容に従って各共有メモリ303、304a、304bの生成およびFIFOキュー306a,306bの生成を行う。そして、制御ファイル302を解析して制御情報305として共有メモリ303に格納する。
【0247】
アプリケーション130、コントロールサービスの各プロセスでは、ロギングハンドラ2001が各プロセス内部で起動される。そして、プロセス間通信によって通信情報を受信すると、受信した通信情報から、制御情報305の設定内容に従って通信情報を抽出し、各プロセスに対応する共有メモリ304a,304bのFIFOキュー306a,306bに格納する。
【0248】
一方、ログ管理部1910は、一定時間ごとに共有メモリ304a,304bにアクセスを行い、FIFOキュー306a,306bに有効な通信情報が格納されている場合にはその通信情報を読み出す。ただし、実施の形態1のログ生成部117と異なり、ログ管理部1910は、複合機1900内で通信ログファイル2007を生成しない。その代わりに、ログ管理部1910は、各共有メモリ304a,304bから収集した通信情報をNCS128を介して、公衆回線1104に接続された管理サーバ1810に送信する。
【0249】
管理サーバ1810では、ログ生成部2002によっては、複合機1900から送信された通信情報を受信する。そして、ログ生成部2002は、受信した通信情報を収集して通信ログファイル2007を生成し、HD2004に格納する。次に、ログ送信部2003は、ログ生成部2002によって生成された通信ログファイル2007を、ftpなどのプロトコルを利用してLAN1111経由で遠隔集中管理装置1800に送信する。
【0250】
なお、複合機1900のログ管理部1910による制御ファイルの解析、ロギングハンドラ2001による通信情報の抽出、ログ管理部1910による共有メモリ304a,304bからの通信情報の取得の各処理の具体的な手順は、実施の形態1の複合機100で説明した処理手順と同様である。また、管理サーバ1900のログ生成部2002による通信ログファイル2007の生成処理の手順も実施の形態1の複合機100で説明した処理手順と同様である。
【0251】
このように実施の形態5にかかる画像形成システムでは、複合機1900のロギングハンドラ2001によって、受信した通信情報から制御情報305に基づいて通信情報を抽出し、抽出した通信情報を、ログ管理部1910よって管理サーバ1810に送信し、管理サーバ1810のログ生成部2002で受信した通信情報から通信ログファイ2003を生成しているので、管理サーバ1810側で複数の複合機1900のプロセス間通信情報の通信ログファイル2007を一括して管理することができ、複数の複合機1900の通信状況を一カ所で容易に把握することができる。
【0252】
なお、実施の形態5にかかる複合機1900では、抽出した通信情報を共有メモリ304a,304bに一旦格納して、ログ管理部1910およびNCS128によって管理サーバ1810に送信しているが、図20の破線矢印に示すように、ロギングハンドラ2001から直接、管理サーバ1810に通信情報を送信する構成としても良い。この場合には、ログ管理部1910のプロセスや共有メモリ304a,304bを生成する必要がなくなり、リソースの削減が図られるという利点がある。
【0253】
(実施の形態6)
実施の形態5にかかる画像形成システムでは、制御情報に基づいた通信情報の抽出処理を複合機1900内で行っていたが、この実施の形態6にかかる画像形成システムは、制御情報に基づいた通信情報の抽出処理を管理サーバ1810内で行うものである。
【0254】
図21は、実施の形態6にかかる画像形成システムにおける複合機1900と管理サーバ1810の構成を示すブロック図である。なお、実施の形態6にかかる画像形成システムの全体構成は、実施の形態5で説明した図18に示す構成と同様である。また、実施の形態6にかかる複合機1900の機能的構成は、実施の形態5で説明した図20に示す構成と同様であり、複合機1900の機能的構成は、実施の形態1で説明した図2に示す構成と同様である。
【0255】
図21に示すように、実施の形態6にかかる複合機1900は、アプリケーション130およびコントロールサービスのプロセスの内部で起動されるロギングハンドラ2101と、ログ管理部1910のプロセスとを備えている。
【0256】
ロギングハンドラ2101は、実施の形態2と同様に、各プロセスにおけるプロセス間通信によって受信した通信情報を共有メモリ304a,304bに格納するものである。ロギングハンドラ2101は本発明における通信情報取得手段を構成する。
【0257】
ログ管理部1910は、各共有メモリ303、304a、304bの生成、制御ファイル302の解析、共有メモリ304a、304bからの通信情報の取得および管理サーバ1810への送信を行うものである。なお、ログ管理部1910とNCS128は、本発明における送信手段を構成する。
【0258】
管理サーバ1810は、ログ生成部2102とログ送信部2003とHD2004とを備えている。HD2004には、通信情報の取得条件を設定した制御ファイル2103が格納されている。この制御ファイル2103は、例えば管理サーバ1810のシステム管理者などが作成してHD2004に格納する。また、この制御ファイル2103は、ログ生成部2102によって実施の形態1と同様に解析されて、制御情報2104としてHD2004に格納される。この制御ファイル2103および制御情報2104のデータ構造は、実施の形態1で説明した図4(a)および(b)に示す構造と同様である。
【0259】
ログ生成部2102は、制御ファイル2103の解析を行って制御情報2104を生成するとともに、複数の複合機1900から通信情報を受信して、受信した通信情報の中から制御情報2104の設定内容に従って通信情報を抽出し、抽出した通信情報から通信ログファイル2007を生成する。このログ生成部2102は、本発明における通信履歴生成手段を構成する。
【0260】
ログ送信部2003は、生成された通信ログファイル307を遠隔集中管理装置1800にftpなどのプロトコルによって送信するものであり、本発明における遠隔送信手段を構成する。
【0261】
このように実施の形態6にかかる画像形成システムでは、管理サーバ1810のログ生成部2102によって通信情報の抽出を行っている。
【0262】
次にこのように構成された実施の形態6にかかる画像形成システムによる通信情報の取得および通信ログファイルの生成処理について説明する。まず、ログ管理部1910は、複合機1900の起動時に、アプリケーション130およびコントロールサービスの各プロセスごとに、各共有メモリ303、304a、304bおよびFIFOキュー306a,306bの生成を行う。
【0263】
アプリケーション130、コントロールサービスの各プロセスでは、ロギングハンドラ2001が各プロセス内部で起動される。そして、プロセス間通信によって通信情報を受信すると、受信した通信情報を各プロセスに対応する共有メモリ304a,304bのFIFOキュー306a,306bに格納する。
【0264】
一方、ログ管理部1910は、一定時間ごとに共有メモリ304a,304bにアクセスを行い、FIFOキュー306a,306bに有効な通信情報が格納されている場合にはその通信情報を読み出す。そして、ログ管理部1910は、各共有メモリ304a,304bから収集した通信情報をNCS128を介して、公衆回線1104に接続された管理サーバ1810に送信する。
【0265】
管理サーバ1810では、まず、ログ生成部2102によってHD2004に格納された制御ファイル2103の解析が行われ、制御情報2104としてHD2004に格納される。
【0266】
ログ生成部2102が複合機1900から通信情報を受信すると、ログ生成部2102は、HD2004の制御情報2104を読み込んで、受信した通信情報の中から、制御情報2104の設定内容に従って通信情報を抽出する。そして、抽出した通信情報から通信ログファイル2107を生成し、HD2004に格納する。
【0267】
次に、ログ送信部2003は、ログ生成部2102によって生成された通信ログファイル2107を、ftpなどのプロトコルを利用してLAN1111経由で遠隔集中管理装置1800に送信する。
【0268】
なお、複合機1900のロギングハンドラ2101による通信情報の取得、ログ管理部1910による共有メモリ304a,304bからの通信情報の取得の各処理の具体的な手順は、実施の形態2の複合機100で説明した処理手順と同様である。また、管理サーバ1900のログ生成部2102による制御ファイル2103の解析処理、通信情報の抽出および通信ログファイル307の生成処理の手順は実施の形態2の複合機100で説明した処理手順と同様である。
【0269】
このように実施の形態6にかかる画像形成システムでは、複合機1900のロギングハンドラ2101によって、プロセス間通信により受信した通信情報を取得してログ管理部1910により管理サーバ1810に送信し、管理サーバ1810のログ生成部2102によって受信した通信情報から制御情報2104の設定内容に従って通信情報を抽出して通信ログファイル2007を生成しているので、管理サーバ1810側で複数の複合機1900のプロセス間通信情報の通信履歴情報を一括して生成することができ、複数の複合機1900の通信状況を一カ所で容易に把握することができる。
【0270】
なお、実施の形態6にかかる複合機1900では、受信した通信情報を共有メモリ304a,304bに一旦格納して、ログ管理部1910およびNCS128によって管理サーバ1810に送信しているが、図21の破線矢印に示すように、ロギングハンドラ2101から直接、管理サーバ1810に通信情報を送信する構成としても良い。この場合には、ログ管理部1910のプロセスや共有メモリ304a,304bを生成する必要がなくなり、リソースの削減が図られるという利点がある。
【0271】
また、以上説明した実施の形態1〜6にかかる複合機100、1900では、コピーアプリ112のプロセスとMCS125のプロセスを例に挙げて説明したが、他のアプリケーション130、他のコントロールサービスのプロセス間通信に対しても同様の処理が行われる。
【0272】
また、実施の形態1〜5にかかる複合機100、1900では、制御情報305を共有メモリ303に格納しているが、HD205にファイルとして格納する構成としてもよい。
【0273】
また、実施の形態1〜6にかかる複合機100、1900では、通信情報を格納する共有メモリ304a,304bを各プロセスごとに別個に設けているが、アプリケーション130とコントロールサービスのすべてのプロセスに共有される単一の共有メモリを通信情報用として設けても良い。この場合、プロセス並列実行に伴うCPU占有時間のプロセス切り替えによって、共有メモリに書き込み中の一レコード分の通信情報が分断されることを防止するため、セマフォやクリティカル・セクションなどの同期メカニズムを利用して、共有メモリの排他制御を行うように構成する必要がある。
【0274】
また、実施の形態1〜6では、通信ログファイルを生成する際に通信情報に現在時刻を付加しているが、さらにこの現在時刻を利用して時系列順にソートしたり、あるいは対象プロセスごとに分類する処理を行って通信ログファイルを生成しても良い。
【0275】
【発明の効果】
以上説明したように、請求項1にかかる発明によれば、多数のプロセスが複雑に絡み合ってプロセス間通信を行う構成の画像情報処理装置において必要なプロセス間通信情報を取得条件に従って容易に抽出して取得することができ、デバッグ作業を効率的に行うことができるという効果を奏する。また、これにより画像情報処理装置の品質を向上させることができるという効果を奏する。
【0276】
また、この請求項1にかかる発明によれば、サードベンダなどの第三者による新規アプリケーションの開発を促進することができるという効果を奏する。
【0277】
さらに、この請求項1にかかる発明によれば、他のプロセスから共有メモリを利用したプロセス間通信によって通信情報を取得することができるので、デバッグ作業の形態に応じた形式で通信情報を加工することも可能となり、デバッグ作業におけるユーザビリティを向上させることができるという効果を奏する。
【0278】
加えて、この請求項1にかかる発明によれば、共有メモリから通信情報を読み出してログ生成やログ表示などを行う場合の処理効率を向上させることができるという効果を奏する。
【0279】
また、請求項2にかかる発明によれば、必要なプロセスのみのプロセス間通信情報を取得することができ、通信情報取得の処理効率を向上させることができるという効果を奏する。また、デバッグ作業に必要なアプリケーションやプログラムにおける通信情報だけを得ることができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0280】
また、請求項3にかかる発明によれば、画像情報処理装置のデバッグ作業において、障害が生じていると予想されるコンポーネント間のプロセス間通信だけを集中して検証することができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0281】
また、請求項4にかかる発明によれば、デバッグ作業における制御情報の設定が容易になるとともに、画像情報処理装置のコンポーネント構造を熟知していないユーザでもデバッグ作業を容易に行えるという効果を奏する。また、デバッグ対象のアプリケーション、プログラムの指定の漏れをなくして、より確実なデバッグ作業を行えるという効果を奏する。
【0282】
また、請求項5にかかる発明によれば、格納データ量に制限のある共有メモリ資源の節約を図ることができるという効果を奏する。
【0283】
また、請求項6にかかる発明によれば、多数のプロセス間で複雑に行われるプロセス間通信の状況を把握して障害の原因究明を行うことができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0284】
また、請求項7にかかる発明によれば、遠隔集中管理装置によって通信履歴情報に基づいた画像情報処理装置の適切な管理を行えるという効果を奏する。
【0285】
また、請求項8にかかる発明によれば、多数のプロセスが動作している構成の画像情報処理装置において、プロセス間通信の状況を容易に把握でき、デバッグ作業を効率的に行えるという効果を奏する。
【0286】
また、この請求項9にかかる発明によれば、通信履歴情報の生成の際のデータ量が減少し、データ転送効率を向上させることができるという効果を奏する。
【0287】
また、請求項9にかかる発明によれば、必要なプロセスのみのプロセス間通信情報を取得することができ、通信情報取得の処理効率を向上させることができるという効果を奏する。また、デバッグ作業に必要なアプリケーションやプログラムにおける通信情報だけを得ることができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0288】
また、請求項10にかかる発明によれば、画像情報処理装置のデバッグ作業において、障害が生じていると予想されるコンポーネント間のプロセス間通信だけを集中して検証することができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0289】
また、請求項11にかかる発明によれば、デバッグ作業における制御情報の設定が容易になるとともに、画像情報処理装置のコンポーネント構造を熟知していないユーザでもデバッグ作業を容易に行えるという効果を奏する。また、デバッグ対象のアプリケーション、プログラムの指定の漏れをなくして、より確実なデバッグ作業を行えるという効果を奏す。
【0290】
また、請求項12にかかる発明によれば、ハードディスクなどの資源の節約を図ることができるという効果を奏する。
【0291】
また、請求項13にかかる発明によれば、通信情報の取得や通信履歴情報の生成を、画像情報処理装置の再起動なしに、通信履歴開始要求に応じて動的に開始することができ、デバッグ作業を効率的に開始することができるという効果を奏する。
【0292】
また、請求項14にかかる発明によれば、関数呼び出しという簡易なプロセス間通信を利用して取得要求を行うことができ、プログラム開発労力の軽減を図ることができるという効果を奏する。
【0293】
また、請求項15にかかる発明によれば、取得条件の変更に応じて動的に通信情報の取得や通信履歴の生成を行うことができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0294】
また、請求項16にかかる発明によれば、通信履歴開始要求や制御情報の送信先に応じて別個のコンポーネントを設ける必要がなく、実行時に必要なリソースの削減を図ることができるという効果を奏する。
【0295】
また、請求項17にかかる発明によれば、遠隔集中管理装置による画像情報処理装置の集中管理に拡張性を持たせることができるという効果を奏する。
【0296】
また、請求項18にかかる発明によれば、デバッグ作業を画像情報処理装置から離れた場所で行うことができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0297】
また、請求項19にかかる発明によれば、プロセスの並列実行時における通信情報の分断を回避して、通信情報の取得元プロセスの判別が常に可能となるという効果を奏する。
【0298】
また、請求項20にかかる発明によれば、管理サーバ側で複数の画像情報処理装置のプロセス間通信情報の通信履歴情報を一括して管理することができ、複数の画像情報処理装置の通信状況を一カ所で容易に把握することができるという効果を奏する。
【0299】
また、請求項21にかかる発明によれば、送信手段を通信情報取得手段とは別プロセスとし、収集した通信情報を一括して管理サーバに送信することができ、ネットワークの負荷を軽減することができるという効果を奏する。
【0300】
また、請求項22にかかる発明によれば、管理サーバ側で複数の画像情報処理装置のプロセス間通信情報の通信履歴情報を一括して生成することができ、複数の画像情報処理装置の通信状況を一カ所で容易に把握することができるという効果を奏する。
【0301】
また、請求項23にかかる発明によれば、送信手段を通信情報取得手段とは別プロセスとし、収集した通信情報を一括して管理サーバに送信することができ、ネットワークの負荷を軽減することができるという効果を奏する。
【0302】
また、請求項24にかかる発明によれば、遠隔集中管理装置による画像情報処理装置の障害対応を的確に行うことができるという効果を奏する。
【0303】
また、請求項25にかかる発明によれば、多数のプロセスが複雑に絡み合ってプロセス間通信を行う構成の画像情報処理装置において必要なプロセス間通信情報を取得条件に従って容易に抽出して取得することができ、デバッグ作業を効率的に行うことができるという効果を奏する。また、これにより画像情報処理装置の品質を向上させることができるという効果を奏する。
【0304】
また、この請求項25にかかる発明によれば、サードベンダなどの第三者による新規アプリケーションの開発を促進することができるという効果を奏する。
【0305】
さらに、この請求項25にかかる発明によれば、他のプロセスから共有メモリを利用したプロセス間通信によって通信情報を取得することができるので、デバッグ作業の形態に応じた形式で通信情報を加工することも可能となり、デバッグ作業におけるユーザビリティを向上させることができるという効果を奏する。
【0306】
加えて、この請求項25にかかる発明によれば、共有メモリから通信情報を読み出してログ生成やログ表示などを行う場合の処理効率を向上させることができるという効果を奏する。
【0307】
また、請求項26にかかる発明によれば、必要なプロセスのみのプロセス間通信情報を取得することができ、通信情報取得の処理効率を向上させることができるという効果を奏する。また、デバッグ作業に必要なアプリケーションやプログラムにおける通信情報だけを得ることができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0308】
また、請求項27にかかる発明によれば、画像情報処理装置のデバッグ作業において、障害が生じていると予想されるコンポーネント間のプロセス間通信だけを集中して検証することができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0309】
また、請求項28にかかる発明によれば、デバッグ作業における制御情報の設定が容易になるとともに、画像情報処理装置のコンポーネント構造を熟知していないユーザでもデバッグ作業を容易に行えるという効果を奏する。また、デバッグ対象のアプリケーション、プログラムの指定の漏れをなくして、より確実なデバッグ作業を行えるという効果を奏する。
【0310】
また、請求項29にかかる発明によれば、格納データ量に制限のある共有メモリ資源の節約を図ることができるという効果を奏する。
【0311】
また、請求項30にかかる発明によれば、多数のプロセス間で複雑に行われるプロセス間通信の状況を把握して障害の原因究明を行うことができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0312】
また、請求項31にかかる発明によれば、遠隔集中管理装置によって通信履歴情報に基づいた画像情報処理装置の適切な管理を行えるという効果を奏する。
【0313】
また、請求項32にかかる発明によれば、多数のプロセスが動作している構成の画像情報処理装置において、プロセス間通信の状況を容易に把握でき、デバッグ作業を効率的に行えるという効果を奏する。また、この請求項29にかかる発明によれば、通信履歴情報の生成の際のデータ量が減少し、データ転送効率を向上させることができるという効果を奏する。
【0314】
また、請求項33にかかる発明によれば、必要なプロセスのみのプロセス間通信情報を取得することができ、通信情報取得の処理効率を向上させることができるという効果を奏する。また、デバッグ作業に必要なアプリケーションやプログラムにおける通信情報だけを得ることができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0315】
また、請求項34にかかる発明によれば、画像情報処理装置のデバッグ作業において、障害が生じていると予想されるコンポーネント間のプロセス間通信だけを集中して検証することができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0316】
また、請求項35にかかる発明によれば、デバッグ作業における制御情報の設定が容易になるとともに、画像情報処理装置のコンポーネント構造を熟知していないユーザでもデバッグ作業を容易に行えるという効果を奏する。また、デバッグ対象のアプリケーション、プログラムの指定の漏れをなくして、より確実なデバッグ作業を行えるという効果を奏する。
【0317】
また、請求項36にかかる発明によれば、ハードディスクなどの資源の節約を図ることができるという効果を奏する。
【0318】
また、請求項37にかかる発明によれば、通信情報の取得や通信履歴情報の生成を、画像情報処理装置の再起動なしに、通信履歴開始要求に応じて動的に開始することができ、デバッグ作業を効率的に開始することができるという効果を奏する。
【0319】
また、請求項38にかかる発明によれば、関数呼び出しという簡易なプロセス間通信を利用して取得要求を行うことができ、プログラム開発労力の軽減を図ることができるという効果を奏する。
【0320】
また、請求項39にかかる発明によれば、取得条件の変更に応じて動的に通信情報の取得や通信履歴の生成を行うことができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0321】
また、請求項40にかかる発明によれば、遠隔集中管理装置による画像情報処理装置の集中管理に拡張性を持たせることができるという効果を奏する。
【0322】
また、請求項41にかかる発明によれば、デバッグ作業を画像情報処理装置から離れた場所で行うことができ、デバッグ作業をより効率的に行えるという効果を奏する。
【0323】
また、請求項42にかかる発明によれば、請求項25〜41のいずれか一つの動作をコンピュータによって実行することができるという効果を奏する。
【図面の簡単な説明】
【図1】実施の形態1にかかる複合機の機能的構成を示すブロック図である。
【図2】実施の形態1にかかる複合機のハードウェア構成図である。
【図3】実施の形態1にかかる複合機において、プロセス間通信情報取得処理および通信ログ生成処理を実行するプロセスの全体構成を示したブロック図である。
【図4】図4(a)は、実施の形態1の複合機で使用される制御ファイルの一例を示す説明図である。図4(b)は、共有メモリに設定された制御情報の一例を示す説明図である。
【図5】実施の形態1にかかる複合機のアプリケーションおよびコントロールサービスのプロセス内部の状態を示すブロック図である。
【図6】実施の形態1にかかる複合機の起動時におけるプロセス間通信情報取得のための初期化処理の手順を示すフローチャートである。
【図7】実施の形態1にかかる複合機のアプリケーションおよびコントロールサービスのプロセスによる通信情報の取得処理の手順を示すフローチャートである。
【図8】実施の形態1にかかる複合機のログ生成部による通信ログファイル生成処理の手順を示すフローチャートである。
【図9】実施の形態1にかかる複合機で生成される通信ログファイルの一レコードのフォーマットを示すデータ構造図である。
【図10】実施の形態1にかかる複合機で生成される通信ログファイルの一例を示す説明図である。
【図11】実施の形態1の複合機を含む遠隔集中管理システムの構成を示すブロック図である。
【図12】実施の形態2にかかる複合機のアプリケーションおよびコントロールサービスのプロセスによる通信情報の取得処理の手順を示すフローチャートである。
【図13】実施の形態2にかかる複合機のログ生成部による通信ログファイル生成処理の手順を示すフローチャートである。
【図14】実施の形態3にかかる複合機のプロセス間通信情報取得処理および通信ログ生成処理を実行するプロセスの全体構成を示すブロック図である。
【図15】実施の形態3にかかる複合機における通信情報取得の初期化処理の手順を示すフローチャートである。
【図16】実施の形態3にかかる複合機において、新たな制御情報を受信した場合の処理の手順を示すフローチャートである。
【図17】実施の形態4にかかる複合機において、新たな制御情報を受信した場合の処理の手順を示すフローチャートである。
【図18】実施の形態5にかかる複合機を含む画像形成システムの構成を示すブロック図である。
【図19】実施の形態5にかかる複合機の機能的構成を示すブロック図である。
【図20】実施の形態5にかかる画像形成システムにおける複合機と管理サーバの構成を示すブロック図である。
【図21】実施の形態6にかかる画像形成システムにおける複合機と管理サーバの構成を示すブロック図である。
【符号の説明】
100,1900 複合機
101 白黒ラインプリンタ
102 カラーラインプリンタ
103 ハードウェアリソース
110 ソフトウェア群
111 プリンタアプリ
112 コピーアプリ
113 ファックスアプリ
114 スキャナアプリ
115 ネットファイルアプリ
116 工程検査アプリ
117 ログ生成部
120 プラットホーム
121 汎用OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
130 アプリケーション
200 コントローラボード
201 ASIC
202 CPU
203 SDRAM(RAM)
204 フラッシュメモリ(ROM)
205 HD
206 フラッシュカードインタフェース部
207 フラッシュカード
208 SRAM
210 オペレーションパネル
230 USB
240 IEEE1394
250 プリンタ
301,2001,2101 ロギングハンドラ
302,2103 制御ファイル
303 制御情報用共有メモリ
304a,304b 通信情報用共有メモリ
305,2104 制御情報
306a,306b FIFOキュー
307,2007 通信ログファイル
501 ディスパッチャ
502 関数ハンドラ
503 メッセージハンドラ
504 エラーハンドラ
1100,1800 遠隔集中管理装置
1101,1801 コンピュータ
1102,1802 外部記憶装置
1103,1803 多チャネル通信制御装置
1104 公衆回線網
1105 通信アダプタ
1106 キーカード装置
1107 リモートPC
1110,1810 管理サーバ
1111,1811 LAN
1910 ログ管理部
2002,2102 ログ生成部
2003 ログ送信部
2004 ハードディスク(HD)

Claims (42)

  1. 印刷部または撮像部を有するハードウェア資源を利用して画像情報処理にかかるアプリケーションを複数搭載可能とし、オペレーティングシステムと、前記オペレーティングシステム上で動作し、複数の前記アプリケーションからアクセスされて前記ハードウェア資源の制御を行うプログラムとを備え、前記アプリケーションと前記プログラムはそれぞれプロセスとして動作し、プロセス間通信を行うことによって前記画像情報処理を行う画像情報処理装置であって、
    プロセス間通信に関する通信情報の取得条件を定めた制御情報を格納した記憶手段と、
    前記アプリケーションのプロセスまたは前記プログラムのプロセスを含む複数のプロセス間で共有される共有メモリと、
    前記アプリケーションおよび前記プログラムの各プロセス内部で起動され、前記アプリケーション同士または前記プログラム同士もしくは前記アプリケーションと前記プログラムの間のプロセス間通信によって受信した通信情報から、前記制御情報に基づいて前記通信情報を抽出して前記共有メモリに格納する通信情報取得手段と、
    を備えたことを特徴とする画像情報処理装置
  2. 前記制御情報は、前記プログラムまたは前記アプリケーションの中から前記通信情報の取得対象プロセスを指定したものであり、
    前記通信情報取得手段は、前記取得対象プロセスにおける前記通信情報を抽出して前記共有メモリに格納することを特徴とする請求項1に記載の画像情報処理装置
  3. 前記制御情報は、前記取得対象プロセスにおけるプロセス間通信の相手先プロセスをさらに指定したものであり、
    前記通信情報取得手段は、前記相手先プロセスからの通信情報のみを抽出して前記共有メモリに格納することを特徴とする請求項2に記載の画像情報処理装置
  4. 前記制御情報は、前記画像情報処理にかかるユーザサービスの中から一または複数のユーザサービスを指定したものであり、
    前記通信情報取得手段は、前記制御情報で指定された前記ユーザサービスを提供する際に実行される前記アプリケーションおよび前記プログラムのすべてのプロセスを選定して、選定されたプロセスで受信した前記通信情報を抽出して前記共有メモリに格納することを特徴とする請求項1〜3のいずれか一つに記載の画像情報処理装置
  5. 前記通信情報取得手段は、前記通信情報のデータ種別またはプロセス情報を含むヘッダ情報のみを前記通信情報として抽出して前記共有メモリに格納することを特徴とする請求項1〜4のいずれか一つに記載の画像情報処理装置
  6. 前記共有メモリに格納された前記通信情報を一定時間ごとに取得し、取得した前記通信情報を記録した通信履歴情報を生成する通信履歴生成手段をさらに備えたことを特徴とする請求項1〜5のいずれか一つに記載の画像情報処理装置
  7. 前記通信履歴生成手段は、さらに前記通信履歴情報を、ネットワークに接続されて複数の画像情報処理装置を管理する管理装置に送信することを特徴とする請求項6に記載の画像情報処理装置
  8. 印刷部または撮像部を有するハードウェア資源を利用して画像情報処理にかかるアプリケーションを複数搭載可能とし、オペレーティングシステムと、前記オペレーティングシステム上で動作し、複数の前記アプリケーションからアクセスされて前記ハードウェア資源の制御を行うプログラムとを備え、前記アプリケーションと前記プログラムはそれぞれプロセスとして動作し、プロセス間通信を行うことによって前記画像情報処理を行う画像情報処理装置であって、
    プロセス間通信に関する通信情報の取得条件を定めた制御情報を格納した記憶手段と、
    前記アプリケーションのプロセスまたは前記プログラムのプロセスを含む複数のプロセス間で共有される共有メモリと、
    前記アプリケーションおよび前記プログラムのプロセスの中で起動され、前記アプリケーション同士または前記プログラム同士もしくは前記アプリケーションと前記プログラムの間のプロセス間通信により受信した通信情報を前記共有メモリに格納する通信情報取得手段と、
    一定時間ごとに、前記共有メモリから前記制御情報に基づいて前記通信情報を抽出し、抽出した前記通信情報を記録した通信履歴情報を生成する通信履歴生成手段と、
    を備えたことを特徴とする画像情報処理装置
  9. 前記制御情報は、前記プログラムまたは前記アプリケーションの中から前記通信情報の取得対象プロセスを指定したものであり、
    前記通信履歴生成手段は、前記取得対象プロセスにおける前記通信情報を抽出して前記通信履歴情報を生成することを特徴とする請求項8に記載の画像情報処理装置
  10. 前記制御情報は、前記取得対象プロセスにおけるプロセス間通信の相手先プロセスをさらに指定したものであり、
    前記通信履歴生成手段は、前記相手先プロセスからの前記通信情報のみを抽出して前記通信履歴情報を生成することを特徴とする請求項9に記載の画像情報処理装置
  11. 前記制御情報は、前記画像情報処理にかかるユーザサービスの中から一または複数のユーザサービスを指定したものであり、
    前記通信履歴生成手段は、前記制御情報で指定された前記ユーザサービスを提供する際に実行される前記アプリケーションおよび前記プログラムのすべてのプロセスにおける前記通信情報を抽出して前記通信履歴情報を生成することを特徴とする請求項8〜10のいずれか一つに記載の画像情報処理装置
  12. 前記通信履歴生成手段は、前記通信情報のデータ種別またはプロセス情報を含むヘッダ情報のみを前記通信情報として抽出して前記通信履歴情報を生成することを特徴とする請求項8〜11のいずれか一つに記載の画像情報処理装置
  13. 通信履歴開始要求があったときに、プロセス間通信に関する通信情報の取得要求を前記アプリケーションまたは前記プログラムのプロセスに送信する通信履歴管理手段をさらに備え、
    前記通信情報取得手段は、前記アプリケーションおよび前記プログラムのプロセスが前記取得要求を受信したときに起動されることを特徴とする請求項1〜12のいずれか一つに記載の画像情報処理装置
  14. 前記アプリケーションおよび前記プログラムは、前記通信情報取得手段をプロセス内部で起動する起動関数を有し、
    前記通信履歴管理手段は、前記起動関数の呼び出しにより、前記取得対象の前記アプリケーションのプロセスおよび前記プログラムのプロセスに前記取得要求を行うことを特徴とする請求項13に記載の画像情報処理装置
  15. 前記通信履歴管理手段は、さらに前記制御情報を受信し、受信した前記制御情報を前記記憶手段に格納することを特徴とする請求項13または14に記載の画像情報処理装置
  16. 前記プログラムは、画像情報処理装置で動作するプロセスの制御およびオペレーションパネルの制御を行うシステムコントロールサービスを備え、
    前記システムコントロールサービスは、前記通信履歴開始要求と前記制御情報を受信し、受信した前記通信履歴開始要求と前記制御情報を前記通信履歴管理手段に転送することを特徴とする請求項13〜15のいずれか一つに記載の画像情報処理装置
  17. 前記システムコントロールサービスは、前記通信履歴開始要求と前記制御情報を、ネットワークに接続された複数の画像情報処理装置を管理する管理装置から受信することを特徴とする請求項16に記載の画像情報処理装置
  18. 前記システムコントロールサービスは、前記通信履歴開始要求と前記制御情報を、ネットワークに接続されたクライアント端末から受信することを特徴とする請求項16に記載の画像情報処理装置
  19. 前記共有メモリは、前記通信情報の取得対象である前記プログラムまたは前記アプリケーションの各プロセスごとに別個に設けられていることを特徴とする請求項1〜18のいずれか一つに記載の画像情報処理装置
  20. 印刷部または撮像部を有するハードウェア資源を利用して画像情報 処理にかかるアプリケーションを複数搭載可能とし、オペレーティングシステムと、前記オペレーティングシステム上で動作し、複数の前記アプリケーションからアクセスされて前記ハードウェア資源の制御を行うプログラムとを備え、前記アプリケーションと前記プログラムはそれぞれプロセスとして動作し、プロセス間通信を行うことによって前記画像情報処理を行う画像情報処理装置と、前記画像情報処理装置とネットワークによって接続され、前記画像情報処理装置を管理する管理サーバとを備えた画像情報処理システムであって、
    前記画像情報処理装置は、
    プロセス間通信に関する通信情報の取得条件を定めた制御情報を格納した記憶手段と、
    前記アプリケーションおよび前記プログラムの各プロセス内部で起動され、前記アプリケーション同士または前記プログラム同士もしくは前記アプリケーションと前記プログラムの間のプロセス間通信によって受信した通信情報から、前記制御情報に基づいて前記通信情報を抽出する通信情報取得手段と、
    前記通信情報取得手段によって抽出された前記通信情報を、前記管理サーバに送信する送信手段と、を備え、
    前記管理サーバは、
    前記画像情報処理装置から前記通信情報を受信し、受信した前記通信情報を記録した通信履歴情報を生成する通信履歴生成手段
    を備えたことを特徴とする画像情報処理システム
  21. 前記画像情報処理装置は、
    前記アプリケーションのプロセスまたは前記プログラムのプロセスを含む複数のプロセス間で共有される共有メモリを備え、
    前記通信情報取得手段は、さらに抽出した前記通信情報を、前記共有メモリに格納し、
    前記送信手段は、前記共有メモリに格納された前記通信情報を一定時間ごとに取得して、取得した前記通信情報を前記管理サーバに送信することを特徴とする請求項20に記載の画像情報処理システム
  22. 印刷部または撮像部を有するハードウェア資源を利用して画像情報処理にかかるアプリケーションを複数搭載可能とし、オペレーティングシステムと、前記オペレーティングシステム上で動作し、複数の前記アプリケーションからアクセスされて前記ハードウェア資源の制御を行うプログラムとを備え、前記アプリケーションと前記プログラムはそれぞれプロセスとして動作し、プロセス間通信を行うことによって前記画像情報処理を行う画像情報処理装置と、前記画像情報処理装置とネットワークによって接続され、前記画像情報処理装置を管理する管理サーバとを備えた画像情報処理システムであって、
    前記画像情報処理装置は、
    前記アプリケーションおよび前記プログラムのプロセスの中で起動され、前記アプリケーション同士または前記プログラム同士もしくは前記アプリケーションと前記プログラムの間のプロセス間通信により受信した通信情報を取得する通信情報取得手段と、
    前記通信情報取得手段により取得した前記通信情報を、前記管理サーバに送信する送信手段と、を備え、
    前記管理サーバは、
    プロセス間通信に関する通信情報の取得条件を定めた制御情報を格納した記憶手段と、
    前記画像情報処理装置から前記通信情報を受信し、受信した前記通信情報から前記制御情報に基づいて前記通信情報を抽出して通信履歴情報を生成する通信履歴生成手段と、
    を備えたことを特徴とする画像情報処理システム
  23. 前記画像情報処理装置は、
    前記アプリケーションのプロセスまたは前記プログラムのプロセスを含む複数のプロセス間で共有される共有メモリをさらに備え、
    前記通信情報取得手段は、さらに取得した前記通信情報を前記共有メモリに格納し、
    前記送信手段は、一定時間ごとに、前記共有メモリから前記通信情報を取得して、取得した前記通信情報を前記管理サーバに送信することを特徴とする請求項22に記載の画像情報処理システム
  24. 前記管理サーバは、さらに前記通信履歴情報を、ネットワークに接続されて前記画像情報処理装置の動作情報を管理する遠隔集中管理装置に送信する遠隔送信手段をさらに備えたことを特徴とする請求項20〜23のいずれか一つに記載の画像情報処理システム
  25. 印刷部または撮像部を有するハードウェア資源を利用して画像情報処理にかかるアプリケーションを複数搭載可能とし、オペレーティングシステムと、前記オペレーティングシステム上で動作し、複数の前記アプリケーションからアクセスされて前記ハードウェア資源の制御を行うプログラムとを備え、前記アプリケーションと前記プログラムはそれぞれプロセスとして動作し、プロセス間通信を行うことによって前記画像情報処理を行う画像情報処理装置で行われるプロセス間通信に関する通信情報を取得するプロセス間通信情報取得方法であって、
    前記アプリケーションおよび前記プログラムの各プロセス内部で、前記アプリケーション同士または前記プログラム同士もしくは前記アプリケーションと前記プログラムの間のプロセス間通信による通信情報から、前記通信情報の取得条件を定めた制御情報に基づいて前記通信情報を抽出して前記共有メモリに格納する通信情報取得ステップ
    を含んだことを特徴とするプロセス間通信情報取得方法。
  26. 前記通信情報取得ステップは、前記制御情報により指定された前記通信情報の取得対象プロセスにおける前記通信情報を抽出して前記共有メモリに格納することを特徴とする請求項25に記載のプロセス間通信情報取得方法。
  27. 前記通信情報取得ステップは、前記制御情報により指定された前記取得対象プロセスにおけるプロセス間通信の相手先プロセスからの前記通信情報のみを抽出して前記共有メモリに格納することを特徴とする請求項26に記載のプロセス間通信情報取得方法。
  28. 前記通信情報取得ステップは、前記制御情報で指定された一または複数の前記ユーザサービスを提供する際に実行される前記アプリケーションおよび前記プログラムのすべてのプロセスにおける前記通信情報を抽出して前記共有メモリに格納することを特徴とする請求項25〜27のいずれか一つに記載のプロセス間通信情報取得方法。
  29. 前記通信情報取得ステップは、前記通信情報のデータ種別またはプロセス情報を含むヘッダ情報のみを前記通信情報として抽出して前記共有メモリに格納することを特徴とする請求項25〜28のいずれか一つに記載のプロセス間通信情報取得方法。
  30. 前記共有メモリに格納された前記通信情報を一定時間ごとに取得し、取得した前記通信情報を記録した通信履歴情報を生成する通信履歴生成ステップをさらに含んだことを特徴とする請求項25〜29のいずれか一つに記載のプロセス間通信情報取得方法。
  31. 前記通信履歴生成ステップは、前記通信履歴情報を、ネットワークに接続されて複数の画像情報処理装置を管理する管理装置に送信する送信ステップを含んだことを特徴とする請求項30に記載のプロセス間通信情報取得方法。
  32. 印刷部または撮像部を有するハードウェア資源を利用して画像情報処理にかかるアプリケーションを複数搭載可能とし、オペレーティングシステムと、前記オペレーティングシステム上で動作し、複数の前記アプリケーションからアクセスされて前記ハードウェア資源の制御を行うプログラムとを備え、前記アプリケーションと前記プログラムはそれぞれプロセスとして動作し、プロセス間通信を行うことによって前記画像情報処理を行う画像情報処理装置で行われるプロセス間通信に関する通信情報を取得するプロセス間通信情報取得方法であって、
    前記アプリケーションおよび前記プログラムの各プロセス内部で、プロセス間通信によって受信した通信情報を共有メモリに格納する通信情報取得ステップと、
    一定時間ごとに、前記共有メモリから、前記アプリケーション同士または前記プログラム同士もしくは前記アプリケーションと前記プログラムの間のプロセス間通信に関する通信情報の取得条件を定めた制御情報に基づいて前記通信情報を抽出し、抽出した前記通信情報を記録した通信履歴情報を生成する通信履歴生成ステップと、
    を含んだことを特徴とするプロセス間通信情報取得方法。
  33. 前記通信履歴生成ステップは、前記制御情報により指定された前記通信情報の取得対象プロセスにおける前記通信情報を抽出して、前記通信履歴情報を生成することを特徴とする請求項32に記載のプロセス間通信情報取得方法。
  34. 前記通信履歴生成ステップは、前記制御情報により指定された前記取得対象プロセスにおけるプロセス間通信の相手先プロセスからの通信情報のみを抽出して、前記通信履歴情報を生成することを特徴とする請求項33に記載のプロセス間通信情報取得方法。
  35. 前記通信履歴生成ステップは、前記制御情報で指定された一または複数の前記ユーザサービスを提供する際に実行される前記アプリケーションおよび前記プログラムのすべてのプロセスにおける前記通信情報を抽出して、前記通信履歴情報を生成することを特徴とする請求項32〜34のいずれか一つに記載のプロセス間通信情報取得方法。
  36. 前記通信履歴生成ステップは、前記通信情報のデータ種別またはプロセス情報を含むヘッダ情報のみを前記通信情報として抽出して、前記通信履歴情報を生成することを特徴とする請求項32〜35のいずれか一つに記載のプロセス間通信情報取得方法。
  37. 通信履歴開始要求があったときに、プロセス間通信に関する通信情報の取得要求を前記アプリケーションまたは前記プログラムのプロセスに送信する通信情報取得要求ステップをさらに備え、
    前記通信情報取得ステップは、前記アプリケーションおよび前記プログラムのプロセスが前記取得要求を受信したときに実行されることを特徴とする請求項25〜36のいずれか一つに記載のプロセス間通信情報取得方法。
  38. 前記アプリケーションおよび前記プログラムは、前記通信情報取得ステップをプロセス内部で実行する起動関数を有しており、
    前記通信情報取得要求ステップは、前記起動関数の呼び出しにより、前記取得対象の前記アプリケーションのプロセスおよび前記プログラムのプロセスに前記取得要求を行うことを特徴とする請求項37に記載のプロセス間通信情報取得方法。
  39. 前記通信情報取得要求ステップは、さらに前記制御情報を受信し、受信した前記制御情報を記憶手段に格納することを特徴とする請求項37または38に記載のプロセス間通信情報取得方法。
  40. 前記通信情報取得要求ステップは、前記通信履歴開始要求と前記制御情報を、ネットワークに接続された複数の画像情報処理装置を管理する管理装置から受信することを特徴とする請求項39に記載のプロセス間通信情報取得方法。
  41. 前記通信情報取得要求ステップは、前記通信履歴開始要求と前記制御情報を、ネットワークに接続されたクライアント端末から受信することを特徴とする請求項39に記載のプロセス間通信情報取得方法。
  42. 請求項25〜41のいずれか一つに記載された方法をコンピュータに実行させるプログラム。
JP2001349434A 2001-11-14 2001-11-14 画像情報処理装置、画像情報処理システム、プロセス間通信情報取得方法およびその方法をコンピュータに実行させるプログラム Expired - Lifetime JP3798682B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001349434A JP3798682B2 (ja) 2001-11-14 2001-11-14 画像情報処理装置、画像情報処理システム、プロセス間通信情報取得方法およびその方法をコンピュータに実行させるプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001349434A JP3798682B2 (ja) 2001-11-14 2001-11-14 画像情報処理装置、画像情報処理システム、プロセス間通信情報取得方法およびその方法をコンピュータに実行させるプログラム

Publications (2)

Publication Number Publication Date
JP2003150357A JP2003150357A (ja) 2003-05-23
JP3798682B2 true JP3798682B2 (ja) 2006-07-19

Family

ID=19162105

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001349434A Expired - Lifetime JP3798682B2 (ja) 2001-11-14 2001-11-14 画像情報処理装置、画像情報処理システム、プロセス間通信情報取得方法およびその方法をコンピュータに実行させるプログラム

Country Status (1)

Country Link
JP (1) JP3798682B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003167715A (ja) * 2001-11-29 2003-06-13 Ricoh Co Ltd プロセス間通信履歴表示方法、その方法をコンピュータに実行させるプログラム、画像形成装置および画像形成システム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11149384A (ja) * 1997-11-17 1999-06-02 Toshiba Tec Corp プロセス間通信制御装置
JP3139459B2 (ja) * 1998-06-22 2001-02-26 日本電気株式会社 並列分散システムのデバッグ装置及びデバッグ方法
JP2000227864A (ja) * 1999-02-05 2000-08-15 Ricoh Co Ltd イメージ入出力装置のソフトウェアシステム
JP2001051871A (ja) * 1999-08-09 2001-02-23 Ricoh Co Ltd リモートデバッグ装置
JP2001249820A (ja) * 2000-03-03 2001-09-14 Ricoh Co Ltd 共有メモリ管理システム、共有メモリ管理方法およびその方法を実施するためのプログラムを記憶した記憶媒体
JP4204739B2 (ja) * 2000-03-28 2009-01-07 株式会社リコー 画像形成装置、画像形成装置における停止制御方法及び該方法を実行するプログラムを格納したコンピュータ読み取り可能な記憶媒体
JP3679349B2 (ja) * 2000-07-05 2005-08-03 株式会社リコー 画像形成装置、画像形成方法、画像形成プログラムおよびアプリケーションプログラム
JP3677474B2 (ja) * 2001-12-05 2005-08-03 株式会社リコー 画像形成装置、プロセス間通信履歴表示方法およびその方法をコンピュータに実行させるプログラム

Also Published As

Publication number Publication date
JP2003150357A (ja) 2003-05-23

Similar Documents

Publication Publication Date Title
EP1387566B1 (en) Image forming apparatus
JP3653073B2 (ja) 画像形成装置、利用者制限方法およびこの方法をコンピュータに実行させるプログラム
US8115943B2 (en) Image forming apparatus and print process method
JP4509965B2 (ja) ジョブレンダリング方法およびジョブレンダリングシステム
JP4153152B2 (ja) アプリ実行制御システム、アプリ実行制御方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2004118237A (ja) 画像形成装置およびアプリケーションインストール方法
JP4512565B2 (ja) 画像形成装置およびアプリケーションインストール方法
JP4128506B2 (ja) 画像形成装置およびアプリケーション情報取得方法
JP2003167715A (ja) プロセス間通信履歴表示方法、その方法をコンピュータに実行させるプログラム、画像形成装置および画像形成システム
JP3802829B2 (ja) 画像情報処理装置、リモート画像情報処理方法およびその方法をコンピュータに実行させるプログラム
JP3798682B2 (ja) 画像情報処理装置、画像情報処理システム、プロセス間通信情報取得方法およびその方法をコンピュータに実行させるプログラム
JP4037079B2 (ja) 画像形成装置、プロセス監視方法およびこの方法をコンピュータに実行させるプログラム
JP4676977B2 (ja) 画像形成装置、アプリケーション情報取得方法、及びプログラム
JP3677474B2 (ja) 画像形成装置、プロセス間通信履歴表示方法およびその方法をコンピュータに実行させるプログラム
JP3920893B2 (ja) 情報処理装置、プロセス間通信履歴表示方法およびその方法をコンピュータに実行させるプログラム
JP4435772B2 (ja) キー操作監視方法、この方法をコンピュータに実行させるプログラムおよび画像形成装置
JP2006260596A (ja) 描画情報取得方法、この方法をコンピュータに実行させるプログラムおよび画像形成装置
JP5267624B2 (ja) 情報処理装置、表示制御方法、プログラム、及び記録媒体
JP4133085B2 (ja) 画像形成装置およびカスタマイズプログラム試験方法
JP2006271005A (ja) 画像形成装置およびアプリケーションインストール方法
JP4276885B2 (ja) 画像形成装置およびパス指定方法
JP4677054B2 (ja) 画像形成装置、プログラム、記録媒体、及び方法
JP3798710B2 (ja) 画像情報処理装置、プロセス情報取得方法およびその方法をコンピュータに実行させるプログラム
JP3887191B2 (ja) 画像情報処理装置および障害情報通知方法
JP2004066809A (ja) 画像形成装置およびプログラム起動方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060105

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060306

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060418

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060420

R150 Certificate of patent or registration of utility model

Ref document number: 3798682

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100428

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100428

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110428

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120428

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130428

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140428

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term