[go: up one dir, main page]

JP2017079003A - Memory sharing system and memory sharing program - Google Patents

Memory sharing system and memory sharing program Download PDF

Info

Publication number
JP2017079003A
JP2017079003A JP2015207427A JP2015207427A JP2017079003A JP 2017079003 A JP2017079003 A JP 2017079003A JP 2015207427 A JP2015207427 A JP 2015207427A JP 2015207427 A JP2015207427 A JP 2015207427A JP 2017079003 A JP2017079003 A JP 2017079003A
Authority
JP
Japan
Prior art keywords
memory
data
control unit
system control
terminal
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.)
Pending
Application number
JP2015207427A
Other languages
Japanese (ja)
Inventor
エドウィン イラガン
Edwin Ilagan
エドウィン イラガン
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.)
Kyocera Document Solutions Inc
Original Assignee
Kyocera Document Solutions Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kyocera Document Solutions Inc filed Critical Kyocera Document Solutions Inc
Priority to JP2015207427A priority Critical patent/JP2017079003A/en
Publication of JP2017079003A publication Critical patent/JP2017079003A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)
  • Memory System (AREA)

Abstract

【課題】メモリー領域不足に起因するデットロックを確実に回避すること。
【解決手段】MFP100側のシステム制御部213(第1のシステム制御部)により、デットロック検出部210が画像処理部209によるRAM206(第1のメモリー)を使用する際のデットロックを検出した際、共有資源管理部211(第1の共有資源管理部)が管理する管理テーブル230を参照し、RAM206(第1のメモリー)に記憶させたデータの一部をRAM206(第1のメモリー)とユーザー端末側(端末側)のRAM(第2のメモリー)との間で移動させる。これにより、RAM206(第1のメモリー)に空き領域を増やすことができる。
【選択図】図2
An object of the present invention is to reliably avoid a deadlock caused by a memory area shortage.
A system controller 213 (first system controller) on the MFP 100 side detects a deadlock when a deadlock detector 210 uses a RAM 206 (first memory) by an image processor 209. Referring to the management table 230 managed by the shared resource manager 211 (first shared resource manager), a part of the data stored in the RAM 206 (first memory) is stored in the RAM 206 (first memory) and the user. It is moved between the terminal side (terminal side) RAM (second memory). Thereby, an empty area can be increased in the RAM 206 (first memory).
[Selection] Figure 2

Description

本発明は、ネットワークに接続されている機器間でのメモリーリソースを共有するメモリー共有システム及びメモリー共有プログラムに関する。   The present invention relates to a memory sharing system and a memory sharing program that share memory resources between devices connected to a network.

たとえば、プリンター、多機能プリンター、複合機などのMFP(Multifunction Peripheral)であるメモリー共有システムにおいては、LAN(Local Area Network)などのネットワークを介し、PCなどのユーザー端末から受信した印刷データに対し、ユーザー設定に応じた印刷処理などを実行する。   For example, in a memory sharing system that is an MFP (Multifunction Peripheral) such as a printer, a multi-function printer, or a multifunction device, print data received from a user terminal such as a PC via a network such as a LAN (Local Area Network) Execute print processing according to user settings.

ちなみに、印刷データは、ポストスクリプト(登録商標)やPCL(Printer Control Language)に代表されるページ記述言語(PDL:Page Description Language)形式のデータ(以下、PDLデータという)である。   Incidentally, the print data is data in a page description language (PDL) format represented by PostScript (registered trademark) or PCL (Printer Control Language) (hereinafter referred to as PDL data).

また、メモリー共有システムでの印刷処理に際しては、受信した印刷データを、一旦中間形式のデータ(以下、中間データという)に変換してメモリー上に保持し、このメモリー上に保持した中間データを順次読み出してビットマップ形式のデータ(以下、ビットマップデータという)に変換する。また、メモリー上に保持した中間データをビットマップデータに変換する際、同一のメモリー領域内にワークエリアが展開される。   In the printing process in the memory sharing system, the received print data is temporarily converted into intermediate format data (hereinafter referred to as intermediate data) and stored in the memory, and the intermediate data stored in the memory is sequentially transferred. Read and convert to bitmap format data (hereinafter referred to as bitmap data). Further, when the intermediate data held in the memory is converted into bitmap data, the work area is expanded in the same memory area.

ところで、たとえばそれぞれ別タスクとして動作する複数のPDLインタプリターを備えたメモリー共有システムでは、共有資源となるメモリー領域を共有で使用する。このため、一方のインタプリターがメモリー領域を使用しているとき、他方のインタプリターに対するメモリー領域が不足することがある。この場合、メモリー領域不足に起因するデットロックを生じることがある。   By the way, for example, in a memory sharing system provided with a plurality of PDL interpreters that operate as separate tasks, a memory area as a shared resource is shared. For this reason, when one interpreter is using the memory area, the memory area for the other interpreter may be insufficient. In this case, a deadlock due to a memory area shortage may occur.

このような不具合を解消するものとして、特許文献1に示されているデッドロック検知方法が知られている。このデッドロック検知方法は、複数のタスクが共有資源を共有し合うことによるデッドロック状態を検出するための管理テーブルと、共有資源の獲得待ち状態に遷移したタスクの情報と、タスクの獲得待ち状態の原因となる共有資源を獲得中であるタスクの情報とを、デッドロック状態を検出するための情報として管理テーブルに記録する管理情報作成部とを備え、複数のタスク間で複数の共有資源の排他制御を実行するものである。   As a means for solving such a problem, a deadlock detection method disclosed in Patent Document 1 is known. This deadlock detection method includes a management table for detecting a deadlock state caused by multiple tasks sharing a shared resource, information on a task that has transitioned to a shared resource acquisition wait state, and a task acquisition wait state. And a management information creation unit that records information on a task that is acquiring a shared resource that causes a deadlock in a management table as information for detecting a deadlock state. Exclusive control is executed.

特開2004−341878号公報JP 2004-341878 A

上述した特許文献1のデッドロック検知方法では、アプリケーションプログラムに影響することなく、デッドロック状態を容易に且つ正確に検知することで、複数の共有資源の排他制御を実行することができる。   In the deadlock detection method of Patent Document 1 described above, exclusive control of a plurality of shared resources can be performed by detecting a deadlock state easily and accurately without affecting the application program.

ところが、このデッドロック検知方法では、デッドロック状態が検知されると、デットロックが発生したタスクの再実行を試みるなどの処理が必要となる。この場合の処理は、タスクの実行を最初から行うことになる。ところが、メモリー領域が不足している状態では、メモリー領域不足に起因するデットロックを回避することができないおそれがあるという問題があった。   However, in this deadlock detection method, when a deadlock state is detected, processing such as attempting to re-execute the task in which the deadlock has occurred is required. In this case, the task is executed from the beginning. However, when the memory area is insufficient, there is a problem that the deadlock due to the memory area shortage cannot be avoided.

本発明は、このような状況に鑑みてなされたものであり、上記問題点を解消することができるメモリー共有システム及びメモリー共有プログラムを提供することを目的とする。   The present invention has been made in view of such a situation, and an object thereof is to provide a memory sharing system and a memory sharing program capable of solving the above-described problems.

本発明のモリー共有システムは、第1のメモリーを有する画像形成装置と、第2のメモリーを有し、ネットワークを介して前記画像形成装置にデータの送信が可能な端末とを備え、前記画像形成装置は、前記第1のメモリーに記憶された前記データに対する画像処理を行う画像処理部と、前記端末に関する情報に紐付けた前記データに関する情報を管理テーブルを用いて管理する第1の共有資源管理部と、前記画像処理部が前記第1のメモリーを使用する際のデットロックを検出するデットロック検出部と、前記デットロック検出部が前記デットロックを検出した際、前記管理テーブルを参照し、前記データの一部を前記第1のメモリーと前記第2のメモリーとの間で移動させる第1のシステム制御部とを有し、前記端末は、前記第2のメモリーの空き領域を示す情報と前記データの一部に関する情報とを管理する第2の共有資源管理部と、前記第1のシステム制御部からの要求に対し、前記第2の共有資源管理部が管理する情報を参照して応答する第2のシステム制御部とを有することを特徴とする。
また、前記第1のシステム制御部は、前記デットロック検出部が前記デットロックを検出すると、前記第2のシステム制御部に救援要求を送り、前記第2のシステム制御部は、前記第1のシステム制御部に前記第2のメモリーの空き領域を示す情報を送ることを特徴とする。
また、前記第1のシステム制御部は、前記第2のメモリーの空き領域を示す情報を参照し、前記データの一部の移動が可能であれば、前記データの一部を前記端末に送り、さらに前記第1の共有資源管理部に対し、前記管理テーブルに前記データの一部のメモリーアドレスを書き込ませ、前記第2のシステム制御部は、前記第2の共有資源管理部に対し、前記データの一部を記憶している前記第1のメモリーのメモリーアドレスと、前記データの一部を記憶させた前記第2のメモリーのメモリーアドレスとを管理させることを特徴とする。
また、前記第1のシステム制御部は、前記データの一部を前記端末に送った後、前記第1のメモリーに記憶されている前記データの一部を削除し、前記画像処理部による処理の進行に応じて前記第1のメモリーに空き領域が生じると、前記第2のメモリーに移動させた前記データの一部を前記端末から受け取り、前記管理テーブルを参照し、前記第1のメモリーの元のメモリーアドレスの領域に書き込むことを特徴とする。
本発明のメモリー共有システムは、第1のメモリーを有する画像形成装置と、前記画像形成装置を管理する管理端末と、第2のメモリーを有し、ネットワークを介して前記画像形成装置にデータの送信が可能な端末とを備え、前記画像形成装置は、前記第1のメモリーに記憶された前記データに対する画像処理を行う画像処理部と、前記画像処理部が前記第1のメモリーを使用する際のデットロックを検出するデットロック検出部と、前記データの一部を前記第1のメモリーと前記第2のメモリーとの間で移動させる第1のシステム制御部とを有し、前記管理端末は、前記端末に関する情報に紐付けて前記データに関する情報を管理テーブルを用いて管理する第3の共有資源管理部と、前記デットロック検出部が前記デットロックを検出した際、前記管理テーブルを参照し、前記第1のシステム制御部に対し、前記データの一部の移動を指示する第3のシステム制御部とを有し、前記端末は、前記第2のメモリーの空き領域を示す情報と前記データの一部に関する情報とを管理する第2の共有資源管理部と、前記第1のシステム制御部からの要求に対し、前記第2の共有資源管理部が管理する情報を参照して応答する第2のシステム制御部とを有することを特徴とする。
本発明のメモリー共有プログラムは、画像処理部により、第1のメモリーに記憶された端末からのデータに対する画像処理を行う工程と、第1の共有資源管理部により、前記端末に関する情報に紐付けた前記データに関する情報を管理テーブルを用いて管理する工程と、デットロック検出部により、前記画像処理部が前記第1のメモリーを使用する際のデットロックを検出する工程と、第1のシステム制御部により、前記デットロック検出部が前記デットロックを検出した際、前記管理テーブルを参照し、前記データの一部を前記第1のメモリーと第2のメモリーとの間で移動させる工程とを、画像形成装置を制御するコンピューターに実行させることを特徴とする。
本発明のメモリー共有プログラムは、第3の共有資源管理部により、端末に関する情報に紐付けて端末からのデータに関する情報を管理テーブルを用いて管理する工程と、第3のシステム制御部により、画像形成装置側のデットロック検出部がデットロックを検出した際、前記管理テーブルを参照し、画像形成装置側の第1のシステム制御部に対し、前記データの一部の移動を指示する工程とを、管理端末を制御するコンピューターに実行させることを特徴とする。
本発明のメモリー共有システム及びメモリー共有プログラムでは、第1のシステム制御部により、デットロック検出部が画像処理部による第1のメモリーを使用する際のデットロックを検出した際、第1の共有資源管理部が管理する管理テーブルを参照し、第1のメモリーに記憶させたデータの一部を第1のメモリーと端末側の第2のメモリーとの間で移動させる。これにより、第1のメモリーに空き領域を増やすことができる。
The Molly sharing system of the present invention includes an image forming apparatus having a first memory and a terminal having a second memory and capable of transmitting data to the image forming apparatus via a network. An apparatus includes: an image processing unit that performs image processing on the data stored in the first memory; and a first shared resource management that manages information related to the data associated with information related to the terminal using a management table A deadlock detection unit that detects a deadlock when the image processing unit uses the first memory, and when the deadlock detection unit detects the deadlock, the management table is referred to, A first system control unit configured to move a part of the data between the first memory and the second memory, wherein the terminal stores the second memory. In response to a request from the first system control unit, a second shared resource management unit that manages information indicating a free area of the data and information relating to a part of the data. And a second system control unit responding with reference to information to be managed.
The first system control unit sends a rescue request to the second system control unit when the deadlock detection unit detects the deadlock, and the second system control unit Information indicating an empty area of the second memory is sent to the system control unit.
In addition, the first system control unit refers to information indicating an empty area of the second memory, and if a part of the data can be moved, sends the part of the data to the terminal, Further, the first shared resource management unit is caused to write a memory address of a part of the data in the management table, and the second system control unit is configured to send the data to the second shared resource management unit. And managing the memory address of the first memory storing a part of the memory and the memory address of the second memory storing a part of the data.
In addition, the first system control unit deletes a part of the data stored in the first memory after sending a part of the data to the terminal, and performs processing by the image processing unit. When an empty area is generated in the first memory according to progress, a part of the data moved to the second memory is received from the terminal, the management table is referred to, and the source of the first memory is It is characterized by writing in the area of the memory address.
The memory sharing system of the present invention has an image forming apparatus having a first memory, a management terminal for managing the image forming apparatus, and a second memory, and transmits data to the image forming apparatus via a network. The image forming apparatus includes: an image processing unit that performs image processing on the data stored in the first memory; and the image processing unit that uses the first memory when the image processing unit uses the first memory. A deadlock detector that detects a deadlock; and a first system controller that moves a part of the data between the first memory and the second memory; A third shared resource management unit that manages information related to the data using a management table in association with information related to the terminal, and the deadlock detection unit has detected the deadlock And a third system control unit that refers to the management table and instructs the first system control unit to move a part of the data, and the terminal has an empty space in the second memory. A second shared resource management unit that manages information indicating an area and information about a part of the data, and information that is managed by the second shared resource management unit in response to a request from the first system control unit And a second system control unit responding with reference to FIG.
In the memory sharing program of the present invention, the image processing unit performs image processing on data from the terminal stored in the first memory, and the first shared resource management unit associates the information with the terminal. A step of managing information related to the data using a management table; a step of detecting a deadlock when the image processing unit uses the first memory by a deadlock detection unit; and a first system control unit When the deadlock detection unit detects the deadlock, a step of referring to the management table and moving a part of the data between the first memory and the second memory is performed. A computer that controls the forming apparatus is executed.
In the memory sharing program of the present invention, a third shared resource management unit manages information related to data associated with a terminal by using a management table, and a third system control unit performs image processing. A step of instructing the first system control unit on the image forming apparatus side to move a part of the data with reference to the management table when the deadlock detecting section on the forming apparatus side detects the deadlock; And a computer that controls the management terminal.
In the memory sharing system and the memory sharing program of the present invention, when the first system control unit detects a deadlock when the deadlock detection unit uses the first memory by the image processing unit, the first shared resource With reference to the management table managed by the management unit, a part of the data stored in the first memory is moved between the first memory and the second memory on the terminal side. Thereby, an empty area can be increased in the first memory.

本発明のメモリー共有システムによれば、デットロック検出部がデットロックを検出した際、第1のシステム制御部が第1のメモリーに記憶させたデータの一部を第1のメモリーと端末側の第2のメモリーとの間で移動させるので、第1のメモリーに空き領域を増やすことができ、メモリー領域不足に起因するデットロックを確実に回避することができる。   According to the memory sharing system of the present invention, when the deadlock detection unit detects a deadlock, a part of the data stored in the first memory by the first system control unit is stored in the first memory and the terminal side. Since it is moved to and from the second memory, it is possible to increase an empty area in the first memory, and it is possible to reliably avoid a deadlock caused by a shortage of the memory area.

本発明のメモリー共有システムの一実施形態を示す図である。It is a figure which shows one Embodiment of the memory sharing system of this invention. 図1のMFPの構成を示す図である。FIG. 2 is a diagram illustrating a configuration of the MFP in FIG. 1. 図1のユーザー端末の構成を示す図である。It is a figure which shows the structure of the user terminal of FIG. 図2のRAMのメモリー領域について説明するものであって、同図(a)は中間データがRAMのメモリー領域に記憶されている状態を示す図であり、同図(b)は移動させたタスクCが受け持つ中間データが削除されている状態を示す図である。FIG. 2 is a diagram for explaining the memory area of the RAM of FIG. 2, in which FIG. 2A shows a state in which intermediate data is stored in the memory area of the RAM, and FIG. It is a figure which shows the state from which the intermediate data which C handles are deleted. 図2のRAMのメモリー領域の他の例について説明するものであって、同図(a)は中間データがRAMのメモリー領域に記憶されている状態を示す図であり、同図(b)は移動させた中間データの一部が削除されている状態を示す図である。2 is a diagram illustrating another example of the memory area of the RAM in FIG. 2, in which FIG. 2A is a diagram illustrating a state in which intermediate data is stored in the memory area of the RAM, and FIG. It is a figure which shows the state from which the part of moved intermediate data is deleted. 図2の共有資源管理部が管理する管理テーブルを示す図である。It is a figure which shows the management table which the shared resource management part of FIG. 2 manages. 図1のメモリー共有システムにおける、メモリー共有の処理について説明するためのフローチャートである。3 is a flowchart for explaining a memory sharing process in the memory sharing system of FIG. 1. 図1のメモリー共有システムにおける、メモリー共有の処理について説明するためのフローチャートである。3 is a flowchart for explaining a memory sharing process in the memory sharing system of FIG. 1. 図1のメモリー共有システムの構成を変えた場合の他の例を説明するための図である。It is a figure for demonstrating the other example at the time of changing the structure of the memory sharing system of FIG. 図9の管理端末の構成を示す図である。It is a figure which shows the structure of the management terminal of FIG.

以下、本発明のメモリー共有システムの一実施形態を、図1〜図8を参照しながら説明する。なお、以下の説明においての画像形成装置の一例としては、たとえば印刷機能、コピー機能、FAX機能、ネットワーク経由でのデータ送受信機能などを搭載した複合的な周辺機器であるMFP(Multifunction Peripheral)であるものとする。   Hereinafter, an embodiment of a memory sharing system of the present invention will be described with reference to FIGS. An example of the image forming apparatus in the following description is, for example, an MFP (Multifunction Peripheral) which is a complex peripheral device equipped with a print function, a copy function, a FAX function, a data transmission / reception function via a network, and the like. Shall.

まず、図1に示すように、メモリー共有システムは、画像形成装置であるMFP100、PC(Personal Computer)などのユーザー端末300を備えている。MFP100及びユーザー端末300は、社内LAN(Local Area Network)400を介して接続されている。なお、図示はしていないが、メモリー共有システムには文書管理サーバーなども含めることができる。   First, as shown in FIG. 1, the memory sharing system includes an MFP 100 that is an image forming apparatus, and a user terminal 300 such as a PC (Personal Computer). The MFP 100 and the user terminal 300 are connected via an in-house LAN (Local Area Network) 400. Although not shown, the memory sharing system may include a document management server.

また、本実施形態におけるMFP100及びユーザー端末300のそれぞれに搭載されているメモリーである、後述のRAM206、313は、共有設定が行われているものとする。そして、MFP100側で、メモリー領域不足に起因するデットロックを回避する場合、社内LAN400を介して全てのユーザー端末300に対し後述の救援要求を送る。また、いずれかのユーザー端末300からの応答があると、MFP100側で処理するデータの一部を応答の有ったいずれかのユーザー端末300のメモリーに移動させる。また、MFP100側で処理の進行状況に応じてメモリーに空き領域が生じると、移動させたデータを受け取り、処理を続行する。   In addition, it is assumed that RAM 206 and 313, which will be described later, which are memories mounted in the MFP 100 and the user terminal 300 in the present embodiment, are set for sharing. When the MFP 100 side avoids a deadlock due to a memory area shortage, a relief request described later is sent to all the user terminals 300 via the in-house LAN 400. When there is a response from any of the user terminals 300, a part of the data to be processed on the MFP 100 side is moved to the memory of any of the user terminals 300 that has responded. Further, when an empty area is generated in the memory according to the progress of processing on the MFP 100 side, the moved data is received and the processing is continued.

次に、図2を参照し、MFP100の内部構成の一例について説明する。MFP100は、制御部200、スキャナー部220、プリンター部221、FAX部222、パネル部223、HDD224を備えている。   Next, an example of the internal configuration of the MFP 100 will be described with reference to FIG. The MFP 100 includes a control unit 200, a scanner unit 220, a printer unit 221, a FAX unit 222, a panel unit 223, and an HDD 224.

スキャナー部220は、イメージセンサ(図示省略)によって読み取られる、図示しない原稿の画像信号をデジタルの画像データに変換し、制御部200に入力するデバイスである。プリンター部221は、制御部200から出力される画像データに基づき、用紙上に画像を印刷するデバイスである。FAX部222は、制御部200から出力される画像データを、電話回線を通じ相手方となるファクシミリへと送信し、また、相手方ファクシミリからの画像データを受信して制御部200に入力するデバイスである。   The scanner unit 220 is a device that converts an image signal of a document (not shown) read by an image sensor (not shown) into digital image data and inputs the digital image data to the control unit 200. The printer unit 221 is a device that prints an image on paper based on image data output from the control unit 200. The FAX unit 222 is a device that transmits the image data output from the control unit 200 to a facsimile machine as a counterpart through a telephone line, and receives the image data from the counterpart facsimile and inputs it into the control unit 200.

パネル部223は、MFP100の印刷機能、コピー機能、FAX機能、ネットワーク経由でのデータ送受信機能や、各種設定のための表示を行うデバイスである。HDD224は、MFP100の種々の機能を提供するためのアプリケーションプログラムなどを記憶している記憶デバイスである。   A panel unit 223 is a device that performs display for various functions such as a print function, a copy function, a FAX function, a data transmission / reception function via a network, and the MFP 100. The HDD 224 is a storage device that stores application programs for providing various functions of the MFP 100.

制御部200は、画像形成プログラムや制御プログラムなどを実行してMFP100全体の動作を制御するプロセッサーである。制御部200は、スキャナー制御部201、プリンター制御部202、FAX(Facsimile)制御部203、社内LANネットワークI/F(インターフェース)204、ネットワーク制御部205、RAM(Random Access Memory)206、EEPROM(Electrically Erasable Programmable Read−Only Memory)207、パネル操作制御部208、画像処理部209、デットロック検出部210、共有資源管理部211、HDD制御部212、システム制御部213を備えている。また、これらは、データバス214に接続されている。   Control unit 200 is a processor that executes an image forming program, a control program, and the like to control the operation of MFP 100 as a whole. The control unit 200 includes a scanner control unit 201, a printer control unit 202, a FAX (Facsimile) control unit 203, an in-house LAN network I / F (interface) 204, a network control unit 205, a RAM (Random Access Memory) 206, and an EEPROM (Electrically). Erasable Programmable Read-Only Memory) 207, panel operation control unit 208, image processing unit 209, deadlock detection unit 210, shared resource management unit 211, HDD control unit 212, and system control unit 213. These are connected to the data bus 214.

スキャナー制御部201は、スキャナー部220の読み取り動作を制御する。プリンター制御部202は、プリンター部221の印刷動作を制御する。FAX制御部203は、FAX部222による画像データの送受信動作を制御する。ネットワーク制御部205は、社内LANネットワークI/F204を介し、社内LAN400経由でのデータなどの送受信の制御を行う。   The scanner control unit 201 controls the reading operation of the scanner unit 220. The printer control unit 202 controls the printing operation of the printer unit 221. The FAX control unit 203 controls image data transmission / reception operations by the FAX unit 222. The network control unit 205 controls transmission / reception of data via the in-house LAN 400 via the in-house LAN network I / F 204.

RAM206(第2のメモリー)は、プログラムを実行するためのワークメモリーである。EEPROM207には、各部の動作チェックなどを行う制御プログラムが記憶されている。また、EEPROM207には、アプリケーションプログラムにより実行した動作についてのログ情報なども記憶されている。   A RAM 206 (second memory) is a work memory for executing a program. The EEPROM 207 stores a control program for performing an operation check of each unit. Further, the EEPROM 207 stores log information about operations executed by the application program.

パネル操作制御部208は、パネル部223の表示動作を制御する。画像処理部209は、画像データに対する画像処理(ラスタライズ)を行う。デットロック検出部210は、メモリー領域不足に起因するデットロックを検出する。この場合、デットロック検出部210は、後述のたとえばタスクA〜Cの処理が停止したことを検出する。なお、デットロック検出部210は、たとえば後述のRAM206のワーク領域の空き領域が特定領域以下となったとき、デットロックを検出してもよい。共有資源管理部211は、詳細は後述するが、後述の管理テーブル230を有し、RAM206のメモリー領域の管理などを行う。   Panel operation control unit 208 controls the display operation of panel unit 223. The image processing unit 209 performs image processing (rasterization) on the image data. The deadlock detector 210 detects a deadlock due to a memory area shortage. In this case, the deadlock detection unit 210 detects that the processing of, for example, tasks A to C described later has stopped. The deadlock detection unit 210 may detect a deadlock when, for example, a free area in a work area of the RAM 206 described later becomes equal to or less than a specific area. Although the details will be described later, the shared resource management unit 211 has a management table 230 described later, and manages the memory area of the RAM 206 and the like.

HDD制御部212は、HDD224に対するデータの読み出し及び書き込みなどを制御する。システム制御部213(第2のシステム制御部)は、各部の連携動作などを制御する。また、システム制御部213は、デットロック検出部210がデットロックを検出すると、ネットワーク制御部205を介し、それぞれのユーザー端末300に対し、救援要求を送信する。また、システム制御部213は、いずれかのユーザー端末300からの応答に従い、共有資源管理部211が管理する後述の管理テーブル230を参照し、RAM206に記憶されたデータの一部を応答の有ったいずれかのユーザー端末300のメモリー(後述のRAM313)に移動させる。このとき、データの一部を記憶しているRAM206のメモリーアドレスも通知する。また、システム制御部213は、画像処理部209での処理の進行状況に応じてRAM206に空き領域が生じると、移動させたデータを受け取り、RAM206に記憶させる。これにより、画像処理部209は、いずれかのユーザー端末300に移動させたデータに対する画像処理を続行させることができる。これにより、メモリー領域不足に起因するデットロックが回避される。   The HDD control unit 212 controls reading and writing of data with respect to the HDD 224. The system control unit 213 (second system control unit) controls the cooperative operation of each unit. In addition, when the deadlock detection unit 210 detects a deadlock, the system control unit 213 transmits a rescue request to each user terminal 300 via the network control unit 205. Further, the system control unit 213 refers to a management table 230 described later managed by the shared resource management unit 211 in accordance with a response from one of the user terminals 300, and has a response to a part of the data stored in the RAM 206. The user terminal 300 is moved to a memory (a RAM 313 described later). At this time, the memory address of the RAM 206 storing a part of the data is also notified. Further, the system control unit 213 receives the moved data and stores it in the RAM 206 when an empty area is generated in the RAM 206 according to the progress of the processing in the image processing unit 209. As a result, the image processing unit 209 can continue the image processing on the data moved to any one of the user terminals 300. As a result, a deadlock caused by a memory area shortage is avoided.

次に、図3を参照し、ユーザー端末300の内部構成の概要について説明する。ユーザー端末300は、制御プログラムを実行してユーザー端末300全体の動作を制御する制御部310を備えている。   Next, an outline of the internal configuration of the user terminal 300 will be described with reference to FIG. The user terminal 300 includes a control unit 310 that executes a control program and controls the operation of the entire user terminal 300.

制御部310は、社内LANネットワークI/F311、ネットワーク制御部312、RAM313、EEPROM314、共有資源管理部315、システム制御部316を備えている。また、これらは、データバス317に接続されている。   The control unit 310 includes an in-house LAN network I / F 311, a network control unit 312, a RAM 313, an EEPROM 314, a shared resource management unit 315, and a system control unit 316. These are connected to the data bus 317.

ネットワーク制御部312は、社内LANネットワークI/F311を介し、社内LAN400経由でのデータなどの送受信の制御を行う。RAM313は、プログラムを実行するためのワークメモリーである。EEPROM314には、各部の動作チェックなどを行う制御プログラムが記憶されている。また、EEPROM314には、アプリケーションプログラムにより実行した動作についてのログ情報なども記憶されている。   The network control unit 312 controls transmission / reception of data via the in-house LAN 400 via the in-house LAN network I / F 311. The RAM 313 is a work memory for executing a program. The EEPROM 314 stores a control program for checking the operation of each unit. The EEPROM 314 also stores log information about operations executed by the application program.

共有資源管理部315(第2の共有資源管理部)は、RAM313の空き領域を管理する。また、共有資源管理部315は、MFP100から受け取ったデータが記憶されるRAM313のメモリーアドレスなども管理する。システム制御部316は、各部の連携動作などを制御する。また、システム制御部316は、ネットワーク制御部312を介し、MFP100からの救援要求に対する応答を送信する。なお、応答には、端末ID、RAM313の空き容量などが含まれる。また、システム制御部316は、MFP100からのデータを受け取ると、RAM313の空き領域に受け取ったデータを記憶させる。このとき、システム制御部316は、共有資源管理部315に対し、MFP100側のRAM206のデータの一部を記憶しているメモリーアドレスと、データの一部を記憶させたRAM313のメモリーアドレスとを管理させる。   The shared resource management unit 315 (second shared resource management unit) manages an empty area of the RAM 313. The shared resource management unit 315 also manages a memory address of the RAM 313 in which data received from the MFP 100 is stored. The system control unit 316 controls the cooperative operation of each unit. In addition, the system control unit 316 transmits a response to the rescue request from the MFP 100 via the network control unit 312. The response includes the terminal ID, the free capacity of the RAM 313, and the like. In addition, upon receiving data from MFP 100, system control unit 316 stores the received data in a free area of RAM 313. At this time, the system control unit 316 manages the shared resource management unit 315 with a memory address that stores a part of the data in the RAM 206 on the MFP 100 side and a memory address of the RAM 313 that stores a part of the data. Let

次に、図4を参照し、MFP100側のRAM206のメモリー領域について説明する。まず、MFP100がたとえばユーザー端末300から受信した印刷データに対する印刷処理を行う場合、画像処理部209が受信した印刷データを、一旦中間形式のデータ(以下、中間データという)に変換する。そして、システム制御部213が変換した中間データをRAM206のメモリー領域に記憶させる。   Next, the memory area of the RAM 206 on the MFP 100 side will be described with reference to FIG. First, when the MFP 100 performs print processing on print data received from the user terminal 300, for example, the print data received by the image processing unit 209 is once converted into intermediate format data (hereinafter referred to as intermediate data). Then, the intermediate data converted by the system control unit 213 is stored in the memory area of the RAM 206.

ここで、図4(a)は、中間データがRAM206のメモリー領域のメモリーアドレスであるたとえばa0番地〜a5番地に記憶されている状態を示している。また、a6番地〜an番地までがワーク領域となっている状態を示している。また、図4(a)は、説明の都合上、a0番地〜a1番地までの中間データをタスクAが受け持ち、a2番地〜a3番地までの中間データをタスクBが受け持ち、a4番地〜a5番地までの中間データをタスクCが受け持つ状態を示している。   Here, FIG. 4A shows a state in which the intermediate data is stored in, for example, addresses a0 to a5, which are memory addresses in the memory area of the RAM 206. Moreover, the state from address a6 to address an is the work area. In FIG. 4A, for convenience of explanation, task A is responsible for intermediate data from addresses a0 to a1, task B is responsible for intermediate data from addresses a2 to a3, and addresses a4 to a5. This shows a state where task C is responsible for intermediate data.

そして、通常では、排他制御により、タスクA〜Cのいずれかがワーク領域を占有しているとき、他のタスクA〜Cがワーク領域の開放を待つという処理が繰り返される。ここで、たとえばタスクAの処理中にワーク領域が不足すると、タスクAの処理が中断し、デットロックが生じる。このとき、デットロック検出部210がデットロックを検出する。なお、デットロック検出部210は、たとえばタスクAの処理中にRAM206のワーク領域の空き領域が特定領域以下となった時点で、デットロックを検出してもよい。   In general, when any of the tasks A to C occupies the work area by the exclusive control, the process in which the other tasks A to C wait for the work area to be released is repeated. Here, for example, if the work area is insufficient during the processing of task A, the processing of task A is interrupted and a deadlock occurs. At this time, the deadlock detector 210 detects a deadlock. The deadlock detection unit 210 may detect a deadlock when, for example, the free area of the work area in the RAM 206 becomes equal to or less than a specific area during the processing of task A.

また、システム制御部213は、デットロック検出部210がデットロックを検出すると、社内LAN400経由で全てのユーザー端末300に、メモリー領域不足に起因するデットロックを回避するために、救援要求を送る。そして、ユーザー端末300からの応答が有ると、応答に含まれるRAM313の空き容量を確認し、中間データの一部をユーザー端末300のRAM313に移動させる。   Further, when the deadlock detection unit 210 detects a deadlock, the system control unit 213 sends a rescue request to all the user terminals 300 via the in-house LAN 400 in order to avoid deadlock due to insufficient memory area. When there is a response from the user terminal 300, the free capacity of the RAM 313 included in the response is confirmed, and a part of the intermediate data is moved to the RAM 313 of the user terminal 300.

図4(b)は、たとえばタスクAの処理中にメモリー領域不足に起因するデットロックを回避するために、たとえばタスクCが受け持つ中間データをいずれかのユーザー端末300に移動させた状態を示している。つまり、タスクCが受け持つ中間データをいずれかのユーザー端末300に移動させた場合、タスクCが受け持つa4番地〜a5番地までの中間データを削除することで、ワーク領域をa4番地〜a5番地までの分だけ開放(増やす)することができる。これにより、たとえばタスクAの処理中でのワーク領域の不足が解消され、メモリー領域不足に起因するデットロックが回避される。   FIG. 4B shows a state in which, for example, intermediate data handled by the task C is moved to one of the user terminals 300 in order to avoid a deadlock due to a memory area shortage during the processing of the task A, for example. Yes. That is, when the intermediate data handled by task C is moved to any of the user terminals 300, the intermediate data from address a4 to address a5 handled by task C is deleted, so that the work area is changed from address a4 to address a5. It can be opened (increased) by the amount. Thereby, for example, the shortage of the work area during the processing of task A is solved, and the deadlock caused by the shortage of the memory area is avoided.

なお、図4(b)は、タスクCが受け持つa4番地〜a5番地までの中間データを移動させた状態を示しているが、タスクBが受け持つa2番地〜a3番地までの中間データを移動させてもよい。また、タスクCが受け持つa4番地〜a5番地までの中間データの一部を移動させてもよいし、タスクBが受け持つa2番地〜a3番地までの中間データの一部を移動させてもよい。いずれにしても、処理中である、たとえばタスクAのメモリー領域不足に起因するデットロックを回避できるだけのワーク領域が確保されればよい。   FIG. 4B shows a state in which the intermediate data from address a4 to a5 addressed by task C is moved, but the intermediate data from address a2 to a3 addressed by task B is moved. Also good. In addition, a part of the intermediate data from address a4 to a5 address handled by task C may be moved, or a part of the intermediate data from address a2 to a3 addressed by task B may be moved. In any case, it is only necessary to secure a work area that can avoid a deadlock due to a shortage of the memory area of task A, for example, during processing.

なお、図4では、RAM206のメモリー領域に記憶された中間データに対し、複数のタスクA〜Cが処理を受け持つ場合として示しているが、たとえば図5(a)に示すように、RAM206のメモリー領域に記憶された中間データに対し、タスクAのみが処理を受け持つ場合も考えられる。   4 shows a case where a plurality of tasks A to C are responsible for processing intermediate data stored in the memory area of the RAM 206. For example, as shown in FIG. There may be a case where only the task A is in charge of processing the intermediate data stored in the area.

この場合、図5(b)に示すように、中間データの一部である、たとえばa4番地〜a5番地までの中間データを、いずれかのユーザー端末300に移動させることで、メモリー領域不足に起因するデットロックを回避することができる。   In this case, as shown in FIG. 5 (b), the intermediate data that is a part of the intermediate data, for example, the intermediate data from address a4 to address a5 is moved to one of the user terminals 300, resulting in insufficient memory area. Deadlock can be avoided.

次に、図6を参照し、共有資源管理部211が管理する管理テーブルについて説明する。まず、共有資源管理部211が管理する管理テーブル230は、たとえば端末ID(identification)の項目231、応答の有無の項目232、空き容量の項目233、移動させた中間データのメモリーアドレスの項目234を有している。なお、共有資源管理部211は、端末IDに紐付けして応答の有無、空き容量、移動させた中間データのメモリーアドレスを管理している。   Next, a management table managed by the shared resource management unit 211 will be described with reference to FIG. First, the management table 230 managed by the shared resource management unit 211 includes, for example, a terminal ID (identification) item 231, a response presence / absence item 232, a free space item 233, and a memory address item 234 of the moved intermediate data. Have. The shared resource management unit 211 manages the presence / absence of a response, the free capacity, and the memory address of the moved intermediate data in association with the terminal ID.

ここで、共有資源管理部211は、端末IDの項目231に、それぞれのユーザー端末300を識別するための識別子を書き込む。また、共有資源管理部211は、応答の有無の項目232に、MFP100からの救援要求に対する有無を書き込む。また、共有資源管理部211は、空き容量の項目233に、応答の有ったユーザー端末300側のRAM313の空き容量を書き込む。また、共有資源管理部211は、移動させた中間データのメモリーアドレスの項目234に、MFP100側のRAM206から移動させた中間データのメモリーアドレスを書き込む。   Here, the shared resource management unit 211 writes an identifier for identifying each user terminal 300 in the item 231 of the terminal ID. Further, the shared resource management unit 211 writes the presence / absence of the rescue request from the MFP 100 in the response presence / absence item 232. Further, the shared resource management unit 211 writes the free capacity of the RAM 313 on the user terminal 300 side that has responded to the free capacity item 233. Further, the shared resource management unit 211 writes the memory address of the intermediate data moved from the RAM 206 on the MFP 100 side in the item 234 of the memory address of the moved intermediate data.

また、共有資源管理部211は、MFP100からの救援要求に対するユーザー端末300からの応答が有ったときと、いずれかのユーザー端末300に移動させた中間データを受け取ったとき、管理テーブル230の内容を更新する。この場合、共有資源管理部211は、応答の有無の項目232、空き容量の項目233、移動させた中間データのメモリーアドレスの項目234のそれぞれに書き込んだ内容を削除する。   In addition, when the shared resource management unit 211 receives a response from the user terminal 300 to the rescue request from the MFP 100 and receives intermediate data moved to one of the user terminals 300, the content of the management table 230 Update. In this case, the shared resource management unit 211 deletes the contents written in the response presence / absence item 232, the free space item 233, and the moved intermediate data memory address item 234, respectively.

ちなみに、図6は、端末IDがA001、A002、A00nの場合、応答の有無の項目232に、応答が有ったことを示す「有り」が書き込まれていることを示している。また、空き容量の項目233に、応答が有ったA001、A002、A00nの端末IDに対応させ、それぞれ70MB、800MB、50MBの空き容量が書き込まれていることを示している。また、移動させた中間データのメモリーアドレスの項目234に、RAM206から移動させた中間データのメモリーアドレスである、たとえばa4番地〜a5番地が書き込まれていることを示している。そして、システム制御部213が移動させた中間データのメモリーアドレスの項目234に、RAM206から移動させたデータのメモリーアドレスが書き込まれていることを確認することで、中間データが移動していることを識別できる。   Incidentally, FIG. 6 shows that when the terminal ID is A001, A002, or A00n, “Yes” indicating that there is a response is written in the response presence / absence item 232. In addition, the free capacity item 233 indicates that 70 MB, 800 MB, and 50 MB of free capacity are written in association with the terminal IDs of A001, A002, and A00n that have responded, respectively. Further, it is shown that the memory address of the intermediate data moved from the RAM 206, for example, addresses a4 to a5, is written in the memory address item 234 of the moved intermediate data. Then, it is confirmed that the intermediate data is moved by confirming that the memory address of the data moved from the RAM 206 is written in the memory address item 234 of the intermediate data moved by the system control unit 213. Can be identified.

ここで、システム制御部213は、タスクBが受け持つデータ量がたとえば100MBで、タスクCが受け持つデータ量がたとえば60MBであると判断したとする。この場合、システム制御部213は、タスクBのデータ量(100MB)については、端末ID(A002)のユーザー端末300の空き容量が800MBであるため、移動可能と判断する。また、システム制御部213は、タスクCのデータ量(60MB)については、端末ID(A001、A002)のユーザー端末300の空き容量がそれぞれ70MB、800MBであるため、移動可能と判断する。   Here, it is assumed that the system control unit 213 determines that the data amount handled by the task B is 100 MB, for example, and the data amount handled by the task C is 60 MB, for example. In this case, the system control unit 213 determines that the task B data amount (100 MB) is movable because the free capacity of the user terminal 300 with the terminal ID (A002) is 800 MB. Further, the system control unit 213 determines that the data amount of task C (60 MB) is movable because the free capacity of the user terminal 300 with the terminal ID (A001, A002) is 70 MB and 800 MB, respectively.

この場合、タスクBの中間データとタスクCの中間データとは、共に移動可能ということになるが、データの移動に関わる処理時間などを考慮すると、データ量(60MB)の少ないタスクCの中間データを移動させてもよい。また、タスクCの中間データの移動先は、空き容量が70MBである端末ID(A001)、又は800MBである端末ID(A002)のどちらかのユーザー端末300であればよいことになるが、上記同様に、中間データの移動に関わる処理時間などを考慮すると、先に応答の有ったユーザー端末300にタスクCの中間データを移動させてもよい。   In this case, the intermediate data of task B and the intermediate data of task C can both be moved, but considering the processing time related to the movement of data, the intermediate data of task C having a small data amount (60 MB). May be moved. Further, the transfer destination of the intermediate data of task C may be the user terminal 300 of either the terminal ID (A001) having a free capacity of 70 MB or the terminal ID (A002) having 800 MB. Similarly, considering the processing time related to the movement of the intermediate data, the intermediate data of the task C may be moved to the user terminal 300 that has previously responded.

さらには、上述したように、処理中である、たとえばタスクAのメモリー領域不足に起因するデットロックを回避できるだけのワーク領域が確保されればよいため、タスクCの中間データの一部、又はタスクBの中間データの一部を移動させてもよい。   Furthermore, as described above, a work area that can avoid a deadlock that is being processed, for example, due to a shortage of the memory area of task A, may be secured. A part of the intermediate data of B may be moved.

なお、システム制御部213は、ユーザー端末300に中間データを移動させる際、RAM206のメモリーアドレスも併せて送る。すなわち、たとえばタスクCの中間データをユーザー端末300に移動させる際、タスクCの中間データのメモリーアドレス(a4番地からa5番地)も併せて送る。   Note that the system control unit 213 also sends the memory address of the RAM 206 when moving the intermediate data to the user terminal 300. That is, for example, when the intermediate data of task C is moved to the user terminal 300, the memory address (address a4 to a5) of the intermediate data of task C is also sent.

これにより、タスクCの中間データを受け取ったユーザー端末300側では、RAM313に記憶させたメモリーアドレスと、タスクCの中間データのメモリーアドレス(a4番地からa5番地)とを紐付けて管理することができる。これにより、MFP100側から中間データの返信要求があった場合、RAM313に記憶させたタスクCの中間データを確実に送り返すことができる。   As a result, the user terminal 300 receiving the intermediate data of task C can manage the memory address stored in the RAM 313 and the memory address of the intermediate data of task C (addresses a4 to a5) in association with each other. it can. Thereby, when there is a reply request for intermediate data from the MFP 100 side, the intermediate data of task C stored in the RAM 313 can be reliably sent back.

また、システム制御部213は、タスクCの中間データを送った後、図4(b)に示したように、a4番地からa5番地のタスクCの中間データを削除し、開放する。また、システム制御部213は、ユーザー端末300から受け取った中間データを、移動させた中間データのメモリーアドレスの項目234のメモリーアドレスを参照することで、RAM206の元のアドレスに書き込むことができる。   In addition, after sending the task C intermediate data, the system control unit 213 deletes and releases the task C intermediate data at addresses a4 to a5 as shown in FIG. 4B. Further, the system control unit 213 can write the intermediate data received from the user terminal 300 to the original address of the RAM 206 by referring to the memory address in the item 234 of the memory address of the moved intermediate data.

次に、図7及び図8を参照し、メモリー共有の処理について説明する。なお、以下の説明では、画像処理部209のタスクAが処理を行っているものとする。   Next, the memory sharing process will be described with reference to FIGS. In the following description, it is assumed that task A of the image processing unit 209 performs processing.

(ステップS101)
まず、システム制御部213は、デットロック検出部210がデットロックを検出したかどうかを判断する。なお、デットロック検出部210は、図4(a)で説明したように、タスクAがa0番地〜a1番地までの中間データを受け持ち、タスクBがa2番地〜a3番地までの中間データを受け持ち、タスクCがa4番地〜a5番地までの中間データを受け持っているとする。また、デットロック検出部210が、画像処理部209のタスクAが処理中に、RAM206のワーク領域の空き領域が無くなり、タスクAの処理が停止したとき、デットロックを検出するものとする。なお、デットロック検出部210は、上述したように、画像処理部209のタスクAが処理中に、RAM206のワーク領域の空き領域が特定領域以下となったとき、デットロックを検出してもよい。
そして、システム制御部213は、デットロックでないと判断すると(ステップS101:No)、ステップS102に移行する。これに対し、システム制御部213は、デットロックであると判断すると(ステップS101:Yes)、ステップS105に移行する。
(Step S101)
First, the system control unit 213 determines whether the deadlock detection unit 210 has detected a deadlock. As described in FIG. 4A, the deadlock detection unit 210 is responsible for the intermediate data from the address a0 to the address a1 and the task B is responsible for the intermediate data from the address a2 to the address a3. Assume that task C is responsible for intermediate data from addresses a4 to a5. Further, it is assumed that the deadlock detection unit 210 detects a deadlock when the work area of the RAM 206 is exhausted and the processing of the task A is stopped while the task A of the image processing unit 209 is being processed. As described above, the deadlock detection unit 210 may detect a deadlock when the work area of the RAM 206 is equal to or less than a specific area while the task A of the image processing unit 209 is being processed. .
If the system control unit 213 determines that it is not a deadlock (step S101: No), the system control unit 213 proceeds to step S102. On the other hand, if the system control unit 213 determines that it is a deadlock (step S101: Yes), the system control unit 213 proceeds to step S105.

(ステップS102)
システム制御部213は、データ(中間データ)を他の端末(ユーザー端末300)に移動させているかどうかを判断する。この場合、システム制御部213は、共有資源管理部211が管理している、図6に示した管理テーブル230を参照する。システム制御部213は、移動させたデータ(中間データ)のメモリーアドレスの項目234にメモリーアドレスが書き込まれていなければ、データ(中間データ)を他の端末(ユーザー端末300)に移動させていないと判断し(ステップS102:No)、ステップS103に移行する。
これに対し、システム制御部213は、管理テーブル230の移動させたデータ(中間データ)のメモリーアドレスの項目234にメモリーアドレスが書き込まれていれば、データ(中間データ)を他の端末(ユーザー端末300)に移動させていると判断し(ステップS102:Yes)、図8のステップS111に移行する。
すなわち、図6のように、移動させたデータ(中間データ)のメモリーアドレスの項目234に、メモリーアドレスである、a4番地〜a5番地が書き込まれている場合、システム制御部213はデータ(中間データ)を他の端末(ユーザー端末300)に移動させていると判断する。また、システム制御部213は、メモリーアドレスが書き込まれている端末ID(A002)を確認することで、データ(中間データ)を移動させたユーザー端末300を識別する。
(Step S102)
The system control unit 213 determines whether the data (intermediate data) is moved to another terminal (user terminal 300). In this case, the system control unit 213 refers to the management table 230 illustrated in FIG. 6 managed by the shared resource management unit 211. If the memory address is not written in the memory address item 234 of the moved data (intermediate data), the system control unit 213 has not moved the data (intermediate data) to another terminal (user terminal 300). It judges (step S102: No) and transfers to step S103.
In contrast, if the memory address is written in the memory address field 234 of the moved data (intermediate data) in the management table 230, the system control unit 213 transfers the data (intermediate data) to another terminal (user terminal). 300) (step S102: Yes), the process proceeds to step S111 in FIG.
That is, as shown in FIG. 6, when the addresses a4 to a5, which are memory addresses, are written in the memory address item 234 of the moved data (intermediate data), the system control unit 213 displays the data (intermediate data). ) Is moved to another terminal (user terminal 300). Further, the system control unit 213 identifies the user terminal 300 that has moved the data (intermediate data) by confirming the terminal ID (A002) in which the memory address is written.

(ステップS103)
画像処理部209のタスクAが処理を続行する。
(Step S103)
Task A of the image processing unit 209 continues processing.

(ステップS104)
システム制御部213は、画像処理部209による処理が終了したかどうかを判断する。この場合、システム制御部213は、画像処理部209からのタスクA〜Cによる処理の終了の通知があると、画像処理部209による処理が終了したと判断する(ステップS104:Yes)。これに対し、システム制御部213は、画像処理部209からのタスクA〜Cによる処理の終了の通知がなければ、画像処理部209による処理が終了していないと判断し(ステップS104:No)、ステップS101に移行する。
(Step S104)
The system control unit 213 determines whether the processing by the image processing unit 209 has ended. In this case, the system control unit 213 determines that the processing by the image processing unit 209 has ended when there is a notification from the image processing unit 209 that the tasks A to C have been completed (step S104: Yes). On the other hand, the system control unit 213 determines that the processing by the image processing unit 209 has not ended if there is no notification from the image processing unit 209 that the tasks A to C have been completed (step S104: No). The process proceeds to step S101.

(ステップS105)
システム制御部213は、デットロック検出部210がデットロックを検出すると、社内LAN400を介して全てのユーザー端末300に対し救援要求を送る。
(Step S105)
When the deadlock detection unit 210 detects a deadlock, the system control unit 213 sends a rescue request to all user terminals 300 via the in-house LAN 400.

(ステップS106)
システム制御部213は、ユーザー端末300からの応答を待ち(ステップS106:No)、ユーザー端末300からの応答があると(ステップS106:Yes)、ステップS107に移行する。
(Step S106)
The system control unit 213 waits for a response from the user terminal 300 (step S106: No). If there is a response from the user terminal 300 (step S106: Yes), the system control unit 213 proceeds to step S107.

(ステップS107)
システム制御部213は、ユーザー端末300からの応答があると、共有資源管理部211に対し、図6に示した管理テーブル230の内容を更新させる。
この場合、共有資源管理部211は、端末IDがA001、A002、A00nのユーザー端末300からの応答が有ると、それぞれの端末IDに対応した応答の有無の項目232に「有り」を書き込む。共有資源管理部211は、応答が無かった端末IDがA003については、応答の有無の項目232に「無し」を書き込む。
また、共有資源管理部211は、空き容量の項目233に、応答に含まれるユーザー端末300側のRAM313の空き容量を書き込む。ちなみに、図6では、端末IDがA001、A002、A00nの場合、それぞれ70MB、800MB、50MBの空き容量が応答に含まれていることを示している。
(Step S107)
Upon receiving a response from the user terminal 300, the system control unit 213 causes the shared resource management unit 211 to update the contents of the management table 230 illustrated in FIG.
In this case, when there is a response from the user terminal 300 with the terminal IDs A001, A002, and A00n, the shared resource management unit 211 writes “Yes” in the response presence / absence item 232 corresponding to each terminal ID. The shared resource management unit 211 writes “none” in the response presence / absence item 232 for the terminal ID A003 for which there is no response.
In addition, the shared resource management unit 211 writes the free capacity of the RAM 313 on the user terminal 300 side included in the response in the free capacity item 233. Incidentally, FIG. 6 shows that when the terminal IDs are A001, A002, and A00n, 70 MB, 800 MB, and 50 MB of free space are included in the response, respectively.

(ステップS108)
システム制御部213は、図4(a)に示したRAM206のメモリー領域において、処理中のタスクAを除く、タスクBが受け持つデータ量と、タスクCが受け持つデータ量とを判断する。
ここで、システム制御部213は、タスクBが受け持つデータ量がたとえば100MBで、タスクCが受け持つデータ量がたとえば60MBであると判断したとする。この場合、システム制御部213は、タスクBのデータ量(100MB)については、端末ID(A002)のユーザー端末300の空き容量が800MBであるため、移動可能と判断する。また、システム制御部213は、タスクCのデータ量(60MB)については、端末ID(A001、A002)のユーザー端末300の空き容量がそれぞれ70MB、800MBであるため、移動可能と判断する。
この場合、タスクBのデータ(中間データ)とタスクCのデータ(中間データ)とは、共に移動可能ということになるが、データ(中間データ)の移動に関わる処理時間などを考慮すると、データ量(60MB)の少ないタスクCのデータ(中間データ)を移動させてもよい。また、タスクCのデータ(中間データ)の移動先は、空き容量がそれぞれ70MB、800MBである端末ID(A001)又は、端末ID(A002)のどちらかのユーザー端末300であればよいことになるが、上記同様に、データ(中間データ)の移動に関わる処理時間などを考慮すると、先に応答の有ったユーザー端末300にタスクCのデータ(中間データ)を移動させてもよい。
そして、システム制御部213は、たとえば端末ID(A002)のユーザー端末300の応答が先である場合、端末ID(A002)のユーザー端末300にたとえばタスクCのデータ(中間データ)を送る。
(Step S108)
The system control unit 213 determines the data amount handled by the task B and the data amount handled by the task C, excluding the task A being processed, in the memory area of the RAM 206 shown in FIG.
Here, it is assumed that the system control unit 213 determines that the data amount handled by the task B is 100 MB, for example, and the data amount handled by the task C is 60 MB, for example. In this case, the system control unit 213 determines that the task B data amount (100 MB) is movable because the free capacity of the user terminal 300 with the terminal ID (A002) is 800 MB. Further, the system control unit 213 determines that the data amount of task C (60 MB) is movable because the free capacity of the user terminal 300 with the terminal ID (A001, A002) is 70 MB and 800 MB, respectively.
In this case, both the task B data (intermediate data) and the task C data (intermediate data) can be moved, but considering the processing time involved in the movement of the data (intermediate data), the amount of data Data of task C (intermediate data) with a small (60 MB) may be moved. Further, the destination of the task C data (intermediate data) may be the user terminal 300 of either the terminal ID (A001) or the terminal ID (A002) having free capacity of 70 MB and 800 MB, respectively. However, in the same manner as described above, considering the processing time related to the movement of data (intermediate data), the data of task C (intermediate data) may be moved to the user terminal 300 that has responded earlier.
Then, for example, when the response of the user terminal 300 with the terminal ID (A002) comes first, the system control unit 213 sends, for example, data of task C (intermediate data) to the user terminal 300 with the terminal ID (A002).

(ステップS109)
システム制御部213は、図4(b)に示したように、RAM206の移動させたタスクCが受け持つa4番地〜a5番地までのデータ(中間データ)を削除する。これにより、ワーク領域をa4番地〜a5番地までの分だけ開放(増やす)することができる。
(Step S109)
As shown in FIG. 4B, the system control unit 213 deletes data (intermediate data) from address a4 to address a5, which is handled by the moved task C in the RAM 206. As a result, the work area can be released (increased) by an amount from address a4 to address a5.

(ステップS110)
画像処理部209は、開放されたメモリー領域を使用し、タスクAの処理を続行する。これにより、タスクAの処理中でのワーク領域の不足が解消され、メモリー領域不足に起因するデットロックが回避される。
(Step S110)
The image processing unit 209 uses the released memory area and continues the task A process. Thereby, the shortage of the work area during the processing of task A is solved, and the deadlock caused by the shortage of the memory area is avoided.

(ステップS111)
図8のステップS111においては、システム制御部213がRAM206に空き領域が生じたかどうかを判断する。すなわち、システム制御部213は、たとえばタスクAの処理が終了すると、ワーク領域を開放する。このため、システム制御部213は、たとえばタスクAの処理が終了するまで待ち(ステップS111:No)、たとえばタスクAの処理が終了し、ワーク領域を開放すると、RAM206に空き領域が生じたと判断する(ステップS111:Yes)し、ステップS112に移行する。
(Step S111)
In step S <b> 111 of FIG. 8, the system control unit 213 determines whether an empty area has occurred in the RAM 206. In other words, the system control unit 213 releases the work area when the processing of the task A is completed, for example. For this reason, the system control unit 213 waits until the processing of the task A is completed (step S111: No), for example, and when the processing of the task A is completed and the work area is released, for example, it is determined that an empty area is generated in the RAM 206 (Step S111: Yes) and the process proceeds to Step S112.

(ステップS112)
システム制御部213は、共有資源管理部211が管理する管理テーブル230を参照し、データ(中間データ)を移動させた端末IDがA002のユーザー端末300に、データ(中間データ)の返信要求を送る。
この場合、返信要求には、メモリーアドレスである、a4番地〜a5番地までのデータ(中間データ)であることを示す情報を含ませる。
これにより、返信要求を受け取ったユーザー端末300側では、RAM313に記憶させたメモリーアドレスと、タスクCのデータ(中間データ)のメモリーアドレス(a4番地からa5番地)とを紐付けて管理しているので、RAM313に記憶させたタスクCのデータ(中間データ)を確実に送り返すことができる。
(Step S112)
The system control unit 213 refers to the management table 230 managed by the shared resource management unit 211, and sends a data (intermediate data) return request to the user terminal 300 whose terminal ID is A002 to which the data (intermediate data) has been moved. .
In this case, the reply request includes information indicating data (intermediate data) from address a4 to address a5, which are memory addresses.
As a result, the user terminal 300 that has received the reply request associates and manages the memory address stored in the RAM 313 and the memory address of the task C data (intermediate data) (addresses a4 to a5). Therefore, the data of task C (intermediate data) stored in the RAM 313 can be reliably sent back.

(ステップS113)
システム制御部213は、データ(中間データ)を受け取るまで待ち(ステップS113:No)、データ(中間データ)を受け取った場合(ステップS113:Yes)、ステップS114に移行する。
(Step S113)
The system control unit 213 waits until data (intermediate data) is received (step S113: No). When data (intermediate data) is received (step S113: Yes), the system control unit 213 proceeds to step S114.

(ステップS114)
システム制御部213は、データ(中間データ)を受け取ると、共有資源管理部211に対し、図6に示した管理テーブル230の内容を更新させる。
この場合、共有資源管理部211は、管理テーブル230の応答の有無の項目232、空き容量の項目233、移動させたデータ(中間データ)のメモリーアドレスの項目234のそれぞれに書き込んだ内容を削除する。
(Step S114)
Upon receiving the data (intermediate data), the system control unit 213 causes the shared resource management unit 211 to update the contents of the management table 230 shown in FIG.
In this case, the shared resource management unit 211 deletes the contents written in the response table item 232, the free space item 233, and the memory address item 234 of the moved data (intermediate data) in the management table 230. .

(ステップS115)
システム制御部213は、受け取ったデータ(中間データ)を、メモリー領域に書き込む。この場合、システム制御部213は、受け取ったデータ(中間データ)を、RAM260の元のメモリーアドレスである、a4番地〜a5番地に書き込み、ステップS103に移行する。
これにより、画像処理部209は、タスクB及びタスクCによる処理を続行することができる。
(Step S115)
The system control unit 213 writes the received data (intermediate data) in the memory area. In this case, the system control unit 213 writes the received data (intermediate data) to addresses a4 to a5, which are the original memory addresses of the RAM 260, and proceeds to step S103.
As a result, the image processing unit 209 can continue processing by the task B and the task C.

このように、本実施形態では、MFP100側のシステム制御部213(第1のシステム制御部)により、デットロック検出部210が画像処理部209によるRAM206(第1のメモリー)を使用する際のデットロックを検出した際、共有資源管理部211(第1の共有資源管理部)が管理する管理テーブル230を参照し、RAM206(第1のメモリー)に記憶させたデータ(中間データ)の一部をRAM206(第1のメモリー)とユーザー端末300側(端末側)のRAM313(第2のメモリー)との間で移動させる。これにより、RAM206(第1のメモリー)に空き領域を増やすことができ、メモリー領域不足に起因するデットロックを確実に回避することができる。   As described above, in the present embodiment, the system controller 213 (first system controller) on the MFP 100 side causes the deadlock detector 210 to use the RAM 206 (first memory) by the image processor 209 when the deadlock detector 210 uses the RAM 206. When a lock is detected, the management table 230 managed by the shared resource management unit 211 (first shared resource management unit) is referred to, and a part of the data (intermediate data) stored in the RAM 206 (first memory) is stored. It is moved between the RAM 206 (first memory) and the RAM 313 (second memory) on the user terminal 300 side (terminal side). As a result, an empty area can be increased in the RAM 206 (first memory), and a deadlock due to a shortage of the memory area can be reliably avoided.

なお、本実施形態では、図1に示したように、メモリー共有システムが、画像形成装置であるMFP100、とユーザー端末300とを備えている場合として説明したが、この例に限らず、図9に示すように、MFP100を管理する管理端末500を備えてもよい。   In the present exemplary embodiment, as illustrated in FIG. 1, the memory sharing system has been described as including the MFP 100 that is the image forming apparatus and the user terminal 300, but the present invention is not limited to this example. As shown, a management terminal 500 that manages the MFP 100 may be provided.

この場合、図10に示すように、管理端末500は、制御プログラムを実行して管理端末500全体の動作を制御する制御部510を備える。制御部510は、社内LANネットワークI/F511、ネットワーク制御部512、RAM513、EEPROM514、共有資源管理部515、システム制御部516を備える。また、これらは、データバス517に接続される。なお、これらの動作は、図2で説明したMFP100の制御部200での各部の動作とほぼ同じであるため、説明を省略する。   In this case, as illustrated in FIG. 10, the management terminal 500 includes a control unit 510 that executes a control program and controls the operation of the entire management terminal 500. The control unit 510 includes an in-house LAN network I / F 511, a network control unit 512, a RAM 513, an EEPROM 514, a shared resource management unit 515, and a system control unit 516. These are connected to the data bus 517. These operations are substantially the same as the operations of the respective units in the control unit 200 of the MFP 100 described with reference to FIG.

すなわち、管理端末500側に図2に示した共有資源管理部211と同等の共有資源管理部515(第3の共有資源管理部)を配置することで、システム制御部516(第3のシステム制御部)によりMFP100を管理するが可能となる。この場合、図2に示した共有資源管理部211を省くことができる。また、管理端末500側に、図2に示したデットロック検出部210を配置することも可能である。この場合、管理端末500側でMFP100のデットロックを検出することができ、MFP100側でのデットロック検出に関わる処理を省くことができる。   That is, by arranging a shared resource management unit 515 (third shared resource management unit) equivalent to the shared resource management unit 211 shown in FIG. 2 on the management terminal 500 side, the system control unit 516 (third system control) Part) can manage the MFP 100. In this case, the shared resource management unit 211 shown in FIG. 2 can be omitted. Further, the deadlock detection unit 210 shown in FIG. 2 can be arranged on the management terminal 500 side. In this case, the deadlock of the MFP 100 can be detected on the management terminal 500 side, and processing related to the deadlock detection on the MFP 100 side can be omitted.

また、図1に示したように、メモリー共有システムが、画像形成装置であるMFP100、とユーザー端末300とを備えている場合として説明したが、社内LAN400を介してデータの送受信ができる他の端末を備えてもよい。他の端末としては、たとえばスマートホンなどの携帯端末、プリンター、サーバーなどであってもよい。   In addition, as illustrated in FIG. 1, the memory sharing system has been described as including the MFP 100 as the image forming apparatus and the user terminal 300, but other terminals that can transmit and receive data via the in-house LAN 400. May be provided. Other terminals may be mobile terminals such as smart phones, printers, servers, and the like.

100 MFP
200、310、510 制御部
201 スキャナー制御部
202 プリンター制御部
203 FAX制御部
204、311、511 社内LANネットワークI/F
205、312、512 ネットワーク制御部
206、313、513 RAM
207、314、514 EEPROM
208 パネル操作制御部
209 画像処理部
210 デットロック検出部
211、315、515 共有資源管理部
212 HDD制御部
213、316、516 システム制御部
214、317、517 データバス
220 スキャナー部
221 プリンター部
222 FAX部
223 パネル部
224 HDD
230 管理テーブル
231〜234 項目
300 ユーザー端末
400 社内LAN
500 管理端末
100 MFP
200, 310, 510 Control unit 201 Scanner control unit 202 Printer control unit 203 FAX control unit 204, 311, 511 Internal LAN network I / F
205, 312, 512 Network control unit 206, 313, 513 RAM
207, 314, 514 EEPROM
208 Panel operation control unit 209 Image processing unit 210 Deadlock detection unit 211, 315, 515 Shared resource management unit 212 HDD control unit 213, 316, 516 System control unit 214, 317, 517 Data bus 220 Scanner unit 221 Printer unit 222 FAX Part 223 panel part 224 HDD
230 Management tables 231 to 234 Item 300 User terminal 400 Internal LAN
500 Management terminal

Claims (7)

第1のメモリーを有する画像形成装置と、
第2のメモリーを有し、ネットワークを介して前記画像形成装置にデータの送信が可能な端末とを備え、
前記画像形成装置は、
前記第1のメモリーに記憶された前記データに対する画像処理を行う画像処理部と、
前記端末に関する情報に紐付けた前記データに関する情報を管理テーブルを用いて管理する第1の共有資源管理部と、
前記画像処理部が前記第1のメモリーを使用する際のデットロックを検出するデットロック検出部と、
前記デットロック検出部が前記デットロックを検出した際、前記管理テーブルを参照し、前記データの一部を前記第1のメモリーと前記第2のメモリーとの間で移動させる第1のシステム制御部とを有し、
前記端末は、
前記第2のメモリーの空き領域を示す情報と前記データの一部に関する情報とを管理する第2の共有資源管理部と、
前記第1のシステム制御部からの要求に対し、前記第2の共有資源管理部が管理する情報を参照して応答する第2のシステム制御部とを有する
ことを特徴とするメモリー共有システム。
An image forming apparatus having a first memory;
A terminal having a second memory and capable of transmitting data to the image forming apparatus via a network;
The image forming apparatus includes:
An image processing unit that performs image processing on the data stored in the first memory;
A first shared resource management unit that manages information related to the data associated with information related to the terminal using a management table;
A deadlock detection unit that detects a deadlock when the image processing unit uses the first memory;
When the deadlock detection unit detects the deadlock, the first system control unit refers to the management table and moves a part of the data between the first memory and the second memory. And
The terminal
A second shared resource management unit for managing information indicating a free area of the second memory and information on a part of the data;
A memory sharing system comprising: a second system control unit that responds to a request from the first system control unit with reference to information managed by the second shared resource management unit.
前記第1のシステム制御部は、前記デットロック検出部が前記デットロックを検出すると、前記第2のシステム制御部に救援要求を送り、
前記第2のシステム制御部は、前記第1のシステム制御部に前記第2のメモリーの空き領域を示す情報を送る
ことを特徴とする請求項1に記載のメモリー共有システム。
When the deadlock detection unit detects the deadlock, the first system control unit sends a rescue request to the second system control unit,
The memory sharing system according to claim 1, wherein the second system control unit sends information indicating an empty area of the second memory to the first system control unit.
前記第1のシステム制御部は、前記第2のメモリーの空き領域を示す情報を参照し、前記データの一部の移動が可能であれば、前記データの一部を前記端末に送り、さらに前記第1の共有資源管理部に対し、前記管理テーブルに前記データの一部のメモリーアドレスを書き込ませ、
前記第2のシステム制御部は、前記第2の共有資源管理部に対し、前記データの一部を記憶している前記第1のメモリーのメモリーアドレスと、前記データの一部を記憶させた前記第2のメモリーのメモリーアドレスとを管理させる
ことを特徴とする請求項2に記載のメモリー共有システム。
The first system control unit refers to information indicating an empty area of the second memory, and if a part of the data can be moved, sends the part of the data to the terminal, and further Causing the first shared resource management unit to write a partial memory address of the data in the management table;
The second system control unit stores the memory address of the first memory storing a part of the data and the part of the data in the second shared resource management unit. The memory sharing system according to claim 2, wherein the memory address of the second memory is managed.
前記第1のシステム制御部は、
前記データの一部を前記端末に送った後、前記第1のメモリーに記憶されている前記データの一部を削除し、
前記画像処理部による処理の進行に応じて前記第1のメモリーに空き領域が生じると、前記第2のメモリーに移動させた前記データの一部を前記端末から受け取り、前記管理テーブルを参照し、前記第1のメモリーの元のメモリーアドレスの領域に書き込む
ことを特徴とする請求項3に記載のメモリー共有システム。
The first system control unit includes:
After sending a part of the data to the terminal, deleting the part of the data stored in the first memory;
When an empty area occurs in the first memory in accordance with the progress of the processing by the image processing unit, a part of the data moved to the second memory is received from the terminal, and the management table is referred to. The memory sharing system according to claim 3, wherein writing is performed in an area of an original memory address of the first memory.
第1のメモリーを有する画像形成装置と、
前記画像形成装置を管理する管理端末と、
第2のメモリーを有し、ネットワークを介して前記画像形成装置にデータの送信が可能な端末とを備え、
前記画像形成装置は、
前記第1のメモリーに記憶された前記データに対する画像処理を行う画像処理部と、
前記画像処理部が前記第1のメモリーを使用する際のデットロックを検出するデットロック検出部と、
前記データの一部を前記第1のメモリーと前記第2のメモリーとの間で移動させる第1のシステム制御部とを有し、
前記管理端末は、
前記端末に関する情報に紐付けて前記データに関する情報を管理テーブルを用いて管理する第3の共有資源管理部と、
前記デットロック検出部が前記デットロックを検出した際、前記管理テーブルを参照し、前記第1のシステム制御部に対し、前記データの一部の移動を指示する第3のシステム制御部とを有し、
前記端末は、
前記第2のメモリーの空き領域を示す情報と前記データの一部に関する情報とを管理する第2の共有資源管理部と、
前記第1のシステム制御部からの要求に対し、前記第2の共有資源管理部が管理する情報を参照して応答する第2のシステム制御部とを有する
ことを特徴とするメモリー共有システム。
An image forming apparatus having a first memory;
A management terminal for managing the image forming apparatus;
A terminal having a second memory and capable of transmitting data to the image forming apparatus via a network;
The image forming apparatus includes:
An image processing unit that performs image processing on the data stored in the first memory;
A deadlock detection unit that detects a deadlock when the image processing unit uses the first memory;
A first system controller that moves a portion of the data between the first memory and the second memory;
The management terminal
A third shared resource management unit that manages information related to the data using a management table in association with information related to the terminal;
When the deadlock detection unit detects the deadlock, the management table is referred to and a third system control unit is provided that instructs the first system control unit to move part of the data. And
The terminal
A second shared resource management unit for managing information indicating a free area of the second memory and information on a part of the data;
A memory sharing system comprising: a second system control unit that responds to a request from the first system control unit with reference to information managed by the second shared resource management unit.
画像処理部により、第1のメモリーに記憶された端末からのデータに対する画像処理を行う工程と、
第1の共有資源管理部により、前記端末に関する情報に紐付けた前記データに関する情報を管理テーブルを用いて管理する工程と、
デットロック検出部により、前記画像処理部が前記第1のメモリーを使用する際のデットロックを検出する工程と、
第1のシステム制御部により、前記デットロック検出部が前記デットロックを検出した際、前記管理テーブルを参照し、前記データの一部を前記第1のメモリーと第2のメモリーとの間で移動させる工程とを、画像形成装置を制御するコンピューターに実行させる
ことを特徴とするメモリー共有プログラム。
Performing image processing on data from the terminal stored in the first memory by the image processing unit;
Managing information related to the data associated with the information related to the terminal by using a management table by the first shared resource management unit;
A step of detecting a deadlock when the image processing unit uses the first memory by a deadlock detection unit;
When the deadlock detection unit detects the deadlock by the first system control unit, the management table is referred to and a part of the data is moved between the first memory and the second memory. And a step of causing the computer that controls the image forming apparatus to execute the step of causing the image forming apparatus to execute the process.
第3の共有資源管理部により、端末に関する情報に紐付けて端末からのデータに関する情報を管理テーブルを用いて管理する工程と、
第3のシステム制御部により、画像形成装置側のデットロック検出部がデットロックを検出した際、前記管理テーブルを参照し、画像形成装置側の第1のシステム制御部に対し、前記データの一部の移動を指示する工程とを、管理端末を制御するコンピューターに実行させる
ことを特徴とするメモリー共有プログラム。
A third shared resource management unit managing information related to data from the terminal in association with information related to the terminal using a management table;
When the third system control unit detects a deadlock by the deadlock detection unit on the image forming apparatus side, the management table is referred to and the first system control unit on the image forming apparatus side stores the one of the data. A memory sharing program that causes a computer that controls a management terminal to execute a step of instructing movement of a section.
JP2015207427A 2015-10-21 2015-10-21 Memory sharing system and memory sharing program Pending JP2017079003A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015207427A JP2017079003A (en) 2015-10-21 2015-10-21 Memory sharing system and memory sharing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015207427A JP2017079003A (en) 2015-10-21 2015-10-21 Memory sharing system and memory sharing program

Publications (1)

Publication Number Publication Date
JP2017079003A true JP2017079003A (en) 2017-04-27

Family

ID=58666906

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015207427A Pending JP2017079003A (en) 2015-10-21 2015-10-21 Memory sharing system and memory sharing program

Country Status (1)

Country Link
JP (1) JP2017079003A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7566516B2 (en) 2020-07-14 2024-10-15 キヤノン株式会社 Image forming processing device, processing method and program for image forming processing device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7566516B2 (en) 2020-07-14 2024-10-15 キヤノン株式会社 Image forming processing device, processing method and program for image forming processing device

Similar Documents

Publication Publication Date Title
US10353653B2 (en) Information processing terminal, information processing method, and non-transitory computer-readable medium for specifying a position of a printer, measuring a distance range in plural communication modes
US10437530B2 (en) Communication terminal, method of controlling communication terminal and non-transitory storage medium for adding user authentication information to print data in handover enable or disable state
US20070156705A1 (en) Network Scanner And Network Scanning System
US10768870B2 (en) Image forming system and image forming method
US20120120431A1 (en) Printing system
US12216953B2 (en) Image processing device, system, and method of controlling image processing device for a code image
JP2014172394A (en) Printer, program and printing system
US10218874B2 (en) Information processing system, information processing apparatus, information processing method, and information processing program
US10146487B2 (en) Information processing system, apparatus, and method
JP2017079003A (en) Memory sharing system and memory sharing program
US9423992B2 (en) Management system and control method
JP6354394B2 (en) Information processing apparatus and image processing system
JP2012133646A (en) Printing system, printer, printing method, and printing program
JP2017182181A (en) Program and terminal device
US9432441B2 (en) Relaying device, image processing device, and system comprising image processing device and relaying device
US9207889B2 (en) Information processing apparatus, information processing method, and storage medium
JP5472347B2 (en) Server, print control method of job by server, and print control program
JP7247631B2 (en) Data setting method and data setting system
JP2016100634A (en) Image processing apparatus and control method therefor, information processing device and control method therefor, and program
JP2015170238A (en) job control device, job control system and job control method
JP6094281B2 (en) Image processing system, image processing apparatus, and control program
JP2020120168A (en) Image forming apparatus, information processing method, and program
JP2013017051A (en) Information processor, fax reception notification control method, and program
JP2006140812A (en) Information processing apparatus and data transmission program
JP2016136379A (en) Information processing apparatus, information processing system, information processing method, program, and storage medium