JPH0612387A - マルチプロセッサ間通信方法 - Google Patents

マルチプロセッサ間通信方法

Info

Publication number
JPH0612387A
JPH0612387A JP19020492A JP19020492A JPH0612387A JP H0612387 A JPH0612387 A JP H0612387A JP 19020492 A JP19020492 A JP 19020492A JP 19020492 A JP19020492 A JP 19020492A JP H0612387 A JPH0612387 A JP H0612387A
Authority
JP
Japan
Prior art keywords
processor
flag
communication
shared memory
area
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
JP19020492A
Other languages
English (en)
Inventor
Hiroshi Moriuchi
啓 森内
Emiko Miyake
恵美子 三宅
Kenji Matsunobu
健司 松延
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 JP19020492A priority Critical patent/JPH0612387A/ja
Publication of JPH0612387A publication Critical patent/JPH0612387A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】 ハードウェア構成の簡略化、各プロセッサの
負荷の軽減を図り、交信能力の高いマルチプロセッサ間
通信方法を得る。 【構成】 複数のプロセッサで共通に使用される共有メ
モリのアクセス時における競合制御を、当該共有メモリ
上に設けた排他制御管理エリアのフラグによって行い、
また、通信するプロセッサの各組合せ毎に付与した識別
番号毎に、あるいは送信と受信とで独立して、交信エリ
アの使用権の競合制御を行う。 【効果】 複数のプロセッサで非同期(割り込みを用い
ず)に共有メモリをアクセスして情報の交信が可能とな
り、当該情報の交信用のハードウェア構成が簡略化で
き、各プロセッサの負荷も軽減されて交信能力が向上す
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、複数のプロセッサが
使用する共有メモリを有するマルチプロセッサシステム
において、各プロセッサ間でのデータ授受を行うための
マルチプロセッサ間通信方法に関するものである。
【0002】
【従来の技術】図15は、例えば特開昭60−1670
58号公報に示された従来のマルチプロセッサ間通信方
法を実現するマルチプロセッサシステムの構成を示すブ
ロック図である。図において、1a,1bはこのマルチ
プロセッサシステムを構成するプロセッサ、2はプロセ
ッサ1a,1bが使用する共有メモリである。この共有
メモリ内において、21,22はプロセッサ1aへの処
理依頼用の交信エリア、23,24はプロセッサ1bへ
の処理依頼用の交信エリアであり、25,26はプロセ
ッサ1aへ応答を返すための交信エリア、27,28は
プロセッサ1bへ応答を返すための交信エリアである。
【0003】また、4はプロセッサ1aとプロセッサ1
bの間で割り込みを掛けるためのリンケージバスであ
り、5はリンケージバス4の制御装置である。プロセッ
サ1a内において、a1〜a3はこのプロセッサ1a上
で実行されるユーザタスクであり、6はプロセッサ1b
へ処理依頼するための送信プログラム、7は応答を依頼
元タスクへ返す応答処理プログラムである。また、プロ
セッサ1b内において、b1〜b3は当該プロセッサ1
b上で依頼された処理を実行する処理プログラムであ
り、8は依頼された処理を判別して該当する処理プログ
ラムを起動する受信プログラム、9は応答を依頼元に送
信する応答送信プログラムである。
【0004】次に動作について説明する。ここではま
ず、プロセッサ1a上のユーザタスクa3がプロセッサ
1bに処理を依頼する場合について説明する。ユーザタ
スクa3がプロセッサ1bに対して処理を依頼するため
に送信プログラム6を起動させると、送信プログラム6
は依頼する処理の識別情報及び処理パラメータからなる
連絡情報を共有メモリ2内の交信エリア23に設定し、
リンケージバス4を介してプロセッサ1bに割り込みを
掛け応答待ちに入る。なお、この送信プログラム6はリ
エントラントとし応答待ちに入っている状態であっても
他のユーザタスクa1,a2から起動できるようにして
おく。
【0005】一方、プロセッサ1bにおいて割り込みが
発生すると、受信プログラム8が起動され、交信エリア
23の内容より該当する処理プログラムb1を起動す
る。そしてその処理プログラムb1が処理を終了させて
応答送信プログラム9を起動させると、この応答送信プ
ログラム9は応答情報を交信エリア25に設定し、リン
ケージバス4を介してプロセッサ1aに割り込みを掛け
る。これにより、プロセッサ1aでは応答処理プログラ
ム7が起動され、応答情報を依頼元タスクa3に返すと
ともに、待ち状態を解除する。
【0006】
【発明が解決しようとする課題】従来のマルチプロセッ
サ間通信方法は以上のように構成されているので、共有
メモリ2のアクセスの排他制御のためのハードウェア、
及び割り込みを発生させるための割り込み専用回路が必
要となり、また割り込み処理による各プロセッサ1a,
1bのCPU負荷が大きくなって処理速度が遅くなるな
どの問題点があった。
【0007】この発明は上記のような問題点を解消する
ためになされたもので、ハードウェアの構成を簡単化で
きるとともに、各プロセッサの負荷を軽減し、交信能力
の高いマルチプロセッサ間通信方法を得ることを目的と
する。
【0008】
【課題を解決するための手段】請求項1に記載の発明に
係るマルチプロセッサ間通信方法は、複数のプロセッサ
で共通に使用される共有メモリのアクセス時における競
合制御を、当該共有メモリ上に設けた排他制御管理エリ
アのフラグによって行うものである。
【0009】また、請求項2に記載の発明に係るマルチ
プロセッサ間通信方法は、通信するプロセッサの各組合
せごと付与した識別番号別に、交信エリアの使用権の競
合制御を行うものである。
【0010】また、請求項3に記載の発明に係るマルチ
プロセッサ間通信方法は、送信と受信とで独立に、交信
エリアの使用権の競合制御を行うものである。
【0011】
【作用】請求項1に記載の発明におけるマルチプロセッ
サ間通信方法は、共有メモリ上に設けた排他制御管理エ
リアのフラグを用いて、当該共有メモリのアクセス時に
おける競合制御を行うことにより、複数のプロセッサが
非同期(割り込みを用いず)に共有メモリをアクセスし
て、情報の交信を行うことができるマルチプロセッサ間
通信方法を実現する。
【0012】また、請求項2に記載の発明におけるマル
チプロセッサ間通信方法は、交信エリアの使用権の競合
制御を、通信するプロセッサの各組合せごと付与した識
別番号別に行うことにより、交信能力のより高いマルチ
プロセッサ間通信方法を実現する。
【0013】また、請求項3に記載の発明におけるマル
チプロセッサ間通信方法は、交信エリアの使用権の競合
制御を、送信と受信で別々に行うことにより、交信能力
のより高いマルチプロセッサ間通信方法を実現する。
【0014】
【実施例】
実施例1.以下、この発明の実施例1を図について説明
する。図1は請求項1に記載された発明の一実施例によ
るマルチプロセッサ間通信方法を実現するマルチプロセ
ッサシステムの構成を示すブロック図である。図におい
て、1a,1bはプロセッサ、2は共有メモリ、4はリ
ンケージバス、a1〜a3はユーザタスク、5は制御装
置、6は送信プログラム、7は応答処理プログラム、b
1〜b3は処理プログラム、8は受信プログラム、9は
応答送信プログラムであり、図15に同一符号を付した
従来のそれらと同一、あるいは相当部分であるため詳細
な説明は省略する。また、20は送信元のプロセッサ1
a(1b)から送信先のプロセッサ1b(1a)への処
理依頼、および送信先のプロセッサ1b(1a)から送
信元のプロセッサ1a(1b)への応答が設定される交
信エリアであり、29は交信エリア20の使用権の競合
制御を行うためのフラグがセットされる排他制御管理エ
リアとしてのセマフォフラグである。
【0015】また図2はセマフォフラグ29の構成を示
す説明図で、1a使用中フラグと1b使用中フラグとを
備えており、例えば1a使用中フラグはプロセッサ1a
が共有メモリ2使用時にセットされ、同様に、1b使用
中フラグはプロセッサ1bが共有メモリ2使用時にセッ
トされる。
【0016】次に動作について説明する。ここで、図3
はプロセッサ1aの動作を示すフローチャートであり、
図4はプロセッサ1bの動作を示すフローチャートであ
る。なお、ここではプロセッサ1aのユーザタスクa3
がプロセッサ1bに処理を依頼する場合について説明す
る。
【0017】プロセッサ1aでは、まずユーザタスクa
3がプロセッサ1bに処理を依頼するために、図3のス
テップST1において、送信プログラム6を起動する。
起動された送信プログラム6はステップST2にて共有
メモリ2内のセマフォフラグ29を取り込み、プロセッ
サ1bが共有メモリ2の交信エリア20を使用中かどう
かをステップST3でチェックする。その結果、プロセ
ッサ1bが共有メモリ2を使用中でなければステップS
T4にて、セマフォフラグ29の1a使用中フラグを一
旦セットするとともに、交信エリア20に処理依頼デー
タを書き込む。この書き込み処理が完了すれば、ステッ
プST5でセマフォフラグ29の1a使用中フラグをク
リアして未使用状態とした後、待ち状態に入る。
【0018】一方、プロセッサ1bでは、図4に示すよ
うにステップ6において、受信プログラム8が必要に応
じて起動され、この受信プログラム8がステップST7
で共有メモリ2内のセマフォフラグ29を取り込んで、
プロセッサ1aが共有メモリ2の交信エリア20を使用
中かどうかをステップST8においてチェックする。そ
の結果、プロセッサ1aが共有メモリ2を使用中でなけ
れば、ステップST9でその交信エリア20に処理依頼
データがあるかどうかチェックし、データがあればステ
ップST10において、セマフォフラグ29の1b使用
中フラグを一旦セットして、交信エリア20から処理依
頼データを読み込む。この読み込み処理が完了すれば、
ステップST11にてセマフォフラグ29の1b使用中
フラグをクリアした後、ステップST12によって該当
する処理プログラムb1を起動する。
【0019】このようにして起動された処理プログラム
b1はステップST13において所定の処理を実行し、
その後ステップST14で応答送信プログラム9の起動
を行う。起動された応答送信プログラム9はステップS
T15においてセマフォフラグ29を取り込み、ステッ
プST16にてプロセッサ1aが共有メモリ2を使用中
かどうかチェックする。チェックの結果、使用中でなけ
ればステップST17にて、セマフォフラグ29の1b
使用中フラグを一旦セットするとともに、交信エリア2
0に応答データを書き込む。この応答データの書き込み
処理が完了すれば、ステップST18で1b使用中フラ
グのクリアを行った後、他の処理へ移行する。
【0020】一方、待ち状態となっていたプロセッサ1
aは図3のステップST19において、定期的あるいは
必要に応じて応答処理プログラム7の起動を行う。起動
された応答処理プログラム7はステップST20で共有
メモリ2内のセマフォフラグ29を取り込み、ステップ
ST21においてプロセッサ1bが共有メモリ2の交信
エリア20を使用中であるかどうかチェックする。その
結果、プロセッサ1bが使用中でなければ、ステップS
T22にて交信エリア20に応答データがあるかどうか
をチェックし、応答データがあればステップST23で
セマフォフラグ29の1a使用中フラグを一旦セットし
た後、交信エリア20から応答データを読み込む。この
読み込み処理が完了すれば、ステップST24にて1a
使用中フラグをクリアして未使用状態とし、ステップS
T25で所定の処理を実行する。
【0021】実施例2.なお、上記実施例1では、セマ
フォフラグに各プロセッサに対応した使用中フラグを設
けたものを示したが、セマフォフラグに使用中フラグの
他に通信する各プロセッサの組合せごとに、それらを識
別するための識別番号を付与し、この識別番号ごとに交
信エリアの競合制御を行うようにしてもよく、これによ
り上記実施例1と同様の目的を達成でき、さらにより高
い効果を奏する。
【0022】以下、請求項2に記載したそのような発明
の一実施例を図について説明する。図5はこの実施例2
によるマルチプロセッサ間通信方法を実現するマルチプ
ロセッサシステムの構成を示すブロック図であり、図1
と同一もしくは相当部分には同一符号を付してその説明
を省略する。図において、1c,1dはプロセッサ1
a,1bと同等のプロセッサであり、c1,c2,c3
はプロセッサ1cの処理プログラム、d1,d2,d3
はプロセッサ1dのユーザタスクである。
【0023】また、図6はその共有メモリ2内に設けら
れた前記各プロセッサ1a〜1dに共通のセマフォフラ
グの構成を示す説明図であり、例えば識別番号1はプロ
セッサ1aとプロセッサ1b間の組合せ、識別番号2は
プロセッサ1aとプロセッサ1c間の組合せを、・・・
識別番号6はプロセッサ1cとプロセッサ1d間の組合
せをそれぞれ示しており、プロセッサ1aがプロセッサ
1bにデータを送信するために共有メモリ2を使用する
場合は、識別番号1の下の1a使用中フラグを、プロセ
ッサ1aがプロセッサ1cにデータを送信するために共
有メモリ2を使用する場合は、識別番号2の下の1a使
用中フラグを、・・・プロセッサ1cがプロセッサ1d
にデータを送信するために共有メモリ2を使用する場合
は、識別番号6の下の1c使用中フラグをそれぞれ使用
する。
【0024】次に動作について説明する。ここで、図7
はプロセッサ1aの、図8はプロセッサ1bの動作を示
すフローチャートであり、図9はプロセッサ1dの、図
10はプロセッサ1cの動作を示すフローチャートであ
る。なお、ここではプロセッサ1aのユーザタスクa3
がプロセッサ1bに処理を依頼する場合についてまず説
明する。
【0025】プロセッサ1aでは、ユーザタスクa3が
プロセッサ1bに処理を依頼するために、図7のステッ
プST31において送信プログラム6を起動する。起動
された送信プログラム6はステップST32にて共有メ
モリ2内のセマフォフラグ29を取り込み、交信エリア
20中のプロセッサ1aとプロセッサ1bとの交信に割
り当てられたエリアをプロセッサ1bが使用中であるか
否かを判定するためにセマフォフラグ29内の識別番号
1の下の1b使用中フラグをステップST33でチェッ
クする。その結果、プロセッサ1bが使用中でなけれ
ば、ステップST34にてセマフォフラグ29の識別番
号1の下の1a使用中フラグを一旦セットするととも
に、交信エリア20の当該エリアに処理依頼データを書
き込む。この書き込み処理が完了すれば、ステップST
35でセマフォフラグ29の識別番号1の1a使用中フ
ラグをクリアして未使用状態とした後、待ち状態に入
る。
【0026】一方、プロセッサ1bでは図8のステップ
ST36において、受信プログラム8を必要に応じて起
動し、この受信プログラム8がステップST37で共有
メモリ2内のセマフォフラグ29を取り込み、ステップ
ST38にてプロセッサ1aが共有メモリ2の交信エリ
ア20中のプロセッサ1bとの交信に割り当てられたエ
リアを使用中か否かを識別番号1の1a使用中フラグで
チェックする。その結果、プロセッサ1aが使用中でな
ければ、ステップST39で交信エリア20中の当該エ
リアに処理依頼データがあるかチェックし、データがあ
ればステップST40において、セマフォフラグ29の
識別番号1の1b使用中フラグを一旦セットしてプロセ
ッサ1aとの交信に割り当てられたエリアから処理依頼
データを読み込む。この読み込み処理が完了すれば、ス
テップST41にてセマフォフラグ29の識別番号1の
1b使用中フラグをクリアした後、ステップST42に
よって該当するプログラムb1を起動する。
【0027】このようにして起動された処理プログラム
b1はステップST43において所定の処理を実行し、
その後ステップST44で応答送信プログラム9の起動
を行う。起動された応答送信プログラム9はステップS
T45においてセマフォフラグ29を取り込み、ステッ
プST46にてプロセッサ1aが共有メモリ2の交信エ
リア20内のプロセッサ1bとの交信に割り当てられた
エリアを使用中か否かを識別番号1の1a使用中フラグ
でチェックする。チェックの結果、使用中でなければス
テップST47にて、セマフォフラグ29の識別番号1
の1b使用中フラグを一旦セットするとともに、前記プ
ロセッサ1aとの交信に割り当てられたエリアに応答デ
ータを書き込む。この応答データの書き込み処理が完了
したら、ステップST48でセマフォフラグ29の識別
番号1の1b使用中フラグのクリアを行った後、他の処
理へ移行する。
【0028】一方、待ち状態となっていたプロセッサ1
aは図7のステップST49において、必要に応じて応
答処理プログラムの起動を行う。起動された応答処理プ
ログラム7はステップST50で共有メモリ2内のセマ
フォフラグ29を取り込み、ステップST51において
プロセッサ1bが交信エリア20内のプロセッサ1aと
の交信に割り当てられたエリアを使用中か否かを識別番
号1の1b使用中フラグでチェックする。使用中でなけ
れば、ステップST52にてプロセッサ1bからの応答
データがあるかどうかのチェックを行って、応答データ
があればステップST53でセマフォフラグ29の識別
番号1の1a使用中フラグを一旦セットした後、当該応
答データの読み込みを行う。この読み込み処理が完了す
れば、ステップST54にて識別番号1の1a使用中フ
ラグをクリアして未使用状態とした後、ステップST5
5で所定の処理を実行する。
【0029】このようなプロセッサ1aと1bとの間で
の情報の交信と同時に、プロセッサ1dと1cの間でも
情報の交信を行うことができる。図9および図10のフ
ローチャートは、プロセッサ1dのユーザタスクd3が
プロセッサ1cに処理の依頼をする場合のそのような動
作の流れを示している。この場合、共有メモリ2内のセ
マフォフラグ29は、プロセッサ1cとプロセッサ1d
間用の識別番号6の下の1c使用中フラグと1d使用中
フラグとを使用する点を除いて、図7および図8を用い
て説明した、プロセッサ1aとプロセッサ1bとの間の
情報の交信と同一であるため、図9および図10の各ス
テップに図7および図8の対応するステップと同一の番
号を付してその説明は省略する。
【0030】以上のように、共有メモリ2内のセマフォ
フラグ29に、各プロセッサに対応した使用中フラグの
他に、通信している各プロセッサの組合せを示す識別番
号を設けることにより、1つのプロセッサが他の1つの
プロセッサと交信するために共有メモリ2を使用中に、
別の2つのプロセッサ間で共有メモリ2を使用できるの
で交信能力をより高くすることができる。
【0031】実施例3.また上記実施例1では、セマフ
ォフラグに各プロセッサも対応した使用中フラグを設け
たものを示したが、セマフォフラグに使用中フラグの他
に送/受信別の識別番号を設けてもよく、これにより送
信・受信別に使用権を与えることが可能となり、上記実
施例と同様の目的を達成でき、さらにより高い効果を奏
する。
【0032】以下、請求項3に記載したそのような発明
の一実施例を図について説明する。図11はこの実施例
3によるマルチプロセッサ間通信方法を実現するマルチ
プロセッサシステムの構成を示すブロック図であり、図
1と同一もしくは相当部分には同一符号を付して説明の
重複をさけている。図において、20aはプロセッサ1
aの送信用エリアであるとともにプロセッサ1bの受信
用エリアとして使用される交信エリアであり、20bは
プロセッサ1bの送信用エリアであるとともにプロセッ
サ1aの受信用エリアとして使用される交信エリアであ
る。
【0033】また、図12はその共有メモリ2内に設け
られたセマフォフラグ29の構成を示す説明図であり、
例えば、識別番号1は送信を示し、その下の1a使用中
フラグ及び1b使用中フラグはプロセッサ1a及びプロ
セッサ1bが送信する時に使用するフラグである。ま
た、識別番号2は受信を示し、その下の1a使用中フラ
グ及び1b使用中フラグはプロセッサ1a及びプロセッ
サ1bが受信する時に使用するフラグである。
【0034】次に動作について説明する。ここで図13
はプロセッサ1aの動作を示すフローチャートであり、
図14はプロセッサ1bの動作を示すフローチャートで
ある。なお、ここではプロセッサ1aのユーザタスクa
3がプロセッサ1bに処理を依頼する場合について説明
する。
【0035】プロセッサ1aでは、まずユーザタスクa
3がプロセッサ1bに処理を依頼するために、図13の
ステップST61において送信プログラム6を起動す
る。起動された送信プログラム6はステップST62に
て共有メモリ2内のセマフォフラグ29を取り込み、そ
の識別番号2の1b使用中フラグを見て、プロセッサ1
bがプロセッサ1aの送信用の交信エリア20aを、受
信読み込みのために使用中かどうかをステップST63
でチェックする。プロセッサ1bが当該交信エリア20
aを使用中でなければ、プロセッサ1aはステップST
64にて、セマフォフラグ29の識別番号1の1a使用
中フラグを一旦セットするとともに、当該交信エリア2
0aに処理依頼データを書き込む。この書き込み処理が
完了すれば、ステップST65でセマフォフラグ29の
識別番号1の1a使用中フラグをクリアして待ち状態に
入る。
【0036】一方、プロセッサ1bでは図14のステッ
プST66において、受信プログラム8を必要に応じ起
動し、この受信プログラム8がステップST67で共有
メモリ2内のセマフォフラグ29を取り込んで、その識
別番号1の1a使用中フラグより、プロセッサ1aがプ
ロセッサ1aの送信エリアを処理依頼データ書き込みの
ために使用中であるか否かをステップST68でチェッ
クする。その結果、プロセッサ1aが使用中でなけれ
ば、ステップST69でプロセッサ1aの送信用の交信
エリア20aに処理依頼データがあるかチェックし、デ
ータがあればステップST70において、セマフォフラ
グ29の識別番号2の1b使用中フラグを一旦セットし
て、プロセッサ1aの送信用の交信エリア20aから処
理依頼データを読み込む。この読み込み処理が完了すれ
ば、ステップST71にてセマフォフラグ29の識別番
号2の1b使用中フラグをクリアした後、ステップST
72によって該当するプログラムb1を起動する。
【0037】このようにして起動された処理プログラム
b1はステップST73において所定の処理を実行し、
その後、ステップST74で応答送信プログラム9の起
動を行う。起動された応答送信プログラム9はステップ
ST75においてセマフォフラグ29を取り込み、ステ
ップST76にてプロセッサ1aがプロセッサ1bの送
信用のエリア20bを受信読み込みのために使用中かど
うかチェックする。チェックの結果、プロセッサ1aが
使用中でなければ、プロセッサ1bはステップST77
にてセマフォフラグ29の識別番号1の1b使用中エリ
アを一旦セットするとともに、プロセッサ1bの送信用
の交信エリア20bに応答データを書き込む。この書き
込み処理が完了すれば、ステップST78で識別番号1
の1b使用中フラグのクリアを行った後、他の処理へ移
行する。
【0038】一方、待ち状態となっていたプロセッサ1
aは図13のステップST79において、必要に応じて
応答処理プログラム7の起動を行う。起動された応答処
理プログラム7はステップST80で共有メモリ2内の
セマフォフラグ29を取り込み、プロセッサ1bがプロ
セッサ1bの送信用の交信エリア20bを応答データ書
き込みのために使用中であるか否かをステップST81
でチェックする。その結果、プロセッサ1bが使用中で
なければ、ステップST82にてその交信エリア20b
に応答データがあるかチェックし、応答データがあれば
ステップST83において、識別番号2の1a使用中フ
ラグを一旦セットした後、当該交信エリア20bから応
答データを読み込む。この読み込み処理が完了すれば、
ステップST84にて1a使用中フラグをクリアした
後、ステップST85で所定の処理を実行する。
【0039】以上のように、共有メモリ2内のセマフォ
フラグ29に各プロセッサに対応した使用中フラグの他
に、送信・受信を示す識別番号を設けることにより、片
方のプロセッサが共有メモリ2内のデータを読み込み中
に、他方のプロセッサも共有メモリ2内のデータを読み
込むことができるので、交信能力をより高くすることが
できる。
【0040】
【発明の効果】以上のように、請求項1に記載の発明に
よれば、共有メモリのアクセス時における競合制御を、
当該共有メモリ上に設けた排他制御管理エリアのフラグ
を用いて行うように構成したので、複数のプロセッサで
非同期(割り込みを用いず)に共有メモリをアクセスし
て情報の交信を行うことが可能となり、当該情報の交信
のためのハードウェア構成を簡略化することが可能とな
り、また、各プロセッサの負荷も軽減されて、交信能力
の高いマルチプロセッサ間通信方法が得られる効果があ
る。
【0041】また、請求項2に記載の発明によれば、通
信するプロセッサの各組合せごと付与した識別番号ごと
に、交信エリアの使用権の競合制御を行うように構成し
たので、ある1組のプロセッサ間の交信に共有メモリを
使用している時でも、別の組のプロセッサ間でその共有
メモリを使用して交信することが可能となって、交信能
力のより高いマルチプロセッサ間通信方法が得られる効
果がある。
【0042】また、請求項3に記載の発明によれば、送
信と受信とで別々に交信エリアの使用権の競合制御を行
うように構成したので、一方のプロセッサで共有メモリ
を読み出し中でも、他方のプロセッサが共有メモリの内
容を読み出すことが可能となって、交信能力のより高い
マルチプロセッサ間通信方法が得られる効果がある。
【図面の簡単な説明】
【図1】この発明の実施例1によるマルチプロセッサ間
通信方法を実現するマルチプロセッサシステムの構成を
示すブロック図である。
【図2】上記実施例におけるセマフォフラグの構成を示
す説明図である。
【図3】上記実施例におけるプロセッサ1aの動作を示
すフローチャートである。
【図4】上記実施例におけるプロセッサ1bの動作を示
すフローチャートである。
【図5】この発明の実施例2によるマルチプロセッサ間
通信方法を実現するマルチプロセッサシステムの構成を
示すブロック図である。
【図6】上記実施例におけるセマフォフラグの構成を示
す説明図である。
【図7】上記実施例におけるプロセッサ1aの動作を示
すフローチャートである。
【図8】上記実施例におけるプロセッサ1bの動作を示
すフローチャートである。
【図9】上記実施例におけるプロセッサ1dの動作を示
すフローチャートである。
【図10】上記実施例におけるプロセッサ1cの動作を
示すフローチャートである。
【図11】この発明の実施例3によるマルチプロセッサ
間通信方法を実現するマルチプロセッサシステムの構成
を示すブロック図である。
【図12】上記実施例におけるセマフォフラグの構成を
示す構成図である。
【図13】上記実施例におけるプロセッサ1aの動作を
示すフローチャートである。
【図14】上記実施例におけるプロセッサ1bの動作を
示すフローチャートである。
【図15】従来のマルチプロセッサ間通信方法が実現さ
れるマルチプロセッサシステムの構成を示すブロック図
である。
【符号の説明】
1a プロセッサ 1b プロセッサ 1c プロセッサ 1d プロセッサ 2 共有メモリ 20 交信エリア 20a 交信エリア 20b 交信エリア 29 セマフォフラグ(排他制御管理エリア)

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 複数のプロセッサによって共通に使用さ
    れる共有メモリを備え、前記プロセッサ相互の通信を前
    記共有メモリを経由して行うマルチプロセッサ間通信方
    法において、前記共有メモリ上に、送信先の前記プロセ
    ッサへの処理の依頼、および送信元の前記プロセッサへ
    の応答が設定される交信エリアと、前記交信エリアの使
    用権の競合制御を行うためのフラグがセットされる排他
    制御管理エリアとを設け、前記各プロセッサは、前記排
    他制御管理エリアの前記フラグより前記交信エリアが他
    の前記プロセッサによって使用中であるか否かをチェッ
    クし、使用中でないことを確認すると、前記排他制御管
    理エリアの前記フラグをセットして、前記交信エリアへ
    の前記処理の依頼、もしくはその応答の書き込み/読み
    出しを行い、前記書き込み/読み出しの処理が終了する
    と、前記排他制御管理エリアの前記フラグをクリアする
    ことを特徴とするマルチプロセッサ間通信方法。
  2. 【請求項2】 通信する前記プロセッサの各組み合わせ
    ごとに、それぞれを識別するための識別番号を付与し、
    前記排他制御管理エリアの前記フラグを当該識別番号対
    応に割り当てて、前記交信エリアの使用権の競合制御を
    前記識別番号別に行うことを特徴とする請求項1に記載
    のマルチプロセッサ間通信方法。
  3. 【請求項3】 前記排他制御管理エリアの前記フラグを
    送信と受信とに区別して割り当て、前記交信エリアの使
    用権の競合制御を前記送信と受信で独立に行うことを特
    徴とする請求項1に記載のマルチプロセッサ間通信方
    法。
JP19020492A 1992-06-25 1992-06-25 マルチプロセッサ間通信方法 Pending JPH0612387A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19020492A JPH0612387A (ja) 1992-06-25 1992-06-25 マルチプロセッサ間通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19020492A JPH0612387A (ja) 1992-06-25 1992-06-25 マルチプロセッサ間通信方法

Publications (1)

Publication Number Publication Date
JPH0612387A true JPH0612387A (ja) 1994-01-21

Family

ID=16254197

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19020492A Pending JPH0612387A (ja) 1992-06-25 1992-06-25 マルチプロセッサ間通信方法

Country Status (1)

Country Link
JP (1) JPH0612387A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100863541B1 (ko) * 2006-11-21 2008-10-15 엠텍비젼 주식회사 동기 제어 장치를 가지는 듀얼 포트 메모리, 동기 제어장치를 가지는 듀얼 포트 메모리 시스템 및 듀얼 포트메모리 시스템의 동기 제어 방법
KR100886179B1 (ko) * 2007-02-02 2009-02-27 엠텍비젼 주식회사 듀얼 포트 메모리로의 액세스 권한 획득 처리 방법 및 이를위한 장치
US8984199B2 (en) * 2003-07-31 2015-03-17 Intel Corporation Inter-processor interrupts

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8984199B2 (en) * 2003-07-31 2015-03-17 Intel Corporation Inter-processor interrupts
KR100863541B1 (ko) * 2006-11-21 2008-10-15 엠텍비젼 주식회사 동기 제어 장치를 가지는 듀얼 포트 메모리, 동기 제어장치를 가지는 듀얼 포트 메모리 시스템 및 듀얼 포트메모리 시스템의 동기 제어 방법
KR100886179B1 (ko) * 2007-02-02 2009-02-27 엠텍비젼 주식회사 듀얼 포트 메모리로의 액세스 권한 획득 처리 방법 및 이를위한 장치

Similar Documents

Publication Publication Date Title
US5884077A (en) Information processing system and method in which computer with high load borrows processor of computer with low load to execute process
EP0936555B1 (en) Cache coherency protocol with independent implementation of optimised cache operations
EP0389242B1 (en) Data base processing system using multiprocessor system
JP2539352B2 (ja) 階層型多重計算機システム
US5317737A (en) Method and apparatus for controlling a re-entrant synchronization lock tenure in a multiprocessor system
JP3431941B2 (ja) データ処理システムにおける命令の実行順序を決定する方法および装置
US5850521A (en) Apparatus and method for interprocessor communication
JPH0612387A (ja) マルチプロセッサ間通信方法
JP2813182B2 (ja) マルチプロセッサコンピュータ複合装置
JP2000148577A (ja) アクセス制御方法及びアクセス制御装置
EP0936553B1 (en) Cache coherency protocol with tagged state and historical information
JP3427395B2 (ja) バス中継装置
JP2504754B2 (ja) 中央処理装置
JPH02257249A (ja) 情報処理システム
JPH07114522A (ja) マルチプロセッサシステム
JPS6145348A (ja) バス優先権制御方式
JPH0822414A (ja) コンピュータシステム
JPH02242363A (ja) 共用資源制御方式
JPS58154058A (ja) マルチプロセッサシステム
JPH05265932A (ja) バス制御方式
JPH04299432A (ja) データベース管理システム
JPH0675793A (ja) 仮想計算機間データ送受信処理方法
JPS63113637A (ja) ハツシユ・テ−ブル・エントリ排他処理方式
JPH01169564A (ja) プロセッサ間同期方式
JPH0118457B2 (ja)