Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6953994B2 - Simulation device, image forming device, device setting method and device setting program - Google Patents
[go: Go Back, main page]

JP6953994B2 - Simulation device, image forming device, device setting method and device setting program - Google Patents

Simulation device, image forming device, device setting method and device setting program Download PDF

Info

Publication number
JP6953994B2
JP6953994B2 JP2017203299A JP2017203299A JP6953994B2 JP 6953994 B2 JP6953994 B2 JP 6953994B2 JP 2017203299 A JP2017203299 A JP 2017203299A JP 2017203299 A JP2017203299 A JP 2017203299A JP 6953994 B2 JP6953994 B2 JP 6953994B2
Authority
JP
Japan
Prior art keywords
unit
setting
executed
image forming
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2017203299A
Other languages
Japanese (ja)
Other versions
JP2019080097A (en
Inventor
三縞 信広
信広 三縞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Inc
Original Assignee
Konica Minolta 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 Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2017203299A priority Critical patent/JP6953994B2/en
Publication of JP2019080097A publication Critical patent/JP2019080097A/en
Application granted granted Critical
Publication of JP6953994B2 publication Critical patent/JP6953994B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)

Description

この発明は、シミュレート装置、画像形成装置、装置設定方法および装置設定プログラムに関し、特に、ハードウェア資源を用いてまたはプログラムを実行することにより処理を実行する画像形成装置、その画像形成装置を設定するシミュレート装置、画像形成装置またはシミュレート装置で実行される装置設定方法および装置設定プログラムに関する。 The present invention relates to a simulating device, an image forming apparatus, an apparatus setting method and an apparatus setting program, and in particular, sets an image forming apparatus which executes processing using hardware resources or by executing a program, and an image forming apparatus thereof. The present invention relates to a simulating device, an image forming device, or a device setting method and a device setting program executed by the simulating device.

近年、複合機(以下「MFP」という)で代表される画像形成装置は、画像を処理する機能を備えており、その画像処理を実行中にエラーが発生する場合がある。この場合におけるエラーは、MFPが備えるハードウェア資源で発生する不具合が原因の場合がある。ハードウェア資源で不具合が発生する場合には、その不具合の発生したハードウェア資源を、交換するなどして修理する必要がある。ハードウェア資源が交換されるまでの間に、故障していないハードウェア資源が存在するにも拘わらず、MFPを使用できなくなってしまう場合があるといった問題がある。 In recent years, an image forming apparatus represented by a multifunction device (hereinafter referred to as "MFP") has a function of processing an image, and an error may occur during the execution of the image processing. The error in this case may be caused by a defect that occurs in the hardware resource of the MFP. When a problem occurs in a hardware resource, it is necessary to replace the hardware resource in which the problem occurs and repair it. Before the hardware resources are replaced, there is a problem that the MFP may become unusable even though there are hardware resources that have not failed.

なお、特開2012−203694号公報には、画像形成装置から取得した不具合情報に基づき、不具合が発生した画像形成装置が有する設備及び制御プログラムの組み合わせを不具合の内容ごとに分け、各々の制御プログラムとの組み合わせに含まれる設備のうち、第1の閾値以上の数の組み合わせに含まれる設備を特定し、特定された設備と各々の制御プログラムとの組み合わせのうち、画像形成装置において不具合が発生した数が第2の閾値以上である組み合わせを、不具合の内容ごとに特定するサーバー装置が記載されている。このサーバー装置によれば、不具合が発生した数が第2の閾値以上である組み合わせを、画像形成装置において不具合を発生させる可能性が高いソフトウェアとハードウェアの組み合わせとして特定する。しかしながら、設備に不具合が発生した場合にその設備を用いた処理を実行することができない。
特開2012−203694号公報
In Japanese Patent Application Laid-Open No. 2012-203649, based on the defect information acquired from the image forming apparatus, the combination of the equipment and the control program possessed by the image forming apparatus in which the defect has occurred is divided according to the content of the defect, and each control program is provided. Among the equipment included in the combination with, the equipment included in the number of combinations equal to or more than the first threshold value was specified, and among the combinations of the specified equipment and each control program, a problem occurred in the image forming apparatus. A server device that identifies a combination in which the number is equal to or greater than the second threshold value for each content of the defect is described. According to this server device, a combination in which the number of defects occurring is equal to or greater than the second threshold value is specified as a combination of software and hardware that is likely to cause a defect in the image forming apparatus. However, when a problem occurs in the equipment, processing using the equipment cannot be executed.
Japanese Unexamined Patent Publication No. 2012-203964

この発明は上述した問題点を解決するためになされたもので、この発明の目的の一つは、ハードウェア資源に不具合のある画像形成装置を、少なくとも一部の処理を実行可能な状態に設定することが可能なシミュレート装置を提供することである。 The present invention has been made to solve the above-mentioned problems, and one of the purposes of the present invention is to set an image forming apparatus having a defect in hardware resources so that at least a part of the processing can be performed. It is to provide a simulation device which can be done.

この発明の他の目的は、ハードウェア資源に不具合が発生した状態でジョブを実行しても許容条件を満たすことが可能な画像形成装置を提供することである。 Another object of the present invention is to provide an image forming apparatus capable of satisfying an allowable condition even if a job is executed in a state where a defect occurs in a hardware resource.

この発明のさらに他の目的は、ハードウェア資源に不具合のある画像形成装置を、少なくとも一部の処理を実行可能な状態に設定することが可能な装置設定方法を提供することである。 Still another object of the present invention is to provide an apparatus setting method capable of setting an image forming apparatus having a defect in hardware resources to a state in which at least a part of processing can be executed.

この発明の他の目的は、ハードウェア資源に不具合が発生した状態でジョブを実行しても許容条件を満たすことが可能な装置設定方法を提供することである。 Another object of the present invention is to provide a device setting method capable of satisfying the allowable condition even if a job is executed in a state where a defect occurs in a hardware resource.

この発明のさらに他の目的は、ハードウェア資源に不具合のある画像形成装置を、少なくとも一部の処理を実行可能な状態に設定することが可能な装置設定プログラムを提供することである。 Still another object of the present invention is to provide an apparatus setting program capable of setting an image forming apparatus having a defect in hardware resources to a state in which at least a part of processing can be executed.

この発明の他の目的は、ハードウェア資源に不具合が発生した状態でジョブを実行しても許容条件を満たすことが可能な装置設定プログラムを提供することである。 Another object of the present invention is to provide a device setting program capable of satisfying the allowable condition even if a job is executed in a state where a defect occurs in a hardware resource.

この発明は上述した問題点を解決するためになされたもので、この発明のある局面によれば、シミュレート装置は、画像形成装置が有するハードウェア資源に不具合が発生する場合に、画像形成装置から受信されるエラー情報で特定されるハードウェア資源に対応するエミュレーターをエラー情報に含まれる故障個所が故障した状態に設定することにより画像形成装置をシミュレートするシミュレート手段と、シミュレート手段を制御して、シミュレート手段が画像形成装置をシミュレートする仮想装置にジョブを実行させる仮想実行制御手段と、仮想装置で実行可能な状態に設定されている複数のプログラムのうちから仮想装置がジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの組を設定組に決定する設定組決定手段と、決定された設定組に含まれる1以上のプログラムのみを画像形成装置が実行可能な状態となるように画像形成装置を制御する設定制御手段と、を備える。 The present invention has been made to solve the above-mentioned problems, and according to a certain aspect of the present invention, the simulation device is an image forming apparatus when a defect occurs in the hardware resources of the image forming apparatus. The simulator means for simulating the image forming apparatus by setting the emulator corresponding to the hardware resource specified by the error information received from the error information to the state where the failure part included in the error information has failed, and the simulating means. The virtual device is a job from a virtual execution control means that controls and causes the virtual device that simulates the image forming device to execute a job, and a plurality of programs that are set to be executable by the virtual device. Even if A setting control means for controlling the image forming apparatus so as to be in a possible state is provided.

この局面に従えば、画像形成装置が有するハードウェア資源に不具合が発生する場合に、仮想装置に実行可能に設定されている複数のプログラムのうちから仮想装置がジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの組が設定組に決定され、設定組に含まれる1以上のプログラムのみが画像形成装置により実行される。このため、画像形成装置は、ハードウェア資源に不具合が発生した状態でジョブを実行しても許容条件を満たすことができる。その結果、ハードウェア資源に不具合のある画像形成装置を、少なくとも一部の処理を実行可能な状態に設定することが可能なシミュレート装置を提供することができる。 According to this aspect, when a problem occurs in the hardware resources of the image forming apparatus, it is predetermined even if the virtual apparatus executes a job from among a plurality of programs set to be executable in the virtual apparatus. A set of one or more programs satisfying the permissible conditions is determined as a setting set, and only one or more programs included in the setting set are executed by the image forming apparatus. Therefore, the image forming apparatus can satisfy the allowable condition even if the job is executed in a state where a defect occurs in the hardware resource. As a result, it is possible to provide a simulation device capable of setting an image forming device having a defect in hardware resources to a state in which at least a part of processing can be executed.

好ましくは、設定組決定手段は、ハードウェア資源のうち画像形成装置にインストールされている複数の既定プログラムを画像形成装置が実行するために用いる揮発性メモリに不具合が発生する場合、複数の既定プログラムのうちから揮発性メモリの有効な領域のみを用いて画像形成装置が実行可能な1以上のプログラムを実行可能な状態に仮想装置を設定する。 Preferably, setting-group determination means when a malfunction in the volatile memory Ru used for the image forming apparatus a plurality of default program installed to execute the image forming apparatus of the hardware resources occurs, a plurality of setting the virtual device image forming apparatus executable one or more programs in executable state by using only valid region if we volatile memory of the default program.

この局面に従えば、ハードウェア資源のうち揮発性メモリに不具合が発生する場合、複数の既定プログラムのうちから揮発性メモリの有効な領域のみを用いて画像形成装置が実行可能な1以上のプログラムを実行可能な状態に仮想装置を設定する。このため、揮発性メモリに不具合が発生する画像形成装置を、少なくとも一部の処理を実行可能な状態に設定することができる。 According to this aspect, when a malfunction occurs in the volatile memory Chi sac hardware resources, an image forming apparatus capable of executing using only valid region of one found volatile memory of the plurality of default program Set the virtual device so that one or more programs can be executed. Therefore, the image forming apparatus of the defect in the volatile memory can be set to a state capable of executing at least part of the process.

好ましくは、設定組決定手段は、ハードウェア資源のうち不具合が検出されたハードウェア資源で実行される処理を定めた代替プログラムが存在する場合、過去に実行されたことのある処理に対して優先度を決定し、複数の既定プログラムおよび代替プログラムのうちから優先度に基づいて選択された処理を定めかつ揮発性メモリの有効な領域のみを用いて画像形成装置で実行可能な1以上のプログラムを実行可能な状態に仮想装置を設定する。 Preferably, the setting set determining means takes precedence over the processing that has been executed in the past when there is an alternative program that defines the processing to be executed in the hardware resource in which the defect is detected among the hardware resources. One or more programs that determine the degree, determine the process selected based on the priority from multiple default programs and alternative programs, and can be executed by the image forming apparatus using only the effective area of the volatile memory. Set the virtual device to an executable state.

この局面に従えば、不具合が検出されたハードウェア資源で実行される処理を定めた代替プログラムが存在する場合、複数の既定プログラムおよび代替プログラムのうちから揮発性メモリの有効な領域のみを用いて画像形成装置で実行可能な1以上のプログラムを実行可能な状態に仮想装置を設定する。このため、ハードウェア資源に不具合が発生する画像形成装置を、少なくとも一部の処理を実行可能な状態に設定することができる。 According to this aspect, if the alternative program that defines processing to be executed by the defect is detected hardware resources are present, only the effective area of either et volatile memory of a plurality of predetermined programs and alternative programs The virtual device is set so that one or more programs that can be executed by the image forming device can be executed by using the virtual device. Therefore, the image forming apparatus in which a defect occurs in the hardware resource can be set to a state in which at least a part of the processing can be executed.

好ましくは、設定組決定手段は、画像形成装置で過去に実行された回数の多い順に処理を選択し、選択された処理に対応するプログラムを実行可能な状態に仮想装置を設定する。 Preferably, the setting set determining means selects the processes in descending order of the number of times the image forming apparatus has been executed in the past, and sets the virtual device in a state in which the program corresponding to the selected processes can be executed.

この局面に従えば、画像形成装置で過去に実行された回数の多い処理に対応するプログラムを実行可能な状態に仮想装置を設定するので、ハードウェア資源に不具合が発生する画像形成装置を、過去に実行された回数の多い処理を実行可能な状態に設定することができる。 According to this aspect, the virtual device is set in a state in which a program corresponding to a process that has been executed many times in the past can be executed by the image forming device. It is possible to set the process that has been executed many times to the state in which it can be executed.

好ましくは、設定組決定手段は、過去に実行されたことのある処理に対して優先度を決定し、優先度に基づいて選択された処理を定めた代替プログラムを実行可能な状態に仮想装置を設定する。 Preferably, the setting set determining means determines the priority for the processes that have been executed in the past, and puts the virtual device in a state in which an alternative program that defines the selected process based on the priority can be executed. Set.

この局面に従えば、不具合の発生したハードウェア資源で実行される処理を実行させることができる。 According to this aspect, it is possible to execute the process executed by the hardware resource in which the defect has occurred.

好ましくは、設定組決定手段は、仮想装置で実行可能な状態に設定されている複数のプログラムのうちから、過去に実行されたことのある処理に対して優先度を決定し、優先度の高い順に処理を1つずつ選択してプログラムをインストールし、テストジョブを仮想装置に実行させ、動作状態が許容条件を満たす場合に、プログラム識別情報を含む追加指示を出力し、追加指示に含まれるインストールプログラムの組を設定組に決定する。 Preferably, the setting set determining means determines the priority for the processing that has been executed in the past from among the plurality of programs set in the state in which the virtual device can be executed, and has a high priority. The program is installed by selecting the processes one by one in order, the test job is executed by the virtual device, and when the operating status satisfies the allowable condition, the additional instruction including the program identification information is output and the installation included in the additional instruction is performed. Determine the program set as the setting set.

この局面に従えば、過去に実行されたことのある1以上の処理をそれぞれ定める1以上のプログラムを含む組が設定組に決定されるので、画像処理装置で実行される確率の高い処理を実行可能な状態にすることができる。 According to this aspect, a set including one or more programs that define one or more processes that have been executed in the past is determined as the setting set, so that the processing with a high probability of being executed by the image processing device is executed. It can be in a possible state.

好ましくは、画像形成装置において過去に実行された回数の多い処理を定めるプログラムから順に実行可能な状態に仮想装置を設定するインストール手段をさらに備える。 Preferably, the image forming apparatus further includes an installation means for setting the virtual device in a state in which the virtual device can be executed in order from the program that determines the most frequently executed processes in the past.

この局面に従えば、過去に実行された回数の多い処理を定めるプログラムから順に実行可能な状態に設定するので、画像処理装置で実行された頻度の高い処理を優先して実行可能な状態にすることができる。 According to this aspect, the programs that determine the processes that have been executed most frequently in the past are set to the executable state in order, so the frequently executed processes in the image processing device are prioritized and made executable. be able to.

好ましくは、画像形成装置において過去に実行された回数の少ない処理を定めるプログラムから順に実行不可能な状態に仮想装置を設定するアンインストール手段をさらに備える。 Preferably, the image forming apparatus further includes an uninstall means for setting the virtual device in an unexecutable state in order from a program that determines a process that has been executed less frequently in the past.

この局面に従えば、過去に実行された回数の少ない処理を定めるプログラムから順に実行不可能な状態に設定するので、画像処理装置で実行された頻度の高い処理を優先して実行可能な状態にすることができる。 According to this aspect, the programs that determine the processes that have been executed less frequently in the past are set to the unexecutable state in order, so the frequently executed processes in the image processing device are prioritized and executed. can do.

好ましくは、画像形成装置に設定組に含まれる1以上のプログラムのみを実行させる前に、画像形成装置で実行可能な状態に設定されているプログラムを退避プログラムとして記憶する退避手段と、画像形成装置においてハードウェア資源に発生した不具合が解消された後に、退避プログラムを実行可能な状態に画像形成装置を設定する復元手段と、をさらに備える。 Preferably, before causing the image forming apparatus to execute only one or more programs included in the setting set, a saving means for storing the programs set in the image forming apparatus in an executable state as a saving program, and an image forming apparatus. Further, it is provided with a restoration means for setting the image forming apparatus in a state in which the save program can be executed after the trouble that has occurred in the hardware resource is solved.

この局面に従えば、画像形成装置に設定組に含まれる1以上のプログラムのみを実行させる前に、画像形成装置で実行可能な状態に設定されているプログラムが退避プログラムとして記憶され、ハードウェア資源に発生した不具合が解消された後に、退避プログラムが画像形成装置で実行可能な状態に設定される。このため、画像形成装置を、ハードウェア資源に発生した不具合が解消された後に、不具合が発生する前の状態に戻すことができる。 According to this aspect, before the image forming apparatus is made to execute only one or more programs included in the setting set, the programs set to be executable by the image forming apparatus are stored as a save program, and the hardware resources are stored. After the problem that occurred in is resolved, the save program is set to a state that can be executed by the image forming apparatus. Therefore, the image forming apparatus can be returned to the state before the defect occurs after the defect that occurred in the hardware resource is solved.

この発明の他の局面によれば、画像形成装置は、ハードウェア資源に不具合が発生する場合に、実行可能な状態に設定されている複数のプログラムのうちからジョブを実行する間の動作状態が予め定められた許容条件を満たす1以上のプログラムの組を設定組に決定する設定組決定手段と、決定された設定組に含まれる1以上のプログラムのみを実行可能な状態に設定する設定手段と、を備える。 According to another aspect of the present invention, when a hardware resource malfunction occurs, the image forming apparatus has an operating state during execution of a job from among a plurality of programs set to be executable. A setting means for determining a set of one or more programs satisfying a predetermined allowable condition as a setting set, and a setting means for setting only one or more programs included in the determined setting set in an executable state. , Equipped with.

この局面に従えば、ハードウェア資源に不具合が発生する場合に、実行可能な状態に設定されている複数のプログラムのうちからジョブを実行する間の動作状態が許容条件を満たす1以上のプログラムの組が設定組に決定され、設定組に含まれる1以上のプログラムのみが実行可能な状態に設定される。このため、ハードウェア資源に不具合が発生した状態でジョブを実行しても許容条件を満たすことが可能な画像形成装置を提供することができる。 According to this aspect, when a problem occurs in a hardware resource, one or more programs whose operating state during execution of a job satisfies the allowable condition from among a plurality of programs set to be executable. The set is determined as the setting set, and only one or more programs included in the setting set are set to be executable. Therefore, it is possible to provide an image forming apparatus capable of satisfying the allowable condition even if the job is executed in a state where a defect occurs in the hardware resource.

好ましくは、設定組決定手段は、ハードウェア資源のうちインストールされている複数の既定プログラムを実行するために用いる不揮発性メモリに不具合が発生する場合、複数の既定プログラムのうちから不揮発性メモリの有効な領域のみを用いて画像形成装置が実行可能な1以上のプログラムを実行可能な状態に設定する。 Preferably, the setting set determining means enables the non-volatile memory among the plurality of default programs when the non-volatile memory used for executing the plurality of installed default programs in the hardware resources fails. One or more programs that can be executed by the image forming apparatus are set in a state in which they can be executed by using only various regions.

この局面に従えば、ハードウェア資源のうち不揮発性メモリに不具合が発生する場合、複数の既定プログラムのうちから不揮発性メモリの有効な領域のみを用いて実行可能な1以上のプログラムを実行可能な状態に設定する。このため、不揮発性メモリに不具合が発生する場合に、少なくとも一部の処理を実行可能な状態に設定することができる。 According to this aspect, when a problem occurs in the non-volatile memory among the hardware resources, it is possible to execute one or more programs that can be executed using only the effective area of the non-volatile memory from among a plurality of default programs. Set to state. Therefore, when a problem occurs in the non-volatile memory, it is possible to set a state in which at least a part of the processing can be executed.

好ましくは、設定組決定手段は、ハードウェア資源のうち不具合が検出されたハードウェア資源で実行される処理を定めた代替プログラムが存在する場合、複数の既定プログラムおよび代替プログラムのうちから不揮発性メモリの有効な領域のみを用いて実行可能な1以上のプログラムを実行可能な状態に設定する。 Preferably, the setting set determining means is a non-volatile memory among a plurality of default programs and alternative programs when there is an alternative program that defines the processing to be executed in the hardware resource in which the defect is detected among the hardware resources. Set one or more programs that can be executed using only the valid area of.

この局面に従えば、不具合が検出されたハードウェア資源で実行される処理を定めた代替プログラムが存在する場合、複数の既定プログラムおよび代替プログラムのうちから不揮発性メモリの有効な領域のみを用いて画像形成装置で実行可能な1以上のプログラムを実行可能な状態に仮想装置を設定する。このため、ハードウェア資源に不具合が発生する場合に、少なくとも一部の処理を実行可能な状態に設定することができる。 According to this aspect, if there is an alternative program that defines the processing to be executed on the hardware resource in which the defect was detected, only the effective area of the non-volatile memory is used from among the multiple default programs and the alternative programs. Set the virtual device so that one or more programs that can be executed by the image forming device can be executed. Therefore, when a problem occurs in the hardware resource, at least a part of the processing can be set to be executable.

好ましくは、設定組決定手段は、過去に実行された回数の多い処理に対応するプログラムを実行可能な状態に設定する。 Preferably, the setting set determining means sets the program corresponding to the process executed many times in the past into an executable state.

この局面に従えば、過去に実行された回数の多い処理に対応するプログラムを実行可能な状態に設定するので、ハードウェア資源に不具合が発生する場合に、過去に実行された回数の多い処理を実行可能な状態に設定することができる。 According to this aspect, the program corresponding to the process executed many times in the past is set to the executable state, so that when a problem occurs in the hardware resource, the process executed many times in the past is executed. It can be set to an executable state.

好ましくは、設定組決定手段は、ハードウェア資源で実行される処理を定めた代替プログラムを実行可能な状態に設定する。 Preferably, the setting set determining means sets an alternative program that defines the processing to be executed by the hardware resource into an executable state.

この局面に従えば、不具合の発生したハードウェア資源で実行される処理を実行させることができる。 According to this aspect, it is possible to execute the process executed by the hardware resource in which the defect has occurred.

好ましくは、設定組決定手段は、過去に実行されたことのある1以上の処理をそれぞれ定める1以上のプログラムを含む組を設定組に決定する。 Preferably, the setting set determining means determines a set including one or more programs each defining one or more processes that have been executed in the past as the setting set.

この局面に従えば、過去に実行されたことのある1以上の処理をそれぞれ定める1以上のプログラムを最も多く含む組が設定組に決定されるので、実行される確率の高い処理を実行可能な状態にすることができる。 According to this aspect, the set containing the most one or more programs that define one or more processes that have been executed in the past is determined as the setting set, so that the processes with high probability of being executed can be executed. Can be in a state.

好ましくは、過去に実行された回数の多い処理を定めるプログラムから順に実行可能な状態に設定するインストール手段をさらに備える。 Preferably, the installation means for setting the program to be able to execute in order from the program that defines the process that has been executed most frequently in the past is further provided.

この局面に従えば、過去に実行された回数の多い処理を定めるプログラムから順に実行可能な状態に設定するので、過去に実行された頻度の高い処理を優先して実行可能な状態にすることができる。 According to this aspect, the program that defines the processes that have been executed most frequently in the past is set to the executable state in order, so it is possible to give priority to the processes that have been executed frequently in the past so that they can be executed. can.

好ましくは、過去に実行された回数の少ない処理を定めるプログラムから順に実行不可能な状態に設定するアンインストール手段をさらに備える。 Preferably, the uninstallation means for setting the non-executable state in order from the program that defines the process that has been executed less frequently in the past is further provided.

この局面に従えば、過去に実行された回数の少ない処理を定めるプログラムから順に実行不可能な状態に設定するので、過去に実行された頻度の高い処理を優先して実行可能な状態にすることができる。 According to this aspect, the programs that define the processes that have been executed less frequently in the past are set to the unexecutable state in order, so the processes that have been executed frequently in the past are prioritized and made executable. Can be done.

好ましくは、設定組に含まれる1以上のプログラムのみを実行可能な状態に設定する前の段階で、実行可能な状態に設定されているプログラムを退避プログラムとして記憶する退避手段と、ハードウェア資源に発生した不具合が解消された後に、退避プログラムを実行可能な状態に設定する復元手段と、をさらに備える。 Preferably, as a backup means for storing the program set in the executable state as an executable program and a hardware resource before setting only one or more programs included in the setting set to the executable state. It is further provided with a restoration means for setting the save program to an executable state after the trouble that has occurred is resolved.

この局面に従えば、設定組に含まれる1以上のプログラムのみを実行可能な状態に設定する前の段階で実行可能な状態に設定されているプログラムが退避プログラムとして記憶され、ハードウェア資源に発生した不具合が解消された後に、退避プログラムが実行可能な状態に設定される。このため、ハードウェア資源に発生した不具合が解消された後に、不具合が発生する前の状態に戻すことができる。 According to this aspect, the program set in the executable state before setting only one or more programs included in the setting set to the executable state is stored as a save program and generated in the hardware resource. After the problem is resolved, the save program is set to the executable state. Therefore, after the defect that has occurred in the hardware resource has been resolved, it is possible to return to the state before the defect occurred.

この発明のさらに他の局面によれば、装置設定方法は、像形成装置が有するハードウェア資源に不具合が発生する場合に、画像形成装置から受信されるエラー情報で特定されるハードウェア資源に対応するエミュレーターをエラー情報に含まれる故障個所が故障した状態に設定することにより画像形成装置をシミュレートするシミュレートステップと、シミュレートステップにおいて画像形成装置をシミュレートする仮想装置にジョブを実行させる仮想実行制御ステップと、仮想装置で実行可能な状態に設定されている複数のプログラムのうちから仮想装置がジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの組を設定組に決定する設定組決定ステップと、決定された設定組に含まれる1以上のプログラムのみを画像形成装置が実行可能な状態となるように画像形成装置を制御する設定制御ステップと、をサーバーに実行させる。 According to still another aspect of the present invention, the apparatus setting method corresponds to the hardware resource specified by the error information received from the image forming apparatus when a defect occurs in the hardware resource of the image forming apparatus. A simulation step that simulates an image forming apparatus by setting the emulator to be in a state where the faulty part included in the error information has failed, and a virtual device that simulates the image forming apparatus in the simulation step to execute a job. setting an execution control step, a set of a plurality of allowable satisfy one or more programs that the virtual device is a predetermined even run a job from among the program that is set to be executable in the virtual device set The setting control step for determining the setting set and the setting control step for controlling the image forming apparatus so that the image forming apparatus can execute only one or more programs included in the determined setting set are executed on the server. Let me.

この局面に従えば、ハードウェア資源に不具合のある画像形成装置を、少なくとも一部の処理を実行可能な状態に設定することが可能な装置設定方法を提供することができる。 According to this aspect, it is possible to provide an apparatus setting method capable of setting an image forming apparatus having a defect in hardware resources to a state in which at least a part of processing can be executed.

この発明のさらに他の局面によれば、装置設定方法は、ハードウェア資源に不具合が発生する場合に、実行可能な状態に設定されている複数のプログラムのうちからジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの組を設定組に決定する設定組決定ステップと、決定された設定組に含まれる1以上のプログラムのみを実行可能な状態に設定する設定ステップと、を画像形成装置に実行させる。 According to still another aspect of the present invention, the device setting method is predetermined even if a job is executed from a plurality of programs set in an executable state when a problem occurs in a hardware resource. A setting set determination step for determining a set of one or more programs satisfying the specified allowable conditions as a setting set, and a setting step for setting only one or more programs included in the determined setting set in an executable state. Let the image forming device execute.

この局面に従えば、ハードウェア資源に不具合が発生した状態でジョブを実行しても許容条件を満たすことが可能な装置設定方法を提供することができる。 According to this aspect, it is possible to provide a device setting method capable of satisfying the allowable condition even if the job is executed in a state where a defect occurs in the hardware resource.

この発明のさらに他の局面によれば、装置設定プログラムは、像形成装置が有するハードウェア資源に不具合が発生する場合に、画像形成装置から受信されるエラー情報で特定されるハードウェア資源に対応するエミュレーターをエラー情報に含まれる故障個所が故障した状態に設定することにより画像形成装置をシミュレートするシミュレートステップと、シミュレートステップにおいて画像形成装置をシミュレートする仮想装置にジョブを実行させる仮想実行制御ステップと、仮想装置で実行可能な状態に設定されている複数のプログラムのうちから仮想装置がジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの組を設定組に決定する設定組決定ステップと、決定された設定組に含まれる1以上のプログラムのみを画像形成装置が実行可能な状態となるように画像形成装置を制御する設定制御ステップと、をコンピューターに実行させる。 According to still another aspect of the present invention, the device setting program corresponds to the hardware resource specified by the error information received from the image forming device when a defect occurs in the hardware resource of the image forming device. A simulation step that simulates an image forming device by setting the emulator to be in a state where the faulty part included in the error information has failed, and a virtual device that simulates the image forming device in the simulation step to execute a job. setting an execution control step, a set of a plurality of allowable satisfy one or more programs that the virtual device is a predetermined even run a job from among the program that is set to be executable in the virtual device set A setting control step for determining the setting set and a setting control step for controlling the image forming apparatus so that the image forming apparatus can execute only one or more programs included in the determined setting set are executed on the computer. Let me.

この局面に従えば、ハードウェア資源に不具合のある画像形成装置を、少なくとも一部の処理を実行可能な状態に設定することが可能な装置設定プログラムを提供することができる。 According to this aspect, it is possible to provide an apparatus setting program capable of setting an image forming apparatus having a defect in hardware resources to a state in which at least a part of processing can be executed.

この発明のさらに他の局面によれば、装置設定プログラムは、ハードウェア資源に不具合が発生する場合に、実行可能な状態に設定されている複数のプログラムのうちからジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの組を設定組に決定する設定組決定ステップと、決定された設定組に含まれる1以上のプログラムのみを実行可能な状態に設定する設定ステップと、を画像形成装置を制御するコンピューターに実行させる。 According to still another aspect of the present invention, the device setting program is predetermined even if a job is executed from a plurality of programs set in an executable state when a problem occurs in a hardware resource. A setting set determination step for determining a set of one or more programs satisfying the specified allowable conditions as a setting set, and a setting step for setting only one or more programs included in the determined setting set in an executable state. Let the computer that controls the image forming device execute it.

この局面に従えば、ハードウェア資源に不具合が発生した状態でジョブを実行しても許容条件を満たすことが可能な装置設定プログラムを提供することができる。 According to this aspect, it is possible to provide a device setting program capable of satisfying the allowable condition even if the job is executed in a state where a defect occurs in the hardware resource.

本発明の実施の形態の一つにおける情報処理システムの全体概要の一例を示す図である。It is a figure which shows an example of the whole outline of the information processing system in one of the Embodiments of this invention. 本実施の形態におけるサーバーのハードウェア構成の概要の一例を示すブロック図である。It is a block diagram which shows an example of the outline of the hardware configuration of the server in this embodiment. 本実施の形態におけるMFPのハードウェア構成の概要の一例を示すブロック図である。It is a block diagram which shows an example of the outline of the hardware configuration of the MFP in this embodiment. 本実施の形態におけるメイン基板の詳細な構成の一例を示すブロック図である。It is a block diagram which shows an example of the detailed structure of the main board in this embodiment. 第1の実施の形態におけるサーバーが備えるシミュレータの概要の一例を示す図である。It is a figure which shows an example of the outline of the simulator provided with the server in 1st Embodiment. 第1の実施の形態におけるMFPが備えるCPUが有する機能の一例を示すブロック図である。It is a block diagram which shows an example of the function which the CPU included in the MFP in 1st Embodiment has. 第1の実施の形態におけるサーバーが備えるCPUが有する機能の一例を示すブロック図である。It is a block diagram which shows an example of the function which the CPU provided in the server in 1st Embodiment has. ハードエラー検出結果の一例を示す図である。It is a figure which shows an example of a hard error detection result. 履歴情報の集計結果の一例を示す図である。It is a figure which shows an example of the aggregation result of the history information. 装置設定処理の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of a device setting process. 仮想装置設定処理の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of a virtual device setting process. 第1の変形例におけるサーバーが備えるCPUが有する機能の一例を示すブロック図である。It is a block diagram which shows an example of the function which the CPU provided in the server in the 1st modification. 第1の変形例における仮想装置設定処理の流れの一例を示す第1のフローチャートである。It is a 1st flowchart which shows an example of the flow of the virtual device setting process in 1st modification. 第1の変形例における仮想装置設定処理の流れの一例を示す第2のフローチャートである。It is a 2nd flowchart which shows an example of the flow of the virtual device setting process in 1st modification.

以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。従ってそれらについての詳細な説明は繰り返さない。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the following description, the same parts are designated by the same reference numerals. Their names and functions are the same. Therefore, detailed explanations about them will not be repeated.

<第1の実施の形態>
図1は、本発明の実施の形態の一つにおける情報処理システムの全体概要の一例を示す図である。図1を参照して、情報処理システム1は、MFP(Multi Function Peripheral)100と、サーバー200と、を含む。
<First Embodiment>
FIG. 1 is a diagram showing an example of an overall outline of an information processing system according to one of the embodiments of the present invention. With reference to FIG. 1, the information processing system 1 includes an MFP (Multifunction Peripheral) 100 and a server 200.

MFP100は、画像形成装置の一例であり、処理対象となるデータを画像処理する画像処理機能、画像データに基づいて用紙などの記録媒体に画像を形成するための画像形成機能を少なくとも備えている。MFP100は、画像処理機能および画像形成機能に加えて、原稿を読み取るための原稿読取機能、およびファクシミリデータを送受信するファクシミリ送受信機能を備えてもよい。 The MFP 100 is an example of an image forming apparatus, and has at least an image processing function for image processing data to be processed and an image forming function for forming an image on a recording medium such as paper based on the image data. In addition to the image processing function and the image forming function, the MFP 100 may include a document reading function for reading a document and a facsimile transmission / reception function for transmitting / receiving facsimile data.

サーバー200は、一般的なコンピューターである。サーバー200およびMFP100それぞれは、ローカルエリアネットワーク(LAN)3に接続される。LAN3に接続されるMFP100およびサーバー200それぞれは、LAN3を介してデータの送受信が可能である。なお、LAN3の接続形態は有線または無線を問わない。なお、LAN3に代えて、公衆交換電話網(Public Switched Telephone Networks)を用いたネットワーク、ワイドエリアネットワーク(WAN)を用いるようにしてもよい。 The server 200 is a general computer. Each of the server 200 and the MFP 100 is connected to the local area network (LAN) 3. Each of the MFP 100 and the server 200 connected to the LAN 3 can send and receive data via the LAN 3. The connection form of LAN3 may be wired or wireless. Instead of LAN3, a network using a public switched telephone network (Public Switched Telephone Networks) or a wide area network (WAN) may be used.

本実施の形態における情報処理システム1において、MFP100が有するハードウェア資源に故障が発生する場合に、サーバー200で、MFP100において発生した故障に対応したソフトウェア構成を決定し、MFPのソフトウェア構成が、決定されたソフトウェア構成となるようにMFP100を設定する。これにより、MFP100が有するハードウェア資源に不具合が生じた場合であっても、MFP100が、少なくとも一部の処理を実行可能となる。 In the information processing system 1 of the present embodiment, when a failure occurs in the hardware resource of the MFP 100, the server 200 determines the software configuration corresponding to the failure occurring in the MFP 100, and the software configuration of the MFP is determined. The MFP 100 is set so that the software configuration is set. As a result, even if a problem occurs in the hardware resources of the MFP 100, the MFP 100 can execute at least a part of the processing.

図2は、本実施の形態におけるサーバーのハードウェア構成の概要の一例を示すブロック図である。図2を参照して、サーバー200は、サーバー200の全体を制御するための中央演算装置(CPU)201と、CPU201が実行するためのプログラムを記憶するROM(Read Only Memory)202と、CPU201の作業領域として使用されるRAM(Random Access Memory)203と、データを不揮発的に記憶するハードディスクドライブ(HDD)204と、CPU201をLAN3に接続する通信部205と、情報を表示する表示部206と、ユーザーの操作の入力を受け付ける操作部207と、外部記憶装置208と、を含む。 FIG. 2 is a block diagram showing an example of an outline of the hardware configuration of the server according to the present embodiment. With reference to FIG. 2, the server 200 includes a central arithmetic unit (CPU) 201 for controlling the entire server 200, a ROM (Read Only Memory) 202 for storing a program to be executed by the CPU 201, and a CPU 201. A RAM (Random Access Memory) 203 used as a work area, a hard disk drive (HDD) 204 for storing data non-volatilely, a communication unit 205 for connecting the CPU 201 to LAN3, a display unit 206 for displaying information, and the like. It includes an operation unit 207 that receives input of a user's operation, and an external storage device 208.

表示部206は、液晶表示装置(LCD)、有機ELD(Electro−Luminescence Display)等の表示装置である。操作部207は、キーボードなどのハードキーである。また、操作部207は、タッチパネルであってもよい。タッチパネルは、表示部206の上面または下面に表示部206に重畳して設けられる。タッチパネルは、表示部206の表示面中でユーザーにより指示された位置を検出する。 The display unit 206 is a display device such as a liquid crystal display (LCD) or an organic ELD (Electro-Luminescence Display). The operation unit 207 is a hard key such as a keyboard. Further, the operation unit 207 may be a touch panel. The touch panel is provided on the upper surface or the lower surface of the display unit 206 so as to be superimposed on the display unit 206. The touch panel detects a position designated by the user on the display surface of the display unit 206.

通信部205は、CPU201をLAN3に接続するためのインターフェースである。通信部205は、TCP(Transmission Control Protocol)またはUDP(User Datagram Protocol)等の通信プロトコルで、LAN3に接続されたMFP100と通信する。なお、通信のためのプロトコルは、特に限定されることはなく、任意のプロトコルを用いることができる。サーバー200に、MFP100のIP(Internet Protocol)アドレスを登録しておくことにより、サーバー200は、MFP100と通信することができ、データの送受信が可能となる。 The communication unit 205 is an interface for connecting the CPU 201 to the LAN 3. The communication unit 205 communicates with the MFP 100 connected to the LAN 3 by a communication protocol such as TCP (Transmission Control Protocol) or UDP (User Datagram Protocol). The protocol for communication is not particularly limited, and any protocol can be used. By registering the IP (Internet Protocol) address of the MFP 100 in the server 200, the server 200 can communicate with the MFP 100 and can send and receive data.

HDD204は、CPU201が実行するプログラム、またはそのプログラムを実行するために必要なデータを記憶する。CPU201は、HDD204に記録されたプログラムを、RAM203にロードして実行する。 The HDD 204 stores a program executed by the CPU 201 or data necessary for executing the program. The CPU 201 loads the program recorded in the HDD 204 into the RAM 203 and executes the program.

外部記憶装置208は、プログラムを記憶したCD−ROM(Compact Disk ROM)209が装着される。CPU201は、外部記憶装置208を介してCD−ROM209にアクセス可能である。CPU201は、外部記憶装置208に装着されたCD−ROM209に記録されたプログラムをRAM203にロードして実行する。なお、CPU201が実行するプログラムを記憶する媒体としては、CD−ROM209に限られず、光ディスク(MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、ICカード、光カード、マスクROMまたはEPROM(Erasable Programmable ROM)などの半導体メモリであってもよい。 The external storage device 208 is equipped with a CD-ROM (Compact Disk ROM) 209 that stores the program. The CPU 201 can access the CD-ROM 209 via the external storage device 208. The CPU 201 loads the program recorded in the CD-ROM 209 mounted on the external storage device 208 into the RAM 203 and executes the program. The medium for storing the program executed by the CPU 201 is not limited to the CD-ROM209, but is an optical disk (MO (Magnetic Optical Disc) / MD (Mini Disc) / DVD (Digital Versaille Disc)), an IC card, an optical card, and the like. It may be a semiconductor memory such as a mask ROM or an EPROM (Erasable Program ROM).

また、CPU201が実行するプログラムは、CD−ROM209に記録されたプログラムに限られず、HDD204に記憶されたプログラムをRAM203にロードして実行するようにしてもよい。この場合、LAN3に接続された他のコンピューターが、HDD204に記憶されたプログラムを書き換える、または、新たなプログラムを追加して書き込むようにしてもよい。さらに、サーバー200が、LAN3またはインターネットに接続された他のコンピューターからプログラムをダウンロードして、そのプログラムをHDD204に記憶するようにしてもよい。ここでいうプログラムは、CPU201が直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。 Further, the program executed by the CPU 201 is not limited to the program recorded in the CD-ROM 209, and the program stored in the HDD 204 may be loaded into the RAM 203 and executed. In this case, another computer connected to the LAN 3 may rewrite the program stored in the HDD 204, or add a new program and write the program. Further, the server 200 may download the program from LAN3 or another computer connected to the Internet and store the program in the HDD 204. The program referred to here includes not only a program that can be directly executed by the CPU 201, but also a source program, a compressed program, an encrypted program, and the like.

図3は、本実施の形態におけるMFPのハードウェア構成の概要の一例を示すブロック図である。図3を参照して、MFP100は、メイン基板111と、原稿を読み取るための原稿読取部130と、原稿を原稿読取部130に搬送するための自動原稿搬送装置120と、原稿読取部130が原稿を読み取って出力する画像データに基づいて用紙等に画像を形成するための画像形成部140と、画像形成部140に用紙を供給するための給紙部150と、通信インターフェース(I/F)部160と、ファクシミリ部170と、外部記憶装置180と、大容量記憶装置としてのハードディスクドライブ(HDD)113と、ユーザーインターフェースとしての操作パネル115とを含む。 FIG. 3 is a block diagram showing an example of an outline of the hardware configuration of the MFP in the present embodiment. With reference to FIG. 3, the MFP 100 includes a main board 111, a document reading unit 130 for reading a document, an automatic document transporting device 120 for transporting a document to the document reading unit 130, and a document reading unit 130. An image forming unit 140 for forming an image on paper or the like based on image data to be read and output, a paper feeding unit 150 for supplying paper to the image forming unit 140, and a communication interface (I / F) unit. It includes 160, a facsimile unit 170, an external storage device 180, a hard disk drive (HDD) 113 as a large-capacity storage device, and an operation panel 115 as a user interface.

メイン基板111は、自動原稿搬送装置120、原稿読取部130、画像形成部140および給紙部150、通信I/F部160、ファクシミリ部170、外部記憶装置180、HDD113、および操作パネル115と接続され、MFP100の全体を制御する。 The main board 111 is connected to an automatic document transfer device 120, a document reading unit 130, an image forming unit 140 and a paper feeding unit 150, a communication I / F unit 160, a facsimile unit 170, an external storage device 180, an HDD 113, and an operation panel 115. And controls the whole MFP100.

自動原稿搬送装置120は、原稿トレイ上にセットされた複数枚の原稿を1枚ずつ自動的に原稿読取部130のプラテンガラス上に設定された所定の原稿読み取り位置まで搬送し、原稿読取部130により原稿に形成された画像が読み取られた原稿を原稿排紙トレイに排出する。原稿読取部130は、原稿読取位置に搬送されてきた原稿に光を照射する光源と、原稿で反射した光を受光する光電変換素子とを含み、原稿のサイズに応じた原稿画像を走査する。光電変換素子は、受光した光を電気信号である画像データに変換して、画像形成部140に出力する。 The automatic document transfer device 120 automatically transports a plurality of sheets set on the document tray one by one to a predetermined document reading position set on the platen glass of the document reading unit 130, and the document reading unit 130. The original from which the image formed on the original is read is ejected to the original output tray. The document scanning unit 130 includes a light source that irradiates the document conveyed to the document scanning position with light and a photoelectric conversion element that receives the light reflected by the document, and scans the document image according to the size of the document. The photoelectric conversion element converts the received light into image data which is an electric signal and outputs the light to the image forming unit 140.

給紙部150は、給紙トレイに収納された用紙を画像形成部140に搬送する。画像形成部140は、周知の電子写真方式により画像を形成するものであって、原稿読取部130から入力される画像データにシェーディング補正などの各種のデータ処理を施した、データ処理後の画像データまたは、外部から受信された画像データに基づいて、給紙部150により搬送される用紙に画像を形成し、画像を形成した用紙を排紙トレイに排出する。 The paper feed unit 150 conveys the paper stored in the paper feed tray to the image forming unit 140. The image forming unit 140 forms an image by a well-known electrophotographic method, and the image data input from the document reading unit 130 is subjected to various data processing such as shading correction, and the image data after the data processing is performed. Alternatively, an image is formed on the paper conveyed by the paper feed unit 150 based on the image data received from the outside, and the paper on which the image is formed is discharged to the output tray.

通信I/F部160は、LAN3にMFP100を接続するためのインターフェースである。通信I/F部160は、TCPまたはUDP等の通信プロトコルで、LAN3に接続された他のコンピューターと通信する。なお、通信のためのプロトコルは、特に限定されることはなく、任意のプロトコルを用いることができる。 The communication I / F unit 160 is an interface for connecting the MFP 100 to the LAN 3. The communication I / F unit 160 communicates with another computer connected to the LAN 3 by a communication protocol such as TCP or UDP. The protocol for communication is not particularly limited, and any protocol can be used.

通信I/F部160は、LAN3から受信されるデータをメイン基板111に出力し、メイン基板111から入力されるデータをLAN3に出力する。通信I/F部160は、LAN3から受信されるデータのうちMFP100宛てのデータのみを、メイン基板111に出力し、LAN3から受信されるデータのうちMFP100とは異なる装置宛てのデータを廃棄する。 The communication I / F unit 160 outputs the data received from the LAN 3 to the main board 111, and outputs the data input from the main board 111 to the LAN 3. The communication I / F unit 160 outputs only the data destined for the MFP 100 among the data received from the LAN 3 to the main board 111, and discards the data received from the LAN 3 destined for the device different from the MFP 100.

ファクシミリ部170は、公衆交換電話網(PSTN)に接続され、ファクシミリデータを送受信する。外部記憶装置180は、CD−ROM181、または半導体メモリが装着される。外部記憶装置180は、CD−ROM181または半導体メモリに記憶されたデータを読み出す。外部記憶装置180は、CD−ROM181または半導体メモリにデータを記憶する。 The facsimile unit 170 is connected to the public switched telephone network (PSTN) to transmit and receive facsimile data. The external storage device 180 is equipped with a CD-ROM181 or a semiconductor memory. The external storage device 180 reads the data stored in the CD-ROM181 or the semiconductor memory. The external storage device 180 stores data in the CD-ROM181 or the semiconductor memory.

操作パネル115は、MFP100の上面に設けられ、表示部118と操作部119とを含む。表示部118は、液晶表示装置(LCD)、有機ELD等の表示装置であり、ユーザーに対する指示メニューや取得した画像データに関する情報等を表示する。操作部119は、複数のハードキーと、タッチパネルと、を含む。タッチパネルは、表示部118の上面または下面に表示部に重畳して設けられたマルチタッチ対応のタッチパネルであり、表示部118の表示面中でユーザーにより指示された位置を検出する。 The operation panel 115 is provided on the upper surface of the MFP 100 and includes a display unit 118 and an operation unit 119. The display unit 118 is a display device such as a liquid crystal display (LCD) or an organic ELD, and displays an instruction menu for the user, information on acquired image data, and the like. The operation unit 119 includes a plurality of hard keys and a touch panel. The touch panel is a multi-touch compatible touch panel provided on the upper surface or the lower surface of the display unit 118 so as to be superimposed on the display unit, and detects a position designated by the user on the display surface of the display unit 118.

図4は、本実施の形態におけるメイン基板の詳細な構成の一例を示すブロック図である。図4を参照して、メイン基板111は、CPU171と、ROM173と、RAM175と、画像制御ASIC(Application Specific Integrated Circuit)177と、を含む。 FIG. 4 is a block diagram showing an example of a detailed configuration of the main board according to the present embodiment. With reference to FIG. 4, the main board 111 includes a CPU 171, a ROM 173, a RAM 175, and an image control ASIC (Application Specific Integrated Circuit) 177.

CPU171、ROM173、RAM175および画像制御ASIC177それぞれは、バス179に接続されており、データの転送が可能である。バス179には、原稿読取部130、画像形成部140、およびファクシミリ部170が接続される。なお、図4には示していないが、バス179には、自動原稿搬送装置120、給紙部150、通信I/F部160、外部記憶装置180、HDD113および操作パネル115が接続される。 The CPU 171 and the ROM 173, the RAM 175, and the image control ASIC 177 are each connected to the bus 179, and data can be transferred. A document reading unit 130, an image forming unit 140, and a facsimile unit 170 are connected to the bus 179. Although not shown in FIG. 4, the automatic document transfer device 120, the paper feed unit 150, the communication I / F unit 160, the external storage device 180, the HDD 113, and the operation panel 115 are connected to the bus 179.

CPU171は、MFP100の全体を制御する。具体的には、CPU171は、バス179を介して、画像制御ASIC177、原稿読取部130、画像形成部140、ファクシミリ部170、自動原稿搬送装置120、給紙部150、通信I/F部160、外部記憶装置180、HDD113および操作パネル115を制御する。ROM173は、CPU171が実行するプログラムを記憶する。RAM175は、揮発性の半導体メモリである。 The CPU 171 controls the entire MFP 100. Specifically, the CPU 171 uses the image control ASIC 177, the document reading unit 130, the image forming unit 140, the facsimile unit 170, the automatic document transporting device 120, the paper feeding unit 150, and the communication I / F unit 160 via the bus 179. It controls the external storage device 180, the HDD 113, and the operation panel 115. The ROM 173 stores a program executed by the CPU 171. The RAM 175 is a volatile semiconductor memory.

CPU171は、HDD113に記憶されたプログラムをRAM175にロードして実行する。CPU171が実行するプログラムは、ハードウェア資源を制御するための制御プログラム、およびアプリケーションプログラムを含む。ハードウェア資源は、RAM175、画像制御ASIC177、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150、通信I/F部160、ファクシミリ部170、外部記憶装置180、HDD113および操作パネル115を含む。アプリケーションプログラムは、例えば、ファクシミリ部170を制御してファクシミリデータを送信するファクシミリ送信プログラム、ファクシミリ部170を制御してファクシミリデータを受信するファクシミリ受信プログラム、通信I/F部160を制御してプリントジョブを受信し、画像形成部140および給紙部150を制御してプリントジョブに基づいて画像を形成するプリントプログラム、原稿読取部130を制御して原稿を読み取る原稿読取プログラムを含む。また、アプリケーションプログラムは、MFP100が備える消耗品を管理するメンテナンスプログラム、エラー状態を通知するエラー状態通知プログラムを、含んでもよい。なお、CPU171が実行するアプリケーションプログラムを、これらに限定するものではない。 The CPU 171 loads the program stored in the HDD 113 into the RAM 175 and executes the program. The program executed by the CPU 171 includes a control program for controlling hardware resources and an application program. Hardware resources include RAM 175, image control ASIC 177, automatic document transfer device 120, document reading unit 130, image forming unit 140, paper feeding unit 150, communication I / F unit 160, facsimile unit 170, external storage device 180, HDD 113 and Includes operation panel 115. The application program is, for example, a facsimile transmission program that controls the facsimile unit 170 to transmit facsimile data, a facsimile reception program that controls the facsimile unit 170 to receive facsimile data, and a print job that controls the communication I / F unit 160. Is included, a print program that controls the image forming unit 140 and the paper feeding unit 150 to form an image based on a print job, and a document reading program that controls the document reading unit 130 to read a document. Further, the application program may include a maintenance program for managing consumables included in the MFP 100 and an error status notification program for notifying an error status. The application program executed by the CPU 171 is not limited to these.

画像制御ASIC177は、原稿読取部130、画像形成部140およびファクシミリ部170と接続され、CPU171によって制御される。画像制御ASIC177は、複数のDMA(Direct Memory Access)チャンネルを有する。ここでは、画像制御ASIC177は、チャンネル番号がDMA−00〜DMA07の8個のDMAチャンネルを有する。 The image control ASIC 177 is connected to the document reading unit 130, the image forming unit 140, and the facsimile unit 170, and is controlled by the CPU 171. The image control ASIC 177 has a plurality of DMA (Direct Memory Access) channels. Here, the image control ASIC177 has eight DMA channels whose channel numbers are DMA-00 to DMA07.

チャンネル番号がDMA−00のDMAチャンネルは、スキャン処理が割り当てられており、原稿読取部130と接続される。画像制御ASIC177は、原稿読取部130が原稿を読み取って出力する画像データが原稿読取部130から入力されると、画像データを画像処理し、RAM175に記憶する処理を実行する。 The DMA channel having the channel number DMA-00 is assigned a scanning process and is connected to the document reading unit 130. When the image data that the document reading unit 130 reads and outputs the document is input from the document reading unit 130, the image control ASIC 177 performs image processing of the image data and stores the image data in the RAM 175.

チャンネル番号がDMA−01のDMAチャンネルは、プリント出力処理が割り当てられており、画像形成部140と接続される。画像制御ASIC177は、RAM175に記憶されたデータを読み出して、画像形成部140がプリントするためのラスターデータに変換し、ラスターデータを画像形成部140に出力する処理を実行する。 The DMA channel having the channel number DMA-01 is assigned the print output process and is connected to the image forming unit 140. The image control ASIC 177 reads the data stored in the RAM 175, converts it into raster data for printing by the image forming unit 140, and executes a process of outputting the raster data to the image forming unit 140.

チャンネル番号がDMA−02のDMAチャンネルは、FAX転送処理が割り当てられており、ファクシミリ部170と接続される。画像制御ASIC177は、ファクシミリ部170が受信したファクシミリデータが入力されると、ファクシミリデータを画像処理した後のデータをRAM175に記憶する処理を実行する。また、画像制御ASIC177は、RAM175に記憶されたデータを読み出して、ファクシミリデータに変換し、ファクシミリ部170に出力する処理を実行する。 The DMA channel having the channel number DMA-02 is assigned the FAX transfer process and is connected to the facsimile unit 170. When the facsimile data received by the facsimile unit 170 is input, the image control ASIC 177 executes a process of storing the data after image processing the facsimile data in the RAM 175. Further, the image control ASIC 177 executes a process of reading the data stored in the RAM 175, converting the data into facsimile data, and outputting the data to the facsimile unit 170.

また、チャンネル番号がDMA−03のDMAチャンネルは、データの圧縮処理および伸長処理が割り当てられる。画像制御ASIC177は、RAM175に記憶されたデータを読み出して、圧縮または伸長し、処理後のデータをRAM175に記憶する処理を実行する。チャンネル番号がDMA−04のDMAチャンネルは、データの暗号化処理および復号処理が割り当てられる。画像制御ASIC177は、RAM175に記憶されたデータを読み出して、暗号化または復号し、処理後のデータをRAM175に記憶する処理を実行する。チャンネル番号がDMA−05のDMAチャンネルは、画像データを合成する処理が割り当てられる。画像制御ASIC177は、RAM175に記憶された画像データを読み出して合成し、合成した画像データをRAM175に記憶する処理を実行する。チャンネル番号がDMA−06のDMAチャンネルは、色変換処理が割り当てられる。画像制御ASIC177は、RAM175に記憶された画像データを読み出して色変換し、変換後の画像データをRAM175に記憶する処理を実行する。チャンネル番号がDMA−07のDMAチャンネルは、変倍処理が割り当てられる。画像制御ASIC177は、RAM175に記憶された画像データを読み出してサイズを変更し、処理後の画像データをRAM175に記憶する処理を実行する。 Further, the DMA channel having the channel number DMA-03 is assigned data compression processing and decompression processing. The image control ASIC 177 reads the data stored in the RAM 175, compresses or decompresses it, and executes a process of storing the processed data in the RAM 175. Data encryption processing and decryption processing are assigned to the DMA channel having the channel number DMA-04. The image control ASIC 177 reads the data stored in the RAM 175, encrypts or decrypts the data, and executes a process of storing the processed data in the RAM 175. The DMA channel having the channel number DMA-05 is assigned a process of synthesizing image data. The image control ASIC 177 reads and synthesizes the image data stored in the RAM 175, and executes a process of storing the combined image data in the RAM 175. A color conversion process is assigned to the DMA channel having the channel number DMA-06. The image control ASIC 177 reads the image data stored in the RAM 175, performs color conversion, and executes a process of storing the converted image data in the RAM 175. A scaling process is assigned to the DMA channel having the channel number DMA-07. The image control ASIC 177 reads the image data stored in the RAM 175, changes the size, and executes a process of storing the processed image data in the RAM 175.

第1の実施の形態におけるサーバー200は、MFP100をシミュレートするシミュレータを備えている。 The server 200 in the first embodiment includes a simulator that simulates the MFP 100.

図5は、第1の実施の形態におけるサーバーが備えるシミュレータの概要の一例を示す図である。このシミュレータは、CPU201がシミュレートプログラムを実行することにより、CPU201に形成される。図5を参照して、シミュレータは、CPU周辺シミュレータ300と、ハードウェア(HW)シミュレータ320と、を含む。CPU周辺シミュレータ300は、MFP100が備えるCPU171をシミュレートする仮想CPU301と、ROM173およびRAM175をエミュレートする仮想メモリ303と、周辺モデル305と、同期設定モデル307と、割込制御部309と、を含む。仮想CPU301、仮想メモリ303、周辺モデル305および同期設定モデル307は、バス(Bus)311に接続されている。 FIG. 5 is a diagram showing an example of an outline of the simulator provided in the server according to the first embodiment. This simulator is formed in the CPU 201 by the CPU 201 executing a simulation program. With reference to FIG. 5, the simulator includes a CPU peripheral simulator 300 and a hardware (HW) simulator 320. The CPU peripheral simulator 300 includes a virtual CPU 301 that simulates the CPU 171 included in the MFP 100, a virtual memory 303 that emulates the ROM 173 and the RAM 175, a peripheral model 305, a synchronization setting model 307, and an interrupt control unit 309. .. The virtual CPU 301, the virtual memory 303, the peripheral model 305, and the synchronization setting model 307 are connected to the bus 311.

周辺モデル305は、MFP100が備えるHDD113、操作パネル115、通信I/F部160および外部記憶装置180をそれぞれエミュレートするHDD113A、操作パネル115A、通信I/F部160Aおよび外部記憶装置180Aを含む。 The peripheral model 305 includes an HDD 113, an operation panel 115, an HDD 113A that emulates the communication I / F unit 160 and the external storage device 180, respectively, an operation panel 115A, a communication I / F unit 160A, and an external storage device 180A included in the MFP 100.

同期設定モデル307は、仮想CPU301が、仮想メモリ303および周辺モデル305と同期するための設定をする。割込制御部309は、仮想CPU301が仮想メモリ303および周辺モデル305と同期するための設定時に、仮想CPU301に割り込みを発生させる。 The synchronization setting model 307 is set so that the virtual CPU 301 synchronizes with the virtual memory 303 and the peripheral model 305. The interrupt control unit 309 generates an interrupt in the virtual CPU 301 when the virtual CPU 301 is set to synchronize with the virtual memory 303 and the peripheral model 305.

HWシミュレータ320は、PCI−ExpressBusモデル321と、画像制御ASICモデル323と、装置モデル325と、を含む。PCI−ExpressBusモデル321は、バス311に接続され、PCI−Express規格に従った接続をエミュレートする。画像制御ASICモデル323は、MFP100が備える画像制御ASIC177をエミュレートする。装置モデル325は、MFP100が備える自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150およびファクシミリ部170をそれぞれエミュレートする自動原稿搬送装置120A、原稿読取部130A、画像形成部140A、給紙部150Aおよびファクシミリ部170Aを含む。 The HW simulator 320 includes a PCI-Express Bus model 321, an image control ASIC model 323, and an apparatus model 325. The PCI-ExpressBus model 321 is connected to bus 311 and emulates a connection according to the PCI-Express standard. The image control ASIC model 323 emulates the image control ASIC 177 included in the MFP 100. The device model 325 emulates the automatic document transfer device 120, the document reading unit 130, the image forming unit 140, the paper feeding unit 150, and the facsimile unit 170 included in the MFP 100, respectively, the automatic document conveying device 120A, the document reading unit 130A, and the image forming unit. A unit 140A, a paper feeding unit 150A, and a facsimile unit 170A are included.

図6は、第1の実施の形態におけるMFPが備えるCPUが有する機能の一例を示すブロック図である。図6に示す機能は、MFP100が備えるCPU171が、ROM173、HDD113またはCD−ROM181に記憶された画像制御プログラムを実行することにより、CPU171により実現される機能である。画像制御プログラムは、装置設定プログラムの一部である。図6を参照して、CPU171は、処理データを受け付けるデータ受付部51と、データに対して画像処理を実行する画像処理部53と、画像処理の履歴を記憶する履歴記憶部55と、画像処理部53による画像処理の不具合を検出する不具合検出部57と、不具合の原因となるハードウェア資源の故障個所を検出するハードエラー検出部61と、サーバー200に検証を依頼する検証依頼部59と、設定部63と、復元部65と、を含む。 FIG. 6 is a block diagram showing an example of the function of the CPU included in the MFP in the first embodiment. The function shown in FIG. 6 is a function realized by the CPU 171 when the CPU 171 included in the MFP 100 executes an image control program stored in the ROM 173, the HDD 113, or the CD-ROM 181. The image control program is a part of the device setting program. With reference to FIG. 6, the CPU 171 includes a data receiving unit 51 that receives processed data, an image processing unit 53 that executes image processing on the data, a history storage unit 55 that stores the history of image processing, and image processing. A defect detection unit 57 that detects a defect in image processing by unit 53, a hard error detection unit 61 that detects a failure location of a hardware resource that causes a defect, and a verification request unit 59 that requests verification from a server 200. A setting unit 63 and a restoration unit 65 are included.

データ受付部51は、MFP100が処理の対象とする処理データを受け付ける。データ受付部51は、処理データを受け付けることに応じて、その処理データを画像処理部53に出力する。データ受付部51は、原稿読取部130が原稿を読み取って出力する画像データを処理データとして受け付ける。データ受付部51は、通信I/F部160が、LAN3に接続されたパーソナルコンピューター(以下PCという)からプリントジョブを受信する場合、プリントジョブに含まれるプリントデータを処理データとして受け付ける。データ受付部51は、通信I/F部160がインターネット5に接続されたウェブ(Web)サーバーからWebデータを受信する場合、Webデータを処理データとして受け付ける。また、データ受付部51は、HDD113に記憶されたデータをプリントする指示を受け付ける場合、HDD113に記憶されたデータを処理データとして受け付ける。 The data receiving unit 51 receives the processing data to be processed by the MFP 100. The data receiving unit 51 outputs the processed data to the image processing unit 53 in response to receiving the processed data. The data receiving unit 51 receives the image data that the document reading unit 130 reads and outputs the document as processing data. When the communication I / F unit 160 receives a print job from a personal computer (hereinafter referred to as a PC) connected to the LAN 3, the data reception unit 51 receives the print data included in the print job as processing data. When the communication I / F unit 160 receives Web data from a Web (Web) server connected to the Internet 5, the data reception unit 51 receives the Web data as processing data. Further, when the data receiving unit 51 receives an instruction to print the data stored in the HDD 113, the data receiving unit 51 receives the data stored in the HDD 113 as processing data.

画像処理部53は、データを画像処理し、画像データを生成する。画像処理部53は、データ受付部51から処理データが入力されることに応じて、処理データを画像処理する。例えば、処理データがプリントデータの場合、プリントジョブによって定められた条件に従ってプリントデータを画像処理する。画像処理部53は、処理データが、原稿読取部130が出力する画像データ、WebデータまたはHDD113に記憶されたデータの場合、ユーザーが操作部119に入力するプリント条件に従って処理データを画像処理する。画像処理部53が処理データに対して実行する画像処理は1以上である。1つの処理データに対して画像処理部53が実行する1以上の画像処理をまとめたものをジョブという。 The image processing unit 53 performs image processing on the data and generates image data. The image processing unit 53 performs image processing on the processed data in response to input of the processed data from the data receiving unit 51. For example, when the processing data is print data, the print data is image-processed according to the conditions determined by the print job. When the processed data is the image data output by the document reading unit 130, the Web data, or the data stored in the HDD 113, the image processing unit 53 performs image processing on the processed data according to the print conditions input to the operation unit 119 by the user. The number of image processes executed by the image processing unit 53 on the processed data is one or more. A job is a collection of one or more image processes executed by the image processing unit 53 for one processed data.

履歴記憶部55は、画像処理部53が実行したジョブの履歴を記憶する。具体的には、HDD113に、ジョブを記憶する。履歴記憶部55は、ジョブの履歴を検証依頼部59に出力する。 The history storage unit 55 stores the history of jobs executed by the image processing unit 53. Specifically, the job is stored in the HDD 113. The history storage unit 55 outputs the job history to the verification request unit 59.

不具合検出部57は、画像処理部53が画像処理を実行中に発生する不具合を検出する。画像処理部53は、CPU171が画像処理プログラムを実行する画像処理タスクである。不具合検出部57は、画像処理タスクが、画像処理プログラムにより予め定められたエラーを検出する場合に、不具合を検出する。画像処理プログラムにより予め定められたエラーは、画像処理部53が画像処理を開始してから予め定められた時間が経過するタイムアウトエラーを含む。予め定められた時間は、例えば、画像処理の対象となるデータのデータ量に比例する時間としてもよい。不具合検出部57は、不具合を検出する場合、検出された不具合を特定するための不具合情報をハードエラー検出部61に出力する。 The defect detection unit 57 detects a defect that occurs while the image processing unit 53 is executing image processing. The image processing unit 53 is an image processing task in which the CPU 171 executes an image processing program. The defect detection unit 57 detects a defect when the image processing task detects an error predetermined by the image processing program. The error predetermined by the image processing program includes a timeout error in which a predetermined time elapses after the image processing unit 53 starts image processing. The predetermined time may be, for example, a time proportional to the amount of data to be image-processed. When the defect detection unit 57 detects a defect, the defect detection unit 57 outputs the defect information for identifying the detected defect to the hardware error detection unit 61.

ハードエラー検出部61は、不具合情報が入力されることに応じて、ハードウェア資源の不具合を検出する。具体的には、ハードエラー検出部61は、不具合情報で特定される不具合の原因となるハードウェア資源とその故障個所を特定する。ハードエラー検出部61は、特定されたハードウェア資源および故障個所を示すエラー情報を生成し、エラー情報をエラー情報送信部92に出力する。 The hardware error detection unit 61 detects a defect in the hardware resource in response to the input of the defect information. Specifically, the hard error detection unit 61 identifies the hardware resource that causes the defect identified in the defect information and the location of the failure. The hard error detection unit 61 generates error information indicating the identified hardware resource and the fault location, and outputs the error information to the error information transmission unit 92.

不具合検出部57が検出する不具合は、画像処理タスクが検出するエラーであり、画像処理に対応する。このため、例えば、画像処理と、その画像処理を実行するために用いられるハードウェア資源とを対応付けたテーブルを予め準備しておき、不具合情報に対して、その不具合情報で特定される不具合が発生した画像処理に対応するハードウェア資源を特定する。ハードウェア資源は、RAM175、画像制御ASIC177、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150、通信I/F部160、ファクシミリ部170、外部記憶装置180、HDD113および操作パネル115を含む。ハードエラー検出部61は、不具合の原因となるハードウェア資源として、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150、通信I/F部160、ファクシミリ部170、外部記憶装置180、HDD113および操作パネル115を特定する場合、それらを識別するための装置識別情報を含むエラー情報を生成する。 The defect detected by the defect detection unit 57 is an error detected by the image processing task, and corresponds to image processing. Therefore, for example, a table in which the image processing and the hardware resources used to execute the image processing are associated with each other is prepared in advance, and the defect information is identified by the defect information. Identify the hardware resources that correspond to the image processing that has occurred. Hardware resources include RAM 175, image control ASIC 177, automatic document transfer device 120, document reading unit 130, image forming unit 140, paper feeding unit 150, communication I / F unit 160, facsimile unit 170, external storage device 180, HDD 113 and Includes operation panel 115. The hard error detection unit 61 uses the automatic document transfer device 120, the document reading unit 130, the image forming unit 140, the paper feeding unit 150, the communication I / F unit 160, the facsimile unit 170, and the external as hardware resources that cause a malfunction. When the storage device 180, the HDD 113, and the operation panel 115 are specified, error information including device identification information for identifying them is generated.

ハードエラー検出部61は、不具合の原因となるハードウェア資源として、RAM175または画像制御ASIC177を特定する場合、故障個所を特定する。画像処理タスクは、RAM175の作業領域を用いて画像処理する。また、画像処理タスクは、画像制御ASIC177に画像制御ASIC177が実行可能な複数の処理の一部を依頼する場合がある。画像制御ASIC177は、RAM175の作業領域を用いて画像処理する。 When the hardware error detection unit 61 identifies the RAM 175 or the image control ASIC 177 as a hardware resource that causes a malfunction, the hardware error detection unit 61 identifies the faulty part. The image processing task performs image processing using the work area of the RAM 175. Further, the image processing task may request the image control ASIC 177 to perform a part of a plurality of processes that can be executed by the image control ASIC 177. The image control ASIC 177 performs image processing using the work area of the RAM 175.

RAM175に発生する故障は、アクセスができない領域が存在する場合である。ハードエラー検出部61は、RAM175をスキャンして、アクセスができない領域を故障個所として特定する。例えば、データの書き込みおよび読出しができないアドレスを検出する。ハードエラー検出部61は、RAM175において故障個所を特定する場合、特定された領域を示す領域情報を含むエラー情報を生成する。 The failure that occurs in the RAM 175 is when there is an inaccessible area. The hard error detection unit 61 scans the RAM 175 and identifies an inaccessible area as a failure location. For example, it detects an address where data cannot be written or read. When the hard error detection unit 61 identifies the faulty part in the RAM 175, the hard error detection unit 61 generates error information including the area information indicating the specified area.

ハードエラー検出部61は、画像制御ASIC177が有する複数のDMAチャンネルのうち不具合が発生した画像処理が割り当てられたDMAチャンネルについて、動作チェックを実行する。動作チェックは、例えば、予め定められたデータを入力し、出力値を期待値と照合する処理である。ハードエラー検出部61は、動作チェックで、出力値が期待値以下となるDMAチャンネルを故障個所として特定する。ハードエラー検出部61は、画像制御ASIC177において故障個所を特定する場合、特定されたDMAチャンネルを示すチャンネル識別情報を含むエラー情報を生成する。なお、ハードエラー検出部61は、画像制御ASIC177が有する複数のDMAチャンネルそれぞれについて、動作チェックを実行するようにし、動作チェックでエラーが発生したDMAチャンネルを故障個所として特定するようにしてもよい。この場合には、画像制御ASIC177が有する複数のDMAチャンネルの全てを動作チェックするので、動作チェックの対象となるDMAチャンネルを特定する必要がない。 The hard error detection unit 61 executes an operation check on the DMA channel to which the image processing in which the defect has occurred is assigned among the plurality of DMA channels included in the image control ASIC177. The operation check is, for example, a process of inputting predetermined data and collating the output value with the expected value. The hard error detection unit 61 identifies a DMA channel whose output value is equal to or less than the expected value as a failure location in the operation check. When the image control ASIC177 identifies a failure location, the hard error detection unit 61 generates error information including channel identification information indicating the identified DMA channel. The hardware error detection unit 61 may execute an operation check for each of the plurality of DMA channels included in the image control ASIC177, and may identify the DMA channel in which the error occurred in the operation check as a failure location. In this case, since the operation of all of the plurality of DMA channels of the image control ASIC 177 is checked, it is not necessary to specify the DMA channel to be checked for operation.

検証依頼部59は、ハードエラー検出部からエラー情報が入力されることに応じて、サーバー200に検証を依頼する。検証依頼部59は、履歴送信部91と、エラー情報送信部92と、装置情報送信部93と、復元依頼部94と、設定指示受付部95と、一時記憶依頼部96と、を含む。 The verification request unit 59 requests the server 200 to perform verification in response to the error information input from the hard error detection unit. The verification request unit 59 includes a history transmission unit 91, an error information transmission unit 92, a device information transmission unit 93, a restoration request unit 94, a setting instruction reception unit 95, and a temporary storage request unit 96.

履歴送信部91は、通信I/F部160を制御して、履歴記憶部55に記憶されたジョブの履歴を含む履歴情報をサーバー200に送信する。エラー情報送信部92は、ハードエラー検出部61からエラー情報が入力されることに応じて、通信I/F部160を制御してエラー情報をサーバー200に送信するとともに、装置情報送信部93に送信指示を出力する。装置情報送信部93は、エラー情報送信部92から送信指示が入力されることに応じて、装置情報を生成し、生成された装置情報を、通信I/F部160を制御してサーバー200に送信する。装置情報は、MFP100に搭載されているCPU171に関する情報、MFP100にインストールされたハードウェア資源に関するハード情報と、MFP100にインストールされたソフトウェア資源に関するソフト情報と、を含む。CPU171に関する情報は、CPU171の機種名を含む。ハード情報は、ハードウェア資源を識別するためのハード識別情報と、ハードウェア資源を制御するために設定されているハードパラメータとを含む。ハード情報は、ハードウェア資源が複数の場合には、複数のハードウェア資源ごとに、ハード識別情報とハードパラメータとを含む。ソフト情報は、MFP100にインストールされているプログラムのプログラム名と、そのプログラムを実行するために設定されているソフトパラメータと、を含む。 The history transmission unit 91 controls the communication I / F unit 160 to transmit the history information including the job history stored in the history storage unit 55 to the server 200. The error information transmission unit 92 controls the communication I / F unit 160 to transmit the error information to the server 200 in response to the error information input from the hard error detection unit 61, and also sends the error information to the device information transmission unit 93. Output transmission instructions. The device information transmission unit 93 generates device information in response to an input of a transmission instruction from the error information transmission unit 92, and transfers the generated device information to the server 200 by controlling the communication I / F unit 160. Send. The device information includes information about the CPU 171 installed in the MFP 100, hardware information about the hardware resources installed in the MFP 100, and software information about the software resources installed in the MFP 100. The information about the CPU 171 includes the model name of the CPU 171. The hardware information includes the hardware identification information for identifying the hardware resource and the hardware parameters set for controlling the hardware resource. When there are a plurality of hardware resources, the hardware information includes hardware identification information and hardware parameters for each of the plurality of hardware resources. The software information includes the program name of the program installed in the MFP 100 and the software parameters set to execute the program.

復元依頼部94、設定指示受付部95、一時記憶依頼部96、設定部63および復元部65については後述する。 The restoration request unit 94, the setting instruction reception unit 95, the temporary storage request unit 96, the setting unit 63, and the restoration unit 65 will be described later.

図7は、第1の実施の形態におけるサーバーが備えるCPUが有する機能の一例を示すブロック図である。図7に示す機能は、サーバー200が備えるCPU201が、ROM202、HDD204またはCD−ROM209に記憶されたサーバー側画像制御プログラムを実行することにより、CPU201により実現される機能である。サーバー側画像制御プログラムは、画像制御プログラムの一部である。 FIG. 7 is a block diagram showing an example of a function of the CPU included in the server according to the first embodiment. The function shown in FIG. 7 is a function realized by the CPU 201 when the CPU 201 included in the server 200 executes a server-side image control program stored in the ROM 202, HDD 204, or CD-ROM 209. The server-side image control program is a part of the image control program.

図7を参照して、サーバー200が備えるCPU201は、装置情報取得部251と、履歴取得部253と、シミュレート部255と、仮想実行制御部257と、エラー情報受信部259と、設定指示部261と、依頼時記憶部263と、復元依頼受付部265と、を含む。 With reference to FIG. 7, the CPU 201 included in the server 200 includes a device information acquisition unit 251, a history acquisition unit 253, a simulation unit 255, a virtual execution control unit 257, an error information reception unit 259, and a setting instruction unit. 261 includes a request storage unit 263 and a restoration request reception unit 265.

装置情報取得部251は、MFP100から装置情報を取得する。上述したように、MFP100は、処理データを画像処理している間に不具合が検出される場合に、装置情報を送信する。装置情報取得部251は、通信部205がMFP100から装置情報を受信すると、通信部205が受信した装置情報を取得する。装置情報取得部251は、装置情報を取得する場合、装置情報をシミュレート部255に出力する。 The device information acquisition unit 251 acquires device information from the MFP 100. As described above, the MFP 100 transmits device information when a defect is detected during image processing of the processed data. When the communication unit 205 receives the device information from the MFP 100, the device information acquisition unit 251 acquires the device information received by the communication unit 205. When the device information acquisition unit 251 acquires the device information, the device information acquisition unit 251 outputs the device information to the simulation unit 255.

履歴取得部253は、MFP100から履歴情報を取得する。履歴取得部253は、通信部205がMFP100から履歴情報を受信すると、通信部205が受信した履歴情報を取得する。履歴取得部253は、取得された履歴情報を仮想実行制御部257に出力する。 The history acquisition unit 253 acquires history information from the MFP 100. When the communication unit 205 receives the history information from the MFP 100, the history acquisition unit 253 acquires the history information received by the communication unit 205. The history acquisition unit 253 outputs the acquired history information to the virtual execution control unit 257.

エラー情報受信部259は、通信部205を制御して、MFP100からエラー情報を受信する。エラー情報受信部259は、受信されたエラー情報をシミュレート部255および仮想実行制御部257に出力する。 The error information receiving unit 259 controls the communication unit 205 to receive error information from the MFP 100. The error information receiving unit 259 outputs the received error information to the simulation unit 255 and the virtual execution control unit 257.

シミュレート部255は、装置情報取得部251から入力される装置情報に基づいてMFP100をシミュレートし、後述する仮想実行制御部257から入力されるテストジョブを実行する。まず、シミュレート部255は、装置情報に基づいて、MFP100に装着された装置を設定し、ハードパラメータを設定し、MFP100のCPU171が実行するソフトウェア資源を仮想CPU301に実行させ、ソフトパラメータを設定する。 The simulation unit 255 simulates the MFP 100 based on the device information input from the device information acquisition unit 251 and executes a test job input from the virtual execution control unit 257, which will be described later. First, the simulation unit 255 sets the device mounted on the MFP 100 based on the device information, sets the hard parameters, causes the virtual CPU 301 to execute the software resources executed by the CPU 171 of the MFP 100, and sets the software parameters. ..

MFP100は、装置として、画像制御ASIC177、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150、通信I/F部160、ファクシミリ部170、外部記憶装置180、HDD113および操作パネル115を含む。このため、装置情報に含まれるハード情報は、画像制御ASIC177、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150、通信I/F部160、ファクシミリ部170、外部記憶装置180、HDD113および操作パネル115を装置として定める。シミュレート部255は、装置情報に含まれるハード情報で定められた画像制御ASIC177、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150、通信I/F部160、ファクシミリ部170、外部記憶装置180、HDD113および操作パネル115それぞれをエミュレートするエミュレータを設定するとともに、ハード情報に含まれるハードパラメータを設定する。さらに、シミュレート部255は、エミュレートする装置との同期を設定する。例えば、図5に示したCPU周辺シミュレータ300の同期設定モデル307に、仮想CPU301が、装置のエミュレータと同期するように仮想CPU301のレジスタ値を設定させるとともに、仮想メモリ303のメモリマップを書き換える。 The MFP 100 includes an image control ASIC 177, an automatic document transfer device 120, a document reading unit 130, an image forming unit 140, a paper feeding unit 150, a communication I / F unit 160, a facsimile unit 170, an external storage device 180, an HDD 113, and an operation. Includes panel 115. Therefore, the hardware information included in the device information includes the image control ASIC 177, the automatic document transfer device 120, the document reading unit 130, the image forming unit 140, the paper feeding unit 150, the communication I / F unit 160, the facsimile unit 170, and the external storage. The device 180, HDD 113, and operation panel 115 are defined as devices. The simulation unit 255 includes an image control ASIC 177 defined by hardware information included in the device information, an automatic document transfer device 120, a document reading unit 130, an image forming unit 140, a paper feeding unit 150, a communication I / F unit 160, and a facsimile. An emulator that emulates each of the unit 170, the external storage device 180, the HDD 113, and the operation panel 115 is set, and the hard parameters included in the hard information are set. Further, the simulation unit 255 sets the synchronization with the emulating device. For example, the synchronization setting model 307 of the CPU peripheral simulator 300 shown in FIG. 5 is made to set the register value of the virtual CPU 301 so that the virtual CPU 301 synchronizes with the emulator of the apparatus, and the memory map of the virtual memory 303 is rewritten.

シミュレート部255は、エラー情報受信部259からエラー情報が入力される場合、エラー情報で特定されるハードウェア資源に対応するエミュレータを、エラー情報に含まれる故障個所が故障した状態に設定する。具体的には、シミュレート部255は、エラー情報がRAM175において故障個所として特定された領域を示す領域情報を含む場合、図5に示した仮想メモリ303のRAM175をエミュレートする部分であって、エラー情報に含まれる領域情報で特定される領域を、アクセス不可能な状態に設定する。また、シミュレート部255は、エラー情報が画像制御ASIC177において故障個所として特定されたDMAチャンネルを識別するためのチャンネル識別情報を含む場合、図5に示した画像制御ASIC177をエミュレートする画像制御ASICモデル323において、エラー情報に含まれるチャンネル識別情報で特定されるDMAチャンネルを使用不可能な状態に設定する。 When the error information is input from the error information receiving unit 259, the simulating unit 255 sets the emulator corresponding to the hardware resource specified by the error information to a state in which the faulty part included in the error information has failed. Specifically, the simulation unit 255 is a portion that emulates the RAM 175 of the virtual memory 303 shown in FIG. 5 when the error information includes the area information indicating the area specified as the failure location in the RAM 175. Set the area specified by the area information included in the error information to an inaccessible state. Further, when the error information includes the channel identification information for identifying the DMA channel identified as the failure location in the image control ASIC 177, the simulation unit 255 emulates the image control ASIC 177 shown in FIG. In the model 323, the DMA channel specified by the channel identification information included in the error information is set to the unusable state.

また、シミュレート部255は、装置情報に含まれるソフト情報で定められたソフトウェア資源を仮想CPUが実行する状態に設定し、装置情報に含まれる設定値を設定する。具体的には、シミュレート部255は、装置情報に含まれるソフト情報で定められたソフトウェア資源である既定プログラムをインストールし、装置情報に含まれる設定値を設定する。これにより、シミュレート部255において、MFP100をシミュレートした仮想装置が完成する。なお、MFP100のRAM175に記憶されたデータをスナップショットとして取得し、仮想メモリ303に記憶するようにしてもよい。 Further, the simulation unit 255 sets the software resource defined by the software information included in the device information to the state in which the virtual CPU executes, and sets the set value included in the device information. Specifically, the simulation unit 255 installs a default program, which is a software resource defined by the software information included in the device information, and sets a setting value included in the device information. As a result, the virtual device simulating the MFP 100 is completed in the simulation unit 255. The data stored in the RAM 175 of the MFP 100 may be acquired as a snapshot and stored in the virtual memory 303.

仮想実行制御部257は、シミュレート部255を制御して、シミュレート部255がMFP100をシミュレートする仮想装置にテストジョブを実行させる。仮想実行制御部257は、確認部271と、代替部273と、インストール部275と、設定組決定部277と、動作状態取得部279と、優先度決定部281と、を含む。 The virtual execution control unit 257 controls the simulation unit 255, and causes the virtual device in which the simulation unit 255 simulates the MFP 100 to execute a test job. The virtual execution control unit 257 includes a confirmation unit 271, an alternative unit 273, an installation unit 275, a setting set determination unit 277, an operation state acquisition unit 279, and a priority determination unit 281.

優先度決定部281は、履歴取得部253から入力される履歴情報に基づいて、MFP100が実行可能な複数の処理それぞれに優先度を決定する。履歴情報は、MFP100で実行されたジョブを定める。ジョブは、複数の処理を組み合わせたものであり、複数の処理の組み合わせの違いにより複数の種類がある。例えば、種類がコピーのジョブは、原稿を読み取るスキャン処理と、画像データを画像形成する画像形成処理とを組み合わせたジョブである。種類がファクシミリ受信のジョブは、ファクシミリデータを受信する処理と、ファクシミリデータを画像データに変換する処理と、画像データを画像形成する画像形成処理とを組み合わせたジョブである。 The priority determination unit 281 determines the priority for each of the plurality of processes that can be executed by the MFP 100 based on the history information input from the history acquisition unit 253. The history information defines the job executed by the MFP 100. A job is a combination of a plurality of processes, and there are a plurality of types depending on the difference in the combination of the plurality of processes. For example, a job of type copy is a job that combines a scanning process for reading a document and an image forming process for forming an image of image data. A job of type facsimile reception is a job that combines a process of receiving facsimile data, a process of converting facsimile data into image data, and an image forming process of forming an image of image data.

優先度決定部281は、履歴情報に基づいて、過去に実行されたことのある処理に対して優先度を決定する。具体的には、優先度決定部281は、履歴情報に含まれる複数のジョブに基づいて、それぞれのジョブで定められる1以上の処理の種類ごとに、その処理が実行された回数を算出し、複数の種類の処理ごとに過去に実行された回数が多いほど高い優先順位を決定する。 The priority determination unit 281 determines the priority for the processing that has been executed in the past based on the history information. Specifically, the priority determination unit 281 calculates the number of times the processing is executed for each of one or more processing types defined in each job based on a plurality of jobs included in the history information. The higher the number of times each of multiple types of processing has been executed in the past, the higher the priority is determined.

優先度決定部281は、複数の種類の処理ごとの優先度を示す優先度情報を確認部271およびインストール部275に出力する。優先度情報は、複数の種類の処理ごとに、処理を識別するための処理識別情報と優先度との組を含む。 The priority determination unit 281 outputs priority information indicating the priority for each of a plurality of types of processes to the confirmation unit 271 and the installation unit 275. The priority information includes a set of process identification information and a priority for identifying the process for each of a plurality of types of processes.

確認部271は、エラー情報受信部259からエラー情報が入力されることに応じて、エラー情報を代替部273およびインストール部275に出力する。 The confirmation unit 271 outputs the error information to the alternative unit 273 and the installation unit 275 in response to the error information input from the error information receiving unit 259.

代替部273は、確認部271からエラー情報が入力される場合、エラー情報で特定されるハードウェア資源で実行される処理を定めた代替プログラムをインストール部275に通知する。具体的には、エラー情報が画像制御ASIC177において故障個所として特定されたDMAチャンネルを識別するためのチャンネル識別情報を含む場合、そのDMAチャンネルに対して割り当てられた処理を定めた代替プログラムをインストール部275に通知する。エラー情報が複数のチャンネル識別情報を含む場合、代替部273は、複数のDMAチャンネルにそれぞれ対応する処理を定めた複数の代替プログラムをインストール部275に通知する。 When the error information is input from the confirmation unit 271, the alternative unit 273 notifies the installation unit 275 of an alternative program that defines the processing to be executed by the hardware resource specified by the error information. Specifically, when the error information includes the channel identification information for identifying the DMA channel identified as the failure location in the image control ASIC177, the installation unit installs an alternative program that defines the processing assigned to the DMA channel. Notify 275. When the error information includes a plurality of channel identification information, the alternative unit 273 notifies the installation unit 275 of a plurality of alternative programs for which processing corresponding to each of the plurality of DMA channels is defined.

インストール部275は、優先度決定部281から入力される優先度に基づいて、優先度の高い順に処理を1つずつ選択し、複数の既定プログラムのうちから、また、代替部273から代替プログラムが通知される場合には、複数の既定プログラムおよび代替プログラムのうちから、選択された処理を定めるプログラムをインストールする。ここでのインストール部275によるインストールとは、プログラムの実行ファイルを仮想メモリ303のRAM175に対応する部分に記憶し、仮想装置がプログラムを実行可能な状態に仮想装置を設定することをいう。例えば、インストール部275は、既定プログラムおよび代替プログラムそれぞれが実行可能な状態に設定される場合に、RAM175に記憶されるデータ量を定めておき、インストールされたプログラムおよびインストールされていない1以上のプログラムのうち優先度が最高のプログラムそれぞれのデータ量の合計が、RAM175の使用可能な領域の容量を超えない場合にインストール可能と判断する。 The installation unit 275 selects processes one by one in descending order of priority based on the priority input from the priority determination unit 281, and the alternative program is selected from among a plurality of default programs and from the alternative unit 273. When notified, install the program that determines the selected process from the multiple default programs and alternative programs. The installation by the installation unit 275 here means that the execution file of the program is stored in the portion corresponding to the RAM 175 of the virtual memory 303, and the virtual device is set in a state in which the virtual device can execute the program. For example, the installation unit 275 determines the amount of data stored in the RAM 175 when each of the default program and the alternative program is set to be executable, and the installed program and one or more programs not installed are set. When the total amount of data of each of the programs having the highest priority does not exceed the capacity of the usable area of the RAM 175, it is determined that the program can be installed.

確認部271は、インストール部275によってインストールされたプログラムに基づいて、1以上のテストジョブを決定し、決定された1以上のテストジョブを仮想装置に実行させる。具体的には、確認部271は、インストール部275によって仮想装置にインストールされた1以上のプログラムでそれぞれ定められる1以上の処理を特定する。MFP100が実行可能な複数の処理をそれぞれ定めた複数のテストジョブを予め準備しておき、確認部271は、予め準備された複数のテストジョブのうちから、特定された1以上の処理を定めた1以上のテストジョブを決定し、決定された1以上のテストジョブを仮想装置に実行させる。 The confirmation unit 271 determines one or more test jobs based on the program installed by the installation unit 275, and causes the virtual device to execute the determined one or more test jobs. Specifically, the confirmation unit 271 specifies one or more processes defined by one or more programs installed in the virtual device by the installation unit 275. A plurality of test jobs in which a plurality of processes that can be executed by the MFP 100 are defined are prepared in advance, and the confirmation unit 271 defines one or more specified processes from the plurality of test jobs prepared in advance. One or more test jobs are determined, and the determined one or more test jobs are executed by the virtual device.

複数のテストジョブは、それぞれに対して、基準値が予め定められている。基準値は、MFP100にハードウェア資源に故障が発生していない正常時の状態で、MFP100がテストジョブを実行した場合における動作状態を示す値である。動作状態を示す値は、例えば、テストジョブを開始してから終了するまでの処理時間、CPU171の使用率、テストジョブを実行している間のレスポンスタイムである。レスポンスタイムは、ユーザーが操作パネル115に操作を入力してからその操作に対応する処理の実行を完了するまでの時間である。 Reference values are set in advance for each of the plurality of test jobs. The reference value is a value indicating an operating state when the MFP 100 executes a test job in a normal state in which no hardware resource failure has occurred in the MFP 100. The values indicating the operating state are, for example, the processing time from the start to the end of the test job, the usage rate of the CPU 171, and the response time while the test job is being executed. The response time is the time from when the user inputs an operation to the operation panel 115 to when the execution of the process corresponding to the operation is completed.

動作状態取得部279は、シミュレート部255がシミュレートする仮想装置がテストジョブを実行する間における動作状態を取得し、取得された動作状態をインストール部275に出力する。 The operation state acquisition unit 279 acquires the operation state while the virtual device simulated by the simulation unit 255 executes the test job, and outputs the acquired operation state to the installation unit 275.

インストール部275は、動作状態取得部279から入力される動作状態が許容条件を満たす場合、最後にインストールしたプログラムを識別するためのプログラム識別情報を含む追加指示を、確認部271および設定組決定部277に出力する。また、インストール部275は、動作状態取得部279から入力される動作状態が許容条件を満たす場合、未だ選択されていない処理のうちから優先度の最高の処理を選択し、複数の既定プログラムのうちから、また、代替部273から代替プログラムが通知される場合には、複数の既定プログラムおよび代替プログラムのうちから、選択された処理を定めるプログラムをインストールする。 When the operating state input from the operating state acquisition unit 279 satisfies the allowable condition, the installation unit 275 gives an additional instruction including program identification information for identifying the last installed program to the confirmation unit 271 and the setting set determination unit. Output to 277. Further, when the operating state input from the operating state acquisition unit 279 satisfies the allowable condition, the installation unit 275 selects the process having the highest priority from the processes that have not yet been selected, and among a plurality of default programs. When the alternative program is notified from the alternative unit 273, a program that determines the selected process from the plurality of default programs and the alternative program is installed.

インストール部275は、動作状態取得部279から入力される動作状態が許容条件を満たさない場合、設定組決定部277に決定指示を出力する。インストール部275は、動作状態で示される評価値が、基準値内であれば、許容条件を満たすと判断する。例えば、動作状態としてテストジョブを開始してから終了するまでの処理時間を用いる場合、処理時間が基準値以下であれば許容条件を満たすと判断し、処理時間が基準値を超えるならば許容条件を満たさないと判断する。また、動作状態としてCPU171の使用率を用いる場合、仮想装置の仮想CPU301の使用率が基準値以下であれば許容条件を満たすと判断するが、仮想装置の仮想CPU301の使用率が基準値より大きければ許容条件を満たさないと判断する。また、動作状態としてレスポンスタイムを用いる場合、仮想装置のレスポンスタイムが基準値以下であれば許容条件を満たすと判断するが、仮想装置のレスポンスタイムが基準値より大きければ許容条件を満たさないと判断する。 When the operating state input from the operating state acquisition unit 279 does not satisfy the permissible condition, the installation unit 275 outputs a determination instruction to the setting group determination unit 277. The installation unit 275 determines that the permissible condition is satisfied if the evaluation value indicated in the operating state is within the reference value. For example, when the processing time from the start to the end of the test job is used as the operating state, it is judged that the allowable condition is satisfied if the processing time is less than the reference value, and the allowable condition is satisfied if the processing time exceeds the reference value. Is not satisfied. Further, when the usage rate of the CPU 171 is used as the operating state, it is determined that the allowable condition is satisfied if the usage rate of the virtual CPU 301 of the virtual device is equal to or less than the reference value, but the usage rate of the virtual CPU 301 of the virtual device is larger than the reference value. If it is judged that the allowable condition is not satisfied. When the response time is used as the operating state, it is judged that the allowable condition is satisfied if the response time of the virtual device is equal to or less than the reference value, but the allowable condition is not satisfied if the response time of the virtual device is larger than the reference value. do.

設定組決定部277は、インストール部275から決定指示が入力される場合に、それまでにインストール部275から入力された1以上の追加指示に含まれるプログラム識別情報で特定される1以上のインストールプログラムの組を設定組に決定する。設定組決定部277は、設定組を決定する場合、設定組を設定指示部261に出力する。 The setting group determination unit 277 is one or more installation programs specified by the program identification information included in one or more additional instructions input from the installation unit 275 so far when the determination instruction is input from the installation unit 275. The set of is determined as the setting set. When determining the setting group, the setting group determination unit 277 outputs the setting group to the setting instruction unit 261.

確認部271は、インストール部275によって1以上のプログラムがインストールされるごとに、テストジョブを決定し、シミュレート部255を制御して仮想装置にテストジョブを実行させる。インストール部275は、動作状態取得部279から許容条件を満たす動作状態が入力されるごとに、優先度の高い順に処理を1つ選択し、選択された処理を定めるプログラムをインストールする。このため、設定組決定部277によって、許容条件を満たす最大数のプログラムの組が設定組に決定される。 The confirmation unit 271 determines a test job each time one or more programs are installed by the installation unit 275, controls the simulation unit 255, and causes the virtual device to execute the test job. Each time the operation state acquisition unit 279 inputs an operation state satisfying the allowable condition, the installation unit 275 selects one process in descending order of priority and installs a program that determines the selected process. Therefore, the setting set determination unit 277 determines the maximum number of program sets satisfying the allowable conditions as the setting set.

また、確認部271は、エラー情報受信部259から入力されるエラー情報に基づいて、実行不可テーブルを生成する。実行不可テーブルは、MFP100が実行することのできない処理を定めるテーブルである。確認部271は、エラー情報で特定されるハードウェア資源が、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150、通信I/F部160、ファクシミリ部170、外部記憶装置180、および操作パネル115の場合、それらで実行される処理を識別するための処理識別情報を実行不可テーブルに追加する。確認部271は、エラー情報で特定されるハードウェア資源がRAM175またはHDD113の場合、それらによって処理を特定できないので、実行不可テーブルを更新しない。また、確認部271は、エラー情報で特定されるハードウェア資源が画像制御ASIC177の場合、代替部273によって代替プログラムがインストールされ、処理が実行可能なので、実行不可テーブルを更新しない。 Further, the confirmation unit 271 generates an unexecutable table based on the error information input from the error information reception unit 259. The non-executable table is a table that defines the processing that cannot be executed by the MFP 100. In the confirmation unit 271, the hardware resources specified by the error information are the automatic document transfer device 120, the document reading unit 130, the image forming unit 140, the paper feeding unit 150, the communication I / F unit 160, the facsimile unit 170, and the external storage. In the case of the device 180 and the operation panel 115, the process identification information for identifying the process executed by them is added to the non-executable table. When the hardware resource specified by the error information is RAM 175 or HDD 113, the confirmation unit 271 does not update the non-executable table because the process cannot be specified by them. Further, when the hardware resource specified by the error information is the image control ASIC177, the confirmation unit 271 does not update the non-executable table because the alternative program is installed by the alternative unit 273 and the process can be executed.

確認部271は、複数の既定プログラムおよび代替部273から通知された代替プログラムのうちインストール部275によってインストールされなかったプログラムが存在する場合には、実行不可テーブルを更新する。具体的には、確認部271は、インストールされなかったプログラムで定められる処理を識別するための処理識別情報を実行不可テーブルに追加する。なお、インストール部275によって最後にインストールされ、テストジョブの実行により許容条件を満たさなかったプログラムが存在する場合には、そのプログラムで定められる処理の処理識別情報を実行不可テーブルに追加する。 The confirmation unit 271 updates the non-executable table when there is a program that has not been installed by the installation unit 275 among the plurality of default programs and the alternative program notified from the alternative unit 273. Specifically, the confirmation unit 271 adds the process identification information for identifying the process defined by the program that has not been installed to the non-executable table. If there is a program that was last installed by the installation unit 275 and did not meet the permissible conditions due to the execution of the test job, the process identification information of the process defined by that program is added to the non-executable table.

設定指示部261は、設定組決定部277から設定組が入力されることに応じて、MFP100に設定組に含まれる1以上のプログラムのみがインストールされるようにMFP100を制御する。設定指示部261は、通信部205を制御して、MFP100に設定指示を送信する。設定指示は、確認部271から入力される実行不可テーブルと、設定組に含まれる1以上のプログラムを識別するためのプログラム識別情報とを含み、設定組に含まれる1以上のプログラムが代替プログラムを含む場合には代替プログラムを含む。設定指示部261は、設定指示を送信すると、依頼時記憶部263に記憶指示を出力する。 The setting instruction unit 261 controls the MFP 100 so that only one or more programs included in the setting set are installed in the MFP 100 in response to the input of the setting set from the setting set determination unit 277. The setting instruction unit 261 controls the communication unit 205 and transmits a setting instruction to the MFP 100. The setting instruction includes an unexecutable table input from the confirmation unit 271 and program identification information for identifying one or more programs included in the setting set, and one or more programs included in the setting set serve as alternative programs. If included, include alternative programs. When the setting instruction unit 261 transmits the setting instruction, the setting instruction unit 261 outputs the storage instruction to the request storage unit 263.

設定指示部261は、設定組決定部277から設定組が入力されることに応じて、MFP100に設定組に含まれる1以上のプログラムのみがインストールされるようにMFP100を制御する。設定指示部261は、通信部205を制御して、MFP100に設定指示を送信する。設定指示は、確認部271から入力される実行不可テーブルと、設定組に含まれる1以上のプログラムを識別するためのプログラム識別情報とを含み、設定組に含まれる1以上のプログラムが代替プログラムを含む場合には代替プログラムを含む。設定指示部261は、設定指示を送信すると、依頼時記憶部263に記憶指示を出力する。 The setting instruction unit 261 controls the MFP 100 so that only one or more programs included in the setting set are installed in the MFP 100 in response to the input of the setting set from the setting set determination unit 277. The setting instruction unit 261 controls the communication unit 205 and transmits a setting instruction to the MFP 100. The setting instruction includes an unexecutable table input from the confirmation unit 271 and program identification information for identifying one or more programs included in the setting set, and one or more programs included in the setting set serve as alternative programs. If included, include alternative programs. When the setting instruction unit 261 transmits the setting instruction, the setting instruction unit 261 outputs the storage instruction to the request storage unit 263.

ここで、図6に示した、復元依頼部94、設定指示受付部95、一時記憶依頼部96、設定部63および復元部65とともに説明する。 Here, it will be described together with the restoration request unit 94, the setting instruction reception unit 95, the temporary storage request unit 96, the setting unit 63, and the restoration unit 65 shown in FIG.

設定指示を受信するMFP100の設定指示受付部95は、通信I/F部160がサーバー200から設定指示を受信すると、受信された設定指示を受け付ける。設定指示受付部95は、設定指示を受け付けると、一時記憶依頼部96に依頼指示を出力する。 When the communication I / F unit 160 receives the setting instruction from the server 200, the setting instruction receiving unit 95 of the MFP 100 that receives the setting instruction receives the received setting instruction. When the setting instruction receiving unit 95 receives the setting instruction, the setting instruction receiving unit 95 outputs the request instruction to the temporary storage request unit 96.

一時記憶依頼部96は、依頼指示が入力されることに応じて、その時点でCPU171にインストールされている1以上のプログラムの一時的な記憶をサーバー200に依頼する。具体的には、CPU171にインストールされている1以上のプログラムを含む退避依頼を、通信I/F部160を制御して、サーバー200に送信する。一時記憶依頼部96は、退避依頼のサーバー200への送信が完了すると、設定指示受付部95に完了信号を出力する。サーバー200の依頼時記憶部263は、通信部205がMFP100から退避依頼を受信することに応じて、受信された退避依頼に含まれる1以上のプログラムをMFP100と関連付けてHDD204に記憶する。 The temporary storage request unit 96 requests the server 200 to temporarily store one or more programs installed in the CPU 171 at that time in response to the input of the request instruction. Specifically, a save request including one or more programs installed in the CPU 171 is transmitted to the server 200 by controlling the communication I / F unit 160. When the transmission of the evacuation request to the server 200 is completed, the temporary storage request unit 96 outputs a completion signal to the setting instruction reception unit 95. The request storage unit 263 of the server 200 stores one or more programs included in the received evacuation request in the HDD 204 in association with the MFP 100 in response to the communication unit 205 receiving the evacuation request from the MFP 100.

設定指示受付部95は、一時記憶依頼部96より完了信号が入力されることに応じて、設定部63に設定情報を出力する。設定情報は、サーバー200から受信された設定指示を含む。 The setting instruction receiving unit 95 outputs the setting information to the setting unit 63 in response to the completion signal being input from the temporary storage request unit 96. The setting information includes the setting instruction received from the server 200.

設定部63は、設定情報が入力されることに応じて、設定指示に従って、設定指示に含まれるプログラム識別情報で特定されるプログラムのみをCPU171にインストールする。設定指示が代替プログラムを含む場合には、CPU171には、代替プログラムがインストールされるので、画像制御ASIC177に故障が発生している場合であっても、CPU171が代替プログラムを実行するので、画像制御ASIC177で実行できない画像処理をCPU171で実行することができる。 In response to the input of the setting information, the setting unit 63 installs only the program specified by the program identification information included in the setting instruction in the CPU 171 according to the setting instruction. When the setting instruction includes an alternative program, the alternative program is installed in the CPU 171. Therefore, even if the image control ASIC177 has a failure, the CPU 171 executes the alternative program, so that the image control can be performed. The CPU 171 can execute image processing that cannot be executed by the ASIC 177.

また、設定部63は、設定指示が実行不可テーブルを含む場合、実行不可テーブルに含まれる処理識別情報で識別される処理を実行不可に設定する。また、設定部63は、実行不可に設定された処理に対して、ユーザーにより実行を指示する操作が入力される場合に、指示された処理を実行できないことを通知するためのエラーメッセージを表示する。 Further, when the setting instruction includes the non-executable table, the setting unit 63 sets the process identified by the process identification information included in the non-executable table to be non-executable. In addition, the setting unit 63 displays an error message for notifying that the instructed process cannot be executed when an operation instructing execution is input by the user for the process set to be non-executable. ..

また、MFP100は、エラー情報を送信した後に、ハードウェア資源が交換などで故障が解消する場合がある。ハードエラー検出部61は、RAM175または画像制御ASIC177において故障個所を検出した後に、RAM175または画像制御ASIC177が交換されるなどすると、故障が解消したことを検出する。具体的には、ハードエラー検出部61は、RAM175において不具合を検出した後、所定時間間隔で、RAM175をスキャンして、アクセスができない領域を特定できない場合に、故障の解消を検出する。また、ハードエラー検出部61は、画像制御ASIC177において故障個所を検出した後に、所定時間間隔で、故障個所のDMAチャンネルについて、動作チェックを実行し、出力値が期待値の範囲内となる場合に、故障の解消を検出する。ハードエラー検出部61は、故障が解消したことを検出すると、復元指示を復元依頼部94に出力する。 Further, the MFP 100 may solve the failure by exchanging hardware resources after transmitting the error information. The hardware error detection unit 61 detects that the failure has been resolved when the RAM 175 or the image control ASIC 177 is replaced after the failure point is detected in the RAM 175 or the image control ASIC 177. Specifically, the hard error detection unit 61 scans the RAM 175 at predetermined time intervals after detecting a defect in the RAM 175, and detects the resolution of the failure when the inaccessible area cannot be specified. Further, when the hard error detection unit 61 detects a failure location in the image control ASIC177 and then executes an operation check for the DMA channel of the failure location at a predetermined time interval and the output value is within the expected value range. , Detect the resolution of the failure. When the hard error detection unit 61 detects that the failure has been resolved, it outputs a restoration instruction to the restoration request unit 94.

復元依頼部94は、復元指示が入力されることに応じて、サーバー200にプログラムの復元を依頼する。具体的には、復元依頼部94は、通信I/F部160を制御して、サーバー200に復元依頼を送信する。 The restoration request unit 94 requests the server 200 to restore the program in response to the restoration instruction being input. Specifically, the restoration request unit 94 controls the communication I / F unit 160 and transmits a restoration request to the server 200.

サーバー200の復元依頼受付部265は、通信部205がMFP100から復元依頼を受信する場合、依頼時記憶部263によりHDD204に記憶された複数のプログラムを読み出して、通信部205を制御して、それらをMFP100に送信する。 When the communication unit 205 receives the restoration request from the MFP 100, the restoration request reception unit 265 of the server 200 reads out a plurality of programs stored in the HDD 204 by the request storage unit 263, controls the communication unit 205, and controls them. Is transmitted to the MFP 100.

MFP100の復元部65は、通信I/F部160がサーバー200から1以上のプログラムを受信すると、受信されたプログラムのみをCPU171にインストールする。これにより、CPU171にインストールされる1以上のプログラムを、RAM175または画像制御ASIC177に故障が発生する前と同じにすることができる。 When the communication I / F unit 160 receives one or more programs from the server 200, the restoration unit 65 of the MFP 100 installs only the received programs in the CPU 171. As a result, one or more programs installed in the CPU 171 can be made the same as before the failure occurred in the RAM 175 or the image control ASIC 177.

図8は、ハードエラー検出結果の一例を示す図である。図8を参照して、画像制御ASIC177が8つのDMAチャンネルごとに、その動作チェックの結果を示している。動作チェック結果が正常となる場合を「OK」で示し、動作チェック結果がエラーとなる場合を「NG」で示す。ここでは、チャンネル番号がDMA−05のDMAチャンネルとチャンネル番号がDMA07のDMAチャンネルにおいて、動作チェックでエラーとなったことを示している。この場合、チャンネル番号がDMA−05のDMAチャンネルに割り当てられた画像合成処理を定める代替プログラムおよびチャンネル番号がDMA−07のDMAチャンネルに割り当てられた変倍処理を定める代替プログラムをCPU171にインストールすることによって、画像制御ASIC177において実行できなくなった画像合成処理および変倍処理を、CPU171で実行することができる。 FIG. 8 is a diagram showing an example of a hard error detection result. With reference to FIG. 8, the image control ASIC177 shows the result of the operation check for each of the eight DMA channels. The case where the operation check result is normal is indicated by "OK", and the case where the operation check result is an error is indicated by "NG". Here, it is shown that an error occurred in the operation check in the DMA channel having the channel number DMA-05 and the DMA channel having the channel number DMA07. In this case, the CPU 171 should be equipped with an alternative program that defines the image composition process assigned to the DMA channel whose channel number is DMA-05 and an alternative program that defines the scaling process assigned to the DMA channel whose channel number is DMA-07. As a result, the CPU 171 can execute the image composition processing and the scaling process that cannot be executed in the image control ASIC177.

図9は、履歴情報の集計結果の一例を示す図である。図9を参照して、集計結果は、処理ごとに実行された回数である。この場合、プリント出力処理、圧縮/伸長処理、FAX転送処理、変倍処理、暗号/復号処理、スキャン処理、色変換処理、画像合成処理の順に実行回数が多いので、実行回数が大きい順に優先度が高い。 FIG. 9 is a diagram showing an example of the aggregation result of the history information. With reference to FIG. 9, the aggregation result is the number of times each process is executed. In this case, the print output processing, compression / decompression processing, fax transfer processing, scaling processing, encryption / decryption processing, scanning processing, color conversion processing, and image composition processing have the highest number of executions in this order, so the priority is given in descending order of the number of executions. Is high.

図10は、装置設定処理の流れの一例を示すフローチャートである。装置設定処理は、サーバー200が備えるCPU201が、装置設定プログラムを実行することにより、CPU201により実行される処理である。図10を参照して、サーバー200が備えるCPU201は、通信部205を制御して、MFP100から装置情報とエラー情報とを受信したか否かを判断する(ステップS01)。装置情報とエラー情報とを受信するまで待機状態となり(ステップS01でNO)、装置情報とエラー情報とを受信したならば(ステップS01でYES)、処理をステップS02に進める。 FIG. 10 is a flowchart showing an example of the flow of the device setting process. The device setting process is a process executed by the CPU 201 when the CPU 201 included in the server 200 executes the device setting program. With reference to FIG. 10, the CPU 201 included in the server 200 controls the communication unit 205 to determine whether or not the device information and the error information have been received from the MFP 100 (step S01). The standby state is set until the device information and the error information are received (NO in step S01), and when the device information and the error information are received (YES in step S01), the process proceeds to step S02.

ステップS02においては、通信部205を制御して、MFP100から履歴情報を受信する。次のステップS03においては、過去に実行された処理に優先順位を付与し、処理をステップS04に進める。ステップS02において受信された履歴情報に含まれるジョブの履歴に基づいて、ジョブに含まれる処理ごとに、過去に実行された回数を算出する。そして、MFP100が実行可能な複数の処理ごとに、実行回数が多いほど高い優先順位を付与する。ステップS04においては、仮想装置設定処理を実行し、処理をステップS05に進める。仮想装置設定処理の詳細は後述するが、仮想装置をシミュレートし、設定組を決定する処理である。 In step S02, the communication unit 205 is controlled to receive the history information from the MFP 100. In the next step S03, priority is given to the processes executed in the past, and the process proceeds to step S04. Based on the history of the job included in the history information received in step S02, the number of times executed in the past is calculated for each process included in the job. Then, for each of a plurality of processes that can be executed by the MFP 100, a higher priority is given as the number of executions increases. In step S04, the virtual device setting process is executed, and the process proceeds to step S05. The details of the virtual device setting process will be described later, but it is a process of simulating a virtual device and determining a setting set.

ステップS05においては、設定指示を、エラー情報を送信してきたMFP100に送信し、処理をステップS06に進める。設定指示は、設定組に含まれる1以上のプログラムのみがインストールされるようにMFP100を制御する指令である。設定指示は、実行不可テーブルと、設定組に含まれる1以上のプログラムを識別するためのプログラム識別情報と、を含む。また、設定指示は、設定組に含まれる1以上のプログラムのうちに代替プログラムが含まれる場合は、その代替プログラムを含む。 In step S05, the setting instruction is transmitted to the MFP 100 that has transmitted the error information, and the process proceeds to step S06. The setting instruction is a command for controlling the MFP 100 so that only one or more programs included in the setting set are installed. The setting instruction includes an non-executable table and program identification information for identifying one or more programs included in the setting set. Further, when the alternative program is included in one or more programs included in the setting set, the setting instruction includes the alternative program.

設定指示を受信するMFP100は、設定指示に従って設定組に含まれる1以上のプログラムのみをインストールするが、インストールする前の段階でインストールされている1以上のプログラムを退避用プログラムとして送信する。ステップS06においては、通信部205を制御して、MFP100から送信される退避用プログラムを受信する。そして、受信された退避用プログラムをHDD204にMFP100と関連付けて記憶し(ステップS07)、処理をステップS08に進める。 The MFP 100 that receives the setting instruction installs only one or more programs included in the setting set according to the setting instruction, but transmits one or more programs installed in the stage before installation as a backup program. In step S06, the communication unit 205 is controlled to receive the save program transmitted from the MFP 100. Then, the received save program is stored in the HDD 204 in association with the MFP 100 (step S07), and the process proceeds to step S08.

MFP100においては、故障したハードウェア資源が修理されることによりハードウェア資源の故障が回復すると、サーバー200にプログラムの復元を依頼する。ステップS08においては、通信部205がMFP100から復元依頼を受信したか否かを判断する。復元依頼を受信するまで待機状態となり、復元依頼を受信したならば処理をステップS09に進める。ステップS09においては、HDD204にMFP100に関連付けられた記憶された退避用プログラムを、通信部205を制御してMFP100に送信し、処理を終了する。 In the MFP 100, when the failure of the hardware resource is recovered by repairing the failed hardware resource, the server 200 is requested to restore the program. In step S08, it is determined whether or not the communication unit 205 has received the restoration request from the MFP 100. The state waits until the restoration request is received, and when the restoration request is received, the process proceeds to step S09. In step S09, the save program stored in the HDD 204 associated with the MFP 100 is transmitted to the MFP 100 by controlling the communication unit 205, and the process ends.

図11は、仮想装置設定処理の流れの一例を示すフローチャートである。図11を参照して、CPU201は、装置設定処理のステップS01において受信された装置情報に基づいて、シミュレート対象であるMFP100のハードウェア資源を仮想装置に設定し(ステップS21)、処理をステップS22に進める。具体的には、装置情報に含まれるハード情報で定められたハードウェア資源をエミュレートするエミュレータを設定する。 FIG. 11 is a flowchart showing an example of the flow of the virtual device setting process. With reference to FIG. 11, the CPU 201 sets the hardware resource of the MFP 100 to be simulated in the virtual device based on the device information received in step S01 of the device setting process (step S21), and steps the process. Proceed to S22. Specifically, an emulator that emulates the hardware resources defined by the hardware information included in the device information is set.

次のステップS22においては、画像制御ASIC177が故障したか否かを判断する。装置設定処理のステップS01において受信されたエラー情報が、チャンネル識別情報を含む場合、画像制御ASIC177が故障したと判断する。画像制御ASIC177が故障したと判断する場合、処理をステップS23に進め、そうでなければ処理をステップS25に進める。ステップS23においては、仮想装置に故障を設定し、処理をステップS24に進める。具体的には、ステップS21において仮想装置のエミュレートとして設定された画像制御ASICモデル323において、エラー情報に含まれるチャンネル識別情報で特定されるDMAチャンネルを使用不可の状態に設定する。 In the next step S22, it is determined whether or not the image control ASIC177 has failed. If the error information received in step S01 of the device setting process includes the channel identification information, it is determined that the image control ASIC177 has failed. If it is determined that the image control ASIC177 has failed, the process proceeds to step S23, and if not, the process proceeds to step S25. In step S23, a failure is set in the virtual device, and the process proceeds to step S24. Specifically, in the image control ASIC model 323 set as the emulation of the virtual device in step S21, the DMA channel specified by the channel identification information included in the error information is set to the unusable state.

ステップS24においては、代替プログラムを決定し、処理をステップS25に進める。エラー情報に含まれるチャンネル識別情報で特定されるDMAチャンネルに割り当てられた処理を定めたプログラムを代替プログラムに決定する。エラー情報が複数のチャンネル識別情報を含む場合は、複数のDMAチャンネルにそれぞれ対応する複数の代替プログラムを決定する。 In step S24, an alternative program is determined and the process proceeds to step S25. The program that defines the processing assigned to the DMA channel specified by the channel identification information included in the error information is determined as the alternative program. When the error information includes a plurality of channel identification information, a plurality of alternative programs corresponding to the plurality of DMA channels are determined.

次のステップS25においては、RAM175が故障したか否かを判断する。ステップS01において受信されたエラー情報が、RAM175の故障個所を特定する領域情報を含む場合、RAM175が故障したと判断する。RAM175が故障したならば処理をステップS26に進めるが、そうでなければ処理をステップS27に進める。ステップS26においては、ステップS02において設定された仮想装置において、RAM175をエミュレートする仮想メモリ303のRAM175に対応する部分であって、エラー情報に含まれる領域情報で特定される部分をアクセス不可能な状態に設定する。 In the next step S25, it is determined whether or not the RAM 175 has failed. When the error information received in step S01 includes the area information for identifying the failure location of the RAM 175, it is determined that the RAM 175 has failed. If the RAM 175 fails, the process proceeds to step S26, otherwise the process proceeds to step S27. In step S26, in the virtual device set in step S02, the portion of the virtual memory 303 that emulates the RAM 175, which corresponds to the RAM 175 and is specified by the area information included in the error information, cannot be accessed. Set to state.

ステップS27においては、RAM175および画像制御ASIC177以外の他のハードウェア資源が故障したか否かを判断する。エラー情報が領域情報およびチャンネル識別情報とは別の故障個所を示す情報を含む場合、処理をステップS28に進めるが、そうでなければ処理をステップS29に進める。ステップS28においては、実行不可テーブルを更新し、処理をステップS29に進める。MFP100が有するハードウェア資源は、RAM175および画像制御ASIC177とは別に、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150、通信I/F部160、ファクシミリ部170、外部記憶装置180、HDD113および操作パネル115がある。エラー情報が、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150、通信I/F部160、ファクシミリ部170、外部記憶装置180、HDD113または操作パネル115で故障が発生したことを示す情報を含む場合、故障が発生したハードウェア資源で実行される処理を、実行不可テーブルに追加する。 In step S27, it is determined whether or not a hardware resource other than the RAM 175 and the image control ASIC 177 has failed. If the error information includes information indicating a failure location other than the area information and the channel identification information, the process proceeds to step S28, but if not, the process proceeds to step S29. In step S28, the non-executable table is updated and the process proceeds to step S29. The hardware resources of the MFP 100 are, apart from the RAM 175 and the image control ASIC 177, an automatic document transfer device 120, a document reading unit 130, an image forming unit 140, a paper feeding unit 150, a communication I / F unit 160, a facsimile unit 170, and an external device. There is a storage device 180, an HDD 113, and an operation panel 115. Error information occurs in the automatic document transfer device 120, document reading unit 130, image forming unit 140, paper feeding unit 150, communication I / F unit 160, facsimile unit 170, external storage device 180, HDD 113, or operation panel 115. If it contains information indicating that it has been done, the processing executed by the hardware resource in which the failure occurred is added to the non-executable table.

ステップS29においては、処理対象に選択されていない処理のうちから優先度が最高の処理を処理対象に選択する。そして、処理対象に選択された処理を定めるプログラムが選択可能か否かを判断する(ステップS30)。処理対象に選択された処理を定めるプログラムが選択可能ならば処理をステップS31に進めるが、そうでなければ処理をステップS35に進める。MFP100にインストールされている複数の既定プログラムと、ステップS24において決定された代替プログラムのうちに、処理対象に選択された処理を定めるプログラムが存在すれば、そのプログラムを選択するが、処理対象に選択された処理を定めるプログラムが存在しなければ、選択不可と判断する。処理対象に選択された処理を定めるプログラムが存在しない場合は、例えば、画像制御ASIC177に故障が発生し、代替プログラムが存在しない場合である。 In step S29, the process having the highest priority is selected as the processing target from the processes not selected as the processing target. Then, it is determined whether or not the program that defines the process selected as the processing target can be selected (step S30). If the program that defines the process selected as the processing target can be selected, the process proceeds to step S31, but if not, the process proceeds to step S35. If there is a program that defines the process selected as the processing target among the plurality of default programs installed in the MFP 100 and the alternative program determined in step S24, that program is selected, but the program is selected as the processing target. If there is no program that defines the processed processing, it is judged that selection is not possible. When there is no program that defines the selected process as the processing target, for example, a failure occurs in the image control ASIC177 and there is no alternative program.

ステップS31においては、選択されたプログラムを仮想装置にインストール可能か否かを判断する。仮想メモリ303のRAM175をエミュレートする部分の空き容量が、ステップS30において処理対象に選択されたプログラムを仮想装置が実行可能な状態にするために必要な容量が残されている否かを判断する。仮想メモリ303のRAM175をエミュレートする部分の空き容量が存在すれば処理をステップS32に進めるが、そうでなければ、処理をステップS39に進める。 In step S31, it is determined whether or not the selected program can be installed in the virtual device. It is determined whether or not the free space of the portion emulating the RAM 175 of the virtual memory 303 remains the capacity required for the virtual device to execute the program selected as the processing target in step S30. .. If there is free space in the portion of the virtual memory 303 that emulates the RAM 175, the process proceeds to step S32, otherwise the process proceeds to step S39.

ステップS32においては、ステップS28において処理対象に選択されたプログラムをインストールし、処理をステップS33に進める。具体的には、処理対象に選択されたプログラムを仮想装置が実行可能な状態に設定する。例えば、実行ファイルを仮想メモリ303のRAM175をエミュレートする部分に記憶する。 In step S32, the program selected as the processing target in step S28 is installed, and the processing proceeds to step S33. Specifically, the program selected as the processing target is set in a state in which the virtual device can be executed. For example, the executable file is stored in the part of the virtual memory 303 that emulates the RAM 175.

ステップS33においては、テストジョブを仮想装置に実行させ、処理をステップS34に進める。予め準備された複数のテストジョブのうちから、仮想装置にインストールされているすべての処理をそれぞれ定めた1以上のテストジョブを決定する。そして、決定されたテストジョブを仮想装置に実行させる。テストジョブが複数の場合、複数のテストジョブを順に仮想装置に実行させる。 In step S33, the virtual device is made to execute the test job, and the process proceeds to step S34. From a plurality of test jobs prepared in advance, one or more test jobs that define all the processes installed in the virtual device are determined. Then, the determined test job is executed by the virtual device. If there are multiple test jobs, have the virtual device execute multiple test jobs in order.

ステップS34においては、仮想装置の動作状態を検出し、処理をステップS35に進める。ここでは、仮想装置の動作状態を、仮想装置の評価値を測定することにより検出する。テストジョブは、基準値が定められているので、基準値に対応する評価値を測定する。動作状態として検出される評価値は、テストジョブの基準値が処理時間を示す場合は、テストジョブを開始してから終了するまでの時間であり、テストジョブの基準値がCPU171の使用率を示す場合は、テストジョブを実行している間の仮想CPU301の使用率であり、テストジョブの基準値がレスポンスタイムを示す場合は、操作パネル115Aに操作を入力してからその操作に対応する処理の実行を完了するまでの時間である。 In step S34, the operating state of the virtual device is detected, and the process proceeds to step S35. Here, the operating state of the virtual device is detected by measuring the evaluation value of the virtual device. Since the reference value is set for the test job, the evaluation value corresponding to the reference value is measured. The evaluation value detected as the operating state is the time from the start to the end of the test job when the reference value of the test job indicates the processing time, and the reference value of the test job indicates the usage rate of the CPU 171. In this case, it is the usage rate of the virtual CPU 301 while the test job is being executed. If the reference value of the test job indicates the response time, the operation is input to the operation panel 115A and then the processing corresponding to the operation is performed. The time to complete the execution.

ステップS35においては、許容範囲内か否かを判断する。動作状態として検出された評価値が基準値から所定の範囲内であれば許容範囲内と判断する。許容範囲内ならば処理をステップS37に進めるが、そうでなければ処理をステップS39に進める。ステップS37においては、ステップS30において選択されたプログラムを設定組に設定し、処理をステップS38に進める。 In step S35, it is determined whether or not it is within the permissible range. If the evaluation value detected as the operating state is within a predetermined range from the reference value, it is judged to be within the permissible range. If it is within the permissible range, the process proceeds to step S37, but if not, the process proceeds to step S39. In step S37, the program selected in step S30 is set in the setting set, and the process proceeds to step S38.

ステップS38においては、ステップS27において処理対象に選択されていない処理が存在するか否かを判断する。未選択の処理が存在するならば処理をステップS27に戻すが、そうでなければ処理をステップS39に進める。ステップS39においては、実行不可テーブルを更新し、処理を装置設定処理に戻す。具体的には、仮想装置にインストールされなかったすべてのプログラムで定められる処理の処理識別情報を実行不可テーブルに追加する。また、ステップS32において仮想装置にインストールされた後のステップS35において許容範囲外と判断されたプログラムで定められる処理の処理識別情報を実行不可テーブルに追加する。 In step S38, it is determined whether or not there is a process that is not selected as the processing target in step S27. If there is an unselected process, the process returns to step S27, otherwise the process proceeds to step S39. In step S39, the non-executable table is updated and the process is returned to the device setting process. Specifically, the process identification information of the process defined by all the programs not installed in the virtual device is added to the non-executable table. Further, the process identification information of the process defined by the program determined to be out of the permissible range in step S35 after being installed in the virtual device in step S32 is added to the non-executable table.

<第1の変形例>
第1の実施の形態におけるサーバー200は、設定組を決定するために、許容範囲を満たさなくなるまで、優先度の高い処理から順に選択し、選択された処理を定めるプログラムを仮想装置にインストールするようにした。第1の変形例におけるサーバー200は、設定組を決定するために、RAM175にインストール可能な数のプログラムをインストールしておき、許容範囲内になるまで、優先度の低い処理から順に選択して、選択された処理を定めるプログラムを仮想装置からアンインストールする。以下、第1の実施の形態におけるサーバー200と異なる点を主に説明する。
<First modification>
In order to determine the setting set, the server 200 in the first embodiment selects in order from the highest priority process until the allowable range is not satisfied, and installs a program that determines the selected process in the virtual device. I made it. The server 200 in the first modification installs an installable number of programs in the RAM 175 in order to determine the setting set, and selects in order from the lowest priority process until the allowable range is reached. Uninstall the program that defines the selected process from the virtual device. Hereinafter, the differences from the server 200 in the first embodiment will be mainly described.

図12は、第1の変形例におけるサーバーが備えるCPUが有する機能の一例を示すブロック図である。図12を参照して、図7に示した機能と異なる点は、仮想実行制御部257が仮想実行制御部257Aに変更された点である。その他の機能は、図7に示した機能と同じなので、ここでは説明を繰り返さない。 FIG. 12 is a block diagram showing an example of the function of the CPU included in the server in the first modification. The difference from the function shown in FIG. 7 with reference to FIG. 12 is that the virtual execution control unit 257 has been changed to the virtual execution control unit 257A. Since the other functions are the same as the functions shown in FIG. 7, the description is not repeated here.

仮想実行制御部257Aは、シミュレート部255を制御して、シミュレート部255がMFP100をシミュレートする仮想装置にテストジョブを実行させる。仮想実行制御部257Aは、確認部271Aと、代替部273Aと、アンインストール部275Aと、設定組決定部277Aと、動作状態取得部279Aと、優先度決定部281Aと、を含む。 The virtual execution control unit 257A controls the simulation unit 255, and causes the virtual device in which the simulation unit 255 simulates the MFP 100 to execute a test job. The virtual execution control unit 257A includes a confirmation unit 271A, an alternative unit 273A, an uninstall unit 275A, a setting set determination unit 277A, an operation state acquisition unit 279A, and a priority determination unit 281A.

優先度決定部281Aは、履歴取得部253から入力される履歴情報に基づいて、MFP100が実行可能な複数の処理それぞれに優先度を決定する。履歴情報は、MFP100で実行されたジョブを定める。ジョブは、複数の処理を組み合わせたものであり、複数の処理の組み合わせの違いにより複数の種類がある。例えば、種類がコピーのジョブは、原稿を読み取るスキャン処理と、画像データを画像形成する画像形成処理とを組み合わせたジョブである。種類がファクシミリ受信のジョブは、ファクシミリデータを受信する処理と、ファクシミリデータを画像データに変換する処理と、画像データを画像形成する画像形成処理とを組み合わせたジョブである。 The priority determination unit 281A determines the priority for each of the plurality of processes that can be executed by the MFP 100 based on the history information input from the history acquisition unit 253. The history information defines the job executed by the MFP 100. A job is a combination of a plurality of processes, and there are a plurality of types depending on the difference in the combination of the plurality of processes. For example, a job of type copy is a job that combines a scanning process for reading a document and an image forming process for forming an image of image data. A job of type facsimile reception is a job that combines a process of receiving facsimile data, a process of converting facsimile data into image data, and an image forming process of forming an image of image data.

優先度決定部281Aは、履歴情報に基づいて、過去に実行されたことのある処理に対して優先度を決定する。具体的には、優先度決定部281Aは、履歴情報に含まれる複数のジョブに基づいて、それぞれのジョブで定められる1以上の処理の種類ごとに、その処理が実行された回数を算出し、複数の種類の処理ごとに過去に実行された回数が多いほど高い優先順位を決定する。優先度決定部281Aは、複数の種類の処理ごとの優先度を示す優先度情報を確認部271Aおよびアンインストール部275Aに出力する。優先度情報は、複数の種類の処理ごとに、処理を識別するための処理識別情報と優先度との組を含む。また、優先度決定部281Aは、履歴に含まれる複数のジョブに基づいて、過去に実行されたことのない処理を特定し、特定された処理の処理を示す不実行情報をアンインストール部275Aに出力する。不実行情報は、過去に実行されたことのない処理を識別するための処理識別情報を含む。 The priority determination unit 281A determines the priority for the processing that has been executed in the past based on the history information. Specifically, the priority determination unit 281A calculates the number of times the processing is executed for each of one or more processing types defined in each job based on a plurality of jobs included in the history information. The higher the number of times each of multiple types of processing has been executed in the past, the higher the priority is determined. The priority determination unit 281A outputs priority information indicating the priority for each of a plurality of types of processes to the confirmation unit 271A and the uninstall unit 275A. The priority information includes a set of process identification information and a priority for identifying the process for each of a plurality of types of processes. Further, the priority determination unit 281A identifies a process that has not been executed in the past based on a plurality of jobs included in the history, and provides the uninstall unit 275A with non-execution information indicating the process of the specified process. Output. The non-execution information includes process identification information for identifying a process that has never been executed in the past.

確認部271Aは、エラー情報受信部259からエラー情報が入力されることに応じて、エラー情報を代替部273Aに出力する。代替部273Aは、確認部271Aからエラー情報が入力される場合、エラー情報で特定されるハードウェア資源で実行される処理を定めた代替プログラムを、シミュレート部255がシミュレートする仮想装置にインストールする。具体的には、エラー情報が画像制御ASIC177において故障個所として特定されたDMAチャンネルを識別するためのチャンネル識別情報を含む場合、そのDMAチャンネルに対して割り当てられた処理を定めた代替プログラムを、シミュレート部255がシミュレートする仮想装置にインストールする。ここでのインストールとは、仮想装置が代替プログラムを実行可能な状態に仮想装置を設定することをいう。エラー情報が複数のチャンネル識別情報を含む場合、代替部273Aは、複数のDMAチャンネルにそれぞれ対応する処理を定めた複数の代替プログラムを、仮想装置にインストールする。 The confirmation unit 271A outputs the error information to the alternative unit 273A in response to the error information being input from the error information receiving unit 259. When the error information is input from the confirmation unit 271A, the alternative unit 273A installs an alternative program that defines the processing to be executed by the hardware resource specified by the error information in the virtual device simulated by the simulation unit 255. do. Specifically, when the error information includes the channel identification information for identifying the DMA channel identified as the failure location in the image control ASIC177, an alternative program that defines the processing assigned to the DMA channel is simulated. Install in the virtual device simulated by the channel 255. Installation here means setting the virtual device so that the virtual device can execute an alternative program. When the error information includes a plurality of channel identification information, the alternative unit 273A installs a plurality of alternative programs for defining the processes corresponding to the plurality of DMA channels in the virtual device.

また、確認部271Aは、エラー情報受信部259から入力されるエラー情報に基づいて、実行不可テーブルを生成する。実行不可テーブルは、MFP100が実行することのできない処理を定めるテーブルである。確認部271Aは、エラー情報で特定されるハードウェア資源が、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150、通信I/F部160、ファクシミリ部170、外部記憶装置180、および操作パネル115の場合、それらで実行される処理を識別するための処理識別情報を実行不可テーブルに追加する。確認部271Aは、エラー情報で特定されるハードウェア資源がRAM175またはHDD113の場合、それらによって処理を特定できないので、実行不可テーブルを更新しない。また、確認部271Aは、エラー情報で特定されるハードウェア資源が画像制御ASIC177の場合、代替部273Aによって代替プログラムがインストールされ、処理が実行可能なので、実行不可テーブルを更新しない。 Further, the confirmation unit 271A generates an unexecutable table based on the error information input from the error information receiving unit 259. The non-executable table is a table that defines the processing that cannot be executed by the MFP 100. In the confirmation unit 271A, the hardware resources specified by the error information are the automatic document transfer device 120, the document reading unit 130, the image forming unit 140, the paper feeding unit 150, the communication I / F unit 160, the facsimile unit 170, and the external storage. In the case of the device 180 and the operation panel 115, the process identification information for identifying the process executed by them is added to the non-executable table. When the hardware resource specified by the error information is RAM175 or HDD113, the confirmation unit 271A does not update the non-executable table because the process cannot be specified by them. Further, when the hardware resource specified by the error information is the image control ASIC177, the confirmation unit 271A does not update the non-executable table because the alternative program is installed by the alternative unit 273A and the process can be executed.

シミュレート部255は、装置情報に含まれるソフト情報で定められたソフトウェア資源である複数の既定プログラムを仮想CPUが実行可能な状態に設定し、確認部271Aが、エラー情報で特定されるハードウェア資源で実行される処理を定めた代替プログラムを仮想装置が実行可能な状態に設定する場合がある。一方、MFP100においてRAM175で不具合が発生した場合、RAM175で使用可能な領域の容量が、既定プログラムと代替プログラムとを仮想装置が実行可能な状態に設定するために十分でない場合がある。この場合、確認部271Aは、RAM175で使用可能な領域の容量に基づいて、複数の既定プログラム、代替プログラムが存在する場合には、複数の既定プログラムおよび代替プログラムのうちから選択された1以上のプログラムを仮想装置が実行可能な状態に設定する。 The simulation unit 255 sets a plurality of default programs, which are software resources defined by the software information included in the device information, in a state in which the virtual CPU can be executed, and the confirmation unit 271A sets the hardware specified by the error information. An alternative program that defines the processing to be executed by the resource may be set so that the virtual device can execute it. On the other hand, when a problem occurs in the RAM 175 in the MFP 100, the capacity of the area available in the RAM 175 may not be sufficient to set the default program and the alternative program in a state in which the virtual device can be executed. In this case, the confirmation unit 271A selects one or more of the plurality of default programs and alternative programs, if there are a plurality of default programs and alternative programs, based on the capacity of the area available in the RAM 175. Set the program to a state in which the virtual device can be executed.

確認部271Aは、優先度決定部281Aから入力される優先度に基づいて、複数の既定プログラムのうちから、また、代替プログラムが存在する場合には、複数の既定プログラムおよび代替プログラムのうちから、優先度の高い処理を定めるプログラムから順に選択する。例えば、確認部271Aは、既定プログラムおよび代替プログラムそれぞれが実行可能な状態に設定される場合に、RAM175に記憶されるデータ量を定めておき、選択されたプログラムそれぞれのデータ量の合計が、RAM175の使用可能な領域の容量を超えない最大数のプログラムを選択する。 The confirmation unit 271A is based on the priority input from the priority determination unit 281A, from among a plurality of default programs, and if an alternative program exists, from among the plurality of default programs and the alternative program. Select in order from the program that defines the processing with the highest priority. For example, the confirmation unit 271A determines the amount of data stored in the RAM 175 when each of the default program and the alternative program is set to be executable, and the total amount of data of each of the selected programs is the RAM 175. Select the maximum number of programs that do not exceed the available space capacity of.

確認部271Aは、複数の既定プログラムのうちから、また、代替プログラムが存在する場合には、複数の既定プログラムおよび代替プログラムのうちから、選択されなかったプログラムが存在する場合には、実行不可テーブルを更新する。具体的には、確認部271Aは、選択されなかったプログラムで定められる処理を識別するための処理識別情報を実行不可テーブルに追加する。 The confirmation unit 271A is an unexecutable table from among a plurality of default programs, or if there is an alternative program, if there is a program that is not selected from among the plurality of default programs and the alternative program. To update. Specifically, the confirmation unit 271A adds the process identification information for identifying the process defined by the non-selected program to the non-executable table.

確認部271Aは、実行不可テーブルに基づいて、1以上のテストジョブを決定し、決定された1以上のテストジョブを仮想装置に実行させる。具体的には、確認部271Aは、MFP100が実行可能な複数の処理のうち実行不可テーブルに含まれる処理識別情報で特定される1以上の処理を除く1以上の処理を特定する。MFP100が実行可能な複数の処理をそれぞれ定めた複数のテストジョブを予め準備しておき、確認部271Aは、予め準備された複数のテストジョブのうちから、特定された1以上の処理を定めた1以上のテストジョブを決定し、決定された1以上のテストジョブを仮想装置に実行させる。 The confirmation unit 271A determines one or more test jobs based on the non-executable table, and causes the virtual device to execute the determined one or more test jobs. Specifically, the confirmation unit 271A specifies one or more processes excluding one or more processes specified by the process identification information included in the non-executable table among the plurality of processes that can be executed by the MFP 100. A plurality of test jobs in which a plurality of processes that can be executed by the MFP 100 are defined are prepared in advance, and the confirmation unit 271A defines one or more specified processes from the plurality of test jobs prepared in advance. One or more test jobs are determined, and the determined one or more test jobs are executed by the virtual device.

複数のテストジョブは、それぞれに対して、基準値が予め定められている。基準値は、MFP100にハードウェア資源に故障が発生していない正常時の状態で、MFP100がテストジョブを実行した場合における動作状態を示す値である。動作状態を示す値は、例えば、テストジョブを開始してから終了するまでの処理時間、CPU171の使用率、テストジョブを実行している間のレスポンスタイムである。レスポンスタイムは、ユーザーが操作パネル115に操作を入力してからその操作に対応する処理の実行を完了するまでの時間である。 Reference values are set in advance for each of the plurality of test jobs. The reference value is a value indicating an operating state when the MFP 100 executes a test job in a normal state in which no hardware resource failure has occurred in the MFP 100. The values indicating the operating state are, for example, the processing time from the start to the end of the test job, the usage rate of the CPU 171, and the response time while the test job is being executed. The response time is the time from when the user inputs an operation to the operation panel 115 to when the execution of the process corresponding to the operation is completed.

アンインストール部275Aは、仮想装置にインストールされている複数のプログラムのうちから1以上をアンインストールし、アンインストール後に仮想装置にインストールされている1以上のインストールプログラムを設定組決定部277Aに通知する。ここで、アンインストール部275Aによるアンインストールとは、仮想装置がそのプログラムを実行不可能な状態に設定することをいう。具体的には、プログラムのアンインストールは、プログラムの実行ファイルを仮想メモリ303のRAM175に対応する部分から消去する処理を示す。アンインストール部275Aは、優先度決定部281Aから不実行情報が入力される場合、仮想装置にインストールされている複数のプログラムのうち、不実行情報に含まれる処理識別情報で特定される処理を定めたプログラムをアンインストールし、アンインストール後に仮想装置にインストールされている1以上のプログラムを設定組決定部277Aに通知する。 The uninstall unit 275A uninstalls one or more of the plurality of programs installed in the virtual device, and notifies the setting group determination unit 277A of one or more installation programs installed in the virtual device after the uninstallation. .. Here, the uninstallation by the uninstall unit 275A means that the virtual device sets the program in an unexecutable state. Specifically, uninstalling the program indicates a process of erasing the execution file of the program from the portion corresponding to the RAM 175 of the virtual memory 303. When the non-execution information is input from the priority determination unit 281A, the uninstall unit 275A determines the process specified by the process identification information included in the non-execution information among the plurality of programs installed in the virtual device. The program is uninstalled, and one or more programs installed in the virtual device after the uninstallation are notified to the setting group determination unit 277A.

また、アンインストール部275Aは、優先度決定部281Aから入力される優先度情報に従って、仮想装置にインストールされている複数のプログラムのうちから、優先度が低い処理を定めたプログラムから順にアンインストールし、アンインストール後に仮想装置にインストールされている1以上のプログラムを設定組決定部277Aに通知する。 In addition, the uninstall unit 275A uninstalls the programs installed in the virtual device in order from the program that defines the process with the lowest priority, according to the priority information input from the priority determination unit 281A. , Notifies the setting group determination unit 277A of one or more programs installed in the virtual device after uninstallation.

確認部271Aは、アンインストール部275Aによってプログラムがアンインストールされる場合、アンインストールされたプログラムが定める処理を識別するための処理識別情報を実行不可テーブルに追加することによって実行不可テーブルを更新する。確認部271Aは、実行不可テーブルを更新するごとに、実行不可テーブルを設定指示部261に出力する。確認部271Aは、アンインストール部275Aによって1以上のプログラムがアンインストールされるごとに更新後の実行不可テーブルに基づいて、テストジョブを決定し、シミュレート部255を制御して仮想装置にテストジョブを実行させる。 When the program is uninstalled by the uninstall unit 275A, the confirmation unit 271A updates the non-executable table by adding the process identification information for identifying the process defined by the uninstalled program to the non-executable table. The confirmation unit 271A outputs the non-executable table to the setting instruction unit 261 every time the non-executable table is updated. The confirmation unit 271A determines a test job based on the updated non-executable table every time one or more programs are uninstalled by the uninstall unit 275A, and controls the simulation unit 255 to perform a test job on the virtual device. To execute.

動作状態取得部279Aは、シミュレート部255がシミュレートする仮想装置がテストジョブを実行する間における動作状態を取得し、取得された動作状態を設定組決定部277Aに出力する。設定組決定部277Aは、動作状態取得部279Aから入力される動作状態が許容条件を満たす場合に、その時点で仮想装置にインストールされている1以上のインストールプログラムの組を設定組に決定する。動作状態で示される評価値が、基準値内であれば、許容条件を満たすと判断する。例えば、動作状態としてテストジョブを開始してから終了するまでの処理時間を用いる場合、処理時間が基準値以下であれば許容条件を満たすと判断し、処理時間が基準値を超えるならば許容条件を満たさないと判断する。また、動作状態としてCPU171の使用率を用いる場合、仮想装置の仮想CPU301の使用率が基準値以下であれば許容条件を満たすと判断するが、仮想装置の仮想CPU301の使用率が基準値より大きければ許容条件を満たさないと判断する。また、動作状態としてレスポンスタイムを用いる場合、仮想装置のレスポンスタイムが基準値以下であれば許容条件を満たすと判断するが、仮想装置のレスポンスタイムが基準値より大きければ許容条件を満たさないと判断する。設定組決定部277Aは、設定組を決定する場合、設定組を設定指示部261に出力する。 The operation state acquisition unit 279A acquires the operation state while the virtual device simulated by the simulation unit 255 executes the test job, and outputs the acquired operation state to the setting group determination unit 277A. When the operating state input from the operating state acquisition unit 279A satisfies the allowable condition, the setting set determination unit 277A determines the set of one or more installation programs installed in the virtual device at that time as the setting set. If the evaluation value indicated in the operating state is within the reference value, it is determined that the permissible condition is satisfied. For example, when the processing time from the start to the end of the test job is used as the operating state, it is judged that the allowable condition is satisfied if the processing time is less than the reference value, and the allowable condition is satisfied if the processing time exceeds the reference value. Is not satisfied. Further, when the usage rate of the CPU 171 is used as the operating state, it is determined that the allowable condition is satisfied if the usage rate of the virtual CPU 301 of the virtual device is equal to or less than the reference value, but the usage rate of the virtual CPU 301 of the virtual device is larger than the reference value. If it is judged that the allowable condition is not satisfied. When the response time is used as the operating state, it is judged that the allowable condition is satisfied if the response time of the virtual device is equal to or less than the reference value, but the allowable condition is not satisfied if the response time of the virtual device is larger than the reference value. do. When determining the setting group, the setting group determination unit 277A outputs the setting group to the setting instruction unit 261.

第1の変形例におけるサーバー200が備えるCPU201は、図10に示した装置設定処理を実行するが、ステップS04で実行される仮想装置設定処理が異なる。 The CPU 201 included in the server 200 in the first modification executes the device setting process shown in FIG. 10, but the virtual device setting process executed in step S04 is different.

図13および図14は、第1の変形例における仮想装置設定処理の流れの一例を示すフローチャートである。図13および図14を参照して、ステップS51〜ステップS58の処理は、図11のステップS21〜ステップS28と同じである。 13 and 14 are flowcharts showing an example of the flow of the virtual device setting process in the first modification. With reference to FIGS. 13 and 14, the processing of steps S51 to S58 is the same as that of steps S21 to S28 of FIG.

ステップS59においては、処理対象に選択されていない処理のうちから優先度が最高の処理を処理対象に選択する。そして、処理対象に選択された処理を定めるプログラムが選択可能か否かを判断する(ステップS60)。処理対象に選択された処理を定めるプログラムが選択可能ならば処理をステップS61に進めるが、そうでなければ処理をステップS63に進める。MFP100にインストールされている複数の既定プログラムと、ステップS54において決定された代替プログラムのうちに、処理対象に選択された処理を定めるプログラムが存在すれば、そのプログラムを選択するが、処理対象に選択された処理を定めるプログラムが存在しなければ、選択不可と判断する。処理対象に選択された処理を定めるプログラムが存在しない場合は、例えば、画像制御ASIC177に故障が発生し、代替プログラムが存在しない場合である。 In step S59, the process having the highest priority is selected as the processing target from the processes not selected as the processing target. Then, it is determined whether or not the program that defines the process selected as the processing target can be selected (step S60). If the program that defines the process selected as the processing target can be selected, the process proceeds to step S61, but if not, the process proceeds to step S63. If there is a program that defines the process selected as the processing target among the plurality of default programs installed in the MFP 100 and the alternative program determined in step S54, that program is selected, but the program is selected as the processing target. If there is no program that defines the processed processing, it is judged that selection is not possible. When there is no program that defines the selected process as the processing target, for example, a failure occurs in the image control ASIC177 and there is no alternative program.

ステップS61においては、RAM175に空き容量が存在するか否かを判断する。仮想メモリ303のRAM175をエミュレートする部分の空き容量が、ステップS60において処理対象に選択されたプログラムを仮想装置が実行可能な状態にするために必要な容量が残されている否かを判断する。仮想メモリ303のRAM175をエミュレートする部分の空き容量が存在すれば処理をステップS62に進めるが、そうでなければ、処理を装置設定処理に戻す。 In step S61, it is determined whether or not there is free space in the RAM 175. It is determined whether or not the free space of the portion emulating the RAM 175 of the virtual memory 303 remains the capacity required for the virtual device to execute the program selected as the processing target in step S60. .. If there is free space in the portion of the virtual memory 303 that emulates the RAM 175, the process proceeds to step S62, but if not, the process returns to the device setting process.

ステップS62においては、ステップS60において処理対象に選択されたプログラムをインストールし、処理をステップS63に進める。具体的には、処理対象に選択されたプログラムを仮想装置が実行可能な状態に設定する。例えば、実行ファイルを仮想メモリ303のRAM175をエミュレートする部分に記憶する。 In step S62, the program selected as the processing target in step S60 is installed, and the processing proceeds to step S63. Specifically, the program selected as the processing target is set in a state in which the virtual device can be executed. For example, the executable file is stored in the part of the virtual memory 303 that emulates the RAM 175.

ステップS63においては、ステップS59において処理対象に選択されていない処理が存在するか否かを判断する。未選択の処理が存在するならば処理をステップS59に戻すが、そうでなければ処理をステップS64に進める。 In step S63, it is determined whether or not there is a process that is not selected as the processing target in step S59. If there is an unselected process, the process returns to step S59, otherwise the process proceeds to step S64.

ステップS64においては、過去に実行されていない処理が存在するか否かを判断する。MFP100が実行可能な複数の処理のうち、履歴情報に含まれていない処理を過去に実行されていない処理に決定する。過去に実行されていない処理が存在するならば処理をステップS65に進め、そうでなければ処理をステップS68に進める。 In step S64, it is determined whether or not there is a process that has not been executed in the past. Among a plurality of processes that can be executed by the MFP 100, a process that is not included in the history information is determined to be a process that has not been executed in the past. If there is a process that has not been executed in the past, the process proceeds to step S65, and if not, the process proceeds to step S68.

ステップS65においては、過去に実行されていない処理を定めるプログラムを対象プログラムとして選択し、処理をステップS66に進める。過去に実行されていない処理が複数の場合、過去に実行されていない複数の処理をそれぞれ定める複数のプログラムを対象プログラムとして選択する。ステップS66においては、対象プログラムを仮想装置からアンインストールし、処理をステップS67に進める。ステップS67においては、実行不可テーブルを更新し、処理をステップS68に進める。具体的には、過去に実行されたことのない処理を識別するための処理識別情報を実行不可テーブルに追加する。 In step S65, a program that defines a process that has not been executed in the past is selected as the target program, and the process proceeds to step S66. When there are a plurality of processes that have not been executed in the past, a plurality of programs that define a plurality of processes that have not been executed in the past are selected as the target programs. In step S66, the target program is uninstalled from the virtual device, and the process proceeds to step S67. In step S67, the non-executable table is updated and the process proceeds to step S68. Specifically, process identification information for identifying a process that has not been executed in the past is added to the non-executable table.

次のステップS68においては、テストジョブを仮想装置に実行させる。MFP100が実行可能な複数の処理のうち実行不可テーブルに含まれる処理識別情報で特定される1以上の処理を除く1以上の処理を特定し、特定された1以上の処理をそれぞれ定めた1以上のテストジョブを決定し、決定された1以上のテストジョブを仮想装置に順に実行させる。 In the next step S68, the virtual device is made to execute the test job. Of the plurality of processes that can be executed by the MFP 100, one or more processes excluding one or more processes specified by the process identification information included in the non-executable table are specified, and one or more specified processes are defined respectively. The test job of is determined, and one or more determined test jobs are executed in order by the virtual device.

ステップS69においては、仮想装置の動作状態を検出する。テストジョブに定められている基準値に対応する評価値を、仮想装置の動作状態として検出する。ステップS70においては、許容範囲内か否かを判断する。動作状態として検出された評価値が基準値から所定の範囲内であれば許容範囲内と判断する。許容範囲内ならば処理をステップS79に進めるが、そうでなければ処理をステップS71に進める。テストジョブが複数の場合、複数のテストジョブのすべてで、動作状態が許容範囲内の場合に処理をステップS79に進める。換言すれば、複数のテストジョブのいずれか1つでも、動作状態が許容範囲を外れる場合は、処理をステップS71に進める。ステップS79においては、その時点で仮想装置にインストールされている1以上のプログラムの組を設定組に決定し、処理を装置設定処理に戻す。 In step S69, the operating state of the virtual device is detected. The evaluation value corresponding to the reference value specified in the test job is detected as the operating state of the virtual device. In step S70, it is determined whether or not it is within the permissible range. If the evaluation value detected as the operating state is within a predetermined range from the reference value, it is judged to be within the permissible range. If it is within the permissible range, the process proceeds to step S79, but if not, the process proceeds to step S71. When there are a plurality of test jobs, the process proceeds to step S79 when the operating state is within the permissible range in all of the plurality of test jobs. In other words, if the operating state of any one of the plurality of test jobs is out of the permissible range, the process proceeds to step S71. In step S79, a set of one or more programs installed in the virtual device at that time is determined as a setting set, and the process is returned to the device setting process.

ステップS71においては、過去に実行された1以上の処理のうちから優先順位が最低の処理を処理対象に選択する。そして、処理対象に選択された処理を定めるプログラムを対象プログラムとして選択する(ステップS72)。次のステップS73においては、仮想装置から対象プログラムをアンインストールし、処理をステップS74に進める。ステップS74においては、実行不可テーブルを更新する。実行不可テーブルに、処理対象の処理の処理識別情報を追加することにより、実行不可テーブルを更新する。 In step S71, the process having the lowest priority is selected as the processing target from the one or more processes executed in the past. Then, a program that defines the process selected as the processing target is selected as the target program (step S72). In the next step S73, the target program is uninstalled from the virtual device, and the process proceeds to step S74. In step S74, the non-executable table is updated. Update the non-executable table by adding the process identification information of the process to be processed to the non-executable table.

次のステップS75においては、テストジョブを仮想装置に実行させ、処理をステップS76に進める。MFP100が実行可能な複数の処理のうち実行不可テーブルに含まれる処理識別情報で特定される1以上の処理を除く1以上の処理を特定し、特定された1以上の処理をそれぞれ定めた1以上のテストジョブを決定し、決定された1以上のテストジョブを仮想装置に順に実行させる。 In the next step S75, the test job is executed by the virtual device, and the process proceeds to step S76. Of the plurality of processes that can be executed by the MFP 100, one or more processes excluding one or more processes specified by the process identification information included in the non-executable table are specified, and one or more specified processes are defined respectively. The test job of is determined, and one or more determined test jobs are executed in order by the virtual device.

ステップS76においては、ステップS69と同様に仮想装置の動作状態を検出し、処理をステップS77に進める。ステップS77においては、ステップS70と同様に許容範囲内か否かを判断する。許容範囲内ならば処理をステップS79に進めるが、そうでなければ処理をステップS78に進める。ステップS79においては、その時点で仮想装置にインストールされている1以上のプログラムの組を設定組に決定し、処理を装置設定処理に戻す。 In step S76, the operating state of the virtual device is detected in the same manner as in step S69, and the process proceeds to step S77. In step S77, it is determined whether or not it is within the permissible range as in step S70. If it is within the permissible range, the process proceeds to step S79, but if not, the process proceeds to step S78. In step S79, a set of one or more programs installed in the virtual device at that time is determined as a setting set, and the process is returned to the device setting process.

ステップS78においては、過去に実行された1以上の処理のうちで、ステップS71において処理対象に選択されていない処理が存在するか否かを判断する。未選択の処理が存在するならば処理をステップS71に戻し、存在しなければ処理を装置設定処理に戻す。 In step S78, it is determined whether or not there is a process that has not been selected as the processing target in step S71 among one or more processes executed in the past. If there is an unselected process, the process returns to step S71, and if it does not exist, the process returns to the device setting process.

以上説明したように第1の実施の形態における情報処理システム1において、サーバー200は、MFP100が有するハードウェア資源に不具合が発生する場合に、MFP100をシミュレートし、MFP100をシミュレートする仮想装置にインストールされている複数のプログラムのうちから仮想装置がジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの組を設定組に決定し、設定組に含まれる1以上のプログラムのみをMFP100にインストールされるようにMFP100を制御する。このため、MFP100は、ハードウェア資源に不具合が発生した状態でジョブを実行しても許容条件を満たすことができる。したがって、ハードウェア資源に不具合のあるMFP100を、少なくとも一部の処理を実行可能な状態に設定することができる。 As described above, in the information processing system 1 according to the first embodiment, the server 200 is a virtual device that simulates the MFP 100 and simulates the MFP 100 when a problem occurs in the hardware resources of the MFP 100. From among the multiple installed programs, a set of one or more programs that satisfy the predetermined tolerance conditions even if the virtual device executes a job is determined as the setting set, and only one or more programs included in the setting set. Controls the MFP100 so that it is installed on the MFP100. Therefore, the MFP 100 can satisfy the allowable condition even if the job is executed in a state where a defect occurs in the hardware resource. Therefore, the MFP 100 having a defect in hardware resources can be set to a state in which at least a part of the processing can be executed.

また、サーバー200は、MFP100が備える不揮発性メモリであるRAM175に不具合が発生する場合、MFP100に予めインストールされている複数の既定プログラムのうちからRAM175のアクセス可能な領域のみを用いてMFP100が実行可能な1以上のプログラムを実行可能な状態に仮想装置を設定する。このため、RAM175に不具合が発生するMFP100を、少なくとも一部の処理を実行可能な状態に設定することができる。 Further, when a problem occurs in the RAM 175, which is a non-volatile memory included in the MFP 100, the server 200 can execute the MFP 100 using only the accessible area of the RAM 175 from among a plurality of default programs pre-installed in the MFP 100. Set the virtual device so that one or more programs can be executed. Therefore, the MFP 100 in which a problem occurs in the RAM 175 can be set to a state in which at least a part of the processing can be executed.

また、サーバー200は、不具合が検出されたハードウェア資源で実行される処理を定めた代替プログラムが存在する場合、複数の既定プログラムおよび代替プログラムのうちからRAM175の有効な領域のみを用いてMFP100で実行可能な1以上のプログラムを実行可能な状態に仮想装置を設定する。このため、ハードウェア資源に不具合が発生するMFP100を、少なくとも一部の処理を実行可能な状態に設定することができる。 Further, when the server 200 has an alternative program that defines the processing to be executed by the hardware resource in which the defect is detected, the server 200 uses only the effective area of the RAM 175 from the plurality of default programs and the alternative program in the MFP 100. Set the virtual device so that one or more executable programs can be executed. Therefore, the MFP 100 in which a problem occurs in the hardware resource can be set to a state in which at least a part of the processing can be executed.

また、サーバー200は、MFP100で過去に実行された回数の多い処理に対応するプログラムを実行可能な状態に仮想装置を設定するので、ハードウェア資源に不具合が発生するMFP100を、過去に実行された回数の多い処理を実行可能な状態に設定することができる。 Further, since the server 200 sets the virtual device in a state in which the program corresponding to the processing that has been executed many times in the past by the MFP 100 can be executed, the MFP 100 in which a problem occurs in the hardware resource is executed in the past. It is possible to set a state in which a large number of processes can be executed.

また、サーバー200は、ハードウェア資源で実行される処理を定めた代替プログラムを実行可能な状態に仮想装置を設定するので、ハードウェア資源に不具合が発生するMFP100に、不具合の発生したハードウェア資源で実行される処理を実行させることができる。 Further, since the server 200 sets the virtual device in a state in which an alternative program that defines the processing to be executed by the hardware resource can be executed, the hardware resource in which the defect has occurred in the MFP 100 in which the defect occurs in the hardware resource. It is possible to execute the process executed in.

また、サーバー200は、MFP100で過去に実行された処理の履歴に基づいて、過去に実行されたことのある1以上の処理をそれぞれ定める1以上のインストールプログラムを含む組を設定組に決定するので、MFP100で実行される確率の高い処理を実行可能な状態にすることができる。 Further, since the server 200 determines a set including one or more installation programs that define one or more processes that have been executed in the past as a setting group based on the history of the processes executed in the past by the MFP 100. , The processing with high probability of being executed by the MFP 100 can be made executable.

また、サーバー200は、MFP100で過去に実行された回数の多い処理を定めるインストールプログラムから順にインストールする。このため、MFP100で実行された頻度の高い処理を優先して実行可能な状態にすることができる。 Further, the server 200 is installed in order from the installation program that defines the processes that are frequently executed in the past by the MFP 100. Therefore, it is possible to give priority to the frequently executed processing performed by the MFP 100 so that the processing can be executed.

また、サーバー200は、MFP100をシミュレートする仮想装置にインストールされている複数のプログラムうち1以上をインストールし、仮想装置がジョブを実行する間の仮想装置の状態が許容条件を満たす場合において仮想装置にインストールされている1以上のインストールプログラムを設定組に決定する。このため、仮想装置にインストールされている複数のプログラムのうちから仮想装置がジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの設定組を容易に決定することができる。 Further, the server 200 installs one or more of a plurality of programs installed in the virtual device simulating the MFP 100, and the virtual device satisfies the permissible state while the virtual device executes a job. Determine one or more installation programs installed in the configuration set. Therefore, it is possible to easily determine a setting set of one or more programs that satisfy a predetermined permissible condition even if the virtual device executes a job from a plurality of programs installed in the virtual device.

また、サーバー200は、MFP100で過去に実行されたことのない1以上の処理をそれぞれ定める1以上のインストールプログラムをアンインストールするので、MFP100で実行されたことのない処理を実行不可能な状態にして、許容条件を満たすインストールプログラムの設定組を決定することができる。 Further, the server 200 uninstalls one or more installation programs that define one or more processes that have not been executed in the MFP 100 in the past, so that the processes that have not been executed in the MFP 100 cannot be executed. Therefore, it is possible to determine the setting set of the installation program that satisfies the allowable conditions.

また、サーバー200は、MFP100で過去に実行された回数の多い処理を定めるインストールプログラムから順にインストールするので、MFP100で実行された頻度の高い処理を優先して実行可能な状態にすることができる。 Further, since the server 200 is installed in order from the installation program that defines the processes that have been executed frequently in the past by the MFP 100, it is possible to give priority to the processes that are frequently executed by the MFP 100 so that they can be executed.

また、サーバー200は、MFP100が備えるハードウェア資源を代替する処理を定めた代替プログラムを、仮想装置にインストールするので、MFP100において不具合のあるハードウェア資源で実行される処理をMFP100に実行させることができる。 Further, since the server 200 installs an alternative program in the virtual device that defines the process of substituting the hardware resource included in the MFP 100, the MFP 100 can execute the process executed by the defective hardware resource in the MFP 100. can.

また、サーバー200は、設定組に含まれる1以上のプログラムのみをMFP100に実行させる前に、MFP100にインストールされているプログラムを退避プログラムとして記憶し、MFP100においてハードウェア資源に発生した不具合が解消された後に、退避プログラムがMFP100にインストールされるようにMFP100を制御する。このため、MFP100を、ハードウェア資源に発生した不具合が解消された後に、不具合が発生する前の状態に戻すことができる。 Further, the server 200 stores the program installed in the MFP 100 as a save program before causing the MFP 100 to execute only one or more programs included in the setting set, and the problem that occurs in the hardware resource in the MFP 100 is solved. After that, the MFP 100 is controlled so that the save program is installed in the MFP 100. Therefore, the MFP 100 can be returned to the state before the problem occurred after the problem that occurred in the hardware resource was solved.

また、第1の変形例におけるサーバー200は、MFP100をシミュレートする仮想装置にインストールされている複数のプログラムうち1以上をアンインストールし、仮想装置がジョブを実行する間の仮想装置の状態が許容条件を満たす場合において仮想装置にインストールされている1以上のインストールプログラムを設定組に決定する。このため、仮想装置にインストールされている複数のプログラムのうちから仮想装置がジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの設定組を容易に決定することができる。 Further, the server 200 in the first modification uninstalls one or more of the plurality of programs installed in the virtual device simulating the MFP 100, and the state of the virtual device is allowed while the virtual device executes the job. When the conditions are met, one or more installation programs installed in the virtual device are determined as the setting set. Therefore, it is possible to easily determine a setting set of one or more programs that satisfy a predetermined permissible condition even if the virtual device executes a job from a plurality of programs installed in the virtual device.

また、第1の変形例におけるサーバー200は、MFP100で過去に実行された回数の少ない処理を定めるインストールプログラムから順にアンインストールする。このため、MFP100で実行された頻度の高い処理を優先して実行可能な状態にすることができる。 Further, the server 200 in the first modification is uninstalled in order from the installation program that defines the processes executed in the MFP 100 in the least number of times in the past. Therefore, it is possible to give priority to the frequently executed processing performed by the MFP 100 so that the processing can be executed.

また、第1の変形例におけるサーバー200は、MFP100で過去に実行されたことのない1以上の処理をそれぞれ定める1以上のインストールプログラムをアンインストールするので、MFP100で実行されたことのない処理を実行不可能な状態にして、許容条件を満たすインストールプログラムの設定組を決定することができる。 Further, since the server 200 in the first modification uninstalls one or more installation programs that define one or more processes that have not been executed in the MFP 100 in the past, the processing that has not been executed in the MFP 100 can be performed. It is possible to determine the setting set of the installation program that satisfies the allowable conditions by making it infeasible.

また、第1の変形例におけるサーバー200は、MFP100で過去に実行された回数の少ない処理を定めるインストールプログラムから順にアンインストールするので、MFP100で実行された頻度の高い処理を優先して実行可能な状態にすることができる。 Further, since the server 200 in the first modification is uninstalled in order from the installation program that defines the processes that are executed less frequently in the past by the MFP 100, the processes that are frequently executed by the MFP 100 can be executed with priority. Can be in a state.

<第2の実施の形態>
第1の実施の形態においては、サーバー200でMFP100をシミュレートした仮想装置で設定組を決定するようにした。第2の実施の形態においては、サーバー200を用いることなく、MFP100で設定組を決定するようにしたものである。第2の実施の形態におけるMFP100は、第1の実施の形態におけるサーバー200で実行する装置設定処理を実行する。第2の実施の形態におけるMFP100においては、CPU171が装置設定プログラムを実行するため、RAM175に、装置設定プログラムを実行するための領域が確保される点で、第1の実施の形態におけるサーバー200と異なる。また、第1の実施の形態におけるサーバー200が仮想装置に実行させていた処理を、第2の実施の形態におけるMFP100が備えるCPU171が実行する点が異なる。
<Second Embodiment>
In the first embodiment, the setting set is determined by the virtual device that simulates the MFP 100 on the server 200. In the second embodiment, the setting set is determined by the MFP 100 without using the server 200. The MFP 100 in the second embodiment executes the device setting process executed by the server 200 in the first embodiment. In the MFP 100 according to the second embodiment, since the CPU 171 executes the device setting program, the RAM 175 secures an area for executing the device setting program, and the server 200 and the server 200 according to the first embodiment. different. Further, the difference is that the CPU 171 included in the MFP 100 in the second embodiment executes the processing executed by the virtual device by the server 200 in the first embodiment.

第2の実施の形態におけるMFP100は、ハードウェア資源に不具合が発生する場合に、インストールされている複数のプログラムのうちからジョブを実行する間の動作状態が許容条件を満たす1以上のプログラムの組を設定組に決定し、設定組に含まれる1以上のプログラムのみをインストールする。このため、ハードウェア資源に不具合が発生した状態でジョブを実行しても許容条件を満たすように設定することができる。 The MFP 100 according to the second embodiment is a set of one or more programs whose operating states satisfy the allowable conditions while executing a job from among a plurality of installed programs when a problem occurs in a hardware resource. Is determined as the setting set, and only one or more programs included in the setting set are installed. Therefore, it is possible to set so as to satisfy the allowable condition even if the job is executed in the state where the hardware resource has a problem.

また、MFP100は、不揮発性メモリであるRAM175に不具合が発生する場合、MFP100に予めインストールされている複数の既定プログラムのうちからRAM175のアクセス可能な領域のみを用いてMFP100が実行可能な1以上のプログラムを実行可能な状態に設定する。このため、RAM175に不具合が発生する場合に、少なくとも一部の処理を実行可能な状態に設定することができる。 Further, when a problem occurs in the RAM 175, which is a non-volatile memory, the MFP 100 has one or more executable programs that the MFP 100 can execute by using only the accessible area of the RAM 175 from among a plurality of default programs pre-installed in the MFP 100. Set the program to an executable state. Therefore, when a problem occurs in the RAM 175, at least a part of the processing can be set to be executable.

また、MFP100は、不具合が検出されたハードウェア資源で実行される処理を定めた代替プログラムが存在する場合、複数の既定プログラムおよび代替プログラムのうちからRAM175の有効な領域のみを用いて実行可能な1以上のプログラムを実行可能な状態に設定する。このため、ハードウェア資源に不具合が発生する場合に、少なくとも一部の処理を実行可能な状態に設定することができる。 Further, when there is an alternative program that defines the processing to be executed by the hardware resource in which the defect is detected, the MFP 100 can be executed by using only the effective area of the RAM 175 from the plurality of default programs and the alternative programs. Set one or more programs to be executable. Therefore, when a problem occurs in the hardware resource, at least a part of the processing can be set to be executable.

また、MFP100は、過去に実行された回数の多い処理に対応するプログラムを実行可能な状態に仮設定するので、ハードウェア資源に不具合が発生する場合に、過去に実行された回数の多い処理を実行可能な状態に設定することができる。 Further, since the MFP 100 temporarily sets the program corresponding to the process executed many times in the past to the executable state, when a problem occurs in the hardware resource, the process executed many times in the past is performed. It can be set to an executable state.

また、MFP100は、ハードウェア資源で実行される処理を定めた代替プログラムを実行可能な状態に設定するので、ハードウェア資源に不具合が発生する場合に、不具合の発生したハードウェア資源で実行される処理を実行させることができる。 Further, since the MFP 100 sets an alternative program that defines the process to be executed by the hardware resource to the executable state, when a defect occurs in the hardware resource, the program is executed by the hardware resource in which the defect has occurred. The process can be executed.

また、MFP100は、過去に実行した処理の履歴に基づいて、過去に実行されたことのある1以上の処理をそれぞれ定める1以上のインストールプログラムを含む組を設定組に決定するので、実行される確率の高い処理を実行可能な状態にすることができる。 Further, the MFP 100 determines a set including one or more installation programs that define one or more processes that have been executed in the past as a setting set based on the history of the processes executed in the past, and thus is executed. It is possible to make a process with a high probability executable.

また、MFP100は、過去に実行された回数の多い処理を定めるインストールプログラムから順にインストールするので、過去に実行された頻度の高い処理を優先して実行可能な状態にすることができる。 Further, since the MFP 100 is installed in order from the installation program that defines the processes that have been executed most frequently in the past, it is possible to give priority to the processes that have been executed frequently in the past so that the processes can be executed.

また、MFP100は、複数のプログラムうち1以上をインストールし、ジョブを実行する間の状態が許容条件を満たす時点においてインストールされている1以上のインストールプログラムを設定組に決定するので、複数のプログラムのうちからジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの組を容易に決定することができる。 Further, since the MFP 100 installs one or more of the plurality of programs and determines one or more installed programs installed at the time when the state during the execution of the job satisfies the allowable condition, the setting group of the plurality of programs is determined. Even if a job is executed from within, a set of one or more programs satisfying a predetermined allowable condition can be easily determined.

また、MFP100は、過去に実行された回数の多い処理を定めるインストールプログラムから順にインストールするので、過去に実行された頻度の高い処理を優先して実行可能な状態にすることができる。 Further, since the MFP 100 is installed in order from the installation program that defines the processes that have been executed most frequently in the past, it is possible to give priority to the processes that have been executed frequently in the past so that the processes can be executed.

また、MFP100は、ハードウェア資源を代替する処理を定めた代替プログラムをインストールするので、不具合のあるハードウェア資源で実行される処理を実行するように設定することができる。 Further, since the MFP 100 installs an alternative program that defines a process for substituting the hardware resource, it can be set to execute the process executed by the defective hardware resource.

また、MFP100は、設定組に含まれる1以上のプログラムのみをインストールする前に、MFP100にインストールされているプログラムを退避プログラムとして記憶しておき、ハードウェア資源に発生した不具合が解消された後に、退避プログラムをインストールする。このため、MFP100を、ハードウェア資源に発生した不具合が解消された後に、不具合が発生する前の状態に戻すことができる。 Further, the MFP 100 stores the program installed in the MFP 100 as a save program before installing only one or more programs included in the setting set, and after the problem occurring in the hardware resource is solved, the MFP 100 is used. Install the save program. Therefore, the MFP 100 can be returned to the state before the problem occurred after the problem that occurred in the hardware resource was solved.

<第2の変形例>
第2の実施の形態におけるMFP100は、設定組を決定するために、許容範囲を満たさなくなるまで、優先度の高い処理から順に選択し、選択された処理を定めるプログラムを仮想装置にインストールするようにした。第2の変形例におけるMFP100は、第1の変形例と同様に、設定組を決定するために、RAM175にインストール可能な数のプログラムをインストールしておき、許容範囲内になるまで、優先度の低い処理から順に選択して、選択された処理を定めるプログラムをアンインストールする。
<Second modification>
In order to determine the setting set, the MFP 100 in the second embodiment selects in order from the highest priority process until the allowable range is not satisfied, and installs a program that determines the selected process in the virtual device. bottom. Similar to the first modification, the MFP 100 in the second modification has an installable number of programs installed in the RAM 175 in order to determine the setting set, and the priority is set until the program is within the allowable range. Select the lowest process first and uninstall the program that defines the selected process.

第2の変形例におけるMFP100は、過去に実行された回数の少ない処理を定めるインストールプログラムから順にアンインストールするので、過去に実行された頻度の高い処理を優先して実行可能な状態にすることができる。 Since the MFP 100 in the second modification is uninstalled in order from the installation program that defines the processes that have been executed less frequently in the past, it is possible to prioritize the processes that have been executed in the past so that they can be executed. can.

また、第2の変形例におけるMFP100は、インストールされている複数のプログラムうち1以上をアンインストールし、ジョブを実行する間の状態が許容条件を満たす時点においてインストールされている1以上のインストールプログラムを設定組に決定するので、複数のプログラムのうちからジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの組を容易に決定することができる。 Further, the MFP 100 in the second modification uninstalls one or more of the installed programs, and installs one or more installation programs when the state during job execution satisfies the allowable condition. Since the setting set is determined, a set of one or more programs satisfying a predetermined allowable condition can be easily determined even if a job is executed from a plurality of programs.

また、第2の変形例におけるMFP100は、過去に実行されたことのない1以上の処理をそれぞれ定める1以上のインストールプログラムをアンインストールするので、過去に実行されたことのない処理を実行不可能な状態にして、許容条件を満たすインストールプログラムの設定組を決定することができる。 Further, since the MFP 100 in the second modification uninstalls one or more installation programs that define one or more processes that have not been executed in the past, it is impossible to execute the processes that have not been executed in the past. It is possible to determine the setting set of the installation program that satisfies the allowable conditions.

また、第2の変形例におけるMFP100は、過去に実行された回数の少ない処理を定めるインストールプログラムから順にアンインストールするので、過去に実行された頻度の高い処理を優先して実行可能な状態にすることができる。 Further, since the MFP 100 in the second modification is uninstalled in order from the installation program that defines the processes that are executed less frequently in the past, the processes that are frequently executed in the past are prioritized so that they can be executed. be able to.

なお、上述した第1の実施の形態においては、情報処理装置の一例としてサーバー200を例に示したが、図10、図11および図12に示した装置設定処理を、サーバー200に実行させる装置設定方法、また、その装置設定方法をサーバー200が備えるCPU201に実行させる装置設定プログラムとして発明を捉えることができるのは言うまでもない。 In the first embodiment described above, the server 200 is shown as an example of the information processing device, but the device that causes the server 200 to execute the device setting processing shown in FIGS. 10, 11 and 12. Needless to say, the invention can be regarded as a device setting program for causing the CPU 201 included in the server 200 to execute the setting method and the device setting method.

また、第2の実施の形態においては、情報処理装置の一例としてMFP100を例に示したが、図14、図15および図11に示した装置設定処理を、MFP100に実行させる装置設定方法、また、その装置設定方法をMFP100が備えるCPU171に実行させる装置設定プログラムとして発明を捉えることができるのは言うまでもない。 Further, in the second embodiment, the MFP 100 is shown as an example of the information processing device, but there is also a device setting method for causing the MFP 100 to execute the device setting processes shown in FIGS. 14, 15 and 11. Needless to say, the invention can be regarded as a device setting program for causing the CPU 171 included in the MFP 100 to execute the device setting method.

今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 It should be considered that the embodiments disclosed this time are exemplary in all respects and not restrictive. The scope of the present invention is shown by the scope of claims rather than the above description, and it is intended to include all modifications within the meaning and scope equivalent to the scope of claims.

<付記>
(1) 前記設定組決定手段は、前記仮想装置が前記ジョブを実行する間の前記仮想装置の動作状態が前記許容条件を満たさなくなく直前に前記仮想装置で実行可能な状態に設定されている1以上のプログラムの組を前記設定組に決定する、請求項7に記載のシミュレート装置。この局面によれば、仮想装置で実行可能に設定されている複数のプログラムのうちから仮想装置がジョブを実行しても予め定められた許容条件を満たす最大数のプログラムの組を容易に決定することができる。
(2) 前記設定組決定手段は、前記仮想装置が前記ジョブを実行する間の前記仮想装置の動作状態が前記許容条件を満たし、かつ、前記仮想装置で実行可能な状態に設定されている1以上のプログラムの数が最大となる組を前記設定組に決定する、請求項8に記載のシミュレート装置。この局面によれば、仮想装置で実行可能に設定されている複数のプログラムのうちから仮想装置がジョブを実行しても予め定められた許容条件を満たす最大数のプログラムの組を容易に決定することができる。
(3) 前記仮想装置で実行可能な状態に設定されている複数のプログラムうち1以上のプログラムを実行不可能な状態に設定するアンインストール手段を、さらに備え、
前記設定組決定手段は、前記仮想装置が前記ジョブを実行する間の前記仮想装置の状態が前記許容条件を満たす場合に前記仮想装置で実行可能な状態に設定されている1以上のプログラムの組を前記設定組に決定する、請求項1〜5のいずれかに記載のシミュレート装置。この局面に従えば、仮想装置で実行可能な状態に設定されている複数のプログラムうち1以上が実行不可能な状態に設定され、仮想装置がジョブを実行する間の仮想装置の状態が許容条件を満たす場合において仮想装置で実行可能に設定されている1以上のインストールプログラムが決定される。このため、仮想装置で実行可能に設定されている複数のプログラムのうちから仮想装置がジョブを実行しても予め定められた許容条件を満たす最大数のプログラムの組を容易に決定することができる。
(4) 前記アンインストール手段は、前記画像形成装置において過去に実行されたことのない1以上の処理をそれぞれ定める1以上のプログラムを実行不可能な状態に設定する、(3)に記載のシミュレート装置。この局面に従えば、過去に実行されたことのない1以上の処理をそれぞれ定める1以上のプログラムを実行不可能な状態に設定するので、画像処理装置で実行されたことのない処理を実行不可能な状態にして、許容条件を満たすプログラムの組を決定することができる。
(5) 前記アンインストール手段は、過去に実行された回数の少ない処理を定めるプログラムから順に実行不可能な状態に設定する、(4)に記載のシミュレート装置。この局面に従えば、過去に実行された回数の少ない処理を定めるプログラムから順に実行不可能な状態に設定するので、画像処理装置で実行された頻度の高い処理を優先して実行可能な状態にすることができる。
(6) 前記設定組決定手段は、前記ジョブを実行する間の動作状態が前記許容条件を満たさなくなく直前に前記仮想装置で実行可能な状態に設定されている1以上のプログラムの組を前記設定組に決定する、請求項16に記載の画像形成装置。この局面によれば、実行可能に設定されている複数のプログラムのうちからジョブを実行しても予め定められた許容条件を満たす最大数のプログラムの組を容易に決定することができる。
(7) 前記設定組決定手段は、前記ジョブを実行する間の動作状態が前記許容条件を満たし、かつ、実行可能な状態に設定されている1以上のプログラムの数が最大となる組を前記設定組に決定する、請求項17に記載の画像形成装置。この局面によれば、実行可能に設定されている複数のプログラムのうちからジョブを実行しても予め定められた許容条件を満たす最大数のプログラムの組を容易に決定することができる。
(8) 実行可能な状態に設定されている複数のプログラムうち1以上を実行不可能な状態に設定するアンインストール手段を、さらに備え、
前記設定組決定手段は、前記ジョブを実行する間の状態が前記許容条件を満たす時点で実行可能な状態に設定されている1以上のプログラムの組を前記設定組に決定する、請求項10〜14のいずれかに記載の画像形成装置。この局面に従えば、実行可能な状態に設定されている複数のプログラムうち1以上が実行不可能な状態に設定され、ジョブを実行する間の状態が許容条件を満たす時点において実行可能な状態に設定されている1以上のプログラムが設定組に決定される。このため複数のプログラムのうちからジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの組を容易に決定することができる。
(9) 前記アンインストール手段は、過去に実行されたことのない1以上の処理をそれぞれ定める1以上のプログラムを実行不可能な状態に設定する、(8)に記載の画像形成装置。この局面に従えば、過去に実行されたことのない1以上の処理をそれぞれ定める1以上のプログラムを実行不可能な状態に設定するので、過去に実行されたことのない処理を実行不可能な状態にして、許容条件を満たすインストールプログラムの組を決定することができる。
(10) 前記アンインストール手段は、過去に実行された回数の少ない処理を定めるプログラムから順に実行不可能な状態に設定する、(9)に記載の画像形成装置。この局面に従えば、過去に実行された回数の少ない処理を定めるプログラムから順に実行不可能な状態に設定するので、過去に実行された頻度の高い処理を優先して実行可能な状態にすることができる。
<Additional notes>
(1) The setting set determining means is set to a state in which the virtual device can be executed immediately before the operating state of the virtual device does not satisfy the permissible condition while the virtual device executes the job. The simulation device according to claim 7, wherein one or more sets of programs are determined as the setting set. According to this aspect, it is easy to determine the maximum number of programs that satisfy a predetermined tolerance even if the virtual device executes a job from among a plurality of programs that are set to be executable in the virtual device. be able to.
(2) The setting set determining means is set so that the operating state of the virtual device while the virtual device executes the job satisfies the permissible condition and can be executed by the virtual device1. The simulation device according to claim 8, wherein the set having the maximum number of the above programs is determined as the setting set. According to this aspect, it is easy to determine the maximum number of programs that satisfy a predetermined tolerance even if the virtual device executes a job from among a plurality of programs that are set to be executable in the virtual device. be able to.
(3) Further provided with an uninstall means for setting one or more programs out of a plurality of programs set to be executable in the virtual device to an unexecutable state.
The setting set determining means is a set of one or more programs set to a state in which the virtual device can be executed when the state of the virtual device while the virtual device executes the job satisfies the allowable condition. The simulation device according to any one of claims 1 to 5, wherein the above-mentioned setting set is determined. According to this aspect, one or more of the programs set to be executable in the virtual device are set to the unexecutable state, and the state of the virtual device while the virtual device executes the job is an allowable condition. When the condition is satisfied, one or more installation programs set to be executable in the virtual device are determined. Therefore, it is possible to easily determine the maximum number of programs that satisfy a predetermined allowable condition even if the virtual device executes a job from among a plurality of programs that are set to be executable in the virtual device. ..
(4) The simulation according to (3), wherein the uninstallation means sets one or more programs that define one or more processes that have not been executed in the past in the image forming apparatus into an unexecutable state. Device. According to this aspect, one or more programs that define one or more processes that have not been executed in the past are set in an unexecutable state, so that the processes that have never been executed by the image processing device cannot be executed. It is possible to determine the set of programs that satisfy the permissible conditions.
(5) The simulation device according to (4), wherein the uninstallation means is set to an unexecutable state in order from a program that defines a process that has been executed less frequently in the past. According to this aspect, the programs that determine the processes that have been executed less frequently in the past are set to the unexecutable state in order, so the frequently executed processes in the image processing device are prioritized and executed. can do.
(6) The setting set determining means sets a set of one or more programs in which the operating state during execution of the job does not satisfy the permissible condition and is set to a state that can be executed by the virtual device immediately before. The image forming apparatus according to claim 16, which is determined in the setting set. According to this aspect, it is possible to easily determine the maximum number of programs that satisfy a predetermined allowable condition even if a job is executed from a plurality of programs that are set to be executable.
(7) The setting set determining means is a set in which the operating state during execution of the job satisfies the permissible condition and the number of one or more programs set in the executable state is the maximum. The image forming apparatus according to claim 17, which is determined in the setting set. According to this aspect, it is possible to easily determine the maximum number of programs that satisfy a predetermined allowable condition even if a job is executed from a plurality of programs that are set to be executable.
(8) Further provided with an uninstall means for setting one or more of a plurality of programs set in an executable state to an unexecutable state.
The setting set determining means determines, in the setting set, a set of one or more programs whose state during execution of the job is set to an executable state at a time when the allowable condition is satisfied. 14. The image forming apparatus according to any one of 14. According to this aspect, one or more of the plurality of programs set in the executable state are set in the non-executable state, and the state during the execution of the job becomes the executable state when the allowable condition is satisfied. One or more programs that have been set are determined as the setting set. Therefore, even if a job is executed from a plurality of programs, a set of one or more programs satisfying a predetermined allowable condition can be easily determined.
(9) The image forming apparatus according to (8), wherein the uninstallation means sets one or more programs that define one or more processes that have not been executed in the past into an unexecutable state. According to this aspect, one or more programs that define one or more processes that have not been executed in the past are set to the unexecutable state, so that the processes that have not been executed in the past cannot be executed. The state can be set to determine the set of installation programs that meet the acceptable conditions.
(10) The image forming apparatus according to (9), wherein the uninstallation means is set to an unexecutable state in order from a program that determines a process that has been executed less frequently in the past. According to this aspect, the programs that define the processes that have been executed less frequently in the past are set to the unexecutable state in order, so the processes that have been executed frequently in the past are prioritized and made executable. Can be done.

1 情報処理システム、3 LAN、5 インターネット、100 MFP、200 サーバー、111 メイン基板、115 操作パネル、115A 操作パネル、118 表示部、119 操作部、120,120A 自動原稿搬送装置、130,130A 原稿読取部、140,140A 画像形成部、150,150A 給紙部、160,160A 通信I/F部、170,170A ファクシミリ部、171 CPU、173 ROM、175 RAM、177 画像制御ASIC、179 バス、180,180A 外部記憶装置、201 CPU、202 ROM、203 RAM、204 HDD、205 通信部、206 表示部、207 操作部、209 外部記憶装置、300 CPU周辺シミュレータ、301 仮想CPU、303 仮想メモリ、305 周辺モデル、307 同期設定モデル、309 割込制御部、311 バス、320 HWシミュレータ、321 PCI−ExpressBusモデル、323 画像制御ASICモデル、325 装置モデル、51 データ受付部、53 画像処理部、55 履歴記憶部、57 不具合検出部、59 検証依頼部、59A 実行制御部、61 ハードエラー検出部、63,63A 設定部、65,65A 復元部、67 一時記憶部、91 履歴送信部、92 エラー情報送信部、93 装置情報送信部、94 復元依頼部、95 設定指示受付部、96 一時記憶依頼部、251 装置情報取得部、253 履歴取得部、255 シミュレート部、257 仮想実行制御部、259 エラー情報受信部、261 設定指示部、263 依頼時記憶部、265 復元依頼受付部、271,271A 確認部、273,273A 代替部、275 インストール部、275A アンインストール部、277,277A 設定組決定部、279,279A 動作状態取得部、281,281A 優先度決定部。 1 Information processing system, 3 LAN, 5 Internet, 100 MFP, 200 server, 111 main board, 115 operation panel, 115A operation panel, 118 display unit, 119 operation unit, 120, 120A automatic document transfer device, 130, 130A document reading Unit, 140, 140A image forming unit, 150, 150A paper feeding unit, 160, 160A communication I / F unit, 170, 170A facsimile unit, 171 CPU, 173 ROM, 175 RAM, 177 image control ASIC, 179 bus, 180, 180A external storage device, 201 CPU, 202 ROM, 203 RAM, 204 HDD, 205 communication unit, 206 display unit, 207 operation unit, 209 external storage device, 300 CPU peripheral simulator, 301 virtual CPU, 303 virtual memory, 305 peripheral model , 307 synchronous setting model, 309 interrupt control unit, 311 bus, 320 HW simulator, 321 PCI-ExpressBus model, 323 image control ASIC model, 325 device model, 51 data reception unit, 53 image processing unit, 55 history storage unit, 57 Defect detection unit, 59 Verification request unit, 59A Execution control unit, 61 Hard error detection unit, 63, 63A setting unit, 65, 65A restoration unit, 67 Temporary storage unit, 91 History transmission unit, 92 Error information transmission unit, 93 Device information transmission unit, 94 restoration request unit, 95 setting instruction reception unit, 96 temporary storage request unit, 251 device information acquisition unit, 253 history acquisition unit, 255 simulation unit, 257 virtual execution control unit, 259 error information reception unit, 261 Setting instruction unit, 263 Request storage unit, 265 Restoration request reception unit, 271,271A Confirmation unit, 273,273A Alternative unit, 275 Installation unit, 275A Uninstall unit, 277,277A Setting group determination unit, 279,279A Operation Status acquisition unit, 281,281A Priority determination unit.

Claims (11)

画像形成装置が有するハードウェア資源に不具合が発生する場合に、前記画像形成装置から受信されるエラー情報で特定される前記ハードウェア資源に対応するエミュレーターを前記エラー情報に含まれる故障個所が故障した状態に設定することにより前記画像形成装置をシミュレートするシミュレート手段と、
前記シミュレート手段を制御して、前記シミュレート手段が前記画像形成装置をシミュレートする仮想装置にジョブを実行させる仮想実行制御手段と、
前記仮想装置で実行可能な状態に設定されている複数のプログラムのうちから前記仮想装置がジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの組を設定組に決定する設定組決定手段と、
前記決定された設定組に含まれる前記1以上のプログラムのみを前記画像形成装置が実行可能な状態となるように前記画像形成装置を制御する設定制御手段と、を備えたシミュレート装置。
When a problem occurs in the hardware resource of the image forming apparatus, the failure point included in the error information of the emulator corresponding to the hardware resource specified by the error information received from the image forming apparatus has failed. A simulating means that simulates the image forming apparatus by setting the state, and
A virtual execution control means that controls the simulation means and causes the virtual device that simulates the image forming apparatus to execute a job.
A setting that determines a set of one or more programs that satisfy a predetermined allowable condition even if the virtual device executes a job from among a plurality of programs set to be executable by the virtual device. Group determination means and
A simulation device including a setting control means for controlling the image forming apparatus so that the image forming apparatus can execute only one or more programs included in the determined setting set.
前記設定組決定手段は、前記ハードウェア資源のうち前記画像形成装置にインストールされている複数の既定プログラムを前記画像形成装置が実行するために用いる揮発性メモリに不具合が発生する場合、前記複数の既定プログラムのうちから前記揮発性メモリの有効な領域のみを用いて前記画像形成装置が実行可能な1以上のプログラムを実行可能な状態に前記仮想装置を設定する、請求項1に記載のシミュレート装置。 The setting-group determination unit, when a malfunction occurs in the volatile memory Ru used for a plurality of default program installed in the image forming apparatus is the image forming apparatus to perform one of the hardware resources, the wherein setting a virtual device ready to perform the image forming apparatus executable one or more programs using only valid area before Ki揮-volatile memory from a plurality of predetermined programs, to claim 1 The simulated device described. 前記設定組決定手段は、前記ハードウェア資源のうち不具合が検出されたハードウェア資源で実行される処理を定めた代替プログラムが存在する場合、過去に実行されたことのある処理に対して優先度を決定し、前記複数の既定プログラムおよび前記代替プログラムのうちから前記優先度に基づいて選択された処理を定めかつ記揮発性メモリの有効な領域のみを用いて前記画像形成装置で実行可能な1以上のプログラムを実行可能な状態に前記仮想装置を設定する、請求項2に記載のシミュレート装置。 When there is an alternative program that defines the processing to be executed by the hardware resource in which the defect is detected among the hardware resources, the setting set determining means gives priority to the processing that has been executed in the past. determines, defines a process selected based on the priority from among the plurality of predetermined programs and the alternative program and executable by the image forming apparatus using only valid area before Ki揮-volatile memory The simulation device according to claim 2, wherein the virtual device is set in a state in which one or more programs can be executed. 前記設定組決定手段は、前記画像形成装置で過去に実行された回数の多い順に処理を選択し、選択された前記処理に対応するプログラムを実行可能な状態に前記仮想装置を設定する、請求項2または3に記載のシミュレート装置。 The setting group determining means selects processes in descending order of the number of times they have been executed in the past by the image forming apparatus, and sets the virtual device in a state in which a program corresponding to the selected processes can be executed. The simulation device according to 2 or 3. 前記設定組決定手段は、過去に実行されたことのある処理に対して優先度を決定し、前記優先度に基づいて選択された処理を定めた代替プログラムを実行可能な状態に前記仮想装置を設定する、請求項1に記載のシミュレート装置。 The setting group determining means determines a priority for a process that has been executed in the past, and puts the virtual device in a state in which an alternative program that defines the process selected based on the priority can be executed. The simulation device according to claim 1, which is set. 前記設定組決定手段は、前記仮想装置で実行可能な状態に設定されている複数のプログラムのうちから、過去に実行されたことのある処理に対して優先度を決定し、優先度の高い順に処理を1つずつ選択してプログラムをインストールし、テストジョブを仮想装置に実行させ、動作状態が許容条件を満たす場合に、プログラム識別情報を含む追加指示を出力し、追加指示に含まれるインストールプログラムの組を前記設定組に決定する、請求項1〜5のいずれかに記載のシミュレート装置。 The setting set determining means determines the priority of the processes that have been executed in the past from among the plurality of programs set in the state in which the virtual device can be executed, and determines the priority in descending order of priority. The program is installed by selecting the processes one by one, the test job is executed by the virtual device, and when the operating status satisfies the allowable condition, the additional instruction including the program identification information is output, and the installation program included in the additional instruction is output. The simulation device according to any one of claims 1 to 5, wherein the set of is determined as the setting set. 前記画像形成装置において過去に実行された回数の多い処理を定めるプログラムから順に実行可能な状態に前記仮想装置を設定するインストール手段をさらに備えた、請求項6に記載のシミュレート装置。 The simulation device according to claim 6, further comprising an installation means for setting the virtual device in a state in which the virtual device can be executed in order from a program that determines a process that has been executed many times in the past in the image forming device. 前記画像形成装置において過去に実行された回数の少ない処理を定めるプログラムから順に実行不可能な状態に前記仮想装置を設定するアンインストール手段をさらに備えた、請求項6に記載のシミュレート装置。 The simulation device according to claim 6, further comprising an uninstall means for setting the virtual device in an unexecutable state in order from a program that defines a process that has been executed less frequently in the past in the image forming device. 前記画像形成装置に前記設定組に含まれる前記1以上のプログラムのみを実行させる前に、前記画像形成装置で実行可能な状態に設定されているプログラムを退避プログラムとして記憶する退避手段と、
前記画像形成装置において前記ハードウェア資源に発生した前記不具合が解消された後に、前記退避プログラムを実行可能な状態に前記画像形成装置を設定する復元手段と、を
さらに備えた請求項1〜8のいずれかに記載のシミュレート装置。
An evacuation means for storing a program set in a state in which the image forming apparatus can be executed as an evacuation program before causing the image forming apparatus to execute only one or more programs included in the setting set.
Claims 1 to 8 further include a restoration means for setting the image forming apparatus in a state in which the saving program can be executed after the defect generated in the hardware resource in the image forming apparatus is resolved. The simulator according to any one.
画像形成装置が有するハードウェア資源に不具合が発生する場合に、前記画像形成装置から受信されるエラー情報で特定される前記ハードウェア資源に対応するエミュレーターを前記エラー情報に含まれる故障個所が故障した状態に設定することにより前記画像形成装置をシミュレートするシミュレートステップと、
前記シミュレートステップにおいて前記画像形成装置をシミュレートする仮想装置にジョブを実行させる仮想実行制御ステップと、
記仮想装置で実行可能な状態に設定されている複数のプログラムのうちから前記仮想装置がジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの組を設定組に決定する設定組決定ステップと、
前記決定された設定組に含まれる前記1以上のプログラムのみを前記画像形成装置が実行可能な状態となるように前記画像形成装置を制御する設定制御ステップと、をサーバーに実行させる装置設定方法。
When a problem occurs in the hardware resource of the image forming apparatus, the failure point included in the error information of the emulator corresponding to the hardware resource specified by the error information received from the image forming apparatus has failed. A simulation step that simulates the image forming apparatus by setting the state, and
In the simulation step, a virtual execution control step of causing a virtual device that simulates the image forming device to execute a job, and a virtual execution control step.
Determining a set of said virtual device allowed satisfies one or more programs also predetermined by running the job from among a plurality of programs that are set in the executable state in the previous SL virtual device set group Setting set determination step and
A device setting method for causing a server to execute a setting control step for controlling the image forming apparatus so that the image forming apparatus can execute only one or more programs included in the determined setting set.
画像形成装置が有するハードウェア資源に不具合が発生する場合に、前記画像形成装置から受信されるエラー情報で特定される前記ハードウェア資源に対応するエミュレーターを前記エラー情報に含まれる故障個所が故障した状態に設定することにより前記画像形成装置をシミュレートするシミュレートステップと、
前記シミュレートステップにおいて前記画像形成装置をシミュレートする仮想装置にジョブを実行させる仮想実行制御ステップと、
記仮想装置で実行可能な状態に設定されている複数のプログラムのうちから前記仮想装置がジョブを実行しても予め定められた許容条件を満たす1以上のプログラムの組を設定組に決定する設定組決定ステップと、
前記決定された設定組に含まれる前記1以上のプログラムのみを前記画像形成装置が実行可能な状態となるように前記画像形成装置を制御する設定制御ステップと、をコンピューターに実行させる装置設定プログラム。
When a problem occurs in the hardware resource of the image forming apparatus, the failure point included in the error information of the emulator corresponding to the hardware resource specified by the error information received from the image forming apparatus has failed. A simulation step that simulates the image forming apparatus by setting the state, and
In the simulation step, a virtual execution control step of causing a virtual device that simulates the image forming device to execute a job, and a virtual execution control step.
Determining a set of said virtual device allowed satisfies one or more programs also predetermined by running the job from among a plurality of programs that are set in the executable state in the previous SL virtual device set group Setting set determination step and
A device setting program for causing a computer to execute a setting control step for controlling the image forming apparatus so that the image forming apparatus can execute only one or more programs included in the determined setting set.
JP2017203299A 2017-10-20 2017-10-20 Simulation device, image forming device, device setting method and device setting program Expired - Fee Related JP6953994B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017203299A JP6953994B2 (en) 2017-10-20 2017-10-20 Simulation device, image forming device, device setting method and device setting program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017203299A JP6953994B2 (en) 2017-10-20 2017-10-20 Simulation device, image forming device, device setting method and device setting program

Publications (2)

Publication Number Publication Date
JP2019080097A JP2019080097A (en) 2019-05-23
JP6953994B2 true JP6953994B2 (en) 2021-10-27

Family

ID=66626675

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017203299A Expired - Fee Related JP6953994B2 (en) 2017-10-20 2017-10-20 Simulation device, image forming device, device setting method and device setting program

Country Status (1)

Country Link
JP (1) JP6953994B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023069494A (en) * 2021-11-05 2023-05-18 コニカミノルタ株式会社 Image processing device, cooperative processing execution method, and cooperative processing execution program

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58170275A (en) * 1982-03-31 1983-10-06 Canon Inc Picture copying device
JPH05300345A (en) * 1992-04-17 1993-11-12 Ricoh Co Ltd Facsimile equipment
JP3898476B2 (en) * 2001-09-11 2007-03-28 株式会社リコー Image information processing apparatus and software reconstruction method
JP2006167963A (en) * 2004-12-13 2006-06-29 Canon Inc Image forming apparatus
JP2007003837A (en) * 2005-06-23 2007-01-11 Fuji Xerox Co Ltd Image forming apparatus and method
JP2007221183A (en) * 2006-02-14 2007-08-30 Fuji Xerox Co Ltd Apparatus and method of color forming processing simulation

Also Published As

Publication number Publication date
JP2019080097A (en) 2019-05-23

Similar Documents

Publication Publication Date Title
CN100412826C (en) Image forming apparatus, information processing system, firmware rewriting method
JP5310246B2 (en) Information processing apparatus, information processing system, and program
JP4597834B2 (en) Image forming apparatus, information processing method, information processing program, and recording medium
JP4834970B2 (en) Information processing apparatus and information processing system using the same
JP2011242891A (en) Distribution device, image processing device, distribution method and installation method
US20060222176A1 (en) Image forming apparatus, information processing method, and recording medium
JP6904075B2 (en) State prediction device, state prediction method and state prediction program
JP6953994B2 (en) Simulation device, image forming device, device setting method and device setting program
CN102025873B (en) The functional simulation method of information processor and image processing apparatus
JP7207112B2 (en) Information processing device, image processing device and program
JP5262495B2 (en) Electronic device, remote management system, control method, program, and recording medium
JP6996216B2 (en) Simulation device, information processing device, device setting method and device setting program
US20190387107A1 (en) Image processing device, self-diagnostic method and non-transitory recording medium
JP7098899B2 (en) Virtual Execution Device, Virtual Execution Method and Virtual Execution Program
JP2006092192A (en) Failure recovery support system, failure recovery support device, management device, and failure recovery support method
JP2012018680A (en) Device, information processing method, program and recording medium
JP6972882B2 (en) Simulation device, device setting method and device setting program
JP6950431B2 (en) Information processing equipment, image control method and image control program
JP7081120B2 (en) Information processing equipment, image control method and image control program
JP2011170576A (en) Method, program and apparatus for creation of installation package, and installation system
JP6926886B2 (en) Simulation equipment, equipment management method and equipment management program
JP6248910B2 (en) Image processing apparatus and program backup method
EP3699749B1 (en) Image forming device
JP2010218469A (en) Information processor, information processing method, program and recording medium
JP2011096050A (en) Method, program and apparatus for preparing installer, and installer system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200928

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210608

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210806

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210831

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210913

R150 Certificate of patent or registration of utility model

Ref document number: 6953994

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees