Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5814526B2 - 画像形成装置、画像形成装置の制御方法、およびプログラム - Google Patents
[go: Go Back, main page]

JP5814526B2 - 画像形成装置、画像形成装置の制御方法、およびプログラム - Google Patents

画像形成装置、画像形成装置の制御方法、およびプログラム Download PDF

Info

Publication number
JP5814526B2
JP5814526B2 JP2010189515A JP2010189515A JP5814526B2 JP 5814526 B2 JP5814526 B2 JP 5814526B2 JP 2010189515 A JP2010189515 A JP 2010189515A JP 2010189515 A JP2010189515 A JP 2010189515A JP 5814526 B2 JP5814526 B2 JP 5814526B2
Authority
JP
Japan
Prior art keywords
application
application module
module
image forming
forming apparatus
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 - Fee Related
Application number
JP2010189515A
Other languages
English (en)
Other versions
JP2012048464A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2010189515A priority Critical patent/JP5814526B2/ja
Priority to US13/216,500 priority patent/US8817279B2/en
Priority to CN201110244433.8A priority patent/CN102387276B/zh
Publication of JP2012048464A publication Critical patent/JP2012048464A/ja
Application granted granted Critical
Publication of JP5814526B2 publication Critical patent/JP5814526B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/48Indexing scheme relating to G06F9/48
    • G06F2209/485Resource constraint

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本発明は、外部からアプリケーションをダウンロードし実行する画像形成装置、およびその画像形成装置の制御方法、およびプログラムに関する。
画像形成装置のリアルタイムOS上に組み込みシステム向けの実行環境(Java(登録商標))を構築し、画像形成装置の制御を行ことのできるアプリケーションを外部からダウンロードし、構築した実行環境上で実行させることが知られている。この実行環境を構築することにより、ユーザは画像形成装置にアプリケーションを追加することが可能になる。
しかし、画像形成装置上の実行環境はPCの世界とは異なり、限られたリソースの中で複数のアプリケーションが共存しなくてはいけない。画像形成装置は、PCと比較して搭載されるCPUやメモリと言ったハードリソースがPCと比べて少ないためである。また、印刷処理等のユーザビリティを鑑みると、画像処理のリアルタイム性を確保するためにアプリケーションのリソース使用量に制限を課す必要がある。例えば、画像形成装置の表示部を利用するアプリケーションについて、そのアプリケーションの起動数に上限を設けるなどの制限がある。特許文献1における画像形成装置は、アプリケーションのリソース使用量に制限を設けている。具体的には、アプリケーションが要求するリソース量と、起動中のアプリケーションが使用しているリソース量の合計が、予め決められた上限値に達したかどうかを判定する。そして、画像形成装置はその判定の結果に基づきアプリケーションの起動処理をコントロールする。このように、画像処理にリアルタイム性が求められる画像形成装置は、アプリケーションを起動するために必要な限られたリソース(メモリやストレージ、UI利用上限など)に十分な空きが存在しない場合、アプリケーションの起動を制限する。
特開2009−283002号公報
従来のアプリケーションは、1つのアプリケーションに1つのアプリケーションモジュールを想定していた。しかし、1つのアプリケーションが複数のアプリケーションモジュールを含む形態(以下、このようなアプリケーションを複合型アプリケーションと称する)も考えられる。そして、従来はそのような形態のアプリケーションを、リソース制限がかけられた画像形成装置でどのように起動するかについて考えられていなかった。
本発明は、リソースの使用量に制限がかけられている画像形成装置において、複合型アプリケーションを適切に起動することを目的とする。
本発明の一実施形態に係る画像形成装置は、アプリケーションを実行する際に利用するリソースの使用量を制限する画像形成装置であって、1つのアプリケーションに複数のアプリケーションモジュールが含まれている複合型アプリケーションをインストールするインストール手段と、前記インストール手段によりインストールされた複合型アプリケーションを起動する際に、前記リソースの使用量の制限により前記複合型アプリケーションに含まれる複数のアプリケーションモジュールを起動できない場合、前記複数のアプリケーションモジュールの内の所定のアプリケーションモジュールを起動し、該起動した所定のアプリケーションモジュールに対応するシンボルを前記画像形成装置の表示部に表示する表示手段と、前記表示手段により表示されたシンボルが選択され画像処理が指示された場合、該シンボルに対応するアプリケーションモジュールを利用し画像処理を行う画像形成手段と、前記複数のアプリケーションモジュールの内の起動に失敗したアプリケーションモジュールの再起動を指示することが可能なアプリケーション管理画面であって、前記起動に失敗したアプリケーションモジュールの再起動の指示を受け付ける指示部のみならず、該起動した所定のアプリケーションモジュールの停止の指示を受け付ける指示部も含む前記アプリケーション管理画面を提供する提供手段と、を有し、前記複数のアプリケーションモジュールは、共通アプリケーションモジュールと、個別アプリケーションモジュールとから構成され、前記共通アプリケーションモジュールは、前記個別アプリケーションモジュールが外部システムと通信を行っている旨を表示するアプリケーションモジュールであり、前記表示手段は、前記リソースの使用量の制限により前記複合型アプリケーションに含まれる複数のアプリケーションモジュールを起動できない場合、前記共通アプリケーションモジュールと、前記個別アプリケーションの内の所定の個別アプリケーションモジュールの両方のアプリケーションモジュールを起動し、該起動した前記共通アプリケーションモジュールに対応するシンボルを表示することなく、該起動した所定の個別アプリケーションモジュールに対応するシンボルを表示することを特徴とする。
本発明により、リソースの使用量に制限がかけられている画像形成装置において、複合型アプリケーションを適切に起動することができる。
本発明の実施形態における画像形成装置の構成図。 本発明の実施形態における画像形成装置のソフトウエア構造図。 本発明の実施形態における操作部112のタッチパネルに表示される画面を示す図。 本発明の実施形態におけるアプリケーション400の基本構成図。 本発明の実施形態における外部サービスA接続用アプリケーション部402により表示されるUIを示す図。 本発明の実施形態に送信処理用アプリケーション部401により表示されるUIを示す図。 (a)本発明の実施形態におけるアプリケーションを構成する各アプリケーションモジュールの起動優先順位を示した図。(b)本発明の実施形態におけるアプリケーションを構成する各アプリケーションモジュールが機能を提供するために最低限必要なアプリケーションモジュールの組み合わせを示した図。 本発明の実施形態におけるアプリケーションの起動処理に関するフローチャート。 本発明の実施形態におけるUIアプリケーションの起動状態を管理する管理テーブルを示す図。 本発明の実施形態における起動に失敗した各UIアプリケーションについて、再度初期化処理を行うことのできるサーブレットアプリケーションにより表示されるUIを示す図。 本発明のポイントを示す図。 (a)ケース1のシンボル表示を示す図。(b)ケース2のシンボル表示を示す図。(c)ケース3、4のシンボル表示を示す図。
以下、図面を参照して本発明の実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
(第1の実施形態)
以下、本発明の実施の形態について図面を参照して詳細に説明する。実施例1におけるシステム(不図示)は、画像形成装置、および2つの外部サーバがインターネットを介して接続されるシステムを想定している。実施例1における外部サーバは2つであるが、外部サーバの数に制限はない。なお、夫々の外部サーバは複数台のサーバから構成されているサーバシステムであっても良い。
図1は、実施例1における画像形成装置の内部構成を示すブロック図である。図1に示す画像形成装置は、画像形成装置内の各部を制御するコントローラユニット100と、操作部112と、スキャナ部123と、プリンタ部125とを備える。操作部112は、例えば、数字を入力するためのテンキー、処理の実行を行うためのスタートキーなどのハードキー、および液晶タッチパネル等で構成される。操作部112は、ユーザが画像形成装置を操作するためのユーザインタフェースを提供する。操作部112のタッチパネルに表示される各設定項目を表すアイコンやボタン(もしくはハードキー)をタッチ(押下)することで、画像形成装置に設定や情報の入力を行うことが可能である。操作部112は表示部に相当する。
スキャナ部123は、原稿を読み取り、読み取った原稿情報から画像データを生成する画像処理を行う。プリンタ部125は、記録用紙を搬送し、その記録用紙に画像データを可視画像として画像形成し印刷する画像処理を行う。
コントローラユニット100は、バス122を介してスキャナ部123に接続され、またバス124を介してプリンタ部125に接続される。コントローラユニット100は、スキャナ部123、およびコントローラユニット100に対して画像処理の指示を送信する。また、コントローラユニット100は、LAN113、公衆回線(WAN)114、および無線115を介して他の機器に接続し、画像情報やデバイス情報の入出力制御を行う。
CPU101は、システム全体を制御するユニット(Central Processing Unit)である。RAM102は、CPU101が動作するためのシステムワークメモリであり、画像データを一時記憶するためのユニット(Random Access Memory)でもある。ROM103はデータを格納するユニット(Read Only Memory)であり、ブートROMである。ROM103には、システムのブートプログラムが格納されている。HDD104は、システムソフトウェアや画像データ、後述する通信部111が有するすべての無線通信に関する情報(無線通信の仕様)を格納するユニット(Hard Disc Drive)である。また、HDD104は、後述するリアルタイムOS201、および仮想マシン205上で動作するアプリケーションも格納する。
画像形成装置では、使用したい機能を実装したアプリケーションをインストールすることで機能を増やすことができる。アプリのインストールにより、画像形成装置上で各種機能を動かすためのアプリケーションプログラムがRAM102やHDD104に記憶される。なお、後述するが、画像形成装置にアプリケーションをインストールする場合、画像形成装置の各種機能を制御するOS上ではなく、そのOS上で動作する仮想環境上にインストールされる。
操作部I/F106は、ユーザインターフェース(UI)である操作部112との間のインターフェース部であり、操作部112に表示すべきデータを操作部112に対して出力する。また、操作部112からユーザが入力した情報を、CPU101に伝える役割を行う。Network部109は、LAN113に接続され、ネットワークを介して外部と情報の送受信を行う。MODEM110は、公衆回線114に接続され、情報の入出力を行う。通信部111は、アンテナ(不図示)を介して無線(WIRELESS)115に接続され、情報の入出力を行う。また、通信部111は、複数種類の無線通信を行うことが可能である。上記各デバイスがシステムバス107上に配置される。
イメージバス(ImageBus)I/F105は、システムバス107と、画像データを高速で転送する画像バス108とを接続し、データ構造を変換するバスブリッジである。画像バス108は、PCIバスまたはIEEE1394等で規定されるバスである。
画像バス108上に配置される各デバイスにおいて、ラスターイメージプロセッサ(RIP)116は、PDLコードをビットマップイメージに展開する。デバイスI/F部117は、スキャナ部123またはプリンタ部125をコントローラユニット100に接続し、画像データの同期系/非同期系の変換を行う。
スキャナ画像処理部118は、入力画像データに対して補正、加工、または編集を行う。プリンタ画像処理部119は、プリント出力画像データに対して、プリンタ部125に合った補正、解像度変換等を行う。画像回転部120は、画像データの回転を行う。画像処理部121は、画像データに対する、JPEG、JBIG、MMR、MH等の圧縮伸張処理や、PDF、TIFF、OCR、暗号化等のフォーマット変換処理を行う。
次に、図1の画像形成装置のソフトウェア構成について図2を用いて説明する。図2は、画像形成装置のHDD104に記憶された各機能を実現するためのプログラムをRAM102にロードし、CPU101により実行されることで実現する。
201は画像形成装置全体を制御する本発明の第1の実行環境であり、画像形成装置の各種機能をリアルタイムに制御可能な各ユニット、またはCPUに対し命令を発信する。OS201は、クリティカルに複写機のオプション装置、拡張カードを含む各機能を制御することが可能なライブラリ群を含む。そして、その上位で動作するアプリケーションに対して、インターフェース・コマンドを提供するモジュール群により構成される。202は第1の実行環境201上で動作するコントローラ制御部であり、スキャナ部123、プリンタ部125、などを制御するモジュールにより構成される。
203はアプリケーション・プログラミング・インターフェース(以下API)である。API203は、OS201上で動作するアプリケーションからの命令に応答して、コントローラ制御部202にアクセスする処理とNetwork部109を介してネットワークに接続された機器等に制御コマンドを送る機能を実現する。204は第1の実行環境201上で動作するアプリケーションであり、API203を使用しコントローラ制御部202に各種処理を依頼する。
仮想マシン205は、特定のアプリケーションを実行するための第2の実行環境であり、例えば、Java(登録商標)の仮想マシンなどにより実現されるものである。API206は、第2の実行環境である仮想マシン205上のアプリケーションが、第1の実行環境であるリアルタイムOS201上で動作するコントローラ制御部202にアクセスするための機能を提供する。具体的に説明するとAPI206は、仮想マシン205上で動作するアプリケーションからの呼び出しに応じて各種機能を提供するモジュールで構成されている。API206は、API203を呼び出すための変換モジュールの機能とNetwork部109を介してネットワークに接続された機器等に制御コマンドを送る機能を実現する。
FrameWork207は、第2の実行環境205上のアプリケーションを統括的に制御する機能を有するフレームワークモジュールである。209は、第2の実行環境205上で動作するアプリケーションを管理するためのアプリケーションである。管理アプリケーション209は、FrameWork207と協調し、後述のアプリケーション210、複合型アプリケーション212のダウンロード、アップロード、消去、無効化、インストールを実現する機能を提供する。
209、210は第2の実行環境205上で動作するアプリケーションであり、API206を使用しコントローラ制御部202に各種処理を依頼するものである。
リソース管理部211は、第2の実行環境である仮想マシン205が使用するリソースを管理し、第1の実行環境を実現するリアルタイムOS201上で動作する。リソース管理部211は、第2の実行環境を実現する仮想マシン205、API206、フレームワーク207、およびOS205上で動作するアプリケーションがリソースを使用する際、それらのモジュールが使用するリソース使用量を制限する。具体的には、それらのモジュールが予め決められた使用量以上のリソースを使用できないように画像形成装置のリソース使用量を制限する。例えば、仮想マシン205上で動作するアプリケーションをRAM102にロードする際、既に予め決められたアプリケーション起動数のアプリケーションがメモリにロードされている場合、アプリケーションのロードを制限する。その他の例として、RAM102にアプリケーションをロードしたが、そのロードしたアプリケーションを実行するCPUのリソースが足りないため、アプリケーションの実行を制限することもある。なお、実施例1における予め決められたアプリケーション起動数とは、仮想マシン205上で動作するアプリケーションに対して課せられている制限であり、例えば20という制限が与えられている。よって、仮想マシン205上で動作するアプリケーションが既に20個RAM102にロードされている場合、仮想マシン205上で動作するアプリケーションをこれ以上起動することはできない。
図3は、操作部112のタッチパネルに表示される画面の一例を示す図である。操作部112のタッチパネルに表示される画面は、図3のトップ画面300のように、各画面で共通の内容が表示される共通エリア301と、各画面で異なる内容が表示される機能エリア302とからなる。トップ画面とは、画像形成装置の電源を入れてから実行可能状態になったときに、画像形成装置の表示部に最初に表示される画面である。
共通エリア301は、表示している画面を説明するためのタイトルバー303と、現在表示している画面に応じた設定登録や機能設定を行うメニューを表示するためのメニューボタン304とからなる。機能エリア302には、コピーやセンドなどと言ったアプリケーションを利用する画面に切り替えるためのボタンが表示されている。実施例1におけるアプリボタンは、コピーアプリボタン305、センドアプリボタン306、ボックスアプリボタン307、及び外部サーバへの送信アプリボタン308が表示されている。外部サーバへの送信アプリボタン308以外のボタンに対応するアプリケーションは、第1の実行環境上で動作するアプリケーションである。新しいアプリが画像形成装置にインストールされ、RAM102にロードされ正常に起動すると、起動したアプリケーションに対応するボタンがトップ画面300上の機能エリア302に表示される。なお、これらのアプリケーションは、画像形成装置が起動した時点でRAM102にロードされる。また、機能エリア302に登録されるボタンは、OS201上で動作するアプリケーション、および仮想マシン205上で動作するアプリケーションの両方のアプリケーションに対応するボタンである。
図4は、本実施形態における複合型アプリケーション212の基本構成図である。図4に示す通り、複合型アプリケーション212は、複数のアプリケーションモジュールから構成されている。複合型アプリケーション212は、画像形成装置からネットワークで接続されている外部サーバに接続を行い、外部サーバに対しスキャンした画像を送信する機能を実現する。また、複合型アプリケーション212は、外部サーバから画像データを受信する機能も実現する。複合型アプリケーション212は、送信処理用アプリケーション部401、外部サービスA接続用アプリケーション部402、および外部サービスB接続用アプリケーション部403の3つのアプリケーションモジュールから構成される。夫々のアプリケーションモジュールは、夫々異なるUIを提供するアプリケーションである。また、夫々のアプリケーションモジュールはパッケージ化されたアプリケーションモジュールであり、独立した夫々のモジュール群が各アプリケーションモジュールに相当する。モジュールを特定の機能を実現するためにごとにパッケージ化しモジュール群とすることで、独立性の高いアプリケーション構成を実現することができる。
外部サービスA接続用アプリケーション部402は、外部サーバA(不図示)と通信を行うアプリケーションモジュールであり、図5に示すようなUI500を操作部112に表示する。外部サーバAは、クラウドコンピューティング環境を想定しており、そのクラウドコンピューティング環境を利用し外部サービスAを提供するサーバである。
UI500における501は、スキャンの倍率を指定する項目、502は解像度を指定する項目、503は濃度を指定する項目を表す。504は送信を実行するためのボタンである。ユーザにより、外部サービスAに対して送信するために送信ボタン504が押下されると、原稿がスキャンされ、外部サーバAにスキャン原稿に対応する画像データが送信される。外部サービスA接続用アプリケーション部402は、外部サービスAと通信を行うための通信モジュールを有しており、外部サーバAと通信を行いスキャンした画像を送信する。このとき、外部サービスA接続用アプリケーション部402は、送信処理用アプリケーション部401を呼び出す。呼び出された送信処理用アプリケーション部401は、スキャンした原稿画像を送信している旨をユーザに伝えるため、図6に示すUIを表示部に表示する。つまり、複合型アプリケーション212は、外部サービスA接続用アプリケーション部402と送信処理用アプリケーション部401の2つのアプリケーションモジュールを起動し、画像処理を行い、その結果の画像を外部サーバへ送信する処理を行う。なお、上述の通り、外部サービスA接続用アプリケーション部402は、外部サーバから画像データを受信し、その画像データに画像処理を施し印刷する処理を行うことも可能である。その場合、外部サービスA接続用アプリケーション部402は、図5とは異なる印刷用のUI(不図示)を表示する。
外部サービスB接続用アプリケーション部403は、外部サーバB(不図示)と通信を行うアプリケーションモジュールであり、外部サーバBに対してスキャンした画像を送信するためのUIを表示する(不図示)。外部サーバBは、クラウドコンピューティング環境を想定しており、そのクラウドコンピューティング環境を利用し外部サービスBを提供するサーバである。外部サービスAと外部サービスBの違いは、例えば、保存するデータ形式の種類が異なる点である。外部サービスBは、外部サービスAと異なり、複数種類のデータ形式を保存することが可能である。そのため、外部サービスB接続用アプリケーション部403が表示するUIには図5に示す項目の他に、データの形式を選択する項目も表示されている。なお、外部サービスB接続用アプリケーション部403も、外部サーバから画像データを受信し、その画像データに画像処理を施し印刷する処理を行うことも可能である。
また、外部サービスB接続用アプリケーション部403は、外部サービスBと通信を行うための通信モジュールを有しており、外部サーバBと通信を行いスキャンした画像を送信する。このとき、外部サービスB接続用アプリケーション部403は、送信処理用アプリケーション部401を呼び出す。呼び出された送信処理用アプリケーション部401は、スキャンした原稿画像を送信している旨のUIを表示する(図6)。外部サービスB接続用アプリケーション部403も、402と同様に送信処理用アプリケーション部401と連携して動作するアプリケーションモジュールである。このように、ネットワークを介して接続されているシステムと通信を行うためのアプリケーションモジュールを個別アプリケーションモジュールと称し、個別アプリケーションモジュールから共通に利用されるモジュールを共通アプリケーションモジュールと称する。複合型アプリケーション212は、個別アプリケーションモジュールと、共通アプリケーションモジュールとから構成される。なお、上述の通り、各個別アプリケーションモジュールはUIを表示する機能も実現するが、接続先の外部サーバが提供する外部サービスに応じて表示するUIが異なる。また、各個別アプリケーションモジュールが有する通信モジュールは、異なる外部サーバと通信しユーザに異なる外部サービスを提供するため、夫々の外部サーバに応じた通信プロトコルで通信する。
また、外部サービスA、およびBを提供する2つの外部サーバは、クラウドコンピューティング環境を想定している。2つの外部サーバは、公知の情報処理装置の構成を有しており、外部からの要求に従いデータを保存するサービスの他、保存しているデータを要求元に送信するサービスも提供している。
図7(a)は、複合型アプリケーション212を構成する各アプリケーションモジュールの起動優先順位を示した図である。701、702および703で示すように、送信処理用アプリケーション部401、外部サービスA接続用アプリケーション部402、外部サービスB接続用アプリケーション部403の順で起動の優先順位が決まっている。送信処理用アプリケーション部401の優先順位が高い理由は、複数のアプリケーションモジュールから共通に利用される共通アプリケーションモジュールだからである。共通アプリケーションモジュールは、個別アプリケーションモジュールと比較して起動の優先順位が高い。この理由については後述する。また、外部サービスA接続用アプリケーション部402の優先順位が2番目に高い理由は、ユーザが外部サービスAを外部サービスBと比較して頻繁に利用することを想定しているからである。なお、この優先順については、アプリケーションが静的に保持してもよいが、全てのアプリケーションモジュールの起動優先順位を変更可能にすることも可能である。
図7(b)は、複合型アプリケーション212を構成する各個別アプリケーションが機能を提供するために最低限必要なアプリケーションモジュールの組み合わせを示すものである。図7(b)によると704で示すように、機能1を提供するためには、送信処理用アプリケーション部401と外部サービスA接続用アプリケーション部402が必要である。また、705で示すように、機能2を提供するためには、送信処理用アプリケーション部401と外部サービスB接続用アプリケーション部403が必要となる。個別アプリケーションモジュールの提供する機能をユーザが受けるためには、共通アプリケーションモジュールが必要なことが図7(b)から分かる。共通アプリケーションモジュールは、各個別アプリケーションモジュールが提供するサービスを実現するために必要な機能を有するアプリケーションモジュールである。開発者は、開発工数を考え共通利用されるモジュールとして独立して開発する。各個別アプリケーションモジュールに、共通アプリケーションモジュールの機能を組み込んだ場合、開発者の開発工数が増える他、モジュールのコードが肥大化するというデメリットがあるからである。限られたリソースを駆使して動作する画像形成装置にとっては、コードの肥大化はリソースの圧迫につながる。
図8は、実施例1における複合型アプリケーション212の起動処理に関するフローチャートである。S801において、複合型アプリケーション212は起動処理を開始する。S802にて、複合型アプリケーション212は、優先度が1の送信処理用アプリ−ケーション401の起動確認を行う。起動確認とは、リソース管理部211がアプリケーションモジュールの起動に制限がかからなかったかを確認することを意味する。S802にて送信処理用アプリ−ケーション401の起動ができなかった場合には、S803にていずれのアプリケーションモジュールも初期化せずにアプリケーションを起動して起動処理を終了する。初期化せずに起動するとは、アプリケーションモジュールに含まれる一部の機能を実現するモジュール部分がRAM102にロードされた状態である。無論、この状態ではアプリケーションモジュールが提供する機能をユーザが受けることはできない。
S802にて送信処理用アプリ−ケーション401の起動が成功した場合には、S804に進む。S804にて複合型アプリケーション212は、優先度が2番目の外部サービスA接続用アプリケーション部402の起動確認を行う。S804にて外部サービスA接続用アプリケーション部402の起動ができなかった場合には、複合型アプリケーション212は、S805にて送信処理用アプリケーション401だけ初期化を行い起動する。この際、複合型アプリケーション212は、トップ画面300へのボタン登録は行わずに起動処理を終了する。トップ画面300へボタン登録を行わない理由は、送信用アプリケーション401だけでは、ユーザに外部サービスを利用したサービスを提供できないからである。S804にて外部サービスA接続用アプリケーション部402の起動が成功した場合は、S806に進む。
S806にて複合型アプリケーション212は、優先度が3番目の外部サービスB接続用アプリケーション部403の起動確認を行う。S806にて外部サービスB接続用アプリケーション部403が起動できなかった場合、複合型アプリケーション212は、S807にて送信処理用アプリケーション部401、および外部サービスA接続用アプリケーション部402の初期化を行い起動する。この際、複合型アプリケーション212は、トップ画面300へ外部サービスAを利用するためのボタンの登録を行う。このボタンは、外部サービスA接続アプリケーション部402に対応するボタンである。S806にて外部サービスB接続用アプリケーション部403の起動が成功した場合、複合型アプリケーション212は、S808にて次の3つのアプリケーションモジュールの初期化を行い起動する。送信処理用アプリケーション部401、外部サービスA接続用アプリケーション部402および外部サービスB接続用アプリケーション部402である。そして、複合型アプリケーション212は、トップ画面300へ外部サービスAを利用するためのボタン、および外部サービスBを利用するためのボタンの登録を行い、起動処理を終了する。
図9は、図8で起動処理を行ったアプリケーションモジュールのそれぞれの起動状態を管理する管理テーブルである。この管理テーブルは、管理アプリケーション209により管理される。図9によると、送信処理用アプリケーション部401および外部サービスA接続用アプリケーション部402は初期化に成功し起動しているが、外部サービスB接続用アプリケーション部403については、停止状態となっていることがわかる。
図10は、図8で起動処理を行ったアプリケーションモジュールの中で、起動に失敗したアプリケーションモジュールの再度起動処理を指示できるサーブレットアプリケーションのUI画面を示す。アプリケーション管理画面1100では、外部サービスA接続用アプリケーション1101の状態が停止状態であるために、1103のように開始ボタンが有効になっている。また、外部サービスB接続用アプリケーション1102の状態が開始状態であるために、1104のように停止ボタンが有効になっている。このような状態で、開始ボタンを押下すると対応するアプリケーションモジュールの初期化処理が行われ起動し、停止ボタンを押下すると対応するアプリケーションモジュールは停止する。この画面を生成するのは、仮想マシン205上で動作するサーブレットアプリケーション(不図示)と呼ばれるアプリケーションである。サーブレットアプリケーションは、外部からの画面要求に従い図10に示す画面を生成し、生成した画面を外部の要求元に提供する。図10には、複合型アプリケーション212のみ表示されているが、その他の仮想マシン205上で動作するアプリケーションを表示しても良い。その際、その他の仮想マシン205上で動作するアプリケーションを選択し停止を指示することで、複合型アプリケーション212の起動を行うことも可能である。
以上、実施例1における複合型アプリケーションの起動に関する説明を行ってきた。最後に、図11、および図12を用いて本発明のポイントをまとめる。図11は、本発明のポイントを示す図である。図12は、アプリケーションモジュールが起動した際のシンボル(アイコン)の表示を示す図である。
まず、複合型アプリケーションは、複数のアプリケーションモジュールにより構成されている。夫々のアプリケーションモジュールは複数の機能を実現するモジュールであり、共通アプリケーションモジュールと、個別アプリケーションモジュールに分類される。個別アプリケーションモジュールは、共通アプリケーションモジュールと連携することで、ユーザに外部サービスを利用したサービスを提供することができる。そのサービスとは、例えば、スキャンした画像データを外部サーバに保存したり、外部サーバに保存されている画像データをダウンロードし印刷すると言ったサービスである。また、個別アプリケーションモジュールは、外部サーバと通信するための通信モジュールと、通信相手の外部サービスに併せたUI画面を表示する表示モジュールを含む。共通アプリケーションモジュールは、個別アプリケーションモジュールからの呼び出しに応じて、外部サーバと通信している旨を示すUI画面を表示する表示モジュールを含む。
複合型アプリケーションが有する全てのアプリケーションモジュールを起動できるケース1の場合は、図12(a)に示すように起動した全ての個別アプリケーションモジュールに対応するシンボル(アイコン)1201、1202を表示する。複合型アプリケーションが有するアプリケーションモジュールの一部のアプリケーションモジュールが起動できる場合は、次の2通りのケースが考えられる。1つ目のケースは、全ての共通アプリケーションモジュールと、1つ以上の個別アプリケーションモジュールを起動できるケース2の場合である。2つ目のケースは、個別アプリケーションモジュールを1つも起動できない場合、または、共通アプリケーションモジュールの一部を起動できないケース3の場合である。
ケース2の場合、共通アプリケーションモジュールと、優先度の高い個別アプリケーションモジュールを起動する。また、図12(b)に示すように起動可能な所定の個別アプリケーションモジュールに対応するシンボル1201を表示する。ケース3の場合、個別アプリケーションモジュールを起動せずに、起動可能な範囲で共通アプリケーションモジュールを起動する。また、図12(c)に示すように個別アプリケーションモジュールに対応するシンボルは表示しない。なお、ケース3の場合に共通アプリケーションモジュールだけでも起動する理由は、複合型アプリケーション212以外のアプリケーションに割り込まれないようにするためである。他のアプリケーションに割り込まれた場合、複合型アプリケーション212の起動にさらに時間を要してしまうからである。実施例1では、複合型アプリケーション212のように複数のアプリケーションモジュールを有するアプリケーションは、その他の未だ起動していないアプリケーションよりも起動の優先順位が高い。複合型アプリケーションが有する全てのアプリケーションモジュールを起動できないケース4の場合は、全てのアプリケーションモジュールを起動しない。また、図12(c)に示すように個別アプリケーションモジュールに対応するシンボルを表示しない。
表示部に表示されている外部サービスを利用するためのシンボルが押下されると、対応する個別アプリケーションモジュールはUIを表示する。そして、画像形成装置は、例えば、外部サーバから画像データを受信し、受信した画像データを印刷する。このとき、個別アプリケーションモジュールは、共通アプリケーションモジュールと連携して動作する。このように、画像形成装置は、シンボルが押下され各種指示が発行されると、外部サーバとデータ通信を行う前、または後に画像処理を行う。
以上、実施例1における画像形成装置、およびその画像形成装置を制御する方法、およびその制御方法を画像形成装置に実行させるためのプログラムの処理について説明した。実施例1によれば、リソース使用量に制限がかけられている画像形成装置において、複合型アプリケーションの適切な起動を可能にする。
実施例1では、共通アプリケーションモジュールと、個別アプリケーションモジュールとを含む複合型アプリケーションについて説明した。しかしながら、個別アプリケーションモジュールのみを含む複合型アプリケーションであっても良い。この場合、画像形成装置のリソースを圧迫することにはなるが、本発明を実施することは可能である。
また、実施例1における共通アプリケーションモジュールと、個別アプリケーションモジュールは、最低限のモジュール群により構成されていた。しかしながら、実施例1に記載されていないその他のモジュール群を含んでいても良い。

Claims (6)

  1. アプリケーションを実行する際に利用するリソースの使用量を制限する画像形成装置であって、
    1つのアプリケーションに複数のアプリケーションモジュールが含まれている複合型アプリケーションをインストールするインストール手段と、
    前記インストール手段によりインストールされた複合型アプリケーションを起動する際に、前記リソースの使用量の制限により前記複合型アプリケーションに含まれる複数のアプリケーションモジュールを起動できない場合、前記複数のアプリケーションモジュールの内の所定のアプリケーションモジュールを起動し、該起動した所定のアプリケーションモジュールに対応するシンボルを前記画像形成装置の表示部に表示する表示手段と、
    前記表示手段により表示されたシンボルが選択され画像処理が指示された場合、該シンボルに対応するアプリケーションモジュールを利用し画像処理を行う画像形成手段と、
    前記複数のアプリケーションモジュールの内の起動に失敗したアプリケーションモジュールの再起動を指示することが可能なアプリケーション管理画面であって、前記起動に失敗したアプリケーションモジュールの再起動の指示を受け付ける指示部のみならず、該起動した所定のアプリケーションモジュールの停止の指示を受け付ける指示部も含む前記アプリケーション管理画面を提供する提供手段と、を有し、
    前記複数のアプリケーションモジュールは、共通アプリケーションモジュールと、個別アプリケーションモジュールとから構成され、前記共通アプリケーションモジュールは、前記個別アプリケーションモジュールが外部システムと通信を行っている旨を表示するアプリケーションモジュールであり、
    前記表示手段は、前記リソースの使用量の制限により前記複合型アプリケーションに含まれる複数のアプリケーションモジュールを起動できない場合、前記共通アプリケーションモジュールと、前記個別アプリケーションの内の所定の個別アプリケーションモジュールの両方のアプリケーションモジュールを起動し、該起動した前記共通アプリケーションモジュールに対応するシンボルを表示することなく、該起動した所定の個別アプリケーションモジュールに対応するシンボルを表示する
    を有する画像形成装置。
  2. 前記個別アプリケーションモジュールは、前記画像形成装置とネットワークを介して接続されているシステムと通信を行うアプリケーションモジュールであり、前記共通アプリケーションモジュールを利用しユーザに前記システムと通信を行っている旨を表示することを特徴とする請求項1に記載の画像形成装置。
  3. 前記リソースの使用量の制限により前記共通アプリケーションモジュールと、前記個別アプリケーションモジュールの両方を起動できない場合、前記個別アプリケーションモジュールを起動せずに、前記共通アプリケーションモジュールを起動することを特徴とする請求項2に記載の画像形成装置。
  4. 前記複合型アプリケーションは、第1の実行環境で実行される仮想マシンにより実現される第2の実行環境で動作するアプリケーションであることを特徴とする請求項1乃至3のいずれか1項に記載の画像形成装置。
  5. アプリケーションを実行する際に利用するリソースの使用量を制限する画像形成装置を制御する制御方法であって、
    インストール手段は、1つのアプリケーションに複数のアプリケーションモジュールが含まれている複合型アプリケーションをインストールし、
    表示手段は、前記インストール手段によりインストールされた複合型アプリケーションを起動する際に、前記リソースの使用量の制限により前記複合型アプリケーションに含まれる複数のアプリケーションモジュールを起動できない場合、前記複数のアプリケーションモジュールの内の所定のアプリケーションモジュールを起動し、該起動した所定のアプリケーションモジュールに対応するシンボルを前記画像形成装置の表示部に表示し、
    画像形成手段は、前記表示手段により表示されたシンボルが選択され画像処理が指示された場合、該シンボルに対応するアプリケーションモジュールを利用し画像処理を行い、
    提供手段は、前記複数のアプリケーションモジュールの内の起動に失敗したアプリケーションモジュールの再起動を指示することが可能なアプリケーション管理画面であって、前記起動に失敗したアプリケーションモジュールの再起動の指示を受け付ける指示部のみならず、該起動した所定のアプリケーションモジュールの停止の指示を受け付ける指示部も含む前記アプリケーション管理画面を提供し、
    前記複数のアプリケーションモジュールは、共通アプリケーションモジュールと、個別アプリケーションモジュールとから構成され、前記共通アプリケーションモジュールは、前記個別アプリケーションモジュールが外部システムと通信を行っている旨を表示するアプリケーションモジュールであり、
    前記表示手段は、前記リソースの使用量の制限により前記複合型アプリケーションに含まれる複数のアプリケーションモジュールを起動できない場合、前記共通アプリケーションモジュールと、前記個別アプリケーションの内の所定の個別アプリケーションモジュールの両方のアプリケーションモジュールを起動し、該起動した前記共通アプリケーションモジュールに対応するシンボルを表示することなく、該起動した所定の個別アプリケーションモジュールに対応するシンボルを表示する
    ことを特徴とする画像形成装置を制御する制御方法。
  6. アプリケーションを実行する際に利用するリソースの使用量を制限する画像形成装置により実行されるプログラムであって、
    1つのアプリケーションに複数のアプリケーションモジュールが含まれている複合型アプリケーションをインストールするインストールステップと、
    前記インストールステップよりインストールされた複合型アプリケーションを起動する際に、前記リソースの使用量の制限により前記複合型アプリケーションに含まれる複数のアプリケーションモジュールを起動できない場合、前記複数のアプリケーションモジュールの内の所定のアプリケーションモジュールを起動し、該起動した所定のアプリケーションモジュールに対応するシンボルを前記画像形成装置の表示部に表示する表示ステップと、
    前記表示ステップにより表示されたシンボルが選択され画像処理が指示された場合、該シンボルに対応するアプリケーションモジュールを利用し画像処理を行う画像形成ステップと、
    前記複数のアプリケーションモジュールの内の起動に失敗したアプリケーションモジュールの再起動を指示することが可能なアプリケーション管理画面であって、前記起動に失敗したアプリケーションモジュールの再起動の指示を受け付ける指示部のみならず、該起動した所定のアプリケーションモジュールの停止の指示を受け付ける指示部も含む前記アプリケーション管理画面を提供する提供ステップと、を有し、
    前記複数のアプリケーションモジュールは、共通アプリケーションモジュールと、個別アプリケーションモジュールとから構成され、前記共通アプリケーションモジュールは、前記個別アプリケーションモジュールが外部システムと通信を行っている旨を表示するアプリケーションモジュールであり、
    前記表示ステップは、前記リソースの使用量の制限により前記複合型アプリケーションに含まれる複数のアプリケーションモジュールを起動できない場合、前記共通アプリケーションモジュールと、前記個別アプリケーションの内の所定の個別アプリケーションモジュールの両方のアプリケーションモジュールが起動されたことに応じ、該起動した前記共通アプリケーションモジュールに対応するシンボルを表示することなく、該起動した所定の個別アプリケーションモジュールに対応するシンボルを表示する
    する画像形成装置により実行されるプログラム。
JP2010189515A 2010-08-26 2010-08-26 画像形成装置、画像形成装置の制御方法、およびプログラム Expired - Fee Related JP5814526B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010189515A JP5814526B2 (ja) 2010-08-26 2010-08-26 画像形成装置、画像形成装置の制御方法、およびプログラム
US13/216,500 US8817279B2 (en) 2010-08-26 2011-08-24 Image forming apparatus, method for controlling the image forming apparatus, and storage medium
CN201110244433.8A CN102387276B (zh) 2010-08-26 2011-08-24 图像形成装置及该图像形成装置的控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010189515A JP5814526B2 (ja) 2010-08-26 2010-08-26 画像形成装置、画像形成装置の制御方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2012048464A JP2012048464A (ja) 2012-03-08
JP5814526B2 true JP5814526B2 (ja) 2015-11-17

Family

ID=45696882

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010189515A Expired - Fee Related JP5814526B2 (ja) 2010-08-26 2010-08-26 画像形成装置、画像形成装置の制御方法、およびプログラム

Country Status (3)

Country Link
US (1) US8817279B2 (ja)
JP (1) JP5814526B2 (ja)
CN (1) CN102387276B (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5772353B2 (ja) * 2011-07-29 2015-09-02 株式会社リコー 画像処理システム及び画像処理方法
JP5979411B2 (ja) * 2012-03-22 2016-08-24 富士ゼロックス株式会社 印刷制御装置、印刷システムおよびプログラム
JP2013254037A (ja) * 2012-06-05 2013-12-19 Sharp Corp 画像形成装置の操作システム
JP6070286B2 (ja) * 2013-03-05 2017-02-01 株式会社リコー 情報処理システム、情報処理装置及びプログラム
JP5990609B2 (ja) * 2015-02-25 2016-09-14 京セラドキュメントソリューションズ株式会社 画像形成装置
JP6536308B2 (ja) * 2015-09-14 2019-07-03 株式会社リコー 情報処理システム、情報処理装置、情報処理方法、及びプログラム
US10055179B2 (en) 2016-05-17 2018-08-21 Ricoh Company, Ltd. Information processing device, information processing method, and non-transitory computer program product
JP6274328B2 (ja) * 2017-01-05 2018-02-07 株式会社リコー 情報処理システムとそのアプリケーションの利用可能機能決定方法、並びに情報処理装置及びプログラム
JP6929160B2 (ja) * 2017-08-10 2021-09-01 キヤノン株式会社 画像形成装置およびその制御方法とプログラム
JP7679710B2 (ja) * 2021-06-24 2025-05-20 株式会社リコー サービス提供システム、情報処理システム、設定方法、プログラム
US12379938B2 (en) * 2022-08-25 2025-08-05 Dell Products L.P. Nanoservice computing and architecture

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4001531B2 (ja) * 2001-09-21 2007-10-31 株式会社リコー 画像形成装置
JP4055393B2 (ja) 2001-10-30 2008-03-05 ソニー株式会社 データ処理装置およびその方法とプログラム
JP4532810B2 (ja) * 2002-02-22 2010-08-25 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、プログラム、及びコンピュータ読み取り可能な記憶媒体
JP3826069B2 (ja) * 2002-05-17 2006-09-27 キヤノン株式会社 画像形成装置、制御方法、制御プログラム
JP2005301791A (ja) * 2004-04-14 2005-10-27 Nec Corp 移動通信端末および移動通信端末のアプリケーション起動制御方法
JP4492511B2 (ja) * 2005-10-03 2010-06-30 ソニー株式会社 インターフェース装置、インターフェース方法、およびプログラム
JP2007122485A (ja) * 2005-10-28 2007-05-17 Canon Inc 画像処理装置と拡張制御装置で構成される拡張画像処理システムのデータバックアップ・リストア手段
JP5121542B2 (ja) * 2008-04-09 2013-01-16 キヤノン株式会社 アプリケーションパッケジング装置、その制御方法、プログラム
JP2009276915A (ja) 2008-05-13 2009-11-26 Canon Inc アプリケーションプラットフォーム
JP5171466B2 (ja) * 2008-08-05 2013-03-27 キヤノン株式会社 画像処理装置、画像処理装置で実行される方法、プログラムおよび記録媒体
JP2009283002A (ja) 2009-07-21 2009-12-03 Canon Inc 画像形成装置、制御方法、制御プログラム

Also Published As

Publication number Publication date
US8817279B2 (en) 2014-08-26
US20120050780A1 (en) 2012-03-01
CN102387276B (zh) 2014-07-09
CN102387276A (zh) 2012-03-21
JP2012048464A (ja) 2012-03-08

Similar Documents

Publication Publication Date Title
JP5814526B2 (ja) 画像形成装置、画像形成装置の制御方法、およびプログラム
JP4625343B2 (ja) 画像形成装置、端末装置、情報処理方法、情報処理プログラム、及び記録媒体
US20110063645A1 (en) Image forming apparatus, image formation supporting system, and image formation supporting method
JP5786535B2 (ja) 機器、情報処理方法、情報処理プログラム、及び記録媒体
JP5972311B2 (ja) 画像形成装置、画像形成方法及び画像形成プログラム
US20110310431A1 (en) Image processing apparatus, control method thereof, and program
JP5540793B2 (ja) 機能提供装置及びプログラム
JP2022051794A (ja) 画像形成装置およびその制御方法
JP5494208B2 (ja) 画像形成装置及びその制御プログラム
US10602011B2 (en) Image forming apparatus, information processing method, and program
JP2009205262A (ja) アプリケーションプログラムインストール装置、アプリケーションプログラムインストール方法、プログラム、および記録媒体
JP2011182463A (ja) 電子機器、端末装置、情報処理方法、情報処理プログラム、及び記録媒体
JP6376227B2 (ja) 通信端末装置、及び通信システム
JP2009137165A (ja) 画像形成装置、情報処理方法及びプログラム
JP5011502B2 (ja) 電子機器、サービス提供方法及びプログラム
JP2005269439A (ja) 画像形成装置、情報処理方法、情報処理プログラム、及び記録媒体
JP5605018B2 (ja) 処理情報管理装置、画像形成装置、及び処理情報管理プログラム
JP2011039827A (ja) リモート管理システム、リモート管理装置、情報処理装置、プログラム更新方法、コンピュータプログラム、及びコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2007318686A (ja) 情報処理システム、電子機器、情報処理方法及び情報処理プログラム
JP5195200B2 (ja) 情報処理装置、アプリケーション実行方法、及びプログラム
JP2010218469A (ja) 情報処理装置、情報処理方法、プログラムおよび記録媒体
JP2012134755A (ja) 画像処理装置とその処理方法及びプログラム。
JP2007295371A (ja) 画像形成装置及びコンピュータプログラム
JP2018151788A (ja) 画像処理装置及びプログラム
JP5447637B2 (ja) 装置、表示制御方法、及び表示制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130826

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140324

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140610

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140808

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150319

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150918

LAPS Cancellation because of no payment of annual fees