JP2007287101A - Halt control method for system, and control system - Google Patents
Halt control method for system, and control system Download PDFInfo
- Publication number
- JP2007287101A JP2007287101A JP2006116925A JP2006116925A JP2007287101A JP 2007287101 A JP2007287101 A JP 2007287101A JP 2006116925 A JP2006116925 A JP 2006116925A JP 2006116925 A JP2006116925 A JP 2006116925A JP 2007287101 A JP2007287101 A JP 2007287101A
- Authority
- JP
- Japan
- Prior art keywords
- terminal
- processing
- control
- request
- status
- 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.)
- Abandoned
Links
Images
Landscapes
- Power Sources (AREA)
Abstract
Description
本発明は、分散システムの自動運転に関する技術であり、特にRFID(Radio Frequency Identification)システムのようにシステムを構成する機器の数が多いシステムの電力制御を行うシステムの休止制御方法及び制御システムに関する。 The present invention relates to a technology related to automatic operation of a distributed system, and more particularly, to a suspension control method and control system for a system that performs power control of a system having a large number of devices constituting the system, such as an RFID (Radio Frequency Identification) system.
分散システムの自動運転技術として、機器の依存関係に基づき各機器の起動/停止するスケジュールを作成する発明が提案されている(特許文献1参照)。上述した特許文献1に記載の発明では、ある機器を起動するときにあらかじめ起動しておく必要がある機器や、あらかじめ起動かつ初期化しておく必要がある機器を、機器間の依存関係として設定しておき、全ての依存関係からシステム全体の稼動スケジュールを自動的に作成するものであった。
しかし、上述した特許文献1に記載の発明では、分散システムの規模が大きくなり、システムを構成する機器の数が膨大になると、実際に利用していない機器を一時的に休止し節電する要求が発生する。例えばRFIDを利用した自動倉庫では、RFIDデバイスを制御するための機器が多数必要となるが、それら機器の多くは実際の処理に利用されていないアイドル状態となっていることが多いため、機器が消費する電力は無視できなくなる。 However, in the invention described in Patent Document 1 described above, when the scale of the distributed system increases and the number of devices constituting the system becomes enormous, there is a demand for temporarily suspending devices that are not actually used and saving power. appear. For example, in an automated warehouse using RFID, a large number of devices for controlling RFID devices are required, but many of these devices are often in an idle state that is not used for actual processing. The consumed power cannot be ignored.
このような分散システムを節電するためには、各機器はアイドル状態になると自分の判断で待機状態を示す休止状態に遷移することが望ましい。しかし、休止状態と稼動状態間の状態遷移には一定の時間が必要であるので、休止状態になった機器を利用するためにはその機器を再起動(休止状態から稼動状態への遷移)する間、業務を一時停止する必要があり、システムの利便性が損なわれる。上記課題を解決するためには、休止しようとする機器が近い将来利用されないことを確認してから休止する必要がある。 In order to save such a distributed system, it is desirable that each device transitions to a dormant state indicating a standby state by its own judgment when it enters an idle state. However, since a certain amount of time is required for the state transition between the hibernation state and the operation state, the device is restarted (transition from the hibernation state to the operation state) in order to use the device in the hibernation state. In the meantime, it is necessary to temporarily suspend operations, and the convenience of the system is impaired. In order to solve the above problem, it is necessary to confirm that the device to be suspended will not be used in the near future, and then pause.
上述した特許文献1に記載の方法では、各機器の稼動状態はあらかじめ決められたスケジュールに従って制御するため、各機器がアイドル状態になったときに各機器が自分の判断で休止状態に遷移する制御を行うことができないという不都合があった。また各機器が休止状態に遷移しようとしても、実際にその機器が近い将来利用されるかどうか判断することができないという不都合があった。 In the method described in Patent Document 1 described above, the operating state of each device is controlled according to a predetermined schedule. Therefore, when each device is in an idle state, each device transitions to a dormant state based on its own judgment. There was an inconvenience that could not be done. In addition, even if each device attempts to enter the hibernation state, there is a problem in that it cannot be determined whether the device will actually be used in the near future.
そこで、本発明は、分散システムで各機器が自分の判断で休止状態に遷移する制御を行うことができると共に、その機器が近い将来利用されるかどうか判断することができるシステムの休止制御方法及び制御システムを提供することを目的とするものである。 Therefore, the present invention provides a system sleep control method capable of performing control in which each device transitions to a sleep state based on its own determination in a distributed system and determining whether the device is used in the near future. The object is to provide a control system.
上記課題を解決し、本発明の目的を達成するため、本発明では、各制御端末は、自端末で実行する処理の定義を記載した処理定義と、上記自端末で実行する処理のステータスと、上記自端末で実行する処理が依存するすべての下位の処理及びその処理を実行する他端末のアドレスと、上記自端末で実行する処理に依存する全ての上位の処理及びその処理を実行する他端末のアドレスを管理する処理実行部を備えている。 In order to solve the above problems and achieve the object of the present invention, in the present invention, each control terminal, the process definition that describes the definition of the process to be executed by the own terminal, the status of the process to be executed by the own terminal, All lower-level processes that depend on the process executed by the own terminal and the addresses of other terminals that execute the processes, and all higher-level processes that depend on the process executed by the own terminal and other terminals that execute the processes A processing execution unit for managing the addresses of
各制御端末は休止状態に遷移するとき、自端末で実行する処理に依存する上位の処理を実行する他端末すべてに「休止要求」を送信し、上記「休止要求」を受信した制御端末は、上記「休止要求」を送信した制御端末が実行する処理に依存する処理を、上記処理実行部が管理している処理定義から検索し、上記条件に合致する処理が見つかった場合、その処理のステータスを確認し、上記ステータスが「アイドル」であれば「OK」を返信し、「ビジー」であれば「NG」を返信する。 When each control terminal transitions to a dormant state, it transmits a “pause request” to all other terminals that execute higher-level processing that depends on the process executed by its own terminal, and the control terminal that has received the “pause request” When a process that is dependent on the process executed by the control terminal that sent the “pause request” is searched from the process definition managed by the process execution unit and a process that matches the above condition is found, the status of the process If the status is “idle”, “OK” is returned, and if it is “busy”, “NG” is returned.
また本発明では、「休止要求」を送信した制御端末は、休止処理実行中に上記「休止要求」を送信した他端末から「NG」を受信した場合、休止処理をキャンセルし、「休止要求」を送信したすべての他端末に「休止キャンセル通知」を送信する。
また本発明では、「休止要求」を送信した制御端末は、休止処理実行中に他端末から「処理要求」を受信した場合、休止処理をキャンセルし、「休止要求」を送信したすべての他端末に「休止キャンセル通知」を送信する。
Further, in the present invention, when the control terminal that has transmitted the “pause request” receives “NG” from another terminal that has transmitted the “pause request” during the execution of the pause process, the control terminal cancels the pause process and performs the “pause request”. A “pause cancellation notice” is sent to all other terminals that have sent.
In the present invention, when the control terminal that has transmitted the “pause request” receives a “process request” from another terminal during the execution of the pause process, the control terminal cancels the pause process and transmits all the other terminals that have transmitted the “pause request”. Send “pause cancellation notice” to
また本発明では、各制御端末は、自端末で実行する処理が依存するすべての下位の処理を実行する他端末のステータスを管理する稼動情報管理部を備え、制御端末が処理を実行するとき、上記稼動情報管理部は、上記処理が依存するすべての下位の処理を実行する他端末のステータスを確認し、ステータスが「休止」である端末が存在する場合、その端末を起動する。 Further, in the present invention, each control terminal includes an operation information management unit that manages the status of other terminals that execute all lower-level processes on which the process executed by the own terminal depends, and when the control terminal executes the process, The operation information management unit confirms the status of another terminal that executes all the lower-level processes on which the above process depends, and activates the terminal when the status is “pause”.
また本発明では、構成管理サーバは、各制御端末で収集したアクセスログから、クライアント端末から送信される「処理要求」のアクセスパターンを解析し、あるクライアント端末から制御端末に第1の「処理要求」が送信された場合に、上記クライアント端末から続けて送信される可能性が高い第2の「処理要求」を上記解析結果に基づき予測し、上記第2の「処理要求」の実行に必要な制御端末が休止中であれば上記休止中の制御端末を起動し、上記第2の「処理要求」の実行に必要な制御端末が稼働中であれば上記稼働中の制御端末を休止状態に遷移しないように制御する。 In the present invention, the configuration management server analyzes the access pattern of the “processing request” transmitted from the client terminal from the access log collected by each control terminal, and the first “processing request” is sent from a certain client terminal to the control terminal. ”Is transmitted, the second“ processing request ”that is likely to be continuously transmitted from the client terminal is predicted based on the analysis result, and is necessary for the execution of the second“ processing request ”. If the control terminal is inactive, the inactive control terminal is activated, and if the control terminal required to execute the second “processing request” is active, the active control terminal is transitioned to the inactive state. Control not to.
本発明によれば、各端末が実際に休止してもシステムの利便性に問題を起こさないときのみ、各端末を休止するので、分散システムの利便性を失うことなく節電効果を得ることができる。 According to the present invention, even if each terminal is actually suspended, each terminal is suspended only when there is no problem in the convenience of the system, so that a power saving effect can be obtained without losing the convenience of the distributed system. .
以下に、本発明の実施の形態について、適宜、図面を参照しながら説明する。
まず、本発明の第1の実施の形態を説明する。
図1は本発明の実施の形態例のシステム構成を示している。
ネットワーク101には、制御端末1〜7と、構成管理サーバ8と、クライアント端末t1〜tn(nは端末の数)が接続されている。構成管理サーバ8に接続されている記憶装置(ハードディスクなど)には、制御端末1〜7で実行する処理内容を記述した端末処理情報が格納されている。制御端末1〜4はRS−232Cケーブルを介してRFIDリーダ/ライタ10−1〜10−4を制御する。すなわち、制御端末1〜4はそれぞれ棚A1、棚A2、棚B1、棚B2に設置されたRFIDリーダ/ライタ10−1〜10−4の制御を受け持つ。
Embodiments of the present invention will be described below with reference to the drawings as appropriate.
First, a first embodiment of the present invention will be described.
FIG. 1 shows a system configuration of an embodiment of the present invention.
Control terminals 1 to 7,
図4は制御端末間の階層構成を示す図である。
制御端末1〜7間の上下関係は図4に示すように階層構成となっており、図4において、制御端末1、制御端末2が読み取ったデータを制御端末5が集計する。つまり制御端末5は棚A1と棚A2から構成されるエリアAを受け持つ。同様に、制御端末6は棚B1と棚B2から構成されるエリアBを受け持ち、制御端末3、制御端末4が読み取ったデータを集計する。制御端末7はエリアAとエリアBからなるフロア全体を受け持ち、制御端末5、制御端末6が受信したデータを集計する。
FIG. 4 is a diagram showing a hierarchical structure between control terminals.
The hierarchical relationship between the control terminals 1 to 7 has a hierarchical structure as shown in FIG. 4. In FIG. 4, the data read by the control terminal 1 and the
図2は構成管理サーバの構成を示す図である。
図2に示すように構成管理サーバ8のソフトウェア構成は、制御端末1〜7の構成情報の依存関係を解析する依存関係解析部11と、構成管理サーバ8の記憶装置に記憶されている端末処理情報Cの管理及び制御端末1〜7への配布を行う構成情報配布部12からなる。
FIG. 2 is a diagram showing the configuration of the configuration management server.
As shown in FIG. 2, the software configuration of the
図3は制御端末の構成を示す図である。
図3に示すように、制御端末1〜7のソフトウェア構成は、端末処理情報Cに基づいて処理を実行する処理実行部21と、自端末に依存する端末(逆依存関係端末)と自端末が依存する端末(依存関係端末)の稼動状態を管理する稼動状態管理部22と、RFIDリーダ/ライタ10−1〜10−4を制御するデバイス制御部23からなる。ここで、稼動状態管理部22は、制御端末1〜7の休止処理を行う休止処理実行機能と、制御端末1〜7の起動及び再起動処理を行う起動処理実行機能とを有している。
FIG. 3 is a diagram showing the configuration of the control terminal.
As shown in FIG. 3, the software configurations of the control terminals 1 to 7 include a
図5〜図7は、制御端末1〜7に格納される端末処理情報Cの具体例を示しており、図5、図6、図7はそれぞれ制御端末7、制御端末5、制御端末1に格納される端末処理情報C7、端末処理情報C5、端末処理情報C1に対応するものである。
端末処理情報C7、C5、C1は、依存処理リストC71、C51、C11と、逆依存処理リストC72、C52、C12と、処理定義C73、C53、C13から構成される。処理定義C73、C53、C13には、各端末で実行する処理の内容が記載されており、依存処理リストC71、C51、C11には上記処理が依存する他端末の処理(他端末が実行する処理)が設定されており、逆依存処理リストC72、C52、C12には上記処理に依存する他端末の処理が設定されている。
5 to 7 show specific examples of the terminal processing information C stored in the control terminals 1 to 7, and FIGS. 5, 6, and 7 show the control terminal 7, the
The terminal processing information C7, C5, C1 includes dependency processing lists C71, C51, C11, inverse dependency processing lists C72, C52, C12, and process definitions C73, C53, C13. The process definitions C73, C53, and C13 describe the contents of the process executed at each terminal, and the dependency process lists C71, C51, and C11 include the process of the other terminal on which the above process depends (the process executed by the other terminal). ) Is set, and the processing of other terminals depending on the above processing is set in the inverse dependence processing lists C72, C52, and C12.
例えば、制御端末5の端末処理情報C5は図6のようになっており、処理定義C53にはアドレス”192.168.0.2”を持つ端末(制御端末1)の「棚A1確認」処理と、アドレス”192.168.0.3”を持つ端末(制御端末2)の「棚A2確認」処理を実行する旨の動作が処理名「エリアA確認」として定義されている。処理定義C53には制御端末5自身のアドレスも記載されているが、これは構成管理サーバ8が各制御端末1〜7に処理定義C53を配布するときに利用する。
For example, the terminal processing information C5 of the
依存処理リストC51には上記処理定義C53に記述されている処理「棚A1確認」、「棚A2確認」とそれら処理を実行する制御端末1、2のアドレスが設定されている。また、制御端末5で定義された処理を利用する端末は制御端末7であるので、逆依存処理リストC52には制御端末7のアドレス(192.168.0.8)と制御端末7の処理「フロア確認」が設定されている。
In the dependency process list C51, the processes “shelf A1 confirmation” and “shelf A2 confirmation” described in the process definition C53 and the addresses of the
制御端末5の例では依存処理リストC51、逆依存処理リストC52の内容は、処理定義C53が直接依存もしくは直接逆依存する処理定義に関する情報だけ設定しているが、実際には処理定義が間接的に依存もしくは逆依存するすべての処理定義に関する情報も含めて設定する。例えば、制御端末7の端末処理情報C7(図5)では、制御端末1〜6で定義されている処理を依存処理リストC71に設定することになり、制御端末1の端末処理情報C1(図7)では、制御端末5と制御端末7で定義されている処理を逆依存処理リストC12に設定することになる。
In the example of the
クライアント端末t1〜tn上では、制御端末1〜7を利用するアプリケーションプログラムが稼動しており、例えばエリアAの棚卸し処理を行う場合、クライアント端末t1〜tnは制御端末5に対して「エリアA確認」処理実行要求を送信する。上記要求を受け取った制御端末5は、制御端末1に「棚A1確認」要求を、制御端末2に「棚A2」確認要求を送信し、処理結果を集計後、クライアント端末t1〜tnに結果を返す。
On the client terminals t1 to tn, an application program that uses the control terminals 1 to 7 is running. For example, when performing an inventory process for the area A, the client terminals t1 to tn send the “area A confirmation” to the
本システムを構築するとき、システム開発者は図4のような階層構成の計画図に基づいて各端末に設定すべき端末処理情報C7、C5、C1の処理定義C73、C53、C13を手作業もしくは、専用のツールを利用して構成管理サーバ8上に作成する。端末処理情報C7、C5、C1の依存処理リストC71、C51、C11と逆依存処理リストC72、C52、C12は、すべての処理定義C73、C53、C13の作成完了後、構成管理サーバ8が端末処理情報C7、C5、C1の依存関係を解析することで自動的に作成する。
When constructing this system, the system developer manually or manually sets the process definitions C73, C53, and C13 of the terminal process information C7, C5, and C1 to be set for each terminal based on the hierarchical configuration plan as shown in FIG. And created on the
依存処理リストC71、C51、C11と逆依存処理リストC72、C52、C12の作成が完了すると、構成管理サーバ8は各端末に端末処理情報C7、C5、C1を配布し、システムが利用可能となる。なお、構成管理サーバ8は端末処理情報C7、C5、C1の配布先については、端末処理情報C7、C5、C1の処理定義C73、C53、C13に記載されている処理を実行する端末アドレスから決定する。
When the creation of the dependency processing lists C71, C51, C11 and the inverse dependency processing lists C72, C52, C12 is completed, the
〔端末処理情報の依存関係解析処理の手順〕
構成管理サーバ8が端末処理情報C7、C5、C1の処理定義C73、C53、C13から依存処理リストC71、C51、C11と逆依存処理リストC72、C52、C12を作成する解析処理は、構成管理サーバ8が各端末処理情報C7、C5、C1の依存関係を再帰的に辿りながら実施する。図8に、上記依存関係解析処理の手順を表すフローチャートを示し、図9に上記依存関係解析処理の中で再帰処理を行う部分のフローチャートを示す。以下、上記依存関係解析処理の手順を説明する。
[Terminal processing information dependency analysis procedure]
The analysis process in which the
図8において、構成管理サーバ8の依存関係解析部11は、端末処理情報を1つ選択し、その処理定義を解析し(ステップS101)、処理定義に依存する処理の処理名と上記処理を実行する制御端末のアドレスを依存処理リストに追加する(ステップS102)。例えば、構成管理サーバ8の依存関係解析部11は、図5に示した端末処理情報C7を解析する場合、処理定義C73を解析し、(処理名、アドレス)=(エリアA確認、192.168.0.6)、(エリアB確認、192.168.0.7)という情報を取り出し、依存処理リストC71に追加する。次に、依存関係解析部11は、処理定義の解析を終了したか否かを判断する(ステップS103)。すなわち、ステップS101とステップ S102の処理が全ての端末処理情報に対して行われたか否かを判断する。
In FIG. 8, the
判断ステップS103で全ての処理定義の解析が終了したと判断された場合は、続いて、依存関係解析部11は他のどの端末処理情報の依存処理リストにも記載されていない処理定義(ルート処理)を1つ選択する(ステップS104)。ステップS104のルート処理が1つ選択できたら、構成管理サーバ8の依存関係解析部11は、端末処理情報の依存関係を再帰的に辿ることで、処理定義間の依存関係を解析していく(ステップS106)。この依存処理定義解析についての詳細はサブルーチンとして図9に示されている。そして、全てのルート処理についてその解析が終了したかどうかを判断し(ステップS105)、全てのルート処理についてステップS106の処理が完了すると、解析処理は終了する。
If it is determined in the determination step S103 that the analysis of all the process definitions has been completed, then the dependency
上述したように、ステップS106の依存処理定義解析はサブルーチンとして実装されている。このサブルーチンの引数(入力情報)は、解析すべき処理の端末処理情報とその処理に逆依存する処理の情報(処理名とその処理を実行する制御端末のアドレス)のリストであり、サブルーチンの戻り値(出力情報)は、解析すべき処理とその処理が依存する処理の情報(処理名とその処理を実行する制御端末のアドレス)のリストである。 As described above, the dependency process definition analysis in step S106 is implemented as a subroutine. The argument (input information) of this subroutine is a list of terminal process information of the process to be analyzed and information of the process inversely dependent on the process (process name and address of the control terminal that executes the process). The value (output information) is a list of the process to be analyzed and the information of the process on which the process depends (the process name and the address of the control terminal that executes the process).
図9に示すように、サブルーチンの最初の処理では、構成管理サーバ8の依存関係解析部11は、サブルーチンの引数に設定した逆依存処理を端末処理情報の逆依存処理リストへ設定する(ステップS107)。例えば、構成管理サーバ8の依存関係解析部11が制御端末7の端末処理情報C7をルート処理として選択した場合、逆依存処理はないので、サブルーチンへ入力する情報はない。従って、この場合には、ステップS107で行う処理はない。
As shown in FIG. 9, in the first process of the subroutine, the dependency
続いて、依存関係解析部11は端末処理情報の依存処理リストに記載された処理を1つ選択し(ステップS108)、サブルーチンの引数を設定してステップS106のサブルーチンを呼び出す。このとき、解析すべき処理の端末処理情報は、選択した処理に関する端末処理情報となり、逆依存する処理の情報は、ステップS107で逆依存処理リストに追加した情報と現在解析中の端末処理情報に関する情報となる。
Subsequently, the dependency
例えば、構成管理サーバ8の依存関係解析部11が、端末処理情報C7を解析中に「エリアA確認」処理を選択した場合、解析すべき処理の端末処理情報は、「エリアA確認」(“192.168.0.6”)となり、また、逆依存する処理の情報は、「フロア確認」(“192.168.0.8”)となる。
For example, when the
ステップS108の処理では、構成管理サーバ8の依存関係解析部11は、ステップS101、ステップS102で行なった処理定義解析処理で依存処理リストに追加した情報のみを選択する。なお、ステップS108以降の処理の途中では、依存処理リストに情報が追加されていくが、この情報についてはステップS108で選択しない。
In the process of step S108, the dependency
構成管理サーバ8の依存関係解析部11は、サブルーチンを再帰的に呼び出すので、続いて「エリアA確認」処理に関する端末処理情報、すなわち端末処理情報C5に関する依存関係解析処理をステップS107から行うことになる。つまり、このステップS107の逆依存リストの更新処理では、図8で説明した手順と同様の手順により、依存関係解析部11は逆依存処理リストにサブルーチンの引数に設定されていた「フロア確認」処理に関する端末処理情報(「フロア確認」、”192.168.0.8”)を逆依存処理リストC52に設定する処理を行うことになる。
Since the
次に、構成管理サーバ8の依存関係解析部11は、依存端末リストC5から1つを選択し(ステップS108)、先ほどと同様に再帰的にサブルーチンを呼び出す。例えば「棚A1確認」処理に関する処理を選択した場合は、構成管理サーバ8の依存関係解析部11は、次のようにサブルーチンの引数を設定する。このとき、解析すべき処理の端末処理情報は、「棚A1確認」(“192.168.0.2”)となり、逆依存する処理の情報は、「フロア確認」(“192.168.0.8”)と、「エリアA確認」(“192.168.0.6”)となる。
Next, the dependency
例えば、「棚A1確認」処理に関する端末処理情報C1の解析では、構成管理サーバ8の依存関係解析部11はサブルーチンの引数に設定されていた「フロア確認」(“192.168.0.8”)と、「エリアA確認」(“192.168.0.6”)を逆依存処理リストC12に追加する(ステップS107)。そしてステップS106の依存処理定義解析のサブルーチンが実行される。ステップS106の依存処理定義解析が終了すると、これ以上依存する処理はないことになるので、このサブルーチンを抜ける。このとき、構成管理サーバ8の依存関係解析部11は、戻り値として端末処理情報の依存処理リストに記載されている情報を設定する。端末処理情報C1を解析している場合は、依存処理リストC11は空であるので、戻り値は空である。
For example, in the analysis of the terminal processing information C1 related to the “shelf A1 confirmation” process, the
判断ステップS109において、依存処理定義解析のサブルーチンを抜けると、構成管理サーバ8の依存関係解析部11は、端末処理情報C5の解析処理に戻る。次のステップ(ステップS110)では、構成管理サーバ8の依存関係解析部11は、サブルーチンの戻り値を依存処理リストC51に追加することになるが、今回戻り値は空であるので、特に追加は行わない。構成管理サーバ8の依存関係解析部11は、同様に制御端末2に関しても解析処理を行うと、端末処理情報C5の解析処理を終了しサブルーチンから戻るときには、端末処理情報C5の内容は図6に示すようになる。従ってサブルーチンの戻り値には、依存処理リストC51に記載されている以下の情報を設定する。このとき、「処理名(“アドレス”)」は、「棚A1確認(“192.168.0.2”)」及び「棚A2確認(“192.168.0.3”)」となる。
In step S109, when the dependency processing definition analysis subroutine is exited, the dependency
続いて、構成管理サーバ8の依存関係解析部11がサブルーチンから抜けると、端末処理情報C7の解析処理に戻る。次のステップ(ステップS110)では、サブルーチンの戻り値を依存処理リストC71に設定する。続いて、構成管理サーバ8の依存関係解析部11は、依存処理リストに記載された「エリアB確認」処理を選択し、以下のようにサブルーチンの引数を設定して、「エリアB確認」処理に関する端末処理情報の解析を行う。このとき、「解析すべき処理の端末処理情報」は、「エリアB確認」(“192.168.0.7”)となり、「逆依存する処理の情報」は、「フロア確認」(“192.168.0.8”)となる。
Subsequently, when the
同様の手順で処理を行うと、「エリアB確認」処理に関する端末処理情報の解析を行なった結果、サブルーチンの戻り値は、「処理名(“アドレス”)」が「棚B1確認(“192.168.0.3”)」及び「棚B2確認(“192.168.0.4”)」となる。そして、依存関係解析部11は、上記情報を依存処理リストC71に追加する(ステップS110)。ステップS101、ステップS102で依存処理リストC71に設定した処理はすべて解析処理を終了したので、サブルーチンを抜ける。これで端末処理情報C7の解析処理は終了するが、他のルート処理が存在すれば同様の手順で解析処理を行うことになる。
When processing is performed in the same procedure, as a result of analyzing the terminal processing information regarding the “area B confirmation” processing, the return value of the subroutine is “processing name (“ address ”)” is “shelf B1 confirmation (“ 192.168. 0.3 ”)” and “shelf B2 confirmation (“ 192.168.0.4 ”)”. Then, the dependency
〔端末ステータスの説明〕
図8及び図9に示した端末処理情報の解析が終了すると、構成管理サーバ8は端末処理情報を各制御端末に配信し、本システムが稼動できるようになる。
ここで、制御端末の処理実行部21は、図10に示すように、動作情報テーブル212と、構成管理サーバ8から配布された端末処理情報C5から構成され、動作情報テーブル212には自端末で実行可能な処理とそのステータスをリストとして管理する。実際に処理が実行中のとき処理のステータスは「ビジー」となり、そうでないとき処理のステータスは「アイドル」となる。処理を行うために休止中の端末を起動している途中の場合も、その処理のステータスは「ビジー」である。
[Explanation of terminal status]
When the analysis of the terminal processing information shown in FIGS. 8 and 9 is completed, the
Here, as shown in FIG. 10, the
制御端末の稼動情報管理部22は図11に示すように、自端末のステータスを自端末ステータス情報221に設定し、他端末のアドレス、ステータス、およびステータスの状態が「休止」状態に変更した時刻(休止時刻)を他端末ステータス情報222のテーブルに設定する。自端末のステータスは、「起動中」、「ビジー」、「アイドル」、「休止途中」、「休止」のいずれかの値をとり、他端末のステータスは「稼働」、「休止」のいずれかの値をとる。
As shown in FIG. 11, the operation
他端末ステータス情報222のテーブルには、端末処理情報の依存処理リスト及び逆依存処理リストに記載された全ての処理を担当する制御端末に関する情報が設定される。すなわち、自端末に依存する端末(逆依存関係端末)と、自端末が依存する端末(依存関係端末)に関する情報が設定される。
In the table of the other
以下では自端末のステータスについて説明する。ステータスが「起動中」のときは、制御端末が起動中の状態であることを示し、各種ソフトウェアの初期化を行っている状態である。ステータスが「ビジー」のときは動作情報テーブル212に設定された処理のうち少なくとも1つのステータスが「ビジー」となっている状態である。ステータスが「アイドル」のときは動作情報テーブル212に設定されたすべての処理のステータスが「アイドル」となっている状態である。 Hereinafter, the status of the terminal will be described. When the status is “active”, it indicates that the control terminal is being activated and various software are being initialized. When the status is “busy”, at least one of the processes set in the operation information table 212 is “busy”. When the status is “idle”, the status of all processes set in the operation information table 212 is “idle”.
ステータスが「休止途中」のときは制御端末が休止状態に入るための準備をしている状態であり、「休止」は制御端末が実際の休止処理を行なっている状態である。ステータスが「休止途中」状態の制御端末が一定条件(例えば、他端末から処理要求を受けた場合)を満たせば休止処理をキャンセルするが、「休止」状態の制御端末は休止処理をキャンセルすることはない。 When the status is “in the middle of sleep”, the control terminal is preparing to enter the sleep state, and “pause” is a state in which the control terminal is actually performing the sleep process. If the control terminal in the status of “in the middle of suspension” satisfies a certain condition (for example, when a processing request is received from another terminal), the suspension processing is canceled, but the control terminal in the “pause” state cancels the suspension processing. There is no.
続いて他端末のステータスについて説明する。他端末ステータス情報222のテーブルに設定される他端末のステータスが「稼働」の場合、他端末自身が自端末ステータス情報221で管理するステータスは「アイドル」、「ビジー」、「休止途中」のいずれかである。他端末ステータス情報222のテーブルに設定される他端末のステータスが「休止」の場合、他端末自身が自端末ステータス情報221で管理するステータスは「起動中」、「休止」、「休止途中」のいずれかである。
Next, the status of other terminals will be described. When the status of the other terminal set in the table of the other
制御端末自身のステータスが「休止途中」状態のとき、制御端末は「休止要求」を他の制御端末に送信するが、この要求を受け取った他端末の稼動情報管理部22は上記要求の送信端末のステータスを「休止」に設定する。従って、制御端末自身のステータスが「休止途中」であるが、その端末から「休止要求」を受信していない場合、他端末ステータス情報222のテーブルに設定する他端末のステータスは「稼働」となり、「休止要求」を受信した後他端末ステータス情報222のテーブルに設定する他端末のステータスは「休止」となる。
When the status of the control terminal itself is in the “pause in progress” state, the control terminal transmits a “pause request” to the other control terminal, and the operation
〔端末間通信メッセージの説明〕
稼動情報管理部22は制御端末間でメッセージをやり取りしながら、各端末の稼動状態を管理する。図17に稼動情報管理部22がメッセージを受信したときどのような動作を行うかを、自端末のステータス(自端末ステータス情報221に設定するステータス)毎に表にしたものを示す。図17には本実施の形態例で利用する主なメッセージを記載している。図17では自端末のステータスが「休止」の場合について記載がないが、ステータスが「休止」の場合、稼動情報管理部22は通信処理を停止するので他端末からメッセージを受信することはないため、省略している。
[Explanation of communication message between terminals]
The operation
以下、各メッセージの意味を説明する。「ステータス確認」171は他端末が管理するステータスを確認するときに送信するメッセージであり、上記メッセージを受けた制御端末はステータスがアイドル178及びビジー179のとき「稼動」を返信し、もしくはステータスが起動中176及び休止途中177のとき「休止」を返信する。「ステータス確認」171を送信した稼動情報管理部22は、上記返信に基づいて他端末ステータス情報222で管理している他端末のステータスを設定する。
Hereinafter, the meaning of each message will be described. “Status confirmation” 171 is a message transmitted when confirming the status managed by another terminal, and the control terminal receiving the message returns “operation” when the status is idle 178 and busy 179, or the status is When it is during
「休止要求」172は制御端末が休止状態に移行してもよいかどうかを、他の制御端末に確認するメッセージである。「休止要求」172を受信した制御端末が、「休止要求」172の送信端末に依存する処理を実行中のビジー179の場合「NG」を返信し、それ以外の起動中176、休止途中177及びアイドル178の場合「OK」を返信する。「休止要求」172を受信した制御端末のステータスが「ビジー」179であっても、「休止要求」172の送信端末に依存する処理を実行中でない場合は、「OK」を返信する。
The “pause request” 172 is a message for confirming with other control terminals whether or not the control terminal may shift to a dormant state. When the control terminal that has received the “pause request” 172 is busy 179 that is executing processing dependent on the transmission terminal of the “pause request” 172, it returns “NG”, and
「休止キャンセル通知」173は制御端末のステータスが「休止途中」177状態に遷移して休止処理を開始したが、途中で休止処理をキャンセルする場合に、他端末に休止処理をキャンセルしたことを通知するメッセージである。稼動情報管理部22は「休止キャンセル通知」173を受信すると、いずれのステータスの場合にも他端末ステータス情報222を更新し、対応する端末のステータスを「稼動」に設定する。
“Pause Cancel Notification” 173 notifies the other terminal that the pause processing has been canceled when the status of the control terminal is changed to the “pause in progress” 177 state and the pause processing is started. Message. When receiving the “pause cancellation notification” 173, the operation
「起動通知」174は制御端末の起動処理が完了したことを通知するメッセージである。稼動情報管理部22は「起動通知」174を受信すると、いずれのステータスの場合にも他端末ステータス情報222を更新し、対応する端末のステータスを「稼動」に設定する。
「起動パケット」175は、休止状態になっている制御端末を起動するためのパケットであり、例えばWake up On LANのマジックパケットを用いる。稼動情報管理部22は「起動パケット」175を受信しても、上記メッセージに対する処理は特に行わない。
“Activation notification” 174 is a message notifying that the activation processing of the control terminal has been completed. When receiving the “startup notification” 174, the operation
“Activation packet” 175 is a packet for activating a control terminal that is in a dormant state. For example, a Wake up On LAN magic packet is used. Even when the operation
〔状態遷移の説明〕
図12に、自端末ステータス情報221が管理する自端末のステータスの状態遷移を示す。制御端末が起動した直後は自端末のステータスは「起動中」125であるが、起動処理が完了するとステータスは「アイドル」122に遷移する(T7)。
ステータスが「アイドル」122の状態が一定時間続くなどの休止条件が成立すると、稼動情報管理部22は自端末のステータスを「休止途中」121に遷移させて休止処理を開始する(T2)。休止処理では、制御端末は自端末に依存する端末(逆依存関係端末)に対して「休止要求」を送信する。
[Description of state transition]
FIG. 12 shows the status transition of the status of the own terminal managed by the own terminal status information 221. Immediately after the control terminal is activated, the status of the own terminal is “active” 125, but when the activation process is completed, the status changes to “idle” 122 (T7).
When the suspension condition such that the status of “idle” 122 continues for a certain period of time is satisfied, the operation
制御端末はもし1つでも「NG」返信を受信したら休止要求をキャンセルし「アイドル」122に遷移する(T1)。制御端末は全ての端末から「OK」返信を受信したら、実際に休止処理を行ってもよいと見なしステータスを「休止」124に遷移し、実際の休止処理を行う(T6)。また制御端末は休止処理中に他の端末から「処理要求」を受信した場合、休止処理をキャンセルし、制御端末の処理実行部21は要求された処理を実行する。この場合、制御端末は自端末のステータスは「ビジー」123に遷移する(T3)。
If at least one “NG” reply is received, the control terminal cancels the suspension request and transitions to “idle” 122 (T1). When receiving “OK” replies from all the terminals, the control terminal considers that the pause processing may actually be performed, transitions the status to “pause” 124, and performs the actual pause processing (T6). If the control terminal receives a “processing request” from another terminal during the pause process, the pause process is canceled, and the
アイドル中に他の端末から「処理要求」を受信した場合、制御端末の稼動情報管理部22は自端末のステータスを「ビジー」123に遷移し、制御端末の処理実行部21は要求された処理を実行する(T4)。制御端末は処理が終了したらステータスは「アイドル」122に遷移する(T5)。
When a “processing request” is received from another terminal during idling, the operation
〔起動処理の手順〕
制御端末1〜7を停止状態から起動した場合(コールドブート)や、制御端末1〜7が休止状態から再起動した場合(ウォームブート)、稼動情報管理部22は制御端末1〜7の起動処理を行う。上記起動処理は、稼動情報管理部22が管理する各種テーブルの設定などを行い、制御端末1〜7が正常に稼動できるようにするための処理である。
[Startup procedure]
When the control terminals 1 to 7 are started from a stopped state (cold boot) or when the control terminals 1 to 7 are restarted from a suspended state (warm boot), the operation
コールドブートの場合、稼動情報管理部22が上記起動処理を稼動情報管理部22の起動時に実行する。ウォームブートの場合、制御端末1〜7が休止状態になる直前のウォームブート時に、稼動情報管理部22が上記起動処理を行う設定を行うことで、ウォームブート時に上記起動処理を行うようにする。
In the case of cold boot, the operation
以下では、図13に示した「起動処理」の詳細な処理を示すフローチャートを用いて、起動処理の手順を詳細に説明する。
起動処理が開始すると、稼動情報管理部22は他端末ステータス情報222をいったんクリアし、処理実行部21内の端末処理情報Cから他端末ステータス情報222を再作成する。すなわち、稼動情報管理部22は端末処理情報Cの依存処理リストと逆依存処理リストに記載されている端末アドレスを、他端末ステータス情報222に格納して初期化処理をする(ステップS201)。このとき、初期化処理でのアドレスの重複がないようにする。
Hereinafter, the procedure of the activation process will be described in detail with reference to the flowchart showing the detailed process of the “activation process” shown in FIG.
When the activation process starts, the operation
次に稼動情報管理部22は自端末ステータス情報221に設定されている自端末のステータスを「起動中」に設定し(ステップS202)、通信処理を開始する。この状態で起動処理中の制御端末が自端末に依存する制御端末(依存関係端末)から「休止要求」を受信した場合、必ず「OK」を返信する。
Next, the operation
次に稼動情報管理部22は、他端末ステータス情報222に設定されるすべての制御端末に対して「ステータス確認」を送信する(ステップS203)。「ステータス確認」を受信した制御端末は、「休止」もしくは「稼動」を返信する。制御端末のステータスが「休止途中」もしくは「起動中」の場合には「休止」を返信し、制御端末のステータスが「アイドル」もしくは「ビジー」の場合には「稼動」を返信する。制御端末のステータスが「休止」の場合、制御端末は通信処理を行わないので返信しない。
Next, the operation
稼動情報管理部22は返信を受けると、その返信に従って他端末ステータス情報222のステータスを設定する。一定時間経過しても返信がない場合、稼動情報管理部22はその制御端末のステータスは「休止」とする。このステップS203でステータスを「休止」に設定した他端末ステータス情報222のエントリについては、休止時刻を現在時刻に設定する。
When receiving the reply, the operation
次に稼動情報管理部22は、他端末ステータス情報222に記載された端末でステータスが「稼動」であるすべての端末に「起動通知」を送信し(ステップS204)、自端末ステータス情報221に設定されている自端末のステータスを変更して「アイドル」に設定し(ステップS205)、起動処理を終了する。
上記ステップS204で「起動通知」を受信した制御端末の稼動情報管理部22は、他端末ステータス情報222に設定されている、「起動通知」送信端末のステータスを「稼動」に変更する。
Next, the operation
The operation
〔休止処理の手順〕
次に、図14に示した「休止処理」の詳細な処理を示すフローチャートを用いて、休止処理の手順を詳細に説明する。
制御端末1〜7にあらかじめ設定した休止条件が満たされると稼動情報管理部22は休止処理を開始し、自端末ステータス情報221に記載した自端末のステータスを「休止途中」に変更する(ステップS301)。
[Procedure for pause processing]
Next, the procedure of the pause process will be described in detail with reference to the flowchart showing the detailed process of the “pause process” shown in FIG.
When the suspension condition set in advance for the control terminals 1 to 7 is satisfied, the operation
上記休止条件は、例えば自端末のステータスが15分以上「アイドル」状態である状態が続いた場合、などの条件を設定することになるが、この休止条件の情報はシステム構築時に各制御端末1〜7の稼動情報管理部22に予め設定されるようにしてもよいし、構成管理サーバ8で一元管理して構成変更時に構成管理サーバ8から配信してもよい。
The suspension condition is set, for example, when the status of the terminal is “idle” for 15 minutes or more, and the information on the suspension condition is set for each control terminal 1 at the time of system construction. May be set in advance in the operation
続いて稼動情報管理部22は、他端末ステータス情報222に設定されている制御端末1〜7のうちステータスが「稼動」のものに対して、「休止要求」を送信する(ステップS302)。他端末ステータス情報222には、自端末に依存する端末(逆依存関係端末)と、自端末が依存する端末(依存関係端末)のアドレスが設定されているので、稼動情報管理部22は、この処理ではステータスが「稼動」であるすべての逆依存関係端末と依存関係端末に対して「休止要求」を送信することになる。
Subsequently, the operation
続いて、稼動情報管理部22は上記ステップS302で「休止要求」を送信した端末からの返信があるまで返信待ちとなる(ステップS303)。このステップS303で返信待ち状態となっているときに、稼動情報管理部22は他の端末から「処理要求」があったか否かを判断し(ステップS304)、判断ステップS304で他の端末から「処理要求」が送信されていないと判断された場合に、稼動情報管理部22は「休止要求」を送信した端末から「NG」返信を受け取ったか否かを判断する(ステップS305)。
Subsequently, the operation
判断ステップS304で他の端末から「処理要求」が送信されてきた場合、及び判断ステップS305で「休止要求」を送信した端末から「NG」返信を受け取った場合には、稼動情報管理部22は、ステップS302で「休止要求」を送信した全ての端末に対して「キャンセル通知」を送信し(ステップS306)、自端末のステータスを「アイドル」に変更して(ステップS307)、処理を終える。
When the “processing request” is transmitted from another terminal in the determination step S304, and when the “NG” reply is received from the terminal that transmitted the “pause request” in the determination step S305, the operation
そして、「キャンセル通知」を受け取った制御端末の稼動情報管理部22は、他端末ステータス情報222から「キャンセル通知」送信端末のエントリを検索し、当該端末のステータスを「休止」から「稼動」に変更する。
次に、判断ステップS305で「休止要求」を送信した端末から「NG」返信を受け取らなかった場合には、稼動情報管理部22は、すべての自端末に依存する端末(逆依存端末)から「OK」返信を受け取ったか否かを判断する(ステップS305)。そして、すべての逆依存端末から「OK」返信を受け取らない限り、ステップS303〜ステップS305までの処理及び判断をすべての自端末に依存する端末(逆依存端末)について繰り返す(ステップS308)。
Upon receiving the “cancel notification”, the operation
Next, when the “NG” reply is not received from the terminal that has transmitted the “pause request” in the determination step S305, the operation
ステップS302で「休止要求」を送信した制御端末1〜7のうち、ステップS308ですべての自端末に依存する端末(逆依存端末)から「OK」返信を受け取ったとき、ステップS308で「OK」返信を受け取った制御端末の稼動情報管理部22は、実際に休止処理を行なってもよい。ステップS308で「OK」返信を受け取った制御端末の稼動情報管理部22は自端末のステータスを「休止」に変更し(ステップS309)、通信処理を停止し、一定時間経過後(例:15秒後)に起動処理を開始する設定を行なった後、制御端末のオペレーティングシステム(OS)に対してシステムを休止状態に移行するように指示する。これにより、稼動情報管理部22は休止処理を実行する(ステップS310)。
Among the control terminals 1 to 7 that have transmitted the “pause request” in step S302, when “OK” replies are received from all terminals (inverse dependence terminals) that depend on the own terminal in step S308, “OK” in step S308. The operation
上記起動処理の開始設定は、端末が休止状態から回復したときに、起動処理を適切に行うための設定である。端末が休止状態に以降するとき、オペレーティングシステム(OS)によってすべてのプログラムの状態が保存され、再起動時にすべてのプログラムが動作を再開する。よって端末が休止状態から回復すると、上記起動処理が起動する。本実施の形態例では、システム休止処理を行なっている途中で起動処理が開始されることを防止するために、稼動情報管理部22は起動処理開始のタイムラグを設定している。
The startup process start setting is a setting for appropriately performing the startup process when the terminal recovers from the hibernation state. When the terminal goes into hibernation, the state of all programs is saved by the operating system (OS), and all programs resume operation when restarted. Therefore, when the terminal recovers from the hibernation state, the activation process is activated. In the present embodiment, the operation
また、オペレーティングシステム(OS)が再起動したことを上位モジュールに通知する機能を備えている場合は、休止処理直前に起動処理の開始設定を行わず、オペレーティングシステム(OS)再起動時に起動処理を開始する構成としてもよい。 In addition, when the operating system (OS) has a function of notifying the upper module that the operating system (OS) has been restarted, the start processing is not set immediately before the hibernation processing, and the starting processing is performed when the operating system (OS) is restarted. It may be configured to start.
以上は休止処理を行う端末での処理の説明であるが、続いて図15に示すフローチャートを用いて上記「休止要求」を受信した端末の処理を説明する。
稼動情報管理部22が「休止要求」を受信すると、稼動情報管理部22は処理実行部21内の端末処理情報Cを参照し、端末処理情報Cの依存処理リスト内の端末アドレスに「休止通知」送信端末のアドレスが設定された端末処理情報Cを検索する(ステップS401)。
The above is the description of the processing at the terminal that performs the suspension processing. Next, the processing of the terminal that has received the “pause request” will be described using the flowchart shown in FIG.
When the operation
稼動情報管理部22は上記ステップS401の検索条件に一致する端末処理情報Cが見つかったか否かを判断し(ステップS402)、判断ステップS402で上記ステップS401の検索条件に一致する端末処理情報が見つからなければ、本端末は「休止通知」送信端末に依存する端末ではないので、稼動情報管理部22は他端末ステータス情報222から「休止要求」送信端末に対応するエントリを探し出し、そのエントリのステータスを休止に変更し(ステップS403)、休止時刻を更新した後、処理を終える。
The operation
判断ステップS402で上記ステップS401の検索条件に一致する端末処理情報Cが見つかったら、稼動情報管理部22は自端末ステータス情報221を参照して自端末のステータスを確認する(ステップS404)。稼動情報管理部22は自端末のステータスが「起動中」、「アイドル」又は「休止途中」のいずれかであるか否かを判断(ステップS405)する。
When the terminal processing information C that matches the search condition in step S401 is found in the determination step S402, the operation
判断ステップS405で自端末のステータスが「起動中」、「アイドル」又は「休止途中」のいずれかの場合、「ビジー」状態の処理はないことが保障されるので、稼動情報管理部22はステップS403と同様の手順で他端末ステータス情報222を更新し(ステップS408)、「休止要求」送信端末に「OK」を返信する(ステップS409)。
If it is determined in step S405 that the status of the terminal is “active”, “idle”, or “pause”, it is ensured that there is no “busy” state processing. The other
判断ステップS405で自端末のステータスが「ビジー」の場合は、以下の処理に進む。なお、自端末のステータスが「休止」の場合、稼動情報管理部22は通信処理を停止しているので、本判断ステップS405で自端末のステータスが「休止」となることはありえない。
If the status of the terminal is “busy” in the determination step S405, the process proceeds to the following process. When the status of the own terminal is “pause”, the operation
続いて稼動情報管理部22は、処理実行部21の動作情報テーブル212を参照し、ステップS401で見つかった端末処理情報Cのうち処理のステータスが「ビジー」であるものを検索する(ステップS406)。稼動情報管理部22は上記ステップS406の検索条件に一致する端末処理情報Cが見つかったか否かを判断する(ステップS407)。
Subsequently, the operation
判断ステップS407でもしビジーである処理が1つでも見つかったら、稼動情報管理部22は「休止要求」送信端末に「NG」を返信し(ステップS410)、処理を終える。判断ステップS407でもしビジーである処理が全く見つからなかったら、稼動情報管理部22はステップS403と同様の手順で他端末ステータス情報222を更新し(ステップS408)、「休止要求」送信端末に「OK」を返信し(ステップS409)、処理を終える。
なお、判断ステップS405で自端末のステータスが「休止途中」の場合、稼動情報管理部22は図14に示す休止処理と上記処理を並列的に実行することになる。
If at least one busy process is found in the determination step S407, the operation
If the status of the terminal is “in the middle of suspension” in the determination step S405, the operation
〔実行準備処理の手順〕
動作中の制御端末1,2,3,4の稼動情報管理部22が、上位の制御端末5,6,7やクライアント端末t1〜tnから「処理要求」を受信すると、稼動情報管理部22は処理実行部21内の端末処理情報から、上記「処理要求」で実行指示された処理が依存する処理を実行する他端末(依存関係端末)すべてのアドレスを取得する。
[Procedure for execution preparation processing]
When the operation
そして、稼動情報管理部22は他端末ステータス情報222を参照して上記依存関係端末のステータスを確認し、もしステータスが「休止」である依存関係端末が存在する場合、その端末に「起動要求」を送信することで必要な全ての制御端末を起動する。稼動情報管理部22は「起動要求」を送信したすべての制御端末の起動が確認できたら、稼動情報管理部22は制御を処理実行部21に移し、実際にRFIDリーダ/ライタ10−1〜10−4の制御を開始する。
Then, the operation
本実施の形態例では稼動情報管理部22が「処理要求」を受け付けてから、制御を処理実行部21に移すまでの処理を「実行準備処理」と呼ぶ。以下では、図16に示した「実行準備処理」の詳細な処理を示すフローチャートを用いて、実行準備処理の手順を詳細に説明する。
In the present embodiment, a process from when the operation
稼動情報管理部22が「処理要求」を受信すると、「処理要求」に記載された処理名を処理実行部21の動作情報テーブル212から検索し、見つかったエントリのステータスを「ビジー」に変更する(ステップS501)。そして、稼動情報管理部22は自端末ステータス情報221に記載された自端末のステータスを「ビジー」に変更する。もし、既に他の処理を実行中であれば、自端末のステータスは既に「ビジー」であるので、改めて自端末のステータスを変更することは行わない。
When the operation
続いて稼動情報管理部22は、「処理要求」に記載された処理名を持つ処理定義を含む端末処理情報Cを、処理実行部21内の端末処理情報Cから検索し、見つかった端末処理情報Cの依存端末リストに記載されている全端末のアドレスを取得する。これら端末は、「処理要求」で実行指示された処理が依存する処理を実行する制御端末(依存関係端末)であるので、「処理要求」で実行指示された処理を開始する前に起動しておく必要がある。次に、稼動情報管理部22は他端末ステータス情報222を参照し、取得した依存関係端末の各アドレスに対応する端末のステータスを確認する(ステップS502)。
Subsequently, the operation
稼動情報管理部22は上記依存関係端末のステータスが「休止」の端末があるか否かを判断する(ステップS503)。ステップS503で上記依存関係端末のステータスが「休止」の端末でないとき、つまり、上記依存関係端末のステータスがすべて「稼動」であれば、稼動情報管理部22は実行準備処理を完了して制御を処理実行部21に移す。
The operation
ステップS503で上記依存関係端末のステータスが「休止」である依存関係端末があれば、稼動情報管理部22は他端末ステータス情報222を参照し、休止時刻から一定時間(例:30秒)経過した端末を選択する(ステップS504)。
上記ステップS503での上記依存関係端末のステータスが「休止」である条件に合致する端末が見つかったとき、稼動情報管理部22は制御端末を選択する際に、休止時刻から一定時間経過していることを条件としている(ステップS504)。
If there is a dependency terminal whose status of the dependency terminal is “suspended” in step S503, the operation
When a terminal matching the condition that the status of the dependency terminal in the step S503 is “suspended” is found, the operation
稼動情報管理部22はステップS504の選択条件で制御端末を選択できたか否かを判断する(ステップS505)。ステップS505でステップS504の選択条件で制御端末を選択できたとき、稼動情報管理部22はステップS504で見つかった端末に起動パケットを送信する(ステップS506)。
The operation
ステップS504の選択条件で休止時刻から一定時間経過していることを条件としているのは、制御端末が休止状態への以降が完了していなければ制御端末は起動パケットを受け付けないので、制御端末から「休止要求」を受信した後、その制御端末が休止状態への以降を完了するまでの時間を考慮しているためである。 The condition that the fixed time has elapsed from the suspension time in the selection condition in step S504 is that the control terminal does not accept the activation packet unless the control terminal has completed the transition to the suspension state. This is because after the “pause request” is received, the time until the control terminal completes the transition to the dormant state is taken into consideration.
稼動情報管理部22は全端末に起動パケットを送信したか否かを判断する(ステップS507)。ステップS507で全端末に起動パケットを送信していないときは、全端末に起動パケットを送信するまで、ステップS504〜ステップS507までの処理及び判断を繰り返す(ステップS507)。ここでは、ステータスが「休止」の依存関係端末で起動パケットを送信していない端末が残っていれば、S504に戻る。そして、ステータスが「休止」のすべての依存関係端末への起動パケットの送信を完了すれば、次の処理に進む。
The operation
ステップS505でステップS504の選択条件に合致する端末が見つからなかったら、稼動情報管理部22は一定時間(例:10秒)待機した後(ステップS508)、他端末ステータス情報222を参照してステータスが「休止」である依存関係端末が存在するかどうか確認する(ステップS509)。
If a terminal that matches the selection condition of step S504 is not found in step S505, the operation
ここでステップS509で改めて依存関係端末のステータスを確認する理由は、ステップS508で待機中に依存関係端末が起動してその端末から「起動通知」を受信した場合、稼動情報管理部22はその端末のステータスを「稼動」となるように他端末ステータス情報222を更新するからである。またステップS508の待機処理は、必ず一定時間待機するのではなく、他端末から「起動通知」を受信したら待機を終了して次のステップに進むようにしてもよい。これによって無駄な待機時間を削減することができる。
Here, the reason for reconfirming the status of the dependency terminal in step S509 is that if the dependency terminal is activated during standby and receives an “activation notification” from the terminal in step S508, the operation
ステップS509で依存関係端末のステータスがすべて「稼動」であれば、稼動情報管理部22は実行準備処理を完了して制御を処理実行部21に移す。
稼動情報管理部22は上記依存関係端末のステータスが「休止」の端末があるか否かを判断する(ステップS510)。ステップS510で上記依存関係端末のステータスが「休止」の端末でないとき、つまり、上記依存関係端末のステータスがすべて「稼動」であれば、稼動情報管理部22は実行準備処理を完了して制御を処理実行部21に移す。
If all the statuses of the dependency terminals are “operation” in step S509, the operation
The operation
ステップS510で上記依存関係端末のステータスが「休止」である依存関係端末があればステップS504に戻る。
ステップS507で、ステータスが「休止」のすべての依存関係端末への起動パケット送信を確認できたら、稼動情報管理部22は他端末ステータス情報222を参照してステータスが「休止」である依存関係端末が存在するかどうか確認する(ステップS511)。
If there is a dependency terminal in which the status of the dependency terminal is “pause” in step S510, the process returns to step S504.
If the activation packet transmission to all the dependency terminals whose status is “pause” can be confirmed in step S507, the operation
稼動情報管理部22は上記依存関係端末のステータスが「休止」の端末があるか否かを判断する(ステップS512)。ステップS512で上記依存関係端末のステータスが「休止」の端末でないとき、つまり、上記依存関係端末のステータスがすべて「稼動」であれば、稼動情報管理部22は実行準備処理を完了して制御を処理実行部21に移す。
The operation
ステップS512で依存関係端末のステータスが「休止」である依存関係端末があれば、稼動情報管理部22は一定時間(例:10秒)待機した後(ステップS513)、ステップS511に戻る。このステップS513でも待機中に他端末から「起動通知」を受信したら待機を終了して直ちにステップS511に戻るようにしてもよい。
If there is a dependency terminal whose dependency terminal status is “pause” in step S512, the operation
[他の実施の形態例]
クライアント端末t1〜tnから制御端末1〜7へ送信する「処理要求」のパターンは、エリアAを確認してからエリアBを確認する、といった一定のパターンを有する場合が多い。例えば上記例を先の実施の形態例の方法で行うと、エリアA確認処理を実行するために稼動情報管理部22はその処理が依存する処理を実行する制御端末(1,2)を起動した後にエリアA確認処理を行い、エリアB確認処理を実行するためにその処理が依存する処理を実行する制御端末(3,4)を起動することになる。
[Other Embodiments]
The pattern of “processing request” transmitted from the client terminals t1 to tn to the control terminals 1 to 7 often has a certain pattern in which the area B is confirmed after the area A is confirmed. For example, when the above example is performed by the method of the previous embodiment, the operation
しかし、制御端末1〜7のアクセスパターンが前もって分かっていれば、制御端末5がエリアA確認を指示した「処理要求」を受けた時点で、続けてエリアBへのアクセス要求があることが予測できるので、稼動情報管理部22はエリアA確認処理の完了を待たずに予めエリアB確認処理を実行するために必要な制御端末(3,4,6)に起動パケットを送信しておくことが可能である。
However, if the access patterns of the control terminals 1 to 7 are known in advance, it is predicted that there will be a subsequent access request to the area B when the
本実施の形態例では、各制御端末1〜7上でクライアント端末t1〜tnから送信されてきた「処理要求」のログを記録し、構成管理サーバ8で上記ログを集計する。構成管理サーバ8で、処理要求送信端末(クライアント端末)と時刻をもとにパターン分析を行ない、ある処理を実行したときに続けて実行する可能性が高い処理を決定するための、関連処理テーブルを作成する。
In the present embodiment, logs of “processing requests” transmitted from the client terminals t 1 to tn on the control terminals 1 to 7 are recorded, and the
構成管理サーバ8は、上記関連処理テーブルと端末処理情報に基づいて、ある処理の実行後に続けて実行する可能性が高い処理の実行に必要な端末群を決定するために、関連処理解決テーブルを作成し、各制御端末に配布する。
各制御端末1〜7では、ある「処理要求」を受信したときに、上記関連処理解決テーブルを参照し、上記「処理要求」の実行後に続けて実行する可能性が高い処理の実行に必要な端末群を決定し、上記端末群に起動パケットを送信する。
Based on the related process table and the terminal process information, the
When each control terminal 1-7 receives a certain "processing request", it is necessary for executing a process that is likely to be executed after the execution of the "processing request" with reference to the related process resolution table. A terminal group is determined, and an activation packet is transmitted to the terminal group.
以下、図面を用いて詳細に説明するが、本実施の形態例の多くの部分は先の実施の形態例と同じであるので、相違点を中心に説明する。図18は他の実施の形態例における制御端末のソフトウェア構成を示す。先の実施の形態例と比較して、「処理要求」の受信ログを記録するログ収集部24が追加されている。
Hereinafter, a detailed description will be given with reference to the drawings. However, since many parts of the present embodiment are the same as those of the previous embodiment, differences will be mainly described. FIG. 18 shows the software configuration of the control terminal in another embodiment. Compared to the previous embodiment, a
図19は他の実施の形態例における構成管理サーバのソフトウェア構成を示す。先の実施の形態例と比較して、ログ解析を行うログ解析部13が追加されており、ログ解析部13は動作ログテーブル131と関連処理テーブル132と関連処理解決テーブル133から構成される。動作ログテーブル131は図21に示すように、要求端末アドレス(「処理要求」送信端末のアドレス)2101、処理名2102、処理端末アドレス(上記処理を実行する制御端末のアドレス)2103、時刻2104の4要素から構成されており、各制御端末のログ収集部24から集計したログを記録する。
FIG. 19 shows the software configuration of the configuration management server in another embodiment. Compared to the previous embodiment, a
関連処理テーブル132は図22に示すように、要求端末アドレス2201、処理名2202、処理端末アドレス2203の3要素から構成されており、実行される頻度が高い一連の処理のパターンを記録する。例えば図22では、要求端末アドレス2201の(192.168.0.11)から処理端末アドレス2203の(192.168.0.3)に対して「棚A2確認」を指示する「処理要求」が送信された後で、要求端末アドレス2201の(192.168.0.11)から処理端末アドレス2203の(192.168.0.5)に対して「棚B2確認」を指示する「処理要求」が送信される、パターンが記録されている。
As shown in FIG. 22, the related process table 132 is composed of three elements of a
関連処理解決テーブル133は図23に示すように、要求端末アドレス2301、処理名2302、処理端末アドレス2303、依存端末アドレス2304の4要素から構成されており、ある処理の実行後に実行される可能性がある処理の実行に必要な制御端末のアドレスを依存端末アドレス2304に記録する。
As shown in FIG. 23, the related process resolution table 133 is composed of four elements of a
例えば図23の例では、要求端末アドレス2301の(192.168.0.11)を持つ端末から「棚A2確認処理」を指示する「処理要求」が処理端末アドレス2303の(192.168.0.3)を持つ制御端末に送信されたら、上記処理の実行後に実行される可能性がある処理(「棚B2確認」)の実行に必要な制御端末の依存端末アドレス2304は(192.168.0.5)であることを示している。
For example, in the example of FIG. 23, the “processing request” instructing “shelf A2 confirmation processing” from the terminal having (192.168.0.11) of the requested
要求端末アドレス2301、処理名2302、処理端末アドレス2303には値を1つずつ設定するが、依存端末アドレス2304には複数個(2つ以上)のアドレスを設定する場合がある。例えば、関連処理テーブル132に3つ以上の処理が記載される場合や、ある処理の実行に必要な端末が複数存在する場合には依存端末アドレス2304に2つ以上のアドレスを設定することになる。
One value is set for each of the
図20は他の実施の形態例における制御端末の処理実行部21のソフトウェア構成を示す。処理実行部21は関連処理解決テーブル213を持つが、このテーブルは構成管理サーバ8が保持する関連処理解決テーブル133とほぼ同様の内容である。但し、各制御端末は処理端末アドレスが自端末のアドレスと一致しないエントリは、保持しない。
以下では、本実施の形態例の動作を詳細に説明する。
FIG. 20 shows a software configuration of the
Hereinafter, the operation of this embodiment will be described in detail.
〔動作ログの収集〕
制御端末のログ収集部24は、他端末から「処理要求」を受信する毎に、「処理要求」送信端末アドレス2101、処理名2102、時刻2104の3要素を記録する。ログはメンテナンス時に構成管理サーバ8に送信される。
[Collect action logs]
The
送信管理サーバ8のログ解析部13は、制御端末から受信したログのエントリを動作ログテーブル131に記録する。このとき上記「処理要求」送信端末アドレス2101、処理名2102、時刻2104をそれぞれ、動作ログテーブル131の要求端末アドレス2101、処理名2102、時刻2104に格納する。動作ログテーブル131の処理端末アドレス2103は、ログを送信してきた制御端末のアドレスとする。
The
また、ログ解析部13は、構成管理サーバ8が保持する端末処理情報を参照し、要求端末アドレス2101がシステムを構成する制御端末のアドレスと合致するエントリは動作ログテーブル131に記録しない。つまり、「処理要求」がクライアント端末から送信されたログのみ記録する。
Further, the
〔ログの解析〕
ログ収集処理が完了したら、ログ解析部13は動作ログテーブル13から、要求端末アドレス2101が合致し、時刻2104が近い(例:30秒以内)エントリを選び出し、それらを時系列に並べたパターン情報を作成する。選び出したパターン情報からは時刻2104を削除する。例えば動作ログテーブル13が図21のようになっている場合、エントリL101とL102は同一の要求端末アドレス2101を持ち時刻2104が近いので、以下のパターン情報を作成する。
[Log Analysis]
When the log collection process is completed, the
すなわち、エントリL101(要求端末アドレス2101、処理名2102、処理端末アドレス2103)として、(192.168.0.11、棚A2確認、192.168.0.3)が作成され、L102として、(192.168.0.11,棚B2確認、192.168.0.5)が作成される。L103も同様である。
ログ解析部13は上記のように作成したパターンのうち、頻度が高いものを関連処理テーブル132に記録する。図22では関連処理テーブル132のテーブル数は1つだけであるが、実際にはパターンの数だけテーブルが作成される。
That is, (192.168.0.11, shelf A2 confirmation, 192.168.0.3) is created as entry L101 (request
The
続いてログ解析部13は関連処理テーブル132から関連処理解決テーブル133を作成する。まず、関連処理テーブル132から1つのテーブルを選択し、そのテーブルに記録されている各エントリから、関連処理解決テーブル133に記録するエントリを1つずつ作成する。但し、関連処理テーブル132の最後のエントリからは、関連処理解決テーブル133のエントリは作成されない。
Subsequently, the
例えば図22の例では、エントリL111を最初に選択する。以下、ここで選択したエントリをベースエントリと呼ぶ。ログ解析部13はベースエントリの要求端末アドレス2201、処理名2202、処理端末アドレス2203を関連処理解決テーブル133の新しいエントリとして複製する。
ログ解析部13はベースエントリを選択したテーブルと同じテーブルで、ベースエントリの下位に記録されているエントリ(以下、サブエントリと呼ぶ)を1つ選択する。例えば図22の例ではサブエントリはL112であるので、L112をサブエントリとして選択する。
For example, in the example of FIG. 22, the entry L111 is selected first. Hereinafter, the entry selected here is referred to as a base entry. The
The
ログ解析部13は、構成管理サーバ8に格納されている端末処理情報Cから、動作定義に選択したサブエントリの処理名および処理端末アドレスが記載されているものを検索する。上記例では、制御端末4の端末処理情報Cが条件に合致する。ログ解析部13は、条件に合致した端末処理情報Cの依存処理リストに記載されている端末アドレスを取得し、上で作成した関連処理解決テーブル133の依存端末アドレス2304に追加する。
The
また、ログ解析部13はサブエントリの処理端末アドレス2203も、上で作成した関連処理解決テーブル133の依存端末アドレス2304に追加する。上の例では、制御端末4の端末処理情報Cの依存処理リストは空であるので、制御端末4のアドレス(192.168.0.5)のみを関連処理解決テーブル133の依存端末アドレス2304に追加する。
The
上の例ではサブエントリは1つだけであるが、関連処理テーブル132に記録されているエントリ数が3個以上の場合には、サブエントリが2つ以上になる場合がある。サブエントリが複数の場合は、サブエントリ毎に上で説明した手順で、関連処理解決テーブル133の依存端末アドレス2304を更新していく。
In the above example, there is only one subentry, but when the number of entries recorded in the related processing table 132 is three or more, there may be two or more subentries. When there are a plurality of subentries, the
このようにして、関連処理テーブル132のエントリ1つから、関連処理解決テーブル133のエントリが1つ作成される。ログ解析部13は上記処理を関連処理テーブル132の全てのテーブルに記録されている全てのエントリ(但し最後のエントリは除く)に対して、上記処理と同様の手順で、関連処理解決テーブル133のエントリを作成する。
In this way, one entry of the related process resolution table 133 is created from one entry of the related process table 132. The
〔制御端末の処理〕
構成管理サーバ8のログ解析部8がログの解析処理を終了したら、構成管理サーバ8は関連処理解決テーブル133を各制御端末1〜7に配布する。このとき、制御端末1〜7には、関連処理解決テーブル133の処理端末アドレス2303に記載されたアドレスと配布しようとする制御端末1〜7のアドレスが一致するエントリのみ配布する。
[Control terminal processing]
When the
例えば図23の例では、処理端末アドレス2303が(192.168.0.3)を持つ制御端末2にだけ、以下のエントリを配布する。
すなわち、関連処理解決テーブル133を構成する「要求端末アドレス2301、処理名2302、処理端末アドレス2303、依存端末アドレス2304」として、「192.168.0.11、棚A2確認、192.168.0.3、192.168.0.5」が配布される。この関連処理解決テーブルが配布された制御端末2は、その処理実行部21の関連処理解決テーブル213欄に上記配布された情報を記録する。
For example, in the example of FIG. 23, the following entries are distributed only to the
That is, “192.168.0.11, shelf A2 confirmation, 192.168.0.3, 192.168.0.5” is “requested
制御端末2の稼動情報管理部22は、他端末から「処理要求」を受信すると、先の実施の形態例で説明した実行準備処理を行う前に、以下で説明する処理を行う。稼動情報管理部22は関連処理解決テーブル213を参照し、関連処理解決テーブル213の要求端末アドレスが「処理要求」の送信端末アドレスに合致し、かつ関連処理解決テーブル213の「処理名」が「処理要求」に指示されている処理名に合致するエントリを検索する。
When the operation
図23の例では、制御端末2が要求端末アドレス2301の(192.168.0.11)を持つクライアント端末から処理名「棚A2」確認を指示する「処理要求」を受け付けた場合、制御端末2の関連処理解決テーブル213から、以下のエントリが見つかる。
すなわち、「要求端末アドレス2301、処理名2302、処理端末アドレス2303、依存端末アドレス2304」として、「192.168.0.11、棚A2確認、192.168.0.3、192.168.0.5」が見つかることになる。
In the example of FIG. 23, when the
That is, “192.168.0.11, shelf A2 confirmation, 192.168.0.3, 192.168.0.5” is found as “
このエントリが見つかったら、稼動情報管理部22は他端末ステータス情報222を参照し、上記エントリの依存端末アドレス2304に記載されている端末のステータスを確認する。稼動情報管理部22はステータスが「休止」となっているすべての制御端末に起動パケットを送信し、ステータスが「稼動」となっているすべての端末に「実行準備」メッセージを送信する。
When this entry is found, the operation
「実行準備」メッセージを受けた制御端末は、端末内で実行中の処理の有無にかかわらす、一定時間(例:30秒)だけ自端末ステータス情報221に設定されている自端末のステータスをビジーに設定する。これによって「実行準備」メッセージを受信した端末が、一定時間休止処理を行うことが防止できる。続いて、稼動情報管理部22は先の実施の形態例で説明した実行準備処理を行う。
The control terminal that has received the “preparation for execution” message is busy with the status of the own terminal set in the own terminal status information 221 for a certain period of time (eg, 30 seconds), regardless of whether or not the process is being executed in the terminal. Set to. As a result, it is possible to prevent the terminal that has received the “execution preparation” message from performing pause processing for a certain period of time. Subsequently, the operation
本実施の形態例の変形例として、上記「実行準備」メッセージを関連処理テーブルに記載されたアドレスを持つ端末だけに送信する方法を用いてもよい。つまり、制御端末は休止状態に遷移するときに上位の制御端末に「休止要求」を送信するので、上位の制御端末が「ビジー状態」であれば下位の制御端末は「休止要求」を送信しても「NG」返信が返されるので、休止状態に遷移することができない。 As a modification of the present embodiment, a method of transmitting the “execution preparation” message only to a terminal having an address described in the related processing table may be used. In other words, since the control terminal transmits a “pause request” to the upper control terminal when transitioning to the dormant state, if the upper control terminal is “busy”, the lower control terminal sends a “pause request”. However, since a “NG” reply is returned, it is not possible to transition to the dormant state.
従って、ある処理を実行したときに続けて実行する可能性が高い処理を行う端末にのみ「実行準備」メッセージを送信し、その処理が依存する制御端末には「実行準備」メッセージは送信しない方式でもよく、この方式のほうが通信メッセージを削減できる。
これを行うためには、関連処理解決テーブル133、213の依存端末アドレスを以下の構造を持ったリストとして管理する。
(第1の依存処理実行端末アドレス、第1の依存処理が依存する処理を実行するすべての端末のアドレス(複数))
(第2の依存処理実行端末アドレス、第2の依存処理が依存する処理を実行するすべての端末のアドレス(複数))
Therefore, a method that transmits an “execution preparation” message only to a terminal that performs a process that is likely to be executed continuously when a certain process is executed, and does not transmit an “execution preparation” message to a control terminal on which the process depends. However, this method can reduce communication messages.
In order to do this, the dependent terminal addresses of the related processing resolution tables 133 and 213 are managed as a list having the following structure.
(First dependent process execution terminal address, addresses (multiple) of all terminals that execute the process on which the first dependent process depends)
(Second dependent process execution terminal address, addresses (multiple) of all terminals that execute processes on which the second dependent process depends)
そして、構成管理サーバ8のログ解析部13が、関連処理テーブル132から関連処理解決テーブル133を作成する処理を以下の手順で実行する。
ログ解析部13は関連処理テーブル132からベースエントリを1つ選択し、上記選択したベースエントリの要求端末アドレス、処理名、処理端末アドレスを関連処理解決テーブル133の新しいエントリとして複製する。ただしテーブルの最後のエントリは、ベースエントリとして選択しない。
Then, the
The
ログ解析部13は上記ベースエントリが格納されているテーブルで、ベースエントリの下位に記録されているエントリ(サブエントリ)を1つ選択し、そのエントリの処理端末アドレスを、上記依存端末アドレス構造の1つめのフィールド(第1の依存処理実行端末アドレス)に格納する。
The
ログ解析部13は上で説明した手順と同様の手順で、構成管理サーバ8に格納されている端末処理情報を利用して、サブエントリの処理に依存する処理を実行する制御端末のアドレスを決定し、上記依存端末アドレス構造の2つめのフィールド(第2の依存処理が依存する処理を実行するすべての端末のアドレス)に格納する。このようにして1個のサブエントリから、依存端末アドレスの構造を1つのエントリを作成する。すべてのサブエントリに対して同様の処理を行うと、依存端末アドレスの構造が完成する。
The
このようにして関連処理テーブル132から選択した1つのベースエントリから、関連処理解決テーブル133のエントリが1つ作成される。
制御端末の稼動情報管理部22は、クライアント端末から「処理要求」を受けると、関連処理解決テーブル213を参照し、関連処理解決テーブル213の要求端末アドレスが「処理要求」の送信端末アドレスに合致し、かつ関連処理解決テーブル213の「処理名」が「処理要求」に指示されている処理名に合致するエントリを検索する。
One entry of the related process resolution table 133 is created from one base entry selected from the related process table 132 in this way.
When receiving the “processing request” from the client terminal, the operation
エントリが見つかったら、稼動情報管理部22は他端末ステータス情報222を参照し、上記エントリの依存端末アドレスに記載されている端末のステータスを確認する。ステータスが「休止」となっているすべての制御端末に起動パケットを送信する。ステータスが「稼動」となっている端末については、関連処理解決テーブル213の依存端末アドレスの1つ目のフィールド(第1の依存処理実行端末アドレス)に格納されている制御端末にのみ「実行準備」メッセージを送信する。
When the entry is found, the operation
本発明は分散システム一般に適用することができるが、特にRFIDシステムのように制御端末の数が多く、制御端末の節電効果が期待できる分策システムに有効である。 The present invention can be applied to general distributed systems, but is particularly effective for a distributed system that has a large number of control terminals such as an RFID system and can expect a power saving effect of the control terminals.
1〜7…制御端末、8…構成管理サーバ、C,C5,C7,C1…端末構成情報、21…処理実行部、22…稼動情報管理部、23…デバイス制御部、C11,C51、C71 …依存処理リスト、C12,C52,C72…逆依存処理リスト、C13,C53,C73…処理定義、131…動作ログテーブル、132…関連処理テーブル、133…関連処理解決テーブル、212…動作情報テーブル、213…関連処理解決テーブル、221…自端末ステータス情報、222…他端末ステータス情報 DESCRIPTION OF SYMBOLS 1-7 ... Control terminal, 8 ... Configuration management server, C, C5, C7, C1 ... Terminal configuration information, 21 ... Processing execution part, 22 ... Operation information management part, 23 ... Device control part, C11, C51, C71 ... Dependency processing list, C12, C52, C72 ... inverse dependence processing list, C13, C53, C73 ... processing definition, 131 ... operation log table, 132 ... related processing table, 133 ... related processing resolution table, 212 ... operation information table, 213 ... related process resolution table, 221 ... own terminal status information, 222 ... other terminal status information
Claims (10)
上記複数の制御端末の各制御端末は休止状態に遷移するとき、自端末で実行する処理に依存する上位の処理を実行する他端末すべてに休止要求を送信し、
上記休止要求を受信した制御端末は、上記休止要求を送信した制御端末が実行する処理に依存する処理を、自端末で管理している処理の定義を記載した処理定義から検索し、
上記処理定義から上記休止要求を送信した制御端末が実行する処理に依存する処理に合致する処理が見つかった場合、上記処理のステータスを確認し、
上記ステータスが処理実行中以外のアイドル状態であれば休止許可を返信し、
上記ステータスが処理実行中のビジー状態であれば休止許否を返信する
ことを特徴とするシステムの休止制御方法。 In a suspension control method for a system in which a plurality of control terminals connected to a network operate in a hierarchical structure,
When each control terminal of the plurality of control terminals transitions to a dormant state, it sends a dormancy request to all other terminals that execute higher-level processing depending on the processing executed by the own terminal,
The control terminal that has received the suspension request searches for a process that depends on the process executed by the control terminal that has transmitted the suspension request from the process definition that describes the definition of the process managed by the terminal.
If a process is found that matches the process depending on the process executed by the control terminal that sent the suspension request from the process definition, check the status of the process,
If the above status is in an idle state other than processing execution, a pause permission is returned,
A suspension control method for a system, characterized in that if the status is busy during processing, a suspension permission / rejection is returned.
上記休止要求を送信したすべての他端末に休止キャンセル通知を送信することを特徴とする請求項1記載のシステムの休止制御方法。 When the control terminal that has transmitted the suspension request receives a suspension permission / inhibition from another terminal that has transmitted the suspension request during execution of the suspension processing, the control terminal cancels the suspension processing,
2. The suspension control method for a system according to claim 1, wherein a suspension cancellation notification is transmitted to all other terminals that have transmitted the suspension request.
上記休止要求を送信したすべての他端末に休止キャンセル通知を送信することを特徴とする請求項1記載のシステムの休止制御方法。 When the control terminal that has transmitted the suspension request receives a processing request from another terminal during execution of the suspension processing, the control terminal cancels the suspension processing,
2. The suspension control method for a system according to claim 1, wherein a suspension cancellation notification is transmitted to all other terminals that have transmitted the suspension request.
上記他端末のステータスが処理待機中の休止状態である端末が存在する場合に、上記端末を起動することを特徴とする請求項1記載のシステムの休止制御方法。 When each control terminal of the plurality of control terminals executes a process, check the status of other terminals that execute all lower-level processes on which the process depends,
2. The system pause control method according to claim 1, wherein when there is a terminal in which the status of the other terminal is in a standby state waiting for processing, the terminal is activated.
あるクライアント端末から制御端末に第1の処理要求が送信された場合に、上記クライアント端末から続けて送信される可能性が高い第2の処理要求を上記解析結果に基づき予測し、
上記第2の処理要求の実行に必要な制御端末が休止中であれば上記休止中の制御端末を起動し、
上記第2の処理要求の実行に必要な制御端末が稼働中であれば上記稼働中の制御端末を休止状態に遷移しないように制御する
ことを特徴とする請求項1記載のシステムの休止制御方法。 From the access log collected at each control terminal of the plurality of control terminals, analyze the access pattern of the processing request transmitted from the client terminal, which is another terminal that executes the higher-level processing,
When a first processing request is transmitted from a certain client terminal to the control terminal, a second processing request that is likely to be transmitted continuously from the client terminal is predicted based on the analysis result,
If the control terminal required for executing the second processing request is inactive, activate the inactive control terminal;
2. The suspension control method for a system according to claim 1, wherein if the control terminal required for executing the second processing request is in operation, the operation control terminal is controlled so as not to transition to the sleep state. .
上記構成管理サーバは、上記複数の制御端末の階層構造の依存関係を解析するとともに、上記複数の制御端末で実行する処理内容の端末処理情報を管理する依存関係解析部を備え、
上記階層構造を形成する各制御端末は、自端末で実行する処理の定義を記載した処理定義と、上記自端末で実行する処理のステータスと、上記自端末で実行する処理が依存するすべての下位の処理を実行する他端末のアドレスと、上記自端末で実行する処理に依存する全ての上位の処理を実行する他端末のアドレスを管理する処理実行部を備えており、
上記処理実行部は、
自端末が休止状態に遷移するときは、該自端末で実行する処理に依存する上位処理を実行する他端末すべてに休止要求を送信し、該上位処理を実行する他端末から休止許可の返信を受けたときに、該自端末を休止状態にする機能を有するとともに、
他端末から休止要求を受信したときは、該他端末が実行する処理に依存する処理を、上記処理実行部が管理している処理定義から検索し、上記処理定義から休止要求を送信した上記他端末が実行する処理に依存する処理に合致する処理が見つかった場合に、上記処理のステータスを確認し、上記ステータスが処理実行中以外のアイドル状態であれば上記他端末に休止許可を返信し、自端末が処理実行中のビジー状態であれば上記他端末に休止許否を返信する休止判断機能を有する
ことを特徴とする制御システム。 A control system comprising a plurality of control terminals forming a hierarchical structure connected to a network, and a configuration management server,
The configuration management server includes a dependency analysis unit that analyzes the dependency of the hierarchical structure of the plurality of control terminals and manages terminal processing information of processing contents executed by the plurality of control terminals,
Each control terminal forming the hierarchical structure has a process definition that describes the definition of the process to be executed by the own terminal, the status of the process to be executed by the own terminal, and all the subordinates on which the process to be executed by the own terminal depends. And a processing execution unit that manages the address of the other terminal that executes the above process and the address of the other terminal that executes all higher-level processes that depend on the process executed by the terminal.
The process execution unit
When the own terminal transitions to the dormant state, a dormancy request is transmitted to all other terminals that execute higher-level processing depending on the processing executed by the own terminal, and a dormant permission reply is sent from the other terminal that executes the higher-level processing. When received, it has a function to put the terminal in a dormant state,
When a pause request is received from another terminal, the process dependent on the process executed by the other terminal is searched from the process definition managed by the process execution unit, and the pause request is transmitted from the process definition. If a process that matches the process depending on the process executed by the terminal is found, the status of the process is confirmed. If the status is in an idle state other than the process being executed, a suspension permission is returned to the other terminal, A control system comprising a pause determination function for returning a pause permission / inhibition to the other terminal when the own terminal is busy during processing.
ことを特徴とする請求項6記載の制御システム。 The process execution unit cancels the suspension process when receiving a suspension permission / inhibition from another terminal that has transmitted the suspension request during execution of the suspension process, and sends a suspension cancellation notification to all the other terminals that have transmitted the suspension request. The control system according to claim 6, further comprising a pause cancel processing function for transmitting.
ことを特徴とする請求項6記載の制御システム。 When the processing execution unit receives a processing request from another terminal during the execution of the pause process, the process execution unit cancels the pause process and transmits a pause cancel notification to all other terminals that have transmitted the pause request. It has a function. The control system of Claim 6 characterized by the above-mentioned.
上記各制御端末が処理を実行するとき、上記稼動情報管理部は、上記処理が依存するすべての下位の処理を実行する他端末のステータスを確認し、上記ステータスが処理待機中の休止状態である端末が存在する場合に、上記休止状態の端末を起動することを特徴とする請求項6記載の制御システム。 Each control terminal configured in the hierarchical structure includes an operation information management unit that manages the status of other terminals that execute all lower-level processes on which the process executed by the terminal depends.
When each control terminal executes a process, the operation information management unit confirms the status of another terminal that executes all lower-level processes on which the process depends, and the status is a dormant state waiting for the process. The control system according to claim 6, wherein when there is a terminal, the terminal in the dormant state is activated.
上記構成管理サーバは、上記複数の制御端末の各制御端末の上記ログ収集部で収集したアクセスログから、上位の処理を実行する他端末であるクライアント端末から送信される処理要求のアクセスパターンを解析するログ解析部を備え、
上記ログ解析部の解析結果に基づいて、上記構成管理サーバは、あるクライアント端末から第1の処理要求が送信された場合に、上記クライアント端末から続けて送信される可能性が高い第2の処理要求を上記解析結果に基づき予測し、上記第2の処理要求の実行に必要な制御端末が休止中であれば上記休止中の制御端末を起動し、上記第2の処理要求の実行に必要な制御端末が稼働中であれば上記稼働中の制御端末を休止状態に遷移しないように制御することを特徴とする請求項6記載の制御システム。 Each control terminal configured in the above hierarchical structure includes a log collection unit that collects an access log,
The configuration management server analyzes an access pattern of a processing request transmitted from a client terminal, which is another terminal that executes higher-order processing, from an access log collected by the log collection unit of each control terminal of the plurality of control terminals. Log analysis unit
Based on the analysis result of the log analysis unit, when the first processing request is transmitted from a certain client terminal, the configuration management server is likely to continue transmitting from the client terminal. A request is predicted based on the analysis result, and if the control terminal necessary for executing the second processing request is inactive, the inactive control terminal is activated and required for executing the second processing request. The control system according to claim 6, wherein if the control terminal is in operation, control is performed so that the operating control terminal does not transition to a dormant state.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006116925A JP2007287101A (en) | 2006-04-20 | 2006-04-20 | Halt control method for system, and control system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006116925A JP2007287101A (en) | 2006-04-20 | 2006-04-20 | Halt control method for system, and control system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007287101A true JP2007287101A (en) | 2007-11-01 |
Family
ID=38758784
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006116925A Abandoned JP2007287101A (en) | 2006-04-20 | 2006-04-20 | Halt control method for system, and control system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007287101A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009245316A (en) * | 2008-03-31 | 2009-10-22 | Fujitsu Ltd | Virtual machine management program, management server device, and virtual machine management method |
JP2014013323A (en) * | 2012-07-04 | 2014-01-23 | Canon Inc | Display device and control method of the same |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS54160129A (en) * | 1978-06-09 | 1979-12-18 | Hitachi Ltd | Power source control system |
JPH0399309A (en) * | 1989-09-13 | 1991-04-24 | Hitachi Ltd | Remote control method for turning on power supply |
JPH0464162A (en) * | 1990-07-03 | 1992-02-28 | Hitachi Ltd | Control command execution method for computer |
JPH11308258A (en) * | 1998-04-24 | 1999-11-05 | Nec Corp | Power source control system for terinal |
JP2001331243A (en) * | 2000-05-19 | 2001-11-30 | Fujitsu Ltd | Information processor, power saving control method and recording medium having power saving control program stored thereon |
JP2002006998A (en) * | 2000-06-27 | 2002-01-11 | Hitachi Ltd | Electric power supply controller |
JP2003167781A (en) * | 2001-11-30 | 2003-06-13 | Matsushita Electric Ind Co Ltd | Magnetic disk device and data readout control method |
JP2005078640A (en) * | 2003-08-29 | 2005-03-24 | Texas Instruments Inc | Thread scheduling mechanism for processor resource power management |
-
2006
- 2006-04-20 JP JP2006116925A patent/JP2007287101A/en not_active Abandoned
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS54160129A (en) * | 1978-06-09 | 1979-12-18 | Hitachi Ltd | Power source control system |
JPH0399309A (en) * | 1989-09-13 | 1991-04-24 | Hitachi Ltd | Remote control method for turning on power supply |
JPH0464162A (en) * | 1990-07-03 | 1992-02-28 | Hitachi Ltd | Control command execution method for computer |
JPH11308258A (en) * | 1998-04-24 | 1999-11-05 | Nec Corp | Power source control system for terinal |
JP2001331243A (en) * | 2000-05-19 | 2001-11-30 | Fujitsu Ltd | Information processor, power saving control method and recording medium having power saving control program stored thereon |
JP2002006998A (en) * | 2000-06-27 | 2002-01-11 | Hitachi Ltd | Electric power supply controller |
JP2003167781A (en) * | 2001-11-30 | 2003-06-13 | Matsushita Electric Ind Co Ltd | Magnetic disk device and data readout control method |
JP2005078640A (en) * | 2003-08-29 | 2005-03-24 | Texas Instruments Inc | Thread scheduling mechanism for processor resource power management |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009245316A (en) * | 2008-03-31 | 2009-10-22 | Fujitsu Ltd | Virtual machine management program, management server device, and virtual machine management method |
JP2014013323A (en) * | 2012-07-04 | 2014-01-23 | Canon Inc | Display device and control method of the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100465901C (en) | Network system, management computer, cluster management method, and computer program | |
JP3850859B2 (en) | Hall management system | |
KR100908556B1 (en) | A power supply control method of a plurality of information processing apparatuses and the information processing apparatus thereof | |
US7958508B2 (en) | Method of power-aware job management and computer system | |
US20100333094A1 (en) | Job-processing nodes synchronizing job databases | |
CN100378670C (en) | Apparatus and method for updating I/O capability of a logically-partitioned computer system | |
JP4404114B2 (en) | Power management system, power management method, and use management apparatus for image forming apparatus | |
CN103034536A (en) | Usability for improving stateful applications | |
US20030135617A1 (en) | Intelligent system control agent | |
US10144131B2 (en) | Operation monitoring server and operation monitoring system | |
CN111580990A (en) | Task scheduling method, scheduling node, centralized configuration server and system | |
JP2013037450A (en) | Database update controller, database management system, and database update control program | |
JP4591178B2 (en) | Power supply control apparatus, power supply control method, and program | |
JP5392129B2 (en) | Program and information processing apparatus | |
CN111913793A (en) | Distributed task scheduling method, device, node equipment and system | |
CN110737526A (en) | method and device for managing timed tasks under Redis-based distributed cluster | |
JP2001175460A (en) | Program distribution management system | |
JP2007287101A (en) | Halt control method for system, and control system | |
JP2007188183A (en) | Information providing device, information providing program and device detecting method | |
JP2001216276A (en) | Information processor | |
US7043735B2 (en) | System and method to dynamically select and locate server objects based on version information of the server objects | |
JP2003078672A (en) | Server device, image processing apparatus, control method for the server device and the image processing apparatus and storage medium | |
JPH09319720A (en) | Distributed process managing system | |
JP2008135054A (en) | Workflow managing method, and its execution system | |
JP4232606B2 (en) | File distribution system, client program, client, server program, server, and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090416 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101028 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101109 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111025 |
|
A762 | Written abandonment of application |
Free format text: JAPANESE INTERMEDIATE CODE: A762 Effective date: 20111110 |