JP2001022599A - Fault tolerant system, fault tolerant processing method, and fault tolerant control program recording medium - Google Patents
Fault tolerant system, fault tolerant processing method, and fault tolerant control program recording mediumInfo
- Publication number
- JP2001022599A JP2001022599A JP11191135A JP19113599A JP2001022599A JP 2001022599 A JP2001022599 A JP 2001022599A JP 11191135 A JP11191135 A JP 11191135A JP 19113599 A JP19113599 A JP 19113599A JP 2001022599 A JP2001022599 A JP 2001022599A
- Authority
- JP
- Japan
- Prior art keywords
- task
- processor
- cpu
- over
- processing
- 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.)
- Withdrawn
Links
Landscapes
- Hardware Redundancy (AREA)
Abstract
(57)【要約】
【課題】 マルチプロセッサシステムにおいて,あるC
PUが故障した場合に,そのCPUの処理を他のCPU
がタスク単位で引き継ぐときに,どのCPUが引き継ぐ
かを簡単に指定することができるようにすることを目的
とする。
【解決手段】 引継判断部11は, 他のCPUの故障を検
出すると, 再構成テーブル2 中のタスクを引き継ぐCP
U番号の系列である遷移情報と,現在遷移位置テーブル
4 中の現在処理しているCPUを示す現在遷移位置か
ら, 故障したCPUで稼働していたタスクを探し, その
タスクを引き継ぐ次のCPUを調べる。引き継ぐCPU
が自CPUであれば, 待機タスク起動部12は,そのタス
クの待機用タスク3 を起動し, 処理の引き継ぎを行う。
現在遷移位置更新部13は, 現在遷移位置テーブル4 の現
在遷移位置を更新する。タスクを引き継ぐCPUがない
場合,処理選択情報に基づきタスクまたはシステム全体
を停止させる。
(57) [Summary] [PROBLEMS] In a multiprocessor system, a C
When a PU fails, the processing of that CPU is performed by another CPU.
It is an object of the present invention to be able to easily specify which CPU takes over when a task takes over in task units. When a failure of another CPU is detected, a takeover determination unit 11 takes over a task in a reconfiguration table 2.
Transition information as a series of U numbers and current transition position table
From the current transition position indicating the currently processing CPU in 4, a task running on the failed CPU is searched, and the next CPU taking over the task is checked. CPU to take over
If is the own CPU, the standby task activating unit 12 activates the standby task 3 of the task and takes over the processing.
The current transition position updating unit 13 updates the current transition position in the current transition position table 4. If there is no CPU taking over the task, the task or the entire system is stopped based on the process selection information.
Description
【0001】[0001]
【発明の属する技術分野】本発明は,複数のプロセッサ
(以下,CPUという)を搭載したシステムにおけるフ
ォールトトレラント技術に関し,特に,あるCPUが故
障した場合に,そのCPUが行っていた処理を他の正常
なCPUがタスク単位で引き継ぐとき,どのCPUが引
き継ぐのかを正常なCPUが最後の一つになるまで,容
易に指定できるようにしたマルチCPUシステムにおけ
るフォールトトレラント・システム,フォールトトレラ
ント処理方法およびフォールトトレラント制御用プログ
ラム記録媒体に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a fault-tolerant technique in a system equipped with a plurality of processors (hereinafter, referred to as CPUs), and more particularly, to the processing performed by a CPU when another CPU fails. A fault-tolerant system, a fault-tolerant processing method, and a fault-tolerant system in a multi-CPU system in which when a normal CPU takes over in a task unit, it is possible to easily specify which CPU takes over until the normal CPU becomes the last one. The present invention relates to a tolerant control program recording medium.
【0002】[0002]
【従来の技術】マルチCPUシステムにおいて,あるC
PUが故障したときに,システムを停止することなく,
他の正常なCPUによってその処理を継続できるように
するため,例えば,以下のようなフォールトトレラント
技術がある。2. Description of the Related Art In a multi-CPU system, a C
When the PU fails, without stopping the system,
In order to allow the processing to be continued by another normal CPU, for example, there is the following fault-tolerant technique.
【0003】(1)「相互ホットスタンバイシステム待
機系選択方式(特開平9−81409号公報)」は,電
子計算機の障害により稼働系処理機能に対応付けられた
待機系処理機能が存在しなくなったとき,操作員の介入
なしに自動的に対応付け可能な待機系処理機能を選択し
て対応付け,ホットスタンバイ関係を構築するためのも
のであり,自電子計算機で動作する稼働系処理機能の識
別子,稼働系処理機能とホットスタンバイ関係を構築す
るように対応付けられた待機系処理機能の識別子および
該待機系処理機能が動作する電子計算機の番号からなる
情報と,自電子計算機で動作する待機系処理機能の識別
子,待機系処理機能とホットスタンバイ関係を構築する
ように対応付けられた稼働系処理機能の識別子および該
稼働系処理機能が動作する電子計算機の番号からなる情
報とを登録する処理機能管理表を備えるとともに,電子
計算機の障害発生時に,対応付けられた待機系処理機能
がなくなった稼働系処理機能からの要求に応じて,前記
処理機能管理表を参照して他の電子計算機の対応付けら
れた稼働系処理機能のない待機系処理機能を選択して要
求元の稼働系処理機能に対応付け,自動的にホットスタ
ンバイ関係を構築させる処理機能管理手段とを備える。[0003] (1) In the "mutual hot standby system standby system selection method" (Japanese Patent Laid-Open No. Hei 9-81409), a standby system processing function associated with an active system processing function no longer exists due to a failure in an electronic computer. When a standby processing function that can be automatically associated without operator intervention is selected and associated to establish a hot standby relationship, the identifier of the active processing function that runs on the local computer Information including an identifier of a standby processing function and a number of an electronic computer on which the standby processing function operates, which is associated with the active processing function so as to establish a hot standby relationship, and a standby system operating on its own computer. The identifier of the processing function, the identifier of the active processing function associated to establish a hot standby relationship with the standby processing function, and the active processing function In addition to a processing function management table for registering information consisting of the number of the computer to be created, when a failure occurs in the computer, in response to a request from an active processing function that has no associated standby processing function, With reference to the processing function management table, a standby processing function having no active processing function associated with another computer is selected and associated with the active processing function of the request source, and the hot standby relationship is automatically established. Processing function management means to be constructed.
【0004】(2)また,「業務引継システム(特願平
9−528794号)」は,ホットスタンバイの形態や
ロードシェアの形態で,複数の処理装置により業務処理
の実行を行うシステムにおいて,特に多大なプログラミ
ングを必要とせずに障害発生時の効率的な引き継ぎがで
きるような業務引継システムを提供することを目的とし
て,各処理装置が業務についての現用系であるか待機系
であるかを表すテーブルを保持し,業務についての現用
系である処理装置の障害発生時に,該障害が発生した処
理装置における業務に係る処理を,前記テーブルを参照
して当該業務の待機系となる処理装置に引き継ぐように
するものである。(2) A "business takeover system (Japanese Patent Application No. 9-528794)" is a system in which business processing is executed by a plurality of processing devices in a hot standby mode or a load sharing mode. In order to provide a business takeover system that can take over efficiently in the event of a failure without requiring a great deal of programming, it indicates whether each processing unit is an active system or a standby system for business The table is retained, and when a failure occurs in the processing unit that is the active system for the business, the processing related to the business in the processing unit in which the failure has occurred is transferred to the processing unit serving as the standby system of the business with reference to the table Is to do so.
【0005】[0005]
【発明が解決しようとする課題】しかし,従来,多数の
CPUが次々に故障し続けたとき,故障が生じたCPU
の処理をどのCPUが引き継ぐのかを容易に指定する方
法はなかった。However, conventionally, when a large number of CPUs continue to fail one after another, the failed CPU
There is no method for easily designating which CPU takes over the above processing.
【0006】また,上記(1)の技術では,処理機能管
理表により,稼働系処理識別子と待機系識別子を管理す
る必要がある。また,この技術では,処理を引き継ぐ計
算機が動的に定まるので,事前に処理を引き継ぐCPU
を最後の1台まで静的に定めることができず,さらに,
すべてのCPUが同等なハードウェアなどの機能を有し
ている必要があるという問題があった。In the technique (1), it is necessary to manage the active system processing identifier and the standby system identifier using the processing function management table. Also, in this technology, the computer that takes over the processing is dynamically determined, so the CPU that takes over the processing in advance
Cannot be statically determined until the last one,
There is a problem that all CPUs need to have functions such as equivalent hardware.
【0007】また,上記(2)の技術では,全クラスタ
のテーブルを作成する必要があり,全クラスタが故障す
るまで引き継がせたい業務があれば,すべてのテーブル
に待機業務を記さなければならない。また,処理を引き
継ぐクラスタが待機系を用意している中のどのクラスタ
になるかは不明であり,優先度を付けてクラスタに処理
を引き継がせるような設定をすることができないという
問題があった。In the technique (2), it is necessary to create tables for all clusters, and if there is a task to be taken over until all clusters fail, the standby task must be described in all tables. In addition, it is unknown which cluster takes over the processing while the standby cluster is being prepared, and there is a problem that it is not possible to assign a priority and make settings so that the cluster can take over the processing. .
【0008】本発明は上記問題点の解決を図り,マルチ
CPUシステムにおいて,あるCPUが故障した場合
に,そのCPUの処理をタスク単位で引き継ぐとき,ど
のCPUが引き継ぐのかを正常なCPUが最後の1台に
なるまで,容易に指定することができる手段を提供する
ことを目的とする。The present invention solves the above problem. In a multi-CPU system, when a certain CPU breaks down, when the processing of the CPU takes over in units of tasks, the last CPU determines which CPU takes over. It is an object of the present invention to provide a means that can be easily designated until one device is used.
【0009】[0009]
【課題を解決するための手段】本発明は,複数のCPU
を搭載したシステムにおいて,各CPUは,故障したC
PUで動作していたタスクをどのCPUによって引き継
ぐのかを,タスクごとにCPU番号の系列によって記し
た情報を持つ再構成テーブルを持つ。故障したCPUを
発見した場合,それを発見したCPUは,他の全CPU
に対し故障したCPUのCPU番号(各CPUを識別す
るための識別番号)を知らせる。各CPUは,再構成テ
ーブルをもとに,故障したCPU上で動作していたタス
クを知り,そのタスクを引き継ぐCPUが自分であるか
どうかを判断する。自CPUが引き継ぐように指定され
ているタスクであった場合,そのタスクを引き継ぐため
に待機していたタスクを起動させる。According to the present invention, a plurality of CPUs are provided.
In a system equipped with a
It has a reconfiguration table having information describing, by task, which CPU has taken over a task operating on a PU by a series of CPU numbers. When a failed CPU is found, the CPU that discovers it is all other CPUs.
To the CPU number of the failed CPU (identification number for identifying each CPU). Each CPU knows the task running on the failed CPU based on the reconfiguration table, and determines whether or not the CPU taking over the task is itself. If the task is designated to be taken over by the own CPU, the task that has been waiting to take over the task is started.
【0010】この引き継ぎのため,再構成テーブルに
は,タスクがどのCPUによって引き継がれていくのか
をCPU番号の羅列で表現するだけでよいので,容易に
引き継いでいくCPUを指定することができる。また,
現在どのCPU上でタスクが実行されているのかを覚え
ておくことにより,簡単に引き継ぐCPUがどのCPU
であるかを調べることができる。[0010] For this handover, the CPU to be handed over can be easily specified in the reconfiguration table, because it is only necessary to express the CPUs that take over tasks by a list of CPU numbers. Also,
By remembering on which CPU the task is currently being executed, the CPU that easily takes over
Can be checked.
【0011】また,再構成テーブルには,引き継ぐCP
Uが存在しなくなった場合に,このタスクだけを停止さ
せるのか,またはシステム全体として停止させるのかを
指定する情報を持たせておく。これによって,タスクだ
けの停止,システム全体の停止を選択することができ
る。[0011] In the reconfiguration table, the CP
When U no longer exists, information for designating whether to stop only this task or the entire system is stored. With this, it is possible to select stopping only the task or stopping the entire system.
【0012】なお,ここでいうCPU(central proces
sing unit )には,MPU(microprocessing unit)も
含まれる。また,ここでいうタスクは,CPUで実行さ
れる処理の単位を意味し,プロセスと呼ばれるような処
理単位も含まれる広い概念のものである。The CPU (central process) referred to here
The sing unit includes an MPU (microprocessing unit). The task here means a unit of processing executed by the CPU, and has a broad concept including a processing unit called a process.
【0013】以上の各処理手段をコンピュータによって
実現するためのプログラムは,コンピュータが読み取り
可能な可搬媒体メモリ,半導体メモリ,ハードディスク
などの適当な記録媒体に格納することができる。A program for realizing each of the above processing means by a computer can be stored in an appropriate recording medium such as a computer-readable portable medium memory, a semiconductor memory, and a hard disk.
【0014】[0014]
【発明の実施の形態】図1は,本発明の概要を示すブロ
ック構成図である。本実施の形態では,マルチCPUシ
ステムにおいて,CPUごとに,フォールトトレラント
処理手段1および再構成テーブル2を備える。また,ど
のCPUもアクセスすることができる記憶領域に,現在
遷移位置テーブル4を備える。FIG. 1 is a block diagram showing an outline of the present invention. In the present embodiment, a multi-CPU system includes a fault-tolerant processing unit 1 and a reconfiguration table 2 for each CPU. Further, a current transition position table 4 is provided in a storage area accessible by any CPU.
【0015】再構成テーブル2は,タスクごとに,各タ
スクを識別するタスクID(識別子)と,故障が生じた
CPU上で実行されていたタスクを,どのCPUによっ
て引き継ぐのかをCPU番号(各CPUを識別するため
のシーケンシャルな番号)の系列で指定する遷移情報
と,引き継ぐCPUが存在しない場合に,そのタスクだ
けを停止するか,システム全体を停止するかを指定する
処理選択情報を持つ。The reconfiguration table 2 contains, for each task, a task ID (identifier) for identifying each task, and a CPU number (for each CPU) indicating which CPU is to take over the task being executed on the failed CPU. (Sequential numbers for identifying the IDs) and process selection information for specifying whether to stop only the task or the entire system when there is no CPU to take over.
【0016】現在遷移位置テーブル4は,再構成テーブ
ル2に記憶されている各タスクが現在それぞれどのCP
Uで稼働しているかを,再構成テーブル2における遷移
情報の系列の位置で示す現在遷移位置情報を保持する。The current transition position table 4 indicates which task each task stored in the reconfiguration table 2 is currently using.
The current transition position information indicating whether or not the operation is performed by U is indicated by the position of the sequence of the transition information in the reconfiguration table 2.
【0017】フォールトトレラント処理手段1は,他C
PUに故障が生じた場合に,再構成テーブル2の遷移情
報をもとに,その故障したCPU上で実行中のタスク
が,自分(自CPU)が引き継ぐものかどうかを判断す
る引継判断部11と,そのタスクの処理を自CPUが引
き継ぐ場合に,そのタスクの待機用タスク3を起動し
て,引き継ぎを行う待機タスク起動部12と,再構成テ
ーブル2の現在遷移位置を自CPUを示す位置に更新す
る現在遷移位置更新部13とを備える。待機用タスク3
は,あらかじめ生成しておいてもよく,また必要になっ
たときに新たに生成して,制御を渡すことにより起動し
てもよい。The fault-tolerant processing means 1 includes another C
When a failure occurs in a PU, a transition determination unit 11 that determines, based on transition information in the reconfiguration table 2, whether a task being executed on the failed CPU is to be taken over by itself (own CPU). When the own CPU takes over the processing of the task, the standby task 3 for activating and taking over the standby task 3 of the task, and a position indicating the current transition position of the reconfiguration table 2 indicating the own CPU And a current transition position updating unit 13 for updating the current transition position. Waiting task 3
May be generated in advance, or may be newly generated when necessary and activated by passing control.
【0018】図2は,本発明の処理動作の流れの例を示
す。この例では,CPU1〜CPU4の番号を付与され
た4つのCPUからなるマルチプロセッサシステムにお
いて,タスクIDが101のタスク(以下,タスク10
1と表記する),タスクIDが201のタスク(以下,
タスク201と表記する),タスクIDが202のタス
ク(以下,タスク202と表記する),タスクIDが3
01のタスク(以下,タスク301と表記する)の4つ
のタスクが実行されているとする。FIG. 2 shows an example of the flow of the processing operation of the present invention. In this example, in a multiprocessor system including four CPUs numbered from CPU1 to CPU4, a task having a task ID of 101 (hereinafter, task 10) is executed.
1), and a task with a task ID of 201 (hereinafter, referred to as a task ID 201).
A task having a task ID of 202 (hereinafter, referred to as a task 202) and a task ID of 3
It is assumed that four tasks of task 01 (hereinafter referred to as task 301) are being executed.
【0019】再構成テーブル2には,あらかじめ各タス
クごとに,タスクIDと障害発生時にそのタスクを引き
継ぐCPU番号の順序を遷移情報として設定しておく。
また,引き継ぐCPUがない場合にタスクだけを停止さ
せるのか,システム全体として停止させるのかを示す処
理選択の情報を設定しておく。タスク101のタスクを
例に説明すると,再構成テーブル2には,それを実行し
ているCPUの障害時に,CPU1→CPU2→CPU
3→CPU4の順に処理を引き継ぐことが設定され,引
き継ぐCPUがない場合にはシステム全体の処理を停止
するように設定されている。In the reconfiguration table 2, a task ID and an order of CPU numbers which take over the task in the event of a failure are set in advance for each task as transition information.
In addition, processing selection information indicating whether to stop only the task when there is no CPU to be taken over or to stop the entire system is set. If the task of the task 101 is described as an example, the reconfiguration table 2 stores the CPU 1 → CPU 2 → CPU
It is set to take over the processing in the order of 3 → CPU4, and if there is no CPU to take over, the processing of the entire system is set to be stopped.
【0020】現在遷移位置テーブル4には,再構成テー
ブル2に登録されている各タスクごとに,現在実行して
いるCPUが遷移情報中の先頭から何番目であるかを示
す情報が,現在遷移位置として格納されている。故障し
ているCPUがない初期状態においては,現在遷移位置
はすべて「1」である。すなわち,故障発生前では,タ
スク101はCPU1上で,タスク201,202はC
PU2上で,タスク301はCPU3上で,それぞれ実
行されていることが示されている。The current transition position table 4 contains, for each task registered in the reconfiguration table 2, information indicating the number of the currently executing CPU from the beginning of the transition information in the current transition position table. Stored as position. In the initial state where there is no failed CPU, the current transition positions are all “1”. That is, before a failure occurs, the task 101 is on the CPU 1 and the tasks 201 and 202 are
It is shown that the task 301 is being executed on the CPU 3 on the PU 2.
【0021】CPU2が故障したとすると,それを検出
したCPUから,CPU1,CPU3,CPU4は,C
PU2の故障通知を受信する(ステップS1)。それぞ
れのCPUでは,再構成テーブル2を参照して,CPU
2上で実行されていたタスク,すなわち遷移情報におけ
る1番目の現在遷移位置が「2(CPU2)」となって
いるタスクを探す(ステップS2)。ここで,CPU2
上で実行されていたタスクが,タスク201,202で
あることがわかる。Assuming that the CPU 2 has failed, the CPU 1, CPU 3, and CPU 4 send C
The failure notification of PU2 is received (step S1). In each CPU, referring to the reconfiguration table 2, the CPU
A task that has been executed on 2, that is, a task in which the first current transition position in the transition information is “2 (CPU2)” is searched for (step S2). Here, CPU2
It can be seen that the tasks executed above are the tasks 201 and 202.
【0022】CPU1は,タスク201の遷移情報(2
→1)からこのタスクを引き継ぐCPUが自CPUであ
ることがわかり,CPU4は,タスク202の遷移情報
(2→4)からこのタスクを引き継ぐCPUが自CPU
であることがわかる。そこで,CPU1は,201用タ
スクを起動させ,CPU4は,202用タスクを起動さ
せる(ステップS3)。The CPU 1 determines the transition information (2
From (1), it is found that the CPU taking over this task is its own CPU, and the CPU 4 takes over from the transition information (2 → 4) of the task 202,
It can be seen that it is. Therefore, the CPU 1 activates the task for 201, and the CPU 4 activates the task for 202 (step S3).
【0023】CPU1,CPU4は,現在遷移位置テー
ブル4のタスク201,202の現在遷移位置をそれぞ
れ「1」から「2」に更新する(ステップS4)。The CPUs 1 and 4 update the current transition positions of the tasks 201 and 202 in the current transition position table 4 from "1" to "2", respectively (step S4).
【0024】その後,CPU1,CPU3,CPU4が
稼働している状態で,さらにCPU1が故障したとす
る。それを検出したCPUから,CPU3,CPU4
は,CPU1の故障通知を受信する(ステップS5)。
CPU3,CPU4は,現在遷移位置1,2,2,1を
もとに,再構成テーブル2におけるタスク101,20
1,202,301の遷移情報のうち,それぞれ1番
目,2番目,2番目,1番目を調べ,CPU1で実行さ
れていたタスクがタスク101,201であることを知
る。これらのタスク101,201の遷移情報から,引
き継ぐCPU番号を得ると,タスク101については,
引き継ぐべきCPU2が既に故障しているので,さらに
次の遷移情報を調べて,次のCPU3が引き継ぐべきC
PUであることがわかる。一方,タスク201は,引き
継ぐべきCPUがないことがわかる(ステップS6)。Thereafter, it is assumed that the CPU 1, the CPU 3 and the CPU 4 are operating, and the CPU 1 further fails. CPU3, CPU4
Receives the failure notification of the CPU 1 (step S5).
The CPUs 3 and 4 perform tasks 101 and 20 in the reconfiguration table 2 based on the current transition positions 1, 2, 2, and 1, respectively.
The first, second, second, and first transition information of the transition information 1, 202, and 301 are examined, and it is known that the tasks executed by the CPU 1 are the tasks 101 and 201. When the CPU number to be taken over is obtained from the transition information of these tasks 101 and 201,
Since the CPU 2 to be taken over has already failed, the next transition information is further examined, and the next CPU 3
It turns out that it is PU. On the other hand, the task 201 knows that there is no CPU to take over (step S6).
【0025】そこで,CPU3では101用タスクを起
動させる(ステップS7)。引き継ぐべきCPUのない
タスク201は,再構成テーブル2の処理選択情報を見
ると「タスク」であるので,システム全体を停止させる
のではなく,タスク201だけを停止させる。その後,
現在遷移位置テーブル4におけるタスク101の現在遷
移位置を「3」に更新し,引き継ぐべきCPUのないタ
スク201の現在遷移位置については,「なし」を示す
「−1」に更新する(ステップS8)。Therefore, the CPU 3 activates the task for 101 (step S7). The task 201 having no CPU to be taken over is a "task" in the processing selection information of the reconfiguration table 2, so that only the task 201 is stopped instead of stopping the entire system. afterwards,
The current transition position of the task 101 in the current transition position table 4 is updated to "3", and the current transition position of the task 201 having no CPU to be taken over is updated to "-1" indicating "none" (step S8). .
【0026】このように,本発明では,故障したCPU
上で稼働していたタスクを引き継ぐCPUの引き継ぎ順
序を,再構成テーブル2にCPUの番号を羅列して記す
ことにより,タスク単位でどのCPUが引き継ぐべきか
を正常なCPUが最後の一つになるまで,容易に指定す
ることができる。さらに,現在どのCPU上でタスクが
実行されているのかを示すことで,次に引き継ぐCPU
を簡単に調べることができる。また,引き継ぐCPUが
なくなった場合の処理も簡単に設定することができ,タ
スクを停止させるだけで,他のタスクにより処理を続行
させるか,システム全体を停止させるかを容易に指定す
ることができる。As described above, according to the present invention, the failed CPU
By listing the CPU takeover order taking over the tasks that were running above in the reconfiguration table 2 by listing the CPU numbers, the normal CPU can determine which CPU should take over in task units as the last one. Until it can be easily specified. In addition, by indicating on which CPU the task is currently being executed,
Can be easily checked. In addition, processing when there is no CPU to be taken over can be easily set, and by simply stopping a task, it is possible to easily specify whether to continue processing with another task or stop the entire system. .
【0027】このため,ある処理を実行するのに必要な
通信回線やディスク記憶装置などのハードウェアを,す
べてのCPUに同等に用意する必要がなく,タスクの処
理機能に応じて特定のハードウェアが備わっているCP
Uにのみ確実に引き継がせることができるようになる。For this reason, it is not necessary to equip all CPUs with hardware such as a communication line and a disk storage device necessary for executing a certain process, and specific hardware may be used in accordance with a task processing function. CP with
Only U can take over reliably.
【0028】図3は,本発明が利用される複数のCPU
を搭載したシステムの例を示す。複数のCPUの接続形
態としては,一般に知られているように,疎結合型と密
結合型とがある。本発明はそのどちらの形態においても
適用することができる。FIG. 3 shows a plurality of CPUs to which the present invention is applied.
An example of a system equipped with is shown. As a generally known connection form of a plurality of CPUs, there are a loosely coupled type and a tightly coupled type. The present invention can be applied in either of these forms.
【0029】図3(A)は,疎結合型の接続形態の例で
あって,各CPU20−1〜20−nは,自己専用のプ
ロセッサバス21−1〜21−nとローカルメモリ22
−1〜22−nとを持ち,CPU20−1〜20−n間
で共有できるのはシステムバス23を通したグローバル
メモリ24だけである。FIG. 3A shows an example of a loosely-coupled connection mode, in which each of the CPUs 20-1 to 20-n has its own dedicated processor buses 21-1 to 21-n and a local memory 22.
Only the global memory 24 through the system bus 23 can be shared between the CPUs 20-1 to 20-n.
【0030】図3(B)は密結合型の接続形態の例であ
って,各CPU30−1〜30−mはプロセッサバス3
1もローカルメモリ32も共有し,ローカルメモリ32
内を各CPU30−1〜30−mがそれぞれ専用的に使
うメモリ空間とCPU間で共有的に使うメモリ空間とを
論理的に区分けして使用する。FIG. 3B shows an example of a tightly-coupled connection mode, in which each of the CPUs 30-1 to 30-m is connected to a processor bus 3.
1 and the local memory 32 are shared.
A memory space exclusively used by each of the CPUs 30-1 to 30-m and a memory space shared by the CPUs are logically divided and used.
【0031】図4に,疎結合型のマルチCPUシステム
におけるブロック構成例を示す。ここでは図を簡単に表
すために,2台のCPUを示しているが,多数のCPU
が接続されていてもよい。本発明に必要な各機能は,C
PU20−1,20−1のローカルメモリ22−1,2
2−2に配置され,また,CPU間の共通資源を管理す
る領域はグローバルメモリ24に配置される。FIG. 4 shows an example of a block configuration in a loosely-coupled multi-CPU system. Although two CPUs are shown here for simplicity of illustration, many CPUs are shown.
May be connected. Each function required for the present invention is C
Local memories 22-1 and 22-2 of PUs 20-1 and 20-1
2-2, and an area for managing common resources between CPUs is arranged in the global memory 24.
【0032】図5に,密結合型のマルチCPUシステム
におけるブロック構成例を示す。本発明に必要な各手段
は,CPU30−1,30−2ごとに,ローカルメモリ
32の各CPU専用メモリ空間に配置され,また,CP
U間の共通資源を管理する領域はローカルメモリ32内
に設けられた共有メモリ空間に配置される。FIG. 5 shows an example of a block configuration in a tightly-coupled multi-CPU system. The means required for the present invention are arranged in the CPU dedicated memory space of the local memory 32 for each of the CPUs 30-1 and 30-2.
An area for managing common resources between U is arranged in a shared memory space provided in the local memory 32.
【0033】図4および図5において,タスク管理部5
1は,自CPU上で動作するタスクを制御し,フォール
トトレラント部53からタスクの引き継ぎ依頼があれ
ば,引き継ぐために待機していたタスクを起動し,停止
依頼があればタスクを停止する。故障検出部52は,自
CPUまたは他のCPUの故障を検出し,CPU間通信
部55を介して他のCPUに故障を通知する。フォール
トトレラント部53は,他のCPUの故障を自ら検出す
るか,またはCPU間通信部55を介して,他のCPU
の故障通知を受け取ると,再構成テーブル54を参照し
て,自CPUがタスクを引き継ぐかどうかを判断する。
CPU間通信部55は,各CPU間でメッセージ通信を
行うためのモジュールである。なお,図4に示すグロー
バルメモリ24,または図5に示すローカルメモリ32
内の共有メモリ空間には,CPU間の共通資源を管理す
るマルチCPU制御領域56が設けられる。また,この
例では,現在遷移位置テーブル57も共有メモリ空間内
に設けられている。In FIGS. 4 and 5, the task management unit 5
1 controls a task that operates on its own CPU, activates a task waiting to be taken over when a request to take over a task is issued from the fault tolerant unit 53, and stops a task when requested to stop. The failure detection unit 52 detects a failure of its own CPU or another CPU, and notifies the other CPU of the failure via the inter-CPU communication unit 55. The fault-tolerant unit 53 detects the failure of another CPU by itself, or sends it to another CPU via the inter-CPU communication unit 55.
When the failure notification is received, it is determined with reference to the reconfiguration table 54 whether the own CPU takes over the task.
The inter-CPU communication unit 55 is a module for performing message communication between the CPUs. The global memory 24 shown in FIG. 4 or the local memory 32 shown in FIG.
In the shared memory space within the CPU, a multi-CPU control area 56 for managing common resources between CPUs is provided. In this example, the current transition position table 57 is also provided in the shared memory space.
【0034】図6に,本発明をコンピュータによって実
現させるためのプログラムの処理フローチャートを示
す。このフローチャートは,特にフォールトトレラント
部53を中心とした部分の処理の流れを示している。FIG. 6 shows a processing flowchart of a program for realizing the present invention by a computer. This flowchart particularly shows a processing flow of a portion centering on the fault tolerant section 53.
【0035】まず,システムにおける一つのCPUの故
障が検出された場合,再構成を行うために正常なCPU
間で同期をとる(ステップS11)。故障の検出は,例
えば各CPU間で定期的に生存確認のメッセージ交換を
行うなど,従来から知られている方式を用いることがで
きる。また,CPU間の同期は,共有メモリ空間におけ
るマルチCPU制御領域56またはCPU間通信部55
を用いて行うが,同期方法については,よく知られてい
るので,ここでの詳しい説明を省略する。First, when a failure of one CPU in the system is detected, a normal CPU is used for reconfiguration.
Synchronization is established (step S11). For the detection of a failure, a conventionally known method such as, for example, periodically exchanging a message for confirming existence between CPUs can be used. The synchronization between the CPUs is performed by the multi-CPU control area 56 or the inter-CPU communication section 55 in the shared memory space.
However, since the synchronization method is well known, a detailed description thereof will be omitted here.
【0036】その後,再構成テーブル54の先頭のタス
クから順番に,現在遷移位置テーブル57から得た現在
遷移位置と,再構成テーブル54における遷移情報か
ら,着目するタスクが現在どのCPU上で動作している
のかを調べる(ステップS12)。タスクが,既に動作
していないタスクである場合,すなわち現在遷移位置テ
ーブル57から得た現在遷移位置が「−1」の場合,ス
テップS21へ進む(ステップS13)。また,現在遷
移位置の示すCPUが停止(故障)しているCPUでな
い場合,ステップS21へ進む(ステップS14)。After that, in order from the task at the head of the reconfiguration table 54, the task of interest runs on which CPU the task of interest is based on the current transition position obtained from the current transition position table 57 and the transition information in the reconfiguration table 54. Is checked (step S12). If the task is not already running, that is, if the current transition position obtained from the current transition position table 57 is “−1”, the process proceeds to step S21 (step S13). If the CPU indicated by the current transition position is not the stopped (failed) CPU, the process proceeds to step S21 (step S14).
【0037】既に動作していないタスクではなく,ま
た,そのタスクが割り当てられているCPUが停止して
いるCPUであった場合,再構成テーブル54の遷移情
報から次にそのタスクを動作させるCPUを調べる(ス
テップS15)。If the CPU to which the task is assigned is not the task that has not been operated and the CPU to which the task has been stopped, the CPU that operates the task next is determined from the transition information in the reconfiguration table 54. Check (step S15).
【0038】遷移情報に次のCPUが存在しない場合,
ステップS23に進む(ステップS16)。遷移情報に
次のCPUが存在するが,その次のCPUも停止してい
るときには(ステップS17),ステップS15の処理
へ戻り,再度,遷移情報から次にそのタスクを動作させ
るCPUを調べる。If the next CPU does not exist in the transition information,
Proceed to step S23 (step S16). If the next CPU exists in the transition information, but the next CPU is also stopped (step S17), the process returns to step S15, and the CPU that operates the task next is checked again from the transition information.
【0039】また,次のCPUが停止しているCPUで
はない場合,そのタスクを引き継ぐCPUが自CPUで
あるかどうかを調べる(ステップS18)。自CPUで
ある場合,ステップS19へ進み,自CPUでない場
合,ステップS21へ進む。If the next CPU is not the stopped CPU, it is checked whether or not the CPU taking over the task is its own CPU (step S18). If it is its own CPU, the process proceeds to step S19, and if it is not its own CPU, the process proceeds to step S21.
【0040】タスクを引き継ぐCPUが自CPUである
場合,現在遷移位置テーブル57の現在遷移位置を更新
し(ステップS19),待機させていたタスクを起動す
る(ステップS20)。If the CPU that takes over the task is the own CPU, the current transition position in the current transition position table 57 is updated (step S19), and the waiting task is activated (step S20).
【0041】ステップS21では,再構成テーブル54
におけるすべてのタスクについて,以上の処理を行った
かどうかを調べ,すべてのタスクについて以上の処理が
終わるまで,ステップS12〜S20を繰り返す。再構
成テーブル54におけるすべてのタスクについて,以上
の処理を行ったならば,他のCPUの処理を待ち,同期
をとる(ステップS22)。正常のCPUのすべてにお
いて,それぞれタスク引き継ぎ処理が完了し,同期がと
れたならば,新しいタスク構成により業務処理を継続す
る。In step S21, the reconstruction table 54
It is checked whether or not the above processing has been performed for all the tasks in step S12, and steps S12 to S20 are repeated until the above processing is completed for all the tasks. When the above processing has been performed for all the tasks in the reconfiguration table 54, the processing is waited for by the other CPUs and synchronized (step S22). When the task takeover processing is completed and synchronized in all the normal CPUs, business processing is continued with the new task configuration.
【0042】また,ステップS15の処理において,遷
移情報から次にそのタスクを動作させるCPUを調べ,
次のCPUが存在しない場合(ステップS16),その
タスクの処理選択情報を調べる(ステップS23)。処
理選択情報がタスクであれば,現在遷移位置テーブル5
7の現在遷移位置を「−1」とし,そのタスクがシステ
ムからなくなったことを記し(ステップS24),その
後,ステップS21へ進む。処理選択情報がタスクでは
なく,システム全体であれば,システム全体を停止させ
て処理を終了する(ステップS25)。In the process of step S15, the CPU which operates the next task is checked from the transition information.
If the next CPU does not exist (step S16), the process selection information of the task is checked (step S23). If the process selection information is a task, the current transition position table 5
The current transition position of No. 7 is set to "-1" to indicate that the task has disappeared from the system (step S24), and thereafter, the process proceeds to step S21. If the process selection information is not a task but the entire system, the entire system is stopped and the process is terminated (step S25).
【0043】以上の実施の形態で説明したように,再構
成テーブル54を各CPUのローカルメモリ32に配置
し,現在遷移位置テーブル57を共有メモリ空間に配置
することによって,再構成テーブル54へのアクセスの
高速化と現在遷移位置の管理の容易化を実現することが
でき,好適なフォールトトレラント・システムを構築す
ることができる。しかし,再構成テーブル54と現在遷
移位置テーブル57とを,必ずしもローカルメモリ32
と共有メモリ空間とに分けて配置しなければならないわ
けではなく,例えばローカルメモリ32または共有メモ
リ空間のいずれかにこれらのテーブルを共通に設けて
も,本発明を実施することができる。As described in the above embodiment, the reconfiguration table 54 is arranged in the local memory 32 of each CPU, and the current transition position table 57 is arranged in the shared memory space. It is possible to realize high-speed access and easy management of the current transition position, and to construct a suitable fault-tolerant system. However, the reconfiguration table 54 and the current transition position table 57 are not necessarily stored in the local memory 32.
However, the present invention can be implemented even if these tables are provided in common in either the local memory 32 or the shared memory space, for example.
【0044】[0044]
【実施例】次に,入力されたデータを加工して出力する
以下のようなタスクを持つシステムを例にして,本発明
の実施例の処理動作を説明する。このシステムは4つの
CPU1〜CPU4から構成されており,CPU1とC
PU3には,入力装置を制御できるコントローラが配置
され,CPU2とCPU4には出力装置を制御するコン
トローラが配置されているとする。Next, the processing operation of an embodiment of the present invention will be described with reference to a system having the following tasks for processing input data and outputting the processed data. This system is composed of four CPU1 to CPU4.
It is assumed that a controller capable of controlling an input device is arranged in PU3, and a controller controlling an output device is arranged in CPU2 and CPU4.
【0045】本システムで稼働するタスクは, ・入力処理タスク ・出力処理タスク ・データ加工マスタタスク ・データ加工サブタスク である。The tasks that operate in this system are: an input processing task, an output processing task, a data processing master task, and a data processing subtask.
【0046】図7に,初期状態におけるタスクの構成例
を示す。入力処理タスクはCPU1で,出力処理タスク
はCPU2で稼働させる。データを加工する処理は分割
して各CPUに分散させ,データ加工マスタタスクはC
PU1に配置し,実際にデータを加工するデータ加工サ
ブタスクは,すべてのCPUにそれぞれ配置して並列に
動作させる。FIG. 7 shows a configuration example of a task in an initial state. The input processing task is operated by the CPU 1 and the output processing task is operated by the CPU 2. The data processing is divided and distributed to each CPU.
The data processing subtasks arranged in the PU1 and actually processing data are arranged in all the CPUs and operated in parallel.
【0047】また,データ加工マスタタスクは,CPU
2,CPU3,CPU4で待機させ,入力処理タスクは
CPU3で,出力処理タスクはCPU4で,それぞれ待
機させる。The data processing master task is a CPU
2, the CPU 3 and the CPU 4 wait; the input processing task is the CPU 3; the output processing task is the CPU 4;
【0048】図8に,再構成テーブルおよび現在遷移位
置テーブルの設定例を示す。再構成テーブル54のタス
クID,遷移情報,処理選択の情報を,図8に示すよう
に設定して各CPUに配置する。再構成テーブル54
は,あらかじめプログラム中に組み込んでおいてもよ
い。入力処理タスクについては,CPU1が故障した場
合にはCPU3が引き継ぎ,引き継ぐCPUがない場合
にはシステム全体の処理を停止するように設定されてい
る。FIG. 8 shows a setting example of the reconfiguration table and the current transition position table. The task ID, transition information, and process selection information of the reconfiguration table 54 are set as shown in FIG. Reconstruction table 54
May be incorporated in the program in advance. The input processing task is set so that when the CPU 1 breaks down, the CPU 3 takes over, and when there is no CPU to take over, the processing of the entire system is stopped.
【0049】出力処理タスクについては,CPU2が故
障した場合にはCPU4が引き継ぎ,これも引き継ぐC
PUがない場合にはシステム全体の処理を停止するよう
に設定されている。データ加工マスタタスクは,稼働し
ているCPUが故障すると,CPU1,CPU2,CP
U3,CPU4の順番で順次使用可能なCPUに処理が
引き継がれ,使用可能なCPUがなくなると,システム
全体の処理を停止するように設定されている。データ加
工サブタスク1は,CPU1が故障しても他のCPUは
引き継がず,そのタスク処理を停止するように設定され
ている。データ加工サブタスク2,3,4も,それぞれ
動作しているCPU2,CPU3,CPU4が故障する
と,そのタスクは引き継がれない。When the CPU 2 fails, the CPU 4 takes over the output processing task.
When there is no PU, the processing of the entire system is set to be stopped. When the operating CPU fails, the data processing master task executes the CPU1, CPU2, CP
The processing is taken over by the CPUs that can be sequentially used in the order of U3 and CPU4, and when there are no more usable CPUs, the processing of the entire system is stopped. The data processing subtask 1 is set so that even if the CPU 1 fails, the other CPUs do not take over and stop the task processing. The data processing subtasks 2, 3, and 4 do not take over if the operating CPUs 2, 3, and 4 fail.
【0050】現在遷移位置テーブル57は,共有メモリ
空間の領域に割り当て,各現在遷移位置(各タスクが現
在どのCPU上で稼働しているのかを示すための遷移情
報の系列中の位置)は,システムの初期化時にすべて
「1」に設定される。The current transition position table 57 is allocated to an area of the shared memory space, and each current transition position (a position in a sequence of transition information for indicating on which CPU each task is currently operating) is: All are set to "1" at system initialization.
【0051】今,CPU2に故障が発生し,CPU2を
除いた構成でシステムを構成し直す場合,CPU1,C
PU3,CPU4は,再構成テーブル54の遷移情報と
現在遷移位置テーブル57の現在遷移位置とを参照し
て,CPU2上で稼働していたタスクを調べる。これに
より,CPU2上で稼働していたタスクは,「出力処理
タスク」と「データ加工サブタスク2」であること,お
よび,出力処理タスクはCPU4が引き継ぎ,「データ
加工サブタスク2」は引き継ぐ必要がないことがわか
る。Now, if a failure occurs in the CPU 2 and the system is reconfigured with the configuration excluding the CPU 2, the CPUs 1 and 2
The PU 3 and the CPU 4 refer to the transition information of the reconfiguration table 54 and the current transition position of the current transition position table 57 to check the task running on the CPU 2. Thus, the tasks operating on the CPU 2 are the “output processing task” and the “data processing subtask 2”, and the output processing task is taken over by the CPU 4 and the “data processing subtask 2” does not need to take over. You can see that.
【0052】遷移情報に従って,「データ加工サブタス
ク2」の現在遷移位置に「−1」を設定する。CPU4
は,「出力処理タスク」を引き継ぐために待機させてい
たタスクを起動し,「出力処理タスク」がCPU4に引
き継がれたことを示すために,現在遷移位置テーブル5
7における現在遷移位置を「2」に更新する。この状態
のタスク構成は,図9に示すようになる。また,更新後
の再構成テーブル54および現在遷移位置テーブル57
は,図10に示すようになる。According to the transition information, "-1" is set at the current transition position of "data processing subtask 2". CPU4
Starts the task that has been waiting to take over the “output processing task”, and displays the current transition position table 5 to indicate that the “output processing task” has been taken over by the CPU 4.
7 is updated to “2”. The task configuration in this state is as shown in FIG. The reconfiguration table 54 and the current transition position table 57 after the update
Is as shown in FIG.
【0053】その後さらに,CPU1に故障が発生し
て,CPU1を除いてシステムを構成し直す場合,CP
U3,CPU4は,現在遷移位置テーブル57の現在遷
移位置と再構成テーブル54の遷移情報とを参照して,
CPU1で稼働していたタスクを調べ,CPU1で稼働
していたタスクが,「入力処理タスク」,「データ加工
マスタタスク」,「データ加工サブタスク1」であるこ
と,および「入力処理タスク」はCPU3が引き継ぐこ
と,「データ加工サブタスク1」は引き継ぐ必要がない
ことがわかる。また,「データ加工マスタタスク」はC
PU2が引き継ぐことがわかるが,CPU2は既に故障
しているので,さらに次の遷移情報を調べて,CPU3
が引き継ぐことを認識する。なお,CPU2が既に故障
しているかどうかは,共有メモリ空間のマルチCPU制
御領域56に記されているので,それによって認識す
る。Thereafter, if a failure occurs in the CPU 1 and the system is reconfigured except for the CPU 1, the CP
U3 and the CPU 4 refer to the current transition position in the current transition position table 57 and the transition information in the reconfiguration table 54, and
The task running on the CPU 1 is checked, and the tasks running on the CPU 1 are “input processing task”, “data processing master task”, and “data processing subtask 1”. It can be understood that the data processing subtask 1 does not need to be taken over. "Data processing master task" is C
It is known that PU2 takes over, but since CPU2 has already failed, the next transition information is further examined and CPU3 takes over.
Recognize that will take over. It should be noted that whether or not the CPU 2 has already failed is described in the multi-CPU control area 56 in the shared memory space, and is thereby recognized.
【0054】CPU3は,遷移情報から,「入力処理タ
スク」および「データ加工マスタタスク」を引き継ぐこ
とを認識すると,これらを引き継ぐために待機させてい
たタスクをそれぞれ起動して,「入力処理タスク」の現
在遷移位置を「2」に,「データ加工マスタタスク」の
現在遷移位置を「3」に更新する。また,「データ加工
サブタスク1」の現在遷移位置に「−1」を設定する。
この状態のタスク構成は,図11に示すようになる。ま
た,更新後の再構成テーブル54および現在遷移位置テ
ーブル57は,図12に示すようになる。When the CPU 3 recognizes that the “input processing task” and the “data processing master task” are to be taken over from the transition information, the CPU 3 activates the tasks that have been waiting to take over these tasks, and “input processing task” Is updated to “2”, and the current transition position of “data processing master task” is updated to “3”. Further, “−1” is set to the current transition position of “data processing subtask 1”.
The task configuration in this state is as shown in FIG. The updated reconfiguration table 54 and current transition position table 57 are as shown in FIG.
【0055】[0055]
【発明の効果】以上説明したように,本発明によれば,
マルチCPUシステムにおいて,故障したCPU上のタ
スクをどのCPUによって引き継ぐのかを,再構成テー
ブルにCPUの番号を羅列して記すことにより,容易に
引き継ぎの順序を指定することができ,さらに,現在ど
のCPU上でタスクが実行されているのかを示すこと
で,次に引き継ぐCPUを簡単に調べることができる。As described above, according to the present invention,
In a multi-CPU system, the order of the takeover can be easily specified by listing the CPU numbers in the reconfiguration table to indicate which CPU takes over the task on the failed CPU. By indicating whether a task is being executed on the CPU, it is possible to easily check the next CPU to take over.
【0056】これにより,遷移情報ですべてのCPUを
指定することによって,正常なCPUが最後の一つにな
るまで引き継ぐような指定や,特定のいくつかのCPU
だけが引き継ぎを行うような指定を,簡単に設定するこ
とができる。Thus, by specifying all CPUs in the transition information, it is possible to specify that a normal CPU takes over until it becomes the last one, or to specify some specific CPUs.
You can easily specify that only one will take over.
【0057】さらに,タスクごとの処理選択情報を再構
成テーブル中に持たせることにより,引き継ぐCPUが
なくなった場合にそのタスクだけを停止させたり,また
はシステム全体を停止させたりするような指定も,簡単
に設定することができる。Further, by giving the process selection information for each task in the reconfiguration table, it is possible to specify that only the task is stopped or the entire system is stopped when there is no CPU to take over. It can be set easily.
【0058】また,あらかじめ引き継ぐCPUを設定し
ておくため,タスクに必要なハードウェアを備えるCP
Uにだけ確実に引き継ぎを行わせることも可能になる。Further, since a CPU to be taken over is set in advance, a CP having hardware necessary for a task is provided.
It is also possible to ensure that only U takes over.
【図1】本発明の概要を示すブロック構成図である。FIG. 1 is a block diagram showing an outline of the present invention.
【図2】本発明の処理動作の流れの例を示す図である。FIG. 2 is a diagram showing an example of a flow of a processing operation of the present invention.
【図3】マルチCPUシステムの接続形態の例を示す図
である。FIG. 3 is a diagram illustrating an example of a connection form of a multi-CPU system.
【図4】疎結合型システムにおけるブロック構成例を示
す図である。FIG. 4 is a diagram illustrating an example of a block configuration in a loosely coupled system.
【図5】密結合型システムにおけるブロック構成例を示
す図である。FIG. 5 is a diagram illustrating an example of a block configuration in a tightly coupled system.
【図6】本発明をコンピュータによって実現させるため
のプログラムの処理フローチャートである。FIG. 6 is a processing flowchart of a program for realizing the present invention by a computer.
【図7】本発明の実施例の初期状態におけるタスクの構
成例を示す図である。FIG. 7 is a diagram illustrating a configuration example of a task in an initial state according to the embodiment of this invention.
【図8】本発明の実施例の再構成テーブルおよび現在遷
移位置テーブルの設定例を示す図である。FIG. 8 is a diagram illustrating a setting example of a reconfiguration table and a current transition position table according to the embodiment of this invention.
【図9】システムの各CPUのタスクの状態を説明する
ための図である。FIG. 9 is a diagram for explaining a state of a task of each CPU of the system.
【図10】更新後の再構成テーブルおよび現在遷移位置
テーブルの例を示す図である。FIG. 10 is a diagram illustrating an example of an updated reconfiguration table and a current transition position table.
【図11】システムの各CPUのタスクの状態を説明す
るための図である。FIG. 11 is a diagram for explaining a state of a task of each CPU of the system.
【図12】更新後の再構成テーブルおよび現在遷移位置
テーブルの例を示す図である。FIG. 12 is a diagram illustrating an example of an updated reconfiguration table and a current transition position table.
1 フォールトトレラント処理手段 11 引継判断部 12 待機タスク起動部 13 現在遷移位置更新部 2 再構成テーブル 3 待機用タスク 4 現在遷移位置テーブル REFERENCE SIGNS LIST 1 fault tolerant processing means 11 takeover determination unit 12 standby task activation unit 13 current transition position update unit 2 reconfiguration table 3 standby task 4 current transition position table
───────────────────────────────────────────────────── フロントページの続き (72)発明者 岡本 二朗 神奈川県川崎市中原区上小田中4丁目1番 1号 富士通株式会社内 Fターム(参考) 5B034 BB11 CC01 5B045 BB02 BB12 GG06 JJ09 JJ13 JJ44 5B098 AA10 GA04 JJ00 ────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Jiro Okamoto 4-1-1, Kamidadanaka, Nakahara-ku, Kawasaki-shi, Kanagawa F-term in Fujitsu Limited (Reference) 5B034 BB11 CC01 5B045 BB02 BB12 GG06 JJ09 JJ13 JJ44 5B098 AA10 GA04 JJ00
Claims (6)
タスクが複数のプロセッサに分散して配置され,各プロ
セッサにおいて処理されるマルチプロセッサシステムに
おいて,タスクごとに,プロセッサの故障時にその故障
プロセッサで動作していたタスクを引き継ぐプロセッサ
の系列を定義した遷移情報と,タスクが現在どのプロセ
ッサ上で動作しているのかを示す現在遷移位置とを記憶
する記憶手段と,あるプロセッサが故障した場合に,前
記遷移情報および前記現在遷移位置の情報にもとづい
て,その故障プロセッサで動作していたタスクが自プロ
セッサで引き継ぐべきタスクであるかどうかを判断する
手段と,判断の結果,自プロセッサで引き継ぐものであ
る場合には,そのタスクの引き継ぎを行い,自プロセッ
サで引き継いだタスクを動作させる手段とを備えること
を特徴とするフォールトトレラント・システム。In a multiprocessor system in which a plurality of tasks, which are execution processing units of a processor, are distributed and arranged in a plurality of processors, and each processor performs processing, each task operates on a failed processor when the processor fails. Storage means for storing transition information defining a series of processors that take over a task that has been performed, and a current transition position indicating on which processor the task is currently operating; Means for determining, based on the transition information and the information on the current transition position, whether the task operating on the failed processor is a task to be taken over by the own processor, and, as a result of the determination, taking over by the own processor. In that case, the task is taken over and the task taken over by the local processor Means for operating the fault tolerant system.
セッサがない場合に,そのタスクの停止またはシステム
全体の停止のいずれかを示す処理選択情報を記憶し,前
記プロセッサは,故障したプロセッサで動作していたタ
スクを引き継ぐプロセッサがない場合に,前記処理選択
情報にもとづいてタスクまたはシステム全体を停止させ
ることを特徴とする請求項1記載のフォールトトレラン
ト・システム。2. The storage means stores, when there is no processor taking over a task, processing selection information indicating either a halt of the task or a halt of the entire system, and the processor operates on a failed processor. 2. The fault tolerant system according to claim 1, wherein when there is no processor taking over the task, the task or the entire system is stopped based on the processing selection information.
タスクが複数のプロセッサに分散して配置され,各プロ
セッサにおいて処理されるマルチプロセッサシステムに
おけるフォールトトレラント処理方法において,タスク
ごとに,プロセッサの故障時にその故障プロセッサで動
作していたタスクを引き継ぐプロセッサの系列を定義し
た遷移情報と,タスクが現在どのプロセッサ上で動作し
ているのかを示す現在遷移位置とを記憶する記憶手段を
用い,あるプロセッサが故障した場合に,前記記憶手段
を参照し,前記遷移情報および前記現在遷移位置の情報
にもとづいて,その故障プロセッサで動作していたタス
クが自プロセッサで引き継ぐべきタスクであるかどうか
を判断し,判断した結果,自プロセッサで引き継ぐもの
である場合には,そのタスクの引き継ぎを行い,自プロ
セッサで引き継いだタスクを動作させることを特徴とす
るフォールトトレラント処理方法。3. A fault-tolerant processing method in a multiprocessor system in which a plurality of tasks, which are execution processing units of a processor, are distributed and arranged in a plurality of processors, and each of the tasks is executed when a processor fails. Using a storage means for storing transition information defining a series of processors taking over the task that was operating on the failed processor and a current transition position indicating on which processor the task is currently operating, In the event of a failure, the processor refers to the storage means and determines whether the task operating on the failed processor is a task to be taken over by the own processor based on the transition information and the information on the current transition position, If the result of the determination is that the processor will take over, the processor A fault-tolerant processing method characterized by taking over another task and operating the task taken over by its own processor.
に,そのタスクの停止またはシステム全体の停止のいず
れかを示す処理選択情報を前記記憶手段に記憶してお
き,故障したプロセッサで動作していたタスクを引き継
ぐプロセッサがない場合に,前記処理選択情報にもとづ
いてタスクまたはシステム全体を停止させることを特徴
とする請求項3記載のフォールトトレラント処理方法。4. When there is no processor taking over a task, processing selection information indicating either a halt of the task or a halt of the entire system is stored in the storage means, and the task operating on the failed processor is stored. 4. The fault tolerant processing method according to claim 3, wherein when there is no processor taking over the task, the task or the entire system is stopped based on the processing selection information.
ールトトレラント処理方法をコンピュータによって実現
するためのプログラムを記録した記録媒体であって,タ
スクごとに,プロセッサの故障時にその故障プロセッサ
で動作していたタスクを引き継ぐプロセッサの系列を定
義した遷移情報と,タスクが現在どのプロセッサ上で動
作しているのかを示す現在遷移位置とを記憶する記憶手
段を用い,あるプロセッサが故障した場合に,前記記憶
手段を参照し,前記遷移情報および前記現在遷移位置の
情報にもとづいて,その故障プロセッサで動作していた
タスクが自プロセッサで引き継ぐべきタスクであるかど
うかを判断し,判断した結果,自プロセッサで引き継ぐ
ものである場合には,そのタスクの引き継ぎを行い,自
プロセッサで引き継いだタスクを動作させる処理を,コ
ンピュータに実行させるプログラムを記録したことを特
徴とするフォールトトレラント制御用プログラム記録媒
体。5. A recording medium on which a program for realizing a fault-tolerant processing method in a multiprocessor system by a computer is recorded, wherein for each task, a processor taking over the task that was operating on the failed processor when the processor failed. Using storage means for storing the transition information defining the series of and the current transition position indicating on which processor the task is currently operating. When a certain processor fails, the storage means is referred to. Based on the transition information and the information on the current transition position, determine whether the task operating on the failed processor is a task to be taken over by the own processor, and as a result of the determination, take over by the own processor Takes over the task, and takes over on its own processor. A program recording medium for fault-tolerant control, characterized by recording a program for causing a computer to execute a process for operating a task.
御用プログラム記録媒体において,前記プログラムは,
前記記憶手段に前記遷移情報とともに記憶された処理選
択情報であって,タスクの停止またはシステム全体の停
止のいずれかを示す処理選択情報にもとづいて,故障し
たプロセッサで動作していたタスクを引き継ぐプロセッ
サがない場合に,タスクまたはシステム全体を停止させ
る処理を,コンピュータに実行させるプログラムを含む
ことを特徴とするフォールトトレラント制御用プログラ
ム記録媒体。6. The fault-tolerant control program recording medium according to claim 5, wherein the program comprises:
A processor that takes over the task that has been operating on the failed processor based on the process selection information stored in the storage unit together with the transition information, the process selection information indicating either a task halt or a system halt. A program recording medium for fault-tolerant control, characterized by including a program for causing a computer to execute a process for stopping a task or the entire system when there is no such program.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11191135A JP2001022599A (en) | 1999-07-06 | 1999-07-06 | Fault tolerant system, fault tolerant processing method, and fault tolerant control program recording medium |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11191135A JP2001022599A (en) | 1999-07-06 | 1999-07-06 | Fault tolerant system, fault tolerant processing method, and fault tolerant control program recording medium |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2001022599A true JP2001022599A (en) | 2001-01-26 |
Family
ID=16269475
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP11191135A Withdrawn JP2001022599A (en) | 1999-07-06 | 1999-07-06 | Fault tolerant system, fault tolerant processing method, and fault tolerant control program recording medium |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2001022599A (en) |
Cited By (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2005076134A1 (en) * | 2004-02-09 | 2005-08-18 | Matsushita Electric Industrial Co., Ltd. | Electronic device for automatically continuing to provide service |
| WO2008107934A1 (en) * | 2007-03-07 | 2008-09-12 | Fujitsu Limited | Multiprocessor system |
| JP2008217665A (en) * | 2007-03-07 | 2008-09-18 | Nec Corp | Multiprocessor system, task scheduling method and task scheduling program |
| JP2008234117A (en) * | 2007-03-19 | 2008-10-02 | Fujitsu Ltd | Multiprocessor system and recovery method in multiprocessor system |
| JP2009527828A (en) * | 2006-02-17 | 2009-07-30 | クゥアルコム・インコーポレイテッド | System and method for multiprocessor application support |
| JP2009205696A (en) * | 2009-06-15 | 2009-09-10 | Hitachi Ltd | Control method of multi-core processor computer |
| WO2010053169A1 (en) * | 2008-11-10 | 2010-05-14 | 日本電気株式会社 | Job execution system, method and program |
| JP2010205005A (en) * | 2009-03-04 | 2010-09-16 | Nec Corp | Common resource management system, method and program |
| US8571782B2 (en) | 2003-01-31 | 2013-10-29 | Robert Bosch Gmbh | Computer system for use in vehicles |
| CN103761157A (en) * | 2014-01-21 | 2014-04-30 | 国家电网公司 | Method for implementing system fault-tolerant mechanism on basis of multitask patrol strategy |
| JP2016134130A (en) * | 2015-01-22 | 2016-07-25 | 三菱電機株式会社 | Multi-ring network |
| US10579489B2 (en) | 2015-07-30 | 2020-03-03 | Mitsubishi Electric Corporation | Program execution device, program execution system, and program execution method |
-
1999
- 1999-07-06 JP JP11191135A patent/JP2001022599A/en not_active Withdrawn
Cited By (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8571782B2 (en) | 2003-01-31 | 2013-10-29 | Robert Bosch Gmbh | Computer system for use in vehicles |
| WO2005076134A1 (en) * | 2004-02-09 | 2005-08-18 | Matsushita Electric Industrial Co., Ltd. | Electronic device for automatically continuing to provide service |
| JP2009527828A (en) * | 2006-02-17 | 2009-07-30 | クゥアルコム・インコーポレイテッド | System and method for multiprocessor application support |
| WO2008107934A1 (en) * | 2007-03-07 | 2008-09-12 | Fujitsu Limited | Multiprocessor system |
| JP2008217665A (en) * | 2007-03-07 | 2008-09-18 | Nec Corp | Multiprocessor system, task scheduling method and task scheduling program |
| JP2008234117A (en) * | 2007-03-19 | 2008-10-02 | Fujitsu Ltd | Multiprocessor system and recovery method in multiprocessor system |
| WO2010053169A1 (en) * | 2008-11-10 | 2010-05-14 | 日本電気株式会社 | Job execution system, method and program |
| JP2010205005A (en) * | 2009-03-04 | 2010-09-16 | Nec Corp | Common resource management system, method and program |
| JP2009205696A (en) * | 2009-06-15 | 2009-09-10 | Hitachi Ltd | Control method of multi-core processor computer |
| CN103761157A (en) * | 2014-01-21 | 2014-04-30 | 国家电网公司 | Method for implementing system fault-tolerant mechanism on basis of multitask patrol strategy |
| JP2016134130A (en) * | 2015-01-22 | 2016-07-25 | 三菱電機株式会社 | Multi-ring network |
| US10579489B2 (en) | 2015-07-30 | 2020-03-03 | Mitsubishi Electric Corporation | Program execution device, program execution system, and program execution method |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11755435B2 (en) | Cluster availability management | |
| JP4923990B2 (en) | Failover method and its computer system. | |
| JP3954088B2 (en) | Mechanism for safely executing system firmware update on logically partitioned (LPAR) computers | |
| US5805790A (en) | Fault recovery method and apparatus | |
| JP4842210B2 (en) | Failover method, computer system, management server and spare server setting method | |
| US7007192B2 (en) | Information processing system, and method and program for controlling the same | |
| JP5476481B2 (en) | Dealing with node failures | |
| JPH0831047B2 (en) | Apparatus and method for inter-partition control in a logical partition data processor | |
| US7774785B2 (en) | Cluster code management | |
| JPH11232237A (en) | Information processing apparatus having crossbar switch and crossbar switch control method | |
| JP2003131900A (en) | Server system operation management method | |
| JP2009140194A (en) | How to set up a disaster recovery environment | |
| WO2021004256A1 (en) | Node switching method in node failure and related device | |
| EP1573978B1 (en) | System and method for programming hyper transport routing tables on multiprocessor systems | |
| US7743372B2 (en) | Dynamic cluster code updating in logical partitions | |
| JPH0394321A (en) | Access control method | |
| JP2020035374A (en) | Availability systems, methods, and programs | |
| JP2001022599A (en) | Fault tolerant system, fault tolerant processing method, and fault tolerant control program recording medium | |
| JP2007172334A (en) | Method, system and program for securing redundancy of parallel computing system | |
| US20140067771A2 (en) | Management of a Scalable Computer System | |
| US20020073409A1 (en) | Telecommunications platform with processor cluster and method of operation thereof | |
| US20070005861A1 (en) | Fault tolerant computer system | |
| CN112596371A (en) | Control card switching method and device, electronic equipment and storage medium | |
| JP2000259434A (en) | Logical partitioning computer system | |
| JP2001027951A (en) | File loading device and recording medium in multiprocessor information processing system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20061003 |