JP4276909B2 - 画像形成装置およびアプリ起動制御方法 - Google Patents

画像形成装置およびアプリ起動制御方法 Download PDF

Info

Publication number
JP4276909B2
JP4276909B2 JP2003317281A JP2003317281A JP4276909B2 JP 4276909 B2 JP4276909 B2 JP 4276909B2 JP 2003317281 A JP2003317281 A JP 2003317281A JP 2003317281 A JP2003317281 A JP 2003317281A JP 4276909 B2 JP4276909 B2 JP 4276909B2
Authority
JP
Japan
Prior art keywords
application
activation
compatibility information
image forming
relationship
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
JP2003317281A
Other languages
English (en)
Other versions
JP2004127280A (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 JP2003317281A priority Critical patent/JP4276909B2/ja
Priority to EP20030255730 priority patent/EP1398948B1/en
Priority to US10/660,723 priority patent/US20040109188A1/en
Priority to CN2006101214658A priority patent/CN1921546B/zh
Priority to CNA031648738A priority patent/CN1495580A/zh
Publication of JP2004127280A publication Critical patent/JP2004127280A/ja
Priority to US11/923,236 priority patent/US8752041B2/en
Priority to US11/923,207 priority patent/US8305591B2/en
Priority to US11/923,178 priority patent/US8516475B2/en
Application granted granted Critical
Publication of JP4276909B2 publication Critical patent/JP4276909B2/ja
Priority to US13/628,933 priority patent/US9019516B2/en
Priority to US13/907,384 priority patent/US9167113B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)

Description

この発明は、コピー、プリンタ、スキャナおよびファクシミリなどの画像形成処理にかかるユーザサービスを提供する画像形成装置で、あるアプリケーションに対して排他的な関係にあるアプリケーションの起動を制限し、更に、アプリケーションの実行に必須な又は推奨される他のアプリケーションの起動をすることができる画像形成装置に関するものである。
近年では、プリンタ、コピー、ファクシミリ、スキャナなどの各装置の機能を1つの筐体内に収納した画像形成装置(以下、「複合機」という。)が知られている。この複合機は、1つの筐体内に表示部、印刷部および撮像部などを設けるとともに、プリンタ、コピーおよびファクシミリ装置にそれぞれ対応した3種類のソフトウェアを設け、これらのソフトウェアを切り替えることによって、当該装置をプリンタ、コピー、スキャナまたはファクシミリ装置として動作させるものである。
このような従来の複合機では、同時期に複数のアプリケーションを起動させても複合機自体の動作が不安定にならないように、既存のアプリケーション間であらかじめ調整されている。
また、従来の複合機におけるあらかじめ搭載されている既存のアプリケーションの場合、使用を希望するアプリケーションとは別の他のアプリケーションを起動させないと、使用を希望するアプリケーションの所望の機能が実現できないという状況が生じる場合は想定されていなかった。
特開平11−112701号公報
ところで、このような従来の複合機では、プリンタ、コピー、スキャナおよびファクシミリ装置に対応するソフトウェアをそれぞれ別個に設けているため、各ソフトウェアの開発に多大の時間を要する。このため、出願人は、表示部、印刷部および撮像部などの画像形成処理で使用されるハードウェア資源を有し、プリンタ、コピーまたはファクシミリなどの各ユーザサービスにそれぞれ固有の処理を行うアプリケーションを複数搭載し、これらのアプリケーションとハードウェア資源との間に介在して、ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行う各種コントロールサービスからなるプラットホームを備えた画像形成装置(複合機)を発明した。
このような新規な複合機では、アプリケーションとコントロールサービスとを別個に設けているため、複合機の出荷後にユーザもしくは第三者であるサードベンダが新規なアプリケーションを開発して複合機に搭載可能な構成となっている。このため、かかる複合機では、出荷時に搭載されているコピー、プリンタ、スキャナ、ファクシミリといった画像形成装置特有のアプリケーション以外に、従来の複合機とは異なるユーザやサードベンダが開発した新規アプリケーションなども多数起動可能となっている。
コピー、プリンタ、ファクシミリ、スキャナなど複合機であらかじめ提供されている既存のアプリケーションの場合は、同時期に起動させても動作が不安定にならないように調整されているが、第三者が開発する新規アプリケーションの場合は、ベンダによって必ずしも既存のアプリケーションや他の新規アプリケーションとの相性(排他的な関係にあるか否か)まで意識して開発していないのが現状である。このため、このような新規アプリケーションを他のアプリケーションと同時期(同時、あるいは、順次重複するよう)に起動させた場合、アプリケーション同士が排他的な関係にあると複合機が正常に動作しないという従来の複合機では問題にならなかった新規な課題が生じてくる。
そこで、起動するアプリケーションの優先順位を決めるということも考えられるが、新たな新規アプリケーションが搭載される度に優先順位を設定し直さなくてはならないため、手間がかかる。また、一般のユーザにとって、どのアプリケーションが同時期に起動できないもので、どれを優先的に起動すべきかを正確に理解した上で優先順位設定を行うのは非常に困難であるという問題があった。
また、第三者が開発する新規アプリケーションの中には、複数のアプリケーションを起動して実行することが前提になっているものがある。このため、それを知らずに単独で起動させて実行しても、アプリケーション本来の機能が実現できなかったり、動作が途中で停止するなど従来の複合機では問題にならなかった新規な課題が生じてくる。
この発明は上記に鑑みてなされたもので、あるアプリケーションに対して排他的もしくは非推奨的な関係にあるアプリケーションに対する起動制限を行う技術を提供することを目的とする。さらに、必須関係もしくは推奨関係にあるアプリケーション同士を一緒に起動させることを可能とする技術を提供することを目的とする。
上記の課題を解決するために、請求項1に記載の発明は、複数のアプリケーションを搭載可能に構成された画像形成装置において、アプリケーションの組み合わせの適否に関する情報であるアプリ相性情報をアプリケーション毎に格納するためのアプリ相性情報記憶手段と、前記画像形成装置が備えるアプリケーションを仮起動し、仮起動したアプリケーションから当該アプリケーションに関するアプリ相性情報を取得し、当該アプリ相性情報を前記アプリ相性情報記憶手段に格納するアプリ相性情報取得手段と、前記アプリ相性情報記憶手段に格納されたアプリ相性情報を参照し、当該アプリ相性情報に基づき、アプリケーションに対する起動制御処理を行う起動制御手段とを有し、前記仮起動は、通常起動とは別の起動であって、前記アプリケーションに前記アプリ相性情報取得手段との間で通信処理を行わせるための起動であることを特徴とする画像形成装置である
本発明によれば、アプリケーションの組み合わせの適否に関する情報に基づき、適切なアプリケーションを起動させることができるようになる。
請求項2に記載の発明は、請求項1の記載において、前記アプリ相性情報記憶手段に格納されたアプリ相性情報は、複数アプリケーション間の排他関係もしくは非推奨関係を示す情報であり、前記起動制御手段は、排他関係もしくは非推奨関係にある複数のアプリケーションの中から少なくとも1つのアプリケーションを選択させる画面を前記画像形成装置のオペレーションパネルに表示する。
本発明によれば、排他関係もしくは非推奨関係にある複数のアプリケーションの中から少なくとも1つのアプリケーションを選択させる画面が表示されるので、ユーザは、所望のアプリケーションを選択することができる。なお、非推奨関係とは、同時に実行することは可能であるが、パフォーマンス等の観点から同時に実行することは望ましくない関係のことである。
請求項3に記載の発明は、請求項1の記載において、前記アプリ相性情報記憶手段に格納されたアプリ相性情報は、複数アプリケーション間の排他関係もしくは非推奨関係を示す情報であり、前記起動制御手段は、排他関係もしくは非推奨関係にある複数のアプリケーションのうち、少なくとも1つのアプリケーションの起動または起動設定を行うものである。
本発明によれば、排他関係もしくは非推奨関係にある複数のアプリケーションの中からアプリケーションを選択して起動するので、排他関係にある複数のアプリを同時に起動することを防止できる。
請求項4に記載の発明は、請求項3の記載において、前記起動制御手段は、排他関係もしくは非推奨関係にある複数のアプリケーションの中から優先順位の高いアプリケーションを起動もしくは起動設定するものである。
本発明によれば、排他関係にあるアプリが複数ある場合でも、優先順位に基づき、特定のアプリケーションを起動できる。
請求項5に記載の発明は、請求項1の記載において、前記アプリ相性情報記憶手段に格納されたアプリ相性情報は、アプリケーションの排他関係もしくは非推奨関係を示す情報であり、前記起動制御手段は、あるアプリケーションと他のアプリケーションとの組み合わせが非推奨関係にある場合に、警告画面を前記画像形成装置のオペレーションパネルに表示するものである。
本発明によれば、警告を表示するので、ユーザは、あるアプリケーションと他のアプリケーションの両方を実行するか否かを判断できる。
請求項6に記載の発明は、請求項2ないし5のうちいずれか1項に記載の画像形成装置において、前記起動制御手段は、あるアプリケーションに対する起動要求もしくは起動設定要求がなされたときに、前記アプリ相性情報記憶手段を参照し、当該アプリケーションに対して排他関係もしくは非推奨関係にあるアプリケーションの識別子を取得して、前記起動制御処理を行うものである。
本発明によれば、あるアプリケーションに対する起動要求もしくは起動設定要求がなされたときに起動制御処理を行うことが可能になる。
請求項7に記載の発明は、請求項1の記載において、前記アプリ相性情報記憶手段に格納されたアプリ相性情報は、アプリケーションの排他関係もしくは非推奨関係を示す情報であり、当該排他関係もしくは非推奨関係を示す情報は、排他関係もしくは非推奨関係の強さを示すレベルを含み、前記起動制御手段は、当該レベルに応じて、前記起動制御処理を行うものである。
本発明によれば、レベルを参照することにより、レベルに応じた種々の起動制御処理を行うことが可能となる。
請求項8に記載の発明は、請求項1ないし7のうちいずれか1項に記載の画像形成装置において、前記アプリケーションは、特定の引数が指定されたときに仮起動を行う手順を表す記述を含み、前記アプリ相性情報取得手段は、前記特定の引数を指定することにより前記アプリケーションを仮起動するものである。
請求項に記載の発明は、請求項1ないしのうちいずれか1項に記載の画像形成装置において、画像形成処理で使用されるハードウェア資源と、ハードウェア資源の制御を行うコントロールサービスと、コントロールサービスをサーバとしたクライアントプロセスとして動作し、前記アプリケーションをクライアントとしたサーバプロセスとして動作する仮想アプリケーションサービスを有するものである。また、請求項10に記載の発明は、請求項14の記載において、前記仮想アプリケーションサービスは前記アプリ相性情報取得手段及び前記起動制御手段を含む。
請求項11〜20に記載の発明は、上記の画像形成装置に適した方法の発明であり、請求項21〜23に記載の発明は、上記の画像形成装置に適したプログラム、記録媒体の発明である。これらの発明によっても、上記の画像形成装置の発明と同様の作用効果を奏する。
本発明によれば、アプリケーションの組み合わせの適否に関する情報に基づき、適切なアプリケーションを起動させることができるようになる。すなわち、あるアプリケーションに対して排他的もしくは非推奨的な関係にあるアプリケーションに対する起動制限を行うことが可能になるとともに、必須関係もしくは推奨関係にあるアプリケーション同士を一緒に起動させることが可能となる。
以下に添付図面を参照して、この発明にかかる画像形成装置およびアプリ起動制限方法の好適な実施の形態を詳細に説明する。
(実施の形態1)
図1は、この発明の実施の形態1である画像形成装置(以下、「複合機」という)の構成を示すブロック図である。図1に示すように、複合機100は、白黒レーザプリンタ(B&W LP)101と、カラーレーザプリンタ(Color LP)102と、スキャナ、ファクシミリ、ハードディスク、メモリ、ネットワークインタフェースなどのハードウェアリソース103を有するとともに、プラットホーム120とアプリケーション(以下、アプリともいう)130と仮想アプリケーションサービス(VAS:Virtual Application Service)140から構成されるソフトウェア群110とを備えている。
仮想アプリケーションサービス(VAS)140は、アプリ130とプラットホーム120との間に配置されている。このVAS140は、各アプリごとに排他関係にあるアプリに関するアプリ相性情報を取得して、そのアプリ相性情報ファイルを記憶手段としてのハードディスク(HD)に生成する(後述する図2のHD200)。
アプリ同士の排他制御を要する例としては、例えば、認証系や課金系といった同一系同士のアプリの組み合わせ、同一機器(プリンタや表示部など)を動作対象として取り合いを行うプリンタアプリ同士や表示アプリ同士の組み合わせ、同じアプリ(ファイル名が同じ)でバージョンの異なるアプリ同士の組み合わせなどがある。
また、アプリの排他制御を要する例として更に以下に示すものがある。まず、リソース的な理由による制限として、あるアプリが画像処理等で多大なメモリを使用することがわかっており、そのアプリを実行すると確実にメモリ不足になり、他のアプリを実行できない場合に排他制御が必要になる。また、多大なCPUパワーを必要とする場合も同様である。
また、RAWファイルに対して例えば電子認証用の暗号データを付加するアプリ同士でも排他制御が必要となる。これは、スキャンして生成した画像データに対して、複数のアプリが異なるデータを付加すると正常な動作が妨げられるからである。
また、異なるフォーマットのRAWファイルを生成するようなアプリ同士でも、書式不整合による不具合防止のために排他制御が必要である。
また、認証、課金を管理するアプリには、それに適したアプリ群があり、例えば、認証アプリAに対してスキャナアプリAとコピーアプリAが適合し、認証アプリBに対してスキャナアプリBとコピーアプリBが適合する場合に、認証アプリAと認証アプリBの認証方式が異なっているとすると、認証アプリAとスキャナアプリB、コピーアプリB間の排他制御、認証アプリBとスキャナアプリA、コピーアプリA間の排他制御が必要になる。
また、コピー画像のサムネイル作成によるログ管理を行うログ取得アプリと、ハードディスク上の画像データを強制的に即時削除するようなコピーアプリとの排他制御が必要になる。
更に、例えば、ベンダAとベンダBのアプリは同じマシンで動作させないといった取り決めがある場合に、これらの排他制御が必要になる。
VAS140は、アプリ相性情報を取得する際に、各アプリがどのような種類のアプリに属するか(アプリの属性情報)といった情報も併せて取得するようにする。この情報は、例えば、画面表示に用いられる。
また、VAS140は、アプリ相性情報を、アプリを仮起動させることによりプロセス間通信を使って取得する。また、ネットワーク経由で、外部のサーバ等からアプリ相性情報を取得することようにしてもよい。更に、アプリ相性情報ファイル(データベース)を外部から取得してもよい。
そして、VAS140は、アプリ相性情報に基づいて、起動設定時、もしくは、アプリの起動時に、排他関係にあるアプリの検出を行って、起動制御を行う。例えば、一方のみを起動し、他方の起動を制限する。
なお、起動設定とは、インストールされているアプリケーションを、複合機の電源投入時に起動するように設定することである。すなわち、本実施の形態の複合機では、アプリケーションをインストールしただけではアプリケーションは起動せず、起動させるには、起動設定をする必要がある。なお、起動設定をすることにより、当該アプリケーションを起動させる旨を示す情報が複合機の記憶装置に記憶される。そして、電源投入時に、その情報が参照され、そのアプリケーションが起動される。
なお、起動設定という方法をとらずに、アプリを随時起動できるように複合機を構成することも可能である。
プラットホーム120は、アプリケーションからの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ(SRM)123と、汎用OS121とを有している。
コントロールサービスは、複数のサービスモジュールから形成され、SCS(システムコントロールサービス)122と、ECS(エンジンコントロールサービス)124と、MCS(メモリコントロールサービス)125と、OCS(オペレーションパネルコントロールサービス)126と、FCS(ファックスコントロールサービス)127と、NCS(ネットワークコントロールサービス)128とから構成されている。なお、このプラットホーム120は、あらかじめ定義された関数により前記アプリケーション130から処理要求を受信可能とするアプリケーションプログラムインタフェース(API)を有している。
汎用OS121は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。
SRM123のプロセスは、SCS122とともにシステムの制御およびリソースの管理を行うものである。SRM123のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、HDDファイル、ホストI/O(セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど)のハードウェア資源を利用する上位層からの要求にしたがって調停を行い、実行制御する。
具体的には、このSRM123は、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、SRM123は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施している。
SCS122のプロセスは、アプリ管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御などを行う。
ECS124のプロセスは、白黒レーザプリンタ(B&W LP)101、カラーレーザプリンタ(Color LP)102、スキャナ、ファクシミリなどからなるハードウェアリソース103のエンジンの制御を行う。
MCS125のプロセスは、画像メモリの取得および解放、ハードディスク装置(HDD)の利用、画像データの圧縮および伸張などを行う。
FCS127のプロセスは、システムコントローラの各アプリ層からPSTN/ISDN網を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのAPIを提供する。
NCS128のプロセスは、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行う。具体的には、ftpd、httpd、lpd、snmpd、telnetd、smtpdなどのサーバデーモンや、同プロトコルのクライアント機能などを有している。
OCS126のプロセスは、オペレータ(ユーザ)と本体制御間の情報伝達手段となるオペレーションパネル(操作パネル)の制御を行う。OCS126は、オペレーションパネルからキー押下をキーイベントとして取得し、取得したキーに対応したキーイベント関数をSCS122に送信するOCSプロセスの部分と、アプリケーション130またはコントロールサービスからの要求によりオペレーションパネルに各種画面を描画出力する描画関数やその他オペレーションパネルに対する制御を行う関数などがあらかじめ登録されたOCSライブラリの部分とから構成される。このOCSライブラリは、アプリケーション130およびコントロールサービスの各モジュールにリンクされて実装されている。なお、OCS126のすべてをプロセスとして動作させるように構成しても良く、あるいはOCS126のすべてをOCSライブラリとして構成しても良い。
アプリケーション130は、ページ記述言語(PDL)、PCLおよびポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、工程検査用アプリケーションである工程検査アプリ116とを有している。これらの各アプリは、複合機特有(画像形成装置特有)のアプリであり、起動時にVAS140に対して自プロセスのプロセスIDとともにアプリ登録要求メッセージを送信し、アプリ登録要求メッセージを受信したVAS140によって、起動したアプリに対する登録処理が行われる。
アプリケーション130の各プロセス、コントロールサービスの各プロセスは、関数呼び出しとその戻り値送信およびメッセージの送受信によってプロセス間通信を行いながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを実現している。
このように、実施の形態1にかかる複合機100には、複数のアプリケーション130および複数のコントロールサービスが存在し、いずれもプロセスとして動作している。そして、これらの各プロセス内部には、一または複数のスレッドが生成されて、スレッド単位の並列実行が行われる。そして、コントロールサービスがアプリケーション130に対し共通サービスを提供しており、このため、これらの多数のプロセスが並列動作、およびスレッドの並列動作を行って互いにプロセス間通信を行って協調動作をしながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを提供するようになっている。また、複合機100には、サードベンダなどの第三者がコントロールサービス層の上のアプリケーション層に新規アプリ117,118を開発して搭載することが可能となっている。図1では、この新規アプリ117,118を搭載した例を示している。この新規アプリ117,118は、複合機特有のアプリ以外のアプリに相当するものである。
なお、実施の形態1にかかる複合機100では、複数のアプリケーション130のプロセスと複数のコントロールサービスのプロセスとが動作しているが、アプリケーション130とコントロールサービスのプロセスがそれぞれ単一の構成とすることも可能である。また、各アプリケーション130は、アプリケーションごとに追加または削除することができる。
図2に複合機100のハードウェア構成例を示す。
複合機100は、コントローラ160と、オペレーションパネル175と、ファックスコントロールユニット(FCU)176と、プリンタ等の画像形成処理に特有のハードウェア資源であるエンジン部177とを含む。コントローラ160は、CPU161と、システムメモリ162と、ノースブリッジ(NB)163と、サウスブリッジ(SB)164と、ASIC166と、ローカルメモリ167と、HDD168と、ネットワークインターフェースカード(NIC)169と、SDカード用スロット170と、USBデバイス171と、IEEE1394デバイス172と、セントロニクス173とを含む。なお、メモリ162、167はRAM、ROM等を含む。FCU176およびエンジン部177は、コントローラ160のASIC166にPCIバス178で接続されている。
CPU161が、複合機100にインストールされるアプリケーション、コントロールサービス等のプログラムを、メモリから読み出して実行する。
図3は、実施の形態1にかかる複合機100のVAS140の構成と、VAS140と各アプリ、コントロールサービス層150および汎用OS121との関係を示すブロック図である。
仮想アプリケーションサービス(VAS)140のプロセスには、ディスパッチャ144と、制御スレッド143と、アプリ相性情報取得スレッド141と、アプリ起動制限スレッド142とが動作している。
なお、VAS140における処理は、このように各スレッドを用いて行うこともできるが、スレッドを用いずに行ってもよい。
ディスパッチャ144は、アプリケーション130やコントロールサービスからのメッセージ受信を監視し、受信したメッセージに応じて制御スレッド143、アプリ相性情報取得スレッド141、アプリ起動制限スレッド142に対して処理要求を行うものである。実施の形態1の複合機100では、ディスパッチャ144は、複数のアプリに対するアプリ起動要求メッセージを受信したとき、受信したアプリ起動要求メッセージを制御スレッド143に送信し、制御スレッド143からアプリ相性情報取得スレッド141とアプリ起動制限スレッド142に対して処理要求を行う。
制御スレッド143は、ディスパッチャ144からのアプリ起動要求メッセージを受信して、アプリ相性情報取得処理およびアプリ起動制限処理を行う。ここで、アプリ起動制限処理とは、例えば、アプリ同士の組み合わせの中の何れか一つのアプリを起動させて、他のアプリを起動しないように制限する排他制御処理のことである。
また、制御スレッド143は、複合機100にインストールされている全てのアプリに関するアプリ相性情報がアプリ相性情報ファイル201に取得されていない場合は、アプリ相性情報取得スレッド141に対して当該アプリに関するアプリ相性情報を取得するように処理要求を行うことができ、取得されたアプリ相性情報は、HD200のアプリ相性情報ファイル201に格納される。
また、制御スレッド143は、HD200に格納されているアプリ相性情報ファイル201を参照するだけで、インストールされたアプリの中で相性の悪いアプリ同士の組み合わせに関する情報が得られる場合は、アプリ相性情報の取得処理を行わずに、アプリ起動制限スレッド142に対してアプリ相性情報に基づくアプリ起動制限を行うように処理要求する。
アプリ相性情報取得スレッド141は、制御スレッド143からの処理要求を受けて、アプリを仮起動することで、プロセス間通信を使ってアプリ相性情報に必要な情報を取得すると、アプリ相性情報ファイル201としてハードディスク(HD)200に生成する。さらに、アプリ相性情報取得スレッド141は、アプリ相性情報をネットワーク経由で取得できる場合、コントロールサービスのNCS128のプロセスを利用して、ネットワーク側から必要なデータを受信すると、アプリ相性情報ファイル201としてハードディスク(HD)200に生成する。かかるアプリ相性情報は、アプリごとのレコードとして記録される。
また、アプリ相性情報ファイル自身をユーザが複合機100に格納してもよい。また、アプリ相性情報ファイルがサーバ等からダウンロード可能な場合には、VAS140がサーバからそのアプリ相性情報ファイルを取得するように構成することもできる。
上記の各スレッドの動作は、アプリの起動時におけるものであるが、起動設定時においても同様に処理を行うことができる。ただし、起動設定時におけるアプリ起動制限処理は、例えば、画面に排他関係にある複数のアプリを表示し、選択されたアプリのみの起動設定を行うものである。
上記VAS140のプログラムは、ソフトウェア開発キット(SDK:Software Development Kit)等の一部または全部として、CD−ROMまたはFD(フレキシブルディスク)などの記憶媒体に実行可能な形式またはインストール可能な形式のファイルで提供される。また、このような実行可能な形式またはインストール可能な形式のVAS140のプログラムファイルを、ネットワーク経由で取得可能な方法で提供するようにしても良い。
図4は、HD200に格納されるアプリ相性情報ファイル201の内容例を示す図である。同図に示すように、各アプリ毎に、排他関係にあるアプリID(プロダクトIDといもいう)が記録される。また、HD200には、図5に示す内容のファイルも記録される。図5に示すファイルには、アプリIDごとに、アプリ属性、アプリ動作対象、アプリ名(アプリのファイル名)、バージョン(バージョン番号)といった情報が記録されている。この情報は、オペレーションパネルへの表示に使用することもできるし、どのアプリを優先的に起動するかを判断するために使用することもできる。
アプリ起動制限スレッド142は、複数のアプリ起動要求があった場合に、アプリ相性情報ファイル201を参照して、排他制御すべきアプリの組み合わせが有るか否かを判断し、ある場合は、該当するアプリのうちの1つのみを起動し、他方の起動を制限する排他制御を行う。ここで、排他制御を行う場合は、どちらのアプリを起動させるかを決める必要がある。例えば、同じアプリ名なら新しいバージョンのアプリを起動させるというように、あらかじめ起動の優先条件を決めておけば、図5に示す情報を用いることにより、起動するアプリを自動的に決めることができる。また、これ以外には、同時期に起動できずに排他制御する必要のある複数のアプリをオペレーションパネル上に表示することによって、起動アプリをユーザに選択させるようにしても良い。
図6は、同時期に起動できない複数のアプリのユーザ選択画面の一表示例を示す図である。図6に示すように、オペレーションパネル210上には、起動要求されたアプリの全てを表示した起動要求アプリ一覧211、同時期に起動できないアプリの組み合わせを表示した起動不可アプリ一覧212、および、ユーザが選択時に使用するラジオボタン213などが表示されている。ユーザは、不図示の操作キーを使って起動させたいアプリを択一的に選択することができる。
また、アプリ起動制限スレッド142は、アプリ起動制限が必要と判断すると、アプリ起動要求はあったが起動させないアプリに対して起動制限要求メッセージを送信する。一方、アプリ起動制限をする必要がないと判断した場合は、アプリ起動要求のあった各アプリに対して起動要求メッセージを送信して、アプリの通常起動処理が行われる。また、アプリ起動制限が必要な場合に、排他制御によって起動させることが決まったアプリについては、起動要求メッセージを送信して、アプリの通常起動処理が行われる。
次に、このように構成された複合機100のVAS140によるアプリ起動制限処理について説明する。図7は、同時期に起動要求のあった複数のアプリのうち相性に基づいて起動制限を行う処理手順を示すフローチャートである。
まず、ディスパッチャ144がコントロールサービス層150からアプリ起動要求メッセージを受信すると(ステップS501)、そのアプリ起動要求メッセージをそのアプリのプロセスIDとともに制御スレッド143に受け渡す。制御スレッド143は、複数のアプリに対する起動要求があったかどうかを判断する(ステップS502)。複数のアプリに対する起動要求の場合には、アプリ相性情報ファイルが有るか否かを判断して(ステップS503)、ファイルが有る場合は、そのアプリ相性情報ファイルを参照し(ステップS504)、ファイルが無い場合は、アプリ相性情報ファイルの作成を行ってから(ステップS505)、ステップS504でそのアプリ相性情報ファイルを参照する。なお、上記ステップS505におけるアプリ相性情報ファイル作成処理のサブルーチンは、後述する図8で詳細に説明する。
アプリ起動制限スレッド142は、HD200内のアプリ相性情報ファイル201を参照することによって、排他的関係にあるアプリの組み合わせが、起動要求のあったアプリの中にあるかどうかを判断する(ステップS506)。該当する組み合わせがある場合は、起動制限処理を行う(ステップS507)。起動制限処理の詳細については、後述する図9で詳細に説明する。
また、起動させるアプリの中に排他制御すべき組み合わせが無い場合は、通常の起動処理が行われる(ステップS508)。
図8は、アプリ相性情報ファイルの作成処理の動作を説明するフローチャートである。
まず、図8において、VAS140の制御スレッド143は、ネットワーク経由でアプリ相性情報を取得できる環境か否かを判断して(ステップS601)、ネットワーク経由で情報取得ができない場合は、起動要求のなされたアプリをVAS140が仮起動させる(ステップS602)。そして、アプリ相性情報を取得する(ステップS603)。そして、アプリ相性情報に基づいて、HD200内にアプリ相性情報ファイル201が作成される(ステップS604)。なお、アプリ毎のアプリ相性情報とは、図4に示すファイルの1レコードに相当する情報である。
なお、前述したように、アプリ相性情報を取得することにより、アプリ相性情報ファイルを作成することに代えて、アプリ相性情報ファイル自身を複合機100にユーザが格納しておいてもよい。
上述した仮起動について以下説明する。
仮起動は、複合機のリソースを使用することになるアプリの通常起動(アプリ本来の機能を奏するための起動を通常起動と呼ぶ)とは別の起動である。仮起動では、アプリはアプリ本来の動作に必要なメモリ確保等のリソース取得を行わず、VAS140とのプロセス間通信処理のみを行う。そして、アプリは、相性情報等の必要な情報をVAS140に提供する。仮起動したアプリのプロセスは、VAS140との通信処理が終了すれば終了する。また、アプリの仮起動に関する機能は、アプリ本来の機能によらず、本実施の形態における複合機100で動作するアプリに共通する機能である。従って、例えば、ベンダーがアプリを開発する場合、ベンダーに、仮起動の機能を含むプログラムテンプレートを提供し、そのプログラムテンプレートを用いてベンダーが複合機用のアプリを開発することができる。なお、アプリケーションにアプリ相性情報を含めるには、アプリ相性情報を記録したインクルードファイルを作成し、アプリのコンパイル時にインクルードする。
図9に、仮起動の機能を含むアプリのプログラム記述(メイン関数)の概要を示す。なお、この記述を上記のプログラムテンプレートとして提供する。
図9に示すように、このプログラム記述は、アプリケーションを仮起動するか通常起動するかを引数(−v)によって指定する。これにより、VASがアプリを起動する際に、通常起動と仮起動とを容易に使い分けることができる。すなわち、引数(−v)を使って仮起動を指定すると、仮起動が実行され、アプリ情報提供処理がなされる。また、仮起動が指定されていない場合は、通常起動を行って、アプリ本来の動作を行う。
図10は、排他制御を要するアプリの組み合わせに対する起動制限処理の動作を説明するフローチャートであり、図7のステップS507におけるサブルーチン処理である。
まず、図10において、排他関係にある複数のアプリに起動要求がなされていた場合に、それらのアプリのうち一つだけを起動させるか、排他関係にあるアプリ全てを起動制限するかを選択する(ステップS701)。いずれを選択するかは、例えば、初期設定により決定される。アプリの組み合わせの中で、何れか一つのアプリを起動させる場合は(ステップS701のYES)、起動させるアプリの選択基準の有無を判断する(ステップS702)。なお、選択基準は、例えば、予め定めた優先順位であり、アプリ相性情報ファイルに記録されるものである。また、選択基準として、アプリ名が同じ場合は、新しいバージョンを選択するという基準を設けてもよい。
選択基準が無い場合は、ユーザ自らが選択できるようにするため、オペレーションパネル(以下、オペパネともいう。)上に起動不可アプリ一覧などからなる選択画面を表示させる(ステップS703)。上記した図6は、このオペレーションパネルの選択画面の一例であり、起動要求アプリ一覧211には、同時期に起動するように要求された複数(ここでは、3つ)のアプリ名がバージョンと共に表示してある。そして、起動不可アプリ一覧212には、その中で排他的関係にある2つのアプリ(確認君と認証AP)がその他の情報(バージョン、属性、動作対象)と共に表示され、左端位置に選択用のラジオボタンが設けられている。ユーザは、このオぺパネ210に表示された種々の情報を参考にしながら、起動させたいアプリのラジオボタンを択一的にチェックするだけで、容易に選択することができる(ステップS704)。
このように、ステップS704でユーザが起動するアプリを選択すると、起動不可とされたそれ以外のアプリの起動を制限する排他制御が行われる(ステップS705)。
また、上記ステップS702において、起動させるアプリの選択基準が有る場合は、その基準によって選択したアプリを起動し、他のアプリの起動を制限することによって(ステップS706)、排他制御(ステップS705)が行われる。
さらに、上記ステップS701において、排他関係にある全てのアプリを起動制限する場合、あるいは、上記ステップS704において、ユーザが起動させるアプリを選択しなかった場合は、アプリの組み合わせの全てを起動しないように制限する(ステップS707)。
なお、上記の例は、アプリの起動の場面における例であるが、起動設定の場面においても、同様に排他制御を行うことができる。起動設定の場合には、実際に起動させることに代えて起動設定を行う。
このように、実施の形態1にかかる複合機100では、排他関係にあるアプリ同士が同時期に起動されることがないように制限するので、動作が不安定になったり、動作が停止することがなく、常に安定した状態で確実に動作させることができる。
また、実施の形態1にかかる複合機100では、アプリ相性情報をネットワーク経由で取得する場合は、常に最新情報に容易に更新できるため、新しいアプリにも十分対応することができる。
なお、実施の形態1にかかる複合機100では、VAS140が全てのアプリケーション130に対してアプリ相性情報取得処理、アプリ起動制限処理を行っているが、一部のアプリに対してのみかかる処理を行うように構成しても良い。例えば、新規アプリ117,118などサードベンダなどの第三者が開発したアプリにのみアプリ相性情報取得処理、アプリ起動制限処理を行い、プリンタアプリ111やコピーアプリ112などの既存のアプリに対してはこのようなサービスを行わないように構成することも勿論可能である。
(実施の形態2)
実施の形態1にかかる複合機100は、VAS140が全アプリケーションに対して1つのみ存在するものであったが、この実施の形態2にかかる複合機では、各アプリごとに一つのVASが起動し、各VASは対応するアプリに対してのみアプリ相性情報取得およびアプリ起動制限を行うものである。
図11は、実施の形態2にかかる複合機800の構成を示すブロック図である。図11に示すように、複合機800では、複数の仮想アプリケーションサービス(VAS)841〜848がアプリケーション130の各アプリごとに動作している点が、実施の形態1にかかる複合機100と異なっている。
VAS841〜848は、プリンタアプリ111、コピーアプリ112、ファックスアプリ113、スキャナアプリ114、ネットファイルアプリ115、工程検査アプリ116、新規アプリ117および118に対応して、アプリ相性情報取得処理およびアプリ起動制限処理を行うようになっている。
図12は、実施の形態2にかかる複合機800のVAS841〜848の構成と、VAS841〜848と各アプリ、コントロールサービス層150および汎用OS121との関係を示すブロック図である。
また、実施の形態2にかかる複合機800では、実施の形態1の複合機100と異なり、図12に示すように、各VAS841〜848と各アプリとの間にはVAS制御プロセス(デーモン)801が動作している。
このVAS制御プロセス(デーモン)801は、各アプリに対応したVAS841〜848を生成する。また、VAS制御プロセス801は、HD200に格納されたアプリ相性情報ファイル201を参照して、アプリ相性情報ファイル201にアプリ相性情報が記録されているか否かをチェックして、アプリ相性情報ファイル201を作成する必要が有るか否かを判断する。そして、起動要求が行われたアプリのアプリ相性情報が記録されていない場合は、アプリ相性情報取得スレッド141によって、アプリの仮起動、あるいは、ネットワーク経由によってアプリ相性情報を取得して、HD200にアプリ相性情報ファイル201を作成する。
仮想アプリケーションサービス(VAS)841〜848のプロセスには、ディスパッチャ144と、アプリ相性情報取得スレッド141と、アプリ起動制限スレッド142とが動作しており、各スレッドの機能は第1の実施の形態と同様である。
このように実施の形態2にかかる複合機800によれば、実施の形態1にかかる複合機100と同様に、複合機800のシステムの安定性を向上させることができる。
また、実施の形態2にかかる複合機800では、VAS841〜848は起動されるアプリケーション130ごとに別個に起動されるので、複数のアプリケーション130に対する起動制限処理を各アプリケーション130に対応したVAS841〜848によって並列に実行できることから、起動アプリケーションに対する起動制限処理を効率的に行うことができる。
なお、実施の形態2にかかる複合機800では、全てのアプリごとに別個にVAS841〜848を起動していたが、一部のアプリに対してのみVASを起動するように構成しても良い。
(実施の形態3)
実施の形態3では、必須関係もしくは推奨関係にあるアプリケーション同士を一緒に起動させることを可能とする複合機について説明する。
実施の形態3における複合機の構成は図1、図2に示す実施の形態1の構成と同様である。実施の形態3と実施の形態1とでは、主にVAS140の機能が異なる。
実施の形態3におけるVAS140は、HD200に格納された必須アプリ情報ファイル202を参照し、単独で実行できるアプリと、他のアプリ(必須アプリ)と一緒に実行させる必要のあるアプリとを識別する。必須アプリ情報ファイル202は、VAS140がアプリから必須アプリ情報を取得して、VAS140が作成してもよいし、ユーザが複合機100に格納してもよい。また、複合機100が必須アプリ情報ファイルをネットワーク経由でサーバ等から取得してもよい。
必須アプリ情報ファイルにおける必須アプリ情報としては、例えば、あるアプリに別のアプリ(プラグインソフト)を付け足して実行させることにより、新しい機能が使えるようになる場合において、当該アプリに対するプラグインソフトに関する情報がある。勿論、必須アプリ情報は、これに限定されるものではなく、2つ以上の対等なアプリを協調動作させることで、初めて本来の機能が達成できる関係にあるアプリなどもあり、ある機能(目的)を達成するために複数のアプリを起動/実行させる必要のあるアプリの組み合わせに関する全ての情報が含まれる。
また、VAS140が、必須アプリ情報ファイルを作成するための必須アプリ情報を取得するには、ネットワーク経由で必須アプリ情報を取得したり、アプリを仮起動させてアプリから取得する方法がある。
そして、VAS140は、起動要求されたアプリに対応する必須アプリ情報を取得して、そのアプリに対応する必須アプリがある場合には、当該アプリと必須アプリ同士を一緒に起動させるように制御する。例えば、(1)起動要求のあったアプリに対して必須関係にあるアプリが起動要求されていない場合、必須関係にあるアプリが起動要求されるまで、起動要求のあったアプリの起動を制限したり、(2)必須関係にあるアプリがインストールされている場合、起動要求がなくても起動要求のあったアプリと一緒に起動させたり、(3)起動要求されていない必須アプリを起動するようにユーザを促す通知(オペレーションパネルへの表示、音声ガイドや警告音など)を行うようにする。
図13は、実施の形態3にかかる複合機100のVAS140の構成と、VAS140と各アプリ、コントロールサービス層150および汎用OS121との関係を示すブロック図である。
VAS140のプロセスには、ディスパッチャ144と、制御スレッド143と、必須アプリ情報取得手段としての必須アプリ情報取得スレッド145と、アプリ起動制御手段としてのアプリ起動制御スレッド146とが動作している。ディスパッチャ144の機能は実施の形態1と同様である。
制御スレッド143は、ディスパッチャ144からのアプリ起動要求メッセージを受信して、必須アプリ情報取得処理および前述のアプリ起動制御処理を行う。
また、制御スレッド143は、起動要求のあったアプリに関する必須アプリ情報が必須アプリ情報ファイル201にない場合は、必須アプリ情報取得スレッド145に対して当該アプリに関する必須アプリ情報を取得するように処理要求を行い、取得された必須アプリ情報は、HD200の必須アプリ情報ファイル201に格納される。また、制御スレッド143は、HD200に格納されている必須アプリ情報ファイル202を参照するだけで、起動要求のあったアプリの必須アプリに関する情報が得られる場合は、必須アプリ情報の取得処理を行わずに、アプリ起動制御スレッド146に対して、必須アプリ情報に基づいてアプリ起動制御を行うように処理要求する。
実施の形態1と同様に、必須アプリ情報取得スレッド145は、アプリを仮起動する、もしくは、ネットワーク経由で必須アプリ情報を取得し、必須アプリ情報ファイル202を生成する。なお、必須アプリ情報ファイルをユーザが複合機に格納してもよい。また、複合機が、必須アプリ情報ファイルをネットワーク経由でサーバから取得してもよい。
図14は、HD200に格納される必須アプリ情報ファイル202の内容例を示す図である。図14に示すように、必須アプリ情報ファイル202には、アプリID(プロダクトIDともいう)ごとに、必須アプリの有無、アプリの種類、相手方アプリIDといった情報がそれぞれ記録されている。
アプリ起動制御スレッド146は、コントロールサービス層150からアプリ起動要求があった場合に、必須アプリ情報ファイル201を参照して、起動要求のあったアプリに関する情報が記録されているか否かを確認し、記録されている場合は、当該アプリに対する必須アプリがあるか否かを確認し、無い場合は、通常の起動処理が行われる。また、ある場合は、相手方アプリIDを見ることにより必須関係にあるアプリ同士を認識できる。図14では、ブラウザ(アプリI D:103)とプラグイン(アプリID:105)とが必須アプリとして記録されている。
また、起動要求のあったアプリに関する情報が必須アプリ情報ファイル202 に記録されていない場合、アプリ起動制御スレッド142は、制御スレッド143を介して必須アプリ情報取得スレッド141に対して、当該アプリに関する情報を取得するように要求する。
図15は、必須関係にある2つのアプリの一方にだけ起動要求がある場合に他のアプリの起動を促す通知画面例を示す図である。図15に示すように、ブラウザとプラグインは必須アプリ同士であるが、ブラウザしか起動要求されていないため、一緒に起動するように、起動エラーメッセージがオペレーションパネル210に表示されている。
次に、このように構成された複合機100のVAS140によるアプリ起動制御処理について説明する。図16は、アプリ起動制御処理手順を示すフローチャートである。
まず、ディスパッチャ144がコントロールサービス層150からアプリ起動要求メッセージを受信すると(ステップS801)、アプリ起動要求メッセージをそのアプリのプロセスIDとともに制御スレッド143に受け渡す。制御スレッド143は、アプリ起動要求メッセージとプロセスIDとをディスパッチャ144から受信すると、起動要求のあったアプリの情報が必須アプリ情報ファイル202に記録されているか否かを確認して(ステップS802)、情報が記録されている場合は、その必須アプリ情報ファイル202を参照する(ステップS803)。
また、上記ステップS802で、必須アプリ情報ファイル202に起動要求のあったアプリの情報が記録されていない場合は、必須アプリ情報ファイルを作成し(ステップS804)、その作成した必須アプリ情報ファイル202を参照する(ステップS803)。なお、上記ステップS804における必須アプリ情報ファイル作成処理のサブルーチンは、後述する図17で詳細に説明する。
アプリ起動制御スレッド146は、必須アプリ情報ファイル202を参照することによって、起動要求のあったアプリに対する必須アプリが存在するか否かを判断する(ステップS805)。存在する場合は、その必須アプリに対して起動制御処理が行われる(ステップS806)。また、ステップS805で、必須アプリが存在しない場合は、通常の起動処理が行われる(ステップS807)。なお、上記ステップS806におけるアプリの組み合わせに対する起動制御処理のサブルーチンは、後述する図18で詳細に説明する。
図17は、必須アプリ情報ファイルの作成処理の動作を説明するフローチャートである。
まず、図17において、まず、ネットワーク経由で必須アプリ情報が取得できるか否かを判断して(ステップS901)、ネットワーク経由で情報取得ができない場合は、アプリをVAS140が仮起動させる(ステップS902)。そして、必要な情報を取得する(ステップS903)。なお、必須アプリを構成するアプリのうち、すでに起動中のアプリが有る場合は、そのままでプロセス間通信によりアプリに関する情報取得が可能なため、起動していないアプリに対してのみ仮起動が行われる。
取得した情報に基づいて、HD200内に必須アプリ情報ファイル202が作成される(ステップS904)。
図18は、アプリの組み合わせに対する起動制御処理の動作を説明するフローチャートである。
まず、図18において、アプリ起動制御スレッド146は、起動要求のあったアプリに対応する必須アプリが起動要求されているか否かを判断する(ステップS1001)。
ステップS1002では、必須アプリが起動要求されるまで、起動要求のあったアプリ起動を制限するか否かを判断する。この判断は、例えば、あるアプリに対し必須アプリが起動されるまで起動しない旨を必須アプリ情報として記録しておき、それをVASが参照することにより行うことができる。
起動を制限する場合は、必須アプリの起動を促すための通知を行うようにする(ステップS1003)。通知例としては、図15に示すようなオペレーションパネル210上にエラーメッセージ表示を行うようにする。通知後は、ステップS1001に戻って、アプリ同士が一緒に起動要求されているかを判断する。仮に、ユーザがこの通知を見て気付き、ブラウザとプラグインソフトを一緒に起動させると、ステップS1001でYESが選択されることになり、ステップS1008において通常起動処理が行われる。
また、上記ステップS1002において、起動制限を行わない場合は、ステップS1004で起動要求されていないアプリがインストール済みのアプリか否かを判断し、インストール済みのアプリであれば、そのアプリを起動し(ステップS1007)、通常起動処理を行う(ステップS1008)。
また、上記ステップS1004において、起動要求されていないアプリがインストールされていないアプリの場合は、ステップS1005でインストールが可能なアプリか否かが判断され、インストールが可能であればインストール処理が行われ(ステップS1006)、上記したステップS1007以下の処理が行われる。
さらに、ステップS1005において、インストールできないアプリの場合は、必須アプリ同士を一緒に起動させることができないので処理を終了する。その際、必須アプリのインストールができなかったことをオペレーションパネル上に表示させても良い。
これまでに説明した処理は、アプリの起動時のものであるが、アプリの起動設定時においても同様の処理を行うことができる。アプリの起動設定時には、アプリを実際に起動させる代わりに、当該アプリに対する起動設定が行われる。
このように、実施の形態3にかかる複合機100では、必須関係にあるアプリ同士を一緒に起動して確実に実行させるので、複合機の動作の安定性を図ることができる。
実施の形態3においても、実施の形態1に対する実施の形態2と同様に、各アプリごとに一つのVASを起動させることができる。図19は、その場合の複合機800の構成を示すブロック図である。
図20は、複合機800のVAS841〜848の構成と、VAS841〜848と各アプリ、コントロールサービス層150および汎用OS121との関係を示すブロック図である。
図20に示すように、各VAS841〜848と各アプリとの間にはVAS制御プロセス(デーモン)801が動作している。
このVAS制御プロセス(デーモン)801は、各アプリに対応したVAS841〜848を生成する。また、VAS制御プロセス801は、HD200に格納された必須アプリ情報ファイル202を参照して、起動要求が行われたアプリについて、必須アプリ情報ファイル202に必須アプリ情報が記録されているか否かをチェックし、必須アプリ情報ファイルを作成する必要があるか否かを判断する。そして、起動要求が行われたアプリの必須アプリ情報が記録されていない場合は、必須アプリ情報取得スレッド145によって、必須アプリ情報を取得して、必須アプリ情報ファイル202を作成する。また、起動要求が行われたアプリの必須アプリ情報が記録されている場合は、必須アプリ情報ファイル202から該当する必須アプリ情報を読み出してアプリ起動制御スレッド146に送る。
仮想アプリケーションサービス(VAS)841〜848のプロセスには、ディスパッチャ144と、必須アプリ情報取得スレッド145と、アプリ起動制御スレッド146とが動作している。各スレッドの機能は、実施の形態3において説明したものと同様である。
(実施の形態4)
次に、実施の形態4について説明する。実施の形態4における複合機の全体構成は図1、図2に示したものと同様である。
実施の形態4では、複合機100が、排他関係もしくは非推奨関係にあるアプリ及び必須関係もしくは推奨関係にあるアプリの両方を表すことができるデータベースファイルを格納する。そして、VAS140がそのファイルを参照することにより、アプリの起動制御を行う。以下、排他関係もしくは非推奨関係をまとめて“排他関係”、必須関係もしくは推奨関係をまとめて“必須関係”と称する場合がある。
複合機100が格納するデータベースファイルの内容例を図21に示す。図21に示すように、各アプリ毎に、そのアプリに対して排他関係、もしくは必須関係にあるアプリが対応付けられている。排他関係又は必須関係にあるアプリの欄における各IDにおける括弧内の数字は、排他関係又は必須関係のレベルを示すものであり、マイナス側で絶対値が大きいほど、排他関係が強いことを示し、プラス側で数字が大きいほど、必須関係が強いことを示す。例えば、−1は、両方のアプリを起動することはできるが、動作が遅くなる可能性等により、両方のアプリを起動することは望ましくないことを表す(非推奨関係という)。例えば、−3は、絶対に両方を起動してはいけないことを示す。また、例えば、+1は、対応するアプリをそれぞれ単独で起動させることはできるが、+1が付されたアプリを一緒に起動することにより、より豊富な機能を使用できることを示す(推奨関係という)。また、例えば、+3は、対応するアプリを単独で使用することはできず、必ず+3が付されたアプリも起動する必要があることを示す。排他関係に関しては、上記のレベルに加えて、起動する優先順位を記載してもよい。VAS140は、図21に示すファイルを参照することにより、起動制御を行う。
また、図21に示す情報の他、各アプリの組み合わせごとの、排他関係にある理由や必須関係にある理由、その他の情報を含めてもよい。このようにすることにより、排他関係にある理由や必須関係にある理由をオペレーションパネルに表示することができる。
上記のファイルは、ユーザが複合機100に格納してもよいし、複合機100が、外部のサーバからネットワーク経由で取得するようにしてもよい。また、外部のサーバに上記のファイルが格納される場合、いずれかの複合機において、アプリの組み合わせに関して不具合が生じた場合に、その情報を当該サーバに適切な形式で送信することにより、ファイルを自動更新することも可能である。また、新規なアプリを開発し、それが他のアプリに対して必須関係にある場合や、推奨関係にある場合にも、その情報をサーバに送信することにより、ファイルを自動更新することが可能である。
なお、このファイルは必ずしも複合機内に格納する必要はなく、必要に応じてVAS140が外部にあるファイルを参照してもよい。
次に、起動設定の場面における図21のファイルを用いた起動制御の処理の手順を図22のフローチャートを参照して説明する。以下の処理はVAS140により実行されるものである。
まず、VAS140が起動設定の画面をオペレーションパネルに表示する(ステップS1101)。起動設定画面の例を図23に示す。図23に示す例は、「簡易コピー」が既に起動設定されている場合の例である。
次に、ユーザが更に起動設定したいアプリを選択する。VAS140は選択されたアプリのプロダクトIDを取得し、そのプロダクトIDに基づき、図21に示すファイルを検索する(ステップS1102)。
そして、そのプロダクトIDに対応するアプリのプロダクトID及び関連する情報(排他、必須関係にある理由等)を取得する(ステップS1103)。例えば、図21の例では、起動設定しようとするアプリのプロダクトIDが101であれば、102(−3)、103(+1)を取得する。
そして、取得した情報に基づき、起動制御を行う。取得したプロダクトIDに対応するアプリが排他関係にある場合、すなわち、レベルがマイナスである場合には(ステップS1104におけるY)、排他関係にあるアプリが既に起動設定されているかどうかをチェックする(ステップS1105)。起動設定されていなければ、起動設定のために選択したアプリの起動設定を行う(ステップS1106)。
排他関係にあるアプリが既に起動設定されている場合には(ステップS1105におけるY)、レベルをチェックし(ステップS1107)、画面への警告表示(レベルが低い場合)(ステップS1108)、もしくは、いずれのアプリの起動設定を行うかを選択させる選択画面を表示する(レベルが高い場合)(ステップS1109)。警告表示とは、起動設定してよいかどうかをユーザに尋ねる画面である。そして、警告表示の場合は、ユーザの判断に応じて、起動設定しようとしているアプリの起動設定の中止、もしくは、起動設定を行う(ステップS1110)。選択画面の場合には、選択されたアプリの起動設定を行う(ステップS1111)。なお、この場合、排他関係にあって、起動設定されていたアプリの起動設定は解除される。
取得したプロダクトIDに対応するアプリが必須関係にある場合(ステップS1104におけるN)、当該アプリが起動設定されているか否かをチェックし(ステップS1112)、起動設定されていれば、起動設定のために選択したアプリの起動設定を行う(ステップS1113)。起動設定されていない場合には次の処理を行う(ステップS1112におけるN)。
必須関係のレベルをチェックし(ステップS1114)、必須関係のレベルが高く、必ず両方のアプリを起動設定しなければならない場合には、必須アプリの起動設定を促す画面を表示する(ステップS1115)。そして、ユーザの判断に応じて起動設定する(ステップS1116)。この場合、両方のアプリが起動設定される。
例えば、図23に示した画面において、「編集印刷ツール」に対し、「簡易スキャナ」が必須アプリであるとする。このとき、図24に示すように「編集印刷ツール」を起動設定のために選択すると、「簡易スキャナ」は起動設定されていないので、図25に示す画面が表示される。ここでOKを押すことにより、「編集印刷ツール」と「簡易スキャナ」の両方が起動設定される。
ステップS1114において、必須関係のレベルが低く、推奨関係(例えば拡張機能)にある場合には、取得したプロダクトIDのアプリが、起動設定のために選択したアプリに対して拡張機能を付加できる旨を通知する画面を表示し(ステップS1117)、ユーザの判断に応じて起動設定する(ステップS1118)。
例えば、図24の例において、「ユーザースタンプ追加モジュール」及び「ユーザーコメント追加モジュール」が、「編集印刷ツール」に対して拡張機能を提供できる関係にある場合に、図26に示す画面が表示され、OKを押すことにより、3つのアプリが起動設定される。
なお、必須関係にあるアプリを起動設定する場合に、ユーザに問い合わせを行うことなく、自動的の起動設定してもよい。
また、必須関係にあるアプリが複合機100にインストールされていない場合には、図25の画面を表示する前に、図27に示す画面を表示し、必須アプリをダウンロードすることもできる。また、ダウンロードする代わりに、図28に示すように、アプリの問い合わせ先を表示するようにしてもよい。
上記の例において、起動設定しようとするアプリが、既に起動設定されたアプリに対して排他的関係にある場合において、前述した優先順位をVAS140が参照し、優先順位の高いアプリを優先的に自動的に起動設定してもよい。例えば、起動設定しようとするアプリのほうが既に起動設定されたアプリより優先順位が高い場合、既に起動設定されたアプリの起動設定を解除し、起動設定しようとするアプリの起動設定を行う。
なお、上記の例は起動設定の場面における例であるが、実際の起動の場面、もしくは、アプリのインストールの場面においても、図21のファイルをVAS140が参照することにより、起動、もしくはインストールの制御を、起動設定の場合と同じようにして行うことが可能である。
なお、本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
実施の形態1にかかる複合機の構成を示すブロック図である。 実施の形態1にかかる複合機のハードウェア構成を示すブロック図である。 実施の形態1にかかる複合機のVASの構成と、VASと各アプリ、コントロールサービス層および汎用OSとの関係を示すブロック図である。 HDに格納されるアプリ相性情報ファイルの内容例を示す説明図である。 HDに格納されるその他のファイルの内容例を示す説明図である。 ユーザ選択画面の一表示例を示す図である。 同時期に起動要求のあった複数のアプリのうち相性に基づいて起動制限を行う処理手順を示すフローチャートである。 アプリ相性情報ファイルの作成処理の動作を説明するフローチャートである。 仮起動を説明するための図である。 排他関係にあるアプリの組み合わせに対する起動制限処理の動作を説明するフローチャートである。 実施の形態2にかかる複合機の構成を示すブロック図である。 実施の形態2にかかる複合機のVASの構成と、VASと各アプリ、コントロールサービス層および汎用OSとの関係を示すブロック図である。 実施の形態3にかかる複合機のVASの構成と、VASと各アプリ、コントロールサービス層および汎用OSとの関係を示すブロック図である。 HDに格納される必須アプリ情報ファイルの内容例を示す説明図である。 必須アプリの一方にだけ起動要求がある場合に必須アプリ同士の起動を促す通知画面例を示す図である。 実施の形態3におけるアプリ起動制御処理手順を示すフローチャートである。 必須アプリ情報ファイルの作成処理の動作を説明するフローチャートである。 必須アプリの組み合わせに対する起動制御処理の動作を説明するフローチャートである。 実施の形態3にかかる複合機の構成の他の例を示すブロック図である。 実施の形態3にかかる複合機のVASの他の構成を示す図である。 実施の形態4におけるデータベースファイルの内容例を示す図である。 実施の形態4における起動制御の処理手順を示すフローチャートである。 起動設定画面の例を示す図である。 アプリを選択したことを示す画面である。 必須関係にあるアプリの起動設定を促す画面である。 推奨関係にあるアプリの起動設定を促す画面である。 アプリのダウンロードを行う画面である。 アプリの取得に関する情報を表示する画面である。
符号の説明
100 複合機
101 白黒レーザプリンタ
102 カラーレーザプリンタ
103 ハードウェアリソース
110 ソフトウェア群
111 プリンタアプリ
112 コピーアプリ
113 ファックスアプリ
114 スキャナアプリ
115 ネットファイルアプリ
116 工程検査アプリ
117,118 新規アプリ
120 プラットホーム
121 汎用OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
130 アプリケーション
140,841〜848 仮想アプリケーションサービス(VAS)
141 アプリ相性情報取得スレッド
142 アプリ起動制限スレッド
143 制御スレッド
144 ディスパッチャ
145 必須アプリ情報取得スレッド
146 アプリ起動制御スレッド
150 コントロールサービス層
200 ハードディスク(HD)
201 アプリ相性情報ファイル
202 必須アプリ情報ファイル
210 オペレーションパネル
211 起動要求アプリ一覧
212 起動不可アプリ一覧
213 ラジオボタン
800 複合機
801 VAS制御プロセス

Claims (23)

  1. 複数のアプリケーションを搭載可能に構成された画像形成装置において、
    アプリケーションの組み合わせの適否に関する情報であるアプリ相性情報をアプリケーション毎に格納するためのアプリ相性情報記憶手段と、
    前記画像形成装置が備えるアプリケーションを仮起動し、仮起動したアプリケーションから当該アプリケーションに関するアプリ相性情報を取得し、当該アプリ相性情報を前記アプリ相性情報記憶手段に格納するアプリ相性情報取得手段と、
    前記アプリ相性情報記憶手段に格納されたアプリ相性情報を参照し、当該アプリ相性情報に基づき、アプリケーションに対する起動制御処理を行う起動制御手段とを有し、
    前記仮起動は、通常起動とは別の起動であって、前記アプリケーションに前記アプリ相性情報取得手段との間で通信処理を行わせるための起動であることを特徴とする画像形成装置。
  2. 前記アプリ相性情報記憶手段に格納されたアプリ相性情報は、複数アプリケーション間の排他関係もしくは非推奨関係を示す情報であり、
    前記起動制御手段は、排他関係もしくは非推奨関係にある複数のアプリケーションの中から少なくとも1つのアプリケーションを選択させる画面を前記画像形成装置のオペレーションパネルに表示する請求項1に記載の画像形成装置。
  3. 前記アプリ相性情報記憶手段に格納されたアプリ相性情報は、複数アプリケーション間の排他関係もしくは非推奨関係を示す情報であり、
    前記起動制御手段は、排他関係もしくは非推奨関係にある複数のアプリケーションのうち、少なくとも1つのアプリケーションの起動または起動設定を行う請求項1に記載の画像形成装置。
  4. 前記起動制御手段は、排他関係もしくは非推奨関係にある複数のアプリケーションの中から優先順位の高いアプリケーションを起動もしくは起動設定する請求項3に記載の画像形成装置。
  5. 前記アプリ相性情報記憶手段に格納されたアプリ相性情報は、アプリケーションの排他関係もしくは非推奨関係を示す情報であり、
    前記起動制御手段は、あるアプリケーションと他のアプリケーションとの組み合わせが非推奨関係にある場合に、警告画面を前記画像形成装置のオペレーションパネルに表示する請求項1に記載の画像形成装置。
  6. 前記起動制御手段は、あるアプリケーションに対する起動要求もしくは起動設定要求がなされたときに、前記アプリ相性情報記憶手段を参照し、当該アプリケーションに対して排他関係もしくは非推奨関係にあるアプリケーションの識別子を取得して、前記起動制御処理を行う請求項2ないし5のうちいずれか1項に記載の画像形成装置。
  7. 前記アプリ相性情報記憶手段に格納されたアプリ相性情報は、アプリケーションの排他関係もしくは非推奨関係を示す情報であり、当該排他関係もしくは非推奨関係を示す情報は、排他関係もしくは非推奨関係の強さを示すレベルを含み、
    前記起動制御手段は、当該レベルに応じて、前記起動制御処理を行う請求項1に記載の画像形成装置。
  8. 前記アプリケーションは、特定の引数が指定されたときに仮起動を行う手順を表す記述を含み、前記アプリ相性情報取得手段は、前記特定の引数を指定することにより前記アプリケーションを仮起動する請求項1ないし7のうちいずれか1項に記載の画像形成装置。
  9. 画像形成処理で使用されるハードウェア資源と、
    ハードウェア資源の制御を行うコントロールサービスと、
    コントロールサービスをサーバとしたクライアントプロセスとして動作し、前記アプリケーションをクライアントとしたサーバプロセスとして動作する仮想アプリケーションサービスを有する請求項1ないし8のうちいずれか1項に記載の画像形成装置。
  10. 前記仮想アプリケーションサービスは前記アプリ相性情報取得手段及び前記起動制御手段を含む請求項9に記載の画像形成装置。
  11. 複数のアプリケーションを搭載可能に構成された画像形成装置におけるアプリケーションの起動制御方法であって、
    前記画像形成装置は、アプリケーションの組み合わせの適否に関する情報であるアプリ相性情報をアプリケーション毎に格納するためのアプリ相性情報記憶手段を備え、前記起動制御方法は、
    前記画像形成装置が備えるアプリ相性情報取得手段が、前記画像形成装置が備えるアプリケーションを仮起動し、仮起動したアプリケーションから当該アプリケーションに関するアプリ相性情報を取得し、当該アプリ相性情報を前記アプリ相性情報記憶手段に格納するアプリ相性情報取得ステップと、
    前記画像形成装置が備える起動制御手段が、前記アプリ相性情報記憶手段に格納されたアプリ相性情報を参照し、当該アプリ相性情報に基づき、アプリケーションに対する起動制御処理を行う起動制御ステップとを有し、
    前記仮起動は、通常起動とは別の起動であって、前記アプリケーションに前記アプリ相性情報取得手段との間で通信処理を行わせるための起動であることを特徴とする起動制御方法。
  12. 前記アプリ相性情報記憶手段に格納されたアプリ相性情報は、複数アプリケーション間の排他関係もしくは非推奨関係を示す情報であり、
    前記起動制御ステップにおいて、前記画像形成装置は、排他関係もしくは非推奨関係にある複数のアプリケーションの中から少なくとも1つのアプリケーションを選択させる画面を前記画像形成装置のオペレーションパネルに表示する請求項11に記載の起動制御方法。
  13. 前記アプリ相性情報記憶手段に格納されたアプリ相性情報は、複数アプリケーション間の排他関係もしくは非推奨関係を示す情報であり、
    前記起動制御ステップにおいて、前記画像形成装置は、排他関係もしくは非推奨関係にある複数のアプリケーションのうち、少なくとも1つのアプリケーションの起動または起動設定を行う請求項11に記載の起動制御方法。
  14. 前記起動制御ステップにおいて、前記画像形成装置は、排他関係もしくは非推奨関係にある複数のアプリケーションの中から優先順位の高いアプリケーションを起動もしくは起動設定する請求項13に記載の起動制御方法。
  15. 前記アプリ相性情報記憶手段に格納されたアプリ相性情報は、アプリケーションの排他関係もしくは非推奨関係を示す情報であり、
    前記起動制御ステップにおいて、前記画像形成装置は、あるアプリケーションと他のアプリケーションとの組み合わせが非推奨関係にある場合に、警告画面を前記画像形成装置のオペレーションパネルに表示する請求項11に記載の起動制御方法。
  16. 前記起動制御ステップにおいて、前記画像形成装置は、あるアプリケーションに対する起動要求もしくは起動設定要求がなされたときに、前記アプリ相性情報記憶手段を参照し、当該アプリケーションに対して排他関係もしくは非推奨関係にあるアプリケーションの識別子を取得して、前記起動制御処理を行う請求項12ないし15のうちいずれか1項に記載の起動制御方法。
  17. 前記アプリ相性情報記憶手段に格納されたアプリ相性情報は、アプリケーションの排他関係もしくは非推奨関係を示す情報であり、当該排他関係もしくは非推奨関係を示す情報は、排他関係もしくは非推奨関係の強さを示すレベルを含み、
    前記起動制御ステップにおいて、前記画像形成装置は、当該レベルに応じて、前記起動制御処理を行う請求項11に記載の起動制御方法。
  18. 前記アプリケーションは、特定の引数が指定されたときに仮起動を行う手順を表す記述を含み、前記アプリ相性情報取得ステップにおいて、前記画像形成装置は、前記特定の引数を指定することにより前記アプリケーションを仮起動する請求項11ないし17のうちいずれか1項に記載の起動制御方法。
  19. 前記画像形成装置は、
    画像形成処理で使用されるハードウェア資源と、
    ハードウェア資源の制御を行うコントロールサービスと、
    コントロールサービスをサーバとしたクライアントプロセスとして動作し、前記アプリケーションをクライアントとしたサーバプロセスとして動作する仮想アプリケーションサービスを有する請求項11ないし18のうちいずれか1項に記載の起動制御方法。
  20. 前記仮想アプリケーションサービスは前記アプリ相性情報取得ステップ及び前記起動制御ステップを実行する請求項19に記載の起動制御方法。
  21. 複数のアプリケーションを搭載可能に構成され、アプリケーションの組み合わせの適否に関する情報であるアプリ相性情報をアプリケーション毎に格納するためのアプリ相性情報記憶手段を備えた画像形成装置を、
    前記画像形成装置が備えるアプリケーションを仮起動し、仮起動したアプリケーションから当該アプリケーションに関するアプリ相性情報を取得し、当該アプリ相性情報を前記アプリ相性情報記憶手段に格納するアプリ相性情報取得手段、
    前記アプリ相性情報記憶手段に格納されたアプリ相性情報を参照し、当該アプリ相性情報に基づき、アプリケーションに対する起動制御処理を行う起動制御手段、として機能させるプログラムであり、
    前記仮起動は、通常起動とは別の起動であって、前記アプリケーションに前記アプリ相性情報取得手段との間で通信処理を行わせるための起動であることを特徴とするプログラム
  22. 前記アプリケーションは、特定の引数が指定されたときに仮起動を行う手順を表す記述を含み、前記アプリ相性情報取得手段は、前記特定の引数を指定することにより前記アプリケーションを仮起動する請求項21に記載のプログラム。
  23. 請求項21又は22に記載のプログラムを格納したコンピュータ読み取り可能な記録媒体。
JP2003317281A 2002-09-13 2003-09-09 画像形成装置およびアプリ起動制御方法 Expired - Lifetime JP4276909B2 (ja)

Priority Applications (10)

Application Number Priority Date Filing Date Title
JP2003317281A JP4276909B2 (ja) 2002-09-13 2003-09-09 画像形成装置およびアプリ起動制御方法
EP20030255730 EP1398948B1 (en) 2002-09-13 2003-09-12 Image forming apparatus, methods used therein and a computer readable storage medium
US10/660,723 US20040109188A1 (en) 2002-09-13 2003-09-12 Image forming apparatus and methods used in the image forming apparatus
CNA031648738A CN1495580A (zh) 2002-09-13 2003-09-15 成象装置及用在成象装置中的方法
CN2006101214658A CN1921546B (zh) 2002-09-13 2003-09-15 成像装置及用在成像装置中的方法
US11/923,236 US8752041B2 (en) 2002-09-13 2007-10-24 Image forming apparatus and methods used in the image forming apparatus
US11/923,207 US8305591B2 (en) 2002-09-13 2007-10-24 Image forming apparatus and methods used in the image forming apparatus
US11/923,178 US8516475B2 (en) 2002-09-13 2007-10-24 Image forming apparatus and methods used in the image forming apparatus
US13/628,933 US9019516B2 (en) 2002-09-13 2012-09-27 Image forming apparatus and methods used in the image forming apparatus
US13/907,384 US9167113B2 (en) 2002-09-13 2013-05-31 Image forming apparatus and methods used in the image forming apparatus

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2002269282 2002-09-13
JP2002269281 2002-09-13
JP2003317281A JP4276909B2 (ja) 2002-09-13 2003-09-09 画像形成装置およびアプリ起動制御方法

Publications (2)

Publication Number Publication Date
JP2004127280A JP2004127280A (ja) 2004-04-22
JP4276909B2 true JP4276909B2 (ja) 2009-06-10

Family

ID=32303290

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003317281A Expired - Lifetime JP4276909B2 (ja) 2002-09-13 2003-09-09 画像形成装置およびアプリ起動制御方法

Country Status (1)

Country Link
JP (1) JP4276909B2 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4655567B2 (ja) * 2004-09-28 2011-03-23 富士ゼロックス株式会社 文書管理システムおよび文書管理装置および文書管理プログラム
JP2006293994A (ja) * 2005-03-14 2006-10-26 Ricoh Co Ltd 画像形成装置、情報処理方法、プログラム、及び記録媒体
US8488135B2 (en) 2005-03-14 2013-07-16 Ricoh Company, Ltd. Easy modification to method of controlling applications in image forming apparatus
JP4847168B2 (ja) * 2005-06-28 2011-12-28 キヤノン株式会社 アプリケーション管理システム、アプリケーション管理方法およびプログラム
JP3992721B2 (ja) 2005-11-09 2007-10-17 株式会社日立製作所 情報処理装置およびプロセス制御方法
JP4754373B2 (ja) * 2006-03-15 2011-08-24 株式会社リコー 画像形成装置、画像形成方法、その方法をコンピュータに実行させるプログラム
JP2007299332A (ja) * 2006-05-02 2007-11-15 Sony Computer Entertainment Inc 情報処理システム、コンピュータの制御方法及びプログラム
JP5026148B2 (ja) * 2006-09-19 2012-09-12 株式会社リコー 画像処理装置、方法、及びプログラム
JP2008098944A (ja) * 2006-10-11 2008-04-24 Ricoh Co Ltd 画像処理装置
US8448193B2 (en) 2007-04-27 2013-05-21 Ricoh Company, Ltd. Image forming device, information processing method, and information processing program
JP4663688B2 (ja) * 2007-06-26 2011-04-06 株式会社日立製作所 端末
JP4934113B2 (ja) * 2008-08-01 2012-05-16 株式会社オートネットワーク技術研究所 制御装置及びコンピュータプログラム
JP4696151B2 (ja) 2008-10-23 2011-06-08 株式会社エヌ・ティ・ティ・ドコモ 情報処理装置およびメモリ管理方法
JP5671880B2 (ja) * 2010-08-25 2015-02-18 株式会社リコー 画像形成装置、プログラム状態判定方法、プログラム状態判定プログラム、及びプログラム状態判定システム
JP5476485B2 (ja) * 2011-01-05 2014-04-23 株式会社日立製作所 サービスの予約管理方法、仮想計算機システム及び記憶媒体
JP5891794B2 (ja) * 2011-02-09 2016-03-23 株式会社リコー 情報処理装置及びプログラム
JP5948855B2 (ja) 2011-02-16 2016-07-06 株式会社リコー 機器、プログラム管理方法、プログラム管理プログラム、及び記録媒体
JP5244934B2 (ja) * 2011-03-16 2013-07-24 株式会社東芝 機能競合制御装置およびその方法
JP5365659B2 (ja) * 2011-04-18 2013-12-11 コニカミノルタ株式会社 画像形成装置、アプリケーション制御方法、アプリケーション制御プログラム
US9058205B2 (en) * 2011-10-24 2015-06-16 Symantec Corporation Automatically performing operations on applications based on dependencies on other applications
JP6089794B2 (ja) * 2013-03-04 2017-03-08 株式会社リコー 機器、情報処理システム、情報処理方法、及びプログラム
JP5601389B2 (ja) * 2013-03-19 2014-10-08 株式会社リコー 画像形成装置、データ管理方法、及びプログラム
JP2015052852A (ja) * 2013-09-05 2015-03-19 富士通株式会社 情報処理装置、機能制限プログラム及び機能制限方法
JP6100194B2 (ja) * 2014-03-31 2017-03-22 京セラドキュメントソリューションズ株式会社 画像形成装置、及び画像形成方法
WO2016038788A1 (ja) * 2014-09-11 2016-03-17 日本電気株式会社 通信装置、通信リクエスト処理システム、通信リクエスト処理方法および通信リクエスト処理プログラム
JP6378066B2 (ja) * 2014-11-27 2018-08-22 クラリオン株式会社 情報処理装置および実行管理プログラム
JP6877876B2 (ja) * 2016-01-25 2021-05-26 キヤノン株式会社 印刷装置及びその制御方法、並びにプログラム
JP6843581B2 (ja) 2016-10-24 2021-03-17 キヤノン株式会社 画像形成装置、その制御方法及びプログラム
JP6330933B2 (ja) * 2017-02-08 2018-05-30 株式会社リコー 機器、情報処理システム、情報処理方法、及びプログラム
JP6987541B2 (ja) * 2017-06-16 2022-01-05 株式会社東芝 画像形成装置及び画像形成装置の制御方法
JP6754471B1 (ja) 2019-06-11 2020-09-09 株式会社 日立産業制御ソリューションズ 業務システムおよびプログラム

Also Published As

Publication number Publication date
JP2004127280A (ja) 2004-04-22

Similar Documents

Publication Publication Date Title
JP4276909B2 (ja) 画像形成装置およびアプリ起動制御方法
US9167113B2 (en) Image forming apparatus and methods used in the image forming apparatus
JP2008181237A (ja) 画像処理装置およびディジタル複写機
JP4344203B2 (ja) 画像形成装置および情報表示方法
JP6066006B2 (ja) 画像形成装置
JP4373742B2 (ja) 画像形成装置およびアプリ起動制限方法
JP3677478B2 (ja) 画像形成装置、アプリケーション利用制限方法およびその方法をコンピュータに実行させるプログラム
JP2004030601A (ja) リソース情報によりアプリケーション起動判断を行う装置及び方法
JP4504447B2 (ja) 画像形成装置、アプリケーション起動判断方法、プログラム、及び記録媒体
JP4394740B2 (ja) 画像形成装置、方法、及びプログラム
JP4128506B2 (ja) 画像形成装置およびアプリケーション情報取得方法
JP4676977B2 (ja) 画像形成装置、アプリケーション情報取得方法、及びプログラム
JP4246560B2 (ja) 情報処理装置、情報処理方法、プログラム、及び記録媒体
JP5333561B2 (ja) 情報処理装置、プログラム、及び方法
JP4677054B2 (ja) 画像形成装置、プログラム、記録媒体、及び方法
JP2004129220A (ja) 画像形成装置およびバージョンチェック方法
JP5348082B2 (ja) 画像形成装置、機能キー割り付け方法、プログラム、及び記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060615

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080521

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080610

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080808

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080909

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081110

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090309

R150 Certificate of patent or registration of utility model

Ref document number: 4276909

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120313

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130313

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140313

Year of fee payment: 5

EXPY Cancellation because of completion of term