(57)【要約】【課題】重要なイベントの取りこぼしを防止し、負荷に応じた適切な制御を可能とし、システム全体としてＣＰＵ負荷を軽減する。組み込みアプリケーションに割り当てられるＣＰＵの処理をスムーズに実行可能とし、瞬時に応答が要求されるような処理を確実に実行できるようにする。【解決手段】機器の動作や処理によって発生した事象をイベントとして、機器の機能を利用するアプリケーションに通知するためのイベント配信時に、機器のＣＰＵ負荷の状態をチェックしてイベント配信レベルを決定する。アプリケーションからあらかじめ登録された優先度と、配信レベルとを比較して、ＣＰＵ負荷が高い場合には、イベント配信制御手段（Ｓ３１２、Ｓ３１３）が重要度の高いイベントのみを通知するよう制御する。【選択図】図３
2012037975.tif 000002
【特許請求の範囲】
【請求項１】
機器の動作や処理によって発生した事象をイベントとして、前記機器の機能を利用するアプリケーションに通知するためのイベント登録、配信を制御する機能を備えた電子機器のイベント通知制御方式であって、
前記アプリケーションが受信する前記各イベントの重要性の度合いに対応して設定された配信を行う優先度を、設定して保持するイベント配信優先度の設定手段と、
前記機器内で前記イベントが発生したことを検知したときに、前記機器が備えるＣＰＵの負荷を確認するＣＰＵ負荷確認手段と、
前記ＣＰＵの負荷の情報に基づいて、イベント配信基準を決定するイベント配信基準決定手段と、
前記イベント配信基準決定手段で決定された前記イベント配信基準よりも、前記機器内で発生した前記イベントに対して前記イベント配信優先度の設定手段で設定されている前記イベント配信優先度が高い場合に、前記アプリケーションに、発生したイベントを通知し、前記イベント配信基準よりも優先度が低い場合に前記アプリケーションに前記イベントを通知しないように制御する、イベント配信制御手段と、
を備えたことを特徴とする電子機器のイベント通知制御方式。
【請求項２】
前記イベント配信優先度は、
前記ＣＰＵ負荷によって、前記イベントを配信するか否かを設定するため、前記ＣＰＵの負荷が高い場合でも必ず通知して欲しい前記イベントほど高い優先度に設定されていることを特徴とする請求項１記載の電子機器のイベント通知制御方式。
【請求項３】
前記ＣＰＵの負荷状態は、
ＣＰＵ監視部によって検出されるものであり、前記ＣＰＵの稼働率又は前記機器内に保持するジョブ数によって決定されることを特徴とする請求項１又は２記載の電子機器のイベント通知制御方式。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションに対してイベント通知を行う電子機器のイベント通知制御方式に関する。
【背景技術】
【０００２】
一般に、プリンタ、ファクシミリ、スキャナ、複写機又は機能複合型複写機等の周辺機器といった電子機器は、内部で状態変化、構成変化又は障害発生があった場合に、機器の機能を使用するアプリケーションに対してイベントを通知する機能を持つ。このような周辺機器の制御部は、アプリケーションが通知されたイベント情報に基づいて表示の更新やアプリケーション内部の状態変化等の制御を行っている。
【０００３】
また、このような周辺機器では、イベント通知機能により多数のイベントがアプリケーションに通知された場合に、未処理のイベントが蓄積されてしまいオーバフローを起こしてしまうことがある。
【０００４】
このようにしてオーバフローが発生した場合には、アプリケーションの表示がおかしくなったり、アプリケーション内部の状態に矛盾が生じてしまったりするといった問題が発生する場合がある。
【０００５】
そこで、従来の周辺機器におけるイベント通知を行なう情報通知装置には、イベントの内容によって優先度を設定する。これにより、この情報通知装置では、イベント情報のオーバフローが発生した時の優先度の高いイベントの欠落を防ぐ。これと共に、この情報通知装置では、時間間隔における間引き処理を行うことで通知情報の時間的偏りを防ぐように制御することが提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−００４３２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
近年、複写機等の電子機器には、様々な機能が搭載されており、それに応じて電子機器を利用するアプリケーションの数も増加し続けている。また、電子機器では、一つの事象であっても複数のアプリケーションに同じイベント通知を行うケースがある。さらに、電子機器では、機器の機能の増加によって通知すべきイベントの種類も増加している。このため、電子機器では、アプリケーションに通知するイベントの数が増大しオーバフローする機会が増加している。
【０００８】
一般に、アプリケーションがオーバフローするようなケースでは、通知すべき事象が一度に大量に発生し、これを処理するために電子機器のＣＰＵ負荷が高い状態となっていることが予想される。
【０００９】
このようにオーバフローを起こしているアプリケーションに対しては、滞留しているイベントの種類や時間や優先度を考慮して間引き処理を行うという制御をしてオーバフローを解消することが考えられる。
【００１０】
しかし、オーバフローを起こしている場合には、ＣＰＵの負荷が高く、電子機器が通知するイベントの数が増大している状態にあるので、イベント配信時に膨大な間引き処理を行わねばならずＣＰＵ負荷がさらに高くなってしまう。
【００１１】
また、アプリケーションは、イベントを受信したら何らかの処理を行う必要がある。しかし、機器と同じＣＰＵで動作するような組み込みアプリケーションである場合には、イベントを処理するためのＣＰＵの処理動作を確保できず、結果的に重要なイベントを取りこぼしてしまう危険性が生じる。
【００１２】
さらに、オーバフローを起こしてＣＰＵ負荷が高くなった状態では、ログインなど瞬時に応答が要求されるような処理が投入された場合に、直ぐに応答できなくなるという問題も発生する。
【００１３】
本発明の目的は、重要なイベントの取りこぼしを防止でき、負荷に応じた適切な制御を可能とし、システム全体としてＣＰＵ負荷を軽減する。さらに、組み込みアプリケーションに割り当てられるＣＰＵの処理をスムーズに実行可能とし、瞬時に応答が要求されるような処理を確実に実行できるようにした電子機器のイベント通知制御方式を提供することにある。
【課題を解決するための手段】
【００１４】
上記目的を達成するために、請求項１記載の電子機器のイベント通知制御方式は、機器の動作や処理によって発生した事象をイベントとして、前記機器の機能を利用するアプリケーションに通知するためのイベント登録、配信を制御する機能を備えた電子機器の適応的イベント通知制御方式であって、前記アプリケーションが受信する前記各イベントの重要性の度合いに対応して設定された配信を行う優先度を、設定して保持するイベント配信優先度の設定手段と、前記機器内で前記イベントが発生したことを検知したときに、前記機器が備えるＣＰＵの負荷を確認するＣＰＵ負荷確認手段と、前記ＣＰＵの負荷の情報に基づいて、イベント配信基準を決定するイベント配信基準決定手段と、前記イベント配信基準決定手段で決定された前記イベント配信基準よりも、前記機器内で発生した前記イベントに対して前記イベント配信優先度の設定手段で設定されている前記イベント配信優先度が高い場合に、前記アプリケーションに、発生したイベントを通知し、前記イベント配信基準よりも優先度が低い場合に前記アプリケーションに前記イベントを通知しないように制御する、イベント配信制御手段と、を備えたことを特徴とする。
【発明の効果】
【００１５】
本発明によれば、重要なイベントの取りこぼしを防止でき、負荷に応じた適切な制御を可能とし、システム全体としてＣＰＵ負荷を軽減することができる。さらに、組み込みアプリケーションに割り当てられるＣＰＵの処理をスムーズに実行可能とし、瞬時に応答が要求されるような処理を確実に実行できるようにした電子機器のイベント通知制御方式を提供できる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態に係わる画像形成装置とＬＡＮを介して接続されたパーソナルコンピュータとで構成されたシステムの要部を示すブロック図である。
【図２】本発明の実施の形態に係わる画像形成装置及びパーソナルコンピュータで構成されたシステムで、イベント登録を行う際の手順を示すフローチャートである。
【図３】本発明の実施の形態に係わる画像形成装置及びパーソナルコンピュータで構成されたシステムで、イベント配信を行う際の手順を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の電子機器の適応的イベント通知制御方式の実施の形態に係わる画像形成装置及びパーソナルコンピュータで構成されたシステムについて図面を参照して説明する。
【００１８】
図１の要部ブロック図で、１００は画像形成装置、１２８はパーソナルコンピュータ（ＰＣ）、１１８は画像形成装置１００とＰＣ１２８とを接続するＬＡＮである。
【００１９】
なお、このシステムでは、ＬＡＮ１１８に、他の画像形成装置と、他のＰＣとを複数接続して構成しても良い。
【００２０】
この画像形成装置１００では、ＣＰＵ（中央処理装置）１０２を含む制御部１０１が画像形成装置１００全体の動作を制御するよう構成されている。ＣＰＵ１０２は、ＲＯＭ１０３に記憶された制御プログラムを読み出して読取制御や送信制御等の各種制御処理を実行する。また、ＲＡＭ１０４は、ＣＰＵ１０２の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ１０５は、画像データや各種プログラム、或いは後述する各種情報テーブルを記憶する。ＣＰＵ監視部１０６は、ＣＰＵ１０２の負荷状況（負荷状態）の監視を行う。すなわち、ＣＰＵ監視部１０６は、ＣＰＵ１０２の負荷状態を、ＣＰＵ１０２の稼働率又は画像形成装置１００の機器内に保持するジョブ数によって検出する。
【００２１】
この画像形成装置１００の操作部Ｉ／Ｆ１０７は、操作部１１２と制御部１０１とを接続する。操作部１１２には、タッチパネル機能を有する液晶表示部やキーボードなどが備えられている。プリンタＩ／Ｆ１０８は、プリンタ１１３と制御部１０１とを接続する。プリンタ１１３で印刷すべき画像データはプリンタＩ／Ｆ１０８を介して制御部１０１からプリンタ１１３に転送され、プリンタ１１３において記録媒体上に印刷される。
【００２２】
この画像形成装置１００のスキャナＩ／Ｆ１０９は、スキャナ１１４と制御部１０１とを接続する。スキャナ１１４は、原稿上の画像を読み取って画像データを生成し、スキャナＩ／Ｆ１０９を介して制御部１０１に入力する。ネットワークＩ／Ｆ１１１は、画像形成装置１００をＬＡＮ１１８に接続する。ネットワークＩ／Ｆ１１１は、ＬＡＮ１１８上の外部装置に画像データを送信したり、ＬＡＮ１１８上の外部装置から各種情報を受信したりする。
【００２３】
この画像形成装置１００のイベント管理部１１０は、画像形成装置１００内で発生する事象を、イベントとしてアプリケーションに通知するための管理を行う。組み込みアプリケーション１１５は、画像形成装置１００のスキャン、プリントなどの基本機能を利用して応用的な機能を提供する。例えば、スキャンとプリントを組み合わせたコピー機能を提供するアプリケーションや、画像形成装置１００内の状態を操作部１１２に表示する状態監視アプリケーションなどである。
【００２４】
この画像形成装置１００には、複数の組み込みアプリケーション１１５が搭載されている。アプリケーション１１５は、画像形成装置１００内のＣＰＵ１０２によって動作する。
【００２５】
この画像形成装置１００のイベント受信部１１６はメッセージキューを持ち、イベント管理部１１０から通知されたイベントをメッセージキューに格納する。イベント解析部１１７は、イベント受信部１１６が格納したメッセージキュー内のイベントを取り出してイベントの内容を解析し、解析結果に応じてあらかじめアプリケーションに定義されている処理を実行する。
【００２６】
次に、ＰＣ１２８について図１により説明する。
【００２７】
このＰＣ１２８では、ＣＰＵ１２７が、ＨＤＤ１２６に記憶された制御プログラムを読み出して各種処理を実行する。ＲＡＭ１２５は、ＣＰＵ１２７の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ１２６は、画像データやＰＣの動作に必要なデータを記憶する。
【００２８】
このＰＣ１２８では、表示部１２４のディスプレイ上に処理結果が表示される。このＰＣ１２８は、ネットワークＩ／Ｆ１１９のＬＡＮ１１８に接続されている。ネットワークＩ／Ｆ１１９は、ＬＡＮ１１８上の外部装置にデータを送信したり受信したりする。
【００２９】
このＰＣ１２８のアプリケーション１２０は、プリンタドライバなどの画像形成装置１００の機能を利用するアプリケーションであり、ＰＣ１２８のＨＤＤ１２６上に実行プログラムがインストールされている。
【００３０】
このＰＣ１２８のイベント受信部１２１は、メッセージキューを持っており、ネットワークＩ／Ｆ１１９を介して画像形成装置１００のイベント管理部１１０から通知されたイベントをメッセージキューに格納する。イベント解析部１２２は、イベント受信部１２１が格納したメッセージキュー内のイベントを取り出してイベントの内容を解析する。制御部１２３は、イベント解析部１２２の解析結果に応じてあらかじめアプリケーションに定義されている処理を実行する。
【００３１】
次に、イベントについて説明する。
【００３２】
画像形成装置１００では、動作中に様々な事象（イベント）が発生する。この事象には、例えば、プリンタが紙を排紙した、ジョブが投入された、本体のドアが開いた等がある。これらの事象は、類似したグループ毎に分類され、表１に示すようなイベントとして定義されている。
【００３３】
【表１】
2012037975.tif 000003
【００３４】
次に、上述した画像形成装置１００及びＰＣ１２８で構成されたシステムにおける主要な動作の手順について説明する。
【００３５】
まず、組み込みアプリケーション１１５又はアプリケーション１２０が、イベント管理部１１０に対してイベント登録処理を行う手順について、図２のフローチャートを参照して説明する。
【００３６】
組み込みアプリケーション１１５又はアプリケーション１２０は、イベントが発生すると、イベント登録処理を開始し、ステップＳ２０１で、イベント管理部１１０に対して、イベント登録に必要な情報を通知する。このイベント登録に必要な情報には、アプリケーションを識別するための識別子となるアプリケーションＩＤ、配信先を特定するためのメッセージキューＩＤやＩＰアドレスなどの配信先アドレスがある。これと共に、このイベント登録に必要な情報には、通知して欲しいイベントを識別するためのイベントＩＤ、イベント通知の優先度の情報がある。この優先度は、画像形成装置１００のＣＰＵ１０２の負荷状況に応じたイベント通知の必須度を意味する。
【００３７】
このイベント登録に必要な情報の通知を受けるイベント管理部１１０は、アプリケーション１１５、１２０が受信する各イベントの重要性の度合いに対応して設定された配信を行う優先度を設定して保持するイベント配信優先度の設定手段を備える。
【００３８】
一般に、画像形成装置１００のＣＰＵ１０２の負荷が高い場合には、画像形成装置１００内で多くの処理を行っており、通知すべきイベントが数多く発生する可能性がある。そこで、この画像形成装置１００では、ＣＰＵ１０２の負荷が高い場合でも組み込みアプリケーション１１５又はアプリケーション１２０に対し必ず通知して欲しいイベントに対して優先度を高に設定する。また、この画像形成装置１００では、ＣＰＵ１０２の負荷が高い場合に間引いても問題ないイベントに対して優先度を低に設定する。アプリケーションが優先度を特に設定しない場合は、画像形成装置１００にあらかじめ設定されているデフォルトの優先度が適用される。
【００３９】
次に、イベント管理部１１０は、組み込みアプリケーション１１５又はアプリケーション１２０から設定されたイベントＩＤ用の配信テーブルがＲＡＭ１０４上に既に存在するか否かを検索する（ステップＳ２０２）。イベント管理部１１０は表２に示すようなイベントＩＤ毎の配信テーブルをＲＡＭ１０４上で管理している。
【００４０】
【表２】
2012037975.tif 000004
【００４１】
次に、イベント管理部１１０は、該当する配信テーブルが既に存在しているか否かを判断し、既存の配信テーブルが無いと判別した場合（ステップＳ２０３でＮＯ）に、ステップＳ２０４に進む。そして、イベント管理部１１０は、ステップＳ２０４でＲＡＭ１０４に指定されたイベントＩＤ用の新たな配信テーブルを作成する。さらに、イベント管理部１１０は、組み込みアプリケーション１１５又はアプリケーション１２０から通知されたアプリケーションＩＤ、配信先アドレス、優先度を書き込む。
【００４２】
また、前述したステップＳ２０３でイベント管理部１１０が、該当する配信テーブルが存在すると判別した場合（ステップＳ２０３でＹＥＳ）は、ステップＳ２０５に進む。
【００４３】
ステップＳ２０５では、イベント管理部１１０が、前述したステップＳ２０２で検索した配信テーブル上に、指定されたアプリケーションＩＤが存在するか否かを判断する。そして、イベント管理部１１０は、指定されたアプリケーションＩＤが存在しないと判別した場合（ステップＳ２０５でＮＯ）に、ステップＳ２０６に進む。次に、ステップＳ２０６で、イベント管理部１１０は、配信テーブルの最後尾に指定されたアプリケーションＩＤ、配信先アドレス及び優先度を追記する。
【００４４】
また、ステップＳ２０５でイベント管理部１１０が、配信テーブル上に指定されたアプリケーションＩＤが記載されていると判別した場合（ステップＳ２０５でＹＥＳ）に、ステップＳ２０７に進む。
【００４５】
ステップＳ２０７では、イベント管理部１１０が、指定されたアプリケーションＩＤと同じｉｎｄｅｘの優先度欄を、指定された優先度で上書きする。以上の通りイベント配信登録が完了すると、イベント管理部１１０は、本イベント登録処理を終了する。
【００４６】
次に、イベントを配信するイベント配信処理の手順について、図３を参照して説明する。
【００４７】
このイベント配信処理は、画像形成装置１００の制御部１０１内でイベントを通知すべき事象（イベント）が発生したときにスタートする。そして、各装置（１０１〜１１４）は、イベント管理部１１０に事象が発生したことが示されたイベントＩＤを通知する（ステップＳ３０１）。
【００４８】
イベント管理部１１０は、ＣＰＵ監視部１０６に、ＣＰＵ１０２の負荷状況を問い合わせる（ステップＳ３０２）。このＣＰＵ１０２の負荷状況は、ＣＰＵ１０２の稼働率（１〜１００％）で評価しても、画像形成装置１００で処理中のジョブ数で評価してもよい。すなわち、このイベント管理部１１０は、画像形成装置１００の機器内でイベントが発生したことを検知したときに、機器が備えるＣＰＵ１０２の負荷を確認するＣＰＵ負荷確認手段を構成する。
【００４９】
次に、イベント管理部１１０は、ステップＳ３０２で取得したＣＰＵ１０２の負荷状況に基づいて、配信レベルを決定する（ステップＳ３０３）。ここでは、例えば、ＣＰＵ稼働率が７０％未満であれば配信レベル無、７０％以上８０％未満ならば配信レベル低、８０％以上９０％未満ならば配信レベル中、９０％以上ならば配信レベル高というように配信レベルを決定する。なお、負荷状況と配信レベルの対応付けや、配信レベルの段階は、状況に対応した任意の値に設定できる。すなわち、イベント管理部１１０は、ＣＰＵ１０２の負荷の情報に基づいて、イベント配信基準を決定するイベント配信基準決定手段を構成する。
【００５０】
次に、イベント管理部１１０は、ＲＡＭ１０４上の配信テーブルの中から、制御部１０１内から通知されたイベントＩＤに対応する配信テーブルを検索する（ステップＳ３０４）。
【００５１】
次に、イベント管理部１１０は、該当する配信テーブルの存在の有無を判定する（ステップＳ３０５）。そして、イベント管理部１１０は、該当する配信テーブルが存在しなかったと判別した場合（ステップＳ３０５でＮＯ）に、イベント通知を必要としているアプリケーションが存在しないと判断しイベント配信処理を終了する。
【００５２】
また、イベント管理部１１０は、該当する配信テーブルが存在すると判別した場合（ステップＳ３０５でＹＥＳ）に、ステップＳ３０６に進む。
【００５３】
次に、イベント管理部１１０は、該当する配信テーブルに登録されているアプリケーションの総数（ｉｎｄｅｘ数）を取得する（ステップＳ３０６）。次に、イベント管理部１１０は、配信テーブルの先頭から登録内容をチェックするために、ｉｎｄｅｘ＝１を設定する（ステップＳ３０７）。
【００５４】
次に、イベント管理部１１０は、ｉｎｄｅｘがステップＳ３０６で取得したアプリケーションの総数に達しているか否かを判断する（ステップＳ３０８）。
【００５５】
そして、イベント管理部１１０は、ｉｎｄｅｘがステップＳ３０６で取得したアプリケーションの総数に達していると判別した場合（ステップＳ３０８でＮＯ）に、このイベント配信処理を終了する。
【００５６】
また、イベント管理部１１０は、達していなかったと判定した場合（ステップＳ３０８でＮＯ）に、ステップＳ３０９に進む。
【００５７】
イベント管理部１１０は、前述したステップＳ３０３で決定した配信レベルが無であるか否かを判断する（ステップＳ３０９）。イベント管理部１１０は、配信レベルが無であると判定した場合（ステップＳ３０９でＹＥＳ）に、ステップＳ３１０に進む。イベント管理部１１０が配信レベル無と判別した場合には、ＣＰＵ負荷が高くない状態にある場合である。この場合に、イベント管理部１１０は、ｉｎｄｅｘ＝１に記載されているアプリケーションに対してイベントを通知する（ステップＳ３１０）。この後、イベント管理部１１０は、後述するステップＳ３１４へ進む。
【００５８】
また、イベント管理部１１０が配信レベル無以外であると判定した場合（ステップＳ３０９でＮＯ）に、ステップＳ３１１へ進む。そして、イベント管理部１１０は、配信テーブルに記載されている優先度が配信レベルと一致するか又は配信レベルより高いかを判断する（ステップＳ３１１）。
【００５９】
イベント管理部１１０は、優先度が配信レベルと一致又は配信レベルより高いと判断した場合（ステップＳ３１１でＹＥＳ）にイベントを通知する必要があるので、ステップＳ３１３に進む。そして、イベント管理部１１０は、ｉｎｄｅｘ＝１に記載されているアプリケーションに対してイベントを通知する（ステップＳ３１３）。
【００６０】
また、イベント管理部１１０は、優先度が配信レベルに満たないと判断した場合（ステップＳ３１１でＮＯ）に、ステップＳ３１２へ進む。そして、イベント管理部１１０は、優先度ｉｎｄｅｘ＝１に記載されているアプリケーションに対しイベントを通知せずに次のステップＳ３１４へ進み、次のｉｎｄｅｘを指定しステップＳ３０８に戻る。
【００６１】
このようにしてイベント管理部１１０は、配信テーブルに登録されたアプリケーションの総数に達するまで、ステップＳ３０８〜ステップＳ３１４の動作を繰り返す。
【００６２】
以上説明したイベント配信処理により、イベント管理部１１０は、ＣＰＵ負荷に応じてイベント通知を制御する。
【００６３】
要するに、イベント管理部１１０は、イベント配信制御手段として機能し、ステップＳ３０３で、ＣＰＵ１０２の負荷状況に基づいて決定された配信レベル（イベント配信基準）と、画像形成装置１００内で発生したイベントの優先度を比較する。そして、イベント管理部１１０は、発生したイベントの優先度が配信レベルよりも高いと判断した場合に、アプリケーション１１５、１２０に、発生したイベントを通知する。また、イベント管理部１１０は、生したイベントの優先度が配信レベルよりも低いと判断した場合に、アプリケーション１１５、１２０にイベントを通知しないように制御する。
【００６４】
次に、より具体的なアプリケーションを例にして説明する。
【００６５】
ａｐｐ＿１は、画像形成装置１００内に存在する全てのジョブとその情報をリストで表示するアプリケーションである。このａｐｐ＿１は、ジョブリストからジョブを選択して情報取得ボタンが押下されたときに、ユーザ名やジョブ名、ページ数などの更に詳細な情報を表示する機能を備える。
【００６６】
このａｐｐ＿１は、ジョブリストを表示するためにジョブの状態遷移イベントを取得してジョブの処理状況を更新し、ジョブ終了までの時間イベントを取得してジョブが終了するまでの時間を更新する。さらに、このａｐｐ＿１は、ジョブリストの変化イベントを取得してジョブリストの更新を行う。
【００６７】
ここで、画像形成装置１００内にジョブが多数存在するようなＣＰＵ１０２の負荷が高い状況では、次々にジョブの状態や待ち時間も更新されイベント管理部１１０からａｐｐ＿１に対して多数のイベントが送信されることが予想される。
【００６８】
このａｐｐ＿１が組み込みアプリケーションであった場合には、ＣＰＵ１０２の負荷が高い状況においてａｐｐ＿１に割り当てられるＣＰＵ１０２が限られることになる。
【００６９】
また、イベントは状況が更新されるごとに通知されるが、ａｐｐ＿１がイベントを受信した直後にＣＰＵ１０２がａｐｐ＿１に割り当てられるとは限らないので、画面の更新が滞ったり、一気に更新されてしまったりする場合がある。
【００７０】
この場合には、詳細情報取得ボタンを押下して詳細情報を表示させようとしても、操作キーが効きにくかったり、情報の表示が遅かったりするという問題がある。
【００７１】
さらに、ａｐｐ＿１が、ＰＣ上のアプリケーション１２０であった場合には、イベントの発生が短時間に集中すると、ユーザが情報を確認する間もなく更新されてしまう場合がある。この場合には、せっかくイベント管理部１１０がイベントを通知したにもかかわらず画面が見にくくなってしまうといった問題もある。
【００７２】
このような場合には、ａｐｐ＿１が表３に示すようなイベント登録をしておけば、上述した問題を解消することができる。
【００７３】
このａｐｐ＿１は、画像形成装置１００内にジョブが多数存在するような場合、ジョブリストの更新は必須であるけれど、待ち時間やジョブの状態などは更新されなくても十分に機能を満たすことができる。
【００７４】
また、このａｐｐ＿１は、高負荷時にイベントを間引くことで、不要なＣＰＵ１０２の利用を控えることができるため、詳細情報取得ボタンの反応も改善することができ、ユーザの使い勝手を向上することができる。
【００７５】
これとは逆に、このａｐｐ＿１では、画像形成装置１００内にジョブが少ししか存在しないような場合に待ち時間やジョブの状態等まで正しく表示することができ、ユーザの利便性を損なうことがない。
【００７６】
次に、コピー機能を提供するアプリケーションであるａｐｐ＿２について説明する。
【００７７】
このａｐｐ＿２は、コピー実行中に、ジョブの状態遷移イベントを取得してジョブの処理状況を表示し、ジョブ終了までの時間イベントを取得してジョブが終了するまでの時間を表示して進行状況をユーザに通知する。
【００７８】
コピーの場合には、スキャナ１１４でスキャンした原稿を順次処理するため、プリンタドライバからのプリントジョブのように、画像形成装置１００内に短時間に複数のジョブが集中することがない。そのためａｐｐ＿１で問題となっていたような画面のちらつきなどは発生しないので、ジョブの状態変化イベントは、優先度高で設定しておくことで、ユーザに確実に状況を通知することができる。
【００７９】
【表３】
2012037975.tif 000005
【００８０】
以上説明したように、アプリケーション毎の機能に対応してイベントの優先度の設定を行うように構成した場合には、アプリケーションの操作性を向上させることができる。また、この場合には、画像形成装置１００のＣＰＵ１０２の負荷が高い状態での処理を減らすことができるので、システム全体の処理効率を向上させることが可能となる。
【００８１】
その他の構成例
前述した表２に示す配信テーブルの例（１）では、イベント単位で優先度を設定する例を示したが、下記の表４に示すように、イベント内容の各要素に対して優先度を設定するように構成しても良い。
【００８２】
【表４】
2012037975.tif 000006
【００８３】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記録媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００８４】
１００  画像形成装置
１０１  制御部
１０２  ＣＰＵ
１０６  ＣＰＵ監視部
１１０  イベント管理部
１１５  組み込みアプリケーション
１２０  アプリケーション
【図１】
2012037975.tif 000007
【図２】
2012037975.tif 000008
【図３】
2012037975.tif 000009