JPH07234850A - マルチプロセッサの装置と方法 - Google Patents

マルチプロセッサの装置と方法

Info

Publication number
JPH07234850A
JPH07234850A JP6026978A JP2697894A JPH07234850A JP H07234850 A JPH07234850 A JP H07234850A JP 6026978 A JP6026978 A JP 6026978A JP 2697894 A JP2697894 A JP 2697894A JP H07234850 A JPH07234850 A JP H07234850A
Authority
JP
Japan
Prior art keywords
task
message
processing
waiting
queue
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP6026978A
Other languages
English (en)
Inventor
Atsushi Setsutsu
敦 攝津
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP6026978A priority Critical patent/JPH07234850A/ja
Publication of JPH07234850A publication Critical patent/JPH07234850A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 CPUに障害が発生しても、メッセージの処
理を遅延することがないマルチプロセッサタスク間通信
装置を提供することを目的とする。 【構成】 共有メモリ6内にメッセージを受信した複数
のタスクのメッセージ処理情報を保持するための確認領
域50を設け、各プロセッサ1〜5上のオペレーティン
グシステム内のタスク間通信手段に、タスクからのメッ
セージ送信要求に対しタスク間通信情報領域30の待ち
タスク行列32を介して受信待ちをしている複数のタス
クに送信する多重送信手段と、メッセ−ジを受信し処理
を終了したら、該メッセ−ジを受信したタスクの中で、
最初に処理を終了したタスクの時は確認領域50にその
旨書き込んで次の処理をさせ、後から終了したタスクの
処理を無効にする処理完了判断手段とを備える。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は複数のプロセッサと各
プロセッサが共通にアクセス可能な共有メモリを備えた
マルチプロセッサシステムに関するものである。
【0002】
【従来の技術】複数のプロセッサシステムの機能を分割
して、並列に処理を実行させることにより、システムの
処理能力を向上させるマルチプロセッサシステムは、様
々な分野で採用されている。マルチプロセッサシステム
には密結合と疎結合とに大別されるが、PBXなど高信
頼性を要求されるシステムでは、プロセッサ(以下CP
Uと呼ぶ)とローカルメモリを1つのボードとし、それ
を共有バス等で接続した疎結合システムが多い。このよ
うな疎結合マルチプロセッサシステムは個々のプロセッ
サボードのローカルメモリ内にオペレーティングシステ
ムとその上で動作するタスクを配置しているのでCPU
間の通信機能を具備していることが必要である。元来、
このようなマルチプロセッサ上でのオペレーティングシ
ステムが具備するタスク間通信手段として、共有メモリ
上に受信待ちを行なっているタスクのリストを持つ待ち
タスク行列と、受信待ちを行なっているメッセージのリ
ストを持つ待ちメッセージ行列とから構成される通信チ
ャネルを使用したものがある。この方式による通信性向
上方法としては特開平2−284257公報に示された
プロセッサ間通信方式がある。
【0003】図12及び図13は、特開平2−2842
57公報に示された従来のプロセッサ間通信方式を示す
図であり、図12はマルチプロセッサシステムの構成
図、図13はプロセッサ間通信におけるタスク間通信用
情報領域の内容を示す。図12において、1〜4はプロ
セッサボード(以下CPUと略す)、6は共有メモリ、
7は共有バス、100はシステムコントローラ、101
はI/Oコントローラ、102及び103は入出力装置
を示す。また、図13において、111〜114はタス
ク間通信情報領域であり、領域には通信チャネルのI
D、CPUIDマップ、メッセージ数、メッセージサイ
ズ、先頭待ち行列ポインタが格納されている。115〜
118は待ち行列情報を格納する領域であり、領域には
CPUID、次待ち行列ポインタ、前待ち行列ポイン
タ、先頭通信バッファポインタが格納される。119〜
124は通信情報を格納する領域であり、領域には次通
信バッファ、前通信バッファ、通信メッセージが格納さ
れる。
【0004】次にプロセッサ間通信の動作について説明
する。システムコントローラ100は各CPU1〜4間
の通信を管理するものであり、共有メモリ6内に図13
に示すような処理要求の待ち行列の作成や、処理要求メ
ッセージの送信/受信の管理を行なう。各CPU1〜4
は他CPUとの通信の際、システムコントローラ100
に処理を依頼するようになっている。例えばCPU1
(1)上のタスクAがCPU2(2)に処理を依頼する
ためにCPU1(1)がシステムコントローラ100に
対し、メッセージを送信要求すると、システムコントロ
ーラ100はそのメッセージを通信バッファ121に格
納し、待ち行列ポインタ116、通信バッファ121の
バッファポインタの記憶内容を書き換えることにより待
ち行列に接続する。接続後、システムコントローラ10
0はCPU1(1)に対し、処理終了メッセージを出
す。CPU1(1)上のタスクAは上記終了メッセージ
を受けとった後、引続き次の処理を実行する。次にCP
U2(2)上のタスクBがメッセージ受信要求をシステ
ムコントローラ100に対して行なうと、システムコン
トローラ100は待ち行列ポインタ116の通信バッフ
ァ121を取り出してCPU2(2)へデータ転送を行
なう。メッセージを受けたCPU2(2)ではタスクB
が上記メッセージを基に処理を行ない、処理終了後、シ
ステムコントローラ100に対しメッセージ削除要求を
行なう。システムコントローラ100はこの要求を受け
て、CPU2(2)の待ち行列ポインタ116から処理
を終了した通信バッファ121の削除を行なう。以上が
この方式によるプロセッサ間通信の流れである。次にこ
の方式におけるプロセッサに障害が発生した場合の処理
の流れについて説明する。例えば、図12のCPU2
(2)に障害が発生し、CPU4(4)が待機CPUだ
とすると、システムコントローラ100はCPU2
(2)の障害を検出したのち、待機CPUであるCPU
4(4)に対し、待ち行列ポインタの生成を要求したの
ち、共有メモリ6内に保持されているCPU2(2)が
処理していた通信メッセージをCPU4(4)に対して
送信する。これを、図13を用いて説明すると、CPU
2(2)の待ち行列ポインタ116につながっていた通
信バッファ121は待ち行列ポインタ116から切り離
され、CPU4(4)の待ち行列ポインタ118に繋ぎ
換えることにより、通信メッセージの移動が行なわれ
る。このようにすることで、本来CPU2(2)が処理
する予定でシステムコントローラ100が待ち行列に接
続している未処理のメッセージも、待機CPUによって
引続き処理され、確実にメッセージが処理することが可
能となる。
【0005】
【発明が解決しようとする課題】従来のプロセッサ間通
信は以上の様に構成され、プロセッサに障害が発生した
ときに始めてメッセージが待機プロセッサに入力され処
理されるので、障害発生から待機プロセッサが起動する
までの間に時間を要し、復旧が遅延するという問題があ
った。
【0006】また、プロセッサに障害が発生しても復旧
が遅延することのないように構成されず、プロッセサが
異常処理をした場合にそれを処理中に検出することが出
来ないという問題があった。
【0007】プロセッサに障害が発生しても復旧が遅延
することのないように構成されず、各プロセッサ別待ち
タスク行列を保持する構成になっていないので,複数個
の同じ処理機能のタスクが複数の各プロセッサ上に存在
したとき,同一メッセージを複数の該タスクに送信する
場合,プロセッサを分けて送信することが出来ないとい
う問題があった。
【0008】また、各プロセッサ別待ちタスク行列に待
ちタスク数欄を保持する構成になっていないので、受信
待ちタスクの多いプロセッサ即ち負荷の軽いプロセッサ
を選んでメッセージを送信することが出来ないため、プ
ロセッサの負荷を均等にすることが出来ない。
【0009】更に、複数の受信タスクへの同一メッセー
ジの送信が同時に発生し、メッセージを受信した複数の
タスクが同一メッセージの処理をすることによる共用バ
ス上の通信負荷を分散することができない。
【0010】本発明は上記の様な問題点を解消するため
になされたもので、プロセッサに障害が発生しても回復
処理が遅延せず、処理中にプロッセサの異常処理を検出
する、異なるプロセッサ上の複数のタスクにメッセージ
送信を可能にし、またプロセッサの負荷を均等にし、共
有バスの負荷を分散させる等のマルチプロセッサシステ
ムを提供することを目的とする。
【0011】
【課題を解決するための手段】本発明に係るマルチプロ
セッサ装置においては、処理要求を待っている待ちタス
ク行列と処理待ちの待ちメッセージ行列及びメッセージ
の処理状況の情報を保持する共有メモリを配置し、タス
クからの処理要求のメッセージ送信要求に応じて前記待
ちタスク行列に繋がれた複数のタスクに該メッセージを
送信する多重送信手段を送信側のプロセッサに設け、該
メッセージを受信した複数のタスクのそれぞれのプロセ
ッサは処理完了判断手段を備え、メッセージを受信した
タスクが処理を終了したら同手段は共有メモリを参照
し、該タスクが最初に処理を終了したと判定したら該メ
ッセージの処理を終了したことを共有メモリに書いて処
理を続けさせ、タスクが後から処理を終了したと判定し
たら後の処理を無効にする。
【0012】本発明に係るマルチプロセッサ装置におい
ては、処理要求を待っている待ちタスク行列と処理待ち
の待ちメッセージ行列及びメッセージの処理状況の情報
を保持する共有メモリを配置し、タスクからの処理要求
のメッセージ送信要求に応じて前記待ちタスク行列に繋
がれた複数のタスクに該メッセージを送信する多重送信
手段を送信側のプロセッサが備え、該メッセージを受信
した複数のタスクの各プロセッサは処理完了判断手段を
備え、メッセージを受信したタスクが処理を終了したら
同手段は共有メモリを参照し、タスクが最初に処理を終
了したと判定したら該メッセージの処理を終了したこと
及び処理結果を共有メモリに書いて処理を続けさせ、タ
スクが後から処理を終了したと判定したらその処理結果
と前記の最初に処理を終了したタスクの共有メモリ上の
処理結果を比較し、後で終了の処理を無効にする。
【0013】また、本発明に係るマルチプロセッサ装置
においては、共有メモリの待ちタスク行列をCPU毎に
分けたプロセッサ別待ちタスク行列とし、メッセージを
送信しようとするタスクが属するオペレーティングシス
テムの多重送信手段は共有メモリ上の異なるプロセッサ
の待ちタスク行列にあるタスクに対しメッセージを送信
するようにしたものである。
【0014】また、本発明に係るマルチプロセッサ装置
においては、共有メモリの各プロセッサ別待ちタスク行
列に待ちタスク行列に繋がれているタスク数を保持する
領域を付加し、メッセージを送信しようとするタスクが
属するオペレーティングシステムの多重送信手段は待ち
タスク数が一番多いプロセッサから順にプロセッサの待
ち行列に繋がれているタスクに対しメッセージを送信す
るようにしたものである。
【0015】また、本発明に係るマルチプロセッサ装置
においては、メッセージを送信しようとするタスクが属
するオペレーティングシステムの多重送信手段が、共有
メモリの待ちタスク行列にある複数のタスクに対し、メ
ッセージを送信する時に任意の時間間隔を置いて送信す
るようにしたものである。
【0016】待ちタスク行列と待ちメッセージ行列とメ
ッセージ処理情報を共有メモリに保持し、タスクがメッ
セージ送信要求を出力したら、多重送信手段は前記の待
ちタスク行列の複数のタスクにメッセージを送信し、該
メッセージを受信したタスクが処理を終了したら、同処
理をしたタスクのプロセッサが備える処理完了判断手段
は前記共有メモリを参照し、タスクが最初にメッセージ
処理を終了したと判定したらメッセージの処理は終了し
たことを共有メモリに書いて次の処理をさせ、タスクが
後からメッセージ処理を終了したと判定したら処理を無
効にするマルチプロセッサのタスク間通信方法。
【0017】
【作用】この発明においては、共有メモリは待ちタスク
行列と待ちメッセージ行列とメッセージの処理情報を保
持し、メッセージを送信するタスクが属する多重送信手
段は、共有メモリ上の待ちタスク行列に繋がれているプ
ロセッサ上の複数のタスクにメッセージを送信し、該メ
ッセージを受信したタスクが属する各プロセッサの処理
完了判断手段はタスクが該メッセージの処理を終了した
ら共有メモリを参照し、タスクが最初に処理を終了した
と判定したら共有メモリに該メッセージの処理は終了し
たことを書いて次の処理をさせ、タスクが後から処理を
終了したと判定したら後の処理を無効にする。
【0018】この発明においては、共有メモリは待ちタ
スク行列と待ちメッセージ行列とメッセージの処理情報
を保持し、メッセージを送信しようとするタスクが属す
る多重送信手段は、共有メモリ上の待ちタスク行列に繋
がれている複数のタスクにメッセージを送信し、該メッ
セージを受信したタスクが属する各プロセッサの処理完
了判断手段はタスクが処理を終了したら共有メモリを参
照し、タスクが最初に処理を終了したと判定したら共有
メモリに該メッセージの処理は終了したこと及び処理結
果を書いて次の処理をさせ、タスクが後から処理を終了
したと判定したら最初の処理結果と後の処理結果を比較
し、後の処理を無効にする。
【0019】この発明では、共有メモリの待ちタスク行
列はプロセッサ別の待ちタスク行列になっているので多
重送信手段は異なるプロセッサ上の同じ処理機能を有す
るタスクにメッセージを送信することが出来る。
【0020】この発明では、共有メモリ上でプロセッサ
別の待ちタスク行列は各プロセッサ別の待ちタスクの個
数を保持するので多重送信手段はその個数により、負荷
の軽いプロセッサを選択してメッセージを送信する。
【0021】この発明では、多重送信手段は同一のメッ
セージを複数のプロセッサ上のタスクに送信するときに
任意の時間間隔を置くので共有バスの負荷のピークを解
消する。また、これによりメッセージを受信した複数の
タスクが同一メッセージの処理をすることによる共用バ
ス上のアクセス負荷を軽減することができる。
【0022】この発明では、共有メモリに待ちタスク行
列と待ちメッセージ行列とメッセージの処理情報を保持
し、タスクからのメッセージ送信要求により多重送信手
段は共有メモリ上の待ちタスク行列を介してメッセージ
を複数の受信タスクの各プロセッサに送信し、タスクが
メッセージを受信し処理を終了したら受信側の処理完了
判断手段は共有メモリを参照し、タスクが最初に処理を
終了したと判定したらメッセージの処理は終了した旨共
有メモリに書き込んで次の処理をさせ、タスクが後から
処理を終了したと判定すれば処理を無効にする。
【0023】
【実施例】
実施例1.以下、この発明の一実施例を図を用いて説明
する。本実施例では、説明を簡単にするため1つのプロ
ッセサがメッセージを2つのタスクの各プロセッサに送
信する場合の例で説明するが、これ以外の場合でも同様
である。図1はこの発明の一実施例におけるマルチプロ
セッサシステムの構成図である。図中1〜5はローカル
メモリ(図示せず)を備えたプロセッサボード(CP
U)、6は全プロセッサが共有する共有メモリ、7は共
有バスである。また、8〜12はそれぞれ各プロセッサ
1〜5上で動作するオペレーティングシステム(O
S)、13〜17はそれぞれオペレーティングシステム
8〜12上で実行されるタスクを示す。各タスクはプロ
セッサ毎に特定の処理を専門に行なうようにプログラム
されており、同一の処理を行なうタスクが動作するプロ
セッサボードが複数存在する。図では、CPU1(1)
及びCPU2(2)のタスクは同じ処理を行ない、CP
U3(3)、CPU4(4)及びCPU5(5)のタス
クは別の同じ処理、即ち2種類の処理をするとする。な
お、これらの処理形態は本実施例並びに他の実施例の説
明に使用する。30はプロセッサ間通信を行なうための
タスク間通信情報領域、32は待ちタスク行列、40〜
42は受信待ち状態になったスクの情報を保持する共有
メモリ用のタスク固有情報を示す。個々のタスク固有情
報は各プロセッサ1〜5のローカルメモリに配置されて
おり、共有メモリのタスク固有情報40〜42はそのコ
ピーである。
【0024】50は複数のタスクが同一メッセージを受
信した時に、どのタスクが次の処理を行なうかを示す確
認領域である。51は処理要求のために送信するメッセ
ージである。メッセージ51は処理要求とその処理に必
要な情報から構成される。同一メッセージを処理する各
タスクの属するオペレーティングシステム8〜12の処
理完了判断手段27(詳細は後記)はこの確認領域50
を参照することで、メッセージの処理を完了したタスク
を再度タスク間通信情報領域30の待ちタスク行列32
に受信待ちとして繋げるか、それとも次の処理へ進める
かを判断する。この確認領域50はメッセージ毎に作成
され、同一メッセージを受信した複数のタスクがメッセ
ージに対する処理を全て終了した時点で削除される。タ
スクがオペレーティングシステムにメッセージの受信要
求をした時、それが属するタスク間通信手段25(後
記)は待ちメッセージ行列33(メッセージボックス)
に待ちメッセージがないと、ローカルメモリにある該受
信要求をしたタスクのタスク固有情報を共有メモリ6に
コピーし、タスク間通信情報領域30の待ちタスク行列
32に繋げる。
【0025】図2は、上記図1のオペレーティングシス
テム8〜12が備えるタスク間通信手段25のブロック
図、及び共有メモリ6内のタスク間通信情報領域30及
び関連の情報を示す図である。前者のタスク間通信手段
25はタスク間の通信とタスクの処理の制御を行うもの
で全オペレーテイングシステムに共通であるため、CP
U1(1)、CPU3(3)、CPU4(4)のそれぞ
れオペレーテイングシステム8、10、11について図
示し説明する。図2中オペレーティングシステム8内に
はタスク間通信手段25があり、その中に複数のタスク
にメッセージ51を送信する多重送信手段26、受信タ
スクのメッセージ処理完了時に受信タスクに次の処理を
続行させるか、受信待ちに戻すかを判断する処理完了判
断手段27、及びメッセージの受信処理を行なう受信処
理手段28、送信プロセッサからの割り込みを処理する
受信割込処理手段29がある。30はタスク間通信情報
領域で、同じ処理機能毎に作成されて同じ処理機能のタ
スクとそれに対するメッセージ等が繋げられる。具体的
には、通信チャネルID(31)、及び受信待ちタスク
を繋げる待ちタスク行列32、そして受信待ちメッセー
ジを繋げる待ちメッセージ行列33がある。40〜42
は待ちタスク行列32に繋がれるタスク固有情報であ
る。このタスク固有情報は、各プロセッサのローカルメ
モリ内にあるタスク固有情報の一部をコピーしたもので
あるが、その領域にはそのタスクがどのプロセッサに属
するかを示すCPUID領域など処理に必要な情報が付
加される。
【0026】60〜62は待ちメッセージ行列33に繋
がれるメッセージ情報である。メッセージ情報60〜6
2には、メッセージの本体及び確認領域50へのポイン
タ(アドレス)が含まれる。CPU1(1)のオペレー
テイングシステム8に属するタスクA(13)からメッ
セージ51の送信要求があった時、オペレーティングシ
ステム8のタスク間通信手段25はタスク間通信情報領
域30の待ちタスク行列32を調べ受信待ちタスクが存
在しない場合に、メッセージを共用メモリ6のメッセー
ジ情報60(以下必要な場合を除き1つ目の60として
説明するが、実際には状況により60〜62の何れかが
操作される)にコピーし、それをタスク間通信情報領域
30の待ちメッセージ行列33に繋げる。メッセージ受
信側のCPU4(4)またはCPU3(3)が受信可能
になったら、待ちメッセージ行列を基にこのメッセージ
情報60を得て処理を行う。タスク間通信情報領域30
の待ちタスク行列32には同じ処理を行なうタスクのみ
が接続されるので、送信側でどのタスクに送信するかを
意識する必要はない。
【0027】次に、この実施例1の動作を図1、図2を
用いて説明する。CPUは一般に送受信をするが、説明
の便宜上CPU1(1)に属するタスクA(13)がC
PU4(4)のタスクD(16)、CPU3(3)のタ
スクC(15)にメッセージを送信する場合の動作につ
いて説明する。CPU1(1)のタスクA(13)がメ
ッセージ送信を要求すると、タスクA(13)が属する
オペレーティングシステム8の多重送信手段26はまず
共有メモリ6内のタスク間情報領域30を参照し、その
情報の中にある待ちタスク行列32から1つ目のタスク
固有情報40を取り外し、タスク固有情報40内にある
CPUID(=CPU4(4))及びタスクID(=タ
スクD(16))を取得し、タスク固有情報40を共有
メモリ6内から削除する。次にオペレーティングシステ
ム8の多重送信手段26は、共有メモリ6内に確認領域
50を作成し、この領域を“未処理”という値に初期化
する。そして、取得したCPUIDが示すCPU、即ち
CPU4(4)に対しメッセージ51を送信する。この
時、CPU4(4)にはメッセージ51及びタスクID
とともに作成した確認領域50のアドレスも送信する。
オペレーテイングシステム8の多重送信手段26は次に
待ちタスク行列32を介して次に繋がれたタスク固有情
報41を参照し、タスク固有情報41内にあるCPUI
D(=CPU3(3))及びタスクID(タスクC(1
5))を取得して、タスク固有情報41を共有メモリ6
内から削除し、取得したCPUIDが示すCPU、即ち
CPU3(3)に対しメッセージ51を送信する。この
送信にはCPU4(4)に送信した時と同様にメッセー
ジ51、タスクID、確認領域50のアドレス等を送信
する。以上が多重送信手段26の処理である。
【0028】次に受信処理を説明する。メッセージ51
の送信は受信のCPU4(4)に対する割り込みで行な
われる。受信CPU4(4)が受信するとまずオペレー
ティングシステム11の受信割込処理手段29に制御が
移る。受信割込処理手段29では、送信されてきたタス
クIDからローカルメモリ内にあるタスク固有情報を取
得し、指定された受信タスクD(16)を実行可能状態
にする。そして、得られたメッセージを受信タスクに渡
し、ローカルメモリのタスク固有情報内に確認領域50
のアドレスを格納する。これにより、受信タスクD(1
6)が起動され、得られたメッセージを基に処理を行な
う。
【0029】CPU4(4)のタスクD(16)がメッ
セージ51の処理を終了すると、オペレーティングシス
テム11の処理完了判断手段27はローカルメモリのタ
スク固有情報に格納されている確認領域アドレス(ポイ
ンタ)から共有メモリ6内にある確認領域50を参照す
る。ここが“未処理”のままであれば、まだ当該メッセ
ージの処理を終了したタスクが存在しないと判断し、確
認領域50を“処理済み”の値に変更し、次の処理(次
の機能群に処理依頼をするなど)に受信タスクを移行さ
せる。確認領域50が“処理済み”の場合は、すでに他
のタスクがこれらの処理を終了、即ち当該メッセージの
処理を完了したタスクが存在するので、処理を無効化し
確認領域50を削除後、元の状態(タスク間通信情報領
域30の待ちタスク行列)に戻す。以上はタスクD(1
6)の処理について述べたが、CPU3(3)のタスク
C(15)も同様である。なお、ここではCPU4
(4)のタスクD(16)が最初にメッセージを受信し
ているので、通常先に処理を終了し確認領域50は”処
理済み”になる。従って後続のCPU3(3)のタスク
C(15)の処理は無効にされる。
【0030】次に、タスク間通信情報領域30の待ちタ
スク行列32に待ちタスクが1つだけ(タスクD(1
6))存在した場合の送受信処理の動作について図1、
図3を参照して説明する。この場合、送信タスクA(1
3)から1つ目の受信タスク、即ちタスクD(16)へ
の送信は、前に説明した手順で行なわれるのでここでは
省略する。2番目の受信タスク、即ちタスクC(15)
へ送信しようとする場合、タスク間通信情報領域30の
タスク待ち行列32には次のタスク固有情報41、42
が繋がれていないので(図上点線表示)、オペレーティ
ングシステム8の多重送信手段26は、メッセージ情報
60を共有メモリ6内に作成し、メッセージ51をメッ
セージ情報60にコピーする。なお、メッセージ情報6
0はメッセージ51の全情報を保持する。そして、メッ
セージ情報60の確認領域ポインタを、確認領域50の
アドレスに設定する。さらに、確認領域50を“未処
理”から“1タスク受信済み”にし既に1つのタスク
(ここではタスクD(16))がこのメッセージを処理
していることを示しておく。以上が送信側のタスクA
(13)に係わる多重送信手段26の処理である。
【0031】この後、タスクC(15)がメッセージ5
1を受信しようとした場合次の動作を行なう。タスクC
(15)が受信要求をすると、CPU3(3)のオペレ
ーティングシステム10の受信処理手段28はまずタス
ク間通信情報領域30の待ちメッセージ行列33から作
成されたメッセージ情報60を取得し、その確認領域ポ
インタから確認領域50を参照する。この領域が“1タ
スク受信済み”となっているのを検出し、受信処理手段
28はメッセージ情報60を受信タスクC(15)の受
信領域にコピーし、確認領域50を“未処理”にする。
そしてメッセージ情報60をタスク間通信情報領域30
の待ちメッセージ行列33から取り外し、メッセージ情
報60を削除し、処理をする。タスクC(15)がメッ
セージ処理を終了した後のオペレーティングシステム1
0の処理完了判断手段27は前に説明した動作と同じで
ある。
【0032】また、もし2番目の受信タスクC(15)
が受信しないうちに最初の受信タスクD(16)がメッ
セージ処理を終了した場合のオペレーテイングシステム
11の処理完了判断手段27は、処理終了後に参照する
確認領域50から“1タスク受信済み”を検出し、タス
ク間通信手段25の待ちメッセージ行列33からメッセ
ージ情報60を取り外し、メッセージ情報を削除する処
理を行なう。
【0033】なお、上記のタスクD(16)が処理終了
後、確認領域50の”1タスク受信済み”を検出したと
きメッセージ情報60を削除しないで、そのまま次の処
理を続行させることにより、後記のCPUの異常処理検
出が可能になる。
【0034】次に、タスク間通信情報領域30の待ちタ
スク行列32に待ちタスクが1つも存在しない場合につ
いての送受信処理の動作について図1、図4を参照して
説明する。この場合、送信タスクA(13)のオペレー
ティングシステム8の多重送信手段26は、共有メモリ
6内にメッセージ情報60及び確認領域50の作成を行
ない、メッセージ51のコピー、確認領域ポインタの設
定と確認領域50を“未処理”に設定する処理を行なっ
た後、作成したメッセージ情報60をタスク間通信情報
領域30の待ちメッセージ行列33に繋げる。
【0035】受信タスクD(16)のオペレーティング
システム11の受信処理手段28は、待ちメッセージ行
列33を介してメッセージ情報60を参照し、その確認
領域ポインタから確認領域50の値を読みとる。確認領
域50が“未処理”の場合、まだどのタスクもそのメッ
セージに対する処理を終了していないので、メッセージ
を受信タスクD(16)の受信領域にコピー後、確認領
域を“1タスク受信済み”にし、処理をする。
【0036】確認領域50が“1タスク受信済み”の状
態で、タスクC(15)が受信要求したらメッセージ情
報60を受信タスクの受信領域にコピー後、確認領域5
0を“未処理”にし、メッセージ情報60を待ちメッセ
ージ行列33から取り外し、削除する。これが待ちタス
ク行列32にタスクが1つも存在しない場合の受信タス
クが属するオペレーテイングシステムの送受信処理手段
28の処理である。
【0037】以上述べた様に、CPU1のタスクA(1
3)からの同じメッセージ51は、CPU4(4)、C
PU3(3)のそれぞれのタスクD(16)、タスクC
(15)に送信され、これらの受信タスクのメッセージ
処理状況に応じて確認領域50に”未処理”、”処理
済”更に、”1タスク受信済”等の値が設定、参照され
る。換言すれば、同一メッセージ受信タスクは2台のC
PU上で対になって処理する。この為、メッセージ受信
側のCPU3(3)、CPU4(4)の1方に、処理中
に障害が発生しても他方のCPUにより処理は円滑に継
続され、中断されないので復旧に時間を必要とすること
もない。なお、同一メッセージを同時に処理するCPU
は3台以上でもよく、またCPUの組み合せも任意であ
る。CPUがn台(n>2)の場合は同一メッセージに
関する待ちタスク行列32のアクセス回数がn回にな
り、処理完了判断手段27,受信処理手段28による確
認領域50の値の操作(メッセ−ジ情報60をアクセス
する時の確認領域50の値は”1タスク受信済み”か
ら”n−1タスク受信済み”までの値を選択的に持
つ)、メッセージ情報60の削除等を行うCPUは2台
目のCPUがn台目のCPUに変る、等の相違はあるも
のの、確認領域50の値によってタスクの実行が制御さ
れるので、2CPUの時と基本的に同じ要領で同様の効
果を奏する。
【0038】次に、CPUの異常処理検出について説明
する。この異常処理とは例えば、ハード、ソフトの障害
に起因してCPUが誤演算をしてもその時点では検出出
来ず、後でシステムに障害を及ぼす様な処理を指す。今
までの説明では処理が終了したらタスクD(16)、タ
スクC(15)の各オペレーテイングシステムの処理完
了判断手段27は確認領域50を参照し、その値が”処
理済み”なら処理を無効にしている。これに対して、最
初に処理が終了したタスクの処理結果を共有メモリ6に
保存しておき(確認領域50の値はこのとき”処理済
み”となる)、後のタスクが処理を終了し、確認領域5
0が”処理済み”を検出したら両者の処理結果を比較
し、等しければ正常処理、異なれば異常と判断すること
により、処理をしたCPUの異常を検知することが出来
る。この場合先行タスク即ち、当該の処理完了判断手段
27が照会時に確認領域50の値が”未処理”である場
合にはタスクにチェックポイント等を設けておき、後続
タスクの処理終了時に異常が検出されたら、先行タスク
の処理を停止させる事により、システムへの障害の波及
を防止することが出来る。なお,同一メッセ−ジを処理
するCPUがn台(n>2)の場合も2CPUの時と同
様にn台のCPUの処理が終了するまで処理結果を保
存,比較し例えば多数決により異常処理を検出すること
が出来る。
【0039】次に、オペレーティングシステム8〜12
の各タスク通信手段25を構成する各手段(多重送信手
段26、受信割り込み処理手段29、受信処理手段2
8、処理完了判断手段27)の動作を図5、図6、図
7、図8に示したフローチャートを用いて説明する。な
お、今まではCPU1(1)、CPU3(3)、CPU
4(4)間のメッセージ処理を送信、受信の各CPUに
区分して具体的に説明したので、以下の処理フローの説
明は送信受信区分は明らかであるのでこれらの区分をし
ないで述べる。また、タスク固有情報40〜42、メッ
セージ情報60〜62は実際には状況により処理の対象
は変るが、必要な場合以外はそれぞれタスク固有情報4
0、メッセージ情報60で代表して説明する。
【0040】図5は多重送信手段26の動作フローを示
している。図5において、まずタスク間通信情報領域3
0の待ちタスク行列32を参照し待ちタスクがいるか判
断する(ステップ101)。待ちタスクがいる場合、待
ちタスク行列32からタスク固有情報40を取り外し、
その情報からCPUID及びタスクIDを取得する(ス
テップ102)。そして、共有メモリ6内に確認領域5
0を作成し、その領域を“未処理”に設定し、CPUI
Dが示すCPUにタスクID、メッセージ、及び確認領
域アドレスを送信する(ステップ103)。次に、再度
待ちタスク行列32を参照し待ちタスクがいるか判断す
る(ステップ104)。待ちタスク32がいる場合待ち
タスク行列32から次のタスク固有情報41を取り外
し、その情報からCPUID及びタスクIDを取得し
(ステップ105)、CPUIDが示すCPUに対し、
タスクID、メッセージ、及び確認領域アドレスを送信
する(ステップ106)。また、ステップ104におい
て待ちタスクがいなかった場合は、メッセージ情報60
を作成し、メッセージ51をメッセージ情報60にコピ
ーする。そして、確認領域ポインタを確認領域50のア
ドレスに設定し確認領域50を“1タスク受信済み”に
設定した後、待ちメッセージ行列33にメッセージ情報
を繋げる(ステップ107)。また、ステップ101で
待ちタスクがいなかった場合は、メッセージ情報60及
び確認領域50を作成し、メッセージ情報60にメッセ
ージをコピーし、確認領域ポインタを確認領域50のア
ドレスに設定し、確認領域50を“未処理”に設定した
あとメッセージ情報60を待ちメッセージ行列33に繋
げる(ステップ108)。以上が多重送信手段26の動
作フローである。
【0041】図6は受信割込処理手段29の動作フロー
を示している。図6において、まずタスク固有情報40
からタスクID、メッセージ、及び確認領域アドレスを
獲得し(ステップ120)、次にメッセージ51をタス
クIDが示すタスクの受信領域にコピーし(ステップ1
21)、最後に確認領域アドレスをタスク固有情報に付
加し、タスクを実行可能状態にし(ステップ122)受
信割込処理を終了する。
【0042】図7は受信処理手段28の動作フローを示
している。図7において、まずタスク間通信情報領域3
0の待ちメッセージ行列33を参照し待ちメッセージが
あるか判断する(ステップ140)。待ちメッセージが
ある場合は、そのメッセージ情報60の確認領域ポイン
タを使って確認領域50を参照する(ステップ14
1)。確認領域50の値が“未処理”である場合は、確
認領域50を“1タスク受信済み”にし、メッセージを
受信する(ステップ142)。ステップ141において
確認領域50が“未処理”でない、即ち“1タスク受信
済み”である場合は、確認領域50を“未処理”にした
(ステップ143)後、共有メモリ内のメッセージ情報
60を待ちメッセージ行列33から取り外し、メッセー
ジ情報を削除する(ステップ144)。ステップ140
において待ちメッセージがなかった場合は、共有メモリ
6内に受信タスクのタスク固有情報40に付加しそれを
タスク間通信情報領域30の待ちタスク行列32に繋げ
(ステップ145)、そのタスク固有情報に受信タスク
が属するCPUIDを付加し(ステップ146)、タス
クを実行可能状態から受信待ち状態へと遷移させる(ス
テップ147)。以上が受信処理手段28の動作フロー
である。なお,以上はメッセ−ジ処理のCPUが2台の
場合であるが,3台のCPUの場合はステップ143で
確認領域50の値が”1タスク受信済み”なら”2タス
ク受信済み”としステップ144はスキップして終了す
る。”2タスク受信済み”ならステップ144に移る。
CPU台数がn台の場合は確認領域50の値が受信の回
数に応じて”nー1タスク受信済み”まで進み、最後の
値の時にステッップ144に移る。
【0043】図8は処理完了判断手段27の動作フロー
を示している。図8において、受信タスクがメッセージ
処理を終了すると処理完了判断手段27は最初に確認領
域50を参照する(ステップ160)。そして値が“処
理済み”であるか否か判断する(ステップ161)。
“処理済み”でなかった場合、“1タスク受信済み”で
あるか判断する(ステップ162)。“1タスク受信済
み”でもない場合は、確認領域50を“処理済み”に設
定し、次の処理に制御を移す(ステップ163)。ステ
ップ162において、“1タスク受信済み”であった場
合は、受信する前に別のタスクが既にメッセージを受信
していることを意味し、処理完了判断手段27は共有メ
モリ6内にあるメッセージ情報60を削除し、受信タス
クを次の処理に移行する(ステップ164)。ステップ
161において、“処理済み”であった場合は、既に別
のタスクがメッセージ処理を終了してしまったことを意
味するので、受信完了判断手段27は受信タスクのメッ
セージ処理を終了させ確認領域50を削除した後、受信
タスクを元の状態、即ち待ちタスク行列32(メッセー
ジボックスへの受信待ち)に戻す(ステップ165)。
【0044】実施例2.次に本発明の一実施例である実
施例2を図9を用いて説明する。図9は実施例2におけ
るマルチプロセッサシステムの構成図である。図中1〜
5はローカルメモリを備えたプロセッサボード、6は全
プロセッサが共有する共有メモリ、7は共有バスであ
る。また、8〜12は各プロセッサボード上で動作する
オペレーティングシステム、13〜20はオペレーティ
ングシステム上で実行されるタスク、30はタスク間通
信情報領域を示している。71〜73はタスク間通信情
報領30域内に設けられたプロセッサ別待ちタスク行列
であり、受信タスクは自身の属するCPUの待ちタスク
行列につながれる。40〜45は受信タスクのタスク固
有情報で、ローカルメモリにあるタスク固有情報をコピ
ーしたものである。50は確認領域、51は送信メッセ
ージを示す。なお、タスク間通信手段25及びその構成
は図2と同一であるため、図9では省略している。
【0045】本実施例2と既述の実施例1との相違点
は、後者がCPU1台に同じ処理を行うタスクが一応1
つであったが、本実施例2ではこのタスクが複数個存在
することにある。これは例えば、PBXのように、デー
タのピークを短時間で処理する必要のある場合、同じ処
理をマルチタスク処理とし高速化を図る場合に有効な方
法である。実施例2はこの様な場合における本発明の適
用例であり、待ちタスク行列71〜73はCPU毎の構
成になっている。なお、図9のCPU3(3)、CPU
4(4)、CPU5(5)がそれぞれ有するタスクCと
F、タスクDとG、タスクEとHは何れも同じ処理を行
うタスクである。
【0046】次に動作について説明する。動作について
は、基本的な送受信処理は実施例1と変わらないため、
実施例2に特徴的な動作について説明する。図9は各プ
ロセッサ上に同じ処理を行なう複数のタスクが存在し、
CPU1(1)のタスクA(13)がメッセージを送信
する場合の例を示している。送信タスクA(13)がメ
ッセージ送信を要求すると、タスクA(13)が属する
オペレーティングシステム8の多重送信手段26はまず
タスク間通信情報領域30を参照し、その中にあるプロ
セッサ別待ちタスク行列71〜73を参照する。多重送
信手段26は最初にCPU4(4)上のタスクが受信待
ちを行なうCPU4(4)用待ちタスク行列71を参照
し、タスクD(16)のタスク固有情報40を得る。そ
して、タスクD(16)に対しメッセージ51を送信す
る。次にCPU1(1)の多重送信手段26は次の待ち
タスク行列72、この例ではCPU3(3)用待ちタス
ク行列72からタスクC(15)のタスク固有情報41
を得て、タスクC(15)に対し、メッセージ51を送
信する。
【0047】この後、上記のタスクAからのメッセージ
を処理中に、CPU2(2)のタスクB(14)から同
種のメッセージ送信要求が発生しても、同様にしてCP
U3(3)、CPU4(4)のタスクF(18)、タス
クG(19)はそれぞれタスク固有情報43、44を介
して受信可能となる。換言すればマルチタスク処理への
対応が可能となる。この様に構成することによりCPU
上に同一処理をする複数のタスクがそれぞれ対をなすC
PU3(3)、CPU4(4)に存在するので、1つの
タスクが処理中であっても更に別途送信要求される同一
処理のメッセージを送受信することがが可能である。な
お、この場合、メッセージ処理の状況を示す確認領域5
0はメッセージ送信要求毎に識別子を設けて設定し、そ
れぞれについて”未処理”、”処理済み”等の値を設定
して制御する。
【0048】実施例3.次に本発明の実施例3を図10
を用いて説明する。図10は実施例3におけるマルチプ
ロセッサシステムの構成図である。図中、1〜5はロー
カルメモリを備えたプロセッサボード、6は共有メモ
リ、7は共有バスである。また、8〜12は各プロセッ
サボード上で動作するオペレーティングシステム、13
〜23はオペレーティングシステム上で実行されるタス
クである。図中、18はタスクF、19はタスクG、2
0はタスクH、21はタスクI、22はタスクJ、23
はタスクKを示す。30はタスク間通信情報領域を示し
ており、75〜77はプロセッサ別待ちタスク行列、7
8〜80はプロセッサ別待ち行列につながれているタス
ク個数を格納する個数領域、40〜45は共有メモリ6
用タスク固有情報である。また、50は確認領域、51
は送信メッセージを示す。この図において、タスクG
(19)、タスクI(21)、タスクJ(22)のタス
ク固有情報が共有メモリ6に存在しないのは、これらタ
スクがメッセージの処理中であることを意味する。
【0049】次に動作について説明する。動作について
は実施例3の特徴的な部分について説明する。本実施例
3の特徴はタスク間通信情報領域30に、CPU別待ち
タスク行列32〜34につながれている待ちタスク数を
格納する個数領域78〜80を設けたことにある。送信
タスクA(13)のオペレーティングシステム8の多重
送信手段26は、待ちタスク行列75〜77を参照し、
まず一番待ちタスク数が多い待ちタスク行列を見つけ
る。図10の例ではCPU5(5)の待ちタスク行列7
7の個数領域80の値が3で一番多いのでその中にある
タスクE(17)のタスク固有情報42を取り出し、タ
スクE(17)に対しメッセージ51を送信する。次に
2番目に待ちタスクが多い待ちタスク行列を見つける。
ここではCPU3(3)の待ちタスク行列76がその待
ち行列であり、その中にあるタスクC(15)のタスク
固有情報41を取り出し、タスクC(15)に対しメッ
セージ51を送信する。この様に構成することにより、
待ち他タスク数の多いCPU、即ち負荷の軽いCPUに
メッセージを送付出来、処理待ち時間の短縮、処理効率
の向上が可能である。
【0050】実施例4.次に本発明の実施例4を図11
を用いて説明する。図11は実施例4におけるマルチプ
ロセッサシステムの構成図である。図中、1〜5はロー
カルメモリを備えたプロセッサボード、6は共有メモ
リ、7は共有バスである。また、8〜12は各プロセッ
サボード上で動作するオペレーティングシステム、13
〜17はオペレーティングシステム上で実行されるタス
ク、30はタスク間通信情報領域、32は待ちタスク行
列、40〜42は共有メモリ用タスク固有情報、50は
確認領域、51〜52は送信メッセージを示す。なお、
実施例1と同一または相当の部分は同じ符号を付してい
る。
【0051】次に動作について説明する。本実施例4の
特徴は、受信タスクにメッセージを送信する際に送信タ
イミングを一定時間ずらすことにある。図11におい
て、送信タスクA(13)がメッセージ送信する時、タ
スクA(13)の属するオペレーティングシステム8の
多重送信手段26はまずタスク間情報領域30の待ちタ
スク行列32から1つ目のタスク固有情報、図ではタス
ク固有情報40からタスクDのタスク固有情報を取り出
し、タスクD(16)に対しメッセージ51を送信す
る。次にタスク間情報領域30の待ちタスク行列32か
ら次のタスク固有情報、図ではタスク固有情報41から
タスクC(15)のタスク固有情報41を取り出す。こ
の時、直ちにメッセージをタスクC(15)に送信する
のではなく、一定時間送信タスクの処理を止め、その後
にタスクC(15)に対しメッセージ52を送信する。
この様に構成することにより共有バス7の負荷を分散す
ることが出来、処理の効率化を図る。
【0052】
【発明の効果】以上のように、この発明によれば、同一
メッセージを複数のタスクが同時に処理するので、1つ
のプロセッサに故障が発生しても、その障害に対するメ
ッセージ処理の遅延が発生しないため、復旧に時間を要
しない。
【0053】プロセッサが異常処理をしても、処理中に
それを検出することができる。
【0054】さらに、待ちタスク行列をプロセッサ別に
設けたので,同一処理をする複数のタスクが複数の各プ
ロセッサに存在すれば、該タスクに同一メッセージを送
信する時,常にプロセッサを分けて送信することができ
る。
【0055】さらに、プロセッサ別の待ちタスク行列に
受信待ちをしているタスク数を保持する領域を付加した
ので、常に待ちタスク数が多いプロセッサにメッセージ
を送信することが可能となり、プロセッサの付加を均等
にすることができる。
【0056】さらに、複数の受信タスクへの送信を任意
の時間ずらして行うようにしたので、同一メッセージの
複数タスクへの送信、メッセージを受信した複数のタス
クが同一メッセージの処理をすることにより共用バス上
の通信負荷を分散することができる。
【図面の簡単な説明】
【図1】この発明のマルチプロセッサシステムのシステ
ム構成を示す図である。
【図2】この発明のマルチプロセッサシステムのタスク
間通信手段の構成及び共用メモリの構成を示す図であ
る。
【図3】この発明のマルチプロセッサシステムの動作例
の環境を示す図である。
【図4】この発明のマルチプロセッサシステムの動作例
の環境を示す図である。
【図5】この発明のマルチプロセッサシステムの多重送
信手段のフローの図である。
【図6】この発明のマルチプロセッサシステムの受信割
込処理手段のフローの図である。
【図7】この発明のマルチプロセッサシステムの受信処
理手段のフローをを示す図である。
【図8】この発明のマルチプロセッサシステムの処理完
了判断手段のフローを示す図である。
【図9】この発明の実施例2のマルチプロセッサシステ
ムの構成を示す図である。
【図10】この発明の実施例3のマルチプロッセサシス
テムの構成を示す図である。
【図11】この発明の実施例4のマルチプロッセサシス
テムの構成を示す図である。
【図12】従来のマルチプロセッサシステムのシステム
構成を示す図である。
【図13】従来のマルチプロセッサシステムのプロセッ
サ間通信におけるタスク間通信情報領域を示す図であ
る。
【符号の説明】
1〜5 プロセッサボード 6 共用メモリ 7 共用バス 8〜12 オペレーティングシステム 13〜23 タスク 25 タスク間通信手段 26 多重送信手段 27 処理完了判断手段 28 受信処理手段 29 受信割込処理手段 30 タスク間通信情報領域 31 通信チャネルID格納領域 32 待ちタスク行列 33 待ちメッセージ行列 40〜45 共用メモリ用タスク固有情報 60〜62 メッセージ情報 50 確認領域 51〜52 メッセージ 71〜73 待ちタスク行列 75〜77 待ちタスク行列 78〜80 個数領域 100 システムコントローラ 101 I/Oコントローラ 102〜103 入出力装置 111〜114 待ち行列管理テーブル 115〜118 待ち行列ポインタ 119〜124 通信バッファ

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 待ちタスク行列と待ちメッセージ行列と
    メッセージを受信したタスクのメッセージ処理情報を保
    持する共有メモリと、メッセージ送信側のプロセッサに
    設け、タスクからのメッセージ送信要求に応じて前記の
    待ちタスク行列の複数のタスクに同じメッセージを送信
    する多重送信手段と、メッセージ受信側の複数のプロセ
    ッサに設け、該メッセージを受信したタスクが処理を終
    了したら前記共有メモリを参照し、該タスクが最初に処
    理を終了したと判定したら該メッセージ処理を終了した
    ことを前記共有メモリに書き込んで次の処理をさせ、該
    タスクが後から処理を終了したと判定したら処理を無効
    にする処理完了判断手段と、からなることを特徴とする
    マルチプロセッサ装置。
  2. 【請求項2】 待ちタスク行列と待ちメッセージ行列と
    メッセージを受信したタスクのメッセージ処理情報を保
    持する共有メモリと、メッセージ送信側のプロセッサに
    設け、タスクからのメッセージ送信要求に応じて前記の
    待ちタスク行列の複数のタスクに同じメッセージを送信
    する多重送信手段と、メッセージ受信側の複数のプロセ
    ッサに設け、該メッセージを受信したタスクが処理を終
    了したら前記共有メモリを参照し、該タスクが最初に処
    理を終了したと判定したら該メッセージ処理を終了した
    こと及び処理結果を前記共有メモリに書き込んで次の処
    理をさせ、タスクが後から処理を終了したと判定したら
    その処理結果と前記の最初に処理を終了したタスクの処
    理結果を比較して、後から終了の処理を無効にする処理
    完了判断手段と、からなることを特徴とするマルチプロ
    ッセサ装置。
  3. 【請求項3】 共有メモリの待ちタスク行列をプロッセ
    サ別に分けたプロッセサ別待ちタスク行列を持つことを
    特徴とする請求項1または請求項2に記載のマルチプロ
    セッサ装置。
  4. 【請求項4】 共有メモリのプロッセサ別待ちタスク行
    列に待ちタスクの個数を保持することを特徴とする請求
    項3に記載のマルチプロセッサ装置。
  5. 【請求項5】 多重送信手段は最初に受信タスクにメッ
    セージを送信した後、任意の時間経過後に後続の受信タ
    スクにメッセージを送信する様にしたことを特徴とする
    請求項1、請求項2、請求項3、請求項4の何れかに記
    載のマルチプロセッサ装置。
  6. 【請求項6】 待ちタスク行列と待ちメッセージ行列と
    メッセージ処理情報を共有メモリに保持し、タスクがメ
    ッセージ送信要求を出力したら、送信側のプロセッサに
    設けた多重送信手段は前記の待ちタスク行列の複数のタ
    スクにメッセージを送信し、該メッセージを受信したタ
    スクが処理を終了したら、同処理をしたタスクのプロセ
    ッサに設けた処理完了判断手段は前記共有メモリを参照
    し、タスクが最初に該メッセージ処理を終了したと判定
    したら該メッセージの処理は終了したことを共有メモリ
    に書いて次の処理をさせ、タスクが後から該メッセージ
    処理を終了したと判定したら処理を無効にすることを特
    徴とするマルチプロセッサのタスク間通信方法。
JP6026978A 1994-02-24 1994-02-24 マルチプロセッサの装置と方法 Pending JPH07234850A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6026978A JPH07234850A (ja) 1994-02-24 1994-02-24 マルチプロセッサの装置と方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6026978A JPH07234850A (ja) 1994-02-24 1994-02-24 マルチプロセッサの装置と方法

Publications (1)

Publication Number Publication Date
JPH07234850A true JPH07234850A (ja) 1995-09-05

Family

ID=12208256

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6026978A Pending JPH07234850A (ja) 1994-02-24 1994-02-24 マルチプロセッサの装置と方法

Country Status (1)

Country Link
JP (1) JPH07234850A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009217721A (ja) * 2008-03-12 2009-09-24 Toyota Infotechnology Center Co Ltd マルチプロセッサシステムにおけるデータ同期方法及びマルチプロセッサシステム
JP2014063235A (ja) * 2012-09-19 2014-04-10 Fujitsu Semiconductor Ltd 実行制御方法、およびマルチプロセッサシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009217721A (ja) * 2008-03-12 2009-09-24 Toyota Infotechnology Center Co Ltd マルチプロセッサシステムにおけるデータ同期方法及びマルチプロセッサシステム
JP2014063235A (ja) * 2012-09-19 2014-04-10 Fujitsu Semiconductor Ltd 実行制御方法、およびマルチプロセッサシステム

Similar Documents

Publication Publication Date Title
US5060144A (en) Locking control with validity status indication for a multi-host processor system that utilizes a record lock processor and a cache memory for each host processor
US5828821A (en) Checkpoint restart method and apparatus utilizing multiple log memories
EP0196331B1 (en) Method of and arrangement for ordering of multiprocessor operations in a multiprocessor system
US5276828A (en) Methods of maintaining cache coherence and processor synchronization in a multiprocessor system using send and receive instructions
US5392397A (en) Command execution system for using first and second commands to reserve and store second command related status information in memory portion respectively
JPH0227441A (ja) コンピュータ・システム
JPH07311660A (ja) 障害を早期検出するためのソフトウェア制御方式のデータ処理方法
JP3431941B2 (ja) データ処理システムにおける命令の実行順序を決定する方法および装置
US5613133A (en) Microcode loading with continued program execution
US5386560A (en) Execution of page data transfer by PT processors and issuing of split start and test instructions by CPUs coordinated by queued tokens
JPH07234850A (ja) マルチプロセッサの装置と方法
JPS63228335A (ja) 計算機システムにおける事象通知・受取処理方式
JP3006491B2 (ja) トランザクション実行状態管理システム、管理方法、および管理プログラムを記憶する媒体
JPH04305746A (ja) キャッシュメモリ制御装置
JPS6227837A (ja) 主記憶アクセス方式
JP2539436B2 (ja) プロセツサ間通信方式
JPH02213976A (ja) 多重処理コンピユータ及びプロセツサ間通信方法
JP2825589B2 (ja) バス制御方式
JP3335726B2 (ja) マルチプロセッサシステムにおけるデータ保護装置
JPS6239789B2 (ja)
JPH09288608A (ja) 分散処理システムにおけるファイル共用制御装置
JPH05289987A (ja) バス権調停回路
JP3029445B2 (ja) 起動受付装置及び方法
JPH0535507A (ja) 中央処理装置
JPH09292999A (ja) クラスタシステムにおけるトランザクション排他方式