JP2009071611A - Image forming apparatus, data processing method in image forming apparatus, and data processing program - Google Patents

Image forming apparatus, data processing method in image forming apparatus, and data processing program Download PDF

Info

Publication number
JP2009071611A
JP2009071611A JP2007238266A JP2007238266A JP2009071611A JP 2009071611 A JP2009071611 A JP 2009071611A JP 2007238266 A JP2007238266 A JP 2007238266A JP 2007238266 A JP2007238266 A JP 2007238266A JP 2009071611 A JP2009071611 A JP 2009071611A
Authority
JP
Japan
Prior art keywords
function
request message
image forming
forming apparatus
unit
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
Application number
JP2007238266A
Other languages
Japanese (ja)
Other versions
JP5046818B2 (en
Inventor
Kosaku Nakahara
耕作 中原
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 JP2007238266A priority Critical patent/JP5046818B2/en
Publication of JP2009071611A publication Critical patent/JP2009071611A/en
Application granted granted Critical
Publication of JP5046818B2 publication Critical patent/JP5046818B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide: an image forming apparatus such that the independence of a function unit performing inter-process communication is high in data processing in the image forming apparatus, and functions of a transmission and a reception side can be easily expanded; a data processing method in image forming apparatus; and a data processing program. <P>SOLUTION: The image forming apparatus 100 has a first process in which a first function 71 operates and a second process in which a second function requested by the first process to perform predetermined processing operates, and has a holding means 76 for holding storage destination information on a software component 64 specifying processing requested by a request message 81 transmitted from the first process according to the request message 81, and an execution means 77 for executing the processing, specified by the software component 64 executed based upon the storage destination information held by the holding means 76, in the second process when the second process receives the request message 81. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、当該画像形成装置が有する複数の機能のうち、第1の機能と、第1の機能から所定の処理が要求される第2の機能との間でプロセス間通信を行う画像形成装置、画像形成装置内のデータ処理方法、及びデータ処理プログラムに関するものである。   The present invention provides an image forming apparatus that performs inter-process communication between a first function among a plurality of functions of the image forming apparatus and a second function that requires a predetermined process from the first function. The present invention relates to a data processing method and a data processing program in an image forming apparatus.

コピー、ファックス、プリンタ、スキャナなどの複数の機能を有する画像形成装置として、複合機が一般的に知られている。   A multifunction peripheral is generally known as an image forming apparatus having a plurality of functions such as a copy, a fax, a printer, and a scanner.

このような複数の機能が動作する画像形成装置では、例えば、UNIX(登録商標)などのマルチタスクOS(Operating System)が実装されており、このOS上に多数のプロセスを起動し、起動したプロセスで各機能モジュールを動作させることで、多数の処理を並列処理している。   In such an image forming apparatus that operates a plurality of functions, for example, a multitask OS (Operating System) such as UNIX (registered trademark) is mounted, and a number of processes are started on the OS, and the started processes are started. A number of processes are processed in parallel by operating each functional module.

このような複数のプロセスが動作するマルチプロセス環境では、プロセス間において双方向のデータ通信を行っている。   In such a multi-process environment in which a plurality of processes operate, two-way data communication is performed between processes.

例えば、画像形成装置が有する機能に、外部機器が当該画像形成装置を自動検出するために情報提供を行う機器情報提供部と、プリンタやスキャナなどの各アプリケーションを管理するアプリケーション管理部とがある。これら2つの機能は、マルチプロセス環境において、それぞれ異なるプロセスで動作している。そのため、機器情報提供部が外部機器へ情報提供を行うときに、アプリケーション管理部から各アプリケーションに関する情報を取得しなければならない。このとき、画像形成装置では、機器情報提供部が動作するプロセスからアプリケーション管理部が動作するプロセスへ情報取得要求のメッセージが送信され、その結果、アプリケーション管理部が動作するプロセスから機器情報提供部が動作するプロセスへ要求した情報が送信される。   For example, the functions of the image forming apparatus include an apparatus information providing unit that provides information for an external device to automatically detect the image forming apparatus, and an application management unit that manages applications such as a printer and a scanner. These two functions operate in different processes in a multi-process environment. For this reason, when the device information providing unit provides information to an external device, information on each application must be acquired from the application management unit. At this time, in the image forming apparatus, the information acquisition request message is transmitted from the process in which the device information providing unit operates to the process in which the application management unit operates, and as a result, the device information providing unit starts from the process in which the application management unit operates. The requested information is sent to the running process.

このように、マルチプロセス環境における画像形成装置では、装置内部のデータ処理の1つとしてプロセス間通信が行われている。   As described above, in an image forming apparatus in a multi-process environment, inter-process communication is performed as one of data processing inside the apparatus.

例えば、特許文献1には、「ハードウェア資源とプログラムとを有する画像形成装置であって、一又は複数のサービス要求を含むエージェントを受信し、エージェントのサービス要求ごとに1又は複数のコントロールサービスを選定して、選定されたコントロールサービスに対してサービス要求を行うエージェント処理手段を備えたことにより、可変性のあるアーキテクチャ及びタス多様な機能を実現する」という画像形成装置が開示されている。
特開2007―12057号公報
For example, Patent Document 1 states that “an image forming apparatus having hardware resources and a program, which receives an agent including one or more service requests, and provides one or more control services for each service request of the agent. An image forming apparatus is disclosed that includes an agent processing unit that selects and makes a service request for the selected control service, thereby realizing a variable architecture and various functions.
Japanese Patent Laid-Open No. 2007-12057

しかしながら、特許文献1に開示された従来の画像形成装置では、プロセス間通信を行うモジュールと要求に応じた処理を行うモジュールとが一体となっている。そのため、それぞれのプロセスで動作する通信用モジュールを、送受信側で行う処理内容やその通信目的などの取り決めに応じて設計し実装しなければならず、送受信側の機能拡張などの作業は、開発者にとって煩雑なものであった。   However, in the conventional image forming apparatus disclosed in Patent Document 1, a module that performs inter-process communication and a module that performs processing according to a request are integrated. For this reason, the communication module that operates in each process must be designed and implemented according to the details of the processing performed on the transmission / reception side and the communication purpose, etc. It was complicated for me.

このように、従来の画像形成装置内のデータ処理機能は、プロセス間通信を行う機能部の独立性が低いため(プロセス間通信を行う機能部が送受信側の取り決めに依存しているため)、送受信側の機能拡張が困難なものとなっていた。   As described above, the data processing function in the conventional image forming apparatus has low independence of the function unit that performs the inter-process communication (because the function unit that performs the inter-process communication depends on the agreement on the transmission / reception side). It was difficult to expand the functions on the transmission / reception side.

本発明では、上記従来技術の問題点に鑑み、画像形成装置内のデータ処理において、プロセス間通信を行う機能部の独立性が高く、送受信側の機能を容易に拡張することができる画像形成装置、画像形成装置内のデータ処理方法、及びデータ処理プログラムを提供することを目的とする。   In the present invention, in view of the above-described problems of the prior art, in the data processing in the image forming apparatus, the function unit that performs inter-process communication is highly independent, and the function on the transmission / reception side can be easily expanded. An object of the present invention is to provide a data processing method and a data processing program in an image forming apparatus.

上記目的を達成するため、本発明の画像形成装置は、第1の機能が動作する第1のプロセスと、前記第1のプロセスから所定の処理の実行が要求される第2の機能が動作する第2のプロセスとを有する画像形成装置であって、前記第1のプロセスから送信された、前記所定の処理を要求する要求メッセージに応じて、当該画像形成装置で実行可能な処理の中から、前記要求メッセージにより要求される処理を特定するソフトウェア部品の格納先情報を保持している保持手段と、前記第1のプロセスから送信された前記要求メッセージを、前記第2のプロセスで受信したときに、前記保持手段により保持された前記格納先情報に基づいて実行される前記ソフトウェア部品により特定された、前記要求メッセージにより要求される処理を前記第2のプロセスで実行する実行手段とを有することを特徴とする。   In order to achieve the above object, the image forming apparatus according to the present invention operates a first process in which the first function operates and a second function in which execution of a predetermined process is requested from the first process. An image forming apparatus having a second process, the process being executed by the image forming apparatus in response to a request message transmitted from the first process and requesting the predetermined process. When the second process receives the request message transmitted from the first process and the storage unit that stores the storage location information of the software component that specifies the processing requested by the request message. The processing requested by the request message specified by the software component executed based on the storage location information held by the holding means And having and execution means for executing the process.

また、上記目的を達成するため、本発明の画像形成装置は、前記第1の機能及び前記第2の機能に共通する通信制御用インタフェースを備え、プロセス間においてデータの送受信を行う通信制御手段を有し、前記通信制御手段において、前記要求メッセージにより要求され、前記第2のプロセスで実行された前記所定の処理の実行結果に基づいて、要求に対応する応答メッセージを、前記第1のプロセスに送信することを特徴とする。   In order to achieve the above object, an image forming apparatus according to the present invention includes a communication control unit that includes a communication control interface common to the first function and the second function, and transmits and receives data between processes. And the communication control means sends a response message corresponding to the request to the first process based on an execution result of the predetermined process requested by the request message and executed in the second process. It is characterized by transmitting.

また、上記目的を達成するため、本発明の画像形成装置は、前記通信制御手段において、前記要求メッセージの送信を指示する送信指示手段と、前記要求メッセージの送信と要求に応じた前記応答メッセージの受信待ちを指示する応答受信指示手段と、前記要求メッセージの受信待ちを指示する要求待ち指示手段と、前記ソフトウェア部品の格納先情報の設定を指示する格納先情報設定指示手段とを有することを特徴とする。   In order to achieve the above object, the image forming apparatus according to the present invention includes a transmission instruction unit that instructs transmission of the request message, transmission of the request message, and transmission of the response message in response to the request in the communication control unit. Response receiving instruction means for instructing reception waiting, request waiting instruction means for instructing reception waiting for the request message, and storage destination information setting instruction means for instructing setting of storage destination information of the software component And

また、上記目的を達成するため、本発明の画像形成装置は、前記要求メッセージが、前記要求メッセージにより実行される処理を示す機能名と、前記処理を行うときに用いるパラメータ値と、前記パラメータ値の数を示すパラメータ数とから構成されることを特徴とする。   In order to achieve the above object, in the image forming apparatus of the present invention, the request message includes a function name indicating a process executed by the request message, a parameter value used when the process is performed, and the parameter value. And the number of parameters indicating the number of.

また、上記目的を達成するため、本発明の画像形成装置は、前記ソフトウェア部品が、前記第2のプロセスで受信された前記要求メッセージの前記機能名に基づいて、前記要求メッセージにより要求される処理を特定することを特徴とする。   In order to achieve the above object, in the image forming apparatus of the present invention, the software component is a process requested by the request message based on the function name of the request message received in the second process. It is characterized by specifying.

また、上記目的を達成するため、本発明の画像形成装置は、前記実行手段において、前記第2のプロセスで受信された前記要求メッセージの前記パラメータ値に基づいて、前記ソフトウェア部品により特定された、前記要求メッセージにより要求される処理を行うことを特徴とする。   In order to achieve the above object, the image forming apparatus of the present invention is specified by the software component in the execution unit based on the parameter value of the request message received in the second process. The processing requested by the request message is performed.

また、上記目的を達成するため、本発明の画像形成装置は、前記第2のプロセスで受信された前記要求メッセージの前記パラメータ値の数が、前期要求メッセージの前記パラメータ数と一致するか否かを判定し、前記要求メッセージのデータを検証するデータ検証手段を有することを特徴とする。   In order to achieve the above object, the image forming apparatus of the present invention determines whether or not the number of parameter values of the request message received in the second process matches the number of parameters of the previous request message. And data verification means for verifying the data of the request message.

これによって、本発明の画像形成装置は、プロセス間通信を行う機能部と送受信側の主要機能部とを別のプログラムで構成し、所定の処理を要求する要求メッセージに応じて、当該画像形成装置で実行可能な処理の中から、要求メッセージにより要求される処理を特定し処理を実行するプログラムを送受信側の主要機能部が有し、このプログラムを、予めプロセス間通信を行う機能に登録可能な構成とすることにより、プロセス間通信を行うときの送受信側の取り決めなどに依存する処理が送受信側の機能に統合され、プロセス間通信を行う機能側に、送受信側の取り決めに依存するプログラムコードやデータが含まれることがないため、画像形成装置内のデータ処理において、プロセス間通信を行う機能部の独立性が高く、送受信側の機能を容易に拡張することができる。   As a result, the image forming apparatus according to the present invention is configured so that the function unit that performs inter-process communication and the main function unit on the transmission / reception side are configured by different programs, and the image forming apparatus responds to a request message that requests a predetermined process. The main function unit on the transmission / reception side has a program that identifies the process requested by the request message and executes the process from among the processes that can be executed by the request message, and this program can be registered in advance as a function that performs interprocess communication By adopting the configuration, the processing that depends on the agreement on the transmission / reception side when performing inter-process communication is integrated into the function on the transmission / reception side. Since no data is included, the function unit that performs inter-process communication is highly independent in the data processing in the image forming apparatus, and the function on the transmission / reception side It can be extended easily.

上記目的を達成するため、本発明の画像形成装置内のデータ処理方法は、第1の機能が動作する第1のプロセスと、前記第1のプロセスから所定の処理の実行が要求される第2の機能が動作する第2のプロセスと、前記第1のプロセスから送信された、前記所定の処理を要求する要求メッセージに応じて、当該画像形成装置で実行可能な処理の中から、前記要求メッセージにより要求される処理を特定するソフトウェア部品の格納先情報を保持している保持手段とを有する画像形成装置内のデータ処理方法であって、前記第1のプロセスから送信された前記要求メッセージを、前記第2のプロセスで受信したときに、前記保持手段により保持された前記格納先情報に基づいて前記ソフトウェア部品を実行し、前記ソフトウェア部品の実行により、前記要求メッセージにより要求される処理を特定し、特定された前記処理を前記第2のプロセスで実行することを特徴とする。   In order to achieve the above object, a data processing method in an image forming apparatus according to the present invention includes a first process in which a first function operates and a second process in which execution of a predetermined process is required from the first process. The request message from among the processes executable by the image forming apparatus in response to the second process in which the function is operated and the request message requesting the predetermined process transmitted from the first process. A data processing method in the image forming apparatus having a storage unit that stores storage location information of software parts that specify processing requested by the processing, wherein the request message transmitted from the first process is When the software component is received by the second process, the software component is executed based on the storage location information held by the holding unit, and the software component is executed. To identify the processing required by the request message, and executes the processing specified in the second process.

これによって、本発明のデータ通信方法は、送受信側の主要機能部が有する、所定の処理を要求する要求メッセージに応じて、当該画像形成装置で実行可能な処理の中から、要求メッセージにより要求される処理を特定し処理を実行するプログラムを、予めプロセス間通信を行う機能部に登録しておき、受信側のプロセス間通信を行う機能部により要求メッセージを受信すると、登録されているプログラムを実行することにより、プロセス間通信を行うときの送受信側の取り決めなどに依存する処理が送受信側の機能部に統合され、プロセス間通信を行う機能部側に、送受信側の取り決めに依存するプログラムコードやデータが含まれることがないため、画像形成装置内のデータ処理において、プロセス間通信を行う機能部の独立性が高く、送受信側の機能を容易に拡張することができる。   Thus, the data communication method of the present invention is requested by a request message from among the processes executable by the image forming apparatus in response to a request message for requesting a predetermined process possessed by the main functional unit on the transmission / reception side. A program that identifies and executes the process is registered in advance in the functional unit that performs inter-process communication, and when the request message is received by the functional unit that performs inter-process communication on the receiving side, the registered program is executed. As a result, processing that depends on the agreement on the transmission / reception side when performing inter-process communication is integrated into the function unit on the transmission / reception side, and the program code that depends on the agreement on the transmission / reception side Since data is not included, in the data processing in the image forming apparatus, the independence of the functional unit that performs inter-process communication is high. A receiving-side function can be easily expanded.

上記目的を達成するため、本発明の画像形成装置内のデータ処理プログラムは、第1の機能が動作する第1のプロセスと、前記第1のプロセスに対して所定の処理を要求する第2の機能が動作する第2のプロセスと、前記第1のプロセスから送信された、前記所定の処理を要求する要求メッセージに応じて、当該画像形成装置で実行可能な処理の中から、前記要求メッセージにより要求される処理を特定するソフトウェア部品の格納先情報を保持している保持手段とを有する画像形成装置内のデータ処理プログラムであって、コンピュータに、前記第1のプロセスから送信された前記要求メッセージを、前記第2のプロセスで受信したときに、前記保持手段により保持された前記格納先情報に基づいて前記ソフトウェア部品を実行させ、前記ソフトウェア部品の実行により、前記要求メッセージにより要求される処理を特定させ、特定された前記処理を前記第2のプロセスで実行させる。   In order to achieve the above object, a data processing program in an image forming apparatus of the present invention includes a first process in which a first function operates and a second process that requests a predetermined process for the first process. In response to the second process in which the function operates and the request message transmitted from the first process and requesting the predetermined process, the request message can be selected from the processes that can be executed by the image forming apparatus. A data processing program in an image forming apparatus having a storage unit that stores storage location information of software components that specify a requested process, wherein the request message is transmitted to the computer from the first process Is received in the second process, the software component is executed based on the storage location information held by the holding means, Software by executing part, the request message to identify the differentially processing request by, to execute the identified said processing in the second process.

これによって、本発明の画像形成装置内のデータ処理プログラムは、コンピュータを、予め登録しておいた、送受信側の主要機能部が有する、所定の処理を要求する要求メッセージに応じて、当該画像形成装置で実行可能な処理の中から、要求メッセージにより要求される処理を特定し処理を実行するプログラムを、受信側のプロセス間通信を行う機能部により要求メッセージを受信したときに実行するように機能させることができる。   As a result, the data processing program in the image forming apparatus of the present invention performs the image forming in response to a request message for requesting a predetermined process which is registered in advance in the main function unit on the transmission / reception side of the computer. A function that identifies a process requested by a request message from processes that can be executed by the device and executes the program when the request message is received by a function unit that performs inter-process communication on the receiving side. Can be made.

よって、本発明の画像形成装置内のデータ処理方法プログラムは、プロセス間通信を行うときの送受信側の取り決めなどに依存する処理が送受信側の機能部に統合され、プロセス間通信を行う機能部側に、送受信側の取り決めに依存するプログラムコードやデータが含まれることがないため、画像形成装置内のデータ処理において、プロセス間通信を行う機能部の独立性が高く、送受信側の機能を容易に拡張する「画像形成装置内のデータ処理機能」を実現することができる。   Therefore, the data processing method program in the image forming apparatus according to the present invention is a function unit that performs inter-process communication by integrating processing that depends on an agreement on the transmission / reception side when performing inter-process communication into the function unit on the transmission / reception side. Therefore, there is no program code or data that depends on the agreement on the transmission / reception side, and therefore, in the data processing in the image forming apparatus, the function unit that performs inter-process communication is highly independent, and the function on the transmission / reception side is easy. An extended “data processing function in the image forming apparatus” can be realized.

本発明によれば、画像形成装置内のデータ処理において、プロセス間通信を行う機能部の独立性が高く、送受信側の機能を容易に拡張することができる画像形成装置、画像形成装置内のデータ処理方法、及びデータ処理プログラムを提供することができる。   According to the present invention, in the data processing in the image forming apparatus, the function unit that performs inter-process communication is highly independent, and the function on the transmission / reception side can be easily expanded, and the data in the image forming apparatus A processing method and a data processing program can be provided.

以下、本発明の好適な実施の形態(以下、「実施形態」という。)について、図面を用いて詳細に説明する。   DESCRIPTION OF EMBODIMENTS Hereinafter, preferred embodiments of the present invention (hereinafter referred to as “embodiments”) will be described in detail with reference to the drawings.

[第1の実施形態]
<ハードウェア構成>
では、本実施形態に係る画像形成装置100のハードウェア構成について、図1を用いて説明する。図1は、本発明の第1の実施形態に係る画像形成装置100のハードウェア構成の一例を示す図である。
[First Embodiment]
<Hardware configuration>
A hardware configuration of the image forming apparatus 100 according to the present embodiment will be described with reference to FIG. FIG. 1 is a diagram illustrating an example of a hardware configuration of an image forming apparatus 100 according to the first embodiment of the present invention.

本実施形態に係る画像形成装置100は、操作パネル11と、記憶メディアI/F12と、コントローラ13と、データ通信I/F14と、HDD(Hard Disk Drive)17と、スキャナ15と、プロッタ16とから構成され、それぞれ相互に接続されている。   The image forming apparatus 100 according to the present embodiment includes an operation panel 11, a storage medium I / F 12, a controller 13, a data communication I / F 14, an HDD (Hard Disk Drive) 17, a scanner 15, and a plotter 16. Are connected to each other.

操作パネル11は、入力装置11aと表示装置11bとを有しており、入力装置11aは、ハードウェアキーなどで構成され、画像形成装置100に各操作信号を入力するのに用いられる。また、表示装置11bは、ディスプレイなどで構成され、例えば画像形成動作に関する各種情報を表示する。データ通信I/F14は、インタフェース装置14aを有しており、画像形成装置100をネットワークなどのデータ伝送路に接続するインタフェースである。HDD17は、画像形成装置100で取り扱われる受信文書データや読み取り画像データなどの各種データを格納している。また、HDD17は、これらの各種データを、所定のファイルシステムやDB(Data Base)により管理している。   The operation panel 11 includes an input device 11a and a display device 11b. The input device 11a includes hardware keys and is used to input each operation signal to the image forming apparatus 100. Further, the display device 11b is configured by a display or the like, and displays, for example, various types of information related to the image forming operation. The data communication I / F 14 includes an interface device 14a, and is an interface that connects the image forming apparatus 100 to a data transmission path such as a network. The HDD 17 stores various data such as received document data and read image data handled by the image forming apparatus 100. Further, the HDD 17 manages these various data by a predetermined file system or DB (Data Base).

上記HDD17に格納される各種データの中には、例えば、デジタルカメラなどの外部機器によって記録された電子データも含まれる。このような場合には、メモリカードなどの記録媒体12bによって画像形成装置100に提供されるか、データ伝送路であるネットワークなどを通じてアップロードされる。記録媒体12bは、記憶メディアI/F12が有するドライブ装置12aにセットされ各種データが記録媒体12bからドライブ装置12aを介してHDD17に格納される。   The various data stored in the HDD 17 includes electronic data recorded by an external device such as a digital camera. In such a case, it is provided to the image forming apparatus 100 by a recording medium 12b such as a memory card or uploaded via a network or the like that is a data transmission path. The recording medium 12b is set in the drive device 12a included in the storage medium I / F 12, and various data are stored in the HDD 17 from the recording medium 12b via the drive device 12a.

コントローラ13は、ROM(Read Only Memory)13a、RAM(Random Access Memory)13b、及びCPU(Central Processing Unit)13cとを有しており、ROM13aは、画像形成装置100が起動されるときに実行されるプログラムや各種データを格納している。また、RAM13bは、ROM13aやHDD17から読み出された各種プログラムやデータを一時保持する。更に、CPU13cは、RAM13bが一時保持しているプログラムを実行する。コントローラ13は、例えば、データ通信I/F14を介して印刷データを受信した場合に、ROM13aからRAM13b上に読み出された、PDL(Page Description Language)を解釈可能なプログラム(PDLパーサ)をCPU13cにより実行し、印刷データを解釈してビットマップイメージを生成する。   The controller 13 includes a ROM (Read Only Memory) 13a, a RAM (Random Access Memory) 13b, and a CPU (Central Processing Unit) 13c. The ROM 13a is executed when the image forming apparatus 100 is activated. Program and various data are stored. The RAM 13b temporarily stores various programs and data read from the ROM 13a and the HDD 17. Further, the CPU 13c executes a program temporarily stored in the RAM 13b. For example, when the print data is received via the data communication I / F 14, the controller 13 reads a program (PDL parser) that can read PDL (Page Description Language) read from the ROM 13a onto the RAM 13b by the CPU 13c. Execute and interpret the print data to generate a bitmap image.

スキャナ15は、画像読取装置15aを有しており、読み取り面に配置された原稿を光学的に読み取り画像データを生成する。プロッタ16は、印刷装置16aを有しており、例えば、電子写真プロセス方式によってビットマップイメージを記録紙に印刷する。   The scanner 15 includes an image reading device 15a, and optically reads a document placed on a reading surface and generates image data. The plotter 16 has a printing device 16a and prints a bitmap image on a recording sheet by, for example, an electrophotographic process method.

このように、本実施形態に係る画像形成装置100では、上記ハードウェア構成により、コピー、プリンタ、ファクシミリ、スキャナなどの複数の機能を実現している。   As described above, the image forming apparatus 100 according to the present embodiment realizes a plurality of functions such as a copy, a printer, a facsimile, and a scanner by the above hardware configuration.

<ソフトウェア構成>
次に、本実施形態に係る画像形成装置100のソフトウェア構成について、図2を用いて説明する。図2は、本発明の第1の実施形態に係る画像形成装置100のソフトウェア構成の一例を示す図である。
<Software configuration>
Next, the software configuration of the image forming apparatus 100 according to the present embodiment will be described with reference to FIG. FIG. 2 is a diagram illustrating an example of a software configuration of the image forming apparatus 100 according to the first embodiment of the present invention.

<<画像形成装置>>
本実施形態に係る画像形成装置100は、図1に示したプロッタ16と、スキャナ15と、ファクシミリやHDD17などのハードウェアリソース101などを有するとともに、起動部140によって起動されるプラットホーム120とアプリケーション130とから構成されるソフトウェア群110とを備えている。
<< Image forming apparatus >>
The image forming apparatus 100 according to the present embodiment includes the plotter 16 illustrated in FIG. 1, the scanner 15, the hardware resources 101 such as a facsimile machine and the HDD 17, and the like, and the platform 120 and the application 130 activated by the activation unit 140. And a software group 110 composed of

プラットホーム120は、アプリケーション130からの処理要求を解釈してハードウェアリソースの獲得要求を発生させるコントロールサービス150と、1つ以上のハードウェアリソースの管理を行い、コントロールサービス150からの獲得要求を調停するSRM(System Resource Manager)123と、OS(Operating System)121とを有する。   The platform 120 interprets a processing request from the application 130 and generates a hardware resource acquisition request, manages one or more hardware resources, and arbitrates the acquisition request from the control service 150. An SRM (System Resource Manager) 123 and an OS (Operating System) 121 are included.

コントロールサービス150は、複数のサービスモジュールから形成され、SCS(System Control Service)122と、ECS(Engine Control Service)124と、MCS(Memory Control Service)125と、OCS(Operation panel Control Service)126と、FCS(FAX Control Service)127と、NCS(Network Control Service)128とから構成される。   The control service 150 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, It consists of FCS (FAX Control Service) 127 and NCS (Network Control Service) 128.

なお、このプラットホーム120は、予め定義されたメソッドによりアプリケーション130から処理要求を受信可能とするAPI(Application Program Interface)103と、プロッタ16やスキャナ15、またその他のハードウェアリソース101などを、ハードウェアリソースを利用する上位層からの要求に従ってOS121を介して制御するときのインタフェースであるエンジンI/F102を有する。   The platform 120 includes an API (Application Program Interface) 103 that can receive a processing request from the application 130 by a predefined method, a plotter 16, a scanner 15, and other hardware resources 101. It has an engine I / F 102 that is an interface for controlling via the OS 121 in accordance with a request from an upper layer that uses resources.

OS121は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。   The 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とともにシステムの制御およびリソースの管理を行うものであり、プロッタ16やスキャナ15などのエンジン、メモリ、HDDファイル、ホストI/O(例えば、セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど。)のハードウェアリソースを利用する上位層からの要求に従って調停を行い、実行制御する。   The SRM 123, together with the SCS 122, controls the system and manages resources, and includes engines such as the plotter 16 and the scanner 15, memory, HDD files, host I / O (for example, Centro I / F, network I / F, IEEE 1394). I / F, RS232C I / F, etc.) arbitration is performed according to a request from an upper layer using hardware resources, 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. Also, the SRM 123 performs hardware resource usage scheduling in response to a request from an upper layer, and directly executes the request contents (for example, paper conveyance and image forming operation, memory allocation, file generation, etc. by the printer engine). Yes.

SCS122は、アプリ管理、操作部制御、システム画面表示、LED(Light Emitting Diode)表示、リソース管理、割り込みアプリ制御を行うものである。ECS124は、プロッタ16、スキャナ15などから構成されるハードウェアリソースのエンジンを制御するものである。   The SCS 122 performs application management, operation unit control, system screen display, LED (Light Emitting Diode) display, resource management, and interrupt application control. The ECS 124 controls a hardware resource engine including the plotter 16 and the scanner 15.

MCS125は、画像メモリの取得および解放、HDDの利用、画像データの圧縮および伸張などを行うものである。OCS126は、オペレータと本体制御間の情報伝達手段となる操作パネル11を制御するモジュールである。   The MCS 125 acquires and releases an image memory, uses an HDD, compresses and decompresses image data, and the like. The OCS 126 is a module that controls the operation panel 11 serving as information transmission means between the operator and the main body control.

FCS127は、システムコントローラの各アプリ層からPSTN(Public Switched Telephone Networks)/ISDN(Integrated Services Digital Network)を利用したファクシミリ送受信、BKM(バックアップSRAM:Static Random Access Memory)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのAPIを提供するものである。FCS127には、そのサブプロセスであるFCUハンドラ(FCUH)が起動される。このFCUHは、FCS127からの指令によりファクシミリ送受信のときにファクシミリエンジンのデバイスドライバを制御するものである。   The FCS 127 transmits / receives facsimiles using PSTN (Public Switched Telephone Networks) / ISDN (Integrated Services Digital Network) from each application layer of the system controller, and various facsimile data managed by BKM (Backup SRAM: Static Random Access Memory). An API for performing registration / quotation, facsimile reading, facsimile reception printing, and fusion transmission / reception is provided. In the FCS 127, an FCU handler (FCUH) that is a subprocess thereof is activated. The FCUH controls the device driver of the facsimile engine when performing facsimile transmission / reception according to a command from the FCS 127.

NCS128は、ネットワークI/Oを必要とするアプリケーション130に対して共通に利用できるサービスを提供するためのモジュール群である。   The NCS 128 is a module group for providing a service that can be commonly used for the applications 130 that require network I / O.

本実施形態に係るデータ処理機能は、NCS128が有している。NCS128を構成する具体的なソフトウェア部品(プログラム)については、以降に示す図3を用いて説明する。   The NCS 128 has a data processing function according to this embodiment. Specific software components (programs) constituting the NCS 128 will be described with reference to FIG.

アプリケーション130は、PCLやポストスクリプト(PS)などのページ記述言語(PDL)を有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、工程検査用アプリケーションである工程検査アプリ116と、配信用のアプリケーションである配信アプリ117とを有している。   The application 130 includes a printer application 111 that is a printer application having a page description language (PDL) such as PCL or 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 that is a scanner application, a network file application 115 that is a network file application, a process inspection application 116 that is a process inspection application, and a distribution application 117 that is a distribution application. Yes.

これらの各コントロールサービスとSRM123と各アプリケーション130とは、1つ以上のメソッドを有するオブジェクトであり、このオブジェクトを起動することによりそれぞれプロセスとしてOS121上に生成されて実行される。そして、各プロセス内部には、複数のスレッドが起動され、OS121の管理下でこれらのスレッドのCPU占有時間を切り替えることにより並列実行が実現されている。このため、プロセス切り替えによる並列実行と比較して、並列実行時の処理速度の向上が図られている。   Each of these control services, SRM 123, and each application 130 is an object having one or more methods, and is generated and executed on the OS 121 as a process by activating this object. A plurality of threads are activated in each process, and parallel execution is realized by switching the CPU occupation time of these threads under the management of the OS 121. For this reason, compared with parallel execution by process switching, the processing speed at the time of parallel execution is improved.

各アプリプロセスと各コントロールサービスプロセスとは、メソッドの実行によるプロセス間通信によってメッセージの送受信が行われる。   Messages are transmitted and received between each application process and each control service process by inter-process communication by executing a method.

<<NCS>>
ここからは、本実施形態に係るデータ処理機能を有するNCS128について、図3及び図4を用いて説明する。
(ソフトウェア構成の概要)
図3は、本発明の第1の実施形態に係るNCS128のソフトウェア構成の一例を示す図である。
<< NCS >>
From here, the NCS 128 having the data processing function according to the present embodiment will be described with reference to FIGS.
(Overview of software configuration)
FIG. 3 is a diagram showing an example of the software configuration of the NCS 128 according to the first embodiment of the present invention.

本実施形態に係るNCS128のソフトウェア構成は、主に、各プロトコルによって受信したデータを各アプリケーション130に振り分けたり、アプリケーション130からデータをネットワーク側に送信する際の仲介を行うモジュール群で構成される。そのモジュール群の中に、本実施形態に係るWS−MFPモジュール群20がある。   The software configuration of the NCS 128 according to the present embodiment is mainly composed of a module group that distributes data received by each protocol to each application 130 and mediates when data is transmitted from the application 130 to the network side. Among the module groups, there is a WS-MFP module group 20 according to the present embodiment.

ここで上記の「WS」とは、World Wide Web Consortium(W3C)のワーキンググループ(WG)により進められているXML(Extensible Markup Language)をベースとした標準化Webサービスの意味である。「WS」については、その詳細が開示されている公開文献「Devices Profile for Web Services」を開示し、ここでの説明を省略する。公開文献の入手先URLは、"http://specs.xmlsoap.org/ws/2006/02/devprof/devicesprofile.pdf"である。また、以降の説明の中で、「WS」がつく機能名やモジュール名は、この標準化Webサービスに準拠して設計された機能やモジュールである。例えば、WS−MFPモジュール群20は、標準化Webサービスに準拠して設計された複合機用のモジュール群を示している。   Here, the above-mentioned “WS” means a standardized Web service based on XML (Extensible Markup Language) promoted by a working group (WG) of the World Wide Web Consortium (W3C). As for “WS”, an open document “Devices Profile for Web Services” in which the details are disclosed is disclosed, and the description thereof is omitted here. The URL for obtaining the published document is “http://specs.xmlsoap.org/ws/2006/02/devprof/devicesprofile.pdf”. In the following description, function names and module names with “WS” are functions and modules designed in accordance with this standardized Web service. For example, the WS-MFP module group 20 is a module group for a multifunction machine designed in accordance with a standardized Web service.

図3に示すWS−MFPモジュール群20は、外部機器と画像形成装置100が有するプリンタアプリ111との間でプリンタ関連のデータを取り扱うWS−Printer21pや、外部機器と画像形成装置100が有するスキャナアプリ114との間でスキャナ関連のデータを取り扱うWS−Scanner21sと、外部機器と画像形成装置100との間で機器関連のデータを取り扱うDFMモジュール22とから構成され、上記各ソフトウェア部品は、それぞれ別のプロセスで起動され動作するように実装される。   The WS-MFP module group 20 shown in FIG. 3 includes a WS-Printer 21p that handles printer-related data between the external device and the printer application 111 included in the image forming apparatus 100, and a scanner application included in the external device and the image forming apparatus 100. 114 includes a WS-Scanner 21 s that handles scanner-related data, and a DFM module 22 that handles device-related data between the external device and the image forming apparatus 100. Implemented to be invoked and run in a process.

例えば、WS−Printer21pは、DFMモジュール22からのプリンタアプリ111に関する情報の取得要求に応答したり、外部機器からの印刷要求をプリンタアプリ111に通知したりする機能である。DFMモジュール22は、WS−Printer21pやWS−Scanner21sなどからプリンタアプリ111やスキャナアプリ114などのアプリケーション情報を取得し、取得した情報を基に外部機器に対して、画像形成装置100が提供可能な標準化Webサービスに関する情報を含む機器情報を送信する。   For example, the WS-Printer 21p has a function of responding to an information acquisition request regarding the printer application 111 from the DFM module 22 and notifying the printer application 111 of a print request from an external device. The DFM module 22 acquires application information such as the printer application 111 and the scanner application 114 from the WS-Printer 21p, WS-Scanner 21s, and the like, and standardization that the image forming apparatus 100 can provide to external devices based on the acquired information. Device information including information related to the Web service is transmitted.

このように、本実施形態に係る画像形成装置100は、上記構成によるNCS128を有することにより、外部機器と画像形成装置100との間でデータの送受信を行うことができる。   As described above, the image forming apparatus 100 according to the present embodiment includes the NCS 128 configured as described above, so that data can be transmitted and received between the external device and the image forming apparatus 100.

上記において、DFMモジュール22からWS−Printer21pが保有するプリンタ関連の情報を取得する場合について説明を行ったが、互いに別のプロセスによって動作しているため、プロセス間通信によりデータの送受信を行う。
(ソフトウェア構成の詳細)
図4は、本発明の第1の実施形態に係るWS−MFPモジュール群20内部のプロセス間通信の構成の一例を示す図である。
In the above description, the case where the printer-related information held by the WS-Printer 21p is acquired from the DFM module 22 has been described. However, since the printer-related information is operated by different processes, data is transmitted and received by inter-process communication.
(Details of software configuration)
FIG. 4 is a diagram showing an example of a configuration of inter-process communication inside the WS-MFP module group 20 according to the first embodiment of the present invention.

図4に示すように、本実施形態に係るWS−MFPモジュール群20は、DFMモジュール22、WS−Printer21p及びWS−Scanner21sとから構成され、上記各ソフトウェア部品は、それぞれ別のプロセスで起動され動作するように実装される。また、上記各ソフトウェア部品には、プロセス間通信機能を有するIMC(Internal Message Communication)51のライブラリがリンクされている。   As shown in FIG. 4, the WS-MFP module group 20 according to the present embodiment includes a DFM module 22, a WS-Printer 21p, and a WS-Scanner 21s, and each software component is activated and operated in a separate process. To be implemented. Each software component is linked with an IMC (Internal Message Communication) 51 library having an inter-process communication function.

以下に、DFMモジュール22、WS−Printer21p、及びWS−Scanner21sそれぞれを構成する主なソフトウェア部品について説明する。   Below, the main software components which comprise each DFM module 22, WS-Printer 21p, and WS-Scanner 21s are demonstrated.

WS−Printer21pは、PrinterDCP41pとWS−Eventing42pとから構成される。   The WS-Printer 21p is composed of a Printer DCP 41p and a WS-Eventing 42p.

PrinterDCP41pは、プリンタ機能を利用する外部機器が有する機能(例えばプリンタドライバなど)と画像形成装置100が有するプリンタアプリ111との間で、プリンタ関連のデータを送受信する。また、WS−Eventing42pは、プリンタ機能を利用する外部機器が有する機能から送信された印刷要求などの処理要求イベントを画像形成装置100が有するプリンタアプリ111に通知する。   The Printer DCP 41 p transmits and receives printer-related data between a function (for example, a printer driver) of an external device that uses the printer function and the printer application 111 of the image forming apparatus 100. The WS-Eventing 42p notifies the printer application 111 of the image forming apparatus 100 of a processing request event such as a print request transmitted from a function of an external device that uses the printer function.

WS−Printer21pは、上記機能構成により、例えば、外部機器からの印刷要求に従って、画像形成装置100が有するプリンタアプリ111により、受信した画像データの印刷を行い、印刷が完了した旨を外部機器へ通知する処理を実現する。   With the above functional configuration, the WS-Printer 21p prints the received image data by the printer application 111 included in the image forming apparatus 100 in accordance with a print request from the external device, for example, and notifies the external device that printing has been completed. To achieve the process.

WS−Scanner21sは、ScannerDCP41sとWS−Eventing42sとから構成される。ScannerDCP41sは、スキャナ機能を利用する外部機器が有する機能(例えば文書管理ソフトウェアなど)と画像形成装置100が有するスキャナアプリ114との間で、スキャナ関連のデータを送受信する。また、WS−Eventing42sは、スキャナ機能を利用する外部機器が有する機能から送信された画像読み取り要求などの処理要求イベントを画像形成装置100が有するスキャナアプリ114に通知する。   WS-Scanner 21s is composed of Scanner DCP 41s and WS-Eventing 42s. The Scanner DCP 41 s transmits and receives scanner-related data between a function (for example, document management software) of an external device that uses the scanner function and the scanner application 114 of the image forming apparatus 100. Also, the WS-Eventing 42s notifies the scanner application 114 of the image forming apparatus 100 of a processing request event such as an image reading request transmitted from a function of an external device that uses the scanner function.

WS−Scanner21sは、上記機能構成により、例えば、外部機器からの画像読み取り要求に従って、画像形成装置100が有するスキャナアプリ114により、原稿の読み取りを行い、読み取りが完了した旨を外部機器へ通知する処理を実現する。   The WS-Scanner 21s performs processing for reading the document by the scanner application 114 included in the image forming apparatus 100 according to the image reading request from the external device, and notifying the external device that the reading is completed. Is realized.

DFMモジュール22は、WS−Discovery31と、WS−Transfer32と、WS−MetadataExchenge33と、WSD−Manager34とから構成される。   The DFM module 22 includes a WS-Discovery 31, a WS-Transfer 32, a WS-Metadata Exchange 33, and a WSD-Manager 34.

WS−Discovery31は、標準化Webサービスにより、搭載するアプリケーション機能を提供可能な装置(WS−Device)がネットワークに参加したことを、外部機器が有する機能が検知するためのメッセージを、外部機器と画像形成装置100との間で送受信する。   WS-Discovery 31 uses a standardized Web service to generate a message for detecting the function of an external device that a device (WS-Device) capable of providing an installed application function has joined the network, and forming an image with the external device. Data is transmitted to and received from the device 100.

WS−Transfer32は、画像形成装置100が提供可能な標準化Webサービスに関する情報(機器情報)を通知するメッセージを、外部機器と画像形成装置100との間で送受信する。また、WS−Transfer32は、UDP(User Datagram Protocol)により、外部機器に対して、画像形成装置100がネットワークに参加した旨を知らせる(例えば「Hello」コマンドをネットワークに接続される全ての外部機器に対してマルチキャストする)。   The WS-Transfer 32 transmits and receives a message for notifying information (device information) related to a standardized Web service that can be provided by the image forming apparatus 100 between the external device and the image forming apparatus 100. Also, the WS-Transfer 32 notifies the external device that the image forming apparatus 100 has joined the network by using UDP (User Datagram Protocol) (for example, a “Hello” command is sent to all the external devices connected to the network. Multicast to).

WS−MetadataExchenge33は、IMC51が有するプロセス間通信機能によりWS−Printer21p及びWS−Scanner21sから取得した各アプリケーションに関する情報などを基に、画像形成装置100が提供可能な標準化Webサービスに関する情報のデータを生成する。   The WS-MetadataExchange 33 generates data of information related to standardized Web services that can be provided by the image forming apparatus 100 based on information related to each application acquired from the WS-Printer 21p and the WS-Scanner 21s by the inter-process communication function of the IMC 51. .

WSD−Manager34は、WS−Discovery31、WS−Transfer32、及びWS−MetadataExchenge33、並びに、WS−Printer21p及びWS−Scanner21sが有する各DCP41p及び41sなどの動作制御・管理を行う。   The WSD-Manager 34 performs operation control and management of the WS-Discovery 31, the WS-Transfer 32, the WS-Metadata Exchange 33, and the DCPs 41p and 41s included in the WS-Printer 21p and the WS-Scanner 21s.

DFMモジュール22は、上記機能構成により、例えば、標準化Webサービスにより、搭載するアプリケーション機能を提供可能な画像形成装置100の自動検知機能を実現している。   The DFM module 22 realizes the automatic detection function of the image forming apparatus 100 capable of providing an installed application function by, for example, a standardized Web service with the above-described functional configuration.

IMC51は、プロセス間通信機能を有しており、他のDFMモジュール22、WS−Printer21p、及びWS−Scanner21sなどのように、ソフトウェア部品として単独で機能するものではなく、単独で機能するソフトウェア部品に対して、プロセス間でデータの送受信などを行うためのプロセス間通信プログラム群が1つにまとめられたファイル、すなわちライブラリとして提供される。   The IMC 51 has an inter-process communication function, and does not function as a software component independently, such as other DFM modules 22, WS-Printer 21p, and WS-Scanner 21s. On the other hand, an interprocess communication program group for performing transmission / reception of data between processes is provided as a single file, that is, a library.

以下に、ライブラリとして提供されるIMC51のプロセス間通信プログラム群について、図5を用いて説明する。図5は、本発明の第1の実施形態に係るIMC51のソフトウェア構成の一例を示す図である。   Hereinafter, the inter-process communication program group of the IMC 51 provided as a library will be described with reference to FIG. FIG. 5 is a diagram illustrating an example of the software configuration of the IMC 51 according to the first embodiment of the present invention.

(IMCライブラリのソフトウェア構成)
本実施形態において実装されるIMC51のソフトウェア構成は、図5(a)に示すように3つのレイヤで構成され、各レイヤがプロセス間通信を行うための複数のプログラムを有している。
(Software configuration of IMC library)
The software configuration of the IMC 51 implemented in the present embodiment is composed of three layers as shown in FIG. 5A, and each layer has a plurality of programs for performing inter-process communication.

[IMCI/Fレイヤ]
IMCI/Fレイヤ61は、プロセス間通信機能を利用するソフトウェア部品(送受信側の機能を実現するモジュール)のプログラムコードから実際にコールすることが可能な関数61a〜d(以下に示す4つの関数)がまとめられたレイヤである。
(a)PutMsg()61a(送信指示手段に対応する機能を実現するプログラム)
要求メッセージの送信を指示する関数。
(b)SendReceive()61b(応答受信指示手段に対応する機能を実現するプログラム)
要求メッセージを送信後、要求に応じた応答メッセージの受信待ちを指示する関数。
(c)GetMsg()61c(要求待ち指示手段に対応する機能を実現するプログラム)
要求メッセージの受信待ちを指示する関数。
(d)registAPI()61d(格納先情報設定指示手段に対応する機能を実現するプログラム)
要求メッセージに応じて、画像形成装置100で実行可能な処理の中から、要求メッセージにより要求される処理を特定し処理を実行するソフトウェア部品(以下、「コールバック関数」という。)の格納先情報(以下、「コールバック関数へのポインタ」という。)の設定を指示する関数(コールバック関数の登録を指示する関数)。
[IMCI / F layer]
The IMCI / F layer 61 has functions 61a to 61d (four functions shown below) that can be actually called from the program code of a software component that uses the inter-process communication function (module that realizes the function on the transmission / reception side). Is a grouped layer.
(A) PutMsg () 61a (a program that realizes a function corresponding to the transmission instruction means)
A function that indicates sending a request message.
(B) SendReceive () 61b (a program for realizing the function corresponding to the response reception instruction means)
A function that instructs to wait for receiving a response message after sending a request message.
(C) GetMsg () 61c (a program that implements a function corresponding to the request waiting instruction means)
A function that indicates waiting to receive a request message.
(D) registAPI () 61d (program that implements the function corresponding to the storage location information setting instruction means)
Storage location information of a software component (hereinafter referred to as “callback function”) that identifies a process requested by the request message from processes that can be executed by the image forming apparatus 100 in response to the request message and executes the process. (Hereinafter, referred to as “pointer to callback function”) setting function (function for instructing registration of callback function).

関数61a〜dは、図5(b)に示す要求メッセージを送受信する場合に想定される4つの動作指示に対応付けられている。例えば、受信側からの処理要求に応じた応答メッセージを必要とせず、受信側に行わせる処理を要求する要求メッセージのみを送信したい場合(図中に示す(1)の場合)には、プログラムコードから関数PutMsg()61aをコールすればよい。また、送信側から送信される要求メッセージの受信を待ち受ける状態へ移行したい場合(図中に示す(3)の場合)には、プログラムコードから関数GetMsg()61cをコールすればよい。   The functions 61a to 61d are associated with four operation instructions assumed when the request message shown in FIG. For example, when a response message corresponding to a processing request from the receiving side is not required and only a request message requesting processing to be performed on the receiving side is desired (in the case of (1) shown in the figure), the program code From this, the function PutMsg () 61a may be called. When it is desired to shift to a state of waiting for reception of a request message transmitted from the transmission side (in the case of (3) shown in the figure), the function GetMsg () 61c may be called from the program code.

このように、IMCI/Fレイヤ61は、独立性の高いプロセス間通信機能を実現するため、送受信側の処理内容や通信目的などの取り決めに依存しない基本的な動作のみを指示するインタフェースを提供している。   As described above, the IMCI / F layer 61 provides an interface for instructing only basic operations that do not depend on an agreement such as processing contents and communication purpose on the transmission / reception side in order to realize a highly independent interprocess communication function. ing.

[API内部処理レイヤ]
API内部処理レイヤ62は、IMCI/Fレイヤ61の各関数に対応して実際の処理(内部処理)を行う関数62a〜e(以下に示す5つの関数)がまとめられたレイヤである。
(e)Send()62a
上位レイヤに位置する関数PutMsg()61aからコールされ、要求メッセージの送信のみを行う関数。
(f)RequestResponse()62b
上位レイヤに位置する関数SendReceive()61bからコールされ、要求メッセージの送信から応答メッセージの受信までの処理を行う関数。
(g)Receive()62c
上位レイヤに位置する関数GetMsg()61cからコールされ、要求メッセージの受信待ち受け状態への前処理を行う関数。関数Receive()62cは、以下に挙げる関数を内部的に実行する。
・bind()
関数socket()により生成されたソケットに「IPアドレス」や「ポート番号」を指定してソケットを特定する関数。
・listen()
関数connect()からのコネクションの確立要求を待つ関数。
・accept()
関数connect()からの確立要求を受け取り、実際にデータ回線を確立するための新しいソケットを生成する関数。
(h)ProcessReceivedMsg()62d
関数Receive()62c実行後の要求メッセージの受信待ち受け状態において、要求メッセージの受信から応答メッセージの送信までの処理を行う関数。
(i)Register()62e
上位レイヤに位置する関数registAPI()61dからコールされ、要求メッセージにより要求される処理を特定するソフトウェア部品(コールバック関数)の格納先情報(関数へのポインタ)を設定する関数、すなわち、登録指示を受けコールバック関数を登録する関数である。
[API internal processing layer]
The API internal processing layer 62 is a layer in which functions 62a to 62e (five functions shown below) that perform actual processing (internal processing) corresponding to each function of the IMCI / F layer 61 are collected.
(E) Send () 62a
A function that is called from the function PutMsg () 61a located in the upper layer and only transmits a request message.
(F) RequestResponse () 62b
A function that is called from the function SendReceive () 61b located in the upper layer and performs processing from transmission of a request message to reception of a response message.
(G) Receive () 62c
A function that is called from the function GetMsg () 61c located in the upper layer and performs preprocessing to a request message reception standby state. The function Receive () 62c internally executes the following functions.
Bind ()
A function that identifies a socket by specifying an “IP address” or “port number” for the socket created by the socket () function.
・ Listen ()
A function that waits for a connection establishment request from the function connect ().
・ Accept ()
A function that receives a setup request from the function connect () and creates a new socket to actually establish the data line.
(H) ProcessReceivedMsg () 62d
A function that performs processing from reception of a request message to transmission of a response message in a request message reception waiting state after execution of the function Receive () 62c.
(I) Register () 62e
A function that sets storage location information (pointer to a function) of a software component (callback function) that is called from a function registAPI () 61d located in an upper layer and specifies a process requested by a request message, that is, a registration instruction Is a function that registers a callback function.

[送受信処理実行レイヤ]
送受信処理実行レイヤ63は、API内部処理レイヤ62の各関数からコールされ、プロセス間でのデータの送受信処理を行う関数63a〜c(以下に示す3つの関数:通信制御手段)がまとめられたレイヤである。
(j)Connect()63a
上位レイヤに位置する関数Send()62a及び関数RequestResponse()62bからコールされ、関数connect()を実行し、コネクションの確立要求を行う関数。
(k)SendMsg()63b
上位レイヤに位置する関数Send()62a、関数RequestResponse()62b、及びProcessReceivedMsg()62dからコールされ、関数send()を実行し、データ送信を行う関数。
(l)Recv()63c
上位レイヤに位置する関数RequestResponse()62b及びProcessReceivedMsg()62dからコールされ、関数recv()を実行し、データ受信を行う関数。
[Transmission / reception processing execution layer]
The transmission / reception processing execution layer 63 is called from each function of the API internal processing layer 62, and is a layer in which functions 63a to 63c (three functions shown below: communication control means) for performing data transmission / reception processing between processes are collected. It is.
(J) Connect () 63a
A function that is called from the function Send () 62a and the function RequestResponse () 62b located in the upper layer, executes the function connect (), and makes a connection establishment request.
(K) SendMsg () 63b
A function that is called from the function Send () 62a, the function RequestResponse () 62b, and the ProcessReceivedMsg () 62d located in the upper layer, executes the function send (), and transmits data.
(L) Recv () 63c
A function that is called from the function RequestResponse () 62b and ProcessReceivedMsg () 62d located in the upper layer, executes the function recv (), and receives data.

[その他(コールバック関数)]
(m)callCB()64(実行手段に対応する機能を実現するプログラム)
上位レイヤに位置する関数Register()62eにより、要求メッセージにより要求される処理を特定し処理を実行する関数(registAPI()61dをコールすることで登録された関数)。
[Other (callback function)]
(M) callCB () 64 (program that implements the function corresponding to the execution means)
A function (a function registered by calling registAPI () 61d) that specifies a process requested by a request message by a function Register () 62e located in an upper layer and executes the process.

関数callCB()64は、受信側のIMC51が要求メッセージを受信すると、上位レイヤに位置する関数ProcessReceivedMsg()62dによって、設定されている関数callCB64へのポインタに基づいてコールされ実行される。また、関数callCB()64は、例えば、受信側のDFMモジュール22に含まれており、受信側のIMC51には、設定されたポインタの値を基に関数callCB()64をコールバックする関数(以下、「呼び出し先関数」という。)が定義されている。このような関数callCB()64をコールバック関数という。   When the receiving side IMC 51 receives the request message, the function callCB () 64 is called and executed by the function ProcessReceivedMsg () 62d located in the upper layer based on the pointer to the set function callCB64. The function callCB () 64 is included in, for example, the DFM module 22 on the reception side, and the function callCB () 64 is called back to the IMC 51 on the reception side based on the set pointer value ( Hereinafter, it is referred to as a “call destination function”). Such a function callCB () 64 is called a callback function.

このように、本実施形態に係る画像形成装置100では、異なるプロセスで動作するDFMモジュール22と、WS−Printer21p又はWS−Scanner21sとの間で行うプロセス間通信を、IMC51のプロセス間通信プログラムを実行することで実現している。また、本実施形態では、DFMモジュール22、WS−Printer21p、及びWS−Scanner21sそれぞれのソフトウェア部品が、IMC51のプロセス間通信プログラムを用いることができるように、各ソフトウェア部品にIMC51のライブラリをリンクし実装する。   As described above, in the image forming apparatus 100 according to the present embodiment, the interprocess communication performed between the DFM module 22 operating in different processes and the WS-Printer 21p or the WS-Scanner 21s is executed by the interprocess communication program of the IMC 51. It is realized by doing. In the present embodiment, the software components of the DFM module 22, WS-Printer 21p, and WS-Scanner 21s are linked and mounted with each IMC 51 library so that the inter-process communication program of the IMC 51 can be used. To do.

<プロセス間通信におけるデータ処理機能>
次に、これまで説明を行ってきたハードウェア及びソフトウェア構成を踏まえ、本実施形態に係る画像形成装置100が有する「プロセス間通信におけるデータ処理機能」について、図6を用いて説明する。図6は、本発明の第1の実施形態に係る画像形成装置100内のデータ処理機能の機能構成の一例を示す図である。
<Data processing function in interprocess communication>
Next, based on the hardware and software configurations described so far, the “data processing function in inter-process communication” included in the image forming apparatus 100 according to the present embodiment will be described with reference to FIG. FIG. 6 is a diagram illustrating an example of a functional configuration of a data processing function in the image forming apparatus 100 according to the first embodiment of the present invention.

<<機能構成の概要>>
本実施形態に係る画像形成装置100は、主に、送信側からの要求に応じて処理を行う受信側の機能部71と、受信側に処理を要求する送信側の機能部72と、送信側の機能部71と受信側の機能部72との間のプロセス間通信を行うプロセス間通信部73とから構成される。
<< Overview of functional configuration >>
The image forming apparatus 100 according to the present embodiment mainly includes a reception-side functional unit 71 that performs processing in response to a request from the transmission side, a transmission-side functional unit 72 that requests processing from the reception side, and a transmission side. The inter-process communication unit 73 that performs inter-process communication between the functional unit 71 and the functional unit 72 on the receiving side.

また、上記各機能部は、図4において説明を行ったWS−MFPモジュール群20のソフトウェア部品が、画像形成装置100が有するコントローラ13に配置されたROM13aからRAM13b上に読み出され、CPU13cで実行されることで実現される機能である。   Further, in each of the functional units, the software components of the WS-MFP module group 20 described in FIG. 4 are read from the ROM 13a arranged in the controller 13 of the image forming apparatus 100 onto the RAM 13b and executed by the CPU 13c. It is a function realized by being done.

例えば、「外部機器に要求に応じてDFMモジュール22がWP−Printer21pやWS−Scanner21sなどから提供可能なサービスに関する情報を取得するとき」に行われる、DFMモジュール22が動作するプロセスと、WP−Printer21p又はWS−Scanner21sが動作するプロセスとのプロセス間通信では、送信側の機能部71がDMFモジュール22にあたり、受信側の機能部72がWS−Printer21p又はWS−Scanner21sにあたり、プロセス間通信部73がIMC51にあたる。このように、各ソフトウェア部品によって上記機能が実現されている。   For example, the process performed by the DFM module 22 performed when “when the DFM module 22 obtains information related to a service that can be provided from the WP-Printer 21p, WS-Scanner 21s, etc. in response to a request to an external device” and the WP-Printer 21p Alternatively, in the inter-process communication with the process in which the WS-Scanner 21s operates, the function unit 71 on the transmission side corresponds to the DMF module 22, the function unit 72 on the reception side corresponds to the WS-Printer 21p or WS-Scanner 21s, and the inter-process communication unit 73 corresponds to the IMC 51 It hits. In this way, the above functions are realized by each software component.

<<各機能部の概要>>
上記に挙げた主要な各機能部の概要について説明する。
<< Overview of each functional part >>
An outline of each of the main functional units listed above will be described.

受信側の機能部71は、初期化部71aと内容解釈部71bを有している。   The reception-side function unit 71 includes an initialization unit 71a and a content interpretation unit 71b.

初期化部71aは、受信側の機能部71が起動されたときの動作前の処理を行う。その中で、初期化部71aは、受信側の前処理として、要求メッセージにより要求される処理を特定し処理を実行するコールバック関数64の関数へのポインタを、受信側のプロセス間通信部73に設定する。すなわち、受信側の機能部71が有するコールバック関数64を、受信側のプロセス間通信部73に登録する。   The initialization unit 71a performs pre-operation processing when the reception-side functional unit 71 is activated. Among them, the initialization unit 71a specifies a pointer to a function of the callback function 64 for specifying the processing requested by the request message and executing the processing as the preprocessing on the receiving side, and the interprocess communication unit 73 on the receiving side. Set to. That is, the callback function 64 included in the receiving-side function unit 71 is registered in the receiving-side interprocess communication unit 73.

内容解釈部71bは、送信側の機能部72から送信された要求メッセージに応じて、画像形成装置100で実行可能な処理の中から、要求メッセージにより要求される処理を特定するという、受信した要求メッセージの内容に応じて、受信側の機能部71で行う処理を切り換えるディスパッチ機能を有している。内容解釈部71bは、初期化部71aにより前処理の段階で登録されるコールバック関数64が実行されることで実現する機能である。   The content interpreter 71b receives the request to identify the process requested by the request message from the processes executable by the image forming apparatus 100 in response to the request message transmitted from the function unit 72 on the transmission side. It has a dispatch function that switches processing performed by the function unit 71 on the receiving side according to the content of the message. The content interpretation unit 71b is a function realized by executing the callback function 64 registered in the preprocessing stage by the initialization unit 71a.

送信側の機能部72は、メッセージ設定部72mを有しており、メッセージ設定部72mは、受信側の機能部71に要求する処理内容に応じて、送信側の機能部72から送信する要求メッセージを設定する。メッセージ設定部72mは、プロセス間通信部73が提供するI/F関数61a〜dを用いて要求メッセージを設定する。   The function unit 72 on the transmission side includes a message setting unit 72m. The message setting unit 72m transmits a request message transmitted from the function unit 72 on the transmission side according to the processing content requested to the function unit 71 on the reception side. Set. The message setting unit 72m sets a request message using the I / F functions 61a to 61d provided by the inter-process communication unit 73.

プロセス間通信部73は、送信部74と、受信部75と、手続き登録部76と、登録手続き実行部77とを有している。   The inter-process communication unit 73 includes a transmission unit 74, a reception unit 75, a procedure registration unit 76, and a registration procedure execution unit 77.

送信部74は、受信側の機能部71が動作するプロセスに対して、メッセージ設定部72mからの設定に基づいて発行された要求メッセージを送信する。また、受信部75は、送信側の機能部72が有する送信部74により送信された要求メッセージを受信する。   The transmission unit 74 transmits a request message issued based on the setting from the message setting unit 72m to the process in which the function unit 71 on the reception side operates. The receiving unit 75 receives the request message transmitted by the transmitting unit 74 included in the function unit 72 on the transmitting side.

手続き登録部76は、受信側の機能部71が有する初期化部71aにより設定されたコールバック関数64の関数へのポインタを、所定の記憶領域に保持する(保持手段に対応する機能)。そのため、手続き登録部76は、受信側の機能部71が起動したときに、RAM13bの記憶領域の中から所定の記憶領域を確保しておく。また、登録手続き実行部77は、手続き登録部76により保持されているコールバック関数64の関数へのポインタに基づいて、要求メッセージにより要求される処理を特定し処理を実行するコールバック関数64に実行を指示する。その結果、処理の実行制御が、受信側のプロセス間通信部73から受信側の機能部71へ移行し、コールバック関数64によって、特定された処理が実行される。登録手続き実行部77は、受信側のプロセス間通信部73が有する呼び出し先関数が実行されることで実現する機能である。   The procedure registration unit 76 holds a pointer to a function of the callback function 64 set by the initialization unit 71a included in the receiving-side function unit 71 in a predetermined storage area (function corresponding to a holding unit). Therefore, the procedure registration unit 76 reserves a predetermined storage area from the storage area of the RAM 13b when the reception-side functional unit 71 is activated. Also, the registration procedure execution unit 77 specifies a process requested by the request message based on the pointer to the function of the callback function 64 held by the procedure registration unit 76, and sets the callback function 64 to execute the process. Instruct execution. As a result, the execution control of the process shifts from the inter-process communication unit 73 on the receiving side to the functional unit 71 on the receiving side, and the specified process is executed by the callback function 64. The registration procedure execution unit 77 is a function realized by executing a call destination function included in the inter-process communication unit 73 on the receiving side.

<<動作概要>>
次に、上記各機能部による本実施形態に係る「プロセス間通信におけるデータ処理機能」の動作について説明する。
<< Operation overview >>
Next, the operation of the “data processing function in inter-process communication” according to the present embodiment by each of the functional units will be described.

(1)要求メッセージ受信待ち受け(前処理):受信側
まず、受信側の機能部71は、動作するプロセスが起動されると、初期化部71aにより予め決められた初期化処理を行う。まず、初期化部71aは、IMC51が提供する関数registAPI()61dをコールし、要求メッセージにより要求される処理を特定し処理を実行するコールバック関数(関数callCB)64の関数へのポインタを、受信側のプロセス間通信部73に設定する(関数callCB64を登録する)。その結果、設定された関数へのポインタは、受信側のプロセス間通信部73が有する手続き登録部76により保持される。その後、初期化部61dは、IMC51が提供する関数GetMsg()61cをコールし、送信側からの要求メッセージの受信待ち受け状態へ移行する。
(1) Waiting for request message reception (pre-processing): receiving side First, when an operating process is started, the receiving-side functional unit 71 performs initialization processing predetermined by the initializing unit 71a. First, the initialization unit 71a calls a function registAPI () 61d provided by the IMC 51, specifies a process requested by a request message, and executes a pointer to a function of a callback function (function callCB) 64 that executes the process. It is set in the inter-process communication unit 73 on the receiving side (function callCB64 is registered). As a result, the pointer to the set function is held by the procedure registration unit 76 included in the interprocess communication unit 73 on the receiving side. Thereafter, the initialization unit 61d calls a function GetMsg () 61c provided by the IMC 51, and shifts to a reception waiting state for a request message from the transmission side.

(2)要求メッセージの設定・送信:送信側
送信側の機能部72は、メッセージ設定部72mにより要求メッセージの設定を行う。メッセージ設定部72mは、受信側の機能部71に要求する処理内容に応じて、IMC51が提供する関数PutMsg()61a又は関数SendReceive()61bをコールし、要求メッセージの設定を行う。その後に、送信側のプロセス間通信部73は、メッセージ設定部72mによる設定を基に発行された要求メッセージを、送信側のプロセス間通信部73が有する送信部74に渡し、受信側の機能部71へ送信する。送信部74は、関数PutMsg()61a又は関数SendReceive()61bの内部でコールされる関数Send()62a又は関数RequestResponse()62bにより実行される。
(2) Setting / transmission of request message: transmission side The function unit 72 on the transmission side sets a request message by the message setting unit 72m. The message setting unit 72m calls the function PutMsg () 61a or the function SendReceive () 61b provided by the IMC 51 in accordance with the processing content requested to the function unit 71 on the receiving side, and sets the request message. Thereafter, the inter-process communication unit 73 on the transmission side passes the request message issued based on the setting by the message setting unit 72m to the transmission unit 74 included in the inter-process communication unit 73 on the transmission side, and the functional unit on the reception side To 71. The transmission unit 74 is executed by a function Send () 62a or a function RequestResponse () 62b called inside the function PutMsg () 61a or the function SendReceive () 61b.

(3)要求メッセージの受信・内容解釈:受信側
受信側のプロセス間通信部73は、受信部75により要求メッセージを受信する。受信部75は、関数GetMsg()61cの内部でコールされる関数Receive()62c及び関数ProcessReceivedMsg()62dにより実行される。
(3) Reception and content interpretation of request message: receiving side The inter-process communication unit 73 on the receiving side receives the request message by the receiving unit 75. The receiving unit 75 is executed by a function Receive () 62c and a function ProcessReceivedMsg () 62d called inside the function GetMsg () 61c.

(4)要求メッセージの内容解釈機能を起動:受信側
受信側のプロセス間通信部73は、要求メッセージを受信すると、登録手続き実行部77によって、手続き登録部76により保持している関数へのポインタ(関数callCB()64へのポインタ)に基づいてコールバック関数64を実行する(関数callCB()64をコールバックする)。このとき、受信した要求メッセージは、呼び出し先関数を介してコールバック関数64の引数として渡される。このようにして、受信側の機能部71が有する内容解釈部71bを起動する。
(4) Activating the request message content interpretation function: receiving side When receiving the request message, the inter-process communication unit 73 on the receiving side uses the registration procedure execution unit 77 to point to a function held by the procedure registration unit 76 Based on (a pointer to the function callCB () 64), the callback function 64 is executed (the function callCB () 64 is called back). At this time, the received request message is passed as an argument of the callback function 64 via the callee function. In this way, the content interpretation unit 71b of the reception-side functional unit 71 is activated.

(5)要求される処理の実行:受信側
受信側の機能部71は、内容解釈部71bにより、要求メッセージに応じて、当該画像形成装置で実行可能な処理の中から、要求メッセージにより要求される処理を特定し、特定された処理を受信側の機能部71で実行する。内容解釈部71bは、受信側のプロセス間通信部73から渡された要求メッセージの所定の情報に基づいて、要求メッセージにより要求される処理を特定する。
(5) Execution of requested processing: receiving side The function unit 71 on the receiving side is requested by the content interpretation unit 71b according to a request message from among the processes that can be executed by the image forming apparatus according to the request message. And the specified process is executed by the function unit 71 on the receiving side. The content interpretation unit 71b identifies the processing requested by the request message based on the predetermined information of the request message passed from the inter-process communication unit 73 on the receiving side.

(6)応答メッセージの送信:受信側
受信側の機能部71は、送信側の機能部72に要求に応じた応答メッセージを送信する場合に、内容解釈部71bにより特定され実行された処理結果を、受信側のプロセス間通信部73が有する送信部74に渡し、送信側の機能部72へ送信する。送信部74は、関数PutMsg()61aの内部でコールされる関数Send()62aにより実行される。
(6) Transmission of response message: reception side When the reception-side functional unit 71 transmits a response message in response to a request to the transmission-side functional unit 72, the processing result specified and executed by the content interpretation unit 71b Then, the data is transferred to the transmission unit 74 included in the inter-process communication unit 73 on the reception side and transmitted to the functional unit 72 on the transmission side. The transmission unit 74 is executed by a function Send () 62a called inside the function PutMsg () 61a.

<プロセス間通信におけるデータ処理機能の詳細>
本実施形態に係る「プロセス間通信におけるデータ処理機能」において、上記動作の中で行われている(1)〜(6)までの処理を、より詳しく説明する。
<Details of data processing function in inter-process communication>
In the “data processing function in inter-process communication” according to the present embodiment, the processes (1) to (6) performed in the above operation will be described in more detail.

<<内容解釈処理(ディスパッチャ)の事前登録>>
受信側の機能部17が有する初期化部71aは、IMC51が提供する関数registAPI()61dをコールし、要求メッセージにより要求される処理を特定し処理を実行する内容解釈部71bの機能を実現するコールバック関数64の関数へのポインタを、受信側のプロセス間通信部73に設定し手続き登録部76に保持する(コールバック関数64を登録する)。すなわち、初期化部71aは、受信側の機能部17が有する内容解釈部71bの機能を実現する関数callCB()64へのポインタを、受信側のプロセス間通信部73が有する呼び出し先関数のポインタに代入することで設定する。但し、この方法以外にもコールバック関数64の関数へのポインタを呼び出し先関数の引数を介して渡す方法などがあり、本実施形態は、この方法に限定されるものではない。
<< Pre-registration of content interpretation processing (dispatcher) >>
The initialization unit 71a included in the function unit 17 on the reception side calls the function registAPI () 61d provided by the IMC 51, identifies the processing requested by the request message, and realizes the function of the content interpretation unit 71b that executes the processing. A pointer to the function of the callback function 64 is set in the inter-process communication unit 73 on the receiving side and held in the procedure registration unit 76 (registers the callback function 64). That is, the initialization unit 71a uses a pointer to the function callCB () 64 that realizes the function of the content interpretation unit 71b included in the reception-side function unit 17, and a pointer to a call destination function included in the inter-process communication unit 73 on the reception side. Set by substituting for. However, in addition to this method, there is a method of passing a pointer to the function of the callback function 64 via an argument of the callee function, and the present embodiment is not limited to this method.

よって、初期化部71aが行う上記処理は、コールバック関数64として内容解釈部71bの機能を実現するプログラムを設定することから、受信側の機能部71が起動したときなどに、受信側が送信側からの要求メッセージを受信する前の段階で行っておく必要がある。   Therefore, the above processing performed by the initialization unit 71a sets a program that realizes the function of the content interpretation unit 71b as the callback function 64, so that when the reception-side functional unit 71 is activated, the reception side becomes the transmission side. This must be done before the request message is received.

これによって、本実施形態に係るデータ処理機能では、呼び出し先関数からコールバック関数64を実行させることで、呼び出し先関数からコールバック関数64に実行制御を移すことができる。すなわち、送受信側の処理内容や通信目的などの取り決めに依存する要求メッセージの内容解釈機能をプロセス間通信部73の機能から分離して処理することができ(プロセス間通信部73から受信側の機能部71へ実行制御を移すことができ)、プロセス間通信を行う機能部の独立性が高くなる。   As a result, in the data processing function according to the present embodiment, execution control can be transferred from the callee function to the callback function 64 by causing the callback function 64 to be executed from the callee function. That is, the content interpretation function of the request message depending on the processing contents on the transmission / reception side and the communication purpose can be processed separately from the function of the inter-process communication unit 73 (from the inter-process communication unit 73 to the function on the reception side). The execution control can be transferred to the unit 71), and the independence of the functional unit that performs inter-process communication is increased.

<<要求メッセージの設定>>
送信側の機能部72が有するメッセージ設定部72mは、受信側の機能部71に要求する処理内容に応じて、IMC51が提供する関数PutMsg()61a又は関数SendReceive()61bをコールし、関数の引数を介して要求メッセージの設定を行う。このとき、関数PutMsg()61a又は関数SendReceive()61bには、以下に説明を行う要求メッセージのデータ仕様に基づいて関数の引数が設定される。
<< Request message settings >>
The message setting unit 72m included in the function unit 72 on the transmission side calls the function PutMsg () 61a or the function SendReceive () 61b provided by the IMC 51 according to the processing content requested to the function unit 71 on the reception side. Set request message via argument. At this time, function arguments are set in the function PutMsg () 61a or the function SendReceive () 61b based on the data specification of the request message described below.

図7は、本発明の第1の実施形態に係る要求メッセージ81のデータ仕様の一例を示す図である。図7には、本実施形態に係るWS−Printer21pが送信側の機能部72である場合の例が示されている。   FIG. 7 is a diagram showing an example of the data specification of the request message 81 according to the first embodiment of the present invention. FIG. 7 shows an example in which the WS-Printer 21p according to the present embodiment is the function unit 72 on the transmission side.

本実施形態に係る要求メッセージ81のデータ仕様は、図7に示すように、要求メッセージ81により実行される処理を示す「機能名」と、処理を行うときに用いるパラメータ値の数を示す「データ個数」と、処理を行うときに用いるパラメータ値である「データ」とが、「プロセス間通信の目的」ごとに構成される。   As shown in FIG. 7, the data specification of the request message 81 according to the present embodiment includes a “function name” indicating processing executed by the request message 81 and “data” indicating the number of parameter values used when the processing is performed. The “number” and “data”, which is a parameter value used when processing, are configured for each “inter-process communication purpose”.

上記データ仕様は、各プロセス間でやり取りしたい「プロセス間通信の目的」と「目的ごとの受信側の処理」とを基に、予め送信側と受信側との間で決めておき、上記データ仕様に従って所定の形式によりデータ化しておく。   The above data specifications are determined in advance between the sending side and the receiving side based on the “purpose of interprocess communication” and “processing on the receiving side for each purpose” to be exchanged between the processes. According to the above, it is converted into data in a predetermined format.

送信側の機能部72が有するメッセージ設定部72mは、送信側の機能部72を実現するプログラムコードの中で、関数の引数に上記データ仕様の「機能名」、「データ数」、及び「データ」を設定したIMCI/Fレイヤ61が提供する関数PutMsg()61a又は関数SendReceive()61bをコールし、発行される要求メッセージ81の設定を行う。   The message setting unit 72m included in the function unit 72 on the transmission side includes “function name”, “number of data”, and “data” of the above data specifications as function arguments in the program code for realizing the function unit 72 on the transmission side. The function PutMsg () 61 a or the function SendReceive () 61 b provided by the IMCI / F layer 61 for which “is set” is called, and the issued request message 81 is set.

例えば、送信側の機能部72が処理の中で、WS−Printer21pの処理終了を受信側の機能部71に通知した場合には、メッセージ設定部72mによって、引数に「機能名=DCP2DFM_Unregister」、「データ数=1」、及び「データ=(InstanceIDの値)」を設定した関数PutMsg()61a又は関数SendReceive()61bをコールすることで、WS−Printer21p処理終了通知メッセージが設定される。その結果、送信側のプロセス間通信部73が有する送信部74が、発行された要求メッセージ81を受信側の機能部71へ送信する。   For example, when the function unit 72 on the transmission side notifies the reception-side function unit 71 of the completion of the processing of the WS-Printer 21p in the process, the message setting unit 72m sets “function name = DCP2DFM_Unregister”, “ By calling the function PutMsg () 61a or the function SendReceive () 61b in which “number of data = 1” and “data = (value of InstanceID)” are called, a WS-Printer 21p processing end notification message is set. As a result, the transmission unit 74 included in the inter-process communication unit 73 on the transmission side transmits the issued request message 81 to the functional unit 71 on the reception side.

このように、本実施形態に係るデータ処理機能では、IMCI/Fレイヤ61が提供するメッセージ送信を行う関数PutMsg()61a又は関数SendReceive()61bが、プロセス間通信の目的に対応する機能を決定するものではない。   As described above, in the data processing function according to the present embodiment, the function PutMsg () 61 a or the function SendReceive () 61 b that performs message transmission provided by the IMCI / F layer 61 determines the function corresponding to the purpose of the inter-process communication. Not what you want.

これによって、本実施形態に係るデータ処理機能では、送受信側の処理内容や通信目的などの取り決めに依存する要求メッセージ設定機能を、プロセス間通信部73の機能から分離して処理することができ、プロセス間通信を行う機能部の独立性が高くなる。   Thereby, in the data processing function according to the present embodiment, the request message setting function depending on the processing contents on the transmission / reception side and the communication purpose can be processed separately from the function of the inter-process communication unit 73, Independence of functional units that perform inter-process communication is increased.

<<要求メッセージの内容解釈(ディスパッチ)>>
受信側の機能部71が有する内容解釈部72bは、受信側のプロセス間通信部73が有する登録手続き実行部77によって実行を指示される。
<< Request message content interpretation (dispatch) >>
The content interpretation unit 72b included in the reception-side functional unit 71 is instructed to be executed by a registration procedure execution unit 77 included in the inter-process communication unit 73 on the reception side.

受信側のプロセス間通信部73の受信部75が要求メッセージ81を受信すると、登録手続き実行部77によって、手続き登録部76により保持している関数callCB()64へのポインタに基づいて、要求メッセージ81により要求される処理を特定する関数callCB()64をコールバックする。このとき、受信した要求メッセージ81は、関数callCB()64の引数として渡される。このようにして、受信側の機能部71が有する内容解釈部71bを起動する。   When the reception unit 75 of the inter-process communication unit 73 on the receiving side receives the request message 81, the registration procedure execution unit 77 uses the request message based on the pointer to the function callCB () 64 held by the procedure registration unit 76. The function callCB () 64 specifying the processing requested by 81 is called back. At this time, the received request message 81 is passed as an argument of the function callCB () 64. In this way, the content interpretation unit 71b of the reception-side functional unit 71 is activated.

内容解釈部72bは、引数を介して受け取った要求メッセージ81のデータを解釈し、データ内の「機能名」、「データ個数」、及び「データ」を解釈する。その結果、内容解釈部72bは、解釈して得た「機能名」に基づいて、画像形成装置100で実行可能な処理の中から、要求メッセージ81により要求される処理を特定する。すなわち、受信した要求メッセージ81の内容に応じて、受信側の機能部71で行う処理をディスパッチする。   The content interpretation unit 72b interprets the data of the request message 81 received via the argument, and interprets “function name”, “number of data”, and “data” in the data. As a result, the content interpretation unit 72b specifies the process requested by the request message 81 from the processes that can be executed by the image forming apparatus 100 based on the “function name” obtained by the interpretation. That is, according to the content of the received request message 81, a process performed by the function unit 71 on the receiving side is dispatched.

内容解釈部72bの機能を実現する関数callCB()64は、受信側の機能部71が有する関数であり、送受信側の処理内容や通信目的などの取り決めに従って設計されているため、図7において説明を行った要求メッセージ81のデータ仕様から、引数を介して受け取った要求メッセージ81の「機能名」に基づいて、予め処理手続きがプログラムコード化された「機能名」に対応する処理が特定される。   The function callCB () 64 that realizes the function of the content interpretation unit 72b is a function of the functional unit 71 on the reception side, and is designed according to the processing content on the transmission / reception side, the communication purpose, and the like. Based on the “function name” of the request message 81 received via the argument, the process corresponding to the “function name” in which the processing procedure is coded in advance is specified from the data specification of the request message 81 that has been executed. .

<<要求処理の実行>>
受信側の機能部71は、要求メッセージ81を解釈して得た「データ」を基に、内容解釈部71bにより特定された処理を実行する。このとき、受信側の機能部71は、解釈して得た「データ個数」に基づいて、受信した要求メッセージ81のデータが正しいデータであるかを検証する(データ検証手段に対応する機能)。より具体的には、解釈して得た「データ個数」と、「データ」として受信したデータ数とが一致しているか否かを判定する。その結果、一致している場合には、要求処理を実行する。また、一致していない場合には、要求メッセージ81のデータが誤っていると判断し、要求処理を実行しない。
<< Execution of request processing >>
The function unit 71 on the reception side executes the process specified by the content interpretation unit 71b based on “data” obtained by interpreting the request message 81. At this time, the functional unit 71 on the receiving side verifies whether the data of the received request message 81 is correct data based on the “number of data” obtained by interpretation (function corresponding to the data verification unit). More specifically, it is determined whether or not the “data number” obtained by interpretation matches the number of data received as “data”. As a result, if they match, the request process is executed. If they do not match, it is determined that the data of the request message 81 is incorrect, and the request process is not executed.

これによって、本実施形態に係るデータ処理機能では、プロセス間通信を行うときの送受信側の処理内容や通信目的などの取り決めに依存する処理が、受信側の機能部71のプログラム群(コールバック関数64を含む)に統合され、プロセス間通信部73に、送受信側の取り決めに依存するプログラムコードやデータが含まれないため、画像形成装置100のデータ処理において、プロセス間通信部73の独立性が高く、送受信側の機能部71及び72を容易に拡張することができる。言い換えれば、例えば、WS−Printer21pやWS−Scanner21sなどのような機能拡張の頻度が比較的高い機能に対しても、柔軟に対応することができ、容易に機能実装が行うことができる。   As a result, in the data processing function according to the present embodiment, the processing depending on the processing contents on the transmission / reception side and the communication purpose when performing the inter-process communication, the program group (callback function) of the functional unit 71 on the reception side 64), and the interprocess communication unit 73 does not include program codes or data that depend on the agreement on the transmission / reception side, so that the interprocess communication unit 73 is independent in the data processing of the image forming apparatus 100. The function units 71 and 72 on the transmission / reception side can be easily expanded. In other words, for example, it is possible to flexibly cope with a function having a relatively high frequency of function expansion, such as WS-Printer 21p and WS-Scanner 21s, and the function can be easily implemented.

<<応答メッセージの送信>>
受信側の機能部71は、送信側の機能部72に要求に応じた応答メッセージを送信するか否かを判断し、送信側の機能部72へ応答メッセージを送信する。このときに行われる応答メッセージの送信判定は、要求処理の実行結果があるか否かによって判定する。より具体的には、内容解釈部72bの機能を実現するコールバック関数64が、登録手続き実行部77によって実行され、コールバック関数64からの戻り値(return値)があるか否か(値が"NULL"か否か)を、受信側のプロセス間通信部73により判定する。その結果、戻り値がある場合には、その値を基に送信部74により応答メッセージを、受信側の機能部71へ送信する。また、戻り値がない場合(値が"NULL"の場合)には、応答する必要がないと判断する。
<< Send response message >>
The function unit 71 on the reception side determines whether or not to send a response message in response to the request to the function unit 72 on the transmission side, and transmits the response message to the function unit 72 on the transmission side. The response message transmission determination performed at this time is determined by whether or not there is an execution result of the request processing. More specifically, the callback function 64 that realizes the function of the content interpretation unit 72b is executed by the registration procedure execution unit 77, and whether or not there is a return value (return value) from the callback function 64 (the value is Whether or not “NULL” is determined by the inter-process communication unit 73 on the receiving side. As a result, if there is a return value, the transmission unit 74 transmits a response message to the function unit 71 on the reception side based on the return value. When there is no return value (when the value is “NULL”), it is determined that there is no need to respond.

これによって、本実施形態に係るデータ処理機能では、要求に対して応答を必要としない要求の要求メッセージ81の送信と、応答を必要とする要求メッセージ81の送信との両方に対応することができる。   As a result, the data processing function according to the present embodiment can cope with both the transmission of the request message 81 that does not require a response to the request and the transmission of the request message 81 that requires a response. .

本実施形態に係る画像形成装置100は、上記に説明を行った各機能部による構成により、要求メッセージ81に応じて、画像形成装置100で実行可能な処理の中から、要求メッセージ81により要求される処理を特定する機能を実現するコールバック関数64を、予め受信側のプロセス間通信部73に登録しておき、受信側のプロセス間通信部73により要求メッセージ81を受信すると、登録されているコールバック関数64をコールして実行する。   The image forming apparatus 100 according to the present embodiment is requested by the request message 81 from among the processes that can be executed by the image forming apparatus 100 according to the request message 81 by the configuration of each functional unit described above. The callback function 64 that realizes the function for specifying the processing to be processed is registered in advance in the inter-process communication unit 73 on the receiving side, and is registered when the request message 81 is received by the inter-process communication unit 73 on the receiving side. The callback function 64 is called and executed.

その結果、画像形成装置100は、プロセス間通信を行うときの送受信側の処理内容や通信目的などの取り決めに依存する処理が、受信側の機能部71のプログラム群(コールバック関数64を含む)に統合され、プロセス間通信部73に、送受信側の取り決めに依存するプログラムコードやデータが含まれることがないため、画像形成装置100のデータ処理において、プロセス間通信部73の独立性が高く、送受信側の機能を容易に拡張することができる「画像形成装置100内のデータ処理機能」を実現している。   As a result, in the image forming apparatus 100, processing that depends on an agreement such as processing contents on the transmission / reception side and communication purpose when performing inter-process communication is performed by a program group (including the callback function 64) of the functional unit 71 on the reception side. And the inter-process communication unit 73 does not include program code or data depending on the agreement on the transmission / reception side. Therefore, the inter-process communication unit 73 is highly independent in the data processing of the image forming apparatus 100. A “data processing function in the image forming apparatus 100” that can easily expand the function on the transmission / reception side is realized.

<処理手順>
上記に説明を行った本実施形態に係る「データ処理機能」の具体的な処理手順について図8〜11を用いて説明する。図8及び図9では、プロセス間通信を介した送信側と受信側の基本的なデータ処理手順の例を示している。
<Processing procedure>
A specific processing procedure of the “data processing function” according to the present embodiment described above will be described with reference to FIGS. 8 and 9 show examples of basic data processing procedures on the transmission side and the reception side via inter-process communication.

<<基本処理手順>>
図8は、本発明の第1の実施形態に係る画像形成装置100内のデータ処理機能の基本処理手順の一例(その1)を示すシーケンス図である。図8では、送信側の機能部72からの要求に対して受信側の機能部71が応答しない場合の処理手順について説明する。
<< Basic processing procedure >>
FIG. 8 is a sequence diagram showing an example (part 1) of the basic processing procedure of the data processing function in the image forming apparatus 100 according to the first embodiment of the present invention. FIG. 8 illustrates a processing procedure when the reception-side functional unit 71 does not respond to a request from the transmission-side functional unit 72.

受信側の機能部71は、前処理として、初期化部71aにより、プロセス間通信部73の関数registAPI()61dをコールし(ステップS101)、要求メッセージ81により要求される処理を特定するコールバック関数64を、受信側のプロセス間通信部73が有する手続き登録部76に登録する(ステップS102)。   The function unit 71 on the reception side calls the function registAPI () 61d of the inter-process communication unit 73 by the initialization unit 71a as preprocessing (step S101), and specifies a process requested by the request message 81. The function 64 is registered in the procedure registration unit 76 included in the interprocess communication unit 73 on the receiving side (step S102).

受信側のプロセス間通信部73は、コールバック関数64が登録されると、登録が完了した旨を受信側の機能部71に返す(ステップS103)。   When the callback function 64 is registered, the inter-process communication unit 73 on the reception side returns to the reception-side functional unit 71 that the registration is completed (step S103).

次で、受信側の機能部71は、初期化部71aにより、受信側のプロセス間通信部73の関数GetMsg()61cをコールし(ステップS104)、受信側のプロセス間通信部73に、要求メッセージ81の受信待ち受けの開始を指示する。   Next, the function unit 71 on the receiving side calls the function GetMsg () 61c of the inter-process communication unit 73 on the receiving side by the initialization unit 71a (step S104), and sends a request to the inter-process communication unit 73 on the receiving side. The start of reception waiting for the message 81 is instructed.

上記の処理手順によって、受信側の機能部71は、送信側からの要求メッセージ81を受信可能な状態となる。   By the above processing procedure, the functional unit 71 on the receiving side becomes ready to receive the request message 81 from the transmitting side.

送信側の機能部72は、メッセージ設定部72aにより、要求メッセージ81のデータ仕様に基づいて、発行する要求メッセージ81に応じた「機能名」、「データ個数」、及び「データ」を、送信側のプロセス間通信部73の関数PutMsg()61aの引数に設定した後、関数PutMsg61aをコールする(ステップS201)。   Based on the data specification of the request message 81, the function unit 72 on the transmission side sends the “function name”, “number of data”, and “data” corresponding to the issued request message 81 to the transmission side based on the data specification of the request message 81. Is set as an argument of the function PutMsg () 61a of the inter-process communication unit 73, and then the function PutMsg 61a is called (step S201).

送信側のプロセス間通信部73は、送信部74により、引数の値に基づいて発行された要求メッセージ81を受信側のプロセス間通信部73へ送信し(ステップS202)、送信が完了した旨を送信側の機能部72に返す(ステップS203)。   The inter-process communication unit 73 on the transmission side transmits a request message 81 issued based on the value of the argument to the inter-process communication unit 73 on the reception side by the transmission unit 74 (step S202), indicating that the transmission is complete. It returns to the function unit 72 on the transmission side (step S203).

受信側のプロセス間通信部73は、受信部75により、送信側から送信された要求メッセージ81を受信し、手続き登録部76に登録されたコールバック関数64を、受信した要求メッセージ81を引数に、登録手続き実行部77(呼び出し先関数)によりコールバックし、受信側の機能部71に実行制御を移行する(ステップS204)。   The inter-process communication unit 73 on the reception side receives the request message 81 transmitted from the transmission side by the reception unit 75, and uses the callback function 64 registered in the procedure registration unit 76 as an argument. Then, the registration procedure execution unit 77 (call destination function) calls back, and the execution control is transferred to the function unit 71 on the reception side (step S204).

実行制御が移行した受信側の機能部71では、コールバック関数64がコールされたことで、内容解釈部71bが機能し、要求メッセージ81を解釈し、解釈して得た「機能名」から、要求に対応する処理を特定し実行する(ステップS205)。   In the receiving-side function unit 71 to which execution control has been transferred, the content interpreting unit 71b functions as a result of the callback function 64 being called, and interprets and interprets the request message 81 from the “function name” obtained by interpretation. A process corresponding to the request is specified and executed (step S205).

内容解釈部71bは、対応処理が終了すると、処理が終了した旨を受信側のプロセス間通信部73へ返す(ステップS206)。   When the corresponding process is completed, the content interpretation unit 71b returns a message indicating that the process has been completed to the inter-process communication unit 73 on the receiving side (step S206).

図9は、本発明の第1の実施形態に係る画像形成装置100内のデータ処理機能の基本処理手順の一例(その2)を示すシーケンス図である。図9では、送信側の機能部72からの要求に対して受信側の機能部71が応答する場合の処理手順について説明する。   FIG. 9 is a sequence diagram illustrating an example (part 2) of the basic processing procedure of the data processing function in the image forming apparatus 100 according to the first embodiment of the present invention. FIG. 9 illustrates a processing procedure when the reception-side functional unit 71 responds to a request from the transmission-side functional unit 72.

図9と図8で異なる処理手順は、送信側の機能部72が要求メッセージ81を受信側の機能部71へ送信するステップS301以降の処理である。よって、図9に示すステップS301より前の処理手順については、図8をもって説明を省略する。   The processing procedure different between FIG. 9 and FIG. 8 is processing after step S301 in which the transmission-side functional unit 72 transmits the request message 81 to the reception-side functional unit 71. Therefore, the processing procedure before step S301 shown in FIG. 9 is not described with reference to FIG.

送信側の機能部72は、メッセージ設定部72aにより、要求メッセージ81のデータ仕様に基づいて、発行する要求メッセージ81に応じた「機能名」、「データ個数」、及び「データ」を、送信側のプロセス間通信部73の関数SendReceive()61bの引数に設定した後、関数SendReceive()61bをコールする(ステップS301)。   Based on the data specification of the request message 81, the function unit 72 on the transmission side sends the “function name”, “number of data”, and “data” corresponding to the issued request message 81 to the transmission side based on the data specification of the request message 81. Is set as an argument of the function SendReceive () 61b of the inter-process communication unit 73, and then the function SendReceive () 61b is called (step S301).

送信側のプロセス間通信部73は、送信部74により、引数の値に基づいて発行された要求メッセージ81を受信側のプロセス間通信部73へ送信する(ステップS302)。   The inter-process communication unit 73 on the transmission side transmits the request message 81 issued based on the argument value by the transmission unit 74 to the inter-process communication unit 73 on the reception side (step S302).

受信側のプロセス間通信部73は、受信部75により、送信側から送信された要求メッセージ81を受信し、手続き登録部76に登録されたコールバック関数64を、受信した要求メッセージ81を引数に、登録手続き実行部77によりコールバックし、受信側の機能部71に実行制御を移行する(ステップS303)。   The inter-process communication unit 73 on the reception side receives the request message 81 transmitted from the transmission side by the reception unit 75, and uses the callback function 64 registered in the procedure registration unit 76 as an argument. Then, the registration procedure execution unit 77 calls back to shift the execution control to the function unit 71 on the receiving side (step S303).

実行制御が移行した受信側の機能部71では、コールバック関数64がコールされたことで、内容解釈部71bが機能し、要求メッセージ81を解釈し、解釈して得た「機能名」から、要求に対応する処理を特定し実行する(ステップS304)。   In the receiving-side function unit 71 to which execution control has been transferred, the content interpreting unit 71b functions as a result of the callback function 64 being called, and interprets and interprets the request message 81 from the “function name” obtained by interpretation. A process corresponding to the request is specified and executed (step S304).

内容解釈部71bは、対応処理が終了すると、コールバック関数64の戻り値を受信側のプロセス間通信部73へ返す(ステップS305)。   When the response processing is completed, the content interpretation unit 71b returns the return value of the callback function 64 to the interprocess communication unit 73 on the receiving side (step S305).

受信側のプロセス間通信部73は、処理結果である戻り値を基に応答メッセージの有無を判定し(ステップS306)、判定結果から応答が必要と判断された場合に、送信部64により処理結果を基に発行された応答メッセージを送信側の機能部71へ送信する(ステップS307)。   The inter-process communication unit 73 on the receiving side determines the presence or absence of a response message based on the return value that is the processing result (step S306), and if the response is determined to be necessary from the determination result, the transmission unit 64 performs the processing result. The response message issued based on the above is transmitted to the function unit 71 on the transmission side (step S307).

送信側のプロセス間通信部73は、受信部75により受信した応答メッセージを、受信側の機能部71へ転送する(ステップS308)。   The inter-process communication unit 73 on the transmission side transfers the response message received by the reception unit 75 to the functional unit 71 on the reception side (step S308).

このように、本実施形態に係るデータ処理プログラムは、本実施形態に係る画像形成装置100において、予め登録しておいた、要求メッセージ81に応じて、画像形成装置100で実行可能な処理の中から、要求メッセージ81により要求される処理を特定し処理を実行するコールバック関数64を、受信側のプロセス間通信部73により要求メッセージ81を受信したときに実行するように機能させることができる。   As described above, the data processing program according to the present embodiment is a process that can be executed by the image forming apparatus 100 according to the request message 81 registered in advance in the image forming apparatus 100 according to the present embodiment. Therefore, the callback function 64 for specifying the processing requested by the request message 81 and executing the processing can be functioned to be executed when the request message 81 is received by the inter-process communication unit 73 on the receiving side.

<<WS−MFPモジュール群20での処理手順>>
図10及び図11では、プロセス間通信を介したDFMモジュール22とWS−Printer21pとの間のデータ処理手順の例が示されている。
<< Processing Procedure in WS-MFP Module Group 20 >>
10 and 11 show an example of a data processing procedure between the DFM module 22 and the WS-Printer 21p via interprocess communication.

図10は、本発明の第1の実施形態に係るWS−MFPモジュール群20のデータ処理機能の処理手順の一例(その1)を示すシーケンス図である。図10では、送信側のWS−Printer21pからの要求に対して受信側のDFMモジュール22が応答しない場合の処理手順について説明する。   FIG. 10 is a sequence diagram showing an example (part 1) of the processing procedure of the data processing function of the WS-MFP module group 20 according to the first embodiment of the present invention. FIG. 10 illustrates a processing procedure when the DFM module 22 on the receiving side does not respond to a request from the WS-Printer 21p on the transmitting side.

受信側のDFMモジュール22は、前処理として、初期化部71aにより、プロセス間通信部73の関数registAPI()61dをコールし(ステップS401)、要求メッセージ81により要求される処理を特定するコールバック関数64を、受信側のIMC51が有する手続き登録部76に登録する(ステップS402)。   As a pre-process, the DFM module 22 on the receiving side calls the function registAPI () 61d of the inter-process communication unit 73 by the initialization unit 71a (step S401), and specifies the processing requested by the request message 81. The function 64 is registered in the procedure registration unit 76 of the receiving side IMC 51 (step S402).

受信側のIMC51は、コールバック関数64が登録されると、登録が完了した旨を受信側の機能部71に返す(ステップS403)。   When the callback function 64 is registered, the receiving-side IMC 51 returns to the receiving-side functional unit 71 that the registration has been completed (step S403).

次で、受信側のDFMモジュール22は、初期化部71aにより、受信側のIMC51の関数GetMsg()61cをコールし(ステップS404)、受信側のIMC51に、要求メッセージ81の受信待ち受けの開始を指示する。   Next, the DFM module 22 on the receiving side calls the function GetMsg () 61c of the IMC 51 on the receiving side by the initialization unit 71a (step S404), and starts the reception waiting for the request message 81 to the IMC 51 on the receiving side. Instruct.

上記の処理手順によって、受信側のDFMモジュール22は、送信側からの要求メッセージ81を受信可能な状態となる。   With the above processing procedure, the DFM module 22 on the receiving side becomes ready to receive the request message 81 from the transmitting side.

送信側のWS−Printer21pは、メッセージ設定部72aにより、要求メッセージ81のデータ仕様に基づいて、発行する「DFMモジュール22への提供サービス登録」要求メッセージに応じた「機能名=DCP2DFM_Register」、「データ個数=8」、及び「データ=(InstanceID)、(EPR)・・・(Device Category)」を、プロセス間通信部73の関数PutMsg()61aの引数に設定した後、関数PutMsg61aをコールする(ステップS501)。   The WS-Printer 21p on the transmitting side uses the message setting unit 72a based on the data specification of the request message 81 to issue “function name = DCP2DFM_Register”, “data” corresponding to the “provided service registration to DFM module 22” request message. After setting “number = 8” and “data = (InstanceID), (EPR)... (Device Category)” as arguments of the function PutMsg () 61 a of the inter-process communication unit 73, the function PutMsg 61 a is called ( Step S501).

送信側のIMC51は、送信部74により、引数の値に基づいて発行された要求メッセージ81を受信側のIMC51へ送信し(ステップS502)、送信が完了した旨を送信側の機能部72に返す(ステップS503)。   The transmitting-side IMC 51 transmits the request message 81 issued based on the argument value to the receiving-side IMC 51 by the transmitting unit 74 (step S502), and returns to the transmitting-side functional unit 72 that the transmission is completed. (Step S503).

受信側のIMC51は、受信部75により、送信側から送信された要求メッセージ81を受信し、手続き登録部76に登録されたコールバック関数64を、受信した要求メッセージ81を引数に、登録手続き実行部77によりコールバックし、受信側の機能部71に実行制御を移行する(ステップS504)。   The IMC 51 on the receiving side receives the request message 81 transmitted from the transmitting side by the receiving unit 75, executes the registration procedure using the callback function 64 registered in the procedure registration unit 76 and the received request message 81 as an argument. Call back is performed by the unit 77, and execution control is transferred to the function unit 71 on the receiving side (step S504).

実行制御が移行した受信側の機能部71では、コールバック関数64がコールされたことで、内容解釈部71bが機能し、要求メッセージ81を解釈し、解釈して得た「機能名」から、「DFMモジュール22への提供サービス登録」要求に対応する処理を特定(メッセージをディスパッチ処理)する(ステップS505)。次いで、特定した(ディスパッチした)DCP登録処理を実行する(ステップS506)。   In the receiving-side function unit 71 to which execution control has been transferred, the content interpreting unit 71b functions as a result of the callback function 64 being called, and interprets and interprets the request message 81 from the “function name” obtained by interpretation. A process corresponding to the “register service provided to DFM module 22” request is specified (message dispatch process) (step S505). Next, the specified (dispatched) DCP registration process is executed (step S506).

受信側のDFMモジュール22は、内容解釈部71bにより対応処理が終了すると、クライアント端末などの外部機器に対して、自動検知コマンド「Hello」をUDPによりマルチキャストし(ステップS507)、更に、処理が終了した旨を受信側のIMC51へ返す(ステップS508)。   When the content interpretation unit 71b finishes the corresponding process, the receiving-side DFM module 22 multicasts the automatic detection command “Hello” to the external device such as the client terminal by UDP (step S507), and the process is completed. A message to the effect is returned to the receiving side IMC 51 (step S508).

図11は、本発明の第1の実施形態に係るWS−MFPモジュール群20のデータ処理機能の処理手順の一例(その2)を示すシーケンス図である。図11では、送信側のWS−Printer21pからの要求に対して受信側のDFMモジュール22が応答する場合の処理手順について説明する。   FIG. 11 is a sequence diagram showing an example (part 2) of the processing procedure of the data processing function of the WS-MFP module group 20 according to the first embodiment of the present invention. FIG. 11 illustrates a processing procedure when the DFM module 22 on the receiving side responds to a request from the WS-Printer 21p on the transmitting side.

図9と図8で異なる処理手順は、送信側の機能部72が要求メッセージ81を受信側の機能部71へ送信するステップS301以降の処理である。よって、図9に示すステップS301より前の処理手順については、図8をもって説明を省略する。   The processing procedure different between FIG. 9 and FIG. 8 is processing after step S301 in which the transmission-side functional unit 72 transmits the request message 81 to the reception-side functional unit 71. Therefore, the processing procedure before step S301 shown in FIG. 9 is not described with reference to FIG.

送信側のWS−Printer21pは、メッセージ設定部72aにより、要求メッセージ81のデータ仕様に基づいて、発行する「IPアドレスの取得」要求メッセージに応じた「機能名=DCP2DFM_SetMetadata」、「データ個数=5」、及び「データ=(InstanceID)、(Dialect)・・・(Metadata)」を、プロセス間通信部73の関数PutMsg()61aの引数に設定した後、関数PutMsg61aをコールする(ステップS601)。   The WS-Printer 21p on the transmission side uses the message setting unit 72a to generate “function name = DCP2DFM_SetMetadata”, “number of data = 5” in accordance with the “acquire IP address” request message issued based on the data specification of the request message 81. , And “Data = (InstanceID), (Dialect)... (Metadata)” are set as arguments of the function PutMsg () 61a of the inter-process communication unit 73, and then the function PutMsg 61a is called (step S601).

送信側のIMC51は、送信部74により、引数の値に基づいて発行された要求メッセージ81を受信側のIMC51へ送信する(ステップS602)。   The sending-side IMC 51 sends the request message 81 issued based on the argument value to the receiving-side IMC 51 by the sending unit 74 (step S602).

受信側のIMC51は、受信部75により、送信側から送信された要求メッセージ81を受信し、手続き登録部76に登録されたコールバック関数64を、受信した要求メッセージ81を引数に、登録手続き実行部77によりコールバックし、受信側の機能部71に実行制御を移行する(ステップS603)。   The IMC 51 on the receiving side receives the request message 81 transmitted from the transmitting side by the receiving unit 75, executes the registration procedure using the callback function 64 registered in the procedure registration unit 76 and the received request message 81 as an argument. Call back is performed by the unit 77, and execution control is transferred to the function unit 71 on the receiving side (step S603).

実行制御が移行した受信側の機能部71では、コールバック関数64がコールされたことで、内容解釈部71bが機能し、要求メッセージ81を解釈し、解釈して得た「機能名」から、「IPアドレスの取得」要求に対応する処理を特定(メッセージをディスパッチ処理)する(ステップS604)。次いで、特定した(ディスパッチした)IPアドレス取得処理を実行する(ステップS605)。   In the receiving-side function unit 71 to which execution control has been transferred, the content interpreting unit 71b functions as a result of the callback function 64 being called, and interprets and interprets the request message 81 from the “function name” obtained by interpretation. The process corresponding to the “acquire IP address” request is specified (message dispatch process) (step S604). Next, the specified (dispatched) IP address acquisition process is executed (step S605).

受信側のDFMモジュール22は、内容解釈部71bにより対応処理が終了すると、コールバック関数64の戻り値(IPアドレス)を受信側のIMC51へ返す(ステップS606)。   When the content interpreter 71b completes the corresponding process, the receiving-side DFM module 22 returns the return value (IP address) of the callback function 64 to the receiving-side IMC 51 (step S606).

受信側のプロセス間通信部73は、処理結果である戻り値を基に応答メッセージの有無を判定し(ステップS607)、判定結果から応答が必要と判断された場合に、送信部64により処理結果を基に発行された応答メッセージを送信側の機能部71へ送信する(ステップS608)。   The inter-process communication unit 73 on the receiving side determines the presence / absence of a response message based on the return value that is the processing result (step S607), and if the response is determined to be necessary from the determination result, the transmission unit 64 determines the processing result. The response message issued based on the above is transmitted to the function unit 71 on the transmission side (step S608).

送信側のIMC51は、受信部75により受信した応答メッセージを、受信側の機能部71へ転送する(ステップS609)。   The IMC 51 on the transmission side transfers the response message received by the reception unit 75 to the functional unit 71 on the reception side (step S609).

<まとめ>
以上のように、本発明の第1の実施形態によれば、本実施形態に係る画像形成装置100は、プロセス間通信部73と送受信側の機能部71及び72とを別のモジュールで構成し、所定の処理を要求する要求メッセージ81に応じて、画像形成装置100で実行可能な処理の中から、要求メッセージ81により要求される処理を特定し処理を実行するコールバック関数64を受信側の機能部71が有し、この関数64を、予め受信側のプロセス間通信部73に登録しておき、受信側のプロセス間通信部73により要求メッセージ81を受信すると、登録されている関数64をコールバックする。
<Summary>
As described above, according to the first embodiment of the present invention, the image forming apparatus 100 according to the present embodiment includes the inter-process communication unit 73 and the function units 71 and 72 on the transmission / reception side as separate modules. In response to a request message 81 for requesting a predetermined process, a callback function 64 for specifying a process requested by the request message 81 from the processes executable by the image forming apparatus 100 and executing the process is set on the receiving side. The function unit 71 has this function 64 registered in advance in the inter-process communication unit 73 on the receiving side, and when the request message 81 is received by the inter-process communication unit 73 on the receiving side, the registered function 64 is Call back.

これによって、本実施形態に係る画像形成装置100は、プロセス間通信を行うときの送受信側の処理内容や通信目的などの取り決めに依存する処理が、受信側の機能に統合され、プロセス間通信部73に、送受信側の取り決めに依存するプログラムコードやデータが含まれることがないため、画像形成装置100内のデータ処理において、プロセス間通信部73の独立性が高く、送受信側の機能を容易に拡張することができる「データ処理機能」を提供することができる。   As a result, the image forming apparatus 100 according to the present embodiment integrates the processing depending on the processing contents on the transmission / reception side and the communication purpose when performing the inter-process communication into the function on the reception side, and the inter-process communication unit 73 does not include program code or data depending on the agreement on the transmission / reception side, and therefore, in the data processing in the image forming apparatus 100, the inter-process communication unit 73 is highly independent, and the functions on the transmission / reception side can be easily performed. A “data processing function” that can be extended can be provided.

ここまで、上記第1の実施形態に基づき本発明の説明を行ってきたが、本発明の実施形態に係る画像形成装置100が有する「データ処理機能」は、図8〜11に示した処理手順を含む本実施形態に係るデータ処理プログラムを、画像形成装置100が有するコントローラ13に配置されたCPU13cで実行することで実現することができる。よって、本発明の各実施形態に係る画像形成装置100が有するデータ処理プログラムは、画像形成装置100が読み取り可能な記憶媒体12bに格納することができる。   So far, the present invention has been described based on the first embodiment, but the “data processing function” of the image forming apparatus 100 according to the embodiment of the present invention is the processing procedure shown in FIGS. The data processing program according to the present embodiment including the above can be realized by the CPU 13c disposed in the controller 13 included in the image forming apparatus 100. Therefore, the data processing program included in the image forming apparatus 100 according to each embodiment of the present invention can be stored in the storage medium 12b that can be read by the image forming apparatus 100.

各実施形態に係るデータ処理プログラムは、フロッピー(登録商標)ディスク、CD(Compact Disc)、DVD(Digital Versatile Disk)などの記録媒体12bに記憶させることによって、これらの記憶媒体12bを読み取り可能なドライブ装置12aを有する記憶メディアI/F12を介して、記録媒体12bから画像形成装置100にインストールすることができる。また、画像形成装置100は、インタフェース装置14aを有するデータ通信I/F14を備えていることから、インターネットなどの電気通信回線を用いてデータ通信プログラムをダウンロードし、インストールすることも可能である。   A data processing program according to each embodiment is stored in a recording medium 12b such as a floppy (registered trademark) disk, a CD (Compact Disc), a DVD (Digital Versatile Disk), and the like, and can read the storage medium 12b. The image forming apparatus 100 can be installed from the recording medium 12b via the storage medium I / F 12 having the apparatus 12a. Since the image forming apparatus 100 includes the data communication I / F 14 having the interface device 14a, the data communication program can be downloaded and installed using an electric communication line such as the Internet.

最後に、上記実施形態に挙げた形状に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。   Finally, the present invention is not limited to the requirements shown here, such as combinations of other elements with the shapes listed in the above embodiments. With respect to these points, the present invention can be changed within a range that does not detract from the gist of the present invention, and can be appropriately determined according to the application form.

本発明の第1の実施形態に係る画像形成装置のハードウェア構成の一例を示す図である。1 is a diagram illustrating an example of a hardware configuration of an image forming apparatus according to a first embodiment of the present invention. 本発明の第1の実施形態に係る画像形成装置のソフトウェア構成の一例を示す図である。2 is a diagram illustrating an example of a software configuration of the image forming apparatus according to the first exemplary embodiment of the present invention. FIG. 本発明の第1の実施形態に係るNCSのソフトウェア構成の一例を示す図である。It is a figure which shows an example of the software structure of NCS which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るWS−MFPモジュール群内部のプロセス間通信の構成の一例を示す図である。It is a figure which shows an example of the structure of the interprocess communication inside WS-MFP module group which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るIMCのソフトウェア構成の一例を示す図である。It is a figure which shows an example of the software structure of IMC which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係る画像形成装置内のデータ処理機能の機能構成の一例を示す図である。2 is a diagram illustrating an example of a functional configuration of a data processing function in the image forming apparatus according to the first exemplary embodiment of the present invention. FIG. 本発明の第1の実施形態に係る要求メッセージのデータ仕様の一例を示す図である。It is a figure which shows an example of the data specification of the request message which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係る画像形成装置内のデータ処理機能の基本処理手順の一例(その1)を示すシーケンス図である。FIG. 5 is a sequence diagram illustrating an example (part 1) of a basic processing procedure of a data processing function in the image forming apparatus according to the first embodiment of the present invention. 本発明の第1の実施形態に係る画像形成装置内のデータ処理機能の基本処理手順の一例(その2)を示すシーケンス図である。6 is a sequence diagram illustrating an example (part 2) of a basic processing procedure of a data processing function in the image forming apparatus according to the first embodiment of the present invention. FIG. 本発明の第1の実施形態に係るWS−MFPモジュール群のデータ処理機能の処理手順の一例(その1)を示すシーケンス図である。It is a sequence diagram showing an example (part 1) of the processing procedure of the data processing function of the WS-MFP module group according to the first embodiment of the present invention. 本発明の第1の実施形態に係るWS−MFPモジュール群のデータ処理機能の処理手順の一例(その2)を示すシーケンス図である。It is a sequence diagram showing an example (part 2) of the processing procedure of the data processing function of the WS-MFP module group according to the first embodiment of the present invention.

符号の説明Explanation of symbols

11 操作パネル
11a 入力装置
11b 表示装置
12 記憶メディアI/F
12a ドライブ装置
12b 記録媒体
13 コントローラ
13a ROM
13b RAM
13c CPU
14 データ通信I/F
14a インタフェース装置
15 スキャナ
15a 画像読取装置
16 プロッタ
16a 印刷装置
17 HDD
20 WS−MFPモジュール群
21p WS−Printer
21s WS−Scanner
22 DFMモジュール
31 WS−Discovery
32 WS−Transfer
33 WS−MetadataExchange
34 WSD−Manager
41p PrinterDCP
41s ScannnerDCP
42 WS−Eventing
51 IMC
61 IMCI/Fレイヤ
62 API内部処理レイヤ
63 送受信処理実行レイヤ
64 コールバック関数(格納先情報から呼び出されるソフトウェア部品)
71 受信側の機能部(例えばDFMモジュール)
71a 初期化部
71b 内容解釈部(ディスパッチャ)
72 送信側の機能部(例えばWS−PrinterやWS−Scannerなど)
72a 機能A(例えばWS−Printer)
72b 機能B(例えばWS−Scanner)
72m メッセージ設定部
73 プロセス間通信部(例えばIMC)
74 送信部
75 受信部
76 手続き登録部
77 登録手続き実行部
81 要求メッセージ
100 画像形成装置
101 ハードウェアリソース
102 エンジンI/F
103 API
110 ソフトウェア群
111 プリンタアプリ
112 コピーアプリ
113 ファクスアプリ
114 スキャナアプリ
115 ネットファイルアプリ
116 工程検査アプリ
117 配信アプリ
120 プラットフォーム
121 OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
129 IMH
130 アプリケーション
140 起動部
150 コントロールサービス
11 Operation Panel 11a Input Device 11b Display Device 12 Storage Media I / F
12a drive device 12b recording medium 13 controller 13a ROM
13b RAM
13c CPU
14 Data communication I / F
14a interface device 15 scanner 15a image reading device 16 plotter 16a printing device 17 HDD
20 WS-MFP module group 21p WS-Printer
21s WS-Scanner
22 DFM module 31 WS-Discovery
32 WS-Transfer
33 WS-MetadataExchange
34 WSD-Manager
41p PrinterDCP
41s Scanner DCP
42 WS-Eventing
51 IMC
61 IMCI / F Layer 62 API Internal Processing Layer 63 Transmission / Reception Processing Execution Layer 64 Callback Function (Software Component Called from Storage Location Information)
71 Functional part on the receiving side (eg DFM module)
71a Initialization unit 71b Content interpretation unit (dispatcher)
72 Transmission-side functional unit (for example, WS-Printer, WS-Scanner, etc.)
72a Function A (eg WS-Printer)
72b Function B (eg WS-Scanner)
72m Message setting unit 73 Inter-process communication unit (for example, IMC)
74 Transmission Unit 75 Reception Unit 76 Procedure Registration Unit 77 Registration Procedure Execution Unit 81 Request Message 100 Image Forming Apparatus 101 Hardware Resource 102 Engine I / F
103 API
110 Software group 111 Printer application 112 Copy application 113 Fax application 114 Scanner application 115 Net file application 116 Process inspection application 117 Distribution application 120 Platform 121 OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
129 IMH
130 Application 140 Starter 150 Control Service

Claims (9)

第1の機能が動作する第1のプロセスと、前記第1のプロセスから所定の処理の実行が要求される第2の機能が動作する第2のプロセスとを有する画像形成装置であって、
前記第1のプロセスから送信された、前記所定の処理を要求する要求メッセージに応じて、当該画像形成装置で実行可能な処理の中から、前記要求メッセージにより要求される処理を特定するソフトウェア部品の格納先情報を保持している保持手段と、
前記第1のプロセスから送信された前記要求メッセージを、前記第2のプロセスで受信したときに、前記保持手段により保持された前記格納先情報に基づいて実行される前記ソフトウェア部品により特定された、前記要求メッセージにより要求される処理を前記第2のプロセスで実行する実行手段とを有することを特徴とする画像形成装置。
An image forming apparatus comprising: a first process in which a first function operates; and a second process in which a second function for which execution of a predetermined process is requested from the first process operates.
A software component that identifies a process requested by the request message from among processes executable by the image forming apparatus in response to the request message requesting the predetermined process transmitted from the first process. Holding means for holding storage location information;
When the request message transmitted from the first process is received by the second process, specified by the software component executed based on the storage location information held by the holding unit; An image forming apparatus comprising: an execution unit that executes processing requested by the request message in the second process.
当該画像形成装置は、
前記第1の機能及び前記第2の機能に共通する通信制御用インタフェースを備え、プロセス間においてデータの送受信を行う通信制御手段を有し、
前記通信制御手段は、
前記要求メッセージにより要求され、前記第2のプロセスで実行された前記所定の処理の実行結果に基づいて、要求に対応する応答メッセージを、前記第1のプロセスに送信することを特徴とする請求項1に記載の画像形成装置。
The image forming apparatus includes:
Comprising a communication control interface common to the first function and the second function, and having a communication control means for transmitting and receiving data between processes;
The communication control means includes
The response message corresponding to the request is transmitted to the first process based on an execution result of the predetermined process requested by the request message and executed in the second process. The image forming apparatus according to 1.
前記通信制御手段は、
前記要求メッセージの送信を指示する送信指示手段と、
前記要求メッセージの送信と要求に応じた前記応答メッセージの受信待ちを指示する応答受信指示手段と、
前記要求メッセージの受信待ちを指示する要求待ち指示手段と、
前記ソフトウェア部品の格納先情報の設定を指示する格納先情報設定指示手段とを有することを特徴とする請求項2に記載の画像形成装置。
The communication control means includes
Transmission instruction means for instructing transmission of the request message;
Response reception instruction means for instructing transmission of the request message and waiting for reception of the response message in response to the request;
Request waiting instruction means for instructing reception waiting of the request message;
The image forming apparatus according to claim 2, further comprising a storage location information setting instruction unit that instructs setting of storage location information of the software component.
前記要求メッセージは、
前記要求メッセージにより実行される処理を示す機能名と、
前記処理を行うときに用いるパラメータ値と、
前記パラメータ値の数を示すパラメータ数とから構成されることを特徴とする請求項1ないし3のいずれか一項に記載の画像形成装置。
The request message is
A function name indicating processing executed by the request message;
Parameter values used when performing the process;
The image forming apparatus according to claim 1, wherein the image forming apparatus includes a number of parameters indicating the number of parameter values.
前記ソフトウェア部品は、
前記第2のプロセスで受信された前記要求メッセージの前記機能名に基づいて、前記要求メッセージにより要求される処理を特定することを特徴とする請求項1ないし4のいずれか一項に記載の画像形成装置。
The software component is
5. The image according to claim 1, wherein a process requested by the request message is specified based on the function name of the request message received in the second process. 6. Forming equipment.
前記実行手段は、
前記第2のプロセスで受信された前記要求メッセージの前記パラメータ値に基づいて、前記ソフトウェア部品により特定された、前記要求メッセージにより要求される処理を行うことを特徴とする請求項1ないし5のいずれか一項に記載の画像形成装置。
The execution means includes
6. The process requested by the request message specified by the software component based on the parameter value of the request message received in the second process. The image forming apparatus according to claim 1.
当該画像形成装置は、
前記第2のプロセスで受信された前記要求メッセージの前記パラメータ値の数が、前記要求メッセージの前記パラメータ数と一致するか否かを判定し、受信された前記要求メッセージのデータを検証するデータ検証手段を有することを特徴とする請求項1ないし6のいずれか一項に記載の画像形成装置。
The image forming apparatus includes:
Data verification for determining whether the number of parameter values of the request message received in the second process matches the number of parameters of the request message and verifying the data of the received request message The image forming apparatus according to claim 1, further comprising a unit.
第1の機能が動作する第1のプロセスと、前記第1のプロセスから所定の処理の実行が要求される第2の機能が動作する第2のプロセスと、前記第1のプロセスから送信された、前記所定の処理を要求する要求メッセージに応じて、当該画像形成装置で実行可能な処理の中から、前記要求メッセージにより要求される処理を特定するソフトウェア部品の格納先情報を保持している保持手段とを有する画像形成装置内のデータ処理方法であって、
前記第1のプロセスから送信された前記要求メッセージを、前記第2のプロセスで受信したときに、前記保持手段により保持された前記格納先情報に基づいて前記ソフトウェア部品を実行し、前記ソフトウェア部品の実行により、前記要求メッセージにより要求される処理を特定し、特定された前記処理を前記第2のプロセスで実行することを特徴とする画像形成装置内のデータ処理方法。
A first process in which a first function operates, a second process in which a second function for which execution of a predetermined process is requested from the first process operates, and a transmission from the first process. And holding storage location information of software components for identifying the process requested by the request message from among the processes executable by the image forming apparatus in response to the request message requesting the predetermined process And a data processing method in the image forming apparatus,
When the request message transmitted from the first process is received by the second process, the software component is executed based on the storage location information held by the holding unit, and the software component A data processing method in an image forming apparatus, characterized in that a process requested by the request message is specified by execution, and the specified process is executed in the second process.
第1の機能が動作する第1のプロセスと、前記第1のプロセスに対して所定の処理を要求する第2の機能が動作する第2のプロセスと、前記第1のプロセスから送信された、前記所定の処理を要求する要求メッセージに応じて、当該画像形成装置で実行可能な処理の中から、前記要求メッセージにより要求される処理を特定するソフトウェア部品の格納先情報を保持している保持手段とを有する画像形成装置内のデータ処理プログラムであって、
コンピュータに、
前記第1のプロセスから送信された前記要求メッセージを、前記第2のプロセスで受信したときに、前記保持手段により保持された前記格納先情報に基づいて前記ソフトウェア部品を実行させ、前記ソフトウェア部品の実行により、前記要求メッセージにより要求される処理を特定させ、特定された前記処理を前記第2のプロセスで実行させる画像形成装置内のデータ処理プログラム。
A first process in which a first function operates, a second process in which a second function for requesting predetermined processing to the first process operates, and a first process transmitted from the first process. A holding unit that holds storage location information of a software component that identifies a process requested by the request message from among processes that can be executed by the image forming apparatus in response to the request message that requests the predetermined process A data processing program in the image forming apparatus,
On the computer,
When the request message transmitted from the first process is received by the second process, the software component is executed based on the storage location information held by the holding unit, and the software component A data processing program in the image forming apparatus that, by execution, causes a process requested by the request message to be specified, and causes the specified process to be executed in the second process.
JP2007238266A 2007-09-13 2007-09-13 Image forming apparatus, data processing method in image forming apparatus, and data processing program Expired - Fee Related JP5046818B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007238266A JP5046818B2 (en) 2007-09-13 2007-09-13 Image forming apparatus, data processing method in image forming apparatus, and data processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007238266A JP5046818B2 (en) 2007-09-13 2007-09-13 Image forming apparatus, data processing method in image forming apparatus, and data processing program

Publications (2)

Publication Number Publication Date
JP2009071611A true JP2009071611A (en) 2009-04-02
JP5046818B2 JP5046818B2 (en) 2012-10-10

Family

ID=40607410

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007238266A Expired - Fee Related JP5046818B2 (en) 2007-09-13 2007-09-13 Image forming apparatus, data processing method in image forming apparatus, and data processing program

Country Status (1)

Country Link
JP (1) JP5046818B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102271209A (en) * 2010-06-01 2011-12-07 株式会社理光 Image forming apparatus, image processing method, and image processing system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005229270A (en) * 2004-02-12 2005-08-25 Ricoh Co Ltd Image forming device and method of interface
JP2006139776A (en) * 2001-08-27 2006-06-01 Ricoh Co Ltd Information processing system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006139776A (en) * 2001-08-27 2006-06-01 Ricoh Co Ltd Information processing system
JP2005229270A (en) * 2004-02-12 2005-08-25 Ricoh Co Ltd Image forming device and method of interface

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102271209A (en) * 2010-06-01 2011-12-07 株式会社理光 Image forming apparatus, image processing method, and image processing system

Also Published As

Publication number Publication date
JP5046818B2 (en) 2012-10-10

Similar Documents

Publication Publication Date Title
US7209249B2 (en) Method of and apparatus for image formation, and computer product
JP5539043B2 (en) Information transmitting apparatus, information transmitting apparatus control method, and computer program
EP1650953B1 (en) Image forming apparatus, a print process method, a computer program and a computer readable storage medium
JP5370439B2 (en) Apparatus, request processing method, program, and recording medium
JP2016027711A (en) Image forming apparatus, image forming method, and program
JP2009255390A (en) Image forming apparatus, functional cooperation control method, and functional cooperation control program
JP4291856B2 (en) Image forming apparatus having Web service function
JP6768544B2 (en) Information processing equipment, control methods and programs
JP5046818B2 (en) Image forming apparatus, data processing method in image forming apparatus, and data processing program
JP4141209B2 (en) Image forming apparatus having Web service function
JP2003274100A (en) Image forming apparatus, remote image forming control method, and program for allowing computer to perform the method
JP2004005505A (en) Computer readable program for letting computer execute program formation
JP2004005503A (en) Image forming device having web service function
KR101405920B1 (en) Job control apparatus and multi-function product, and operating method thereof
US8499310B2 (en) Information processing apparatus, device setup method and storage medium for carrying out a device setup on a network
JP4291855B2 (en) Image forming apparatus having Web service function
JP3977039B2 (en) Communication program generating method for image information processing apparatus and communication program generating apparatus for image information processing apparatus
JP2006020341A (en) Image forming apparatus including web service functions
JP5072499B2 (en) Image forming apparatus, data communication apparatus, data communication method, and data communication program
JP4373692B2 (en) Image forming apparatus having Web service function
JP4500326B2 (en) Inter-process communication program and image information processing apparatus
JP4141210B2 (en) Image forming apparatus having Web service function
JP2005108237A (en) System and method for enabling heterogeneous image forming apparatus to operate as homogeneous device
JP2009134584A (en) Information processor management system, information processor management method, program, and storage medium
JP4291854B2 (en) Image forming apparatus having Web service function

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100412

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111129

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120113

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

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

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

Free format text: PAYMENT UNTIL: 20150727

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5046818

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees