JP2017079003A - Memory sharing system and memory sharing program - Google Patents
Memory sharing system and memory sharing program Download PDFInfo
- 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
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のメモリー)に空き領域を増やすことができる。
【選択図】図2An 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.
上述した特許文献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.
以下、本発明のメモリー共有システムの一実施形態を、図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
また、本実施形態におけるMFP100及びユーザー端末300のそれぞれに搭載されているメモリーである、後述のRAM206、313は、共有設定が行われているものとする。そして、MFP100側で、メモリー領域不足に起因するデットロックを回避する場合、社内LAN400を介して全てのユーザー端末300に対し後述の救援要求を送る。また、いずれかのユーザー端末300からの応答があると、MFP100側で処理するデータの一部を応答の有ったいずれかのユーザー端末300のメモリーに移動させる。また、MFP100側で処理の進行状況に応じてメモリーに空き領域が生じると、移動させたデータを受け取り、処理を続行する。
In addition, it is assumed that
次に、図2を参照し、MFP100の内部構成の一例について説明する。MFP100は、制御部200、スキャナー部220、プリンター部221、FAX部222、パネル部223、HDD224を備えている。
Next, an example of the internal configuration of the
スキャナー部220は、イメージセンサ(図示省略)によって読み取られる、図示しない原稿の画像信号をデジタルの画像データに変換し、制御部200に入力するデバイスである。プリンター部221は、制御部200から出力される画像データに基づき、用紙上に画像を印刷するデバイスである。FAX部222は、制御部200から出力される画像データを、電話回線を通じ相手方となるファクシミリへと送信し、また、相手方ファクシミリからの画像データを受信して制御部200に入力するデバイスである。
The
パネル部223は、MFP100の印刷機能、コピー機能、FAX機能、ネットワーク経由でのデータ送受信機能や、各種設定のための表示を行うデバイスである。HDD224は、MFP100の種々の機能を提供するためのアプリケーションプログラムなどを記憶している記憶デバイスである。
A
制御部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に接続されている。
スキャナー制御部201は、スキャナー部220の読み取り動作を制御する。プリンター制御部202は、プリンター部221の印刷動作を制御する。FAX制御部203は、FAX部222による画像データの送受信動作を制御する。ネットワーク制御部205は、社内LANネットワークI/F204を介し、社内LAN400経由でのデータなどの送受信の制御を行う。
The
RAM206(第2のメモリー)は、プログラムを実行するためのワークメモリーである。EEPROM207には、各部の動作チェックなどを行う制御プログラムが記憶されている。また、EEPROM207には、アプリケーションプログラムにより実行した動作についてのログ情報なども記憶されている。
A RAM 206 (second memory) is a work memory for executing a program. The
パネル操作制御部208は、パネル部223の表示動作を制御する。画像処理部209は、画像データに対する画像処理(ラスタライズ)を行う。デットロック検出部210は、メモリー領域不足に起因するデットロックを検出する。この場合、デットロック検出部210は、後述のたとえばタスクA〜Cの処理が停止したことを検出する。なお、デットロック検出部210は、たとえば後述のRAM206のワーク領域の空き領域が特定領域以下となったとき、デットロックを検出してもよい。共有資源管理部211は、詳細は後述するが、後述の管理テーブル230を有し、RAM206のメモリー領域の管理などを行う。
Panel
HDD制御部212は、HDD224に対するデータの読み出し及び書き込みなどを制御する。システム制御部213(第2のシステム制御部)は、各部の連携動作などを制御する。また、システム制御部213は、デットロック検出部210がデットロックを検出すると、ネットワーク制御部205を介し、それぞれのユーザー端末300に対し、救援要求を送信する。また、システム制御部213は、いずれかのユーザー端末300からの応答に従い、共有資源管理部211が管理する後述の管理テーブル230を参照し、RAM206に記憶されたデータの一部を応答の有ったいずれかのユーザー端末300のメモリー(後述のRAM313)に移動させる。このとき、データの一部を記憶しているRAM206のメモリーアドレスも通知する。また、システム制御部213は、画像処理部209での処理の進行状況に応じてRAM206に空き領域が生じると、移動させたデータを受け取り、RAM206に記憶させる。これにより、画像処理部209は、いずれかのユーザー端末300に移動させたデータに対する画像処理を続行させることができる。これにより、メモリー領域不足に起因するデットロックが回避される。
The
次に、図3を参照し、ユーザー端末300の内部構成の概要について説明する。ユーザー端末300は、制御プログラムを実行してユーザー端末300全体の動作を制御する制御部310を備えている。
Next, an outline of the internal configuration of the
制御部310は、社内LANネットワークI/F311、ネットワーク制御部312、RAM313、EEPROM314、共有資源管理部315、システム制御部316を備えている。また、これらは、データバス317に接続されている。
The
ネットワーク制御部312は、社内LANネットワークI/F311を介し、社内LAN400経由でのデータなどの送受信の制御を行う。RAM313は、プログラムを実行するためのワークメモリーである。EEPROM314には、各部の動作チェックなどを行う制御プログラムが記憶されている。また、EEPROM314には、アプリケーションプログラムにより実行した動作についてのログ情報なども記憶されている。
The
共有資源管理部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
次に、図4を参照し、MFP100側のRAM206のメモリー領域について説明する。まず、MFP100がたとえばユーザー端末300から受信した印刷データに対する印刷処理を行う場合、画像処理部209が受信した印刷データを、一旦中間形式のデータ(以下、中間データという)に変換する。そして、システム制御部213が変換した中間データをRAM206のメモリー領域に記憶させる。
Next, the memory area of the
ここで、図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
そして、通常では、排他制御により、タスク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
また、システム制御部213は、デットロック検出部210がデットロックを検出すると、社内LAN400経由で全てのユーザー端末300に、メモリー領域不足に起因するデットロックを回避するために、救援要求を送る。そして、ユーザー端末300からの応答が有ると、応答に含まれるRAM313の空き容量を確認し、中間データの一部をユーザー端末300のRAM313に移動させる。
Further, when the
図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
なお、図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
この場合、図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
次に、図6を参照し、共有資源管理部211が管理する管理テーブルについて説明する。まず、共有資源管理部211が管理する管理テーブル230は、たとえば端末ID(identification)の項目231、応答の有無の項目232、空き容量の項目233、移動させた中間データのメモリーアドレスの項目234を有している。なお、共有資源管理部211は、端末IDに紐付けして応答の有無、空き容量、移動させた中間データのメモリーアドレスを管理している。
Next, a management table managed by the shared
ここで、共有資源管理部211は、端末IDの項目231に、それぞれのユーザー端末300を識別するための識別子を書き込む。また、共有資源管理部211は、応答の有無の項目232に、MFP100からの救援要求に対する有無を書き込む。また、共有資源管理部211は、空き容量の項目233に、応答の有ったユーザー端末300側のRAM313の空き容量を書き込む。また、共有資源管理部211は、移動させた中間データのメモリーアドレスの項目234に、MFP100側のRAM206から移動させた中間データのメモリーアドレスを書き込む。
Here, the shared
また、共有資源管理部211は、MFP100からの救援要求に対するユーザー端末300からの応答が有ったときと、いずれかのユーザー端末300に移動させた中間データを受け取ったとき、管理テーブル230の内容を更新する。この場合、共有資源管理部211は、応答の有無の項目232、空き容量の項目233、移動させた中間データのメモリーアドレスの項目234のそれぞれに書き込んだ内容を削除する。
In addition, when the shared
ちなみに、図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 /
ここで、システム制御部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
この場合、タスク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
さらには、上述したように、処理中である、たとえばタスク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
これにより、タスクCの中間データを受け取ったユーザー端末300側では、RAM313に記憶させたメモリーアドレスと、タスクCの中間データのメモリーアドレス(a4番地からa5番地)とを紐付けて管理することができる。これにより、MFP100側から中間データの返信要求があった場合、RAM313に記憶させたタスクCの中間データを確実に送り返すことができる。
As a result, the
また、システム制御部213は、タスクCの中間データを送った後、図4(b)に示したように、a4番地からa5番地のタスクCの中間データを削除し、開放する。また、システム制御部213は、ユーザー端末300から受け取った中間データを、移動させた中間データのメモリーアドレスの項目234のメモリーアドレスを参照することで、RAM206の元のアドレスに書き込むことができる。
In addition, after sending the task C intermediate data, the
次に、図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
(ステップ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
If the
(ステップ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
In contrast, if the memory address is written in the
That is, as shown in FIG. 6, when the addresses a4 to a5, which are memory addresses, are written in the
(ステップS103)
画像処理部209のタスクAが処理を続行する。
(Step S103)
Task A of the
(ステップS104)
システム制御部213は、画像処理部209による処理が終了したかどうかを判断する。この場合、システム制御部213は、画像処理部209からのタスクA〜Cによる処理の終了の通知があると、画像処理部209による処理が終了したと判断する(ステップS104:Yes)。これに対し、システム制御部213は、画像処理部209からのタスクA〜Cによる処理の終了の通知がなければ、画像処理部209による処理が終了していないと判断し(ステップS104:No)、ステップS101に移行する。
(Step S104)
The
(ステップS105)
システム制御部213は、デットロック検出部210がデットロックを検出すると、社内LAN400を介して全てのユーザー端末300に対し救援要求を送る。
(Step S105)
When the
(ステップS106)
システム制御部213は、ユーザー端末300からの応答を待ち(ステップS106:No)、ユーザー端末300からの応答があると(ステップS106:Yes)、ステップS107に移行する。
(Step S106)
The
(ステップ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
In this case, when there is a response from the
In addition, the shared
(ステップ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
Here, it is assumed that the
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
Then, for example, when the response of the
(ステップS109)
システム制御部213は、図4(b)に示したように、RAM206の移動させたタスクCが受け持つa4番地〜a5番地までのデータ(中間データ)を削除する。これにより、ワーク領域をa4番地〜a5番地までの分だけ開放(増やす)することができる。
(Step S109)
As shown in FIG. 4B, the
(ステップS110)
画像処理部209は、開放されたメモリー領域を使用し、タスクAの処理を続行する。これにより、タスクAの処理中でのワーク領域の不足が解消され、メモリー領域不足に起因するデットロックが回避される。
(Step S110)
The
(ステップ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
(ステップS112)
システム制御部213は、共有資源管理部211が管理する管理テーブル230を参照し、データ(中間データ)を移動させた端末IDがA002のユーザー端末300に、データ(中間データ)の返信要求を送る。
この場合、返信要求には、メモリーアドレスである、a4番地〜a5番地までのデータ(中間データ)であることを示す情報を含ませる。
これにより、返信要求を受け取ったユーザー端末300側では、RAM313に記憶させたメモリーアドレスと、タスクCのデータ(中間データ)のメモリーアドレス(a4番地からa5番地)とを紐付けて管理しているので、RAM313に記憶させたタスクCのデータ(中間データ)を確実に送り返すことができる。
(Step S112)
The
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
(ステップS113)
システム制御部213は、データ(中間データ)を受け取るまで待ち(ステップS113:No)、データ(中間データ)を受け取った場合(ステップS113:Yes)、ステップS114に移行する。
(Step S113)
The
(ステップS114)
システム制御部213は、データ(中間データ)を受け取ると、共有資源管理部211に対し、図6に示した管理テーブル230の内容を更新させる。
この場合、共有資源管理部211は、管理テーブル230の応答の有無の項目232、空き容量の項目233、移動させたデータ(中間データ)のメモリーアドレスの項目234のそれぞれに書き込んだ内容を削除する。
(Step S114)
Upon receiving the data (intermediate data), the
In this case, the shared
(ステップS115)
システム制御部213は、受け取ったデータ(中間データ)を、メモリー領域に書き込む。この場合、システム制御部213は、受け取ったデータ(中間データ)を、RAM260の元のメモリーアドレスである、a4番地〜a5番地に書き込み、ステップS103に移行する。
これにより、画像処理部209は、タスクB及びタスクCによる処理を続行することができる。
(Step S115)
The
As a result, the
このように、本実施形態では、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
なお、本実施形態では、図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
この場合、図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
すなわち、管理端末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
また、図1に示したように、メモリー共有システムが、画像形成装置であるMFP100、とユーザー端末300とを備えている場合として説明したが、社内LAN400を介してデータの送受信ができる他の端末を備えてもよい。他の端末としては、たとえばスマートホンなどの携帯端末、プリンター、サーバーなどであってもよい。
In addition, as illustrated in FIG. 1, the memory sharing system has been described as including the
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
205, 312, 512
207, 314, 514 EEPROM
208 Panel
230 Management tables 231 to 234
500 Management terminal
Claims (7)
第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.
前記第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.
前記第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のメモリーに空き領域が生じると、前記第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.
前記画像形成装置を管理する管理端末と、
第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のメモリーと第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のシステム制御部により、画像形成装置側のデットロック検出部がデットロックを検出した際、前記管理テーブルを参照し、画像形成装置側の第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.
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)
| 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 |
-
2015
- 2015-10-21 JP JP2015207427A patent/JP2017079003A/en active Pending
Cited By (1)
| 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 |