JP4676977B2 - Image forming apparatus, application information acquisition method, and program - Google Patents

Image forming apparatus, application information acquisition method, and program Download PDF

Info

Publication number
JP4676977B2
JP4676977B2 JP2007293492A JP2007293492A JP4676977B2 JP 4676977 B2 JP4676977 B2 JP 4676977B2 JP 2007293492 A JP2007293492 A JP 2007293492A JP 2007293492 A JP2007293492 A JP 2007293492A JP 4676977 B2 JP4676977 B2 JP 4676977B2
Authority
JP
Japan
Prior art keywords
application
information
image forming
forming apparatus
application information
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
JP2007293492A
Other languages
Japanese (ja)
Other versions
JP2008118669A (en
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 JP2007293492A priority Critical patent/JP4676977B2/en
Publication of JP2008118669A publication Critical patent/JP2008118669A/en
Application granted granted Critical
Publication of JP4676977B2 publication Critical patent/JP4676977B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

この発明は、コピー、プリンタ、スキャナおよびファクシミリなどの画像形成処理にかかるユーザサービスを提供する画像形成装置で、インストール処理を行うアプリケーションに関するアプリ情報を取得する画像形成装置およびアプリ情報取得方法に関するものである。   The present invention relates to an image forming apparatus that provides user services related to image forming processing such as copying, printers, scanners, and facsimiles, and to an image forming apparatus that acquires application information related to an application that performs installation processing, and an application information acquiring method. is there.

近年では、プリンタ、コピー、ファクシミリ、スキャナなどの各装置の機能を1つの筐体内に収納した画像形成装置(以下、「複合機」という。)が知られている。この複合機は、1つの筐体内に表示部、印刷部および撮像部などを設けるとともに、プリンタ、コピーおよびファクシミリ装置にそれぞれ対応した3種類のソフトウェアを設け、これらのソフトウェアを切り替えることによって、当該装置をプリンタ、コピー、スキャナまたはファクシミリ装置として動作させるものである。   In recent years, there has been known an image forming apparatus (hereinafter referred to as “multifunction machine”) in which functions of apparatuses such as a printer, a copy machine, a facsimile machine, and a scanner are housed in one casing. This multifunction device is provided with a display unit, a printing unit, an imaging unit, and the like in one casing, and is provided with three types of software respectively corresponding to a printer, a copy machine, and a facsimile machine, and by switching these software, Are operated as a printer, a copy, a scanner, or a facsimile machine.

このような従来の複合機では、プリンタ、コピー、ファクシミリ、スキャナなどの各機能単位ですべてのアプリケーションプログラムが起動される。これら既存のアプリケーションの場合、各アプリケーションは、起動可能な状態にするためのインストール処理が事前に行われている。すなわち、従来の複合機では、あらかじめ搭載されている既存のアプリケーションの場合、起動可能な状態にするインストール処理を行うにあたって、アプリケーションと複合機とのバージョンの整合性や使用するリソース量などが事前にわかっているため、通常にインストール処理を行って、起動させて実行するだけでよく、インストール前にバージョンやリソース量などをチェックする必要はなかった。
特開平11−112701号公報
In such a conventional multi-function peripheral, all application programs are activated in units of functions such as a printer, a copy, a facsimile, and a scanner. In the case of these existing applications, each application is preliminarily subjected to an installation process for making it startable. In other words, in the case of an existing application installed in advance, in the case of an existing application installed in advance, the version consistency between the application and the MFP, the amount of resources to be used, etc. are determined in advance when performing the installation process to make it startable. Because I know, you just have to install it normally, start it up, and run it. There is no need to check the version or amount of resources before installing.
JP-A-11-112701

ところで、このような従来の複合機では、プリンタ、コピー、スキャナおよびファクシミリ装置に対応するソフトウェアをそれぞれ別個に設けているため、各ソフトウェアの開発に多大の時間を要する。このため、出願人は、表示部、印刷部および撮像部などの画像形成処理で使用されるハードウェア資源を有し、プリンタ、コピーまたはファクシミリなどの各ユーザサービスにそれぞれ固有の処理を行うアプリケーションを複数搭載し、これらのアプリケーションとハードウェア資源との間に介在して、ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行う各種コントロールサービスからなるプラットホームを備えた画像形成装置(複合機)を発明した。   By the way, in such a conventional multi-function machine, software corresponding to a printer, a copy, a scanner, and a facsimile apparatus is provided separately, so that development of each software requires a lot of time. For this reason, the applicant has hardware resources used in image forming processing such as a display unit, a printing unit, and an imaging unit, and has an application that performs processing specific to each user service such as a printer, copy, or facsimile. When a user service is provided by interposing between these applications and hardware resources, hardware resource management, execution control, and image formation processing that are commonly required by at least two of the applications are provided. Invented an image forming apparatus (multifunction machine) equipped with a platform comprising various control services.

このような新規な複合機では、アプリケーションの少なくとも2つが共通的に必要とするサービスを提供するコントロールサービスをアプリケーションと別個に設けた構成となっているため、複合機の出荷後にユーザもしくは第三者であるサードベンダが新規なアプリケーションを開発して、複合機に搭載可能な構成となっている。このため、かかる複合機では、出荷時に搭載されているコピー、プリンタ、スキャナ、ファクシミリといった既存のアプリケーション以外に、従来の複合機とは異なるユーザやサードベンダが開発した新規アプリケーションなどを複合機にコピーした後、そのアプリケーションを起動可能な状態にするためのインストール処理をする必要がある。上記した複合機の既存のアプリケーションの場合は、バージョンの整合性や使用リソース量があらかじめわかっているため、インストールして起動させたとしても、バージョンの不整合やリソース不足による動作の不具合が生じるおそれはない。しかしながら、サードベンダなどが開発する新規アプリケーションの場合は、搭載する複合機の状況(バージョンやリソース容量)まで考慮して開発していないため、その新規アプリケーションを起動させた場合に複合機の動作が不安定になる可能性がある。そこで、とりあえずインストールしておいて、起動までにチェックすれば動作が不安定になることが防止できるとも考えられる。しかし、起動させると複合機の動作が不安定になる可能性のあるアプリケーションをインストールしておくのは無意味なことである。このように、新規アプリケーションが搭載可能な新規な複合機では、新規アプリケーションのバージョンチェックやリソースチェックを行わずに起動させると、動作が不安定となったり、動作が途中で停止するなど従来の複合機では問題にならなかった新規な課題が生じてくる。   In such a new multifunction device, a control service that provides services commonly required by at least two of the applications is provided separately from the application. The third vendor has developed a new application and can be installed in the multifunction device. For this reason, in this multifunction device, in addition to existing applications such as copy, printer, scanner, and facsimile installed at the time of shipment, new applications developed by users or third vendors that are different from conventional multifunction devices are copied to the multifunction device. After that, it is necessary to perform an installation process to make the application startable. In the case of existing applications of the above-mentioned multifunction peripherals, the consistency of the version and the amount of resources used are known in advance, so even if installed and started, malfunctions due to inconsistencies in the version or lack of resources may occur. It is not. However, in the case of new applications developed by third-party vendors, etc., it has not been developed taking into account the status of the installed multifunction device (version and resource capacity), so the multifunction device will operate when the new application is started. May become unstable. Therefore, it may be possible to prevent the operation from becoming unstable if it is installed for the time being and checked before it is activated. However, it does not make sense to install an application that may cause unstable operation of the MFP when it is started. In this way, in a new multifunction device that can be equipped with a new application, if it is started without performing a new application version check or resource check, the operation becomes unstable or the operation stops halfway. A new problem that did not become a problem with the machine arises.

この発明は上記に鑑みてなされたもので、新規アプリケーションを複合機に搭載して、起動可能な状態とするインストール処理の前に、インストールが可能なアプリケーションか否かを判断するために必要なアプリケーションに関する正確なアプリ情報を取得できる画像形成装置およびアプリ情報取得方法を得ることを目的とする。   The present invention has been made in view of the above, and an application necessary for determining whether or not an application that can be installed is installed before the installation process in which a new application is installed in the multifunction peripheral and is activated. It is an object of the present invention to obtain an image forming apparatus and application information acquisition method capable of acquiring accurate application information related to the application.

上記目的を達成するため、請求項1にかかる発明は、アプリケーションをインストール可能に構成された画像形成装置であって、前記アプリケーションが前記画像形成装置において使用するリソースの情報を含むアプリケーション情報の取得を行うアプリケーション情報取得手段と、前記アプリケーション情報取得手段により取得された前記アプリケーション情報に含まれる前記使用するリソースの情報と、前記画像形成装置が有するリソースの情報とを比較することにより、前記アプリケーションを前記画像形成装置にインストールすることが可能か否かを判定する判定手段と、を備え、前記アプリケーション情報取得手段は、前記画像形成装置におけるアプリケーションが自ら保有する前記アプリケーション情報を取得することを特徴とする画像形成装置である。 In order to achieve the above object, an invention according to claim 1 is an image forming apparatus configured to be able to install an application, and obtains application information including information on resources used by the application in the image forming apparatus. Performing application information acquisition means, comparing the resource information to be used included in the application information acquired by the application information acquisition means with the resource information of the image forming apparatus, thereby determining the application comprising judging means for judging whether it is possible to install the image forming apparatus, wherein the application information obtaining means, and characterized in that the application in the image forming apparatus acquires the application information held itself That is an image forming apparatus.

本発明によれば、インストールが可能なアプリケーションか否かを正確な判断を下すことができる。また、本発明によれば、アプリケーション情報取得手段は、アプリケーションから直接正確な情報を取得することができる。 According to the present invention, it is possible to accurately determine whether an application is installable. Further, according to the present invention, the application information acquisition unit can acquire accurate information directly from the application.

請求項にかかる発明は、請求項の記載において、前記アプリケーションが自ら保有する前記アプリケーション情報は、当該アプリケーションの実行ファイル中に含まれる情報であることを特徴とする。これにより、アプリケーションから直接正確な情報を取得することができる。 The invention according to claim 2, in the description of claim 1, wherein the application information by the application's own is characterized in that information included in the execution file of the application. Thereby, accurate information can be obtained directly from the application.

なお、請求項に記載の画像形成装置において、前記アプリケーション情報取得手段は、前記アプリケーションを仮起動させることにより、前記アプリケーション情報を取得することとしてもよい。 Note that in the image forming apparatus according to claim 2 , the application information acquisition unit may acquire the application information by temporarily starting the application.

本発明によれば、通常起動前のアプリケーションに対しても、正確なアプリ情報を取得することができる。   According to the present invention, accurate application information can be acquired even for an application before normal startup.

また、上記画像形成装置において、前記アプリケーション情報取得手段は、仮起動させたアプリケーションからプロセス間通信により前記アプリケーション情報を取得することとしてもよい。   In the image forming apparatus, the application information acquisition unit may acquire the application information by interprocess communication from a temporarily activated application.

本発明により、通常起動前のアプリケーションに対してプロセス間通信により、正確なアプリ情報を取得することができる。   According to the present invention, accurate application information can be acquired by inter-process communication for an application before normal startup.

また、上記画像形成装置において、前記アプリケーションは、前記アプリケーション情報取得手段からの要求に基づき、仮起動するか通常起動するかを判断するステップと、仮起動の場合に、前記アプリケーション情報取得手段と通信することにより、アプリケーション情報を前記アプリケーション情報取得手段に提供するステップを前記画像形成装置に実行させることとしてもよい。   In the image forming apparatus, the application communicates with the application information acquisition unit in the case of temporary startup based on a request from the application information acquisition unit to determine whether to perform temporary startup or normal startup. Thus, the step of providing the application information to the application information acquisition unit may be executed by the image forming apparatus.

本発明によれば、アプリケーションが、アプリケーション情報取得手段からの要求に基づき仮起動するか通常起動するかを判断する手段を備えるので、仮起動するか通常起動するかを選択することができる。   According to the present invention, since the application is provided with means for determining whether the application is provisionally activated or normally activated based on a request from the application information acquisition means, it is possible to select whether the application is provisionally activated or normally activated.

また、請求項1に記載の画像形成装置において、前記アプリ情報取得手段が取得したアプリケーション情報を記憶する記憶手段をさらに備えてもよい。 In the image forming apparatus according to claim 1, it may be e further Bei storage means for storing the application information in which the application information acquiring unit has acquired.

本発明によれば、アプリ情報取得手段が取得したアプリ情報を記憶手段に記憶するようにしたため、一旦取得したアプリ情報を必要に応じていつでも取り出せることから、データベースのように使用することが可能となり、アプリ情報取得に要する時間を短縮して、処理の迅速化が図れる。   According to the present invention, since the application information acquired by the application information acquisition unit is stored in the storage unit, the acquired application information can be taken out whenever necessary, so that it can be used like a database. The time required for obtaining application information can be shortened to speed up the processing.

また、上記画像形成装置において、前記記憶手段は、ハードディスク、不揮発性メモリ、および、SDカード等のメモリカードの少なくとも一つであって、前記アプリ情報取得手段は、それらの記憶媒体に記憶された情報を読み出すことによりアプリ情報を取得することとしてもよい。   In the image forming apparatus, the storage unit is at least one of a hard disk, a non-volatile memory, and a memory card such as an SD card, and the application information acquisition unit is stored in the storage medium. It is good also as acquiring application information by reading information.

本発明によれば、種々の記憶媒体をアプリ情報の記憶手段として利用することが可能となり、状況に応じて記憶媒体を使い分けることができる。   According to the present invention, various storage media can be used as application information storage means, and the storage media can be used properly according to the situation.

また、請求項にかかる発明は、請求項1又は2に記載の画像形成装置において、前記アプリケーション情報取得手段が取得する前記アプリケーション情報は、アプリケーションに固有のプロダクトIDを含むことを特徴とする。 The invention according to claim 3 is the image forming apparatus according to claim 1 or 2, wherein the application information by the application information acquiring unit is acquired, characterized in that it comprises a unique product ID to the application.

本発明によれば、アプリケーション情報のやり取りをこのプロダクトIDに基づいて、簡易かつ迅速に行うことができるとともに、アプリ情報が一元管理できることから、情報の信頼性を向上させることができる。   According to the present invention, application information can be exchanged easily and quickly based on the product ID, and application information can be managed centrally, so that the reliability of information can be improved.

また、請求項にかかる発明は、請求項に記載の画像形成装置において、前記アプリケーション情報は、前記プロダクトID及び前記使用するリソースの情報に加えて、対応するアプリケーションのベンダー名、アプリケーション名、及びバージョン情報のうちの少なくとも1つを含むことを特徴とする。 According to a fourth aspect of the present invention, in the image forming apparatus according to the third aspect , in addition to the product ID and the resource information to be used, the application information includes a vendor name, an application name, And at least one of version information.

本発明によれば、アプリケーションの起動時に問題となるバージョンの整合性やリソース不足よる動作の不安定要因の有無を正確に判断することができる。   According to the present invention, it is possible to accurately determine whether there is a cause of instability of operation due to version consistency or resource shortage, which becomes a problem when starting an application.

また、上記画像形成装置において、前記記憶手段は、インストールを可能なアプリケーションのプロダクトIDを記憶し、判断対象となるアプリケーションのプロダクトIDがその記憶手段に記憶されているか否かによって、インストール可能なアプリケーションか否かを自動的に判断することとしてもよい。   In the image forming apparatus, the storage unit stores a product ID of an installable application, and the installable application depends on whether or not the product ID of the application to be determined is stored in the storage unit. It may be automatically determined whether or not.

本発明によれば、簡易な構成により迅速かつ正確にインストール可能なアプリケーションか否かを自動判断することができる。   According to the present invention, it is possible to automatically determine whether or not an application can be installed quickly and accurately with a simple configuration.

また、上記画像形成装置が画像形成処理で使用されるハードウェア資源と、ハードウェア資源の制御を行うコントロールサービスと、コントロールサービスをサーバとしたクライアントプロセスとして動作し、前記アプリケーションをクライアントとしたサーバプロセスとして動作する仮想アプリケーションサービスを有し、仮想アプリケーションサービスが前記アプリケーション情報取得手段を含むこととしてもよい。
また、請求項に係る発明は、コンピュータの構成を備えた画像形成装置を、請求項1ないしのうちいずれか1項に記載の画像形成装置の各手段として機能させるためのプログラムであり、請求項に係る発明は、請求項に記載のプログラムを格納したコンピュータ読み取り可能な記録媒体である。
The image forming apparatus operates as a hardware resource used in image forming processing, a control service for controlling the hardware resource, and a client process using the control service as a server, and a server process using the application as a client. The virtual application service may include the application information acquisition unit.
An invention according to claim 5 is a program for causing an image forming apparatus having a computer configuration to function as each unit of the image forming apparatus according to any one of claims 1 to 4 , The invention according to claim 6 is a computer-readable recording medium storing the program according to claim 5 .

また、請求項10に記載の発明は、アプリケーション情報取得のための方法の発明であり、上記画像形成装置と同様の作用効果を奏する。 The invention described in claims 7 to 10 is an invention of a method for obtaining application information, and has the same effects as the image forming apparatus.

以上説明したように、本発明によれば、アプリケーション情報を画像形成装置が取得するので、そのアプリケーション情報を用いて、インストールが可能なアプリケーションか否かを判断することができる。   As described above, according to the present invention, since the image forming apparatus acquires application information, it can be determined whether or not the application can be installed using the application information.

以下に添付図面を参照して、この発明にかかる画像形成装置およびアプリ情報取得方法の好適な実施の形態を詳細に説明する。   Exemplary embodiments of an image forming apparatus and an application information acquisition method according to the present invention are explained in detail below with reference to the accompanying drawings.

図1は、この発明の本実施の形態である画像形成装置(以下、「複合機」という)の構成を示すブロック図である。図1に示すように、複合機100は、白黒レーザプリンタ(B&W LP)101と、カラーレーザプリンタ(Color LP)102と、スキャナ、ファクシミリ、ハードディスク、メモリ、ネットワークインタフェースなどのハードウェアリソース103を有するとともに、プラットホーム120とアプリケーション(以下、アプリともいう)130と仮想アプリケーションサービス(VAS:Virtual Application Service)140から構成されるソフトウェア群110とを備えている。   FIG. 1 is a block diagram showing a configuration of an image forming apparatus (hereinafter referred to as “multifunction machine”) according to the present embodiment of the present invention. As shown in FIG. 1, the multi-function device 100 includes a monochrome laser printer (B & W LP) 101, a color laser printer (Color LP) 102, and hardware resources 103 such as a scanner, a facsimile, a hard disk, a memory, and a network interface. A software group 110 including a platform 120, an application (hereinafter also referred to as an application) 130, and a virtual application service (VAS) 140 is provided.

また、本実施の形態では、アプリ130とプラットホーム120との間に仮想アプリケーションサービス(VAS)140を配置している。この仮想アプリケーションサービス(VAS)140は、コントロールサービスをサーバとしたクライアントプロセスとして動作し、かつアプリケーションをクライアントとしたサーバプロセスとして動作するもので、アプリ情報取得スレッドがこの仮想アプリケーションサービス140に含まれている。このVAS140は、あるアプリを起動可能な状態とするインストール処理を行う前に、アプリ情報を取得して、そのアプリ情報ファイルを記憶手段としてのハードディスク(HD)200に生成する。取得するアプリ情報の例としては、ここでは、プロダクト情報を取得するようにしていて、プロダクトID、ベンダー名、アプリ名、バージョン、連絡先(電話番号)、必要リソース、インストール時判定、関連アプリ情報などが含まれている。このプロダクト情報は、アプリの実行ファイル中に持っていたり、ファイルとしてネットワーク経由で取得したり、あるいは、以前に取得したプロダクト情報をハードディスク200、不揮発性メモリであるNVRAM104、アプリ専用のアプリ情報テーブル106などに格納されている場合は、そのプロダクト情報を読み出すことによっても利用することができる。   In the present embodiment, a virtual application service (VAS) 140 is arranged between the application 130 and the platform 120. The virtual application service (VAS) 140 operates as a client process using the control service as a server and operates as a server process using the application as a client. An application information acquisition thread is included in the virtual application service 140. Yes. The VAS 140 acquires application information and generates the application information file in a hard disk (HD) 200 as a storage unit before performing an installation process for making a certain application startable. As an example of application information to be acquired, here, product information is acquired, product ID, vendor name, application name, version, contact information (phone number), necessary resources, determination at installation, related application information Etc. are included. This product information is stored in the application execution file, acquired as a file via the network, or previously acquired product information is stored in the hard disk 200, the NVRAM 104 which is a nonvolatile memory, and the application information table 106 dedicated to the application. Can be used by reading the product information.

アプリの実行ファイル中にあるアプリ情報は、VAS140がアプリを仮起動することにより、VAS140とアプリの間のプロセス間通信により、VAS140が取得することが可能である。   The application information in the application execution file can be acquired by the VAS 140 through inter-process communication between the VAS 140 and the application when the VAS 140 temporarily starts the application.

また、アプリ自身は複合機100のハードディスク200にコピーしたり、PCカード、ICカード、SDカードといった種々のデータカードを介してコピーされた後、起動できるような状態とするインストール処理が行われることになる。本実施の形態では、インストール処理を行う前に、アプリに関する情報であるアプリ情報を取得し、このアプリ情報に基づいてインストール処理が可能なアプリか否かを判断するようにする。このインストール処理が可能か否かの判断は、インストール処理後、そのアプリを起動させたとした場合に、インストールした複合機の既存のアプリや他のインストール済みの新規アプリとの関係において、リソース不足やバージョンの整合性等の問題で複合機自体の動作が不安定となったり、動作が停止するおそれがあるか否かによる。このような判断を行う理由は、起動できないアプリをインストールしても意味がない上、インストールされていると、誤って起動させた場合に複合機自体の動作に支障が出るからである。   In addition, the application itself is copied to the hard disk 200 of the multifunction peripheral 100, or after being copied via various data cards such as a PC card, an IC card, and an SD card, installation processing is performed so that the application can be activated. become. In the present embodiment, before performing the installation process, application information, which is information about the application, is acquired, and it is determined whether or not the application can be installed based on the application information. The determination of whether or not this installation process is possible is based on the lack of resources in relation to the existing application of the installed MFP and other newly installed applications when the application is started after the installation process. It depends on whether there is a possibility that the operation of the MFP itself becomes unstable or the operation stops due to problems such as version consistency. The reason for making such a determination is that there is no point in installing an application that cannot be started, and if it is installed, the operation of the MFP itself will be hindered if it is started accidentally.

プラットホーム120は、アプリケーションからの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ(SRM)123と、汎用OS121とを有している。   The platform 120 interprets a processing request from an application and generates a hardware resource acquisition request, and a system resource manager that manages one or a plurality of hardware resources and arbitrates the acquisition request from the control service. (SRM) 123 and a general-purpose OS 121.

コントロールサービスは、複数のサービスモジュールから形成され、SCS(システムコントロールサービス)122と、ECS(エンジンコントロールサービス)124と、MCS(メモリコントロールサービス)125と、OCS(オペレーションパネルコントロールサービス)126と、FCS(ファックスコントロールサービス)127と、NCS(ネットワークコントロールサービス)128とから構成されている。なお、このプラットホーム120は、あらかじめ定義された関数により前記アプリケーション130から処理要求を受信可能とするアプリケーションプログラムインタフェース(API)を有している。   The control service is formed of a plurality of service modules, and includes an SCS (system control service) 122, an ECS (engine control service) 124, an MCS (memory control service) 125, an OCS (operation panel control service) 126, and an FCS. (Fax Control Service) 127 and NCS (Network Control Service) 128. The platform 120 has an application program interface (API) that can receive a processing request from the application 130 by a predefined function.

汎用OS121は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。   The general-purpose OS 121 is a general-purpose operating system such as UNIX (registered trademark), and executes the software of the platform 120 and the application 130 in parallel as processes.

SRM123のプロセスは、SCS122とともにシステムの制御およびリソースの管理を行うものである。SRM123のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、HDDファイル、ホストI/O(セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど)のハードウェア資源を利用する上位層からの要求にしたがって調停を行い、実行制御する。   The process of the SRM 123 performs system control and resource management together with the SCS 122. The SRM123 process uses hardware resources such as engines such as a scanner unit and printer unit, memory, HDD file, and host I / O (Centro I / F, network I / F, IEEE 1394 I / F, RS232C I / F, etc.). Arbitration is performed according to the request from the upper layer to be used, and execution control is performed.

具体的には、このSRM123は、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、SRM123は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施している。   Specifically, the SRM 123 determines whether the requested hardware resource is available (whether it is not used by another request), and if it is available, the requested hardware resource is used. Tell the upper layer that it is possible. In addition, the SRM 123 performs use scheduling of hardware resources in response to a request from an upper layer, and directly executes request contents (for example, paper conveyance and image forming operation, memory allocation, file generation, etc. by a printer engine). .

SCS122のプロセスは、アプリ管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御などを行う。   The process of the SCS 122 performs application management, operation unit control, system screen display, LED display, resource management, interrupt application control, and the like.

ECS124のプロセスは、白黒レーザプリンタ(B&W LP)101、カラーレーザプリンタ(Color LP)102、スキャナ、ファクシミリなどからなるハードウェアリソースのエンジンの制御が行われる。   In the ECS process, a hardware resource engine including a black and white laser printer (B & W LP) 101, a color laser printer (Color LP) 102, a scanner, a facsimile, and the like is controlled.

MCS125のプロセスは、画像メモリの取得および解放、ハードディスク装置(HDD)の利用、画像データの圧縮および伸張などを行う。   The MCS 125 process acquires and releases an image memory, uses a hard disk device (HDD), compresses and decompresses image data, and the like.

FCS127のプロセスは、システムコントローラの各アプリ層からPSTN/ISDN網を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのAPIを提供する。   The FCS 127 process includes facsimile transmission / reception using PSTN / ISDN network from each application layer of the system controller, registration / quotation of various facsimile data managed by BKM (backup SRAM), facsimile reading, facsimile reception printing, and fusion transmission / reception. Provides an API to do.

NCS128のプロセスは、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行う。具体的には、ftpd、httpd、lpd、snmpd、telnetd、smtpdなどのサーバデーモンや、同プロトコルのクライアント機能などを有している。   The NCS 128 process is a process for providing a service that can be commonly used for applications that require network I / O. Data received from the network side according to each protocol is distributed to each application, and data from the application. Mediation when sending to the network side. Specifically, it has server daemons such as ftpd, httpd, lpd, snmpd, telnetd, and smtpd and client functions of the same protocol.

OCS126のプロセスは、オペレータ(ユーザ)と本体制御間の情報伝達手段となるオペレーションパネル(操作パネル)105の制御を行う。OCS126は、オペレーションパネル105からキー押下をキーイベントとして取得し、取得したキーに対応したキーイベント関数をSCS122に送信するOCSプロセスの部分と、アプリケーション130またはコントロールサービスからの要求によりオペレーションパネルに各種画面を描画出力する描画関数やその他オペレーションパネルに対する制御を行う関数などがあらかじめ登録されたOCSライブラリの部分とから構成される。このOCSライブラリは、アプリケーション130およびコントロールサービスの各モジュールにリンクされて実装されている。なお、OCS126のすべてをプロセスとして動作させるように構成しても良く、あるいはOCS126のすべてをOCSライブラリとして構成しても良い。   The process of the OCS 126 controls an operation panel (operation panel) 105 serving as information transmission means between the operator (user) and the main body control. The OCS 126 acquires a key press from the operation panel 105 as a key event, transmits a key event function corresponding to the acquired key to the SCS 122, and displays various screens on the operation panel according to a request from the application 130 or the control service. A drawing function for drawing and outputting, a function for controlling the operation panel, and the like are composed of pre-registered OCS library portions. The OCS library is mounted by being linked to each module of the application 130 and the control service. The OCS 126 may be configured to operate as a process, or the OCS 126 may be configured as an OCS library.

アプリケーション130は、ページ記述言語(PDL)、PCLおよびポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、工程検査用アプリケーションである工程検査アプリ116とを有している。これらの各アプリは、複合機特有(画像形成装置特有)のアプリであり、起動時にVAS140に対して自プロセスのプロセスIDとともにアプリ登録要求メッセージを送信し、アプリ登録要求メッセージを受信したVAS140によって、起動したアプリに対する登録処理が行われるようになっている。   The application 130 includes a printer application 111 that is a printer application having a page description language (PDL), PCL, and postscript (PS), a copy application 112 that is a copy application, and a fax application 113 that is a facsimile application. A scanner application 114 as a scanner application, a network file application 115 as a network file application, and a process inspection application 116 as a process inspection application. Each of these applications is an application specific to the multifunction peripheral (image forming apparatus specific), transmits an application registration request message together with the process ID of its own process to the VAS 140 at startup, and receives the application registration request message by the VAS 140. The registration process for the activated application is performed.

アプリケーション130の各プロセス、コントロールサービスの各プロセスは、関数呼び出しとその戻り値送信およびメッセージの送受信によってプロセス間通信を行いながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを実現している。   Each process of the application 130 and each process of the control service realize user services related to image forming processing such as copying, printers, scanners, and facsimiles while performing inter-process communication by calling functions, sending return values thereof, and sending and receiving messages. is doing.

このように、本実施の形態にかかる複合機100には、複数のアプリケーション130および複数のコントロールサービスが存在し、いずれもプロセスとして動作している。そして、これらの各プロセス内部には、一または複数のスレッドが生成されて、スレッド単位の並列実行が行われる。そして、コントロールサービスがアプリケーション130に対し共通サービスを提供しており、このため、これらの多数のプロセスが並列動作、およびスレッドの並列動作を行って互いにプロセス間通信を行って協調動作をしながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを提供するようになっている。また、複合機100には、サードベンダなどの第三者がコントロールサービス層の上のアプリケーション層に新規アプリ117,118を開発して搭載することが可能となっている。図1では、この新規アプリ117,118を搭載した例を示している。   As described above, the MFP 100 according to the present embodiment includes a plurality of applications 130 and a plurality of control services, all of which operate as processes. In each of these processes, one or a plurality of threads are generated and parallel execution is performed in units of threads. The control service provides a common service to the application 130. For this reason, a large number of these processes perform a parallel operation and a parallel operation of threads to perform inter-process communication with each other. User services related to image forming processing such as copying, printers, scanners, and facsimiles are provided. In addition, a third party such as a third vendor can develop and install new applications 117 and 118 in the application layer above the control service layer in the multifunction peripheral 100. FIG. 1 shows an example in which the new applications 117 and 118 are installed.

なお、本実施の形態にかかる複合機100では、複数のアプリケーション130のプロセスと複数のコントロールサービスのプロセスとが動作しているが、アプリケーション130とコントロールサービスのプロセスがそれぞれ単一の構成とすることも可能である。また、各アプリケーション130は、アプリケーションごとに追加または削除することができる。   In the MFP 100 according to the present embodiment, a plurality of application 130 processes and a plurality of control service processes operate. However, the application 130 and the control service process have a single configuration. Is also possible. Each application 130 can be added or deleted for each application.

図2に複合機100のハードウェア構成例を示す。   FIG. 2 shows a hardware configuration example of the multifunction peripheral 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で接続されている。   The multi-function device 100 includes a controller 160, an operation panel 175, a fax control unit (FCU) 176, and an engine unit 177 that is a hardware resource unique to image forming processing such as a printer. The controller 160 includes a CPU 161, a system memory 162, a north bridge (NB) 163, a south bridge (SB) 164, an ASIC 166, a local memory 167, an HDD 168, a network interface card (NIC) 169, and an SD card. Slot 170, USB device 171, IEEE 1394 device 172, and Centronics 173. The memories 162 and 167 include RAM, ROM, and the like. The FCU 176 and the engine unit 177 are connected to the ASIC 166 of the controller 160 via the PCI bus 178.

CPU161が、複合機100にインストールされるアプリケーション、コントロールサービス等のプログラムを、メモリから読み出して実行する。   The CPU 161 reads programs such as applications and control services installed in the multifunction peripheral 100 from the memory and executes them.

図3は、本実施の形態にかかる複合機100のVAS140の構成と、VAS140と各アプリ、コントロールサービス層150および汎用OS121との関係を示すブロック図である。なお、図3では、アプリケーション130の例として、プリンタアプリ111、コピーアプリ112、新規アプリ117,118を示しているが、他のアプリでも同様の構成である。   FIG. 3 is a block diagram showing the configuration of the VAS 140 of the multifunction peripheral 100 according to the present embodiment and the relationship between the VAS 140 and each application, the control service layer 150, and the general-purpose OS 121. In FIG. 3, the printer application 111, the copy application 112, and the new applications 117 and 118 are shown as examples of the application 130, but other applications have the same configuration.

仮想アプリケーションサービス(VAS)140のプロセスには、ディスパッチャ145と、制御スレッド144と、アプリ情報取得手段としてのアプリ情報取得スレッド141と、オペレーションパネルに対して操作画面を生成する画面表示スレッド142、および、取得したアプリ情報に基づいてアプリのインストールが可能か否かをチェックするアプリチェックスレッド143が動作している。   The process of the virtual application service (VAS) 140 includes a dispatcher 145, a control thread 144, an application information acquisition thread 141 as application information acquisition means, a screen display thread 142 that generates an operation screen for the operation panel, and An application check thread 143 that checks whether or not an application can be installed based on the acquired application information is operating.

ディスパッチャ145は、アプリケーション130やコントロールサービスからのメッセージ受信を監視し、受信したメッセージに応じて制御スレッド144、アプリ情報取得スレッド141、画面表示スレッド142、アプリチェックスレッド143に対して処理要求を行うものである。本実施の形態の複合機100では、ディスパッチャ145は、コントロールサービスからインストールされているアプリに対するアプリ起動要求メッセージを受信したとき、受信したアプリ起動要求メッセージを制御スレッド144に送信し、制御スレッド144からアプリ情報取得スレッド141、画面表示スレッド142、アプリチェックスレッド143に対して処理要求を行うようになっている。   The dispatcher 145 monitors message reception from the application 130 and the control service, and makes a processing request to the control thread 144, the application information acquisition thread 141, the screen display thread 142, and the application check thread 143 according to the received message. It is. In the MFP 100 according to the present embodiment, when the dispatcher 145 receives an application activation request message for an application installed from the control service, the dispatcher 145 transmits the received application activation request message to the control thread 144. Processing requests are made to the application information acquisition thread 141, the screen display thread 142, and the application check thread 143.

制御スレッド144は、ディスパッチャ144からのアプリ起動要求メッセージを受信して、アプリ情報取得処理、画面表示処理、およびアプリチェック処理を行う。ここで、アプリチェック処理とは、アプリをインストール後に起動させた場合に複合機に対して影響を与える可能性が有るか無いかをチェックする処理のことである。例えば、インストール要求のあったアプリと、他のインストール済みのアプリのアプリ情報を取得して、バージョンチェックやリソースチェックを行うことによって、インストール後に起動させても動作に影響を与えないか否かを判断することが可能となる。その際、画面表示スレッド142は、ハードディスク(HD)200の中のアプリ情報ファイル201に格納したアプリ情報を用いてオペレーションパネル105上に各アプリのアプリ情報を表示するので、インストールしようとしているアプリの状況を把握することができる。従って、アプリチェックスレッド143よってインストールが不可能であると判断されても、どのような理由でインストールできなかったのかを理解することができる。   The control thread 144 receives the application activation request message from the dispatcher 144, and performs application information acquisition processing, screen display processing, and application check processing. Here, the application check process is a process of checking whether or not there is a possibility of affecting the multifunction device when the application is activated after being installed. For example, by acquiring the application information of the application that requested installation and other installed applications, and performing version check and resource check, whether or not starting up after installation will not affect the operation It becomes possible to judge. At that time, the screen display thread 142 displays the application information of each application on the operation panel 105 using the application information stored in the application information file 201 in the hard disk (HD) 200. The situation can be grasped. Therefore, even if it is determined by the application check thread 143 that installation is impossible, it can be understood why the installation could not be performed.

また、制御スレッド143は、アプリチェックスレッド143によってインストールが可能と判断されたり、あるいは、後述するように、インストールされているアプリが不要になった場合などに削除するアンインストール処理などを制御する。   Further, the control thread 143 controls an uninstall process that is deleted when it is determined that the application check thread 143 can be installed, or when an installed application becomes unnecessary, as will be described later.

アプリ情報取得スレッド141は、制御スレッド143からの処理要求を受けると、インストール前のアプリに対しては、仮起動を行うことによってプロセス間通信が可能な状態として、アプリ情報を取得する。また、インストールされているアプリは、起動させることで同様にプロセス間通信によるアプリ情報取得が可能となる。このようにして、取得された各アプリのアプリ情報は、アプリ情報ファイル201としてハードディスク(HD)200に生成される。かかるアプリ情報は、アプリごとのレコードとして記録される。   Upon receiving a processing request from the control thread 143, the application information acquisition thread 141 acquires application information in a state in which inter-process communication is possible by performing temporary activation for an application before installation. In addition, by installing an installed application, application information can be acquired by inter-process communication. In this way, the acquired application information of each application is generated in the hard disk (HD) 200 as an application information file 201. Such application information is recorded as a record for each application.

上記VAS140のプログラムは、ソフトウェア開発キット(SDK:Software Development Kit)等の一部または全部として、CD−ROMまたはFD(フレキシブルディスク)などの記憶媒体に実行可能な形式またはインストール可能な形式のファイルで提供される。また、このような実行可能な形式またはインストール可能な形式のVAS140のプログラムファイルを、ネットワーク経由で取得可能な方法で提供するようにしても良い。   The VAS 140 program is a file that can be executed or installed in a storage medium such as a CD-ROM or FD (flexible disk) as a part or all of a software development kit (SDK). Provided. Further, the VAS 140 program file in such an executable format or installable format may be provided by a method that can be obtained via a network.

図4は、VAS140とアプリ情報を格納するハードディスク200、アプリ情報テーブル106、NVRAM104との関係を示す説明図である。図4に示すように、ハードディスク200に格納されているプロダクト情報は、各アプリ単位ごとに管理され、プロダクトIDが特定できれば、これに対応するアプリ情報も特定することができる。また、このハードディスク200には、複合機にコピーされたインストール前のアプリAやアプリCのデータが格納されており、また、アプリBは、ICカードなどに格納されたデータを使ってインストール処理を行うものである。図4中の破線で示したFは、特定のパスにある実行ファイル群を示している。   FIG. 4 is an explanatory diagram showing the relationship between the VAS 140 and the hard disk 200 for storing application information, the application information table 106, and the NVRAM 104. As shown in FIG. 4, the product information stored in the hard disk 200 is managed for each application unit, and if the product ID can be specified, the corresponding application information can be specified. In addition, the hard disk 200 stores the data of the application A and the application C before installation copied to the multifunction peripheral, and the application B performs the installation process using the data stored in the IC card or the like. Is what you do. F indicated by a broken line in FIG. 4 indicates an executable file group in a specific path.

NVRAM104は、電源を切ってもメモリ内容を保持する不揮発性メモリであり、アプリA、アプリBのように、各アプリごとにプロダクトID、起動情報、付加情報がそれぞれ格納されている。NVRAM104には、アプリのインストール処理を行うことによって情報が記録される。また、電源ON時に当該アプリが起動されるか否かを示す情報が起動情報として設定される。   The NVRAM 104 is a non-volatile memory that retains memory contents even when the power is turned off, and stores a product ID, activation information, and additional information for each application, such as the application A and the application B. Information is recorded in the NVRAM 104 by performing an application installation process. Also, information indicating whether or not the application is activated when the power is turned on is set as activation information.

また、アプリ情報テーブルは、アプリに関する情報を各アプリごとにテーブルデータとして格納したものである。このため、アプリAのプロダクトIDを入力すれば、このアプリAのアプリ名、バージョン、インストール属性等のアプリ情報を取り出すことができる。そして、オペレーションパネルへの表示等を行うことができる。   The application information table stores information about applications as table data for each application. Therefore, if the product ID of the application A is input, the application information such as the application name, version, installation attribute, etc. of the application A can be extracted. Then, it can be displayed on the operation panel.

図5は、本実施の形態の複合機においてアプリに対してインストール処理かアンインストール処理を行う場合の全体フローチャートであり、図6は、図5のステップS401におけるアプリ情報取得処理のサブルーチンを示すフローチャートである。   FIG. 5 is an overall flowchart in the case where an installation process or an uninstallation process is performed on an application in the MFP according to the present embodiment, and FIG. 6 is a flowchart showing a subroutine of an application information acquisition process in step S401 in FIG. It is.

まず、図5のステップS401では、ディスパッチャ145が制御スレッド144を介してアプリ情報取得スレッド141に対して、インストール前、あるいは、インストール済みのアプリに対するアプリ情報取得処理を要求する。アプリ情報スレッド141は、後述する図6におけるアプリ情報取得処理を行って、アプリ情報ファイル201を生成する。   First, in step S401 in FIG. 5, the dispatcher 145 requests the application information acquisition thread 141 for the application information acquisition process before the installation or for the installed application via the control thread 144. The application information thread 141 generates an application information file 201 by performing an application information acquisition process in FIG.

また、上記ステップS401では、生成されたアプリ情報ファイル201から制御スレッド144がアプリ情報を読み出して、オペレーションパネル105に表示する操作画面を生成して、画面表示が行われる(ステップS402)。この表示画面は、コピーされたアプリに関するアプリ名、バージョン、リソース等の情報を併記して表示するとともに、選択画面に沿ってユーザが選択していくだけで、インストールの可否やインストール不可能になった場合の状況等が画面表示により理解できるようになっている。ユーザは、その画面表示に従って選択処理を行う。   In step S401, the control thread 144 reads the application information from the generated application information file 201, generates an operation screen to be displayed on the operation panel 105, and displays the screen (step S402). This display screen displays information such as the application name, version, resource, etc. related to the copied application, and the user can select whether or not the installation is possible by simply selecting it along the selection screen. The situation of the case can be understood by the screen display. The user performs selection processing according to the screen display.

全ての項目についてユーザの選択処理が行われた後は、ステップS403において、ユーザ操作待機の後(ステップS403)、ユーザ要求の有無が判断される(ステップS404)。ここでは、ユーザの要求としては、アプリのインストール要求か、アンインストール要求のいずれかである。ユーザ要求がインストールで、許可されるならば、図4に示すNVRAM104に対して登録処理が行われる(ステップS405)。また、ユーザ要求がアンインストールであるならば、図4に示すNVRAM104からアプリ情報を削除することによってアンインストールされることになる(ステップS406)。   After the user selection process is performed for all items, in step S403, after waiting for a user operation (step S403), it is determined whether there is a user request (step S404). Here, the user request is either an app install request or an uninstall request. If the user request is permitted by installation, registration processing is performed on the NVRAM 104 shown in FIG. 4 (step S405). If the user request is uninstallation, the application information is deleted from the NVRAM 104 shown in FIG. 4 to be uninstalled (step S406).

図6は、図5におけるアプリ情報取得処理動作を詳細に説明したものである。インストール前あるいは、起動前のアプリに対してはそのままではアプリ情報を取得することができないため、VAS140は、情報取得対象のアプリを仮起動させ(ステップS501)、プロセス間通信により、所望の情報を要求することでアプリ情報を取得することができる。本実施の形態では、アプリ情報の一元管理が可能なプロダクトIDを要求してこれを取得すると(ステップS502)、NVRAM104を参照することにより、そのアプリが登録済みのアプリか否かがわかる(ステップS503)。   FIG. 6 explains the application information acquisition processing operation in FIG. 5 in detail. Since the application information cannot be acquired as it is for the application before installation or before activation, the VAS 140 temporarily activates the information acquisition target application (step S501), and obtains desired information by inter-process communication. Application information can be acquired by requesting. In the present embodiment, when a product ID capable of centralized management of application information is requested and acquired (step S502), it can be determined whether the application is a registered application by referring to the NVRAM 104 (step S502). S503).

NVRAM104に登録済みでない場合は、プロダクト情報ファイルの有無が判断され(ステップS504)、プロダクト情報がない場合は、アプリよりプロセス間通信を使って各種情報を取得するようにする(ステップS505)。これにより、プロダクト情報ファイルを生成した後(ステップS506)、インストール判定処理が行われる(ステップS507)。そして、その判定処理結果をプロダクト情報に反映させるようにする(ステップS508)。インストール判定は、例えば、アプリから取得した使用リソース情報と、システムが有するリソース情報を比較することにより行う。   If it is not registered in the NVRAM 104, it is determined whether or not there is a product information file (step S504). If there is no product information, various information is acquired from the application using interprocess communication (step S505). Thereby, after generating a product information file (step S506), an installation determination process is performed (step S507). Then, the determination processing result is reflected in the product information (step S508). The installation determination is performed, for example, by comparing the used resource information acquired from the application with the resource information included in the system.

そして、ステップS509では、その判定結果に基づいて、インストールの可否が判断される。また、上記ステップS504で、プロダクト情報ファイルが有る場合は、プロダクト情報よりアプリ情報取得がなされ(ステップS510)、インストール時の判定情報取得が行われた後(ステップS511)、上記したステップS509において、インストールの可否が判断される。   In step S509, whether or not installation is possible is determined based on the determination result. If there is a product information file in step S504, application information is acquired from the product information (step S510), and determination information at the time of installation is acquired (step S511). Then, in step S509 described above, Whether installation is possible is determined.

ステップS509において、インストール可能であれば、インストール可能フラグの設定を行い(ステップS512)、アプリ情報テーブルへの書き込みが行われる(ステップS516)。また、インストールが不可の場合は、インストール不可フラグの設定が行われて(ステップS513)、アプリ情報テーブルへの書き込みが行われる(ステップS516)。さらに、上記したステップS503において、NVRAM104にプロダクトIDが登録されているアプリの場合は、NVRAM104よりアプリ情報取得が行われ(ステップS514)、インストール済みのフラグの設定が行われて(ステップS515)、アプリ情報テーブルへの書き込みが行われる(ステップS516)。   If installation is possible in step S509, an installable flag is set (step S512), and writing to the application information table is performed (step S516). If installation is not possible, an installation impossible flag is set (step S513), and writing to the application information table is performed (step S516). Further, in the above-described step S503, if the application has a product ID registered in the NVRAM 104, the application information is acquired from the NVRAM 104 (step S514), and the installed flag is set (step S515). Writing to the application information table is performed (step S516).

そして、全アプリに対する処理が終了していなければ、再び上記ステップS501に戻って、全アプリに対する処理が終了するまで、上記処理が繰り返される。   If the processes for all applications have not been completed, the process returns to step S501 again, and the above processes are repeated until the processes for all applications are completed.

このように、本実施の形態の複合機100では、新規アプリをインストール処理する場合に、仮想アプリケーションサービス140のアプリ情報取得スレッド141を使って、全アプリに対してアプリ情報の取得が行われるため、この取得したアプリ情報に基づいて、インストールした後に当該アプリを起動した場合の動作状況を正確に把握することが可能となり、インストール後に起動させた場合でも、複合機の動作が不安定になったり、動作が停止するような状況を防止することが可能となる。   As described above, in the MFP 100 according to the present embodiment, when installing a new application, the application information acquisition thread 141 of the virtual application service 140 is used to acquire application information for all applications. Based on this acquired application information, it is possible to accurately grasp the operating status when the application is started after installation, and even if the application is started after installation, the operation of the multifunction device may become unstable It is possible to prevent a situation where the operation stops.

次に、アプリケーションの仮起動についてより詳しく説明する。仮起動は、複合機のリソースを使用することになるアプリの通常起動(アプリ本来の機能を奏するための起動を通常起動と呼ぶ)とは別の起動である。仮起動では、アプリはアプリ本来の動作に必要なメモリ確保等のリソース取得を行わず、VASとのプロセス間通信処理のみを行う。そして、アプリは、VASに情報を提供する。仮起動したアプリのプロセスは、VASとの通信処理が終了すれば終了する。また、アプリの仮起動に関する機能は、アプリ本来の機能によらず、本実施の形態における複合機で動作するアプリに共通する機能である。従って、例えば、ベンダーがアプリを開発する場合、ベンダーに、仮起動の機能を含むプログラムテンプレートを提供し、そのプログラムテンプレートを用いてベンダーが複合機用のアプリを開発することができる。なお、上記のアプリ情報は、例えば、ベンダーが、アプリ情報を記録したインクルードファイルを作成し、アプリのコンパイル時にインクルードすることにより、アプリの実行ファイル中に含めることができる。   Next, the temporary activation of the application will be described in more detail. Temporary activation is activation different from normal activation of an application that uses resources of the multifunction peripheral (activation for performing an original function of the application is referred to as normal activation). In provisional activation, the application does not acquire resources such as securing the memory necessary for the original operation of the application, and only performs inter-process communication processing with the VAS. The app then provides information to the VAS. The process of the temporarily activated application ends when the communication process with the VAS ends. In addition, the function related to the temporary activation of the application is a function common to the application operating on the multifunction peripheral according to the present embodiment, regardless of the original function of the application. Therefore, for example, when a vendor develops an application, a program template including a provisional activation function can be provided to the vendor, and the vendor can develop an application for a multifunction device using the program template. Note that the above-described application information can be included in the application execution file by, for example, creating an include file in which the vendor records the application information and including the application information when compiling the application.

アプリが仮起動の機能を持つことにより、通常起動をすることなくVASとの通信によりVASにアプリ情報を提供でき、VASがインストール可否のチェックを行うことができる。   Since the application has a provisional activation function, application information can be provided to the VAS through communication with the VAS without performing normal activation, and the VAS can check whether or not it can be installed.

図7に、仮起動の機能を含むアプリのプログラム記述(メイン関数)の概要を示す。なお、この記述を上記のプログラムテンプレートとして提供する。   FIG. 7 shows an outline of the program description (main function) of the application including the provisional activation function. This description is provided as the above program template.

図7に示すように、このプログラム記述は、アプリケーションを仮起動するか通常起動するかを引数(−v)によって指定する。これにより、VASがアプリを起動する際に、通常起動と仮起動とを容易に使い分けることができる。すなわち、引数(−v)を使って仮起動を指定すると、仮起動が実行され、アプリ情報提供処理がなされる。また、仮起動が指定されていない場合は、通常起動を行って、アプリ本来の動作を行う。   As shown in FIG. 7, in this program description, an application (tentatively or normally) is designated by an argument (-v). Thereby, when the VAS activates the application, the normal activation and the temporary activation can be easily used properly. That is, if temporary activation is specified using an argument (-v), temporary activation is executed and application information provision processing is performed. If temporary activation is not designated, normal activation is performed to perform the original operation of the application.

なお、上記の実施の形態では、VASがアプリから情報を取得してインストールの可否を判断し、アプリの登録を行っていたが、図8に示すシーケンスのように、インストール可であるとVASが判断した後に、VASからアプリに対して、アプリのインストールを開始してよいか否かの問い合わせをし(ステップS601)、アプリがその問い合わせに対してインストール可の通知をVASに返した場合に(ステップS602)、VASがアプリの登録をするようにしてもよい(ステップS603)。   In the above embodiment, the VAS acquires information from the application, determines whether installation is possible, and registers the application. However, as shown in the sequence shown in FIG. After the determination, the VAS makes an inquiry to the application as to whether or not the installation of the application can be started (step S601), and when the application returns a notification that the installation is possible to the VAS in response to the inquiry ( In step S602), the VAS may register the application (step S603).

なお、ステップS601とステップS602の間で、アプリがVASからシステム情報(リソース情報あるいは機器構成情報等)を取得し、その情報に基づき、インストールできるか否かをアプリが判断するようにしてもよい。   In addition, between step S601 and step S602, the application may acquire system information (resource information or device configuration information) from the VAS, and the application may determine whether installation is possible based on the information. .

なお、VASがアプリ情報を取得する方法は、アプリの実行ファイル中に含められたアプリ情報を取得する方法以外にもある。その方法は、例えば、アプリ情報をアプリとは別のファイルに作成しておき、そのファイルの内容をVASが読み出すというものである。そのファイルを複合機の外部のサーバに備えて置くことにより、ネットワーク経由でアプリ情報を取得することもできる。   Note that there are other methods for the VAS to acquire the application information other than the method for acquiring the application information included in the execution file of the application. For example, the application information is created in a file different from the application, and the contents of the file are read by the VAS. By placing the file in a server external to the multifunction device, the application information can be acquired via the network.

なお、本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。   The present invention is not limited to the above-described embodiment, and various modifications and applications can be made within the scope of the claims.

実施の形態1にかかる複合機の構成を示すブロック図である。1 is a block diagram illustrating a configuration of a multifunction machine according to a first embodiment. 実施の形態1にかかる複合機のハードウェア構成を示すブロック図である。1 is a block diagram illustrating a hardware configuration of a multifunction machine according to a first embodiment; 本実施の形態にかかる複合機のVASの構成と、VASと各アプリ、コントロールサービス層および汎用OSとの関係を示すブロック図である。It is a block diagram which shows the structure of VAS of the multifunctional device concerning this Embodiment, and the relationship between VAS, each application, a control service layer, and general purpose OS. VASとアプリ情報を格納するハードディスク、アプリ情報テーブル、NVRAMとの関係を示す説明図である。It is explanatory drawing which shows the relationship between the hard disk which stores VAS and application information, an application information table, and NVRAM. 本実施の形態の複合機においてアプリに対してインストール処理かアンインストール処理を行う場合の全体フローチャートである。4 is an overall flowchart in a case where an install process or an uninstall process is performed on an application in the multifunction peripheral according to the present embodiment. 図5のステップS401におけるアプリ情報取得処理のサブルーチンを示すフローチャートである。It is a flowchart which shows the subroutine of the application information acquisition process in step S401 of FIG. 仮起動の機能を含むアプリのプログラム記述(メイン関数)の概要を示す図である。It is a figure which shows the outline | summary of the program description (main function) of the application containing the function of temporary starting. VASとアプリのネゴシエーションを示す図である。It is a figure which shows negotiation of VAS and an application.

符号の説明Explanation of symbols

100 複合機
101 白黒レーザプリンタ
102 カラーレーザプリンタ
104 NVRAM
105 オペレーションパネル
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 ディスパッチャ
150 コントロールサービス層
200 ハードディスク(HD)
201 アプリ情報ファイル
100 MFP 101 Monochrome Laser Printer 102 Color Laser Printer 104 NVRAM
105 Operation Panel 110 Software Group 111 Printer Application 112 Copy Application 113 Fax Application 114 Scanner Application 115 Net File Application 116 Process Inspection Application 117, 118 New Application 120 Platform 121 General-purpose OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
130 Application 140, 841-848 Virtual Application Service (VAS)
141 Application information acquisition thread 142 Screen display thread 143 Application check thread 144 Control thread 145 Dispatcher 150 Control service layer 200 Hard disk (HD)
201 Application information file

Claims (10)

アプリケーションをインストール可能に構成された画像形成装置であって、
前記アプリケーションが前記画像形成装置において使用するリソースの情報を含むアプリケーション情報の取得を行うアプリケーション情報取得手段と、
前記アプリケーション情報取得手段により取得された前記アプリケーション情報に含まれる前記使用するリソースの情報と、前記画像形成装置が有するリソースの情報とを比較することにより、前記アプリケーションを前記画像形成装置にインストールすることが可能か否かを判定する判定手段と、を備え
前記アプリケーション情報取得手段は、前記画像形成装置におけるアプリケーションが自ら保有する前記アプリケーション情報を取得する
ことを特徴とする画像形成装置。
An image forming apparatus configured to install an application,
Application information acquisition means for acquiring application information including resource information used by the application in the image forming apparatus;
The application is installed in the image forming apparatus by comparing the resource information to be used included in the application information acquired by the application information acquisition unit with the resource information of the image forming apparatus. Determination means for determining whether or not is possible ,
The image forming apparatus, wherein the application information acquiring unit acquires the application information held by the application in the image forming apparatus.
前記アプリケーションが自ら保有する前記アプリケーション情報は、当該アプリケーションの実行ファイル中に含まれる情報であることを特徴とする請求項に記載の画像形成装置。 The image forming apparatus according to claim 1 , wherein the application information held by the application is information included in an execution file of the application. 前記アプリケーション情報取得手段が取得する前記アプリケーション情報は、アプリケーションに固有のプロダクトIDを含むことを特徴とする請求項1又は2に記載の画像形成装置。 It said application information by the application information acquiring unit acquires the image forming apparatus according to claim 1 or 2, characterized in that it comprises a unique product ID to the application. 前記アプリケーション情報は、前記プロダクトID及び前記使用するリソースの情報に加えて、対応するアプリケーションのベンダー名、アプリケーション名、及びバージョン情報のうちの少なくとも1つを含むことを特徴とする請求項に記載の画像形成装置。 The application information in addition to the product ID and the information of the resource to the use, vendor name of the corresponding application, the application name, and claim 3, characterized in that it comprises at least one of version information Image forming apparatus. コンピュータの構成を備えた画像形成装置を、請求項1ないしのうちいずれか1項に記載の画像形成装置の各手段として機能させるためのプログラム。 A program for causing an image forming apparatus having a computer configuration to function as each unit of the image forming apparatus according to any one of claims 1 to 4 . 請求項に記載のプログラムを格納したコンピュータ読み取り可能な記録媒体。 A computer-readable recording medium storing the program according to claim 5 . アプリケーションをインストール可能に構成された画像形成装置が実行する方法であって、
前記アプリケーションが前記画像形成装置において使用するリソースの情報を含むアプリケーション情報の取得を行うアプリケーション情報取得ステップと、
前記アプリケーション情報取得ステップにより取得された前記アプリケーション情報に含まれる前記使用するリソースの情報と、前記画像形成装置が有するリソースの情報とを比較することにより、前記アプリケーションを前記画像形成装置にインストールすることが可能か否かを判定する判定ステップと、を有し、
前記アプリケーション情報取得ステップにおいて、前記画像形成装置は、前記画像形成装置における前記アプリケーションが自ら保有する前記アプリケーション情報を取得する
ことを特徴とする方法。
A method executed by an image forming apparatus configured to install an application,
An application information acquisition step for acquiring application information including information on resources used by the application in the image forming apparatus;
The application is installed in the image forming apparatus by comparing the resource information to be used included in the application information acquired in the application information acquisition step with the resource information of the image forming apparatus. have a, a determining step of determining whether the available or not,
In the application information acquisition step, the image forming apparatus acquires the application information held by the application in the image forming apparatus .
前記アプリケーションが自ら保有する前記アプリケーション情報は、当該アプリケーションの実行ファイル中に含まれる情報であることを特徴とする請求項に記載の方法。 The method according to claim 7 , wherein the application information held by the application itself is information included in an execution file of the application. 前記アプリケーション情報は、アプリケーションに固有のプロダクトIDを含むことを特徴とする請求項7又は8に記載の方法。 The method according to claim 7 or 8 , wherein the application information includes a product ID unique to the application. 前記アプリケーション情報は、前記プロダクトID及び前記使用するリソースの情報に加えて、対応するアプリケーションのベンダー名、アプリケーション名、及びバージョン情報のうちの少なくとも1つを含むことを特徴とする請求項に記載の方法。 The application information in addition to the product ID and the information of the resource to the use, vendor name of the corresponding application, the application name, and claim 9, characterized in that it comprises at least one of version information the method of.
JP2007293492A 2002-09-14 2007-11-12 Image forming apparatus, application information acquisition method, and program Expired - Lifetime JP4676977B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007293492A JP4676977B2 (en) 2002-09-14 2007-11-12 Image forming apparatus, application information acquisition method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002307637 2002-09-14
JP2007293492A JP4676977B2 (en) 2002-09-14 2007-11-12 Image forming apparatus, application information acquisition method, and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2003317282A Division JP4128506B2 (en) 2002-09-13 2003-09-09 Image forming apparatus and application information acquisition method

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010230137A Division JP4677054B2 (en) 2002-09-14 2010-10-13 Image forming apparatus, program, recording medium, and method

Publications (2)

Publication Number Publication Date
JP2008118669A JP2008118669A (en) 2008-05-22
JP4676977B2 true JP4676977B2 (en) 2011-04-27

Family

ID=39504168

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007293492A Expired - Lifetime JP4676977B2 (en) 2002-09-14 2007-11-12 Image forming apparatus, application information acquisition method, and program

Country Status (1)

Country Link
JP (1) JP4676977B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018225891A1 (en) * 2017-06-09 2018-12-13 에이치피프린팅코리아 주식회사 Method for installing application by image formation device, and image formation device using same method

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4856223B2 (en) * 2009-09-03 2012-01-18 シャープ株式会社 Information processing apparatus that presents recommended optional functions to image forming apparatus, image forming apparatus capable of communicating with the information processing apparatus, and image forming system including them
JP6044248B2 (en) 2012-10-05 2016-12-14 富士ゼロックス株式会社 Information processing apparatus, application program introduction apparatus, and program

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0887404A (en) * 1994-09-19 1996-04-02 Fuji Electric Co Ltd Method and processor for program processing
JPH11296453A (en) * 1998-04-13 1999-10-29 Ddi Corp Downloading method
JP2000305756A (en) * 1999-04-20 2000-11-02 Canon Inc Data processor and data processing method and storage medium storing computer readable program
JP2001337852A (en) * 2000-05-24 2001-12-07 Sony Corp Device and method for information processing
JP2002207606A (en) * 2000-10-16 2002-07-26 Ricoh Co Ltd Image processor and its program loading method, and storage medium with the stored method
JP2003216392A (en) * 2002-01-21 2003-07-31 Canon Inc Image forming device, information processing method, and control program

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0017478D0 (en) * 2000-07-18 2000-08-30 Bit Arts Ltd Computer software installation

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0887404A (en) * 1994-09-19 1996-04-02 Fuji Electric Co Ltd Method and processor for program processing
JPH11296453A (en) * 1998-04-13 1999-10-29 Ddi Corp Downloading method
JP2000305756A (en) * 1999-04-20 2000-11-02 Canon Inc Data processor and data processing method and storage medium storing computer readable program
JP2001337852A (en) * 2000-05-24 2001-12-07 Sony Corp Device and method for information processing
JP2002207606A (en) * 2000-10-16 2002-07-26 Ricoh Co Ltd Image processor and its program loading method, and storage medium with the stored method
JP2003216392A (en) * 2002-01-21 2003-07-31 Canon Inc Image forming device, information processing method, and control program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018225891A1 (en) * 2017-06-09 2018-12-13 에이치피프린팅코리아 주식회사 Method for installing application by image formation device, and image formation device using same method
CN110709811A (en) * 2017-06-09 2020-01-17 惠普发展公司,有限责任合伙企业 Application installation method for image forming apparatus and image forming apparatus using the same
US11146707B2 (en) 2017-06-09 2021-10-12 Hewlett-Packard Development Company, L.P. Method for installing application by image formation device, and image formation device using same method
CN110709811B (en) * 2017-06-09 2023-08-04 惠普发展公司,有限责任合伙企业 Application installation method for image forming apparatus and image forming apparatus using the same

Also Published As

Publication number Publication date
JP2008118669A (en) 2008-05-22

Similar Documents

Publication Publication Date Title
EP1398948B1 (en) Image forming apparatus, methods used therein and a computer readable storage medium
JP4843187B2 (en) Image forming apparatus
JP4276909B2 (en) Image forming apparatus and application activation control method
US8115943B2 (en) Image forming apparatus and print process method
JP4344203B2 (en) Image forming apparatus and information display method
JP4373742B2 (en) Image forming apparatus and application activation restriction method
JP4394740B2 (en) Image forming apparatus, method, and program
JP4128506B2 (en) Image forming apparatus and application information acquisition method
JP2004030601A (en) Device and method of making application start judgment by resource information
JP4512565B2 (en) Image forming apparatus and application installation method
JP5262495B2 (en) Electronic device, remote management system, control method, program, and recording medium
JP4565024B2 (en) Application program, image forming apparatus, and application program execution method
JP4676977B2 (en) Image forming apparatus, application information acquisition method, and program
JP4677054B2 (en) Image forming apparatus, program, recording medium, and method
JP4246560B2 (en) Information processing apparatus, information processing method, program, and recording medium
JP5267624B2 (en) Information processing apparatus, display control method, program, and recording medium
JP2004127253A (en) Information processing apparatus and version check method
JP2006271005A (en) Image forming apparatus and method for installing application
JP2009194862A (en) Information acquisition method, image forming apparatus, and image forming system
JP2003330735A (en) Image forming apparatus and shared memory mediating method
JP2004129220A (en) Image forming apparatus and version check method
JP2008065852A (en) Image processor and application installing method

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090908

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091109

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100713

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101013

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20101025

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

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

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

Free format text: PAYMENT UNTIL: 20140204

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4676977

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

EXPY Cancellation because of completion of term