JP2555227B2 - Message processing based data processing device - Google Patents
Message processing based data processing deviceInfo
- Publication number
- JP2555227B2 JP2555227B2 JP3037097A JP3709791A JP2555227B2 JP 2555227 B2 JP2555227 B2 JP 2555227B2 JP 3037097 A JP3037097 A JP 3037097A JP 3709791 A JP3709791 A JP 3709791A JP 2555227 B2 JP2555227 B2 JP 2555227B2
- Authority
- JP
- Japan
- Prior art keywords
- message
- space
- thread
- processing
- volatile memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims description 47
- 230000005540 biological transmission Effects 0.000 claims description 33
- 238000004891 communication Methods 0.000 claims description 17
- 238000000034 method Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 4
- 238000007796 conventional method Methods 0.000 description 2
- 239000000872 buffer Substances 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Landscapes
- Computer And Data Communications (AREA)
Description
【0001】[0001]
【産業上の利用分野】本発明は,グローバルサービス間
の相互要求をメッセージ通信により実現するシステムに
おいて,非同期メッセージ送信を行うとともに,不揮発
性メモリを使用してメッセージの喪失を防止したメッセ
ージ通信ベースのデータ処理装置に関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a message communication-based system that realizes asynchronous message transmission in a system that realizes mutual requests between global services by message communication and uses a non-volatile memory to prevent message loss. The present invention relates to a data processing device.
【0002】[0002]
【従来の技術】図8は,従来技術の説明図である。異な
るアドレス空間上で動作するプログラム間の通信方法と
して,メッセージ通信手段を使用する計算機システムが
用いられている。図8の(イ)は,そのようなメッセー
ジ通信ベースのデータ処理装置におけるメッセージ通信
環境を示している。図8の(イ)において,80は呼び
出し元のプログラムが動作するアドレス空間,81は呼
び出し先のプログラムが動作するアドレス空間,11,
21はアドレス空間ごとに存在するポート,82〜84
はプログラムの実行単位であるスレッドを表す。2. Description of the Related Art FIG. 8 is an explanatory diagram of a conventional technique. A computer system using a message communication means is used as a communication method between programs operating in different address spaces. FIG. 8A shows a message communication environment in such a message communication-based data processing device. In FIG. 8A, 80 is an address space in which the caller program operates, 81 is an address space in which the callee program operates, 11,
21 is a port existing in each address space, 82 to 84
Represents a thread that is the execution unit of the program.
【0003】ポート11,21は,プログラムが他の空
間とのメッセージのやりとりを行うための窓口である。
スレッド82〜84は,CPUの実行権が与えられるプ
ログラムの実行単位であって,その単位でハードウェア
・レジスタ,スタック等のプログラム実行環境が切り換
えられるようになっているものである。The ports 11 and 21 are windows for programs to exchange messages with other spaces.
The threads 82 to 84 are execution units of a program to which the execution right of the CPU is given, and the program execution environment such as hardware registers and stacks can be switched in that unit.
【0004】図8の(イ)に示すようなメッセージ通信
ベースのデータ処理装置では,例えば空間80上で動作
するスレッド82が,メッセージM2を送信すると,呼
び出し先のプログラムが動作するアドレス空間81のポ
ート21で受信し,そのポートに属するスレッド83,
84のいずれか空いているスレッド上で呼び出し先のプ
ログラムを動作させる。In the message communication-based data processing device as shown in FIG. 8A, for example, when a thread 82 operating in the space 80 transmits a message M2, a call destination program operates in the address space 81. A thread 83 that receives at port 21 and belongs to that port,
The called program is run on any free thread of 84.
【0005】システム内で固有な空間で走行し,空間内
にシステム資源を閉じ込めてシステム全体の資源を制御
するサービスプログラムを,グローバルサービス(G
S)という。GSは,例えばファイルの排他制御を行う
サービスプログラムや,プリンタへの印刷制御を行うよ
うなサービスプログラムである。ここでは,運用時に実
際にサービスを行う現用系GSと,障害時に現用に切り
替えられる待機系GSとを,1つのGSとみなす。現用
系GSがダウンした場合には,待機系GSが処理を引き
継ぐ。A service program that runs in a unique space within the system, confines system resources in the space, and controls the resources of the entire system is called a global service (G
S). The GS is, for example, a service program that performs exclusive control of files or a service program that controls printing to a printer. Here, the active GS that actually performs the service during operation and the standby GS that is switched to the active when a failure occurs are regarded as one GS. When the active GS goes down, the standby GS takes over the processing.
【0006】GSで動作するプログラムと,他のGSで
動作するプログラム間の通信手段として,メッセージ通
信を使用する場合,呼び出し先のGS内の処理のため
に,呼び出し元のGSが再び呼び出されるような処理を
行うと,互いのGSがメッセージ受信待ちの状態となっ
て,両GSがGSとしてのサービス機能を停止してしま
うことがある。When message communication is used as a communication means between a program operating in a GS and a program operating in another GS, the calling GS is called again for the processing in the called GS. If such a process is performed, both GSs may be in a message waiting state and both GSs may stop the service function as GSs.
【0007】図8の(ロ)は,そのデッドロック状態の
例を示している。すなわち,呼び出し元のGS1空間9
0がメッセージM1を受け取り,その処理の中で呼び出
し先のGS2空間91にメッセージM2による要求を出
す。GS2空間91では,スレッド93により,そのメ
ッセージM2の処理のために,さらにGS1空間90に
対しメッセージM3による要求を出す。FIG. 8B shows an example of the deadlock state. That is, the calling GS1 space 9
0 receives the message M1 and issues a request by the message M2 to the called GS2 space 91 in the processing. In the GS2 space 91, the thread 93 further issues a request by the message M3 to the GS1 space 90 for processing the message M2.
【0008】GS1空間90では,GS2空間91に対
するメッセージM2の返信メッセージ待ちのため,スレ
ッド92が停止しており,空きスレッドがないと,メッ
セージM3の受信処理が待たされる。これにより両GS
1,GS2は,どちらも動けない状態となり,デッドロ
ックが発生する。In the GS1 space 90, the thread 92 is stopped because it waits for a reply message of the message M2 to the GS2 space 91, and if there is no empty thread, the receiving process of the message M3 is kept waiting. As a result, both GS
Both 1 and GS2 become immobile and deadlock occurs.
【0009】[0009]
【発明が解決しようとする課題】以上のようなデッドロ
ックを回避するためには,返信メッセージを待たないよ
うにするなどして,相互にメッセージの受信待ちをする
スレッドをなくすことが必要となる。しかし,処理の同
期をとらないと,例えば現用系GSが障害によりダウン
して,サービスを待機系GSに切り替えた場合に,メッ
セージによる処理要求が中途半端な状態になり,メッセ
ージの送信もれが生じることがあるという新たな問題が
発生する。In order to avoid the deadlock described above, it is necessary to eliminate the threads waiting for the mutual message reception by, for example, not waiting for the reply message. . However, if the processes are not synchronized, for example, when the active system GS goes down due to a failure and the service is switched to the standby system GS, the processing request by the message becomes halfway, and the message may be missed. There is a new problem that may occur.
【0010】本発明は上記問題点の解決を図り,メッセ
ージの受信待ちによるデッドロックを回避するととも
に,呼び出し元GSのダウン時にも,メッセージの送信
もれが生じないようにする手段を提供することを目的と
している。The present invention solves the above problems and provides a means for avoiding a deadlock due to waiting for a message to be received and for preventing a message from being missed even when the caller GS is down. It is an object.
【0011】[0011]
【課題を解決するための手段】図1は,本発明の原理構
成図である。図1において,1はCPUおよび主メモリ
などからなる計算機,10は現用系GSが動作するGS
1現用空間,10’は待機系GSが動作するGS1待機
空間,11は受信するメッセージの窓口となるポート,
12はポートに属するスレッド,13はメッセージ送信
を専用に処理する送信専用スレッド,14はメッセージ
送信時に動作する不揮発性メモリ書出部,15は待機系
への切り替わり時に動作する不揮発性メモリ読込部,1
6はGSのダウンが発生しても記憶情報が失われないよ
うになっている不揮発性メモリ,17はメッセージ送信
情報,20は現用系GSが動作するGS2現用空間,2
0’は待機系GSが動作するGS2待機空間,21はG
S2現用空間のポート,22はポートに属するスレッド
を表す。FIG. 1 is a block diagram showing the principle of the present invention. In FIG. 1, reference numeral 1 is a computer including a CPU and main memory, and 10 is a GS in which an active GS operates.
1 working space, 10 'is a GS1 standby space in which the standby GS operates, 11 is a port serving as a window for messages to be received,
Reference numeral 12 is a thread belonging to a port, 13 is a transmission-dedicated thread dedicated to processing message transmission, 14 is a non-volatile memory writing section that operates when a message is transmitted, 15 is a non-volatile memory reading section that operates when switching to a standby system, 1
6 is a non-volatile memory in which stored information is not lost even if GS goes down, 17 is message transmission information, 20 is a GS2 working space in which the working GS operates, 2
0'is a GS2 standby space in which the standby GS operates, 21 is G
A port of the S2 active space, 22 represents a thread belonging to the port.
【0012】GS1現用空間10およびGS2現用空間
20は,サービスプログラムが動作する空間であり,そ
れぞれメッセージ通信により処理依頼および処理結果の
通知などを行う。The GS1 active space 10 and the GS2 active space 20 are spaces in which the service programs operate, and perform processing requests and notification of processing results by message communication, respectively.
【0013】本発明では,GS1現用空間10からGS
2現用空間20へメッセージを送信して処理を依頼する
場合に,呼び出し元のGS1現用空間10におけるポー
トに属するスレッド12と,メッセージを送信する送信
専用スレッド13とを別に設け,ポートに属するスレッ
ド12からの要求を非同期型で行う。In the present invention, GS1 working space 10 to GS
2 When sending a message to the active space 20 to request processing, a thread 12 belonging to the port in the calling GS1 active space 10 and a send-only thread 13 for sending the message are separately provided, and the thread 12 belonging to the port is provided. Request from is done asynchronously.
【0014】送信専用スレッド13は,不揮発性メモリ
書出部14と不揮発性メモリ読込部15とを備えてい
る。送信専用スレッド13は,ポートに属するスレッド
12からメッセージの送信依頼があると,不揮発性メモ
リ書出部14によって,不揮発性メモリ16にメッセー
ジ送信情報17を書き出して保存し,メッセージをGS
2現用空間20へ送る。The transmission-only thread 13 comprises a non-volatile memory writing section 14 and a non-volatile memory reading section 15. When a message transmission request is issued from the thread 12 belonging to the port, the transmission-only thread 13 writes the message transmission information 17 to the non-volatile memory 16 and stores it by the non-volatile memory writing unit 14, and stores the message in
2 Send to the working space 20.
【0015】不揮発性メモリ読込部15は通常の状態で
は動作せず,障害発生時にGS1待機空間10’上の送
信専用スレッド13で動作する。障害によりサービスを
行う空間がGS1現用空間10からGS1待機空間1
0’に切り替えられた場合に,不揮発性メモリ読込部1
5は,不揮発性メモリ16に保存されているメッセージ
送信情報17を読み出し,GS2現用空間20またはG
S2待機空間20’へ送信する。The non-volatile memory reading unit 15 does not operate in a normal state, but operates in the transmission-only thread 13 in the GS1 standby space 10 'when a failure occurs. GS1 working space 10 to GS1 waiting space 1
Non-volatile memory reading unit 1 when switched to 0 '
5 reads the message transmission information 17 stored in the non-volatile memory 16 and reads the GS2 working space 20 or G
Send to S2 standby space 20 '.
【0016】[0016]
【作用】本発明では,呼び出し元のGS1現用空間10
から呼び出し先のGS2現用空間20への要求を,非同
期型の処理として扱う。そのため,呼び出し元のGS1
現用空間10に,呼び出し先へメッセージ送信を行うた
めの専用の送信専用スレッド13を作成し,ポートに属
するスレッド12で動作するプログラムでは,呼び出し
先GSへのメッセージに対する返信を待たずに,処理を
完了させる。すなわち,呼び出し先GSへの要求の完了
に関係なく,呼び出し元GSのポートに属するスレッド
12の処理を完了させてしまう。In the present invention, the calling GS1 working space 10
A request from the callee to the GS2 working space 20 of the callee is treated as an asynchronous process. Therefore, the calling GS1
In the active space 10, a dedicated transmission-dedicated thread 13 for transmitting a message to the call destination is created, and the program operating in the thread 12 belonging to the port executes processing without waiting for a reply to the message to the call destination GS. Let it complete. That is, the processing of the thread 12 belonging to the port of the call source GS is completed regardless of the completion of the request to the call destination GS.
【0017】これにより,呼び出し元GSと呼び出し先
GSとの間のメッセージ受信待ちによるデッドロックが
回避される。As a result, a deadlock due to waiting for a message to be received between the calling GS and the called GS is avoided.
【0018】以上の処理だけでは,呼び出し元GSがダ
ウンした場合に,送信専用スレッド13で処理中であっ
たメッセージ送信処理が抜けてしまうことがある。それ
に対処するため,送信専用スレッド13では,メッセー
ジ送信を行う前に,メッセージの内容を不揮発性メモリ
16に保存し,もし呼び出し元GSがダウンした場合に
は,待機系GSで不揮発性メモリ読込部15を動作させ
ることにより,メッセージ送信情報17を読み,この情
報をもとに再度呼び出し先GSへのメッセージ送信処理
を行う。これによって,呼び出し先GSへのメッセージ
送信もれを回避することができる。With the above processing alone, when the caller GS goes down, the message transmission processing that was being processed by the transmission dedicated thread 13 may be omitted. In order to deal with this, the transmission-only thread 13 saves the content of the message in the non-volatile memory 16 before sending the message, and if the calling source GS goes down, the non-volatile memory reading unit in the standby GS. The message transmission information 17 is read by operating 15 and message transmission processing to the callee GS is performed again based on this information. As a result, it is possible to avoid the message transmission failure to the call destination GS.
【0019】[0019]
【実施例】本発明の実施例に係るシステムは,通常の主
記憶装置を備えた単一プロセッサまたはマルチプロセッ
サによる汎用計算機と,ダウン時にも内容が保証される
不揮発性メモリとを持つハードウェア構成になってい
る。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A system according to an embodiment of the present invention is a hardware configuration having a general-purpose computer with a single processor or multiprocessor equipped with an ordinary main memory and a non-volatile memory whose contents are guaranteed even when down. It has become.
【0020】本発明の実施に必要となるソフトウェア
は,例えば図2に示すようなプログラム群から構成され
る。メッセージ通信制御部30は,スーパバイザで動作
するメッセージ通信の制御を行うプログラムである。不
揮発性メモリ制御部31は,図1に示す不揮発性メモリ
16への書き出し機能および読み込み機能を提供するス
ーパバイザのプログラムである。これらのスーパバイザ
の処理機能は周知であるので,ここでの詳しい説明は省
略する。The software necessary for implementing the present invention is composed of a program group as shown in FIG. 2, for example. The message communication control unit 30 is a program that controls message communication that operates in the supervisor. The non-volatile memory control unit 31 is a supervisor program that provides a writing function and a reading function for the non-volatile memory 16 shown in FIG. Since the processing functions of these supervisors are well known, detailed description thereof is omitted here.
【0021】GS1現用空間10とGS1待機空間1
0’,またGS2現用空間20とGS2待機空間20’
では,それぞれ同じプログラムが動作する。非同期メッ
セージ送信部32,32’,不揮発性メモリ書出部1
4,不揮発性メモリ読込部15は,図1の送信専用スレ
ッド13上で動作するプログラムであり,メッセージ受
信部33,33’は,ポートに属するスレッド22上で
動作するプログラムである。GS1 working space 10 and GS1 standby space 1
0 ', GS2 working space 20 and GS2 standby space 20'
Then, the same program works respectively. Asynchronous message transmission unit 32, 32 ', non-volatile memory writing unit 1
4, the non-volatile memory reading unit 15 is a program that operates on the transmission-only thread 13 of FIG. 1, and the message receiving units 33 and 33 ′ are programs that operate on the thread 22 belonging to the port.
【0022】非同期メッセージ送信部32は,メッセー
ジ通信制御部30を介して,GS2現用空間20へメッ
セージを送信する。GS2現用空間20では,メッセー
ジ受信部33が,メッセージの受け取り窓口となってい
るポートからメッセージを受け取る。The asynchronous message transmitter 32 transmits a message to the GS2 working space 20 via the message communication controller 30. In the GS2 active space 20, the message receiving unit 33 receives a message from the port serving as a message receiving window.
【0023】非同期メッセージ送信部32は,メッセー
ジを送信する前に,不揮発性メモリ書出部14によって
不揮発性メモリ制御部31を介してメッセージの内容を
不揮発性メモリに書き出す。ダウンにより,GS1現用
空間10からGS1待機空間10’への引き継ぎが行わ
れると,不揮発性メモリ読込部15は,不揮発性メモリ
制御部31によって送信状態にあったメッセージの内容
を読み込み,非同期メッセージ送信部32’によって再
送する。Before sending the message, the asynchronous message sending unit 32 writes the contents of the message to the non-volatile memory via the non-volatile memory control unit 31 by the non-volatile memory writing unit 14. When the GS1 active space 10 is taken over to the GS1 standby space 10 'due to the down, the nonvolatile memory reading unit 15 reads the content of the message in the transmission state by the nonvolatile memory control unit 31 and transmits the asynchronous message. It is retransmitted by the unit 32 '.
【0024】図3は,本発明の一実施例による呼び出し
先GSのメッセージを非同期化した状態を示す図,図4
は,図3に示す状態の定常処理のフローチャートであ
る。以下,図3および図4に従ってGS1とGS2との
間のメッセージ通信処理を説明する。本文中の〜お
よび図3と図4における〜は,それぞれ対応してい
る。FIG. 3 is a diagram showing a state in which the message of the called GS is desynchronized according to an embodiment of the present invention, FIG.
3 is a flowchart of steady processing in the state shown in FIG. The message communication processing between GS1 and GS2 will be described below with reference to FIGS. ~ In the text and ~ in FIGS. 3 and 4 correspond to each other.
【0025】 GS1現用空間10が,ユーザからメ
ッセージM1の要求を受信する。このメッセージM1に
より,ポートに属するスレッド12が起動される。
このポートに属するスレッド12から,GS2に対する
処理要求が必要になった場合,GS2現用空間20へメ
ッセージを送信するため,送信専用スレッド13を起動
する。The GS1 working space 10 receives a request for a message M1 from a user. This message M1 activates the thread 12 belonging to the port.
When a processing request for the GS2 is required from the thread 12 belonging to this port, the transmission-only thread 13 is activated to send a message to the GS2 working space 20.
【0026】 送信専用スレッド13は,GS1から
GS2へのメッセージ送信中にGS1がダウンした際に
GS2への再要求を行うために必要なメッセージM2の
内容を,図2に示す不揮発性メモリ制御部31を介し
て,不揮発性メモリ16に保存する。The transmission-dedicated thread 13 shows the contents of the message M2 necessary for requesting the GS2 again when the GS1 goes down during the message transmission from the GS1 to the GS2. It is stored in the non-volatile memory 16 via 31.
【0027】 その後,送信専用スレッド13上で動
作する図2に示す非同期メッセージ送信部32が,GS
2への要求をメッセージM2として,GS1から送る。
GS2現用空間20では,ポートに属するスレッド
22が起動され,この処理の中でGS1に対する要求を
メッセージM3として送信する。GS1現用空間10で
は,処理によってGS2へのメッセージ送信を完了し
たものとみなして,ポートに属するスレッド12の処理
を完了させているので,メッセージM3によるポートに
属するスレッド12の起動が待たされることはない。After that, the asynchronous message transmission unit 32 shown in FIG.
The request for 2 is sent from GS1 as message M2.
In the GS2 working space 20, the thread 22 belonging to the port is activated, and in this process, the request for the GS1 is transmitted as the message M3. In the GS1 active space 10, it is considered that the message transmission to the GS2 has been completed by the processing, and the processing of the thread 12 belonging to the port is completed. Therefore, it is possible to wait for the thread 12 belonging to the port to be activated by the message M3. Absent.
【0028】図5は,本発明の一実施例によるメッセー
ジ送信もれ回避の説明図,図6は,GS1の待機空間に
よる処理のフローチャートである。以下,GS1が障害
でダウンした場合のメッセージ通信処理を,図5および
図6に示す’〜’に従って説明する。FIG. 5 is an explanatory diagram for avoiding message transmission omission according to one embodiment of the present invention, and FIG. 6 is a flowchart of processing by the standby space of the GS1. Hereinafter, the message communication processing when the GS1 is down due to a failure will be described with reference to'- 'shown in FIGS.
【0029】図5において,〜の処理は,図3で説
明した処理と同様である。処理により,不揮発性メモ
リ16にメッセージ送信情報17を書き出した時点で,
GS1現用空間10がダウンした場合を想定する。GS
1待機空間10’によって,’〜’の処理が行われ
る。In FIG. 5, the processes from to are the same as the processes described in FIG. By processing, when the message transmission information 17 is written in the non-volatile memory 16,
Assume that the GS1 working space 10 is down. GS
The processing from "to" is performed by one standby space 10 '.
【0030】’GS1待機空間10’に,ユーザから
の要求であるメッセージM1の再送が通知される。’
メッセージM1の受信によって,ポートに属するスレッ
ド12’が起動され,ポートに属するスレッド12’
は,GS2へのメッセージ送信のために,送信専用スレ
ッド13’を起動する。The'GS1 standby space 10 'is notified of the resend of the message M1 requested by the user. '
Upon receipt of the message M1, the thread 12 ′ belonging to the port is activated, and the thread 12 ′ belonging to the port
Activates a send-only thread 13 'for sending a message to GS2.
【0031】’送信専用スレッド13’は,GS1現
用空間10が不揮発性メモリ16に残した送信予定のメ
ッセージM2の内容を読み込む。’その後,送信専用
スレッド13’上で動作する図2に示す非同期メッセー
ジ送信部32’が,処理’で復元した内容を持つメッ
セージM2をGS2へ送信する。その処理は,図3およ
び図4に示す定常処理と同様である。The'transmission-dedicated thread 13 'reads the content of the message M2 to be transmitted, which is left in the non-volatile memory 16 by the GS1 active space 10. 'After that, the asynchronous message transmission unit 32' shown in FIG. 2 operating on the transmission dedicated thread 13 'transmits the message M2 having the content restored in the processing' to the GS2. The process is the same as the steady process shown in FIGS.
【0032】図7は,送信専用スレッド13のさらに詳
しい処理フローチャートである。以下,図7に示す(a)
〜(i) に従って説明する。 (a) IPL時に,まず必要なバッファその他の作業域等
の初期化を行う。 (b) WAIT処理によって,ポートスレッドからの処理
依頼を待つ。 (c) 処理の終了通知があったならば,必要な後処理を行
い,処理を終了する。FIG. 7 is a more detailed processing flowchart of the transmission dedicated thread 13. Below, shown in Figure 7 (a)
It will be explained according to (i). (a) At the time of IPL, the necessary buffers and other work areas are initialized. (b) The WAIT processing waits for a processing request from the port thread. (c) If the end of processing is notified, the necessary post-processing is performed and the processing ends.
【0033】(d) 終了通知でない場合,待機空間におけ
る現用ダウン後の最初の処理依頼であるかどうかを判定
する。もし,そうである場合には,処理が完了していな
いメッセージの再送のため,処理(h) へ移る。 (e) ポートに属するスレッド12からの通常のメッセー
ジ送信要求である場合には,不揮発性メモリ16にメッ
セージの内容を書き出す。(D) If it is not the end notification, it is judged whether it is the first processing request after the active down in the standby space. If so, the process moves to the process (h) to retransmit the message that has not been processed. (e) In the case of a normal message transmission request from the thread 12 belonging to the port, the content of the message is written to the non-volatile memory 16.
【0034】(f) GS2に対する処理要求のメッセージ
を送信する。 (g) その後,GS2によるメッセージの処理完了または
受け取り完了を確認したならば,不揮発性メモリ16に
保存していた情報を消去する。そして,処理(b)へ戻
り,次の処理依頼を待つ。(F) Send a processing request message to GS2. (g) After that, if it is confirmed that the GS 2 has completed processing or received the message, the information stored in the non-volatile memory 16 is erased. Then, the processing returns to the processing (b) and waits for the next processing request.
【0035】(h) この送信専用スレッド13に対する処
理要求が,待機空間から現用空間に切り替えられた際の
最初の要求である場合には,不揮発性メモリ16に保存
されていたメッセージの内容を読み込む。 (i) 不揮発性メモリ16中に,保存されているメッセー
ジがなかったならば,処理(b) へ戻り,処理依頼を待
つ。メッセージがあれば,処理(f) へ移り,そのメッセ
ージの送信を行う。(H) If the processing request to the transmission dedicated thread 13 is the first request when the standby space is switched to the working space, the content of the message stored in the non-volatile memory 16 is read. . (i) If there is no message stored in the non-volatile memory 16, the process returns to the process (b) and waits for a process request. If there is a message, move to process (f) and send the message.
【0036】[0036]
【発明の効果】以上説明したように,本発明によれば,
呼び出し元のグローバルサービスと,呼び出し先のグロ
ーバルサービスの間の要求を,非同期化することによ
り,その間のメッセージの受信待ちによるデッドロック
を回避することが可能となる。また,呼び出し元のグロ
ーバルサービスがダウンした場合でも,不揮発性メモリ
に保存していたメッセージの内容を,待機系のグローバ
ルサービスで使用することにより,呼び出し先のグロー
バルサービスへメッセージを送り,メッセージの送信も
れを回避することができる。As described above, according to the present invention,
By making the request between the calling global service and the calling global service asynchronous, it is possible to avoid deadlock due to waiting for message reception during that time. Even if the caller's global service goes down, the message contents saved in the non-volatile memory are used by the standby global service to send a message to the callee's global service and send the message. Leakage can be avoided.
【図1】本発明の原理構成図である。FIG. 1 is a principle configuration diagram of the present invention.
【図2】本発明の一実施例によるソフトウェア構成例を
示す図である。FIG. 2 is a diagram showing a software configuration example according to an embodiment of the present invention.
【図3】本発明の一実施例による呼び出し先GSのメッ
セージを非同期化した状態を示す図である。FIG. 3 is a diagram showing a state in which a message of a callee GS is desynchronized according to an embodiment of the present invention.
【図4】本発明の一実施例による定常処理のフローチャ
ートである。FIG. 4 is a flowchart of steady processing according to an embodiment of the present invention.
【図5】本発明の一実施例によるメッセージ送信もれ回
避の説明図である。FIG. 5 is an explanatory diagram of avoiding message transmission failure according to an embodiment of the present invention.
【図6】本発明の一実施例によるGS1の待機空間によ
る処理のフローチャートである。FIG. 6 is a flowchart of processing by the standby space of the GS1 according to an embodiment of the present invention.
【図7】本発明の一実施例による送信専用スレッドの処
理フローチャートである。FIG. 7 is a processing flowchart of a transmission-only thread according to an embodiment of the present invention.
【図8】従来技術の説明図である。FIG. 8 is an explanatory diagram of a conventional technique.
1 計算機 10 GS1現用空間 10’ GS1待機空間 11 ポート 12 ポートに属するスレッド 13 送信専用スレッド 14 不揮発性メモリ書出部 15 不揮発性メモリ読込部 16 不揮発性メモリ 17 メッセージ送信情報 20 GS2現用空間 20’ GS2待機空間 21 ポート 22 ポートに属するスレッド 1 Computer 10 GS1 Working Space 10 'GS1 Standby Space 11 Ports 12 Threads belonging to 12 Ports 13 Threads for Sending 14 Nonvolatile Memory Writing Section 15 Nonvolatile Memory Reading Section 16 Nonvolatile Memory 17 Message Transmission Information 20 GS2 Working Space 20' GS2 Standby space 21 ports Threads belonging to 22 ports
Claims (1)
プログラム間の相互要求をメッセージ通信により実現す
るデータ処理装置において,サービスプログラムの動作
空間に,他の空間とのメッセージのやりとりを行うため
の窓口となるポートに属するスレッド(12)と,そのポー
トに属するスレッドからの依頼により他の空間に対しメ
ッセージを送信する送信専用スレッド(13)とを備えると
共に,前記送信専用スレッドは,送信メッセージに関す
る情報を障害時に待機空間に引き継ぐために不揮発性メ
モリ(16)に書き出す手段(14)を備え,障害によりサービ
スを行う空間が待機空間に切り替えられた場合に,前記
不揮発性メモリに書き出されている送信メッセージに関
する情報を読み込んで再送するように構成されているこ
とを特徴とするメッセージ通信ベースのデータ処理装
置。1. In a data processing device that realizes a mutual request between service programs controlling resources of the entire system by message communication, a service program operating space is provided with a window for exchanging messages with other spaces. A thread (12) belonging to a port and a send-only thread (13) for sending a message to another space at the request of the thread belonging to the port A means (14) for writing to the non-volatile memory (16) to take over to the standby space at the time of a failure is provided, and when the space for service is switched to the standby space due to the failure, the transmission written to the non-volatile memory A message characterized by being configured to read and resend information about the message Communication based data processing apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3037097A JP2555227B2 (en) | 1991-03-04 | 1991-03-04 | Message processing based data processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3037097A JP2555227B2 (en) | 1991-03-04 | 1991-03-04 | Message processing based data processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04276831A JPH04276831A (en) | 1992-10-01 |
JP2555227B2 true JP2555227B2 (en) | 1996-11-20 |
Family
ID=12488079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3037097A Expired - Fee Related JP2555227B2 (en) | 1991-03-04 | 1991-03-04 | Message processing based data processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2555227B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0895810A (en) * | 1994-09-28 | 1996-04-12 | Nec Corp | Batch job execution system |
-
1991
- 1991-03-04 JP JP3037097A patent/JP2555227B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH04276831A (en) | 1992-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5944797A (en) | Data mover hardware controlled processing in a commanding system and in a commanded system for controlling frame communications on a link | |
CN107453845B (en) | Response confirmation method and device | |
EP0734139A2 (en) | A data transfer device with cluster control | |
JP2555227B2 (en) | Message processing based data processing device | |
JPH0196750A (en) | Data processing system | |
JP2571360B2 (en) | Facsimile machine | |
JP2636206B2 (en) | Information processing system | |
JPH1031616A (en) | Inter-process communication system | |
EP1139228A2 (en) | An intelligent bus interconnect unit | |
JP2715815B2 (en) | Data writing method | |
JP2710587B2 (en) | Information processing system | |
JP2539436B2 (en) | Communication method between processors | |
JP4501788B2 (en) | Multi-CPU device and inter-CPU communication method | |
JP2853607B2 (en) | Communication system between jobs | |
JPH1124945A (en) | Data transfer method/system between plural processes | |
JP2508959B2 (en) | Computer system | |
KR950003680B1 (en) | Message Queue Management Method for Common Line Signaling in Electronic Switching System | |
JPWO2004079573A1 (en) | Multiprocessor system | |
JPH0290201A (en) | programmable controller | |
JPH0678129A (en) | Facsimile equipment | |
JPH02246473A (en) | Reception recording method for facsimile equipment | |
JPS63301352A (en) | Exchange system for file shared data with communication control | |
JPS61206045A (en) | Information processing system | |
JPH103463A (en) | Inter-processor communication method | |
JPH06103222A (en) | Bus transfer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19960716 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080822 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090822 Year of fee payment: 13 |
|
LAPS | Cancellation because of no payment of annual fees |