JP2004038777A - Image forming apparatus and application id allocating method - Google Patents

Image forming apparatus and application id allocating method Download PDF

Info

Publication number
JP2004038777A
JP2004038777A JP2002197613A JP2002197613A JP2004038777A JP 2004038777 A JP2004038777 A JP 2004038777A JP 2002197613 A JP2002197613 A JP 2002197613A JP 2002197613 A JP2002197613 A JP 2002197613A JP 2004038777 A JP2004038777 A JP 2004038777A
Authority
JP
Japan
Prior art keywords
application
storage area
allocating
image forming
storage
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.)
Granted
Application number
JP2002197613A
Other languages
Japanese (ja)
Other versions
JP4011423B2 (en
Inventor
Katsumi Watai
渡井 克己
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 JP2002197613A priority Critical patent/JP4011423B2/en
Publication of JP2004038777A publication Critical patent/JP2004038777A/en
Application granted granted Critical
Publication of JP4011423B2 publication Critical patent/JP4011423B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To automatically allocate an application ID, and to continuously use the application ID and information per each application even after turning a power source ON/OFF. <P>SOLUTION: In a composite machine 100, when registration notice is received from a new application 117, an SCS 122 refers to a correspondence table in a flash memory 104 which is a nonvolatile memory and retrieves an application name, determines whether or not an application by that name has ever been activated, and if there is an activation history in the past, a previously used application ID is assigned, and a storage region of the flash memory 104 of a previously used size is allocated. If it is an application that has never been activated, a retrieval table of the flash memory 104 is referred to retrieve and assign an unused application ID. The application ID and the application name are saved in the correspondence table of the flash memory 104. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
この発明は、コピー、プリンタ、スキャナおよびファクシミリなどの画像形成処理にかかるユーザサービスを提供する画像形成装置に搭載される各アプリケーション(以下、アプリともいう)を識別するためのID番号を割り付けてアプリケーション間の調停を行う画像形成装置およびアプリケーションID割付方法に関するものである。
【0002】
【従来の技術】
近年では、プリンタ、コピー、ファクシミリ、スキャナなどの各装置の機能を1つの筐体内に収納した画像形成装置(以下、「複合機」という。)が知られている。この複合機は、1つの筐体内に表示部、印刷部および撮像部などを設けるとともに、プリンタ、コピーおよびファクシミリ装置にそれぞれ対応する3種類のソフトウェアを設け、これらのソフトウェアを切り替えることによって、当該装置をプリンタ、コピー、スキャナまたはファクシミリ装置として動作させるものである。
【0003】
このような従来の複合機では、プリンタ、コピー、ファクシミリ、スキャナなどの各機能単位でアプリケーションプログラムが起動され、ハードウェア資源にアクセスする機能を持ち合わせており、複合機にアプリを搭載する場合、アプリ登録処理を行う必要があった。アプリ登録処理とは、これから搭載するアプリから複合機へアプリ登録要求メッセージが送信されると、RAMなどに生成されたアプリ登録テーブルに当該アプリの識別情報(ID番号)であるアプリIDを記録することにより行われる。このアプリIDは、各アプリに固有のものであり、複数のアプリが搭載される複合機において、アプリ間を調停するためアプリIDを使って各アプリを識別する必要がある。
【0004】
このため、従来の複合機では、搭載されるアプリを予め想定し、このアプリにはこのアプリIDというようにアプリIDを固定的に割り付けていた。また、他の従来の複合機では、アプリIDを固定せずに、アプリを起動する度にアプリIDの割り付けをし直す動的な割り付けを行うものもあった。
【0005】
この種の発明に関連する従来技術としては、例えば、特開平10−198626号公報に記載の「構成情報管理装置および方法」などがある。
【0006】
【発明が解決しようとする課題】
ところで、このような従来の複合機では、プリンタ、コピー、スキャナおよびファクシミリ装置に対応するソフトウェアをそれぞれ別個に設けていたため、各ソフトウェアの開発に多大の時間を要する。このため、出願人は、表示部、印刷部および撮像部などの画像形成処理で使用されるハードウェア資源を有し、プリンタ、コピーまたはファクシミリなどの各ユーザサービスにそれぞれ固有の処理を行うアプリケーションを複数搭載し、これらのアプリケーションとハードウェア資源との間に介在して、ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行う各種コントロールサービスからなるプラットホームを備えた画像形成装置(複合機)を発明した。
【0007】
このような新規な複合機では、アプリケーションとコントロールサービスとを別個に設けているため、複合機の出荷後にユーザもしくは第三者であるサードベンダが新規なアプリケーションを開発して複合機に搭載することが可能となり、これによって多種多様な機能を提供することが可能となる。しかし、アプリケーションのアプリIDを固定的に割り付けていた従来の複合機にあっては、どのような新規アプリが搭載されるかを予め想定することができないため、アプリIDの自動割り付けができないという問題があった。
【0008】
また、従来の複合機では、アプリIDを固定せずに、アプリIDを動的に割り付けるものがあった。この場合、新規アプリであってもアプリIDを自動割り付けすることが可能となるが、割り付けられるアプリIDがその都度変わる可能性がある上、アプリIDと共にアプリケーション毎に保持しておきたい情報(メモリの領域情報や管理情報等)をRAMなどの一時的な記憶領域に記憶させると、電源を落とし(OFF)、再度電源が入れられた場合(ON)、メモリ内容が全て消去されてしまうため、アプリケーション毎に保持しておきたい情報を電源OFF/ON後に継続的に利用することができないという問題があった。
【0009】
さらに、上記した特開平10−198626号の公報例にあっては、コンポーネントの構成情報や共有する機器資源の分配情報をコンポーネントとは独立して一元管理するものであるため、従来の複合機と比べて構成が複雑化し、その分コストがかかるという問題があった。
【0010】
この発明は上記に鑑みてなされたもので、複数のアプリケーション間を調停するためのアプリIDの割り付けを新規アプリが追加された場合でも自動割り付けが可能であると共に、割り付けられたアプリIDやアプリケーション毎に保持しておきたい情報などを電源OFF/ON後にも継続的に利用することができ、これらを簡易な構成で低コストに実現することが可能な画像形成装置およびアプリケーションID割付方法を得ることを目的とする。
【0011】
【課題を解決するための手段】
上記目的を達成するため、請求項1にかかる発明は、画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うアプリケーションのプロセスと、前記アプリケーションと前記ハードウェア資源との間に介在し、前記ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とする前記ハードウェア資源の獲得要求、管理、実行制御並びに画像形成処理を行うコントロールサービスのプロセスとを備えた画像形成装置であって、前記アプリケーションの初回起動時に、各アプリケーションのID番号を動的に割り付ける割付制御手段と、前記割付制御手段によって割り付けられたアプリケーションのID番号をアプリケーション名称に対応して記憶する記憶手段と、を備え、前記割付制御手段は、前記アプリケーションの2回目以降の起動時に、前記記憶手段に記憶されているアプリケーション名称に対応したID番号を割り付けることを特徴とする。
【0012】
この請求項1にかかる発明によれば、割付制御手段によりアプリケーションの初回起動時に各アプリケーションのID番号を動的に割り付けるようにしたため、サードベンダなどが供給する新規アプリを追加した場合でもアプリIDの自動割り付けが可能となる。そして、割り付けられたアプリケーションのID番号をアプリケーション名称に対応して記憶手段に記憶し、アプリケーションの2回目以降の起動時には、割付制御手段が記憶手段に記憶されているアプリケーション名称に対応したID番号を割り付けるため、電源OFF/ON後にも同じアプリIDを継続的に利用することができる。
【0013】
また、請求項2にかかる発明は、請求項1に記載の画像形成装置において、前記記憶手段は、不揮発メモリで構成されていることを特徴とする。
【0014】
この請求項2にかかる発明によれば、記憶手段を不揮発メモリで構成したため、不揮発メモリに記憶されたアプリIDなどのデータは、装置電源がOFF/ONされてもバックアップ電源等を用いずにデータが保持できるので、一旦割り付けられたアプリIDなどのデータを装置電源のOFF/ONに関わらず継続的に利用することができ、装置構成も簡単で低コスト化することができる。
【0015】
また、請求項3にかかる発明は、請求項1または2に記載の画像形成装置において、前記割付制御手段は、さらに前記アプリケーションが起動時に使用する前記記憶手段の記憶領域をアプリケーションに応じたサイズに割り付けることを特徴とする。
【0016】
この請求項3にかかる発明によれば、割付制御手段は、さらにアプリケーション起動時に使用する記憶手段の記憶領域をアプリケーションに応じたサイズに割り付けるようにしたため、各アプリケーションに応じた必要なサイズの記憶領域を予め確保することが可能となり、アプリケーション起動中にメモリ不足が発生するのを防止することができる。
【0017】
また、請求項4にかかる発明は、請求項3に記載の画像形成装置において、前記割付制御手段は、前記記憶手段の記憶領域を割り付ける際に、さらに記憶領域の割り付け有効期限を指示可能とすると共に、指示した有効期限の到来時に割り付けた記憶領域を抹消することを特徴とする。
【0018】
この請求項4にかかる発明によれば、割付制御手段は、記憶手段の記憶領域を割り付ける際に、さらに記憶領域の割り付け有効期限を指示すると共に、その有効期限の到来時に割り付けた記憶領域を抹消するようにしたため、一旦記憶領域が割り付けされてもこれに固定されず、割り付け時に有効期限を指示するだけで割り付け期間を限定することができ、有効期限が切れると割り付けられた記憶領域を解放して割り付け前の状態に戻るので、ほとんど起動しないアプリケーションに記憶領域が割り付けられても一定期間後に解消され、限られた記憶領域を有効利用することができる。
【0019】
また、請求項5にかかる発明は、請求項1〜4のいずれか一つに記載の画像形成装置において、前記割付制御手段は、さらにアプリケーション毎に割り付けられた前記記憶手段の記憶領域を効率的な配置に割り付けし直すことを特徴とする。
【0020】
この請求項5にかかる発明によれば、割付制御手段は、さらにアプリケーション毎に割り付けられた記憶手段の記憶領域を効率的な配置に割り付けし直すようにしたため、記憶領域の割り付けや解放が繰り返し行われた場合に、記憶領域に無駄な隙間が発生するのを防止し、実質的な記憶容量の減少を防いで、記憶領域をより効率的に使用することができる。
【0021】
また、請求項6にかかる発明は、請求項4または5に記載の画像形成装置において、前記割付制御手段は、前記記憶手段の記憶領域の割り付け処理と抹消処理の少なくとも一方をアプリケーションの起動時に行うことを特徴とする。
【0022】
この請求項6にかかる発明によれば、割付制御手段は、記憶手段の記憶領域の割り付け処理と抹消処理の少なくとも一方をアプリケーションの起動時に行うようにしたため、アプリケーションの起動時に使用する記憶領域を確保したり、無駄な記憶領域を抹消することで他のアプリケーションの記憶領域を確保し易くすることができる。
【0023】
また、請求項7にかかる発明は、画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うアプリケーションのプロセスと、前記アプリケーションと前記ハードウェア資源との間に介在し、前記ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とする前記ハードウェア資源の獲得要求、管理、実行制御並びに画像形成処理を行うコントロールサービスのプロセスとを備えた画像形成装置上で、前記アプリケーションを識別するためのID番号を割り付けるアプリケーションID割付方法であって、前記アプリケーションの初回起動時に、各アプリケーションのID番号を動的に割り付ける割付ステップと、割り付けられたアプリケーションのID番号をアプリケーション名称に対応させて記憶部に記憶する記憶ステップと、前記アプリケーションの2回目以降の起動時に、前記記憶部に記憶されているアプリケーション名称に対応したID番号を割り付ける再起動時割付ステップと、を含むことを特徴とする。
【0024】
この請求項7にかかる発明によれば、割付ステップによりアプリケーションの初回起動時に各アプリケーションのID番号を動的に割り付けるようにしたため、サードベンダなどが供給する新規アプリを追加した場合でもアプリIDの自動割り付けが可能となる。そして、記憶ステップにより割り付けられたアプリケーションのID番号をアプリケーション名称に対応させて記憶部に記憶させ、再起動時割付ステップによりアプリケーションの2回目以降の起動時に、記憶部に記憶されているアプリケーション名称に対応したID番号を割り付けるようにしたため、電源OFF/ON後であっても同じアプリIDを継続的に利用することができる。
【0025】
また、請求項8にかかる発明は、請求項7に記載のアプリケーションID割付方法において、前記記憶ステップは、割り付けられたアプリケーションのID番号をアプリケーション名称に対応させて不揮発メモリに記憶させることを特徴とする。
【0026】
この請求項8にかかる発明によれば、記憶ステップでは、割り付けられたアプリケーションのID番号をアプリケーション名称に対応させて不揮発メモリに記憶するようにしたため、装置電源をOFF/ONしても不揮発メモリに記憶されたアプリIDなどのデータは、バックアップ電源等を用いることなくデータを保持することができるので、一旦割り付けられたアプリIDなどのデータを装置電源のOFF/ONに関わらず継続的に利用することができ、装置構成が簡単になって、低コスト化することができる。
【0027】
また、請求項9にかかる発明は、請求項7または8に記載のアプリケーションID割付方法において、前記割付ステップは、さらに前記アプリケーション起動時に使用する前記記憶部の記憶領域をアプリケーションに応じたサイズに割り付ける記憶領域割付ステップを含むことを特徴とする。
【0028】
この請求項9にかかる発明によれば、割付ステップは、さらにアプリケーション起動時に使用する記憶部の記憶領域をアプリケーションに応じたサイズに割り付ける記憶領域割付ステップを含んでいるため、各アプリケーションに応じた必要なサイズの記憶領域を予め確保することが可能となり、アプリケーション起動中にメモリ不足が発生するのを防止することができる。
【0029】
また、請求項10にかかる発明は、請求項9に記載のアプリケーションID割付方法において、前記割付ステップは、前記記憶部の記憶領域を割り付ける際に、さらに割り付け有効期限を指示可能とし、指示した有効期限の到来時に割り付けた記憶領域を抹消する有効期限指示ステップを含むことを特徴とする。
【0030】
この請求項10にかかる発明によれば、割付ステップは、記憶部の記憶領域を割り付ける際に、さらに割り付け有効期限を指示可能として、その指示した有効期限の到来時に割り付けた記憶領域を抹消する有効期限指示ステップを含んでいるため、一旦記憶領域が割り付けされてもこれに固定されず、割り付け時に有効期限を指示するだけで割り付け期間を限定することができ、有効期限が切れると割り付けられた記憶領域を解放して割り付け前の状態に戻るので、ほとんど起動しないアプリケーションに記憶領域が割り付けられても一定期間が経過すると解消され、限られた記憶領域を有効利用することができる。
【0031】
また、請求項11にかかる発明は、請求項7〜10のいずれか一つに記載のアプリケーションID割付方法において、前記割付ステップは、さらにアプリケーション毎に割り付けられた前記記憶部の記憶領域を効率的な配置に割り付けし直す再配置ステップを含むことを特徴とする。
【0032】
この請求項11にかかる発明によれば、割付ステップは、さらにアプリケーション毎に割り付けられた記憶部の記憶領域を効率的な配置に割り付けし直す再配置ステップを含んでいるため、記憶領域の割り付けや解放が繰り返し行われた場合に、記憶領域に無駄な隙間が発生するのを防止し、実質的な記憶容量の減少を防いで、記憶領域をより効率的に使用することができる。
【0033】
また、請求項12にかかる発明は、請求項10または11に記載のアプリケーションID割付方法において、前記割付ステップは、前記記憶部の記憶領域の割り付け処理と抹消処理の少なくとも一方をアプリケーションの起動時に行うことを特徴とする。
【0034】
この請求項12にかかる発明によれば、割付ステップは、記憶部の記憶領域の割り付け処理と抹消処理の少なくとも一方をアプリケーションの起動時に行うようにしたため、アプリケーションの起動時に使用する記憶領域を確保したり、無駄な記憶領域を抹消することで他のアプリケーションの記憶領域を確保し易くすることができる。
【0035】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかる画像形成装置およびアプリケーションID割付方法の好適な実施の形態を詳細に説明する。
【0036】
(実施の形態1)
図1は、この発明の実施の形態1である画像形成装置(以下、「複合機」という)の構成を示すブロック図である。図1に示すように、複合機100は、白黒ラインプリンタ(B&W LP)101と、カラーラインプリンタ(Color LP)102と、スキャナ、ファクシミリ、ハードディスク、メモリ、ネットワークインタフェースなどのハードウェアリソース103と、割り付けられたアプリIDを記憶したりアプリケーションの起動時などにワークエリアとして使用される記憶部あるいは記憶手段としての不揮発メモリから成るフラッシュメモリ104とを有するとともに、プラットホーム120とアプリケーション130から構成されるソフトウェア群110とを備えている。
【0037】
プラットホーム120は、アプリケーションからの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ(SRM)123と、汎用OS121とを有する。
【0038】
コントロールサービスは、複数のサービスモジュールから形成され、割付制御手段としてのSCS(システムコントロールサービス)122と、ECS(エンジンコントロールサービス)124と、MCS(メモリコントロールサービス)125と、OCS(オペレーションパネルコントロールサービス)126と、FCS(ファックスコントロールサービス)127と、NCS(ネットワークコントロールサービス)128とから構成される。なお、このプラットホーム120は、予め定義された関数により前記アプリケーション130から処理要求を受信可能とするアプリケーションプログラムインタフェース(API)を有している。
【0039】
汎用OS121は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。
【0040】
SRM123のプロセスは、SCS122とともにシステムの制御およびリソースの管理を行うものである。SRM123のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、HDDファイル、ホストI/O(セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど)のハードウェア資源を利用する上位層からの要求にしたがって調停を行い、実行制御する。
【0041】
具体的には、このSRM123は、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、SRM123は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施している。
【0042】
SCS122のプロセスは、アプリ管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御などを行う。このSCS122は、本発明の特徴的な構成要素であり、アプリケーションの起動時などにアプリIDを動的に割り付けたり、その割り付けたアプリIDをアプリケーション名称に対応させてフラッシュメモリ104に記憶させたり、アプリケーションの2回目以降の起動時には、フラッシュメモリ104に記憶されたアプリケーション名称に対応するアプリIDを割り付けたりする。また、SCS122は、アプリケーションが起動時に使用するフラッシュメモリ104の記憶領域をアプリケーションの仕様に応じて必要十分なサイズで割り付けたり、フラッシュメモリ104の記憶領域を割り付ける際に、有効期限を指示し、その指示した有効期限が切れると割り付けた領域を抹消したりする。さらに、SCS122は、アプリケーション毎に割り付けられたフラッシュメモリ104の記憶領域を効率的な配置となるように、割り付けし直すこともする。このように、本発明のSCS122は、割付制御手段として複合機100に搭載されるアプリケーションの起動時などにフラッシュメモリ104を利用してアプリIDや記憶領域の割り付け処理を行う点に特徴がある。
【0043】
ECS124のプロセスは、白黒ラインプリンタ(B&W LP)101、カラーラインプリンタ(Color LP)102、スキャナ、ファクシミリなどからなるハードウェアリソース103のエンジンの制御を行う。
【0044】
MCS125のプロセスは、画像メモリの取得および解放、ハードディスク装置(HDD)の利用、画像データの圧縮および伸張などを行う。
【0045】
FCS127のプロセスは、システムコントローラの各アプリ層からPSTN/ISDN網を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読取、ファクシミリ受信印刷、融合送受信を行うためのAPIを提供する。
【0046】
NCS128のプロセスは、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行う。具体的には、ftpd、httpd、lpd、snmpd、telnetd、smtpdなどのサーバデーモンや、同プロトコルのクライアント機能などを有している。
【0047】
OCS126のプロセスは、オペレータ(ユーザ)と本体制御間の情報伝達手段となるオペレーションパネル(操作パネル)の制御を行う。OCS126は、オペレーションパネルからキー押下をキーイベントとして取得し、取得したキーに対応したキーイベント関数をSCS122に送信するOCSプロセスの部分と、アプリケーション130またはコントロールサービスからの要求によりオペレーションパネルに各種画面を描画出力する描画関数やその他オペレーションパネルに対する制御を行う関数などが予め登録されたOCSライブラリの部分とから構成される。このOCSライブラリは、アプリケーション130およびコントロールサービスの各モジュールにリンクされて実装されている。なお、OCS126のすべてをプロセスとして動作させるように構成しても良く、あるいはOCS126のすべてをOCSライブラリとして構成しても良い。
【0048】
アプリケーション130は、ページ記述言語(PDL)、PCLおよびポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、工程検査用アプリケーションである工程検査アプリ116と、サードベンダが新規なアプリケーションを開発して搭載する新規アプリ117とを有している。これらの各アプリは、その起動時にSCS122に対して自プロセスのプロセスIDとともにアプリ登録要求メッセージを送信し、このアプリ登録要求メッセージを受信したSCS122がフラッシュメモリ104などに生成されたアプリ登録テーブルに当該アプリの識別情報であるアプリIDを記録することにより、起動したアプリに対する登録が行われるようになっている。
【0049】
アプリケーション130の各プロセス、コントロールサービスの各プロセスは、関数呼び出しとその戻り値送信およびメッセージの送受信によってプロセス間通信を行いながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを実現している。
【0050】
このように、実施の形態1にかかる複合機100には、複数のアプリケーション130および複数のコントロールサービスが存在し、いずれもプロセスとして動作している。そして、コントロールサービスがアプリケーション130に対し共通サービスを提供しており、このため、これらの多数のプロセスが並列動作、およびスレッドの並列動作を行って互いにプロセス間通信を行って協調動作をしながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを提供するようになっている。また、複合機100には、サードベンダなどの第三者がコントロールサービス層の上のアプリケーション層に新規アプリ117を開発して搭載することが可能となっている。図1では、この新規アプリ117を搭載した例を示している。
【0051】
なお、実施の形態1にかかる複合機100の各アプリケーション130は、アプリケーションごとに追加または削除することが可能である。
【0052】
図2は、実施の形態1のアプリ起動時において割り付け済みのアプリIDか否かを検索するための検索テーブルの一例を示した図である。図2に示す検索テーブルは、図1のフラッシュメモリ104内に形成され、右欄には割り付け可能なアプリID(1〜100)がそれぞれ記載されていて、これに対応した左欄には当該アプリIDが割り付け済みか否かを示す割り付け済みフラグが入力できるようになっている。SCS122は、アプリIDの割り付けを行うと、図2の検索テーブルのアプリIDのフラグを「0」→「1」とし、割り付けを解消した場合はアプリIDのフラグを「1」→「0」とする。従って、この検索テーブルを照合することによって、割り付け済みのアプリIDか否かを明確に判断することができるので、アプリIDを動的に割り付けることが可能となる。
【0053】
また、ここでは図示していないが、フラッシュメモリ104は、割り付けられたアプリIDに対応するアプリケーション名称を格納する対応テーブルも持っている。この対応テーブルとは、アプリケーションの2回目以降の起動時に参照することにより、初回起動時と同じアプリIDを割り付けできるようにするものである。さらに、この対応テーブルのアプリケーション名称と対応させて、アプリケーションが起動時に必要とする記憶領域サイズを格納しておけば、アプリケーションの仕様に応じた適切な記憶領域サイズを割り付けることも可能となる。
【0054】
図3は、図1のSCS122が各アプリの初回起動時にアプリIDを割り付ける状態を説明する図であり、図4は、2回目以降の起動時にSCS122がフラッシュメモリの対応テーブルを参照してアプリIDを割り付ける状態を説明する図である。図3では、ファックスアプリ113、コピーアプリ112、プリンタアプリ111、および、新規アプリ117の順で初回起動を行っているため、図2の検索テーブルのアプリIDの1、2、3、4の順でアプリIDが割り付けられている。そして、このように割り付けられたアプリIDは、不図示の対応テーブルにアプリケーション名称と対応して登録される。また、図4では、コピーアプリ112と新規アプリ117が2回目以降に起動された場合を示しており、SCS122がフラッシュメモリ104の対応テーブルを参照することにより、初回起動時に割り付けたのと同じアプリIDをコピーアプリ112(ID=2)と新規アプリ117(ID=4)にそれぞれ割り付けることができる。さらに、上記した対応テーブルに、各アプリケーションの仕様に応じた記憶領域のサイズデータを登録しておけば、2回目以降の起動時にもアプリケーションに応じた記憶領域サイズの割り付けを行うことができる。
【0055】
次に、このように構成された複合機100におけるアプリIDなどの割付方法について説明する。図5は、実施の形態1の動作を説明するフローチャートである。
【0056】
図5において、複合機100は、アプリケーションからの登録通知を受け取ると(ステップS2)。SCS122は、不揮発メモリであるフラッシュメモリ104内の対応テーブルを参照してアプリケーション名称を検索し(ステップS4)、今までにその名称のアプリケーションが起動されたことがあるかどうかを判定して(ステップS6)、過去の起動履歴が残っていれば(YES)へ進み、前回使用したアプリIDを採番すると共に、前回使用したサイズのフラッシュメモリ104の記憶領域を割り付けるようにする(ステップS8)。
【0057】
また、ステップS6において、今まで一度も起動されたことのないアプリケーションの場合は(NO)へ進み、図2の検索テーブルを参照して、割り付けられていない(フラグの立っていない)空きアプリIDを上から順に検索する(ステップS12)。そして、最初に見つかった空きアプリIDを採番し(ステップS14)、次回の起動のためにアプリケーション名称と採番したアプリIDとの組み合わせをフラッシュメモリ104の対応テーブルに保存する(ステップS16)。さらに、記憶領域サイズの指示があった場合は、その指示されたフラッシュメモリ104の領域サイズを割り付け(ステップS18)、その領域サイズをフラッシュメモリ104の対応テーブルに登録しておく。
【0058】
そして、上記ステップS8およびステップS18のそれぞれの処理が終了した場合は、採番したアプリIDと割り付けたフラッシュメモリ104の記憶領域とをアプリケーションに通知する(ステップS10)。
【0059】
このように、実施の形態1にかかる複合機100では、搭載される複数のアプリケーションに対して不揮発メモリであるフラッシュメモリ104の検索テーブルを参照することにより、アプリIDを動的に割り付けることができる。そして、その割り付け結果をフラッシュメモリ104の対応テーブルにアプリケーション名称と対応させて登録するため、2回目以降にアプリケーションが起動される間に装置電源のOFF/ONがあっても不揮発メモリであることから記憶が保持され、初回起動時と同じアプリIDを割り付けることができる。また、アプリIDだけでなく、アプリケーションが起動時に必要とするフラッシュメモリ104の記憶領域サイズを指示しておけば、このサイズデータも保持することができるので、固定的な割り付けの場合と同様の機能を提供することができる。すなわち、新規アプリが追加された場合であっても、アプリケーション間を調停するモジュールを変更する必要がなくなる。その上、実施の形態1では、アプリIDを動的に割り付けていることから、新規アプリを搭載する場合でも空きアプリIDがあれば自動割り付けすることができる利点がある。
【0060】
なお、実施の形態1では、未使用のアプリIDを検索する際に、検索テーブルを生成し、これを参照することによって行っているが、必ずしもこれに限定されず、装置電源のOFF/ONに影響を受けずに記憶内容が保持可能で、検索が容易に行えるものであればいかなるものでも良い。
【0061】
(実施の形態2)
実施の形態2における特徴は、不揮発メモリであるフラッシュメモリ104の領域サイズを割り付ける際に、その領域の割り付け有効期限が指示できるようにした点にある。
【0062】
図6は、実施の形態2の動作を説明するフローチャートであり、図6のAとBの間は、図5のフローチャートと同様の処理が行われるため、重複説明を省略する。図1に示すSCS122は、アプリケーションが起動時に使用するフラッシュメモリ104の記憶領域サイズを割り付ける際に、その有効期限を同時に指示することができる。これにより、指示された有効期限データは、上述したフラッシュメモリ104の対応テーブルにアプリケーション名称と対応させて登録することができる。SCS122は、フラッシュメモリ104の対応テーブルに有効期限が登録されている場合、その有効期限が切れているか否かを常時監視し、フラッシュメモリ104の中で有効期限切れの記憶領域があると、その部分の記憶領域を解放することによって(ステップS22)、他のアプリケーションが利用可能な記憶領域を増やすことができる。このようにして解放された領域を使えば、新たなアプリケーションのアプリIDや記憶領域の割り付けを行うことができる(図5のフローチャートを参照)。
【0063】
このように、実施の形態2にかかる複合機100では、上記の実施の形態1の効果に加えて、フラッシュメモリ104上で有効期限付きの記憶領域を指定することにより、有効期限が切れた時点でその部分の記憶領域が解放されるので、例えば、短期間しか使わないアプリケーションの場合、有効期限が切れるとそのアプリケーションに割り付けられた記憶領域を再利用することが可能となり、システムに搭載される限られたサイズのフラッシュメモリ104の記憶領域をより有効に活用することができる。
【0064】
なお、実施の形態2では、アプリケーションが起動される度に有効期限切れのフラッシュメモリ104の記憶領域の解放処理を行っているが、必ずしもアプリケーション起動毎に記憶領域の解放処理チェックを行う必要はなく、例えば、システム起動時に一度だけ行ってもよく、また、アプリケーションに記憶領域を割り付けようとして、記憶領域が不足した場合に初めて実行しても勿論良い。
【0065】
(実施の形態3)
実施の形態3の特徴は、上記実施の形態2で設定される有効期限付きのフラッシュメモリ104の記憶領域が有効期限切れとなった場合にその領域を解放し、解放した記憶領域がある場合は、記憶領域を効率的に再配置し直すようにする点にある。
【0066】
図7は、実施の形態3の動作を説明するフローチャートであり、図7のAとBの間は、図5と同じ処理が行われるため、重複説明を省略する。図1に示すSCS122は、アプリケーションが起動時に使用するフラッシュメモリ104の記憶領域サイズを割り付ける際に、有効期限を指示することが可能であり、指示した有効期限が切れた記憶領域がある場合は、その記憶領域を解放する(ステップS32)。ステップS34では、実際に解放された記憶領域があるか否かを判断し、解放された記憶領域がある場合は、フラッシュメモリ104の記憶領域全体の領域配置が効率的になるように割り付けし直す(ステップS36)。
【0067】
すなわち、上記した実施の形態2のように、割り付けられたアプリケーションの記憶領域に有効期限を指示すると、有効期限が切れた後に領域が解放されるので、解放された領域に新たなアプリケーションの記憶領域を割り付けることが可能となる。ところが、このような領域の解放と割り付けを長期間繰り返していると、割り付けられた領域間に隙間が発生するようになり、トータルで使用できる記憶領域サイズが減少するという新たな課題が生じることがわかってきた。このため、実施の形態3では、既に割り付けられている記憶領域サイズとその中のデータを変えることなく、記憶領域の配置のみを割り付けし直すことによって、領域間に生じていた無駄な隙間を無くすようにするものである。その際、フラッシュメモリ104の各記憶領域内のデータは、個別にコピーして他のメモリ(RAMやHDD)へ一旦待避させておき、フラッシュメモリ104の記憶領域を割り付けし直した後、待避させておいたデータを対応する記憶領域へコピー(あるいは、移動)させる。
【0068】
また、ステップS34において、解放した記憶領域が無い場合は、ステップS36をスキップする。これ以降の登録処理は、上記実施の形態1の図5のフローチャートと同じである。
【0069】
このように、実施の形態3にかかる複合機100では、上記の実施の形態2の効果に加えて、フラッシュメモリ104上で有効期限切れの記憶領域を解放して、その記憶領域が再利用できるようになった場合に、記憶領域間で隙間ができないように割り付けし直すことにより、フラッシュメモリ104の記憶領域の効率的な使用が可能となる。
【0070】
なお、実施の形態3では、記憶領域の再配置を行う場合として、有効期限切れによって解放された記憶領域が生じた時としたが、必ずしもこれに限定されず、定期的に再配置を行ったり、十分な記憶領域が確保できなくなった場合に記憶領域を再配置しても良く、またその際、再配置処理を自動的に行うようにしても良い。
【0071】
また、上記実施の形態1〜3では、不揮発メモリの一例としてフラッシュメモリ104を用いて実施したが、これに限るものではなく、装置電源のOFF/ONに影響されることなく記憶内容が保持できるものであれば何でも良い。
【0072】
【発明の効果】
以上説明したように、請求項1にかかる発明によれば、割付制御手段によりアプリケーションの初回起動時に各アプリケーションのID番号を動的に割り付けるようにしたので、サードベンダなどが供給する新規アプリを追加した場合でもアプリIDの自動割り付けが可能となる。そして、割り付けられたアプリケーションのID番号をアプリケーション名称に対応して記憶手段に記憶し、アプリケーションの2回目以降の起動時には、割付制御手段が記憶手段に記憶されているアプリケーション名称に対応したID番号を割り付けるので、電源OFF/ON後にも同じアプリIDを継続的に利用することができる。
【0073】
また、請求項2にかかる発明によれば、記憶手段を不揮発メモリで構成したので、不揮発メモリに記憶されたアプリIDなどのデータは、装置電源がOFF/ONされてもバックアップ電源等を用いずにデータを保持することができ、一旦割り付けられたアプリIDなどのデータを装置電源のOFF/ONに関わらず継続的に利用することが可能となり、装置構成も簡単で低コスト化することができる。
【0074】
また、請求項3にかかる発明によれば、割付制御手段は、さらにアプリケーション起動時に使用する記憶手段の記憶領域をアプリケーションに応じたサイズに割り付けるようにしたので、各アプリケーションに応じた必要なサイズの記憶領域を予め確保することが可能となり、アプリケーション起動中にメモリ不足が発生するのを防止することができる。
【0075】
また、請求項4にかかる発明によれば、割付制御手段は、記憶手段の記憶領域を割り付ける際に、さらに記憶領域の割り付け有効期限を指示すると共に、その有効期限の到来時に割り付けた記憶領域を抹消するようにしたので、一旦記憶領域が割り付けされてもこれに固定されず、割り付け時に有効期限を指示するだけで割り付け期間を限定することができ、有効期限が切れると割り付けられた記憶領域を解放して割り付け前の状態に戻るので、ほとんど起動しないアプリケーションに記憶領域が割り付けられても一定期間後に解消され、限られた記憶領域を有効利用することができる。
【0076】
また、請求項5にかかる発明によれば、割付制御手段は、さらにアプリケーション毎に割り付けられた記憶手段の記憶領域を効率的な配置に割り付けし直すようにしたので、記憶領域の割り付けや解放が繰り返し行われた場合に、記憶領域に無駄な隙間が発生するのを防止し、実質的な記憶容量の減少を防いで、記憶領域をより効率的に使用することができる。
【0077】
また、請求項6にかかる発明によれば、割付制御手段は、記憶手段の記憶領域の割り付け処理と抹消処理の少なくとも一方をアプリケーションの起動時に行うようにしたので、アプリケーションの起動時に使用する記憶領域を確保したり、無駄な記憶領域を抹消することで他のアプリケーションの記憶領域を確保し易くすることができる。
【0078】
また、請求項7にかかる発明によれば、割付ステップによりアプリケーションの初回起動時に各アプリケーションのID番号を動的に割り付けるようにしたので、サードベンダなどが供給する新規アプリを追加した場合でもアプリIDの自動割り付けが可能となる。そして、記憶ステップにより割り付けられたアプリケーションのID番号をアプリケーション名称に対応させて記憶部に記憶させ、再起動時割付ステップによりアプリケーションの2回目以降の起動時に、記憶部に記憶されているアプリケーション名称に対応したID番号を割り付けるようにしたので、電源OFF/ON後であっても同じアプリIDを継続的に利用することができる。
【0079】
また、請求項8にかかる発明によれば、記憶ステップでは、割り付けられたアプリケーションのID番号をアプリケーション名称に対応させて不揮発メモリに記憶するようにしたので、装置電源をOFF/ONしても不揮発メモリに記憶されたアプリIDなどのデータは、バックアップ電源等を用いることなくデータを保持できるようになり、一旦割り付けられたアプリIDなどのデータを装置電源のOFF/ONに関わらず継続的に利用することが可能となり、装置構成が簡単になって、低コスト化することができる。
【0080】
また、請求項9にかかる発明によれば、割付ステップは、さらにアプリケーション起動時に使用する記憶部の記憶領域をアプリケーションに応じたサイズに割り付ける記憶領域割付ステップを含んでいるので、各アプリケーションに応じた必要なサイズの記憶領域を予め確保することが可能となり、アプリケーション起動中にメモリ不足が発生するのを防止することができる。
【0081】
また、請求項10にかかる発明によれば、割付ステップは、記憶部の記憶領域を割り付ける際に、さらに割り付け有効期限を指示可能として、その指示した有効期限の到来時に割り付けた記憶領域を抹消する有効期限指示ステップを含んでいるので、一旦記憶領域が割り付けされてもこれに固定されず、割り付け時に有効期限を指示するだけで割り付け期間を限定することができ、有効期限が切れると割り付けられた記憶領域を解放して割り付け前の状態に戻るので、ほとんど起動しないアプリケーションに記憶領域が割り付けられても一定期間が経過すると解消され、限られた記憶領域を有効利用することができる。
【0082】
また、請求項11にかかる発明によれば、割付ステップは、さらにアプリケーション毎に割り付けられた記憶部の記憶領域を効率的な配置に割り付けし直す再配置ステップを含んでいるので、記憶領域の割り付けや解放が繰り返し行われた場合に、記憶領域に無駄な隙間が発生するのを防止し、実質的な記憶容量の減少を防いで、記憶領域をより効率的に使用することができる。
【0083】
また、請求項12にかかる発明によれば、割付ステップは、記憶部の記憶領域の割り付け処理と抹消処理の少なくとも一方をアプリケーションの起動時に行うようにしたので、アプリケーションの起動時に使用する記憶領域を確保したり、無駄な記憶領域を抹消することで他のアプリケーションの記憶領域を確保し易くすることができる。
【図面の簡単な説明】
【図1】この発明の実施の形態1である画像形成装置の構成を示すブロック図である。
【図2】実施の形態1のアプリ起動時において割り付け済みのアプリIDか否かを検索するための検索テーブルの一例を示した図である。
【図3】図1のSCSが各アプリの初回起動時にアプリIDを割り付ける状態を説明する図である。
【図4】2回目以降の起動時にSCSがフラッシュメモリの対応テーブルを参照してアプリIDを割り付ける状態を説明する図である。
【図5】実施の形態1の動作を説明するフローチャートである。
【図6】実施の形態2の動作を説明するフローチャートである。
【図7】実施の形態3の動作を説明するフローチャートである。
【符号の説明】
100 複合機
101 白黒ラインプリンタ
102 カラーラインプリンタ
103 ハードウェアリソース
104 フラッシュメモリ
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 アプリケーション
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention assigns an ID number for identifying each application (hereinafter, also referred to as an application) mounted on an image forming apparatus that provides a user service related to image forming processing such as a copy, a printer, a scanner, and a facsimile. The present invention relates to an image forming apparatus that performs arbitration between applications and an application ID allocation method.
[0002]
[Prior art]
2. Description of the Related Art In recent years, an image forming apparatus (hereinafter, referred to as a “multifunction peripheral”) in which functions of respective apparatuses such as a printer, a copier, a facsimile, and a scanner are housed in one housing has been known. This multifunction peripheral includes a display unit, a printing unit, an imaging unit, and the like in a single housing, and three types of software corresponding to a printer, a copying machine, and a facsimile machine, respectively. Is operated as a printer, copier, scanner or facsimile machine.
[0003]
In such a conventional multifunction peripheral, an application program is started for each functional unit such as a printer, a copier, a facsimile, and a scanner, and has a function of accessing hardware resources. Registration processing had to be performed. The application registration process is to record an application ID, which is identification information (ID number) of the application, in an application registration table generated in a RAM or the like when an application registration request message is transmitted from the application to be installed to the MFP. It is done by doing. This application ID is unique to each application, and in a multi-function device equipped with a plurality of applications, it is necessary to identify each application using the application ID in order to arbitrate between the applications.
[0004]
For this reason, in the conventional multifunction peripheral, an application to be mounted is assumed in advance, and an application ID such as the application ID is fixedly assigned to this application. Further, in other conventional multifunction peripherals, there has been a case in which the application ID is not assigned but is dynamically assigned each time the application is started.
[0005]
As a prior art related to this kind of invention, there is, for example, "Configuration Information Management Apparatus and Method" described in JP-A-10-198626.
[0006]
[Problems to be solved by the invention]
By the way, in such a conventional multifunction peripheral, software corresponding to a printer, a copier, a scanner, and a facsimile machine is separately provided, so that it takes a lot of time to develop each software. For this reason, the applicant has an application that has hardware resources used in image forming processing such as a display unit, a printing unit, and an imaging unit and performs processing specific to each user service such as a printer, a copy or a facsimile. When providing a user service by interposing between a plurality of applications and hardware resources, management, execution control, and image forming processing of hardware resources required by at least two of the applications in common Invented an image forming apparatus (multifunction peripheral) equipped with a platform composed of various control services for performing the following.
[0007]
In such a new MFP, the application and the control service are provided separately. Therefore, after the MFP is shipped, the user or a third-party third party must develop a new application and install it in the MFP. It is possible to provide a wide variety of functions. However, in a conventional multifunction peripheral in which the application ID of an application is fixedly assigned, it is not possible to assume in advance what kind of new application is to be installed, so that the automatic assignment of the application ID cannot be performed. was there.
[0008]
Also, in some conventional multifunction peripherals, an application ID is dynamically assigned without fixing the application ID. In this case, it is possible to automatically assign an application ID even for a new application. However, the assigned application ID may change each time, and information (memory, When the power is turned off (OFF) and the power is turned on again (ON), all of the memory contents are erased. There is a problem that information that is desired to be retained for each application cannot be continuously used after the power is turned off / on.
[0009]
Further, in the above-mentioned Japanese Patent Application Laid-Open No. 10-198626, since the configuration information of components and the distribution information of shared device resources are unifiedly managed independently of the components, the conventional multifunction peripherals are There is a problem that the configuration is complicated and the cost is increased accordingly.
[0010]
The present invention has been made in view of the above, and it is possible to automatically assign an application ID for arbitrating between a plurality of applications even when a new application is added. An image forming apparatus and an application ID assigning method capable of continuously using information desired to be stored in a computer even after the power is turned off and on, and realizing the information with a simple configuration at a low cost. With the goal.
[0011]
[Means for Solving the Problems]
In order to achieve the above object, the invention according to claim 1 includes a hardware resource used in the image forming process, an application process for performing a process specific to a user service related to the image forming process, and the application and the application. A control service that is interposed between hardware resources and performs a request for acquisition, management, execution control, and image forming processing of the hardware resources required by at least two applications in common when providing the user service. An image forming apparatus comprising: an allocation control unit for dynamically allocating an ID number of each application when the application is first started; and an application name assigned to the application by the allocation control unit. Memory hand to memorize in response to When, wherein the assignment control means, when the second and subsequent activation of the application, and wherein the assigning the ID number corresponding to the application name stored in the storage means.
[0012]
According to the first aspect of the present invention, the assignment control means dynamically assigns the ID number of each application when the application is first started. Therefore, even when a new application supplied by a third vendor or the like is added, the application ID of the application is not changed. Automatic assignment becomes possible. Then, the ID number of the assigned application is stored in the storage unit corresponding to the application name, and at the time of starting the application for the second time or later, the allocation control unit sets the ID number corresponding to the application name stored in the storage unit. Because of the assignment, the same application ID can be continuously used even after the power is turned off / on.
[0013]
According to a second aspect of the present invention, in the image forming apparatus according to the first aspect, the storage unit includes a nonvolatile memory.
[0014]
According to the second aspect of the present invention, since the storage means is constituted by a non-volatile memory, data such as an application ID stored in the non-volatile memory can be stored without using a backup power supply even when the apparatus power is turned off / on. Can be continuously used regardless of whether the power of the apparatus is OFF or ON, and the apparatus configuration can be simplified and the cost can be reduced.
[0015]
According to a third aspect of the present invention, in the image forming apparatus according to the first or second aspect, the allocation control unit further sets a storage area of the storage unit used by the application at the time of startup to a size corresponding to the application. It is characterized by allocation.
[0016]
According to the third aspect of the present invention, the allocation control means further allocates the storage area of the storage means used when the application is started to a size corresponding to the application, so that the storage area of a required size corresponding to each application is provided. Can be secured in advance, and it is possible to prevent a memory shortage from occurring during application startup.
[0017]
According to a fourth aspect of the present invention, in the image forming apparatus according to the third aspect, the allocation control means can further designate an expiration date of the storage area when allocating the storage area of the storage means. In addition, the storage area allocated at the expiration of the designated expiration date is deleted.
[0018]
According to the fourth aspect of the invention, when allocating the storage area of the storage means, the allocation control means further instructs the expiration date of the storage area, and deletes the allocated storage area when the expiration date comes. Once the storage area is allocated, it is not fixed to this once, and the allocation period can be limited only by indicating the expiration date at the time of allocation, and the allocated storage area is released when the expiration date expires. Since the storage state is returned to the state before the allocation, even if the storage area is allocated to the application that is hardly started, it is resolved after a certain period, and the limited storage area can be used effectively.
[0019]
Further, according to a fifth aspect of the present invention, in the image forming apparatus according to any one of the first to fourth aspects, the allocation control unit further efficiently saves a storage area of the storage unit allocated for each application. It is characterized by being re-assigned to a different arrangement.
[0020]
According to the fifth aspect of the present invention, the allocation control means reallocates the storage areas of the storage means allocated for each application to an efficient arrangement, so that the allocation and release of the storage areas are repeatedly performed. In such a case, it is possible to prevent a useless space from being generated in the storage area, prevent a substantial decrease in storage capacity, and use the storage area more efficiently.
[0021]
According to a sixth aspect of the present invention, in the image forming apparatus according to the fourth or fifth aspect, the allocation control unit performs at least one of a process of allocating a storage area of the storage unit and a process of erasing at the time of starting an application. It is characterized by the following.
[0022]
According to the invention according to claim 6, the allocation control means performs at least one of the processing of allocating the storage area of the storage means and the processing of erasing at the time of starting the application, so that the storage area to be used at the time of starting the application is secured. Or deleting unnecessary storage areas makes it easier to secure storage areas for other applications.
[0023]
According to a seventh aspect of the present invention, there is provided an image forming apparatus comprising: a hardware resource used in an image forming process; an application process for performing a process specific to a user service related to the image forming process; And a control service process for performing acquisition control, management, execution control, and image forming processing of the hardware resources required by at least two of the applications in common when providing the user service. A method of allocating an ID number for identifying the application on the image forming apparatus, comprising: an allocating step of dynamically allocating an ID number of each application when the application is started up for the first time; Application ID number A storage step of storing the application name in the storage unit in association with the application name, and a restart-time allocation step of allocating an ID number corresponding to the application name stored in the storage unit when the application is started for the second time or later, It is characterized by including.
[0024]
According to the invention of claim 7, since the ID number of each application is dynamically allocated at the time of the first activation of the application by the allocation step, even if a new application supplied by a third vendor or the like is added, the application ID is automatically allocated. Assignment becomes possible. Then, the ID number of the application allocated in the storage step is stored in the storage unit in association with the application name, and in the restart-time allocation step, the application name stored in the storage unit is stored when the application is started for the second time or later. Since the corresponding ID number is assigned, the same application ID can be continuously used even after the power is turned off / on.
[0025]
The invention according to claim 8 is the application ID assigning method according to claim 7, wherein the storing step stores the assigned application ID number in a nonvolatile memory in association with an application name. I do.
[0026]
According to this invention, in the storing step, the assigned application ID number is stored in the non-volatile memory in association with the application name. Since the stored data such as the application ID can be held without using a backup power supply or the like, the once-assigned data such as the application ID is continuously used regardless of whether the power of the apparatus is OFF or ON. Therefore, the apparatus configuration can be simplified and the cost can be reduced.
[0027]
According to a ninth aspect of the present invention, in the application ID allocating method according to the seventh or eighth aspect, the allocating step further allocates a storage area of the storage unit used at the time of starting the application to a size corresponding to an application. It is characterized by including a storage area allocating step.
[0028]
According to the ninth aspect of the present invention, since the allocating step further includes a storage area allocating step of allocating a storage area of the storage unit used at the time of starting the application to a size corresponding to the application, the allocation step is performed according to each application. It is possible to secure a storage area of an appropriate size in advance, and it is possible to prevent a memory shortage from occurring during application startup.
[0029]
According to a tenth aspect of the present invention, in the application ID allocating method according to the ninth aspect, in the allocating step, when allocating a storage area of the storage unit, the allocation validity period can be further specified, and the specified validity period can be specified. It is characterized by including an expiration date instructing step of erasing the storage area allocated at the expiration of the expiration date.
[0030]
According to the tenth aspect of the present invention, in the allocating step, at the time of allocating the storage area of the storage unit, the allocation expiration date can be further designated, and the validity of deleting the allocated storage area when the designated expiration date comes is reached. Once the storage area is allocated, it is not fixed to this, because it includes the expiration instruction step. The allocation period can be limited only by indicating the expiration date at the time of allocation, and the storage allocated when the expiration date expires Since the area is released and returns to the state before the allocation, even if the storage area is allocated to the application that is hardly started, it is resolved after a certain period of time, and the limited storage area can be used effectively.
[0031]
According to an eleventh aspect of the present invention, in the application ID allocating method according to any one of the seventh to tenth aspects, the allocating step further efficiently allocates a storage area of the storage unit allocated to each application. And a rearrangement step of rearranging the arrangement to a proper arrangement.
[0032]
According to the eleventh aspect of the present invention, the allocating step further includes a relocation step of reallocating the storage area of the storage unit allocated for each application to an efficient allocation. When release is repeatedly performed, it is possible to prevent a useless gap from being generated in the storage area, prevent a substantial decrease in storage capacity, and use the storage area more efficiently.
[0033]
According to a twelfth aspect of the present invention, in the application ID allocating method according to the tenth or eleventh aspect, the allocating step performs at least one of a process of allocating a storage area of the storage unit and a process of erasing at the time of starting an application. It is characterized by the following.
[0034]
According to the twelfth aspect of the present invention, in the allocating step, at least one of the processing of allocating the storage area of the storage unit and the processing of erasing is performed at the time of starting the application. In addition, by deleting useless storage areas, it is possible to easily secure storage areas for other applications.
[0035]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, preferred embodiments of an image forming apparatus and an application ID allocating method according to the present invention will be described in detail with reference to the accompanying drawings.
[0036]
(Embodiment 1)
FIG. 1 is a block diagram illustrating a configuration of an image forming apparatus (hereinafter, referred to as a “multifunction peripheral”) according to a first embodiment of the present invention. As shown in FIG. 1, the multifunction peripheral 100 includes a monochrome line printer (B & W LP) 101, a color line printer (Color LP) 102, and hardware resources 103 such as a scanner, a facsimile, a hard disk, a memory, and a network interface. Software having a flash memory 104 composed of a non-volatile memory as a storage unit or a storage means used as a work area for storing an allocated application ID or when starting up an application, and comprising a platform 120 and an application 130 And a group 110.
[0037]
The platform 120 interprets a processing request from an application to generate a hardware resource acquisition request, and a system resource manager that manages one or more hardware resources and arbitrates the acquisition request from the control service. (SRM) 123 and a general-purpose OS 121.
[0038]
The control service is formed from a plurality of service modules, and includes SCS (system control service) 122, ECS (engine control service) 124, MCS (memory control service) 125, and OCS (operation panel control service) as allocation control means. ) 126, FCS (fax control service) 127, and NCS (network control service) 128. The platform 120 has an application program interface (API) that can receive a processing request from the application 130 by a predefined function.
[0039]
The general-purpose OS 121 is a general-purpose operating system such as UNIX (registered trademark), and executes each software of the platform 120 and the application 130 in parallel as a process.
[0040]
The process of the SRM 123, together with the SCS 122, controls the system and manages resources. The process of the SRM 123 uses hardware resources such as an engine such as a scanner unit and a printer unit, a memory, an HDD file, and a host I / O (centro I / F, network I / F, IEEE1394 I / F, RS232C I / F, etc.). Arbitration is performed according to a request from the upper layer to be used, and execution is controlled.
[0041]
Specifically, the SRM 123 determines whether the requested hardware resource is available (whether it is not used by another request), and if it is available, the requested hardware resource is used. Inform the upper layer that it is possible. The SRM 123 also schedules use of hardware resources in response to a request from an upper layer, and directly implements the contents of the request (for example, paper transport and image forming operation, memory reservation, file generation, and the like by a printer engine). .
[0042]
The process of the SCS 122 performs application management, operation unit control, system screen display, LED display, resource management, interrupt application control, and the like. The SCS 122 is a characteristic component of the present invention, such as dynamically assigning an application ID at the time of starting an application, storing the assigned application ID in the flash memory 104 in association with the application name, When the application is started for the second time or later, an application ID corresponding to the application name stored in the flash memory 104 is assigned. In addition, the SCS 122 instructs an expiration date when allocating a storage area of the flash memory 104 used by the application at the time of startup with a necessary and sufficient size according to the specification of the application, or when allocating the storage area of the flash memory 104, When the specified expiration date expires, the allocated area is deleted. Further, the SCS 122 may reallocate the storage areas of the flash memory 104 allocated for each application so that the storage areas are arranged efficiently. As described above, the SCS 122 of the present invention is characterized in that the application ID and the storage area are allocated using the flash memory 104 when the application mounted on the multifunction peripheral 100 is started as the allocation control means.
[0043]
The process of the ECS 124 controls an engine of a hardware resource 103 including a monochrome line printer (B & W LP) 101, a color line printer (Color LP) 102, a scanner, a facsimile, and the like.
[0044]
The process of the MCS 125 performs acquisition and release of an image memory, use of a hard disk device (HDD), compression and decompression of image data, and the like.
[0045]
The process of the FCS 127 includes facsimile transmission / reception using PSTN / ISDN network from each application layer of the system controller, registration / quotation of various facsimile data managed by BKM (backup SRAM), facsimile reading, facsimile reception printing, fusion transmission / reception. Provides an API to do so.
[0046]
The process of the NCS 128 is a process for providing a service that can be used in common to applications requiring network I / O, and distributes data received from the network according to each protocol to each application, or distributes data from the application to the data. Mediation when sending to the network side. Specifically, it has server daemons such as ftpd, httpd, lpd, snmpd, telnetd, smtpd, and client functions of the same protocol.
[0047]
The process of the OCS 126 controls an operation panel (operation panel) serving as information transmission means between an operator (user) and main body control. The OCS 126 obtains a key press from the operation panel as a key event, and transmits a key event function corresponding to the obtained key to the SCS 122, and displays various screens on the operation panel in response to a request from the application 130 or the control service. A drawing function for drawing and outputting, a function for controlling the operation panel, and the like are configured from a part of the OCS library registered in advance. This OCS library is implemented by being linked to each module of the application 130 and the control service. Note that all of the OCS 126 may be configured to operate as a process, or all of the OCS 126 may be configured as an OCS library.
[0048]
The application 130 includes a printer application 111 that is a printer application having a page description language (PDL), PCL, and PostScript (PS), a copy application 112 that is a copy application, and a fax application 113 that is a facsimile application. A scanner application 114 as a scanner application, a net file application 115 as a network file application, a process inspection application 116 as a process inspection application, and a new application 117 in which a third vendor develops and installs a new application. And Each of these applications transmits an application registration request message together with the process ID of its own process to the SCS 122 at the time of activation, and the SCS 122 that has received the application registration request message stores the application registration request message in the application registration table generated in the flash memory 104 or the like. By recording the application ID, which is the identification information of the application, registration for the activated application is performed.
[0049]
Each process of the application 130 and each process of the control service realize user services related to image forming processing such as copy, printer, scanner, and facsimile while performing inter-process communication by transmitting a function call, transmitting a return value thereof, and transmitting and receiving a message. are doing.
[0050]
As described above, in the multifunction peripheral 100 according to the first embodiment, there are a plurality of applications 130 and a plurality of control services, all of which operate as processes. The control service provides a common service to the application 130. For this reason, many of these processes perform parallel operation and thread parallel operation, perform inter-process communication with each other, and perform cooperative operation. User services related to image forming processes such as copying, printing, scanning, and facsimile are provided. In addition, the MFP 100 allows a third party such as a third vendor to develop and install a new application 117 in an application layer above the control service layer. FIG. 1 shows an example in which the new application 117 is mounted.
[0051]
Each application 130 of the multifunction peripheral 100 according to the first embodiment can be added or deleted for each application.
[0052]
FIG. 2 is a diagram illustrating an example of a search table for searching whether or not an application ID has been assigned at the time of starting the application according to the first embodiment. The search table shown in FIG. 2 is formed in the flash memory 104 of FIG. 1, and assignable application IDs (1 to 100) are listed in the right column, and the corresponding application IDs are listed in the left column. An assigned flag indicating whether the ID has been assigned can be input. The SCS 122 changes the application ID flag from “0” to “1” in the search table of FIG. 2 when the application ID is allocated, and changes the application ID flag from “1” to “0” when the allocation is canceled. I do. Therefore, by collating the search table, it is possible to clearly determine whether or not the application ID is already assigned, and it is possible to dynamically assign the application ID.
[0053]
Although not shown here, the flash memory 104 also has a correspondence table for storing an application name corresponding to the assigned application ID. This correspondence table is used to refer to when the application is started for the second time or later, so that the same application ID as when the application is first started can be assigned. Furthermore, if the storage area size required by the application at the time of startup is stored in association with the application name in the correspondence table, it is possible to allocate an appropriate storage area size according to the specification of the application.
[0054]
FIG. 3 is a diagram illustrating a state in which the SCS 122 of FIG. 1 assigns an application ID at the time of the first activation of each application. FIG. It is a figure explaining the state which assigns. In FIG. 3, since the fax application 113, the copy application 112, the printer application 111, and the new application 117 are activated for the first time, the application IDs 1, 2, 3, and 4 in the search table in FIG. Is assigned an application ID. The application ID assigned in this manner is registered in a correspondence table (not shown) in correspondence with the application name. FIG. 4 shows a case in which the copy application 112 and the new application 117 are started for the second time or later, and the SCS 122 refers to the correspondence table of the flash memory 104, and thus, the same application as the one allocated at the first start is executed. An ID can be assigned to each of the copy application 112 (ID = 2) and the new application 117 (ID = 4). Furthermore, if the size data of the storage area according to the specifications of each application is registered in the above-described correspondence table, the storage area size can be allocated according to the application even at the second or subsequent startup.
[0055]
Next, a method of assigning an application ID and the like in the MFP 100 configured as described above will be described. FIG. 5 is a flowchart illustrating the operation of the first embodiment.
[0056]
In FIG. 5, when the MFP 100 receives a registration notification from the application (step S2). The SCS 122 searches for an application name by referring to the correspondence table in the flash memory 104, which is a non-volatile memory (step S4), and determines whether an application having that name has ever been started (step S4). S6) If there is a past boot history (YES), the process proceeds to YES to assign a previously used application ID and allocate a storage area of the flash memory 104 of the previously used size (step S8).
[0057]
In step S6, if the application has never been started, the process proceeds to (NO), and referring to the search table in FIG. 2, an unassigned (not flagged) free application ID is referred to. Are searched in order from the top (step S12). Then, a free application ID found first is numbered (step S14), and a combination of the application name and the numbered application ID is stored in the correspondence table of the flash memory 104 for the next startup (step S16). Further, when the storage area size is instructed, the designated area size of the flash memory 104 is allocated (step S18), and the area size is registered in the correspondence table of the flash memory 104.
[0058]
Then, when the processing in each of steps S8 and S18 ends, the application is notified of the numbered application ID and the allocated storage area of the flash memory 104 (step S10).
[0059]
As described above, in the multifunction peripheral 100 according to the first embodiment, an application ID can be dynamically allocated to a plurality of applications to be mounted by referring to the search table in the flash memory 104 which is a nonvolatile memory. . Then, the allocation result is registered in the correspondence table of the flash memory 104 in association with the application name. Therefore, even if the device power is turned off / on while the application is started for the second time or later, it is a non-volatile memory. The storage is retained, and the same application ID as that at the time of the first activation can be assigned. In addition, if the size of the storage area of the flash memory 104 required by the application at the time of startup is indicated in addition to the application ID, the size data can be held. Can be provided. That is, even when a new application is added, there is no need to change the module that mediates between applications. In addition, in the first embodiment, since the application ID is dynamically allocated, there is an advantage that even if a new application is installed, the application ID can be automatically allocated if there is a free application ID.
[0060]
In the first embodiment, when an unused application ID is searched, a search table is generated and referred to. However, the search table is not necessarily limited to the search table. Any device can be used as long as the stored contents can be retained without being affected and the search can be easily performed.
[0061]
(Embodiment 2)
The feature of the second embodiment is that when allocating the area size of the flash memory 104 which is a nonvolatile memory, the expiration date of the area can be designated.
[0062]
FIG. 6 is a flowchart for explaining the operation of the second embodiment. Since the same processing as that of the flowchart of FIG. 5 is performed between A and B in FIG. 6, a duplicate description will be omitted. The SCS 122 shown in FIG. 1 can simultaneously indicate the expiration date when allocating the storage area size of the flash memory 104 used by the application at the time of startup. Thus, the specified expiration date data can be registered in the correspondence table of the flash memory 104 in association with the application name. When an expiration date is registered in the correspondence table of the flash memory 104, the SCS 122 constantly monitors whether the expiration date has expired. By releasing the storage area (step S22), the storage area that can be used by other applications can be increased. By using the area thus released, an application ID of a new application and a storage area can be allocated (see the flowchart of FIG. 5).
[0063]
As described above, in the multifunction peripheral 100 according to the second embodiment, in addition to the effects of the first embodiment, by specifying a storage area with an expiration date on the flash memory 104, the time when the expiration date expires Because the storage area of that part is released, for example, in the case of an application that is used only for a short period of time, it becomes possible to reuse the storage area allocated to the application when the expiration date expires, and it is installed in the system The storage area of the limited size flash memory 104 can be used more effectively.
[0064]
In the second embodiment, the release processing of the storage area of the expired flash memory 104 is performed every time the application is activated. However, it is not always necessary to perform the storage area release processing check every time the application is activated. For example, it may be performed only once when the system is started, or may be performed only when the storage area is insufficient in order to allocate the storage area to the application.
[0065]
(Embodiment 3)
The feature of the third embodiment is that the storage area of the flash memory 104 with the expiration date set in the second embodiment is released when the expiration date has expired, and when there is a released storage area, This is to efficiently rearrange the storage area.
[0066]
FIG. 7 is a flowchart for explaining the operation of the third embodiment. The same processing as in FIG. 5 is performed between A and B in FIG. The SCS 122 shown in FIG. 1 can indicate the expiration date when allocating the storage area size of the flash memory 104 used when the application starts up. The storage area is released (step S32). In step S34, it is determined whether or not there is an actually released storage area. If there is a released storage area, the storage area of the flash memory 104 is re-allocated so that the area arrangement of the entire storage area becomes efficient. (Step S36).
[0067]
That is, as in the above-described second embodiment, when the expiration date is specified in the storage area of the allocated application, the area is released after the expiration date, so that the storage area of the new application is stored in the released area. Can be assigned. However, if such release and allocation of the area are repeated for a long time, a gap occurs between the allocated areas, and a new problem that the total available storage area size decreases may occur. I understand. For this reason, in the third embodiment, useless gaps generated between the areas are eliminated by reallocating only the arrangement of the storage areas without changing the already allocated storage area size and the data therein. Is to do so. At this time, the data in each storage area of the flash memory 104 is individually copied and temporarily saved in another memory (RAM or HDD), and is then saved after the storage area of the flash memory 104 is reallocated. The stored data is copied (or moved) to the corresponding storage area.
[0068]
If there is no released storage area in step S34, step S36 is skipped. Subsequent registration processing is the same as the flowchart in FIG. 5 of the first embodiment.
[0069]
As described above, in the multifunction peripheral 100 according to the third embodiment, in addition to the effect of the second embodiment, the expired storage area on the flash memory 104 is released, and the storage area can be reused. In this case, the storage areas of the flash memory 104 can be used efficiently by re-allocating the storage areas so that no gap is formed between the storage areas.
[0070]
In the third embodiment, the storage area is rearranged when a storage area released due to expiration expires. However, the present invention is not limited to this. When a sufficient storage area cannot be secured, the storage area may be relocated. At that time, the relocation processing may be automatically performed.
[0071]
In the first to third embodiments, the flash memory 104 is used as an example of the non-volatile memory. However, the present invention is not limited to this, and the stored contents can be held without being affected by turning off / on of the device power. Anything is fine.
[0072]
【The invention's effect】
As described above, according to the first aspect of the present invention, the ID number of each application is dynamically allocated at the time of the first activation of the application by the allocation control means, so that a new application supplied by a third vendor or the like is added. In this case, the application ID can be automatically assigned. Then, the ID number of the assigned application is stored in the storage unit corresponding to the application name, and at the time of starting the application for the second time or later, the allocation control unit sets the ID number corresponding to the application name stored in the storage unit. Since the assignment is performed, the same application ID can be continuously used even after the power is turned off / on.
[0073]
According to the second aspect of the present invention, since the storage means is constituted by a nonvolatile memory, data such as an application ID stored in the nonvolatile memory does not use a backup power supply or the like even when the apparatus power is turned off / on. Data, such as the application ID once assigned, can be used continuously regardless of whether the power of the apparatus is OFF or ON, and the apparatus configuration can be simplified and the cost can be reduced. .
[0074]
According to the third aspect of the present invention, the allocation control means further allocates the storage area of the storage means used at the time of starting the application to a size corresponding to the application. It is possible to secure a storage area in advance, and it is possible to prevent shortage of memory during application startup.
[0075]
Also, according to the invention according to claim 4, the allocation control means, when allocating the storage area of the storage means, further instructs the expiration date of the storage area, and sets the allocated storage area at the expiration of the expiration date. Since the storage area is deleted, it is not fixed even if the storage area is allocated once, and the allocation period can be limited only by indicating the expiration date at the time of allocation, and the allocated storage area is deleted when the expiration date expires Since the storage area is released and returns to the state before the allocation, even if the storage area is allocated to the application that is hardly started, it is resolved after a certain period, and the limited storage area can be used effectively.
[0076]
According to the fifth aspect of the present invention, the allocation control means reallocates the storage area of the storage means allocated for each application to an efficient arrangement. When the repetition is performed, it is possible to prevent a useless space from being generated in the storage area, prevent a substantial decrease in storage capacity, and use the storage area more efficiently.
[0077]
According to the invention according to claim 6, the allocation control means performs at least one of the processing of allocating the storage area of the storage means and the processing of erasing the storage area when the application is started. Or by erasing useless storage areas, it is possible to easily secure storage areas for other applications.
[0078]
Further, according to the invention according to claim 7, since the ID number of each application is dynamically allocated at the time of the first activation of the application in the allocation step, even if a new application supplied by a third vendor or the like is added, the application ID is determined. Can be automatically assigned. Then, the ID number of the application allocated in the storage step is stored in the storage unit in association with the application name, and in the restart-time allocation step, the application name stored in the storage unit is stored when the application is started for the second time or later. Since the corresponding ID number is assigned, the same application ID can be continuously used even after the power is turned off / on.
[0079]
According to the eighth aspect of the present invention, in the storing step, the assigned application ID number is stored in the nonvolatile memory in association with the application name. The data such as the application ID stored in the memory can be retained without using a backup power supply or the like, and the data such as the application ID once allocated is continuously used regardless of whether the power supply of the device is OFF or ON. This makes it possible to simplify the device configuration and reduce the cost.
[0080]
According to the ninth aspect of the present invention, the allocating step further includes a storage area allocating step of allocating a storage area of the storage unit used at the time of starting the application to a size corresponding to the application. It is possible to secure a storage area of a required size in advance, and it is possible to prevent a memory shortage during application startup.
[0081]
According to the tenth aspect of the present invention, in the allocating step, when allocating the storage area of the storage unit, the allocation expiration date can be further specified, and the allocated storage area is deleted when the specified expiration date comes. Since it includes an expiration date instruction step, once the storage area is allocated, it is not fixed to this, but it is possible to limit the allocation period only by instructing the expiration date at the time of allocation, and it is allocated when the expiration date expires Since the storage area is released to return to the state before the allocation, even if the storage area is allocated to an application that is hardly started, the storage area is resolved after a certain period of time, and the limited storage area can be used effectively.
[0082]
According to the eleventh aspect of the present invention, the allocating step further includes a reallocation step of reallocating the storage area of the storage unit allocated for each application to an efficient allocation. In the case where the storage area is repeatedly released, the occurrence of useless gaps in the storage area is prevented, the substantial reduction in storage capacity is prevented, and the storage area can be used more efficiently.
[0083]
According to the twelfth aspect of the present invention, in the allocating step, at least one of the processing of allocating the storage area of the storage unit and the processing of erasing is performed at the time of starting the application. By securing or erasing useless storage areas, it is possible to easily secure storage areas for other applications.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of an image forming apparatus according to a first embodiment of the present invention;
FIG. 2 is a diagram illustrating an example of a search table for searching for an assigned application ID at the time of starting the application according to the first embodiment;
FIG. 3 is a diagram illustrating a state in which the SCS of FIG. 1 assigns an application ID when each application is activated for the first time.
FIG. 4 is a diagram illustrating a state in which the SCS refers to a correspondence table in the flash memory and assigns an application ID at the time of the second or subsequent startup.
FIG. 5 is a flowchart illustrating the operation of the first embodiment.
FIG. 6 is a flowchart illustrating the operation of the second embodiment.
FIG. 7 is a flowchart illustrating the operation of the third embodiment.
[Explanation of symbols]
100 MFP
101 black and white line printer
102 color line printer
103 Hardware resources
104 flash memory
110 software group
111 Printer App
112 Copy app
113 Fax App
114 Scanner App
115 Net File App
116 Process inspection application
117 New Apps
120 platform
121 General-purpose OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
130 Application

Claims (12)

画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うアプリケーションのプロセスと、前記アプリケーションと前記ハードウェア資源との間に介在し、前記ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とする前記ハードウェア資源の獲得要求、管理、実行制御並びに画像形成処理を行うコントロールサービスのプロセスとを備えた画像形成装置であって、
前記アプリケーションの初回起動時に、各アプリケーションのID番号を動的に割り付ける割付制御手段と、
前記割付制御手段によって割り付けられたアプリケーションのID番号をアプリケーション名称に対応して記憶する記憶手段と、
を備え、前記割付制御手段は、前記アプリケーションの2回目以降の起動時に、前記記憶手段に記憶されているアプリケーション名称に対応したID番号を割り付けることを特徴とする画像形成装置。
The hardware resources used in the image forming process, the process of the application that performs processing specific to the user service related to the image forming process, and the user service provided between the application and the hardware resource A request for acquiring the hardware resources required by at least two of the applications in common, management, execution control, and a control service process for performing image forming processing.
Assignment control means for dynamically assigning an ID number of each application when the application is first started;
Storage means for storing the ID number of the application allocated by the allocation control means in association with the application name;
Wherein the allocation control means allocates an ID number corresponding to an application name stored in the storage means when the application is started for the second time or later.
前記記憶手段は、不揮発メモリで構成されていることを特徴とする請求項1に記載の画像形成装置。The image forming apparatus according to claim 1, wherein the storage unit includes a nonvolatile memory. 前記割付制御手段は、さらに前記アプリケーションが起動時に使用する前記記憶手段の記憶領域をアプリケーションに応じたサイズに割り付けることを特徴とする請求項1または2に記載の画像形成装置。3. The image forming apparatus according to claim 1, wherein the allocation control unit further allocates a storage area of the storage unit used when the application starts up to a size corresponding to the application. 4. 前記割付制御手段は、前記記憶手段の記憶領域を割り付ける際に、さらに記憶領域の割り付け有効期限を指示可能とすると共に、指示した有効期限の到来時に割り付けた記憶領域を抹消することを特徴とする請求項3に記載の画像形成装置。When allocating a storage area of the storage means, the allocation control means can further designate an expiration date of the storage area, and deletes the allocated storage area when the designated expiration date has come. The image forming apparatus according to claim 3. 前記割付制御手段は、さらにアプリケーション毎に割り付けられた前記記憶手段の記憶領域を効率的な配置に割り付けし直すことを特徴とする請求項1〜4のいずれか一つに記載の画像形成装置。The image forming apparatus according to claim 1, wherein the allocation control unit further reallocates storage areas of the storage unit allocated for each application to an efficient arrangement. 前記割付制御手段は、前記記憶手段の記憶領域の割り付け処理と抹消処理の少なくとも一方をアプリケーションの起動時に行うことを特徴とする請求項4または5に記載の画像形成装置。6. The image forming apparatus according to claim 4, wherein the allocation control unit performs at least one of a storage area allocation process and a deletion process of the storage unit when an application is started. 画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うアプリケーションのプロセスと、前記アプリケーションと前記ハードウェア資源との間に介在し、前記ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とする前記ハードウェア資源の獲得要求、管理、実行制御並びに画像形成処理を行うコントロールサービスのプロセスとを備えた画像形成装置上で、前記アプリケーションを識別するためのID番号を割り付けるアプリケーションID割付方法であって、
前記アプリケーションの初回起動時に、各アプリケーションのID番号を動的に割り付ける割付ステップと、
割り付けられたアプリケーションのID番号をアプリケーション名称に対応させて記憶部に記憶する記憶ステップと、
前記アプリケーションの2回目以降の起動時に、前記記憶部に記憶されているアプリケーション名称に対応したID番号を割り付ける再起動時割付ステップと、
を含むことを特徴とするアプリケーションID割付方法。
The hardware resources used in the image forming process, the process of the application that performs processing specific to the user service related to the image forming process, and the user service provided between the application and the hardware resource In this case, the application is executed on an image forming apparatus including a control service process for performing acquisition, management, execution control, and image formation of the hardware resources required by at least two of the applications in common. An application ID assignment method for assigning an ID number for identification,
An assignment step of dynamically assigning an ID number of each application when the application is first started;
A storage step of storing the assigned application ID number in the storage unit in association with the application name;
A restart-time allocating step of allocating an ID number corresponding to an application name stored in the storage unit at the time of starting the application for the second or subsequent time;
A method of assigning an application ID, comprising:
前記記憶ステップは、割り付けられたアプリケーションのID番号をアプリケーション名称に対応させて不揮発メモリに記憶させることを特徴とする請求項7に記載のアプリケーションID割付方法。8. The application ID assignment method according to claim 7, wherein the storing step stores the assigned application ID number in a nonvolatile memory in association with an application name. 前記割付ステップは、さらに前記アプリケーション起動時に使用する前記記憶部の記憶領域をアプリケーションに応じたサイズに割り付ける記憶領域割付ステップを含むことを特徴とする請求項7または8に記載のアプリケーションID割付方法。9. The application ID allocation method according to claim 7, wherein the allocating step further includes a storage area allocating step of allocating a storage area of the storage unit used at the time of starting the application to a size corresponding to an application. 前記割付ステップは、前記記憶部の記憶領域を割り付ける際に、さらに割り付け有効期限を指示可能とし、指示した有効期限の到来時に割り付けた記憶領域を抹消する有効期限指示ステップを含むことを特徴とする請求項9に記載のアプリケーションID割付方法。The allocating step may further include, when allocating a storage area of the storage unit, an expiration date instructing step of enabling an allocation expiration date to be indicated, and deleting the allocated storage region when the indicated expiration date comes. The application ID allocation method according to claim 9. 前記割付ステップは、さらにアプリケーション毎に割り付けられた前記記憶部の記憶領域を効率的な配置に割り付けし直す再配置ステップを含むことを特徴とする請求項7〜10のいずれか一つに記載のアプリケーションID割付方法。The method according to any one of claims 7 to 10, wherein the allocating step further includes a relocation step of reallocating a storage area of the storage unit allocated for each application to an efficient allocation. Application ID assignment method. 前記割付ステップは、前記記憶部の記憶領域の割り付け処理と抹消処理の少なくとも一方をアプリケーションの起動時に行うことを特徴とする請求項10または11に記載のアプリケーションID割付方法。12. The application ID allocating method according to claim 10, wherein in the allocating step, at least one of a process of allocating a storage area of the storage unit and a process of erasing is performed when an application is started.
JP2002197613A 2002-07-05 2002-07-05 Image forming apparatus and application ID assigning method Expired - Fee Related JP4011423B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002197613A JP4011423B2 (en) 2002-07-05 2002-07-05 Image forming apparatus and application ID assigning method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002197613A JP4011423B2 (en) 2002-07-05 2002-07-05 Image forming apparatus and application ID assigning method

Publications (2)

Publication Number Publication Date
JP2004038777A true JP2004038777A (en) 2004-02-05
JP4011423B2 JP4011423B2 (en) 2007-11-21

Family

ID=31705337

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002197613A Expired - Fee Related JP4011423B2 (en) 2002-07-05 2002-07-05 Image forming apparatus and application ID assigning method

Country Status (1)

Country Link
JP (1) JP4011423B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006236245A (en) * 2005-02-28 2006-09-07 Toshiba Corp Arithmetic processing unit

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006236245A (en) * 2005-02-28 2006-09-07 Toshiba Corp Arithmetic processing unit
JP4557748B2 (en) * 2005-02-28 2010-10-06 株式会社東芝 Arithmetic processing unit

Also Published As

Publication number Publication date
JP4011423B2 (en) 2007-11-21

Similar Documents

Publication Publication Date Title
US7209249B2 (en) Method of and apparatus for image formation, and computer product
US7958140B2 (en) Method of controlling user information and information processing apparatus
JP2004297792A (en) Image forming apparatus and function key assignment method
US8314962B2 (en) Image forming apparatus that discriminates an operation of a service requested and constructs a job corresponding to the operation by selecting a job scenario prepared in advance
JP4373742B2 (en) Image forming apparatus and application activation restriction method
JP2004005612A (en) System and method for obtaining resource information
JP2006203655A (en) Method for setting image forming apparatus and image forming apparatus
JP2004030601A (en) Device and method of making application start judgment by resource information
JP2011103664A (en) Image forming device
JP4504447B2 (en) Image forming apparatus, application activation determination method, program, and recording medium
JP4394740B2 (en) Image forming apparatus, method, and program
JP4394387B2 (en) Image processing apparatus and memory disk management method
JP4011423B2 (en) Image forming apparatus and application ID assigning method
JP2004129246A (en) Image forming apparatus and application information acquisition method
JP4157376B2 (en) Information processing apparatus, image forming apparatus, control method, and program
JP4136397B2 (en) Image forming apparatus and memory management method
JP4676977B2 (en) Image forming apparatus, application information acquisition method, and program
JP2004164582A (en) Information processing apparatus and program generation method
JP2003330735A (en) Image forming apparatus and shared memory mediating method
JP4677054B2 (en) Image forming apparatus, program, recording medium, and method
JP2007305143A (en) Information processor and information processing method
JP2006005963A (en) Information processor and information processing method
JP2005064688A (en) Storage and image forming device
JP3792191B2 (en) Digital multifunction device
JP5348082B2 (en) Image forming apparatus, function key assigning method, program, and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041006

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070612

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070810

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: 20070904

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070905

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100914

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110914

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120914

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130914

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees