JP2527223B2 - タスク間通信用メッセ―ジ領域制御方式 - Google Patents

タスク間通信用メッセ―ジ領域制御方式

Info

Publication number
JP2527223B2
JP2527223B2 JP63313578A JP31357888A JP2527223B2 JP 2527223 B2 JP2527223 B2 JP 2527223B2 JP 63313578 A JP63313578 A JP 63313578A JP 31357888 A JP31357888 A JP 31357888A JP 2527223 B2 JP2527223 B2 JP 2527223B2
Authority
JP
Japan
Prior art keywords
message
task
message area
area
unit
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
Application number
JP63313578A
Other languages
English (en)
Other versions
JPH02158840A (ja
Inventor
剛 金井
徳裕 有高
博己 長谷川
昌朋 矢崎
隆一 松倉
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP63313578A priority Critical patent/JP2527223B2/ja
Publication of JPH02158840A publication Critical patent/JPH02158840A/ja
Application granted granted Critical
Publication of JP2527223B2 publication Critical patent/JP2527223B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 [概要] タスクが通信用メッセージ領域を獲得してタスク間通
信を基本ソフトウェア上で行うとともにメッセージ領域
の獲得機能を備えない割り込み処理を行う情報処理装置
におけるタスク間通信用メッセージ領域制御方式に関
し、 メモリ管理の使用を制限される割り込み処理ルーチン
等に対してもタスク間通信用メッセージ領域の動的確保
を可能とするメッセージ領域制御方式を提供することを
目的とし、 受信タスク部は,初期設定においてメッセージ領域プ
ール作成手段により基本ソフトウェアの管理するメモリ
プールからメッセージ領域プールを獲得し,割り込み処
理部は,割り込み発生により起動すると前記受信部で作
成したメッセージ領域をメッセージ領域獲得手段により
獲得し,送信メッセージを書き込み,メッセージ送信手
段によりメッセージキューに送信メッセージ領域情報を
接続してメッセージを送信し,受信タスク部は,メッセ
ージ受信手段により前記メッセージキューから割り込み
処理部からのメッセージを受信すると,メッセージ領域
返却手段により該メッセージ領域を返却すると共にメッ
セージ領域補給手段により別のメッセージ領域を補給す
ることにより割り込み処理部と受信タスク部との通信を
行うよう構成する。
[産業上の利用分野] 本発明はタスクが通信用メッセージ領域を獲得してタ
スク間通信を基本ソフトウェア上で行うとともにメッセ
ージ領域の獲得機能を備えない割り込み処理を行う情報
処理装置におけるタスク間通信用メッセージ領域制御方
式に関する。
情報処理装置のプロセッサがマルチタスク処理を行う
場合、生成されるタスク間における同期をとるためにタ
スク間通信が行われる。その場合、送信側タスクで発生
したメッセージを受信側タスクに伝えるためのメッセー
ジ領域を動的に確保する必要がある。しかし、基本ソフ
トウェア(オペレーディングシステム:以下OSという)
が提供するタスク間通信機能はOSの種類によって仕様が
異なり、それに応じてアプリケーションプログラム(タ
スク)が送信するメッセージ用のメッセージ領域の制御
方式にも差がある。
そのうち、タスク間通信用のメッセージ領域をOSが確
保しない方式において、割り込み処理で発生したメッセ
ージをタスクに通知した場合がある。そのような方式で
は、割り込み処理は通常OSが介入することなく割り込み
ルーチンを直ちに実行して終了するので、メッセージ領
域を確保してメッセージを受信側タスクへ通信すること
ができないので、その実現が望まれている。
[従来の技術] 従来のタスク間通信機能はOSにより異なるが、アプリ
ケーションが送信するメッセージを格納するメッセージ
領域の制御方式に着目すると次のとの方式がある。
OSが動的にメッセージ領域を確保して、アプリケー
ション(タスク)が送信しようとするメッセージの中身
をOSが複写して、そのメッセージを相手(受信側)のタ
スクで受信する方式。(例えば、UNIXなど) OSではメッセージ領域の動的確保を行わないで、ア
プリケーション(ユーザプログラム)がメッセージ領域
を確保してメッセージを書込み、受信側のタスクにその
領域を通知すると受信側タスクがそのメッセージを読み
取る方式(例えば、ITRON:Industrial TRONなど)。
上記のの場合、OSによりアプリケーションからのメ
ッセージの中身を複写して、相手側で受信させるための
処理に時間がかかり、高速性の上で難点がある。
これに対し、の場合は、OSによる複写などの処理が
少ないので高速性や実行効率を重視する機器の制御に適
しているが、メッセージ領域の動的確保をOSが行わずア
プリケーション自ら行わなければならず、アプリケーシ
ョンにおいてメッセージ領域の制御方式が必要とされ
る。このの方式のOSでは、メモリの動的獲得を可能と
するメモリ管理機能を備えており、その機能を用いて送
信側のアプリケーション(タスク)でメモリの動的獲得
を行って通信用メッセージ領域を確保している。
[発明が解決しようとする課題] 上記のタスク間通信においてメッセージ領域の動的獲
得を行わないOSにおいては、アプリケーションプログラ
ム(タスク)からはOSのメモリ管理機能を利用できる。
ところが、割り込み処理ルーチンのようにタスクの概念
とは異なる処理(割り込みにより即座に所定のルーチン
を実行して終了する)においては、アプリケーション
(タスク)に対して、メッセージを通信したい場合に、
OSとの関係がないためメッセージ領域の動的獲得ができ
ない。従って、上記のOSを用いた情報処理システムにお
いては、割り込みルーチンから他のタスクにメッセージ
を渡すことができなという問題があった。
本発明は、メモリ管理の使用を制限される割り込み処
理ルーチン等に対してもタスク間通信用メッセージ領域
の動的確保を可能とするメッセージ領域制御方式を提供
することを目的とする。
[課題を解決するための手段] 第1図は本発明の原理構成図である。
第1図において、10は割り込み処理部、11はメッセー
ジキュー、12は受信タスク部、13はメモリプール、14は
メッセージ領域プールを表す。
本発明は受信タスク部が基本ソフトウェアのメモリ管
理機能を用いてメッセージ領域を予め確保しておき、割
り込み処理部の動作においてその確保されたメッセージ
領域を用いて受信タスク部へ送信するものである。
[作用] 受信タスク部12では、初期設定においてメッセージ領
域プール作成手段121がメモリ領域を要求する。これに
応じて基本ソフトウェア(OS)がメモリ管理機能により
管理下のメモリプール13の中から所定の領域を切り出し
て、メッセージ領域プール作成手段121に獲得領域とし
て供給する。この獲得された領域がメッセージ領域141
として使用可能になり、同様の動作を繰り返して複数の
メッセージ領域141〜143からなるメッセージ領域プール
14を作成する。
受信タスク部12はその後、メッセージ受信手段122が
メッセージキュー11の状態を調べて送信されたキューが
あればそれを受信し、受信したメッセージ領域はメッセ
ージ領域返却手段123において基本ソフトウェアのメモ
リ管理機能により返却する(基本ソフトウェアが管理す
るメモリプール13に含まれる)。次いで、メッセージ領
域補給手段124により、返却して無くなったメッセージ
領域の代わりのメッセージ領域をメッセージ領域プール
作成時と同様の方法により補給する。
割り込み処理部10は割り込みの発生により動作を開始
し、メッセージ領域獲得手段101が受信タスク部12のメ
ッセージ領域プール作成手段121において作成したメッ
セージ領域(先頭の一つ)を獲得(アドレスを検出)し
て、そのメッセージ領域に送信すべきメッセージ(割り
込み時の状態など)を書込む。
次に、メッセージ送信手段102は、そのメッセージ領
域の情報(アドレスなど)をメッセージキュー11に接続
することにより送信を行う。
なお、第1図においてブロックで示すメッセージ領域
141は、割り込み処理部10のメッセージ領域獲得手段101
において獲得され、メッセージキュー11に接続され、受
信されたあと返却される様子を図式的に表したものであ
る。
メッセージキュー11には、受信タスク部12に送信すべ
きメッセージを表す情報が複数個格納可能に構成され、
受信タスク部12のメッセージ受信手段122により順次取
り出されて、受信が行われる。
このようにして、基本ソフトウェアのメモリ管理機能
の使用が制限される割り込み処理においても、タスク通
信用のメッセージ領域の動的確保が可能となる。
[実施例] 第2図は本発明の実施例構成図、第3図は受信側タス
クの動作フロー図、第4図は割り込み処理ルーチンの動
作フロー図である。
第2図において20は、CPUおよびメモリからなる処理
装置、21はメモリ管理機能を備えるOS、22は割り込み処
理ルーチン、23はメッセージキュー、24は受信側タス
ク、25はメモリプール、26はメッセージ領域プールを表
す。
第2図の構成において、OS21は受信側タスク24からの
要求(システムコールによる)に応じてOSが管理するメ
モリプール25からタスクに対しメモリ領域を付与した
り、返却された領域をメモリプールに戻したりするメモ
リ管理機能を備える。
受信側タスク24において実行される処理フローは第3
図に示され、初めにメモリブロック獲得のシステムコー
ルを発行する。これに対しOS21がメモリプールからメモ
リブロックを切り出してそのアドレスを通知すると、受
信側タスク24で受け取ってメモリブロックが獲得される
と、獲得したメモリブロックをメッセージ領域プールの
リンクにつなぐ。これにより第2図に示すようにリンク
ポインタ261にメッセージ領域262の先頭のアドレスが格
納される。
次に、ステップ33において、メッセージ領域が規定個
数分に達したかどうかを判別し、規定個数以下の場合再
びステップ31,32を実行し、次にメッセージ領域263が獲
得されると、そのアドレスを前回獲得したメッセージ領
域262内のリンクポインタに書き込むことによりリンク
が連結される。以下、同様にして規定個数分のメッセー
ジ領域が獲得される。
次いで、メッセージ受信システムコールが発行され
(ステップ34)、これに対してOSの動作によりメッセー
ジキュー23からメッセージ(メッセージ領域のアドレ
ス)を受信すると、その受信内容を参照する(対応する
処理を実行する)。
受信終了により、送信メッセージが格納されたメッセ
ージ領域は不用となり、ステップ36においてメモリブロ
ック解放システムコールを発行する。
続いて、ステップ31に戻り、メモリブロック獲得を行
って、解放したメッセージ領域の補充を行い、規定個数
のメッセージ領域を確保する。
なお、複数個数のメッセージ領域を獲得してメッセー
ジキューを設けた理由は、割り込み処理ルーチンは割り
込みが発生するとハード的に直ちに実行が開始され、し
かも連続的に発生する場合もあるのに対し、受信タスク
(アプリケーション)の動作は周期的にしかも比較的に
低速度で実行されるので、メッセージ領域が1個しか設
けられないと、受信側タスクにおいてメッセージを受信
する前に次の送信すべきメッセージが発生することにな
り、複数のメッセージ領域を設けることによりそのよう
な事態を防止するものである。
受信側タスク24の処理が高速であるため、メッセージ
キュー23に予め複数のキューを準備しておき、タスクの
処理を効率化するためである。
次に、割り込み処理ルーチン22において実行される処
理フローを第4図により説明する。
割り込みが発生すると、割り込み処理ルーチンが開始
され、メッセージ領域プールのリンクからメッセージ領
域を一個はずし(ステップ41)、メッセージ領域に送信
内容を書込む(ステップ42)。ついで、メッセージ送信
のシステムコールを発行して(ステップ43)、ルーチン
を終了する。メッセージ送信のシステムコールが発行さ
れると、OS21はメッセージキュー23に送信内容が書込ま
れたメッセージ領域のアドレスを連結する。
本発明による割り込み処理ルーチンの例を挙げれば、
ディスク装置のアクセス制御において、動作完了の時に
正常,異常の完了状態を割り込みによりアプリケーショ
ン(タスク)に通知して、その内容(正常,異常)に従
って分析などの処理を行う場合などにおいて利用可能で
あり、その他のハードウェア,ソフトウェアの割り込み
についても適用することができる。
[発明の効果] 本発明によればOSの提供するメモリ管理機能の使用が
制限された割り込み処理ルーチンなどもタスク間通信メ
ッセージ領域の動的確保が可能となり、割り込み処理ル
ーチンとのタスク間通信を容易に実現することができ
る。
【図面の簡単な説明】
第1図は本発明の原理構成図、第2図は本発明の実施例
構成図、第3図は受信側タスクの動作フロー図、第4図
は割り込み処理ルーチンの動作フロー図である。 第1図中、 10:割り込み処理部 11:メッセージキュー 12:受信タスク部 13:メモリプール 14:メッセージ領域プール
───────────────────────────────────────────────────── フロントページの続き (72)発明者 矢崎 昌朋 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 松倉 隆一 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (56)参考文献 特開 昭61−134844(JP,A) 特開 昭62−163148(JP,A)

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】タスクが通信用メッセージ領域を獲得して
    タスク間通信を基本ソフトウェア上で行うとともに割り
    込み処理においてメッセージ領域の獲得機能を備えない
    情報処理装置におけるタスク間通信用メッセージ領域制
    御方式において, 受信タスク部は,初期設定においてメッセージ領域プー
    ル作成手段により基本ソフトウェアの管理するメモリプ
    ールからメッセージ領域プールを獲得し, 割り込み処理部は,割り込み発生により起動すると前記
    受信部で作成したメッセージ領域をメッセージ領域獲得
    手段により獲得し,送信メッセージを書き込み,メッセ
    ージ送信手段によりメッセージキューに送信メッセージ
    領域情報を接続してメッセージを送信し, 前記受信タスク部は,メッセージ受信手段により前記メ
    ッセージキューから割り込み処理部からのメッセージを
    受信すると,メッセージ領域返却手段により該メッセー
    ジ領域を返却すると共にメッセージ領域補給手段により
    別のメッセージ領域を補給することにより割り込み処理
    部と受信タスク部との通信を行うことを特徴とするタス
    ク間通信用メッセージ領域制御方式。
JP63313578A 1988-12-12 1988-12-12 タスク間通信用メッセ―ジ領域制御方式 Expired - Fee Related JP2527223B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63313578A JP2527223B2 (ja) 1988-12-12 1988-12-12 タスク間通信用メッセ―ジ領域制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63313578A JP2527223B2 (ja) 1988-12-12 1988-12-12 タスク間通信用メッセ―ジ領域制御方式

Publications (2)

Publication Number Publication Date
JPH02158840A JPH02158840A (ja) 1990-06-19
JP2527223B2 true JP2527223B2 (ja) 1996-08-21

Family

ID=18042996

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63313578A Expired - Fee Related JP2527223B2 (ja) 1988-12-12 1988-12-12 タスク間通信用メッセ―ジ領域制御方式

Country Status (1)

Country Link
JP (1) JP2527223B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06301559A (ja) * 1993-04-12 1994-10-28 Nec Corp タスクドライバ
JP2611739B2 (ja) * 1994-04-26 1997-05-21 日本電気株式会社 タスク間通信システム
JPH08161186A (ja) * 1994-12-09 1996-06-21 Nec Corp タスク間通信方式

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61134844A (ja) * 1984-12-05 1986-06-21 Nec Corp 記憶装置における共用空間制御方式
JP2516915B2 (ja) * 1986-01-14 1996-07-24 富士通株式会社 共通領域参照制御方法

Also Published As

Publication number Publication date
JPH02158840A (ja) 1990-06-19

Similar Documents

Publication Publication Date Title
US5349682A (en) Dynamic fault-tolerant parallel processing system for performing an application function with increased efficiency using heterogeneous processors
US5325492A (en) System for asynchronously delivering self-describing control elements with a pipe interface having distributed, shared memory
US5276879A (en) Portable, resource sharing file server using co-routines
US6081846A (en) Method and computer program product for reducing intra-system data copying during network packet processing
US5781741A (en) Message communications system in a parallel computer
US5748959A (en) Method of conducting asynchronous distributed collective operations
US4937737A (en) Process transparent multi storage mode data transfer and buffer control
JP4034969B2 (ja) 共通メモリのメモリ管理システム
US6212573B1 (en) Mechanism for invoking and servicing multiplexed messages with low context switching overhead
EP0317466B1 (en) Reverse flow control mechanism and method
US6145015A (en) Multimedia data transferring method
JPH10143381A (ja) 遊休ワークステーションを共用するための装置および方法
EP0147574A2 (en) Resource sharing method between workstations
JP3308026B2 (ja) 二重プロセス表示サーバシステム
AU603876B2 (en) Multiple i/o bus virtual broadcast of programmed i/o instructions
US5204954A (en) Remote storage management mechanism and method
EP0317468B1 (en) Bus flow control system
JP2527223B2 (ja) タスク間通信用メッセ―ジ領域制御方式
US5436888A (en) Communication path control method and communication device
JP3082297B2 (ja) タスク制御方式
JP3112287B2 (ja) メッセージ管理処理装置
JPH04367037A (ja) 計算機システム
JP3021539B2 (ja) クライアント・サーバ方式におけるサーバ制御装置
JPH05265779A (ja) タスク間通信システム
JP2001014177A (ja) 非同期データ入出力処理方法およびそのプログラム記録媒体

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees