図1は、本発明の実施例に該当する融合機101を表す。図1の融合機101は、種々のハードウェア111と、種々のソフトウェア112と、融合機起動部113により構成される。
融合機101のハードウェア111としては、撮像部121と、印刷部122と、その他のハードウェア123が存在する。撮像部121は、読取原稿から画像(画像データ)を読み取るためのハードウェアである。印刷部122は、画像(画像データ)を印刷用紙に印刷するためのハードウェアである。
融合機101のソフトウェア112としては、種々のアプリケーション131と、種々のプラットフォーム132が存在する。これらのプログラムは、UNIX(登録商標)等のOS(オペレーティングシステム)によりプロセス単位で並列的に実行される。
アプリケーション131としては、コピー用のアプリケーションであるコピーアプリ141、プリンタ用のアプリケーションであるプリンタアプリ142、スキャナ用のアプリケーションであるスキャナアプリ143、ファクシミリ用のアプリケーションであるファクシミリアプリ144、ネットワークファイル用のアプリケーションであるネットワークファイルアプリ145、Webクライアント用のアプリケーションであるWebブラウザ181、Webクライアント用のアプリケーションであるJWS182が存在する。
アプリケーション131は、専用のSDK(ソフトウェア開発キット)を使用して開発することができる。SDKを使用して開発したアプリケーション131をSDKアプリと呼ぶ。専用のSDKとしては、C言語でアプリケーション131を開発するための「CSDK」や、Java(登録商標)言語でアプリケーション131を開発するための「JSDK」が提供される。CSDKを使用して開発したアプリケーション131を「CSDKアプリ」と呼び、JSDKを使用して開発したアプリケーション131を「JSDKアプリ」と呼ぶ。図1の融合機101にも、CSDKアプリ146と、JSDKアプリ147が存在する。図1の融合機101にはさらに、Java(登録商標)言語で記述されたJSDKアプリ147とC言語で記述された他のソフトウェア112との仲介を行うソフトウェア112として、JSDKプラットフォーム148が存在する。
プラットフォーム132としては、種々のコントロールサービス151、システムリソースマネージャ152、種々のハンドラ153が存在する。コントロールサービス151としては、ネットワークコントロールサービス(NCS)161、ファクシミリコントロールサービス(FCS)162、デリバリコントロールサービス(DCS)163、エンジンコントロールサービス(ECS)164、メモリコントロールサービス(MCS)165、オペレーションパネルコントロールサービス(OCS)166、サーティフィケーションコントロールサービス(CCS)167、ユーザディレクトリコントロールサービス(UCS)168、システムコントロールサービス(SCS)169が存在する。ハンドラ153としては、ファクシミリコントロールユニットハンドラ(FCUH)171、イメージメモリハンドラ(IMH)172が存在する。
NCS161のプロセスは、ネットワーク通信の仲介を行う。FCS162のプロセスは、ファクシミリのAPIを提供する。DCS163のプロセスは、蓄積文書の配信処理に関する制御を行う。ECS164のプロセスは、撮像部121や印刷部122に関する制御を行う。MCS165のプロセスは、メモリやハードディスクドライブに関する制御を行う。OCS166のプロセスは、オペレーションパネルに関する制御を行う。CCS167のプロセスは、認証処理や課金処理に関する制御を行う。UCS168のプロセスは、ユーザ情報の管理に関する制御を行う。SCS169のプロセスは、システムの管理に関する制御を行う。
アプリケーション131とプラットフォーム132の仲介を行うソフトウェア112として、仮想アプリケーションサービス(VAS)135が存在する。VAS135は、アプリケーション131をクライアントとするサーバプロセスとして動作すると共に、プラットフォーム132をサーバとするクライアントプロセスとして動作する。VAS135は、アプリケーション131から見てプラットフォーム132を隠蔽するラッピング機能を備え、プラットフォーム132のバージョンアップに伴うバージョン差を吸収する役割等を担う。
融合機起動部113は、融合機101の電源投入時に最初に実行される。これにより、UNIX(登録商標)等のOSが起動され、アプリケーション131やプラットフォーム132が起動される。これらのプログラムは、ハードディスクドライブやメモリカードに蓄積されており、ハードディスクドライブやメモリカードから再生されて、メモリに起動されることになる。
図2は、図1の融合機101に係るハードウェア構成図である。融合機101のハードウェア111としては、コントローラ201と、オペレーションパネル202と、ファクシミリコントロールユニット(FCU)203と、撮像部121と、印刷部122が存在する。
コントローラ201は、CPU211、ASIC212、NB221、SB222、MEM−P231、MEM−C232、HDD(ハードディスクドライブ)233、メモリカードスロット234、NIC(ネットワークインタフェースコントローラ)241、USBデバイス242、IEEE1394デバイス243、セントロニクスデバイス244により構成される。
CPU211は、種々の情報処理用のICである。ASIC212は、種々の画像処理用のICである。NB221は、コントローラ201のノースブリッジである。SB222は、コントローラ201のサウスブリッジである。MEM−P231は、融合機101のシステムメモリである。MEM−C232は、融合機101のローカルメモリである。HDD233は、融合機101のストレージである。メモリカードスロット234は、メモリカード235をセットするためのスロットである。NIC241は、MACアドレスによるネットワーク通信用のコントローラである。USBデバイス242は、USB規格の接続端子を提供するためのデバイスである。IEEE1394デバイス243は、IEEE1394規格の接続端子を提供するためのデバイスである。セントロニクスデバイス244は、セントロニクス仕様の接続端子を提供するためのデバイスである。
オペレーションパネル202は、オペレータが融合機101に入力を行うためのハードウェア(操作部)であると共に、オペレータが融合機101から出力を得るためのハードウェア(表示部)である。
図3は、図1の融合機101に係る外観図である。図3には、撮像部121の位置と、印刷部122の位置と、オペレーションパネル202の位置が図示されている。図3には更に、読取原稿のセット先となる原稿セット部301と、印刷用紙の給紙先となる給紙部302と、印刷用紙の排紙先となる排紙部303が図示されている。原稿セット部301は、撮像部121の構成要素である。給紙部302は、印刷部122の構成要素である。排紙部303は、印刷部122の構成要素である。
オペレーションパネル202は、図4のように、タッチパネル311と、テンキー312と、スタートボタン313と、リセットボタン314と、機能キー315と、初期設定ボタン316により構成される。タッチパネル311は、タッチ操作で入力を行うためのハードウェア(タッチ操作部)であると共に、画面表示で出力を得るためのハードウェア(画面表示部)である。テンキー312は、キー(ボタン)操作で数字入力を行うためのハードウェアである。スタートボタン313は、ボタン操作でスタート操作を行うためのハードウェアである。リセットボタン314は、ボタン操作でリセット操作を行うためのハードウェアである。機能キー315は、キー(ボタン)操作でCSDKアプリ146やJSDKアプリ147による操作画面を表示させるためのハードウェアである。初期設定ボタン316は、ボタン操作で初期設定画面を表示させるためのハードウェアである。
原稿セット部301は、ADF(自動原稿搬送装置)321と、フラットベッド322と、フラットベッドカバー323により構成される。給紙部302は、4個の給紙トレイにより構成される。排紙部303は、1個の排紙トレイにより構成される。ADF321には、複数枚の読取原稿を重ねてセットすることができる。フラットベッド322には、読取原稿を下向きにセットする。
(JSDK)
図1の融合機101は、自機を「Webクライアント」とする「Webサーバ」として機能すると共に、他機を「Webクライアント」とする「Webサーバ」として機能することになる。ここでは、Webサーバ側ではWebサーバ用のWebアプリケーションであるServletやJSP等のJava(登録商標)アプリケーションが実行されて、Webクライアント側ではWebクライアント用のWebアプリケーションであるAppletやXlet等のJava(登録商標)アプリケーションが実行されるものとする。そのため、Webサーバ側にはWebサーバソフトやJES(Java(登録商標) Embedded Server)がインストールされていて、Webクライアント側にはWebブラウザやJWS(Java(登録商標) Web Start)がインストールされているものとする。
図5は、図1の融合機101が接続されているネットワークに係るネットワーク構成図である。図1の融合機101は、融合機101A,B,C、プリンタ102A,B,C、PC(パーソナルコンピュータ)401等とネットワークで接続されている。図5のPC401は、PC本体411、キーボード412、マウス413、ディスプレイ414等で構成されている。PC本体411には、CPUやROMやRAMやHDDやMODEMやNICが装備されている。PC本体411のHDDには、Webブラウザ421やJWS422がインストールされている。
図6は、図1の融合機101のWeb機能に係るソフトウェア構成図である。図6中の実線矢印は、図1の融合機101が自機(図2のオペレーションパネル202)をWebクライアントとするWebサーバとして機能する様子を表す。図6中の破線矢印は、図1の融合機101が他機(図5のPC401)をWebクライアントとするWebサーバとして機能する様子を表す。図1の融合機101には、種々のServlet431、種々のJSP432、種々のApplet433、種々のXlet434、JSDK Emulator435等のJava(登録商標)アプリケーションが存在する。JSDK Emulator435は、図1の融合機101とネットワークで接続されたサーバに存在することにしてもよい。
図7は、図1の融合機101に係るソフトウェア構成図である。Servlet431やJSP432等のJSDKアプリ147用のJSDKプラットフォーム148、Applet433やXlet434等のJSDKアプリ147用のJSDKプラットフォーム148、が図7Aでは個別化されていて図7Bでは共通化されている。図7Aを採用しても図7Bを採用してもよいのだが、ここでは図7Bを採用することにする。
以下、JSDKアプリ147とJSDKプラットフォーム148について説明した後、図1の融合機101の画面上(図2のオペレーションパネル202の画面上)やその端末装置の画面上(図5のPC401の画面上)で操作を行うための操作画面を図1の融合機101の画面上やその端末装置の画面上に表示するApplet433やXlet434やJava(登録商標)スタンドアロンアプリケーションについて説明する。
図8は、図1のJSDKアプリ147とJSDKプラットフォーム148のクラス図である。JSDKアプリ147とJSDKプラットフォーム148は、全体で1プロセスとして、同一プロセス上で実行される。JSDKアプリ147とJSDKプラットフォーム148中の各ブロックは、それぞれこの1プロセス上のスレッドとして、スレッド単位で並列的に実行(マルチスレッド)される。JSDKアプリ147とJSDKプラットフォーム148は、Java(登録商標)コンパイラによりソースコードからバイトコードに一括翻訳されており、Java(登録商標)仮想マシンにより逐次実行される。JSDKアプリ147とJSDKプラットフォーム148は、Java(登録商標) 2 Micro EditionのPersonal Basis Profileをベースとする実装となっている。
JSDKアプリ147としては、ユーザアプリ501と、JSDK GUI Manager511と、Task Bar Manager512と、Menu Server513等が存在する。
ユーザアプリ501は、融合機101のユーザ(例えばベンダ)がJSDKを使用して開発したJSDKアプリである。JSDK GUI Manager511は、他のJSDKアプリ(ユーザアプリ501等)を操作対象とする操作画面の表示等を行うJSDKアプリである。Task Bar Manager512は、他のJSDKアプリ(ユーザアプリ501等)を操作対象とするタスクバーの表示等を行うJSDKアプリである。Menu Server513は、Applet433乃至Xlet434を操作対象とするメニューページの表示等を行うServlet431乃至JSP432である。
ユーザアプリ501はここでは、Xletである。JSDK GUI Manager511はここでは、独自の拡張を施したXlet(XletEx)である。Task Bar Manager512はここでは、独自の拡張を施したXlet(XletEx)である。Menu Server513はここでは、Servlet乃至JSPである。
JSDKプラットフォーム148には、JSDK Main521と、JSDK Environment522と、Locale Manager523と、Xlet Manager531と、Multi Xlet Manager532と、JSDK Manager533と、Send Manager541と、Event Manager542と、System Event Manager543と、Panel Manager544と、Install Manager545と、Server/Client Manager546等のクラスが存在する。
JSDK Main521は、JSDKシステムの起動設定を行うクラスである。JSDK Environment522は、JSDKシステムの起動環境設定を行うクラスである。Locale Manager523は、国際化対応(言語指定)を行うクラスである。
Xlet Manager531は、1対1でXletのライフサイクルを管理するクラスである。ここでは、5個のXletのライフサイクルが1対1で5個のXlet Manager531によって管理される。Multi Xlet Manager532は、全てのXlet Manager531のライフサイクルを管理するクラスである。ここでは、5個のXlet Manager531のライフサイクルが全て1個のMulti Xlet Manager532によって管理される。JSDK Manager533は、JSDKシステム全体のライフサイクルを管理するクラスである。例えば、Multi Xlet Manager532,Send Manager541,Event Manager542,System Event Manager543,Panel Manager544,Install Manager545,Server/Client Manager546のライフサイクルが、JSDK Manager533によって管理される。
System Event Manager543は、図1のプラットフォーム132からのシステムイベント(電力モード等)の管理を行うクラスである。Panel Manager544は、1個のXletがオペレーションパネル202の画面を占有する際の調停等を行うクラスである。Install Manager545は、SDcardやWebからのインストールやアンインストールの管理を行うクラスである。
図8のJSDKシステムでは、APIとして、JSDK API551とJSDK API552が利用される。なお、XletとXletExの差異として、オブジェクトにアクセスするのにJSDK API551の利用とJSDKプラットフォーム148へのアクセスが可能である点が挙げられる。図1の融合機101にはさらに、図8のJSDKシステムに係る要素として、C言語とJava(登録商標)言語のインタフェースとなるJSDK Session553とNative JSDK Session554や、JSDKアプリ147とJSDKプラットフォーム148を実行するためJava(登録商標)仮想マシンであるCVM555や、Webサーバ用のJES556等が存在する。JES556は、Webクライアント用のJWS561、Webサーバ用のWebサーバソフト562、Webサーバ用のServlet Engine563、Webサーバ用のJSP Engine564等を包含する。
図9は、JSDKシステムの起動手順について説明するための図である。JSDKシステムではまず、JSDKアプリ147を起動するmain()関数を有するクラスであるJSDK Main521が、JSDK Environment522を生成(S1)する。続いて、JSDK Environment522が、Native層の構築(S2)と言語環境の構築(S3)をもって、JSDKシステムの実行環境の構築を行う。続いて、JSDK Environment522が、JSDK Manager533を生成(S4)する。JSDKシステムではそして、JSDK Manager533が、システム層のManagerを生成(S5−12)し、Multi Xlet Manager532とXlet Manager531を通じて、アプリ層のManagerを生成(S13−14)する。
図10は、JSDKシステムのGUIについて説明するための図である。融合機101の機能キー315(図4)を押すと、図9のS1−S14が実行されて、図10のGUIが融合機101のタッチパネル311(図4)に表示される。図10のGUIは、ユーザアプリ501を操作対象とする操作画面であり、図9のS13で起動されたJSDK GUI Manager511によって表示される。
図10Aは、画面を占有するユーザアプリ501の切替操作を行うための切替操作画面である。図10Bは、ユーザアプリ501の起動操作を行うための起動操作画面である。図10Cは、ユーザアプリ501の終了操作を行うための終了操作画面である。図10Dは、ユーザアプリ501のインストール操作を行うためのインストール操作画面である。図10Eは、ユーザアプリ501のアンインストール操作を行うためのアンインストール操作画面である。図10Aが、機能キー315を押した直後にタッチパネル311に表示される初期画面であり、図10A,B,C,D,Eは、それぞれ切り替え,起動,終了,インストール,アンインストールのボタンをタッチすると表示されることになる。
SimplePrint,SimpleCopy,SimpleOcr,SimpleScan等はそれぞれユーザアプリ501である。
図11は、起動操作画面の表示手順について説明するための図である。切替操作画面で起動のボタンがタッチされると、JSDK GUI Manager511からInstall Manager545に、インストール済みのユーザアプリ501の一覧要求が送信(S1)される。これに応じて、Install Manager545は、インストール済みのユーザアプリ501の格納位置に係る情報(融合機101内のNVRAMに格納されている)を元に、インストール済みのユーザアプリ501のJNLPファイルを取得(S2)する。融合機101にセットされたSDcardからは、当該SDcard内のユーザアプリ501のJNLPファイルが取得される。融合機101内のHDDからは、当該HDD内のユーザアプリ501のJNLPファイルが取得される。JNLPファイルは、ユーザアプリ501と1対1で対応しており、ユーザアプリ501の定義付けに係る情報を含んでいる。そして、インストール済みのユーザアプリ501のJNLPファイルの内容を元に、Install Manager545からJSDK GUI Manager511に、インストール済みのユーザアプリ501の一覧応答が送信(S3)される。これにより、切替操作画面から起動操作画面に画面が移ることになる。
図12は、起動処理の実行手順について説明するための図である。起動操作画面で選択操作が実行されて確認画面で確認操作が実行されると、JSDK GUI Manager511からJSDK Manager533に、ユーザアプリ501の起動要求が送信(S1)される。これに応じて、JSDK Manager533からMulti Xlet Manager532に、Authentication Manager547による認証処理を経由してから、ユーザアプリ501の起動要求が送信(S2)される。これに応じて、Multi Xlet Manager532がXlet Manager531を起動(S3)し、Xlet Manager531がPanel Manager544からルートウィンドウを取得(S4)し、Xlet Manager531がユーザアプリ501を起動(S5)する。そして、Multi Xlet Manager532からJSDK Manager533に、ユーザアプリ501の起動応答が送信(S6)される。そして、JSDK Manager533からJSDK GUI Manager511に、ユーザアプリ501の起動応答が送信(S7)される。
図13は、インストール操作画面の表示手順について説明するための図である。切替操作画面上でインストールのボタンがタッチされると、JSDK GUI Manager511からInstall Manager545に、ユーザアプリ501の一覧要求が送信(S1)される。これに応じて、Install Manager545は、ユーザアプリ501のJNLPファイルを取得(S2)する。融合機101にセットされたSDcardからは、当該SDcard内のユーザアプリ501のJNLPファイルが取得される。融合機101とネットワークで接続されたWebサーバからは、当該Webサーバ内のユーザアプリ501のJNLPファイルが取得される。JNLPファイルは、ユーザアプリ501と1対1で対応しており、ユーザアプリ501の定義付けに係る情報を含んでいる。そして、ユーザアプリ501のインストール状況に関する情報(融合機101内のNVRAMに格納されている)や、ユーザアプリ501のJNLPファイルの内容を元にして、Install Manager545からJSDK GUI Manager511に、ユーザアプリ501の一覧応答が送信(S3)される。これにより、切替操作画面からインストール操作画面に画面が移ることになる。
図14は、インストール処理の実行手順について説明するための図である。インストール操作画面で選択操作が実行されて確認画面で確認操作が実行されると、JSDK GUI Manager511からInstall Manager545に、ユーザアプリ501のインストール要求が送信(S1)される。これに応じて、Install Manager545は、Authentication Manager547による認証処理を経由してから、ユーザアプリ501をインストール(S2)する。そして、Install Manager545からJSDK GUI Manager511に、ユーザアプリ501のインストール応答が送信(S3)される。
図15は、JNLPファイルの構文の例を表す。JNLP(Java(登録商標) Network Launching Protocol)ファイルはXML(eXtensible Markup Language)ファイルであり、JNLPファイル書式はJNLP規格に準拠している。ただし、JSDK向けに独自の拡張を施している部分があるため、以下その部分について説明する。
記述1は、informationエレメントであり、アプリケーション名を示すtitleエレメント(記述1A)や、ベンダ名を示すvenderエレメント(記述1B)や、ベンダの電話番号を示すtelephoneエレメント(記述1C)や、ベンダのファクス電話番号を示すfaxエレメント(記述1D)や、アプリケーションのプロダクトIDを示すproductIDエレメント(記述1E)を含んでいる。
記述2は、securityエレメントである。
記述3は、resourceエレメントであり、JSDKのバージョンを指定するjsdkエレメント(記述3A)や、JARファイル(アプリケーションの実行ファイル)とそのバージョンを指定するjarエレメント(記述3B)や、SUB−JNLPファイルを指定するsub−jnlpエレメント(記述3C)を含んでいる。
記述4は、updateエレメントであり、更新処理の実行方法を設定するエレメントである。autoであればアプリケーションの更新処理は自動更新で実行され、manualであればアプリケーションの更新処理は手動更新で実行され、mailであればアプリケーションの更新処理が実行可能である場合にその旨を通知する更新通知メールが配信される。
記述5は、installエレメントであり、インストール処理の実行方法を設定するエレメントである。autoであればアプリケーションのインストール先は自動選択にて選択され、manualであればアプリケーションのインストール先は手動選択にて選択される。
記述6は、アプリケーションのタイプが「GUI有」であるか「GUI無」であるかを示す。
以下、図1の融合機101の画面上(図2のオペレーションパネル202の画面上)やその端末装置の画面上(図5のPC401の画面上)で操作を行うための操作画面を図1の融合機101の画面上やその端末装置の画面上に表示する図6のApplet433やXlet434(スタンドアロンアプリケーションでもよい)について説明する。なお、図2のオペレーションパネル202の画面とは図4のタッチパネル311を意味するものであり、図5のPC401の画面とは図5のディスプレイ414を意味するものである。
(1)第1具体例
図16は、第1具体例に係るソフトウェア構成図である。図1の融合機101には、図2のオペレーションパネル202の画面上や図5のPC401の画面上で操作を行うための操作画面を図2のオペレーションパネル202の画面上や図5のPC401の画面上に表示するTrimming Applet601やTrimming Xlet602が存在する。
Trimming Applet601は、図1の融合機101や図5のPC401で図1のWebブラウザ181や図5のWebブラウザ421により実行される事になる。こうして表示される操作画面では、図1の融合機101に格納されている画像の印刷処理を同融合機101に実行させる旨の操作を行う事ができる。操作画面には、図1の融合機101に格納されている画像がサムネイル表示される。操作画面では、同操作画面にサムネイル表示されている画像の編集操作をもって、同融合機101に格納されている同画像の印刷条件の設定操作とする事ができる。ここでは、同操作画面にサムネイル表示されている画像の一部分をタッチパネル操作やマウス操作でトリミングして、同融合機101に格納されている同画像の一部分を印刷対象とする事ができる。
Trimming Xlet602は、図1の融合機101や図5のPC401で図1のJWS182(図8のJWS561でもよい)や図5のJWS422により実行される事になる。こうして表示される操作画面では、図1の融合機101に格納されている画像の印刷処理を同融合機101や同融合機101以外の画像形成装置(図5の融合機101A,B,Cやプリンタ102A,B,C)に実行させる旨の操作を行う事ができる。操作画面には、図1の融合機101に格納されている画像がサムネイル表示される。操作画面では、同操作画面にサムネイル表示されている画像の編集操作をもって、同融合機101に格納されている同画像の印刷条件の設定操作とする事ができる。ここでは、同操作画面にサムネイル表示されている画像の一部分をタッチパネル操作やマウス操作でトリミングして、同融合機101に格納されている同画像の一部分を印刷対象とする事ができる。
AppletやXletは、Webクライアント用のWebアプリケーションの一種である。Webアプリケーションは、種々の機器で実行できたり種々の機器を制御できたりと自由度の高いアプリケーションである。例えば、同一仕様のTrimming Applet601やTrimming Xlet602を複数機種の画像形成装置(別機種の融合機同士、別機種のプリンタ同士、融合機とプリンタ等)用のアプリケーションとする事も可能である。例えば、画面のある融合機用のTrimming Applet601やTrimming Xlet602を画面のないプリンタ内に実装しておく事により、プリンタの操作画面として融合機のタッチパネル風の操作画面をPCのディスプレイ上に実現する事も可能である。
図1の融合機101のTrimming Applet601がWebブラウザにより実行されて表示される操作画面でも、図1の融合機101のTrimming Xlet602がJWSにより実行されて表示される操作画面でも、同融合機101に印刷処理等の画像形成処理を実行させる事ができる。しかし、前者の操作画面と後者の操作画面で、同融合機101にも同融合機101以外の画像形成装置にも印刷処理等の画像形成処理を実行させる事ができるのは、後者の操作画面だけである。しかし、後者の操作画面でも無条件にできるのではなく、Xlet434を起動させる起動機能とXlet434の実行環境の差を吸収する吸収機能とを具備する「JSDK Emulator435」の存在が必要となる。JSDK Emulator435の吸収機能で吸収すべき実行環境の差は例えば、画像形成処理に係る機能等の画像形成装置に固有な機能に基づく実行環境の差である。図1の融合機101に固有な機能の具体例としては、アプリケーション131とプラットフォーム132のAPI(アプリケーションプログラムインタフェース)133や、図8のJSDK API551や、図8のJSDK API552が挙げられる。
図17は、Trimming Applet601に係るシーケンス図である。
図17は、図1の融合機101が自機(図2のオペレーションパネル202)をWebクライアントとするWebサーバとして機能する場合、図1の融合機101が他機(図5のPC401)をWebクライアントとするWebサーバとして機能する場合、の両者について統一的に説明するためのシーケンス図となっている。文中、Webブラウザ181とWebブラウザ421のことをWebブラウザ181等、JWS182とJWS422のことをJWS182等、Servlet Engine563とJSP Engine564のことをServlet Engine563等、と略記することにする。
先ず、オペレーションパネル202の画面上やPC401の画面上で、Webブラウザ181等により表示されている「メニューページボタン」が押下(S101)されると、Webブラウザ181等からWebサーバソフト562に「メニューページ」の転送要求が送信(S102)される。次に、Webサーバソフト562からServlet Engine563等に「メニューページ」の生成要求が送信(S103)される。次に、Servlet Engine563等がMenu Server513を融合機101内に起動(S104)させる。次に、Menu Server513が「メニューページ」を生成(S105)する。次に、Menu Server513が「メニューページ」をWebブラウザ181等に転送(S106)する。そして、オペレーションパネル202の画面上やPC401の画面上に、Webブラウザ181等により「メニューページ」が表示(S107)される。メニューページには、融合機101に格納されたApplet433やXlet434のリストが表示される。
次に、オペレーションパネル202の画面上やPC401の画面上で、メニューページに表示されているリストの中から「Trimming Applet601」が選択(S111)されると、Webブラウザ181等からWebサーバソフト562にTrimming Applet601の転送要求が送信(S112)される。次に、Webサーバソフト562がWebサーバとしてTrimming Applet601をWebブラウザ181等に転送(S113)して、Webブラウザ181等がWebクライアントとしてTrimming Applet601を融合機101内やPC401内に起動(S114)させる。次に、TrimmingApplet601からネットワークファイルアプリ145に「画像ファイル」のリストの転送要求が送信(S115)される。次に、ネットワークファイルアプリ145からTrimming Applet601に「画像ファイル」のリストが転送(S116)される。そして、オペレーションパネル202の画面上やPC401の画面上に、TrimmingApplet601により操作画面が表示(S117)される。操作画面には、融合機101に格納された「画像ファイル」のリストが表示される。操作画面では、融合機101に格納された「画像ファイル」の印刷処理を当該融合機101に実行させる旨の操作を行う事ができる。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されているリストの中から任意の「画像ファイル」が選択(S121)されると、TrimmingApplet601からネットワークファイルアプリ145に当該「画像ファイル」の画像データの転送要求が送信(S122)される。次に、ネットワークファイルアプリ145からTrimming Applet601に当該「画像ファイル」の画像データが転送(S123)される。そして、オペレーションパネル202の画面上やPC401の画面上で、TrimmingApplet601により当該「画像ファイル」の画像が操作画面に表示(S124)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されている「画像」の編集操作(融合機101に格納されている当該「画像」の印刷条件の設定操作)が実施(S131)されて、融合機101に格納されている当該「画像」の印刷処理を当該融合機101に実行させる旨の操作が実施(S132)されると、Trimming Applet601からプリンタアプリ142に当該「画像」の印刷処理に係る印刷要求が送信(S133)される。次に、当該「画像」の印刷が当該融合機101で実行(S134)される。次に、プリンタアプリ142からTrimming Applet601に当該「画像」の印刷処理に係る印刷応答が送信(S135)される。最後に、オペレーションパネル202の画面上やPC401の画面上で、当該「画像」の印刷が当該融合機101で実行された旨が操作画面に表示(S136)される。
図18は、Trimming Xlet602に係るシーケンス図である。
図18は、図1の融合機101が自機(図2のオペレーションパネル202)をWebクライアントとするWebサーバとして機能する場合、図1の融合機101が他機(図5のPC401)をWebクライアントとするWebサーバとして機能する場合、の両者について統一的に説明するためのシーケンス図となっている。文中、Webブラウザ181とWebブラウザ421のことをWebブラウザ181等、JWS182とJWS422のことをJWS182等、Servlet Engine563とJSP Engine564のことをServlet Engine563等、と略記することにする。
先ず、オペレーションパネル202の画面上やPC401の画面上で、Webブラウザ181等により表示されている「メニューページボタン」が押下(S201)されると、Webブラウザ181等からWebサーバソフト562に「メニューページ」の転送要求が送信(S202)される。次に、Webサーバソフト562からServlet Engine563等に「メニューページ」の生成要求が送信(S203)される。次に、Servlet Engine563等がMenu Server513を融合機101内に起動(S204)させる。次に、Menu Server513が「メニューページ」を生成(S205)する。次に、Menu Server513が「メニューページ」をWebブラウザ181等に転送(S206)する。そして、オペレーションパネル202の画面上やPC401の画面上に、Webブラウザ181等により「メニューページ」が表示(S207)される。メニューページには、融合機101に格納されたApplet433やXlet434のリストが表示される。
次に、オペレーションパネル202の画面上やPC401の画面上で、メニューページに表示されたリストの中から「Trimming Xlet602」が選択(S211)されると、Webブラウザ181等がJWS182等を融合機101内やPC501内に起動(S212)させる。次に、JWS182等からWebサーバソフト562にTrimming Xlet602の転送要求が送信(S213)される。次に、Webサーバソフト562がWebサーバとして、Trimming Xlet602とJSDK Emulator435(図1の融合機101や図6のサーバに格納されているもの)とをJWS182等に転送(S214)して、JWS182等がWebクライアントとして、JSDK Emulator435を融合機101内やPC501内に起動(S215)させて、JSDK Emulator435によりTrimming Xlet602を融合機101内やPC401内に起動(S216)させる。次に、Trimming Xlet602からネットワークファイルアプリ145に対して「画像ファイル」のリストの転送要求が送信(S217)される。次に、ネットワークファイルアプリ145からTrimming Xlet602に対して「画像ファイル」のリストが転送(S218)される。そして、オペレーションパネル202の画面上やPC401の画面上に、Trimming Xlet602により操作画面が表示(S219)される。操作画面には、融合機101に格納された「画像ファイル」のリストが表示される。操作画面では、融合機101に格納された「画像ファイル」の印刷処理を当該融合機101に実行させる旨の操作を行う事ができる。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されたリストの中から任意の「画像ファイル」が選択(S221)されると、Trimming Xlet602からネットワークファイルアプリ145に対して当該「画像ファイル」の画像データの転送要求が送信(S222)される。次に、ネットワークファイルアプリ145からTrimmingXlet602に対して当該「画像ファイル」の画像データが転送(S223)される。そして、オペレーションパネル202の画面上やPC401の画面上で、TrimmingXlet602により当該「画像ファイル」の画像が操作画面に表示(S224)される。
ここで、融合機101に格納されている「画像」の印刷処理を当該融合機101に実行させる場合について説明する。
先ず、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されている「画像」の編集操作(融合機101に格納されている当該「画像」の印刷条件の設定操作)が実施(S231)されて、融合機101に格納されている当該「画像」の印刷処理を当該融合機101に実行させる旨の操作が実施(S232)されると、Trimming Xlet601からプリンタアプリ142に当該「画像」の印刷処理に係る印刷要求が送信(S233)される。次に、当該「画像」の印刷が当該融合機101にて実行(S234)される。次に、プリンタアプリ142からTrimming Xlet601に当該「画像」の印刷処理に係る印刷応答が送信(S235)される。そして最後に、オペレーションパネル202の画面上やPC401の画面上で、当該「画像」の印刷が当該融合機101にて実行された旨が操作画面に表示(S236)される。
ここで、融合機101に格納されている「画像」の印刷処理を当該融合機101以外の画像形成装置に実行させる場合について説明する。
先ず、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されている「画像」の編集操作(融合機101に格納されている当該「画像」の印刷条件の設定操作)が実施(S241)されて、融合機101に格納されている当該「画像」の印刷処理を当該融合機101以外の任意の画像形成装置に実行させる旨の操作が実施(S242)されると、JSDK Emulator435が印刷先を当該融合機101から当該画像形成装置に変更(S243)する。次に、TrimmingXlet601から当該画像形成装置に当該「画像」の印刷処理に係る印刷要求が送信(S244)される。次に、当該「画像」の印刷が当該画像形成装置にて実行(S245)される。次に、当該画像形成装置からTrimmingXlet601に当該「画像」の印刷処理に係る印刷応答が送信(S246)される。そして最後に、オペレーションパネル202の画面上やPC401の画面上で、当該「画像」の印刷が当該画像形成装置にて実行された旨が操作画面に表示(S247)される。
さて、JSDK Emulator435は、Xlet434を起動させる起動機能とXlet434の実行環境の差を吸収する吸収機能とを具備する。JSDK Emulator435は、図18のS216ではTrimming Xlet602を起動させている。これが起動機能(図19)である。JSDK Emulator435は、図18のS216以降ではTrimming Xlet602と他のブロックとの通信のインタフェースとなりTrimming Xlet602の実行環境の差を吸収している。これが吸収機能(図19)である。なお、図18のS216以降の各ステップ(S217,S218,S219等)でのTrimming Xlet602と他のブロックとの通信はJSDK Emulator435を経由して実行されているのだが、図18では便宜上略記した。
また、JSDK Emulator435は、Xlet434の通信先を変更する変更機能を具備する。JSDK Emulator435は、図18のS243では印刷先を図1の融合機101から図1の融合機101以外の画像形成装置に変更している。これが変更機能(図19)である。JSDK Emulator435には、図19のように、Xlet434の通信先を変更する変更機能に係るブロックとして、Xlet434への入力先を変更するスイッチとなる入力変更部SWinと、Xlet434からの出力先を変更するスイッチとなる出力変更部SWoutが存在する。なお、JSDK Emulator435はここでは自機用と他機用を同じものとしたが、実行環境の差を吸収すべきが専ら他機に限定される場合は、JSDK Emulator435に自機用と他機用を設けて、変更機能は具備するものの起動機能や吸収機能は具備しないものを自機用としてもよい。
(2)第2具体例
図20は、第2具体例に係るソフトウェア構成図である。図1の融合機101には、図2のオペレーションパネル202の画面上や図5のPC401の画面上で操作を行うための操作画面を図2のオペレーションパネル202の画面上や図5のPC401の画面上に表示するManaging Applet603やManaging Xlet604が存在する。以下、第1具体例と第2具体例の共通事項については説明を省略する。
Managing Applet603は、図1の融合機101や図5のPC401で図1のWebブラウザ181や図5のWebブラウザ421により実行される事になる。こうして表示される操作画面では、図1の融合機101にプログラムをインストールする旨の操作や図1の融合機101内にプログラムを起動させる旨の操作を行う事ができる。操作画面の様子は、図10Dのインストール操作画面や図10Bの起動操作画面と同様である。
Managing Xlet604は、図1の融合機101や図5のPC401で図1のJWS182(図8のJWS561でもよい)や図5のJWS422により実行される事になる。こうして表示される操作画面では、図1の融合機101や図1の融合機101以外の画像形成装置にプログラムをインストールする旨の操作や図1の融合機101内や図1の融合機101以外の画像形成装置内にプログラムを起動させる旨の操作を行う事ができる。操作画面の様子は、図10Dのインストール操作画面や図10Bの起動操作画面と同様である。
図21は、第2具体例におけるプログラムのインストール方式について説明するための図である。
図21Aは、図1の融合機101にプログラムをインストールする旨の操作を、図2のオペレーションパネル202の画面上に表示されている操作画面で行う様子を表す。図1の融合機101のManaging Applet603が図1のWebブラウザ181により実行されて表示される操作画面(自機上MA操作画面と呼ぶことにする)でも、図1の融合機101のManaging Xlet604が図1のJWS182により実行されて表示される操作画面(自機上MX操作画面と呼ぶことにする)でも、図のように、同融合機101にプログラムをインストールする事ができる。
図中A1は、図1の融合機101にセットされたSDcardから図1の融合機101にプログラムをインストールする様子を表す。これは自機上MA操作画面でも自機上MX操作画面でも実施できる。図中A2は、図1の融合機101とネットワークで接続されたWebサーバから図1の融合機101にプログラムをインストールする様子を表す。これは自機上MA操作画面でも自機上MX操作画面でも実施できる。
図21Bは、図1の融合機101にプログラムをインストールする旨の操作を、図5のPC401の画面上に表示されている操作画面で行う様子を表す。図1の融合機101のManaging Applet603が図5のWebブラウザ421により実行されて表示される操作画面(他機上MA操作画面と呼ぶことにする)でも、図1の融合機101のManaging Xlet604が図5のJWS422により実行されて表示される操作画面(他機上MX操作画面と呼ぶことにする)でも、図のように、同融合機101にプログラムをインストールする事ができる。
図中B1は、図5のPC401にセットされたSDcardから図1の融合機101にプログラムをインストールする様子を表す。これは他機上MA操作画面では実施できないが他機上MX操作画面では実施できる。図中B2は、図1の融合機101にセットされたSDcardから図1の融合機101にプログラムをインストールする様子を表す。これは他機上MA操作画面では実施できないが他機上MX操作画面では実施できる。図中B3は、図5のPC401とネットワークで接続されたWebサーバから図1の融合機101にプログラムをインストールする様子を表す。これは他機上MA操作画面でも他機上MA操作画面でも実施できる。図中B4は、図1の融合機101とネットワークで接続されたWebサーバから図1の融合機101にプログラムをインストールする様子を表す。これは他機上MA操作画面でも他機上MA操作画面でも実施できる。
図21Cは、図1の融合機101を含む又は除く2台以上の画像形成装置にプログラムを一斉にインストールする旨の操作を、図5のPC401の画面上に表示されている操作画面で行う様子を表す。図1の融合機101のManaging Applet603が図5のWebブラウザ421により実行されて表示される操作画面(他機上MA操作画面と呼ぶことにする)では、各画像形成装置にプログラムをインストールする事ができないものの、図1の融合機101のManaging Xlet604が図5のJWS422により実行されて表示される操作画面(他機上MX操作画面と呼ぶことにする)では、各画像形成装置にプログラムをインストールする事ができる。
図中C1は、図5のPC401にセットされたSDcardから図1の融合機101を含む又は除く2台以上の画像形成装置にプログラムをインストールする様子を表す。これは他機上MA操作画面では実施できないが他機上MX操作画面では実施できる。図中C2は、図5のPC401とネットワーク接続されたWebサーバから図1の融合機101を含む又は除く2台以上の画像形成装置にプログラムをインストールする様子を表す。これは他機上MA操作画面では実施できないが他機上MX操作画面では実施できる。
図21のB1,B2,C1,C2でSDcard等の記憶媒体やWebサーバ等の情報処理装置から図1の融合機101や図1の融合機101以外の画像形成装置にプログラムをインストールする事ができるのは、他機上MA操作画面と他機上MX操作画面の内で、他機上MX操作画面だけである。しかし、他機上MX操作画面でも無条件にできるのではなく、Xlet434を起動させる起動機能とXlet434の実行環境の差を吸収する吸収機能とを具備する「JSDK Emulator435」の存在が必要となる。
図22は、Managing Applet603に係るシーケンス図である。
先ず、オペレーションパネル202の画面上やPC401の画面上で、Webブラウザ181等により表示されている「メニューページボタン」が押下(S301)されると、Webブラウザ181等からWebサーバソフト562に「メニューページ」の転送要求が送信(S302)される。次に、Webサーバソフト562からServlet Engine563等に「メニューページ」の生成要求が送信(S303)される。次に、Servlet Engine563等がMenu Server513を融合機101内に起動(S304)させる。次に、Menu Server513が「メニューページ」を生成(S305)する。次に、Menu Server513が「メニューページ」をWebブラウザ181等に転送(S306)する。そして、オペレーションパネル202の画面上やPC401の画面上に、Webブラウザ181等により「メニューページ」が表示(S307)される。メニューページには、融合機101に格納されたApplet433やXlet434のリストが表示される。
次に、オペレーションパネル202の画面上やPC401の画面上で、メニューページに表示されているリストの中から「Managing Applet603」が選択(S311)されると、Webブラウザ181等からWebサーバソフト562にManaging Applet603の転送要求が送信(S312)される。次に、Webサーバソフト562がWebサーバとしてManaging Applet603をWebブラウザ181等に転送(S313)して、Webブラウザ181等がWebクライアントとしてManaging Applet603を融合機101内やPC401内に起動(S314)させる。そしてオペレーションパネル202の画面上やPC401の画面上に、Managing Applet603により操作画面が表示(S315)される。操作画面には、融合機101にインストール可能な「プログラム」のリストや融合機101内に起動可能な「プログラム」のリストが表示されると共に、操作画面では、融合機101に「プログラム」をインストールする旨の操作や融合機101内に「プログラム」を起動させる旨の操作を行う事ができる。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されている「インストールボタン」が押下(S321)されると、Managing Applet603からInstall Manager545に「プログラム」のリストの転送要求が送信(S322)される。次に、Install Manager545が融合機101にインストール可能な「プログラム」のJNLPファイルをSDcardやWebサーバから取得(S323)する。次に、Install Manager545からManagingApplet603に「プログラム」のリストが転送(S324)される。そしてオペレーションパネル202の画面上やPC401の画面上で、Managing Applet603により融合機101にインストール可能な「プログラム」のリストが操作画面に表示(S325)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されているリストの中から任意の「プログラム」が選択(S331)され、融合機101に任意の「プログラム」をインストールする旨の操作が実施(S332)されると、ManagingApplet603からInstallManager545に当該「プログラム」に係るインストール要求が送信(S333)される。次に、当該「プログラム」のJARファイルがSDcardやWebサーバから取得(S334)され、当該融合機101に当該「プログラム」がインストール(S335)される。次に、InstallManager545からManagingApplet603に当該「プログラム」に係るインストール応答が送信(S336)される。そしてオペレーションパネル202の画面上やPC401の画面上で、当該融合機101に当該「プログラム」がインストールされた旨が操作画面に表示(S337)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されている「起動ボタン」が押下(S341)されると、ManagingApplet603からInstallManager545に「プログラム」のリストの転送要求が送信(S342)される。次に、Install Manager545が融合機101内に起動可能な「プログラム」のJNLPファイルをSDcardやHDDから取得(S343)する。次に、Install Manager545からManaging Applet603に「プログラム」のリストが転送(S344)される。そしてオペレーションパネル202の画面上やPC401の画面上で、Managing Applet603により融合機101内に起動可能な「プログラム」のリストが操作画面に表示(S345)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されているリストの中から任意の「プログラム」が選択(S351)され、融合機101内に任意の「プログラム」を起動させる旨の操作が実施(S352)されると、ManagingApplet603からJSDK Manager533に当該「プログラム」に係る起動要求が送信(S353)される。次に、当該「プログラム」のJARファイルがSDcardやHDDから取得(S354)されて、当該融合機101内に当該「プログラム」が起動(S355)される。次に、JSDK Manager533からManagingApplet603に当該「プログラム」に係る起動応答が送信(S356)される。そしてオペレーションパネル202の画面上やPC401の画面上で、当該融合機101内に当該「プログラム」が起動された旨が操作画面に表示(S357)される。
図23は、Managing Xlet604に係るシーケンス図である。
先ず、オペレーションパネル202の画面上やPC401の画面上で、Webブラウザ181等により表示されている「メニューページボタン」が押下(S401)されると、Webブラウザ181等からWebサーバソフト562に「メニューページ」の転送要求が送信(S402)される。次に、Webサーバソフト562からServlet Engine563等に「メニューページ」の生成要求が送信(S403)される。次に、Servlet Engine563等がMenu Server513を融合機101内に起動(S404)させる。次に、Menu Server513が「メニューページ」を生成(S405)する。次に、Menu Server513が「メニューページ」をWebブラウザ181等に転送(S406)する。そして、オペレーションパネル202の画面上やPC401の画面上に、Webブラウザ181等により「メニューページ」が表示(S407)される。メニューページには、融合機101に格納されたApplet433やXlet434のリストが表示される。
次に、オペレーションパネル202の画面上やPC401の画面上で、メニューページに表示されたリストの中から「Managing Xlet604」が選択(S411)されると、Webブラウザ181等がJWS182等を融合機101内やPC501内に起動(S412)させる。次に、JWS182等からWebサーバソフト562にManaging Xlet604の転送要求が送信(S413)される。次に、Webサーバソフト562がWebサーバとして、Managing Xlet604とJSDK Emulator435(図1の融合機101や図6のサーバに格納されているもの)とをJWS182等に転送(S414)して、JWS182等がWebクライアントとして、JSDK Emulator435を融合機101内やPC501内に起動(S415)させて、JSDK Emulator435によりManaging Xlet604を融合機101内やPC401内に起動(S416)させる。そしてオペレーションパネル202の画面上やPC401の画面上に、Managing Xlet604により操作画面が表示(S417)される。操作画面には、融合機101等の種々の画像形成装置にインストール可能な「プログラム」のリストや融合機101等の種々の画像形成装置内に起動可能な「プログラム」のリストが表示されると共に、操作画面では、融合機101等の種々の画像形成装置に「プログラム」をインストールする旨の操作や融合機101等の種々の画像形成装置内に「プログラム」を起動させる旨の操作を行う事ができる。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示された「インストールボタン」が押下(S421)されると、ManagingXlet604からInstallManager545に対して「プログラム」のリストの転送要求が送信(S422)される。次に、Install Manager545が融合機101等の種々の画像形成装置にインストール可能な「プログラム」のJNLPファイルをSDcardやWebサーバから取得(S423)する。次に、InstallManager545からManagingXlet604に対して「プログラム」のリストが転送(S324)される。そして、オペレーションパネル202の画面上やPC401の画面上で、ManagingXlet604により融合機101等の種々の画像形成装置にインストール可能な「プログラム」のリストが操作画面に表示(S425)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されたリストの中から任意の「プログラム」が選択(S431)されて、融合機101等の種々の画像形成装置に任意の「プログラム」をインストールする旨の操作が実施(S432)されると、Managing Xlet604から当該融合機101(Install Manager545)等の種々の画像形成装置に当該「プログラム」に係るインストール要求が送信(S433)される。次に、当該「プログラム」のJARファイルがSDcardやWebサーバから取得(S434)されて、当該融合機101等の種々の画像形成装置に当該「プログラム」がインストール(S435)される。次に、当該融合機101(InstallManager545)等の種々の画像形成装置からManagingXlet604に対して当該「プログラム」に係るインストール応答が送信(S436)される。そしてオペレーションパネル202の画面上やPC401の画面上で、当該融合機101等の種々の画像形成装置に当該「プログラム」がインストールされた旨が操作画面に表示(S437)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示された「起動ボタン」が押下(S441)されると、Managing Xlet604からInstallManager545に対して「プログラム」のリストの転送要求が送信(S442)される。次に、InstallManager545が融合機101等の種々の画像形成装置内に起動可能な「プログラム」のJNLPファイルをSDcardやHDD等から取得(S443)する。次に、InstallManager545からManaging Xlet604に対して「プログラム」のリストが転送(S444)される。そして、オペレーションパネル202の画面上やPC401の画面上で、Managing Xlet604により融合機101等の種々の画像形成装置内に起動可能な「プログラム」のリストが操作画面に表示(S445)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されたリストの中から任意の「プログラム」が選択(S451)され、融合機101等の種々の画像形成装置内に任意の「プログラム」を起動させる旨の操作が実施(S452)されると、Managing Xlet604から当該融合機101(JSDK Manager533)等の種々の画像形成装置に対して当該「プログラム」に係る起動要求が送信(S453)される。次に、当該「プログラム」のJARファイルがSDcardやHDD等から取得(S454)され、当該融合機101等の種々の画像形成装置内に当該「プログラム」が起動(S455)される。次に、当該融合機101(JSDK Manager533)等の種々の画像形成装置からManaging Xlet604に当該「プログラム」に係る起動応答が送信(S456)される。そしてオペレーションパネル202の画面上やPC401の画面上で、当該融合機101等の種々の画像形成装置内に当該「プログラム」が起動された旨が操作画面に表示(S457)される。
(3)特殊な融合機
通常の融合機101は、1枚のマザーボードと1枚のLANボードを備えており1個のMACアドレスと1個のIPアドレスを有しているのに対して、ある特殊な融合機101は、2枚のマザーボードと2枚のLANボードを備えており2個のMACアドレスと2個のIPアドレスを有している。一方は融合機101用であり他方はオペレーションパネル202用であり、両者はTCP/IPで通信を行う。あたかも1台の融合機101に2台のPCが搭載されているような実装である。オペレーションパネル202の制御が融合機101の制御から独立しているため、PCで実行するような大容量のアプリケーションを融合機101で実行する事ができる。
上記の第1具体例や第2具体例は、この特殊な融合機101についても適用されるものである。この特殊な融合機101のオペレーションパネル202がWebクライアントとなる場合について考察するに、分類としては「自機」がWebクライアントとなる場合に属するものの、情報処理の実態としては「他機」がWebクライアントとなる場合に近いところもあるのである。
(変形例)
図1の融合機101は、本発明「画像形成装置」の実施例に該当するものであり、図1の融合機101によって実行される情報処理は、本発明「情報処理方法」の実施例に該当するものである。当該情報処理方法をコンピュータに実行させるコンピュータプログラムは、本発明「情報処理プログラム」の実施例に該当するものであり、当該情報処理方法をコンピュータに実行させるコンピュータプログラムが記録されたCD−ROMやDVD−ROMやSDメモリカードは、本発明「記録媒体」の実施例に該当するものである。