JP2014179002A - Information processing device, information processing system, information processing method, information processing program, and recording medium - Google Patents
Information processing device, information processing system, information processing method, information processing program, and recording medium Download PDFInfo
- Publication number
- JP2014179002A JP2014179002A JP2013053915A JP2013053915A JP2014179002A JP 2014179002 A JP2014179002 A JP 2014179002A JP 2013053915 A JP2013053915 A JP 2013053915A JP 2013053915 A JP2013053915 A JP 2013053915A JP 2014179002 A JP2014179002 A JP 2014179002A
- Authority
- JP
- Japan
- Prior art keywords
- module
- information processing
- access
- information
- program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
Description
本発明は、情報処理装置、情報処理システム、情報処理方法、情報処理プログラム及び記録媒体に関する。 The present invention relates to an information processing apparatus, an information processing system, an information processing method, an information processing program, and a recording medium.
開発環境において、電子機器に搭載されるアプリケーションの動作検証を行うため、実機(電子機器)を使用せず、例えばPC(Personal Computer)上で動作するエミュレータによる動作検証が行われている。なお、電子機器は、例えばMFP(Multifunction Peripheral)等の画像形成装置やサーバ等の情報処理装置である。このエミュレータは、アプリケーションの開発範囲を明確化するために、上位モジュールとなる実モジュールに手を加えずに、下位モジュールをスタブ化することで作成される。 In order to verify the operation of an application installed in an electronic device in a development environment, the operation is verified by an emulator that operates on a PC (Personal Computer), for example, without using an actual device (electronic device). The electronic apparatus is an image forming apparatus such as an MFP (Multifunction Peripheral) or an information processing apparatus such as a server. This emulator is created by stubbing the lower module without modifying the actual module that is the upper module in order to clarify the development range of the application.
また、実機では上位モジュールから下位モジュールを参照する依存関係のみが存在しているが、エミュレータの設計をより単純明瞭化するため、エミュレーションを行う場合にのみ下位モジュールであるスタブモジュールから上位モジュールである実モジュールへの依存関係を新たに設定したい場合がある。 Moreover, in the actual machine, there is only a dependency that refers to the lower module from the upper module, but in order to make the emulator design simpler and clearer, the stub module, which is the lower module, is used only for emulation. You may want to set a new dependency on the actual module.
しかしながら、そのような場合、上位モジュールである実モジュールに修正を加えずに下位モジュールから上位モジュールへの依存関係を設定すると、下位モジュールから上位モジュールへの参照ができない場合が生じ得る問題があり、エミュレータの設計を複雑化させてしまっている。 However, in such a case, there is a problem that if the dependency relationship from the lower module to the upper module is set without modifying the actual module that is the upper module, the lower module cannot be referred to the upper module. Emulator design has been complicated.
そこで、特許文献1には、開発したプログラムの挙動を画像形成装置により近い挙動を実現することにより、複合機の開発作業を効率化することを目的として、上位モジュールは実際の複合機と同等の実モジュールを用い、下位モジュールはPC上で動作するためにエミュレートしたスタブモジュールを用いた構成にすることで、複合機のエミュレータを実現する技術が開示されている。 Therefore, in Patent Document 1, for the purpose of improving the efficiency of the development work of the multifunction device by realizing the behavior of the developed program closer to that of the image forming apparatus, the upper module is equivalent to the actual multifunction device. There is disclosed a technique for realizing an emulator of a multi-function peripheral by using a real module and using a stub module emulated to operate on a PC as a lower module.
しかしながら、特許文献1に記載の技術では、下位モジュールであるスタブモジュールから上位モジュールである実モジュールへの依存関係を新たに設定する場合、下位モジュールから上位モジュールへの参照ができない場合が生じ得るという問題を解消できない。 However, in the technique described in Patent Document 1, when a dependency relationship from a stub module, which is a lower module, to a real module, which is a higher module, is newly set, it may occur that the lower module cannot be referred to the higher module. The problem cannot be solved.
そこで、本発明は上記の点に鑑みてなされたものであって、エミュレータの開発において、上位モジュールである実モジュールに修正を加えずに下位モジュールから上位モジュールへ依存した処理を実現することを目的とする。 Therefore, the present invention has been made in view of the above points, and an object of the present invention is to realize processing dependent on a higher module from a lower module without modifying an actual module that is a higher module in the development of an emulator. And
そこで上記課題を解決するため、情報処理装置は、機器上で動作する所定の処理を実行するためのプログラムの動作を再現する情報処理装置であって、前記機器が動作させる前記プログラムのモジュールと同等のモジュールである上位モジュールと、当該情報処理装置上で前記プログラムの動作を再現させるための下位モジュールとを備え、前記モジュールを識別する識別情報と前記下位モジュールから前記上位モジュールへのアクセスを可能にするアクセス情報とを対応付けて管理するアクセス情報管理手段と、前記下位モジュールからのアクセス対象の前記上位モジュールの前記識別情報に対応する前記アクセス情報に基づき、前記下位モジュールから前記上位モジュールにアクセスするアクセス手段とを有する。 In order to solve the above problem, an information processing apparatus is an information processing apparatus that reproduces the operation of a program for executing a predetermined process that operates on a device, and is equivalent to a module of the program that the device operates. And a lower module for reproducing the operation of the program on the information processing apparatus, enabling identification information for identifying the module and access from the lower module to the upper module. Access information management means for managing the access information in association with each other, and the lower module accesses the upper module based on the access information corresponding to the identification information of the upper module to be accessed from the lower module Access means.
本発明の実施形態によれば、エミュレータの開発において、上位モジュールである実モジュールに修正を加えずに下位モジュールから上位モジュールへ依存した処理を実現できる。 According to the embodiment of the present invention, in the development of an emulator, it is possible to realize processing depending on a higher module from a lower module without modifying a real module that is a higher module.
以下、本発明の実施の形態(以下、「実施形態」という。)を図面に基づいて説明する。 Hereinafter, embodiments of the present invention (hereinafter referred to as “embodiments”) will be described with reference to the drawings.
[システム構成]
図1は、本発明の実施形態におけるエミュレーションシステム1のシステム構成の一例を示す図である。エミュレーションシステム1は、情報処理装置10と、画像形成装置20とを有する。情報処理装置10と画像形成装置20とは、LAN(Local Area Network)又はインターネット等のネットワークN1を介して接続されている。
[System configuration]
FIG. 1 is a diagram illustrating an example of a system configuration of an emulation system 1 according to an embodiment of the present invention. The emulation system 1 includes an
画像形成装置20は、印刷、スキャン、コピー及びファクス(FAX)通信等のうちの一以上の機能を一台の筐体によって実現するプリンタや複合機MFP(Multifunction Peripheral)等の電子機器である。画像形成装置20は、汎用OS(Operating System)21及びアプリケーション22等を有し、アプリケーション22には上位モジュール22及び下位モジュール23が含まれる。汎用OS21は、画像形成装置20のアプリケーション22とハードウェアとを仲介し、コンピュータデバイスのリソースの共有の管理、各リソースにアクセスするためのインタフェースの提供、他のアプリケーションに対するサービスの提供を行う汎用OSである。アプリケーション22は、汎用OS21上で動作するプログラムであり、例えばJava(登録商標)アプリケーションである。アプリケーション22に含まれる上位モジュール23は、下位モジュール24を利用するモジュールである。なお、アプリケーション22、上位モジュール23及び下位モジュール24は、複数存在してもよい。
The
情報処理装置10は、例えば画像形成装置20の開発環境において用いられる、画像形成装置20に搭載されたモジュールを仮想的に実行するコンピュータである。情報処理装置10は、例えばPC(Personal Computer)等である。情報処理装置10は、OS11、アプリケーション12及びエミュレータ16等を有し、アプリケーション12には上位モジュール(実モジュール)13、下位モジュール(スタブモジュール)14及び管理モジュール15が含まれる。OS11は、情報処理装置に搭載されたOSである。アプリケーション12は、OS11上で動作するプログラムであり、例えばJavaアプリケーションである。アプリケーション12に含まれる上位モジュール(実モジュール)13は、画像形成装置20が備える上位モジュール23と同等の実モジュールである。なお、上位モジュール(実モジュール)13は、例えば画像形成装置20が備える上位モジュール23がコピーされたものであり、上位モジュール23の機能(インタフェースを含む)と同一の機能を有するモジュールである。下位モジュール(スタブモジュール)14は、実モジュールである上位モジュール(実モジュール)13により利用される(呼び出される)画像形成装置20が備える下位モジュール24の代用とされる仮のモジュールである。管理モジュール15は、モジュールをロードするクラスローダの情報を管理する。また、クラスローダは、モジュール間の参照(アクセス)を可能にするアクセス情報である。エミュレータ16は、画像形成装置20が備えるアプリケーション22が実行される環境を、情報処理装置10で仮想的に構築するプログラムである。情報処理装置10は、ネットワークN1を介して、取得(コピー)した画像形成装置20が備える上位モジュール23に基づき、上位モジュール(実モジュール)13を生成する。但し、上位モジュール23が記録された外部記録媒体を用いて、情報処理装置10に上位モジュールを移管させてもよい。この場合、情報処理装置10と画像形成装置20とは、ネットワークN1を介して接続していなくてもよい。
The
エミュレーションシステム1は、画像形成装置20の開発環境で用いられ、画像形成装置20が有するモジュールを、情報処理装置10により構築された仮想環境において実行させるシステムである。エミュレーションシステム1により、例えば、画像形成装置20のオペレーションパネルの表示部への表示命令に対しては、情報処理装置10のエミュレータ16が画像形成装置20上に表示する画面と同様の画面を情報処理装置10のディスプレイ上に表示する。但し、開発環境である情報処理装置10は画像形成装置20におけるエンジン(スキャナ、プリンタ等)を備えていないため、例えばプリント命令に対しては、情報処理装置10の画面上にプリントを行う画像を表示したり、情報処理装置10に接続されているデフォルトのプリンタに印刷したりする。また、ユーザがコピー操作を情報処理装置10のエミュレータ画面上で行った場合は、例えば、ユーザにコピー対象となるファイルをローカルファイルシステムから選ぶように通知し、コピーの宛先を尋ねるダイアログボックスを表示し、選択されたファイルをその指定された宛先にコピーする。
The emulation system 1 is a system that is used in the development environment of the
[動作概要]
次に本発明の実施形態におけるエミュレーションシステム1の動作概要を、従来の動作と比較して説明する。
[Operation overview]
Next, the operation outline of the emulation system 1 in the embodiment of the present invention will be described in comparison with the conventional operation.
クラス(モジュール)をロードするクラスローダは、図2に示されるような階層構造(ツリー構造)を有する。図2は、クラスローダの構造の一例を示す図である。図2の例では、ブートスラップクラスローダはシステムクラスローダ以下のクラスローダに対して上位のクラスローダであり、システムクラスローダは共有コンポーネントクラスローダ以下のクラスローダに対して上位のクラスローダである。逆にシステムクラスローダは、ブートストラップクラスローダの下位のクラスローダである。なお、図2に示したクラスローダの名称及び構造は一例であって、クラスローダの名称及び構造は図2の例に限らない。 A class loader that loads classes (modules) has a hierarchical structure (tree structure) as shown in FIG. FIG. 2 is a diagram illustrating an example of the structure of the class loader. In the example of FIG. 2, the boot slap class loader is a higher class loader than the class loader below the system class loader, and the system class loader is a higher class loader than the class loader below the shared component class loader. On the other hand, the system class loader is a class loader lower than the bootstrap class loader. Note that the name and structure of the class loader shown in FIG. 2 are examples, and the name and structure of the class loader are not limited to the example of FIG.
このクラスローダの階層構造により、下位のクラスローダでロードされたモジュールは上位のクラスローダでロードされたモジュールを参照(アクセス)できるが、逆に、上位のクラスローダでロードされたモジュールは、下位のクラスローダでロードされたモジュールを参照できない。例えば、図3に従来のモジュール間の参照可否の状況を説明するための一例を示す。図3に示されるように、下位のクラスローダ(例えば「クラスローダA」)によりロードされた上位モジュール(実モジュール)13に対して、上位のクラスローダ(例えば「クラスローダB」)によりロードされた下位モジュール(スタブモジュール)14から上位のクラスローダ(クラスローダB)を用いて参照(アクセス)することはできない。一方、上位モジュール(実モジュール)13から下位モジュール(スタブモジュール)14への参照(アクセス)は可能である。このように、モジュールとクラスローダの階層との関係によっては、必ずしも下位モジュールから上位モジュールへの参照ができない場合が生じる。 With this class loader hierarchy, modules loaded with a lower class loader can refer to (access) modules loaded with a higher class loader, but conversely, modules loaded with a higher class loader Cannot refer to modules loaded by other class loaders. For example, FIG. 3 shows an example for explaining the status of whether or not reference is possible between conventional modules. As shown in FIG. 3, a higher class loader (for example, “class loader B”) is loaded to a higher level module (actual module) 13 loaded by a lower class loader (for example, “class loader A”). The lower module (stub module) 14 cannot be referenced (accessed) using the upper class loader (class loader B). On the other hand, reference (access) from the higher module (actual module) 13 to the lower module (stub module) 14 is possible. As described above, depending on the relationship between the module and the class loader hierarchy, there is a case where the lower module cannot always refer to the upper module.
一方、本発明の実施形態における下位モジュール(スタブモジュール)14から上位モジュール(実モジュール)13への参照(アクセス)処理の動作概要を図4に示す。まず、下位のクラスローダ(クラスローダA)によりロードされた上位モジュール(実モジュール)13は、自身をロードしたクラスローダ(クラスローダA)を、管理モジュール13に通知する(S1)。次に、下位モジュール(スタブモジュール)14は、管理モジュール15から、上位モジュール(実モジュール)13がロードされたクラスローダ(クラスローダA)を取得する(S2)。そして、下位モジュール(スタブモジュール)14は、取得したクラスローダ(クラスローダA)を用いて、上位モジュール(実モジュール)13を参照する。
On the other hand, FIG. 4 shows an outline of the operation of the reference (access) processing from the lower module (stub module) 14 to the upper module (real module) 13 in the embodiment of the present invention. First, the upper module (real module) 13 loaded by the lower class loader (class loader A) notifies the
このように、本発明の実施形態では、下位モジュール(スタブモジュール)14から上位モジュール(実モジュール)13への参照(アクセス)時に、下位モジュール(スタブモジュール)14は、実際に上位モジュール(実モジュール)13をロードしたクラスローダを用いて、参照(アクセス)を行う。これにより、クラスローダの階層(上位又は下位)に依存せず、確実に、下位モジュール(スタブモジュール)14から上位モジュール(実モジュール)13を参照(アクセス)できる。 As described above, in the embodiment of the present invention, when the lower module (stub module) 14 refers (accesses) to the upper module (real module) 13, the lower module (stub module) 14 actually ) Reference (access) is performed using the class loader loaded with 13. Thus, the upper module (actual module) 13 can be reliably referenced (accessed) from the lower module (stub module) 14 without depending on the hierarchy (upper or lower) of the class loader.
[ハードウェア構成]
図5は、本発明の実施形態における情報処理装置10のハードウェア構成の一例を示す図である。情報処理装置10は、それぞれバスBで相互に接続されているドライブ装置100と、補助記憶装置102と、メモリ装置103と、CPU104と、インタフェース装置105と、表示装置106と、入力装置107とを有する。
[Hardware configuration]
FIG. 5 is a diagram illustrating an example of a hardware configuration of the
情報処理装置10での処理を実現するプログラムは、CD−ROM等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
A program for realizing processing in the
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って情報処理装置10に係る機能を実行する。インタフェース装置105は、有線又は無線LAN等のネットワークに接続するためのインタフェースとして用いられる。表示装置106は、例えば液晶ディスプレイや有機ELディスプレイ等のユーザに情報を表示出力するハードウェアである。入力装置107は、例えばマウスやキーボード等のユーザからの情報の入力を受け付けるためのハードウェアである。
The
[機能構成]
図6は、本発明の実施形態におけるエミュレーションシステムの機能構成の一例を示す図である。
[Function configuration]
FIG. 6 is a diagram illustrating an example of a functional configuration of the emulation system according to the embodiment of the present invention.
情報処理装置10は、上位モジュール(実モジュール)13に含まれるクラスローダ通知手段131及び下位モジュール参照手段132と、下位モジュール(スタブモジュール)14に含まれるクラスローダ取得手段141及び上位モジュール参照手段142と、管理モジュール15に含まれるクラスローダ受付手段151、クラスローダ管理手段152、クラスローダ送信手段153及びクラスローダ情報管理テーブル154と、エミュレータ16に含まれるクラスローダ手段161とを有する。各機能はCPU104がプログラムを実行し、ハードウェアと協働することで実現される。
The
エミュレータ16に含まれるクラスローダ手段161は、モジュール(上位モジュール(実モジュール)13、下位モジュール(スタブモジュール)14、管理モジュール15)毎に関連付けられたクラスローダに従い、情報処理装置10が備えるメモリ装置103に、各モジュールをロードする。
The class loader means 161 included in the
上位モジュール(実モジュール)13に含まれるクラスローダ通知手段131は、上位モジュール(実モジュール)13がクラスローダによりロードされると、ロードに用いられたクラスローダ情報を、管理モジュール15に通知する。ここでクラスローダ情報とは、各モジュールを識別するためのモジュール識別子及びロードに用いられたクラスローダ(例えば、クラスローダ名)である。
The class loader notification means 131 included in the upper module (real module) 13 notifies the
下位モジュール参照手段132は、スタブモジュールである下位モジュール(スタブモジュール)14を参照する。 The lower module reference means 132 refers to the lower module (stub module) 14 which is a stub module.
管理モジュール15に含まれるクラスローダ受付手段151は、上位モジュール(実モジュール)13から通知されたクラスローダ情報を受け付けると、クラスローダ管理手段152に通知する。
When the class
クラスローダ管理手段152は、図7に示されるクラスローダ情報管理テーブル154を用いて、クラスローダ情報を管理し、要求に応じてクラスローダの読み出しや書き込み処理を行う。図7は、本発明の実施形態におけるクラスローダ情報管理テーブル154に記憶される情報の一例を示す図である。図7に示されるように、クラスローダ情報管理テーブル154には、「モジュール識別子」に対応付けて「クラスローダ」が記憶されている。
The class
図6に戻り説明する。 Returning to FIG.
クラスローダ送信手段153は、下位モジュール(スタブモジュール)14から送信される、上位モジュール(実モジュール)13のモジュール識別子を含むクラスローダ取得要求を受け付けると、クラスローダ管理手段152を介してクラスローダ情報管理テーブル154からクラスローダ取得要求に含まれるモジュール識別子に対応するクラスローダを取得する。そして、クラスローダ送信手段153は、取得したクラスローダを、下位モジュール(スタブモジュール)14に送信する。
When the class
下位モジュール(スタブモジュール)14に含まれるクラスローダ取得手段141は、下位モジュール(スタブモジュール)14に対するユーザからの操作を受け付けた場合、参照先とする上位モジュール(実モジュール)13のモジュール識別情報を含むクラスローダ取得要求を管理モジュール15に送信する。そして、クラスローダ取得手段141は、クラスローダ取得要求に対する応答として、参照先とする上位モジュール(実モジュール)13がロードされたクラスローダを取得すると、上位モジュール参照手段に取得した取得したクラスロード名を通知する。
When the class loader acquisition unit 141 included in the lower module (stub module) 14 receives an operation from the user for the lower module (stub module) 14, the class loader acquisition unit 141 receives the module identification information of the higher module (actual module) 13 to be referred to. A class loader acquisition request is transmitted to the
上位モジュール参照手段142は、クラスローダ取得手段141から通知された上位モジュールのクラスローダに基づき、上位モジュールを参照する。
The upper
[動作手順]
図8は、本発明の実施形態における情報処理装置10のエミュレータ16の起動後の動作手順の一例を示すシーケンス図である。
[Operation procedure]
FIG. 8 is a sequence diagram illustrating an example of an operation procedure after activation of the
まずユーザは、情報処理装置10のキーボード等の入力装置107を操作し(S101)、エミュレータ16を起動させる(S102)。
First, the user operates the
エミュレータ16が起動されると、各モジュール(上位モジュール(実モジュール)13、下位モジュール(スタブモジュール)14、管理モジュール15)に関連付けられたクラスローダを用いて、各モジュールをメモリ装置103にロードする(S103、S104、S105)。ここで、例えば上位モジュール(実モジュール)13をロードしたクラスローダを「クラスローダA」、下位モジュール(スタブモジュール)14をロードしたクラスローダを「クラスローダB」とする。また、「クラスローダA」は「クラスローダB」の下位のクラスローダ(上位:クラスローダB、下位:クラスローダA)であるとする。したがって、この状態では、上位のクラスローダBによりロードされた下位モジュール(スタブモジュール)14からは、下位のクラスロードAによりロードされた上位モジュール(実モジュール)13を参照できない。
When the
次に、上位モジュール(実モジュール)13のクラスローダ通知手段131は、「クラスローダA」によりロードされ初期化処理が行われると、初期化処理中にロードに用いられたクラスローダ(「クラスローダA」)及び上位モジュール(実モジュール)13のモジュール識別子(例えば「モジュールA」とする)を含むクラスローダ情報を、管理モジュール15に通知する(S106)。
Next, when the class
管理モジュール15のクラスローダ受付手段151は、上位モジュール(実モジュール)13からのクラスローダ情報を受け付けると、クラスローダ管理手段152を介してクラスローダ情報管理テーブル154に、モジュール識別子(「モジュールA」)とクラスローダ(「クラスローダA」)とを対応付けて記憶する(S107)。
When the class
次に、ユーザが下位モジュール(スタブモジュール)14から上位モジュール(実モジュール)13にアクセス(参照)させる操作を行う(S108)と、エミュレータ16はユーザからの入力指示に基づく操作を下位モジュール(スタブモジュール)14に要求する(S109)。
Next, when the user performs an operation of accessing (referring to) the upper module (actual module) 13 from the lower module (stub module) 14 (S108), the
下位モジュール(スタブモジュール)14がエミュレータ16から操作の要求を受け付けると、クラスローダ取得手段141は、管理モジュール15に、上位モジュール(実モジュール)13のモジュール識別子(「モジュールA」)を含むクラスローダ取得要求を行う(S110)。
When the lower module (stub module) 14 receives an operation request from the
管理モジュール15のクラスローダ送信手段153は、クラスローダ管理手段152を介し、クラスローダ情報管理テーブル154からクラスローダ取得要求に含まれるモジュール識別子(「モジュールA」)に対応するクラスローダ(「クラスローダA」)を取得する。そして、クラスローダ送信手段153は、クラスローダ取得要求に対する応答として、クラスローダ(「クラスローダA」)を送信する(S111)。
The class
下位モジュール(スタブモジュール)14のクラスローダ取得手段141が上位モジュール(実モジュール)13のクラスローダ(「クラスローダA」)を取得すると、上位モジュール参照手段142に取得したクラスローダを通知する。そして、上位モジュール参照手段142は、上位モジュール(実モジュール)13がロードされたクラスローダ(「クラスローダA」)を用いて参照する(S112)。
When the class loader acquisition unit 141 of the lower module (stub module) 14 acquires the class loader (“class loader A”) of the upper module (real module) 13, the acquired class loader is notified to the upper
上述したように、本発明の実施形態のエミュレーションシステム1によれば、下位モジュール(スタブモジュール)14が上位モジュール(実モジュール)13を参照する場合、上位モジュール(実モジュール)13がロードされたクラスローダを管理モジュール15が管理し、下位モジュール(スタブモジュール)14が上位モジュール(実モジュール)13をロードしたクラスローダを管理モジュール15から取得する。そして、下位モジュール(スタブモジュール)14は、取得した上位モジュール(実モジュール)13がロードされたクラスロードを用いて上位モジュール(実モジュール)13を参照する。
As described above, according to the emulation system 1 of the embodiment of the present invention, when the lower module (stub module) 14 refers to the upper module (real module) 13, the class in which the higher module (real module) 13 is loaded. The
したがって、下位モジュール(スタブモジュール)14は、下位モジュール(スタブモジュール)14をロードしたクラスローダと、上位モジュール(実モジュール)13をロードしたクラスローダとの関係(上位又は下位)に依存せず、上位モジュール(実モジュール)13をロードしたクラスローダを用いることで確実に上位モジュール(実モジュール)13を参照できる。 Therefore, the lower module (stub module) 14 does not depend on the relationship (upper or lower) between the class loader loaded with the lower module (stub module) 14 and the class loader loaded with the upper module (actual module) 13. By using the class loader loaded with the upper module (actual module) 13, the upper module (actual module) 13 can be reliably referred to.
これにより、画像形成装置20等の電子機器のエミュレータの開発を行う際に、上位モジュール(実モジュール)13である実モジュールに修正を加えずとも、下位モジュール(スタブモジュール)14から上位モジュール(実モジュール)13へ依存したあらゆる処理を実装できる。
As a result, when developing an emulator for an electronic device such as the
なお、上記各実施の形態は機器の一例として画像形成装置を説明に用いただけであり、例えば、プロジェクタ、スマートフォン、携帯電話又はデジタルカメラ等のようなプログラムがインストールされる画像形成装置10以外の様々な電子機器に適用されてもよい。
Each of the above-described embodiments is only used for explaining an image forming apparatus as an example of a device. For example, various devices other than the
以上、本発明の実施形態について詳述したが、本発明はかかる特定の実施の形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。 Although the embodiments of the present invention have been described in detail above, the present invention is not limited to such specific embodiments, and various modifications are possible within the scope of the gist of the present invention described in the claims. Can be changed.
1 エミュレーションシステム
10 情報処理装置
13 上位モジュール(実モジュール)
131 クラスローダ通知手段
132 下位モジュール参照手段
14 下位モジュール(スタブモジュール)
141 クラスローダ取得手段
142 上位モジュール参照手段
15 管理モジュール
151 クラスローダ受付手段
152 クラスローダ管理手段
153 クラスローダ送信手段
154 クラスローダ情報管理テーブル
16 エミュレータ
161 クラスローダ手段
20 画像形成装置
1
131 Class loader notification means 132 Lower module reference means 14 Lower module (stub module)
141 Class
Claims (11)
前記機器が動作させる前記プログラムのモジュールと同等のモジュールである上位モジュールと、当該情報処理装置上で前記プログラムの動作を再現させるための下位モジュールとを備え、
前記モジュールを識別する識別情報と前記下位モジュールから前記上位モジュールへのアクセスを可能にするアクセス情報とを対応付けて管理するアクセス情報管理手段と、
前記下位モジュールからのアクセス対象の前記上位モジュールの前記識別情報に対応する前記アクセス情報に基づき、前記下位モジュールから前記上位モジュールにアクセスするアクセス手段とを有する情報処理装置。 An information processing apparatus that reproduces the operation of a program for executing a predetermined process that operates on a device,
An upper module that is a module equivalent to the module of the program operated by the device, and a lower module for reproducing the operation of the program on the information processing apparatus;
Access information management means for managing identification information for identifying the module in association with access information enabling access from the lower module to the upper module;
An information processing apparatus comprising: access means for accessing the upper module from the lower module based on the access information corresponding to the identification information of the upper module to be accessed from the lower module.
前記アクセス情報管理手段は、前記アクセス情報通知手段により通知された前記識別情報と前記アクセス情報とを対応付けて管理する請求項1記載の情報処理装置。 An access information notifying means for notifying the access information managing means together with the identification information of the upper module when the upper module is activated, together with the identification information of the upper module;
The information processing apparatus according to claim 1, wherein the access information management unit manages the identification information notified by the access information notification unit in association with the access information.
上位のクラスローダにより起動されたモジュールから、該上位のクラスローダを用いることによる下位のクラスローダにより起動されたモジュールへのアクセスは不可である請求項4記載の情報処理装置。 The class loader has a hierarchical structure,
5. The information processing apparatus according to claim 4, wherein a module activated by a lower class loader cannot be accessed from a module activated by an upper class loader by using the upper class loader.
前記情報処理装置は、
前記機器が動作させる前記プログラムのモジュールと同等のモジュールである上位モジュールと、当該情報処理装置上で前記プログラムの動作を再現させるための下位モジュールとを備え、
前記モジュールを識別する識別情報と前記下位モジュールから前記上位モジュールへのアクセスを可能にするアクセス情報とを対応付けて管理するアクセス情報管理手段と、
前記下位モジュールからのアクセス対象の前記上位モジュールの前記識別情報に対応する前記アクセス情報に基づき、前記下位モジュールから前記上位モジュールにアクセスするアクセス手段とを有する情報処理システム。 An information processing system having a device for operating a program for executing a predetermined process and an information processing apparatus for reproducing the operation of the program,
The information processing apparatus includes:
An upper module that is a module equivalent to the module of the program operated by the device, and a lower module for reproducing the operation of the program on the information processing apparatus;
Access information management means for managing identification information for identifying the module in association with access information enabling access from the lower module to the upper module;
An information processing system comprising: access means for accessing the upper module from the lower module based on the access information corresponding to the identification information of the upper module to be accessed from the lower module.
前記モジュールを識別する識別情報と前記下位モジュールから前記上位モジュールへのアクセスを可能にするアクセス情報とを対応付けて管理するアクセス情報管理ステップと、
前記下位モジュールからのアクセス対象の前記上位モジュールの前記識別情報に対応する前記アクセス情報に基づき、前記下位モジュールから前記上位モジュールにアクセスするアクセスステップとを有する情報処理方法。 Reproducing the operation of a program for executing a predetermined process that operates on a device, and an upper module that is a module equivalent to the module of the program that the device operates, and the operation of the program on the information processing apparatus An information processing method executed by an information processing apparatus including a lower module for reproduction,
An access information management step for managing identification information for identifying the module in association with access information that enables access from the lower module to the upper module;
And an access step of accessing the upper module from the lower module based on the access information corresponding to the identification information of the upper module to be accessed from the lower module.
前記情報処理装置を、
前記モジュールを識別する識別情報と前記下位モジュールから前記上位モジュールへのアクセスを可能にするアクセス情報とを対応付けて管理するアクセス情報管理手段、
前記下位モジュールからのアクセス対象の前記上位モジュールの前記識別情報に対応する前記アクセス情報に基づき、前記下位モジュールから前記上位モジュールにアクセスするアクセス手段として機能させる情報処理プログラム。 Reproducing the operation of a program for executing a predetermined process that operates on a device, and an upper module that is a module equivalent to the module of the program that the device operates, and the operation of the program on the information processing apparatus An information processing program that is executed in an information processing apparatus including a lower module for reproduction,
The information processing apparatus;
Access information management means for managing the identification information for identifying the module in association with the access information enabling access from the lower module to the upper module;
An information processing program that functions as an access unit that accesses the upper module from the lower module based on the access information corresponding to the identification information of the upper module to be accessed from the lower module.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013053915A JP6191177B2 (en) | 2013-03-15 | 2013-03-15 | Information processing apparatus, information processing system, information processing method, information processing program, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013053915A JP6191177B2 (en) | 2013-03-15 | 2013-03-15 | Information processing apparatus, information processing system, information processing method, information processing program, and recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014179002A true JP2014179002A (en) | 2014-09-25 |
JP6191177B2 JP6191177B2 (en) | 2017-09-06 |
Family
ID=51698854
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013053915A Expired - Fee Related JP6191177B2 (en) | 2013-03-15 | 2013-03-15 | Information processing apparatus, information processing system, information processing method, information processing program, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6191177B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010218469A (en) * | 2009-03-18 | 2010-09-30 | Ricoh Co Ltd | Information processor, information processing method, program and recording medium |
JP2011180771A (en) * | 2010-02-26 | 2011-09-15 | Ricoh Co Ltd | Information processing device, emulation system and emulation program |
JP2012221034A (en) * | 2011-04-05 | 2012-11-12 | Nippon Telegr & Teleph Corp <Ntt> | Memory management device, memory management method, and memory management program |
-
2013
- 2013-03-15 JP JP2013053915A patent/JP6191177B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010218469A (en) * | 2009-03-18 | 2010-09-30 | Ricoh Co Ltd | Information processor, information processing method, program and recording medium |
JP2011180771A (en) * | 2010-02-26 | 2011-09-15 | Ricoh Co Ltd | Information processing device, emulation system and emulation program |
JP2012221034A (en) * | 2011-04-05 | 2012-11-12 | Nippon Telegr & Teleph Corp <Ntt> | Memory management device, memory management method, and memory management program |
Also Published As
Publication number | Publication date |
---|---|
JP6191177B2 (en) | 2017-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230291722A1 (en) | Information processing device, information management method, and information processing system | |
JP6787115B2 (en) | Image forming device, function addition method, program, | |
JP5037422B2 (en) | Image forming apparatus, access control method, and access control program | |
JP6638183B2 (en) | Information processing system, information processing apparatus, information processing method and program | |
JP2014170515A (en) | Device, information storage program, and information storage method | |
JP2010117905A (en) | Information processing apparatus and program | |
JP6620530B2 (en) | Information processing system, information processing apparatus, information processing method, and program | |
US20190379800A1 (en) | Information processing apparatus, control method thereof, and storage medium | |
JP2013097746A (en) | Client-side web service interface, software developing kit including the same, and software developing method using developing kit | |
JP6938983B2 (en) | Information processing system, information processing device and information processing method | |
JP6520577B2 (en) | INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING DEVICE, AND INFORMATION PROCESSING METHOD | |
JP2015084209A (en) | Information processing system, program, authentication method, and portable terminal | |
CN109660688B (en) | Information processing apparatus and control method thereof | |
JP2014127125A (en) | Setting information management program, information processing equipment, and setting information management method | |
JP2014178893A (en) | Cooperation processor, program and software updating method | |
JP2009049679A (en) | Image processor, image processor control program and image processing system | |
JP6365247B2 (en) | Information processing apparatus, information processing system, and information processing method | |
JP6179200B2 (en) | Information processing apparatus, device, information processing system, information processing method, and information processing program | |
JP6191177B2 (en) | Information processing apparatus, information processing system, information processing method, information processing program, and recording medium | |
US9940334B2 (en) | Image forming apparatus and control method thereof | |
JP2020102150A (en) | Information processing system, device, method, and program | |
JP2009294773A (en) | Information processor, information processing method, information processing program and recording medium | |
JP2021016183A (en) | Information processing apparatus, data processing method, and program | |
JP2010218469A (en) | Information processor, information processing method, program and recording medium | |
JP7080061B2 (en) | Image processing equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160212 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170104 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170208 |
|
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: 20170711 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170724 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6191177 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |