JPH06301655A - 分散処理システム - Google Patents
分散処理システムInfo
- Publication number
- JPH06301655A JPH06301655A JP5087494A JP8749493A JPH06301655A JP H06301655 A JPH06301655 A JP H06301655A JP 5087494 A JP5087494 A JP 5087494A JP 8749493 A JP8749493 A JP 8749493A JP H06301655 A JPH06301655 A JP H06301655A
- Authority
- JP
- Japan
- Prior art keywords
- priority
- message
- processing
- computer
- processes
- 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
Links
Abstract
(57)【要約】
【目的】メッセージ送信時に優先度を、ユーザ等が指定
することなく、優先度を使用した分散処理を実現可能と
する分散処理システムを提供すること。 【構成】分散処理システムを構成する各計算機に、与え
られた処理をプロセスの優先度にしたがって実行可能と
するスケジューリング処理部(1s、2s、3s)と、
プロセスの優先度に対応した新たな優先度を付加したメ
ッセージを送信するメッセージ通信処理部(1c、2
c、3c)を備えた構成にする。 【効果】複数の計算機を有して構成される分散処理シス
テム全体の処理が、同一の優先度にしたがって実行さ
れ、リアルタイム機能を有する分散処理システムを容易
に構築できる。
することなく、優先度を使用した分散処理を実現可能と
する分散処理システムを提供すること。 【構成】分散処理システムを構成する各計算機に、与え
られた処理をプロセスの優先度にしたがって実行可能と
するスケジューリング処理部(1s、2s、3s)と、
プロセスの優先度に対応した新たな優先度を付加したメ
ッセージを送信するメッセージ通信処理部(1c、2
c、3c)を備えた構成にする。 【効果】複数の計算機を有して構成される分散処理シス
テム全体の処理が、同一の優先度にしたがって実行さ
れ、リアルタイム機能を有する分散処理システムを容易
に構築できる。
Description
【0001】
【産業上の利用分野】与えられたプログラムをマルチプ
ロセスで実行する計算機が、各々ネットワークを介して
接続されている分散処理システムに関し、特に、該分散
処理システムにおけるリアルタイム処理技術に関する。
ロセスで実行する計算機が、各々ネットワークを介して
接続されている分散処理システムに関し、特に、該分散
処理システムにおけるリアルタイム処理技術に関する。
【0002】
【従来の技術】リアルタイム処理が必要となる計算機シ
ステムにおいては、処理の実行単位である、いわゆる
「プロセス」に、当該処理の実行の順序を定める情報で
ある「優先度」を付加して、高い優先度を有するプロセ
スほど、優先的に処理する方法が、一般的に使用されて
いる。
ステムにおいては、処理の実行単位である、いわゆる
「プロセス」に、当該処理の実行の順序を定める情報で
ある「優先度」を付加して、高い優先度を有するプロセ
スほど、優先的に処理する方法が、一般的に使用されて
いる。
【0003】ところで、分散処理システムにおいては、
互いに他の計算機上のプロセスが、メッセージを通信し
あって、目的の処理を行うために、通信しあっているプ
ロセスにわたる優先度を考慮した処理が必要である。一
般に、分散処理システムでは、複数存在するプロセス
の、各プロセス間の通信に関する処理についても、優先
度を考慮する必要がある。
互いに他の計算機上のプロセスが、メッセージを通信し
あって、目的の処理を行うために、通信しあっているプ
ロセスにわたる優先度を考慮した処理が必要である。一
般に、分散処理システムでは、複数存在するプロセス
の、各プロセス間の通信に関する処理についても、優先
度を考慮する必要がある。
【0004】そこで、例えば、特開平2−113362
号公報に記載されているように、プロセス間での通信対
象であるメッセージに優先度を与え、該メッセージを受
信した計算機が、与えられた優先度にしたがって、当該
メッセージに対応する処理を実行することにより、複数
の計算機にわたる処理についても、優先度を使用した処
理を可能としている。
号公報に記載されているように、プロセス間での通信対
象であるメッセージに優先度を与え、該メッセージを受
信した計算機が、与えられた優先度にしたがって、当該
メッセージに対応する処理を実行することにより、複数
の計算機にわたる処理についても、優先度を使用した処
理を可能としている。
【0005】
【発明が解決しようとする課題】しかしながら、上記の
従来技術においては、メッセージの送信時に、送信元が
送信先の処理の優先度を、その都度指定しなければなら
ないという問題点が存在していた。
従来技術においては、メッセージの送信時に、送信元が
送信先の処理の優先度を、その都度指定しなければなら
ないという問題点が存在していた。
【0006】また、優先度の与え方が適当でないと、複
数の計算機を有して構成される分散処理システム全体
で、統一的に優先度制御が行われないという問題があっ
た。
数の計算機を有して構成される分散処理システム全体
で、統一的に優先度制御が行われないという問題があっ
た。
【0007】そこで、本発明は、メッセージ送信時に優
先度を、ユーザ等が指定することなく、優先度を使用し
た分散処理を実現可能とする分散処理システムを提供す
ることを目的としている。
先度を、ユーザ等が指定することなく、優先度を使用し
た分散処理を実現可能とする分散処理システムを提供す
ることを目的としている。
【0008】
【課題を解決するための手段】上記課題を解決するた
め、以下の手段が考えられる。
め、以下の手段が考えられる。
【0009】複数のプロセスを並行に実行する複数の計
算機を、ネットワークを介して接続し、各計算機上の、
少なくとも1以上のプロセスがプロセス間通信を行いな
がら、当該プロセスの処理を実行する分散処理システム
において、前記各計算機は、処理の順番を定める情報で
ある優先度を有する複数のプロセスを、優先度の高い順
番に実行するスケジューリング処理手段と、プロセスの
優先度に対応した新たな優先度をメッセージに付加し、
前記ネットワークを介して他の計算機に、前記新たな優
先度が付加されたメッセージを送受信処理するメッセー
ジ通信処理手段を備え、さらに、前記スケジューリング
処理手段は、受信したメッセージに付加された前記新た
な優先度に対応した、さらに新たな優先度を、当該受信
メッセージに対応する処理を実行するプロセスに与える
分散処理システムである。
算機を、ネットワークを介して接続し、各計算機上の、
少なくとも1以上のプロセスがプロセス間通信を行いな
がら、当該プロセスの処理を実行する分散処理システム
において、前記各計算機は、処理の順番を定める情報で
ある優先度を有する複数のプロセスを、優先度の高い順
番に実行するスケジューリング処理手段と、プロセスの
優先度に対応した新たな優先度をメッセージに付加し、
前記ネットワークを介して他の計算機に、前記新たな優
先度が付加されたメッセージを送受信処理するメッセー
ジ通信処理手段を備え、さらに、前記スケジューリング
処理手段は、受信したメッセージに付加された前記新た
な優先度に対応した、さらに新たな優先度を、当該受信
メッセージに対応する処理を実行するプロセスに与える
分散処理システムである。
【0010】また、複数のプロセスを並行に実行する複
数の計算機を、ネットワークを介して接続し、各計算機
上の、少なくとも1以上のプロセスがプロセス間通信を
行いながら、当該プロセスの処理を実行する分散処理シ
ステムにおいて、前記各計算機は、処理の順番を定める
情報である優先度を有する複数プロセスを、優先度の高
い順番に実行するスケジューリング処理手段と、プロセ
スの優先度に対応して新たに優先度を付加したメッセー
ジの、送受信処理を、前記新たな優先度にしたがって実
行するメッセージ通信処理手段を備え、さらに、前記ス
ケジューリング処理手段は、受信したメッセージに付加
された前記新たな優先度に対応した、さらに新たな優先
度を、当該受信メッセージに対応する処理を実行するプ
ロセスに与える分散処理システムも考えられる。
数の計算機を、ネットワークを介して接続し、各計算機
上の、少なくとも1以上のプロセスがプロセス間通信を
行いながら、当該プロセスの処理を実行する分散処理シ
ステムにおいて、前記各計算機は、処理の順番を定める
情報である優先度を有する複数プロセスを、優先度の高
い順番に実行するスケジューリング処理手段と、プロセ
スの優先度に対応して新たに優先度を付加したメッセー
ジの、送受信処理を、前記新たな優先度にしたがって実
行するメッセージ通信処理手段を備え、さらに、前記ス
ケジューリング処理手段は、受信したメッセージに付加
された前記新たな優先度に対応した、さらに新たな優先
度を、当該受信メッセージに対応する処理を実行するプ
ロセスに与える分散処理システムも考えられる。
【0011】
【作用】上述のように、本発明では、分散処理システム
を構成する各計算機に、与えられた処理をプロセスの優
先度にしたがって実行可能とするスケジューリング手段
と、プロセスの優先度に対応した優先度を付加したメッ
セージを送信するメッセージ通信処理手段を備えること
により目的を達成するものである。
を構成する各計算機に、与えられた処理をプロセスの優
先度にしたがって実行可能とするスケジューリング手段
と、プロセスの優先度に対応した優先度を付加したメッ
セージを送信するメッセージ通信処理手段を備えること
により目的を達成するものである。
【0012】まず、スケジューリング手段は、実行を依
頼されたプログラムを、実行依頼時に指定された、ある
いは、プログラムで指定された、あるいはまた、メッセ
ージ通信処理手段により指定された、「優先度」で実行
するように、プロセスのスケジューリングを行い、優先
度にしたがってプロセスの処理を実行する。
頼されたプログラムを、実行依頼時に指定された、ある
いは、プログラムで指定された、あるいはまた、メッセ
ージ通信処理手段により指定された、「優先度」で実行
するように、プロセスのスケジューリングを行い、優先
度にしたがってプロセスの処理を実行する。
【0013】また、プログラム中に、他の計算機のプロ
セスへのメッセージ送信処理が発生した時、送信先の計
算機およびプロセスと、実行中のプロセスの優先度と、
送信すべきメッセージの内容であるメッセージデータと
を指定して、メッセージ通信処理手段にメッセージ送信
を依頼する。
セスへのメッセージ送信処理が発生した時、送信先の計
算機およびプロセスと、実行中のプロセスの優先度と、
送信すべきメッセージの内容であるメッセージデータと
を指定して、メッセージ通信処理手段にメッセージ送信
を依頼する。
【0014】さらに、メッセージ通信処理手段は、送信
すべきメッセージデータと指定された優先度をメッセー
ジとして、該メッセージを指定された送信先プロセスに
送信する。
すべきメッセージデータと指定された優先度をメッセー
ジとして、該メッセージを指定された送信先プロセスに
送信する。
【0015】送信先の計算機に備えられたメッセージ通
信処理手段は、送信元から送られてきたメッセージを受
信し、受信したメッセージに含まれている優先度を指定
して、当該計算機が備えるスケジューリング手段にスケ
ジューリングを行うことを依頼する。
信処理手段は、送信元から送られてきたメッセージを受
信し、受信したメッセージに含まれている優先度を指定
して、当該計算機が備えるスケジューリング手段にスケ
ジューリングを行うことを依頼する。
【0016】したがって、メッセージ送信時には、メッ
セージ送信先の計算機上での優先度を、ユーザー等が指
定することなく、複数の計算機にわたる処理を、優先度
にしたがって実行することが可能になる。
セージ送信先の計算機上での優先度を、ユーザー等が指
定することなく、複数の計算機にわたる処理を、優先度
にしたがって実行することが可能になる。
【0017】
【実施例】以下、本発明の実施例を図面を参照して説明
する。まず、本発明の一実施例について説明する。本発
明の一実施例として、いわゆるオブジェクト指向分散処
理システム(オブジェクト指向プログラムを分散処理す
るシステム)について説明する。図1は、本発明の実施
例の構成例の説明図である。
する。まず、本発明の一実施例について説明する。本発
明の一実施例として、いわゆるオブジェクト指向分散処
理システム(オブジェクト指向プログラムを分散処理す
るシステム)について説明する。図1は、本発明の実施
例の構成例の説明図である。
【0018】複数の計算機、すなわち計算機1、計算機
2、計算機3がネットワーク9を介して接続されてい
る。
2、計算機3がネットワーク9を介して接続されてい
る。
【0019】ネットワーク9は、例えば、光ファイバ等
の通信手段を具備するLAN(ローカル・エリア・ネッ
トワーク)システム等にて実現される。
の通信手段を具備するLAN(ローカル・エリア・ネッ
トワーク)システム等にて実現される。
【0020】各計算機1、2、3は、プロセッサ1p、
2p、3p、メモリ1m、2m、3m、ネットワークア
ダプタ1n、2n、3n、ディスク装置1d、2d、3
dを有して構成されている。
2p、3p、メモリ1m、2m、3m、ネットワークア
ダプタ1n、2n、3n、ディスク装置1d、2d、3
dを有して構成されている。
【0021】ネットワークアダプタ1n、2n、3n
は、ネットワーク9を介して他の計算機と、メッセージ
を含む各種情報の送受信をするための手段である。ネッ
トワークアダプタは、例えば、光通信を利用する場合に
は、光電変換素子、各種CMOS等の電子デバイスにて
実現される。
は、ネットワーク9を介して他の計算機と、メッセージ
を含む各種情報の送受信をするための手段である。ネッ
トワークアダプタは、例えば、光通信を利用する場合に
は、光電変換素子、各種CMOS等の電子デバイスにて
実現される。
【0022】各計算機には、それぞれ異なる「計算機番
号」と称される識別子が与えられており、該計算機番号
を指定することにより、他の計算機とネットワークを介
した、メッセージを含む各種情報の通信が可能である。
号」と称される識別子が与えられており、該計算機番号
を指定することにより、他の計算機とネットワークを介
した、メッセージを含む各種情報の通信が可能である。
【0023】メモリには、計算機が実行する、オペレー
ティングシステム(OS)のプログラム1o、2o、3
o、オブジェクトのプログラム11、12、21、2
2、31、32等を有しており、これらをプロセッサ1
p、2p、3pが読みだして、所定の処理を実行する。
メモリは、例えば、RAM等の半導体素子等により実現
される。
ティングシステム(OS)のプログラム1o、2o、3
o、オブジェクトのプログラム11、12、21、2
2、31、32等を有しており、これらをプロセッサ1
p、2p、3pが読みだして、所定の処理を実行する。
メモリは、例えば、RAM等の半導体素子等により実現
される。
【0024】OSは、各種プログラムの実行管理、ユー
ザへのサービスの提供を行うソフトウェアであり、処理
実行単位であるプロセスの実行のスケジューリングを行
うスケジューリング処理部1s、2s、3s、異なる計
算機間上の異なるプロセス間で、メッセージを含む情報
を送受信する機能を有するメッセージ通信処理部1c、
2c、3cを備えて構成されている。
ザへのサービスの提供を行うソフトウェアであり、処理
実行単位であるプロセスの実行のスケジューリングを行
うスケジューリング処理部1s、2s、3s、異なる計
算機間上の異なるプロセス間で、メッセージを含む情報
を送受信する機能を有するメッセージ通信処理部1c、
2c、3cを備えて構成されている。
【0025】また、各オブジェクトのプログラムを構成
する「手続き」は、「システムコール」と称する呼び出
し処理により、OSに対して、ディスク装置中でのファ
イルの生成、ディスク装置へのファイルの書き込み、デ
ィスク装置からのファイルの読み込み等の処理を依頼す
る。
する「手続き」は、「システムコール」と称する呼び出
し処理により、OSに対して、ディスク装置中でのファ
イルの生成、ディスク装置へのファイルの書き込み、デ
ィスク装置からのファイルの読み込み等の処理を依頼す
る。
【0026】図2は、1台の計算機2に格納されるソフ
トウェアの構造を表わしたものである。以下、この図を
参照して、本発明の処理の概要を説明する。
トウェアの構造を表わしたものである。以下、この図を
参照して、本発明の処理の概要を説明する。
【0027】オブジェクト21、22等は、ひとまとま
りのプログラムであり、ひとつのオブジェクトは、ひと
つのプロセスとして処理を実行する。
りのプログラムであり、ひとつのオブジェクトは、ひと
つのプロセスとして処理を実行する。
【0028】「プロセス」とは、プロセッサが実行する
一連の処理実行単位のことであり、「タスク」とも称さ
れる。
一連の処理実行単位のことであり、「タスク」とも称さ
れる。
【0029】各プロセスには、プロセス番号が与えら
れ、プロセス番号を指定することにより、計算機内で一
意にプロセスを指定することができる。
れ、プロセス番号を指定することにより、計算機内で一
意にプロセスを指定することができる。
【0030】本発明の実施例におけるOSは、複数のプ
ロセスを適当に切り換えながら、並行に実行することの
できる、いわゆるマルチプロセス機能を有している。
ロセスを適当に切り換えながら、並行に実行することの
できる、いわゆるマルチプロセス機能を有している。
【0031】例えば、アジソン・ウェスリー社(Addiso
n-Wesley Publish Company)刊、「ザ・デザイン・アン
ド・インプリメンテーション・オブ・ザ・4.3ビー・
エス・ディー・ユニックス・オペレーティング・システ
ム(1989年)(The Design and Implementation of
the 4.3BSD UNIX Operation System (1989))」に記載
されているように、現在広く使用されているユニックス
(UNIX)・オペレーティングシステム(「UNI
X」は、ユニックス・システム・ラボラトリーズ社(UN
IX System Laboratries,Inc.)が開発し、ライセンスし
ているオペレーティングシステムである)は、マルチプ
ロセス機能を有しており、これを利用することにより、
ひとつの計算機上で複数のプロセスを同時に実行でき
る。
n-Wesley Publish Company)刊、「ザ・デザイン・アン
ド・インプリメンテーション・オブ・ザ・4.3ビー・
エス・ディー・ユニックス・オペレーティング・システ
ム(1989年)(The Design and Implementation of
the 4.3BSD UNIX Operation System (1989))」に記載
されているように、現在広く使用されているユニックス
(UNIX)・オペレーティングシステム(「UNI
X」は、ユニックス・システム・ラボラトリーズ社(UN
IX System Laboratries,Inc.)が開発し、ライセンスし
ているオペレーティングシステムである)は、マルチプ
ロセス機能を有しており、これを利用することにより、
ひとつの計算機上で複数のプロセスを同時に実行でき
る。
【0032】本実施例においては、プロセスに、実行の
順番を決定する情報である「優先度」を指定することが
可能であり、OSは、指定された優先度にしたがって、
優先度の高いプロセスを優先的に実行する機能も有して
いる。
順番を決定する情報である「優先度」を指定することが
可能であり、OSは、指定された優先度にしたがって、
優先度の高いプロセスを優先的に実行する機能も有して
いる。
【0033】これらの機能は、メモリに記憶されるOS
のプログラム中の、スケジューリング処理部2sにより
実現される。
のプログラム中の、スケジューリング処理部2sにより
実現される。
【0034】したがって、各オブジェクトの処理は、そ
れぞれに与えられた優先度にしたがって実行されること
になる。
れぞれに与えられた優先度にしたがって実行されること
になる。
【0035】また、オブジェクトは、オブジェクト間で
メッセージを送受信しながら処理を実行する。
メッセージを送受信しながら処理を実行する。
【0036】分散処理システムでは、ある特定の処理を
要求する「クライアントプロセス」と、要求された処理
を実行する「サーバプロセス」を組み合わせて処理を実
行する方法が広く使用されている。
要求する「クライアントプロセス」と、要求された処理
を実行する「サーバプロセス」を組み合わせて処理を実
行する方法が広く使用されている。
【0037】このクライアントプロセスや、サーバプロ
セスは、それぞれひとつのオブジェクトであり、クライ
アントプロセスからサーバプロセスへの処理の依頼のた
めの通信や、サーバプロセスからクライアントプロセス
への返答のための通信は、メッセージのやりとりによっ
て行われる。
セスは、それぞれひとつのオブジェクトであり、クライ
アントプロセスからサーバプロセスへの処理の依頼のた
めの通信や、サーバプロセスからクライアントプロセス
への返答のための通信は、メッセージのやりとりによっ
て行われる。
【0038】なお、あるサーバプロセスは、他のサーバ
プロセスに処理を要求すること、すなわち、クライアン
トプロセスとして機能することも可能である。
プロセスに処理を要求すること、すなわち、クライアン
トプロセスとして機能することも可能である。
【0039】メモリ中に記憶されるOSのプログラム
は、さらに、異なる計算機間上に存在する異なるプロセ
ス間で情報を送受信するメッセージ通信処理部2cを備
えており、オブジェクトは、システムコールを発行する
ことにより、他の計算機内に存在するオブジェクトへ
の、メッセージの送信を行うことができる。
は、さらに、異なる計算機間上に存在する異なるプロセ
ス間で情報を送受信するメッセージ通信処理部2cを備
えており、オブジェクトは、システムコールを発行する
ことにより、他の計算機内に存在するオブジェクトへ
の、メッセージの送信を行うことができる。
【0040】また、メッセージ通信処理部は、メッセー
ジに優先度を付加したものを送信する機能を有する。本
発明の実施例では、例えば、メッセージを送信するオブ
ジェクトの処理を実行するプロセスの優先度を、メッセ
ージに付加して送信する。
ジに優先度を付加したものを送信する機能を有する。本
発明の実施例では、例えば、メッセージを送信するオブ
ジェクトの処理を実行するプロセスの優先度を、メッセ
ージに付加して送信する。
【0041】さらに、メッセージに付加する優先度を、
当該メッセージを送信するプロセスが有する優先度に対
して比例関係を有して与えることも考えられる。
当該メッセージを送信するプロセスが有する優先度に対
して比例関係を有して与えることも考えられる。
【0042】さて、各オブジェクトは、他のオブジェク
トからの処理要求メッセージを待ち、送られてきた処理
要求メッセージに応じた処理を、メッセージに付加され
た優先度にしたがって実行する。
トからの処理要求メッセージを待ち、送られてきた処理
要求メッセージに応じた処理を、メッセージに付加され
た優先度にしたがって実行する。
【0043】この処理は、メッセージの受信側の計算機
が備えるメッセージ通信処理部が、送られてきた優先度
付きの処理要求メッセージを受信し、送信先のオブジェ
クト、優先度、およびメッセージを、スケジューリング
処理部に通知し、送信先のオブジェクトの処理の実行を
依頼する。
が備えるメッセージ通信処理部が、送られてきた優先度
付きの処理要求メッセージを受信し、送信先のオブジェ
クト、優先度、およびメッセージを、スケジューリング
処理部に通知し、送信先のオブジェクトの処理の実行を
依頼する。
【0044】スケジューリング処理部は、通知されたオ
ブジェクトの受信メッセージに対応する処理のプロセス
の実行を、与えられた優先度にしたがってスケジューリ
ングし、実行する。
ブジェクトの受信メッセージに対応する処理のプロセス
の実行を、与えられた優先度にしたがってスケジューリ
ングし、実行する。
【0045】以上、本発明の一実施例の概要について述
べたが、さらに詳しく説明する。
べたが、さらに詳しく説明する。
【0046】本発明の実施例において、オブジェクト
は、メッセージを受信することにより活性化され、所定
の処理を実行するプログラムである。
は、メッセージを受信することにより活性化され、所定
の処理を実行するプログラムである。
【0047】一般に、オブジェクトは、データおよび該
データに関する手続きの集合で構成される。
データに関する手続きの集合で構成される。
【0048】図3に示すように、例えばオブジェクト2
1は、データ210、手続き1(211)、手続き2
(212)、および手続き3(213)を有して構成さ
れるプログラムである。
1は、データ210、手続き1(211)、手続き2
(212)、および手続き3(213)を有して構成さ
れるプログラムである。
【0049】各手続きには、その処理を起動するための
受信メッセージのメッセージ名が定義されている。
受信メッセージのメッセージ名が定義されている。
【0050】例えばメッセージ名が「メッセージe」で
あるメッセージを受信した場合には、手続き1を、メッ
セージ名が「メッセージf」であるメッセージを受信し
た場合には、手続き2を、メッセージ名が「メッセージ
h」であるメッセージを受信した場合には、手続き3を
起動するように定義される。
あるメッセージを受信した場合には、手続き1を、メッ
セージ名が「メッセージf」であるメッセージを受信し
た場合には、手続き2を、メッセージ名が「メッセージ
h」であるメッセージを受信した場合には、手続き3を
起動するように定義される。
【0051】また、メッセージは、オブジェクト間で情
報を送受信するための手段である。
報を送受信するための手段である。
【0052】本実施例では、OSがプロセス間通信機能
を有するため、オブジェクトがシステムコールを使用し
て、OSにメッセージ送信を依頼することにより、メッ
セージ通信が実行される。
を有するため、オブジェクトがシステムコールを使用し
て、OSにメッセージ送信を依頼することにより、メッ
セージ通信が実行される。
【0053】ここで、メッセージのデータ形式の一例を
図4に示す。
図4に示す。
【0054】メッセージ800は、メッセージ名を表わ
す文字列が格納されているメモリアドレス801、引数
の数を表わすデータ802と、各引数データが格納され
ているメモリアドレス803、804等を有して構成さ
れている。
す文字列が格納されているメモリアドレス801、引数
の数を表わすデータ802と、各引数データが格納され
ているメモリアドレス803、804等を有して構成さ
れている。
【0055】また、メッセージ名の文字列は、801
1、8012のように、文字コードの並びで表現される
(8019が終了記号である)。引数の実際のデータ
は、それぞれのデータ型に従って、8031、8041
のように記憶される。
1、8012のように、文字コードの並びで表現される
(8019が終了記号である)。引数の実際のデータ
は、それぞれのデータ型に従って、8031、8041
のように記憶される。
【0056】引数のデータ型は、メッセージ毎に、送信
側オブジェクトと受信側オブジェクトで一致するよう
に、各オブジェクトのプログラムで予め定義されてい
る。また、メッセージの引数は、実行する手続きの処理
に利用される。
側オブジェクトと受信側オブジェクトで一致するよう
に、各オブジェクトのプログラムで予め定義されてい
る。また、メッセージの引数は、実行する手続きの処理
に利用される。
【0057】同様に、返答の有無、返答データの型等に
ついても、予め定義されている。
ついても、予め定義されている。
【0058】返答データは、メッセージの引数で示した
アドレスに格納される。
アドレスに格納される。
【0059】さて、オブジェクトの処理は、スケジュー
リング処理部により起動される。
リング処理部により起動される。
【0060】ここで図5を参照して、オブジェクト21
を例にとり、オブジェクトの処理1000を説明する。
を例にとり、オブジェクトの処理1000を説明する。
【0061】まず、システムコールにより、当該オブジ
ェクトあてのメッセージの読みだしを依頼する(ステッ
プ1001)。
ェクトあてのメッセージの読みだしを依頼する(ステッ
プ1001)。
【0062】メッセージの読みだし依頼に対するOSの
動作については後述する。
動作については後述する。
【0063】メッセージは、図4にて参照した形式のデ
ータとして受け取ることができる。次に、受信したメッ
セージのメッセージ名が何であるかを判定する(ステッ
プ1002)。
ータとして受け取ることができる。次に、受信したメッ
セージのメッセージ名が何であるかを判定する(ステッ
プ1002)。
【0064】メッセージ名が「メッセージe」であれ
ば、「手続き1」の処理を実行し(ステップ100
3)、「メッセージf」であれば、「手続き2」の処理
を実行し(ステップ1004)、「メッセージh」であ
れば、「手続き3」の処理を実行する(ステップ100
5)。
ば、「手続き1」の処理を実行し(ステップ100
3)、「メッセージf」であれば、「手続き2」の処理
を実行し(ステップ1004)、「メッセージh」であ
れば、「手続き3」の処理を実行する(ステップ100
5)。
【0065】なお、対応する手続きが存在しないメッセ
ージ名を有するメッセージを受信した場合には、それを
無視し、処理を実行しないものとする。
ージ名を有するメッセージを受信した場合には、それを
無視し、処理を実行しないものとする。
【0066】オブジェクトは、オブジェクト間通信によ
り、互いにメッセージを交換しながら並行に処理を実行
する。
り、互いにメッセージを交換しながら並行に処理を実行
する。
【0067】また、オブジェクトは、「手続きプログラ
ム」中で、必要により、他のオブジェクトへメッセージ
を送信する。メッセージを送信するには、図4に示すよ
うな形式のメッセージデータを生成し、システムコール
によりメッセージ送信を依頼すればよい。
ム」中で、必要により、他のオブジェクトへメッセージ
を送信する。メッセージを送信するには、図4に示すよ
うな形式のメッセージデータを生成し、システムコール
によりメッセージ送信を依頼すればよい。
【0068】次に、メッセージ通信処理について説明す
る。
る。
【0069】オブジェクト間のメッセージ通信は、メモ
リ中に記憶されたOSプログラム内の、メッセージ通信
処理部が実行する。
リ中に記憶されたOSプログラム内の、メッセージ通信
処理部が実行する。
【0070】図2に示したように、メッセージ通信処理
部2cは、ソケット通信処理部2ccを備え、これによ
り通信処理を実行する。
部2cは、ソケット通信処理部2ccを備え、これによ
り通信処理を実行する。
【0071】ソケット通信処理部は、例えば、前記「ザ
・デザイン・アンド・インプリメンテーション・オブ・
ザ・4.3ビー・エス・ディー・ユニックス・オペレー
ティング・システム(1989年)」記載のように、ユ
ニックス・オペレーティングシステムに内蔵されるソケ
ット(socket)と称されるプロセス間通信機能を使用す
る。
・デザイン・アンド・インプリメンテーション・オブ・
ザ・4.3ビー・エス・ディー・ユニックス・オペレー
ティング・システム(1989年)」記載のように、ユ
ニックス・オペレーティングシステムに内蔵されるソケ
ット(socket)と称されるプロセス間通信機能を使用す
る。
【0072】ソケットでは、「ソケットアドレス」を指
定することによりプロセス間通信が可能となる。ソケッ
トアドレスは、アドレスファミリ番号、ポート番号、お
よび計算機アドレスを有して構成される。
定することによりプロセス間通信が可能となる。ソケッ
トアドレスは、アドレスファミリ番号、ポート番号、お
よび計算機アドレスを有して構成される。
【0073】アドレスファミリ番号は、アドレスの型を
表わす16ビット(2バイト)の整数である。なお、プ
ロセス間の通信は、ポートを介して行なう。
表わす16ビット(2バイト)の整数である。なお、プ
ロセス間の通信は、ポートを介して行なう。
【0074】各計算機には複数のポートが備えられてお
り、各ポートには、予めポート番号が与えられている。
り、各ポートには、予めポート番号が与えられている。
【0075】ひとつの計算機内では、ポート番号を指定
することにより、指定されたポートを決定できる。
することにより、指定されたポートを決定できる。
【0076】ここでは、16ビット(2バイト)のデー
タ長の整数で表現されるポート番号により、ポートを指
定する。
タ長の整数で表現されるポート番号により、ポートを指
定する。
【0077】本実施例では使用するアドレスの型を、一
つに決めており、アドレスファミリ番号は、常に同一の
ものを使用するものとする。したがって、計算機アドレ
スおよびポート番号を指定するのみで、プロセス間通信
が可能となる。
つに決めており、アドレスファミリ番号は、常に同一の
ものを使用するものとする。したがって、計算機アドレ
スおよびポート番号を指定するのみで、プロセス間通信
が可能となる。
【0078】また、各オブジェクトには、一つのポート
が与えられる。
が与えられる。
【0079】オブジェクトがシステムコールによって、
メッセージ送信処理を依頼する場合には、送信先のオブ
ジェクトの計算機アドレスおよびポート番号を指定し、
自分の計算機アドレスおよびポート番号、さらに、プロ
セス番号を付加して、メッセージデータの送信を、OS
に依頼する。
メッセージ送信処理を依頼する場合には、送信先のオブ
ジェクトの計算機アドレスおよびポート番号を指定し、
自分の計算機アドレスおよびポート番号、さらに、プロ
セス番号を付加して、メッセージデータの送信を、OS
に依頼する。
【0080】図6に、メッセージ通信処理部が扱うメッ
セージの形式の一例を示す。
セージの形式の一例を示す。
【0081】メッセージ900は、メッセージ全体の大
きさ(バイト数)を表わすデータ901、メッセージの
送信先の計算機アドレス902、送信先のポート番号9
03、メッセージの送信元の計算機アドレス904、送
信元のポート番号905、優先度906、メッセージ名
907、引数の数を表わすデータ908、引数データ9
09を有して構成される。
きさ(バイト数)を表わすデータ901、メッセージの
送信先の計算機アドレス902、送信先のポート番号9
03、メッセージの送信元の計算機アドレス904、送
信元のポート番号905、優先度906、メッセージ名
907、引数の数を表わすデータ908、引数データ9
09を有して構成される。
【0082】さらに、メッセージ名907は、メッセー
ジ名の文字列を表わす文字コードの並び9071、90
72等を有して構成される。また、文字コードの並びの
最後には、終了記号9073を付加した構成にしてい
る。
ジ名の文字列を表わす文字コードの並び9071、90
72等を有して構成される。また、文字コードの並びの
最後には、終了記号9073を付加した構成にしてい
る。
【0083】引数データは、その大きさ(バイト数)と
データからなる組み合わせで構成し、それを全引数につ
いて並べて構成したもので、1番目の引数の大きさ90
91、1番目の引数データ9092、2番目の引数の大
きさ9093、2番目の引数データ9093等から成
る。
データからなる組み合わせで構成し、それを全引数につ
いて並べて構成したもので、1番目の引数の大きさ90
91、1番目の引数データ9092、2番目の引数の大
きさ9093、2番目の引数データ9093等から成
る。
【0084】メッセージ通信処理部の動作には、メッセ
ージ受信時に起動されるメッセージ受信割り込み処理、
オブジェクトからのシステムコールにより起動されるメ
ッセージ取り出しシステムコール処理と、メッセージ送
信システムコールの処理がある。
ージ受信時に起動されるメッセージ受信割り込み処理、
オブジェクトからのシステムコールにより起動されるメ
ッセージ取り出しシステムコール処理と、メッセージ送
信システムコールの処理がある。
【0085】まず、メッセージ受信割り込み処理につい
て、図7を参照して説明する。
て、図7を参照して説明する。
【0086】メッセージ受信割り込み処理(2000)
は、ソケット通信処理部が他の計算機からの、あるい
は、自分の計算機内におけるメッセージを受信したとき
に起動される割り込み処理である。
は、ソケット通信処理部が他の計算機からの、あるい
は、自分の計算機内におけるメッセージを受信したとき
に起動される割り込み処理である。
【0087】処理が起動されると、まず、ソケット通信
処理部から、受信したメッセージデータを受け取る(ス
テップ2001)。
処理部から、受信したメッセージデータを受け取る(ス
テップ2001)。
【0088】受け取ったデータの形式は、図6に示すも
のと同一の形式である。
のと同一の形式である。
【0089】次に、受信メッセージを、図2に示した受
信メッセージバッファ2crに格納し(ステップ200
2)、受信メッセージ中の送信先ポート番号にもとづい
て、そのメッセージを受け取るべきオブジェクトのプロ
セスを求め(ステップ2003)、さらに、スケジュー
リング処理部を起動する(ステップ2004)。
信メッセージバッファ2crに格納し(ステップ200
2)、受信メッセージ中の送信先ポート番号にもとづい
て、そのメッセージを受け取るべきオブジェクトのプロ
セスを求め(ステップ2003)、さらに、スケジュー
リング処理部を起動する(ステップ2004)。
【0090】次に、メッセージ取り出しシステムコール
処理について、図8を参照して説明する。メッセージ取
り出しシステムコール処理(3000)は、オブジェク
トからのシステムコールにより起動され、受信メッセー
ジバッファ2crから図6に示す形式の受信メッセージ
を取り出し(ステップ3002)、それを図4に示す形
式のメッセージデータに変換して、オブジェクトに該メ
ッセージデータを渡す(ステップ処理3003)また、
メッセージ送信システムコール処理について、図9を参
照して説明する。 メッセージ送信システムコール処理
(4000)は、オブジェクトからのシステムコールに
より起動される。
処理について、図8を参照して説明する。メッセージ取
り出しシステムコール処理(3000)は、オブジェク
トからのシステムコールにより起動され、受信メッセー
ジバッファ2crから図6に示す形式の受信メッセージ
を取り出し(ステップ3002)、それを図4に示す形
式のメッセージデータに変換して、オブジェクトに該メ
ッセージデータを渡す(ステップ処理3003)また、
メッセージ送信システムコール処理について、図9を参
照して説明する。 メッセージ送信システムコール処理
(4000)は、オブジェクトからのシステムコールに
より起動される。
【0091】まず、スケジューリング処理部に問い合わ
せて、与えられたオブジェクトのプロセス番号から、当
該プロセスの優先度を得る(ステップ4001)。
せて、与えられたオブジェクトのプロセス番号から、当
該プロセスの優先度を得る(ステップ4001)。
【0092】次に、オブジェクトから受け取った図4に
示す形式のメッセージデータを、図6に示す形式のメッ
セージデータに変換し、図2に示した送信メッセージバ
ッファに格納する(ステップ4002)。ここで、図6
に示す形式のメッセージデータ中の優先度は、例えば、
先ほどステップ4001にて得たプロセスの優先度を与
える。
示す形式のメッセージデータを、図6に示す形式のメッ
セージデータに変換し、図2に示した送信メッセージバ
ッファに格納する(ステップ4002)。ここで、図6
に示す形式のメッセージデータ中の優先度は、例えば、
先ほどステップ4001にて得たプロセスの優先度を与
える。
【0093】そして、ソケット通信処理部を起動し(ス
テップ4003)、送信処理が終了したら、スケジュー
リング処理部を起動し(ステップ4004)、一連の処
理を終了する。
テップ4003)、送信処理が終了したら、スケジュー
リング処理部を起動し(ステップ4004)、一連の処
理を終了する。
【0094】次に、スケジューリング処理について説明
する。
する。
【0095】メモリ中に記憶されているOSプログラム
は、指定された優先度にしたがって、優先度の高いプロ
セスを優先的に実行することを可能とする、スケジュー
リング処理部を備えている。
は、指定された優先度にしたがって、優先度の高いプロ
セスを優先的に実行することを可能とする、スケジュー
リング処理部を備えている。
【0096】図2に示すように、スケジューリング処理
部2sは、さらに、実行可能プロセス待ち行列2sqを
備えている。
部2sは、さらに、実行可能プロセス待ち行列2sqを
備えている。
【0097】図10に示すように、実行可能プロセス待
ち行列2sqは、優先度毎に実行可能なプロセスを記憶
する、優先度付き待ち行列である。
ち行列2sqは、優先度毎に実行可能なプロセスを記憶
する、優先度付き待ち行列である。
【0098】本実施例では、「0」から「128」まで
の整数で表現される優先度を使用でき、数字が小さいほ
ど優先度が高いことを表わす。
の整数で表現される優先度を使用でき、数字が小さいほ
ど優先度が高いことを表わす。
【0099】図10に示す例では、7つのプロセス10
1〜107が実行可能状態で、実行待ちになっている状
態を表わしている。
1〜107が実行可能状態で、実行待ちになっている状
態を表わしている。
【0100】このうちプロセス103、プロセス105
は、優先度「0」、プロセス101は、優先度「2」、
プロセス102、プロセス104、プロセス107は、
優先度「4」、プロセス106は、優先度「7」であ
る。
は、優先度「0」、プロセス101は、優先度「2」、
プロセス102、プロセス104、プロセス107は、
優先度「4」、プロセス106は、優先度「7」であ
る。
【0101】そして、優先度の高いプロセスから順次実
行されることになる。
行されることになる。
【0102】複数のプロセスが同一優先度を有している
場合には、その先頭、すなわち図の左側にあるプロセス
から順次実行されることになる。
場合には、その先頭、すなわち図の左側にあるプロセス
から順次実行されることになる。
【0103】したがって、今後実行可能プロセスの追加
がなければ、プロセス103、プロセス105、プロセ
ス101、プロセス102、プロセス104、プロセス
107、プロセス106の順番に、各々のプロセスが取
り出され実行される。
がなければ、プロセス103、プロセス105、プロセ
ス101、プロセス102、プロセス104、プロセス
107、プロセス106の順番に、各々のプロセスが取
り出され実行される。
【0104】新たな実行可能プロセスが発生したなら
ば、該プロセスは、その優先度の最後尾のプロセスとし
て追加される。例えば、優先度2のプロセスが新たに実
行可能状態になる場合には、プロセス101の後部に追
加される。
ば、該プロセスは、その優先度の最後尾のプロセスとし
て追加される。例えば、優先度2のプロセスが新たに実
行可能状態になる場合には、プロセス101の後部に追
加される。
【0105】次に、スケジューリング処理部の動作を図
11を参照して説明する。
11を参照して説明する。
【0106】スケジューリング処理(5000)は、メ
ッセージ受信時、メッセージを送信時、実行中のオブジ
ェクトのプロセスが何らかの待ち状態に移行して、プロ
セスの実行が中断した時、あるいは、プロセスの終了時
に起動される。
ッセージ受信時、メッセージを送信時、実行中のオブジ
ェクトのプロセスが何らかの待ち状態に移行して、プロ
セスの実行が中断した時、あるいは、プロセスの終了時
に起動される。
【0107】まず、起動原因が、上述のいずれであるか
調べ(ステップ5001)、メッセージ受信によるもの
であれば、メッセージ送信先のオブジェクト、すなわち
該メッセージを受け取るべきオブジェクトのプロセスを
実行可能プロセス待ち行列に格納し(ステップ500
2)、ステップ5003にブランチする。
調べ(ステップ5001)、メッセージ受信によるもの
であれば、メッセージ送信先のオブジェクト、すなわち
該メッセージを受け取るべきオブジェクトのプロセスを
実行可能プロセス待ち行列に格納し(ステップ500
2)、ステップ5003にブランチする。
【0108】ここで、このプロセスの優先度は、受信メ
ッセージのメッセージデータ(図6に示す形式)中の優
先度906の値とする。したがって、受信したオブジェ
クトのプロセスの優先度は、そのメッセージを送信した
オブジェクトのプロセスの優先度と同一の値になる。
ッセージのメッセージデータ(図6に示す形式)中の優
先度906の値とする。したがって、受信したオブジェ
クトのプロセスの優先度は、そのメッセージを送信した
オブジェクトのプロセスの優先度と同一の値になる。
【0109】起動原因が、メッセージ送信やプロセス中
断の場合には、ステップ5003から開始し、現在実行
中のプロセスを退避し、そのプロセスを実行可能プロセ
ス待ち行列に格納し(ステップ5003)、ステップ5
004にブランチする。
断の場合には、ステップ5003から開始し、現在実行
中のプロセスを退避し、そのプロセスを実行可能プロセ
ス待ち行列に格納し(ステップ5003)、ステップ5
004にブランチする。
【0110】起動原因がプロセス終了であれば、ステッ
プ5004から開始し、実行可能プロセス待ち行列か
ら、次に実行するプロセス、すなわち、最も高い優先度
を有するプロセスを取り出す(同一優先度のプロセスが
複数存在するときには、その先頭のプロセスを取り出
す)(ステップ5004)。そして、そのプロセスの処
理を起動し実行する(ステップ5005)。
プ5004から開始し、実行可能プロセス待ち行列か
ら、次に実行するプロセス、すなわち、最も高い優先度
を有するプロセスを取り出す(同一優先度のプロセスが
複数存在するときには、その先頭のプロセスを取り出
す)(ステップ5004)。そして、そのプロセスの処
理を起動し実行する(ステップ5005)。
【0111】次に、本実施例の一実行例について、図1
2を参照して説明する。
2を参照して説明する。
【0112】計算機1内には、OS1oのプロセス、オ
ブジェクト11のプロセス、オブジェクト12のプロセ
スが存在し、計算機2内には、OS2oのプロセス、オ
ブジェクト21のプロセス、オブジェクト22のプロセ
ス、オブジェクト23のプロセスが存在し、さらに、計
算機3内には、OS3oのプロセス、オブジェクト31
のプロセス、オブジェクト32のプロセスが存在する。
ブジェクト11のプロセス、オブジェクト12のプロセ
スが存在し、計算機2内には、OS2oのプロセス、オ
ブジェクト21のプロセス、オブジェクト22のプロセ
ス、オブジェクト23のプロセスが存在し、さらに、計
算機3内には、OS3oのプロセス、オブジェクト31
のプロセス、オブジェクト32のプロセスが存在する。
【0113】そして現在、計算機1内では、オブジェク
ト11のプロセスが優先度「68」で実行中(処理10
111)であり、また、オブジェクト12のプロセスが
優先度「72」で実行可能プロセス待ち行列中に存在す
るものとする。
ト11のプロセスが優先度「68」で実行中(処理10
111)であり、また、オブジェクト12のプロセスが
優先度「72」で実行可能プロセス待ち行列中に存在す
るものとする。
【0114】また、計算機2内では、オブジェクト22
のプロセスが優先度「81」で実行中(処理2022
1)で、また、オブジェクト21のプロセスとオブジェ
クト23のプロセスは、メッセージ待ち状態であるもの
とする。
のプロセスが優先度「81」で実行中(処理2022
1)で、また、オブジェクト21のプロセスとオブジェ
クト23のプロセスは、メッセージ待ち状態であるもの
とする。
【0115】さらに、計算機3内では、オブジェクト3
1のプロセスが優先度「56」で実行中(処理3031
1)で、また、オブジェクト32のプロセスが優先度
「96」で実行可能プロセス待ち行列中に存在するもの
とする。
1のプロセスが優先度「56」で実行中(処理3031
1)で、また、オブジェクト32のプロセスが優先度
「96」で実行可能プロセス待ち行列中に存在するもの
とする。
【0116】さて、ここで、計算機1内に存在するオブ
ジェクト11が、計算機2内に存在するオブジェクト2
1に対し、処理依頼のメッセージを送信したとする。
ジェクト11が、計算機2内に存在するオブジェクト2
1に対し、処理依頼のメッセージを送信したとする。
【0117】すなわちオブジェクト11が、メッセージ
送信システムコールを発行することによって、OS1o
のメッセージ送信処理10101が起動され、ソケット
を使用して、計算機2に対する送信処理を実行する。
送信システムコールを発行することによって、OS1o
のメッセージ送信処理10101が起動され、ソケット
を使用して、計算機2に対する送信処理を実行する。
【0118】ここで、オブジェクト22の処理の実行中
の計算機2において、OS2oによるメッセージ受信割
り込み処理20201が発生し、計算機1から送信され
たメッセージを受信する処理を行う。
の計算機2において、OS2oによるメッセージ受信割
り込み処理20201が発生し、計算機1から送信され
たメッセージを受信する処理を行う。
【0119】計算機1では、OS1oのメッセージ送信
処理10101が終了すると、オブジェクト11は、メ
ッセージの返答の待ち状態に移るため、スケジューリン
グ処理の結果、優先度「72」を有するオブジェクト1
2の処理10121が実行される。
処理10101が終了すると、オブジェクト11は、メ
ッセージの返答の待ち状態に移るため、スケジューリン
グ処理の結果、優先度「72」を有するオブジェクト1
2の処理10121が実行される。
【0120】計算機2では、OS2oによるメッセージ
受信割り込み処理20201が終了すると、スケジュー
リング処理の結果、受信メッセージの受け取り手である
オブジェクト21の処理20211が、優先度「68」
で実行される。この優先度は、該メッセージを送信した
オブジェクト11の優先度と等しい。オブジェクト22
の処理は、優先度が「81」であるので中断される。
受信割り込み処理20201が終了すると、スケジュー
リング処理の結果、受信メッセージの受け取り手である
オブジェクト21の処理20211が、優先度「68」
で実行される。この優先度は、該メッセージを送信した
オブジェクト11の優先度と等しい。オブジェクト22
の処理は、優先度が「81」であるので中断される。
【0121】ここで、計算機3のオブジェクト31が、
計算機2のオブジェクト23に処理依頼メッセージを送
信するためメッセージ送信システムコールを発行し、O
S3oのメッセージ送信処理30301が起動されたと
する。
計算機2のオブジェクト23に処理依頼メッセージを送
信するためメッセージ送信システムコールを発行し、O
S3oのメッセージ送信処理30301が起動されたと
する。
【0122】これに対応して計算機2でOS2oによる
メッセージ受信割り込み処理20202が発生し、計算
機3から送信されたメッセージを受信する。
メッセージ受信割り込み処理20202が発生し、計算
機3から送信されたメッセージを受信する。
【0123】計算機3では、OS3oのメッセージ送信
処理30301が終了すると、オブジェクト31は、メ
ッセージの返答の待ち状態に移るため、スケジューリン
グ処理の結果、優先度「96」のオブジェクト32の処
理30321が実行される。
処理30301が終了すると、オブジェクト31は、メ
ッセージの返答の待ち状態に移るため、スケジューリン
グ処理の結果、優先度「96」のオブジェクト32の処
理30321が実行される。
【0124】計算機2では、OS2oによるメッセージ
受信割り込み処理20202が終了すると、スケジュー
リング処理の結果、受信メッセージの受け取り手である
オブジェクト23の処理20231が、該メッセージの
送り手であるオブジェクト31の優先度と等しい、優先
度「56」で実行される。またこの場合、オブジェクト
21の処理は、優先度「68」であるので中断されるこ
とになる。
受信割り込み処理20202が終了すると、スケジュー
リング処理の結果、受信メッセージの受け取り手である
オブジェクト23の処理20231が、該メッセージの
送り手であるオブジェクト31の優先度と等しい、優先
度「56」で実行される。またこの場合、オブジェクト
21の処理は、優先度「68」であるので中断されるこ
とになる。
【0125】そして、計算機2内のオブジェクト23の
処理が終了すると、オブジェクト23はシステムコール
を発行して、処理の要求メッセージの送り手である計算
機3内のオブジェクト31に、処理の返答メッセージを
送信し、オブジェクト23のプロセスは終了する。
処理が終了すると、オブジェクト23はシステムコール
を発行して、処理の要求メッセージの送り手である計算
機3内のオブジェクト31に、処理の返答メッセージを
送信し、オブジェクト23のプロセスは終了する。
【0126】すなわち、まず、オブジェクト23の処理
20231からOS2oによる返答メッセージの送信処
理20203に処理が切り換えられ、実行される。する
と、これに対応して、計算機3では、オブジェクト32
の処理30321が中断され、OS3oによる返答メッ
セージの受信割り込み処理30302が発生し、計算機
2からの返答メッセージを受信する。
20231からOS2oによる返答メッセージの送信処
理20203に処理が切り換えられ、実行される。する
と、これに対応して、計算機3では、オブジェクト32
の処理30321が中断され、OS3oによる返答メッ
セージの受信割り込み処理30302が発生し、計算機
2からの返答メッセージを受信する。
【0127】計算機2では、OS2oの返答メッセージ
送信処理20203が終了すると、オブジェクト23の
プロセスは終了しているため、スケジューリング処理の
結果、優先度が「68」のオブジェクト21の処理が再
開される(処理20212)。
送信処理20203が終了すると、オブジェクト23の
プロセスは終了しているため、スケジューリング処理の
結果、優先度が「68」のオブジェクト21の処理が再
開される(処理20212)。
【0128】計算機3では、OS3oによる返答メッセ
ージ受信割り込み処理30302が終了すると、スケジ
ューリング処理の結果、返答メッセージの受け取り手で
あるオブジェクト31の処理を再開し(処理3031
2)、その処理が終了すると、スケジューリング処理
(処理30303)の結果、オブジェクト32の処理が
再開される(処理30322)。
ージ受信割り込み処理30302が終了すると、スケジ
ューリング処理の結果、返答メッセージの受け取り手で
あるオブジェクト31の処理を再開し(処理3031
2)、その処理が終了すると、スケジューリング処理
(処理30303)の結果、オブジェクト32の処理が
再開される(処理30322)。
【0129】計算機2では、オブジェクト21の処理2
0212が終了すると、オブジェクト21はシステムコ
ールを発行して、処理の要求メッセージの送り手である
計算機1上のオブジェクト11に処理の返答メッセージ
を送信し、オブジェクト21のプロセスは終了する。
0212が終了すると、オブジェクト21はシステムコ
ールを発行して、処理の要求メッセージの送り手である
計算機1上のオブジェクト11に処理の返答メッセージ
を送信し、オブジェクト21のプロセスは終了する。
【0130】すなわち、オブジェクト21の処理202
12からOS2oによる返答メッセージの送信処理20
204に切り換えられ、実行される。
12からOS2oによる返答メッセージの送信処理20
204に切り換えられ、実行される。
【0131】これに対応して計算機1では、オブジェク
ト12の処理10121が中断され、OS1oによる返
答メッセージの受信割り込み処理10102が発生し、
計算機2からの返答メッセージを受信する。
ト12の処理10121が中断され、OS1oによる返
答メッセージの受信割り込み処理10102が発生し、
計算機2からの返答メッセージを受信する。
【0132】そして、返答メッセージ受信割り込み処理
10102が終了すると、スケジューリング処理の結
果、返答メッセージの受け取り手であるオブジェクト1
1の処理を再開し(処理10112)、それが終了する
と、スケジューリング処理(処理10103)の結果、
オブジェクト12の処理が再開される(処理1012
2)。
10102が終了すると、スケジューリング処理の結
果、返答メッセージの受け取り手であるオブジェクト1
1の処理を再開し(処理10112)、それが終了する
と、スケジューリング処理(処理10103)の結果、
オブジェクト12の処理が再開される(処理1012
2)。
【0133】計算機2では、OS2oの返答メッセージ
送信処理20204が終了すると、オブジェクト21の
プロセスは終了しているため、スケジューリング処理の
結果、オブジェクト22の処理が再開される(処理20
222)。
送信処理20204が終了すると、オブジェクト21の
プロセスは終了しているため、スケジューリング処理の
結果、オブジェクト22の処理が再開される(処理20
222)。
【0134】以上のように、各計算機の各オブジェクト
は、メッセージ送信により優先度のの受渡しを行い、全
計算機を有するシステム全体で、統一的に、優先度を使
用して各処理が実行される。
は、メッセージ送信により優先度のの受渡しを行い、全
計算機を有するシステム全体で、統一的に、優先度を使
用して各処理が実行される。
【0135】以上、本発明の実施例について詳細に説明
してきた。
してきた。
【0136】本発明によれば、メッセージ送信側のオブ
ジェクトが、メッセージ受信側のオブジェクトの処理の
優先度を、ユーザ等が指定せずに、優先度付きの処理を
行うことができ、オブジェクトの記述が簡単になるとい
う効果がある。
ジェクトが、メッセージ受信側のオブジェクトの処理の
優先度を、ユーザ等が指定せずに、優先度付きの処理を
行うことができ、オブジェクトの記述が簡単になるとい
う効果がある。
【0137】また、複数の計算機を有して構成される分
散処理システム全体の各処理が、同一の優先度制御にし
たがって実行され、分散処理システム全体で、統一的な
スケジューリングにしたがって、分散処理を行うシステ
ムを実現できるという効果がある。
散処理システム全体の各処理が、同一の優先度制御にし
たがって実行され、分散処理システム全体で、統一的な
スケジューリングにしたがって、分散処理を行うシステ
ムを実現できるという効果がある。
【0138】次に、本発明にかかる他の実施例について
説明する。
説明する。
【0139】上述の本発明の一実施例では、オブジェク
トの処理の優先度の範囲と、メッセージに付加する優先
度、すなわちメッセージデータ中の優先度の範囲を同一
とし、両者の優先度を一致させたが、必ずしもオブジェ
クトの処理の優先度の範囲と、メッセージデータ中の優
先度の範囲を同一とする必要はない。
トの処理の優先度の範囲と、メッセージに付加する優先
度、すなわちメッセージデータ中の優先度の範囲を同一
とし、両者の優先度を一致させたが、必ずしもオブジェ
クトの処理の優先度の範囲と、メッセージデータ中の優
先度の範囲を同一とする必要はない。
【0140】この場合、両者の優先度の範囲を考慮し
て、オブジェクトの処理の優先度をメッセージデータ中
の適当な優先度に変換すれば良い。
て、オブジェクトの処理の優先度をメッセージデータ中
の適当な優先度に変換すれば良い。
【0141】変換法としては、例えば、オブジェクトの
処理の優先度範囲に対するオブジェクトの処理の優先度
の相対的な値を、メッセージデータ中の優先度範囲に対
するメッセージデータ中の優先度の相対的な値に一致す
るようにする方法、あるいは優先度の範囲に応じた相対
的な変換方法等が考えられる。
処理の優先度範囲に対するオブジェクトの処理の優先度
の相対的な値を、メッセージデータ中の優先度範囲に対
するメッセージデータ中の優先度の相対的な値に一致す
るようにする方法、あるいは優先度の範囲に応じた相対
的な変換方法等が考えられる。
【0142】ここで優先度の相対的な値を一致させると
は、オブジェクトの処理の優先度の範囲が「0」から
「128」で、メッセージデータ中の優先度の範囲が
「0」から「16」の場合、オブジェクトの処理の優先
度の値が「64」であれば、メッセージデータ中の優先
度の値を「8」に、オブジェクトの処理の優先度の値が
「32」であれば、メッセージデータ中の優先度の値を
「4」にすること等が考えられる。
は、オブジェクトの処理の優先度の範囲が「0」から
「128」で、メッセージデータ中の優先度の範囲が
「0」から「16」の場合、オブジェクトの処理の優先
度の値が「64」であれば、メッセージデータ中の優先
度の値を「8」に、オブジェクトの処理の優先度の値が
「32」であれば、メッセージデータ中の優先度の値を
「4」にすること等が考えられる。
【0143】これにより、オブジェクトの処理の実行の
優先度の範囲と、メッセージデータ中の優先度の範囲が
異なる分散処理システムにおいても、分散処理システム
全体として、統一的な優先度制御による分散処理が行え
るという効果がある。
優先度の範囲と、メッセージデータ中の優先度の範囲が
異なる分散処理システムにおいても、分散処理システム
全体として、統一的な優先度制御による分散処理が行え
るという効果がある。
【0144】また、オブジェクトの処理の実行の優先度
の範囲より、メッセージデータ中の優先度の範囲を小さ
くすることにより、メッセージデータ中の優先度のデー
タ長を短くでき、メッセージデータ量を減少させ、効率
良いメッセージ通信が可能になるという効果がある。
の範囲より、メッセージデータ中の優先度の範囲を小さ
くすることにより、メッセージデータ中の優先度のデー
タ長を短くでき、メッセージデータ量を減少させ、効率
良いメッセージ通信が可能になるという効果がある。
【0145】上述の本発明の実施例では、送信側オブジ
ェクトが存在する計算機で使用可能な優先度の範囲と、
受信側オブジェクトが存在する計算機で使用可能な優先
度の範囲を同一とし、両者の優先度を一致させたが、必
ずしも送信側計算機における優先度の範囲と、受信側計
算機における優先度の範囲を一致させる必要はない。
ェクトが存在する計算機で使用可能な優先度の範囲と、
受信側オブジェクトが存在する計算機で使用可能な優先
度の範囲を同一とし、両者の優先度を一致させたが、必
ずしも送信側計算機における優先度の範囲と、受信側計
算機における優先度の範囲を一致させる必要はない。
【0146】この場合、両者の優先度の範囲を考慮し
て、送信側の優先度を受信側の適当な優先度に変換する
方法が考えられる。すなわち、両者の優先度の範囲内に
おいて、優先度が一対一に対応していればよい。
て、送信側の優先度を受信側の適当な優先度に変換する
方法が考えられる。すなわち、両者の優先度の範囲内に
おいて、優先度が一対一に対応していればよい。
【0147】変換法としては、例えば、送信側計算機の
優先度範囲における送信側優先度の相対的な値が、受信
側計算機の優先度範囲における受信側優先度の相対的な
値に、一致するようにする方式、あるいは、優先度の範
囲に応じて付加する優先度を相対的に変換方式が考えら
れる。
優先度範囲における送信側優先度の相対的な値が、受信
側計算機の優先度範囲における受信側優先度の相対的な
値に、一致するようにする方式、あるいは、優先度の範
囲に応じて付加する優先度を相対的に変換方式が考えら
れる。
【0148】優先度の相対的な値を一致させるとは、例
えば、送信側計算機がとりえる優先度の範囲である優先
度範囲が「0」から「64」で、受信側計算機がとりえ
る優先度の範囲である優先度範囲が「0」から「25
6」の場合、送信側の優先度の値が「32」であれば、
受信側の優先度の値を「128」に、送信側の優先度の
値が「16」であれば、受信側の優先度の値を「64」
にする等の処理を意味する。
えば、送信側計算機がとりえる優先度の範囲である優先
度範囲が「0」から「64」で、受信側計算機がとりえ
る優先度の範囲である優先度範囲が「0」から「25
6」の場合、送信側の優先度の値が「32」であれば、
受信側の優先度の値を「128」に、送信側の優先度の
値が「16」であれば、受信側の優先度の値を「64」
にする等の処理を意味する。
【0149】これにより、使用できる優先度の範囲が異
なる計算機を有して構成される分散処理システムにおい
ても、分散処理システム全体として、統一的な優先度制
御による分散処理が行えるという効果がある。
なる計算機を有して構成される分散処理システムにおい
ても、分散処理システム全体として、統一的な優先度制
御による分散処理が行えるという効果がある。
【0150】上記実施例において、メッセージ通信処理
では、優先度をデータとして送信するものの、通信処理
そのもののには優先度を考慮した処理は行っていなかっ
た。しかし、メッセージ通信処理部が、優先順位にした
がった通信処理を行うものとする構成も考えられる。
では、優先度をデータとして送信するものの、通信処理
そのもののには優先度を考慮した処理は行っていなかっ
た。しかし、メッセージ通信処理部が、優先順位にした
がった通信処理を行うものとする構成も考えられる。
【0151】例えば、上記実施例において、送信メッセ
ージを格納しておくための送信メッセージバッファを、
図10と同じ形式の優先度付き待ち行列である、送信メ
ッセージ待ち行列として構成し、メッセージ送信処理
を、送信メッセージに付加された優先度にしたがって、
スケジューリングして実行する。
ージを格納しておくための送信メッセージバッファを、
図10と同じ形式の優先度付き待ち行列である、送信メ
ッセージ待ち行列として構成し、メッセージ送信処理
を、送信メッセージに付加された優先度にしたがって、
スケジューリングして実行する。
【0152】また、メッセージ送信処理を、該メッセー
ジを送信したプロセスに付加された優先度にしたがっ
て、スケジューリングしてもよい。
ジを送信したプロセスに付加された優先度にしたがっ
て、スケジューリングしてもよい。
【0153】これにより、優先度の高いメッセージを優
先的に送信することができることになる。
先的に送信することができることになる。
【0154】したがって、オブジェクトの処理のみでな
く、メッセージ送信処理についても、同一の優先度にし
たがった処理をおこなうことができ、分散処理システム
全体として、統一的な優先度制御による分散処理を行う
ことが可能になるという効果がある。
く、メッセージ送信処理についても、同一の優先度にし
たがった処理をおこなうことができ、分散処理システム
全体として、統一的な優先度制御による分散処理を行う
ことが可能になるという効果がある。
【0155】さらに、通信処理そのものに優先度を付与
するという上記本発明の他の実施例では、オブジェクト
の処理で使用できる優先度の範囲と、メッセージ通信処
理で使用できる優先度の範囲を同一とし、両者の優先度
を一致させたが、必ずしもオブジェクトの処理の優先度
の範囲と、メッセージ通信処理の優先度の範囲を同一と
する必要はない。
するという上記本発明の他の実施例では、オブジェクト
の処理で使用できる優先度の範囲と、メッセージ通信処
理で使用できる優先度の範囲を同一とし、両者の優先度
を一致させたが、必ずしもオブジェクトの処理の優先度
の範囲と、メッセージ通信処理の優先度の範囲を同一と
する必要はない。
【0156】この場合、両者の優先度の範囲を考慮し
て、オブジェクトの処理の優先度をメッセージ通信処理
の適当な優先度に変換すればよい。
て、オブジェクトの処理の優先度をメッセージ通信処理
の適当な優先度に変換すればよい。
【0157】変換法としては、例えば、オブジェクトの
処理の優先度範囲に対するオブジェクトの処理の優先度
の相対的な値を、メッセージ通信処理の優先度範囲に対
するメッセージ通信処理の優先度の相対的な値に、一致
するようにする方式、あるいは、優先度の範囲に応じた
相対的な変換方法等が考えられる。
処理の優先度範囲に対するオブジェクトの処理の優先度
の相対的な値を、メッセージ通信処理の優先度範囲に対
するメッセージ通信処理の優先度の相対的な値に、一致
するようにする方式、あるいは、優先度の範囲に応じた
相対的な変換方法等が考えられる。
【0158】ここで、優先度の相対的な値を一致させる
とは、例えば、オブジェクトの処理の優先度の範囲が、
「0」から「128」で、メッセージ通信処理の優先度
の範囲が「0」から「32」の場合、オブジェクトの処
理の優先度の値が「64」であれば、メッセージ通信処
理の優先度の値を「16」に、オブジェクトの処理の優
先度の値が「32」であれば、メッセージ通信処理の優
先度の値を「8」にすること等が考えられる。
とは、例えば、オブジェクトの処理の優先度の範囲が、
「0」から「128」で、メッセージ通信処理の優先度
の範囲が「0」から「32」の場合、オブジェクトの処
理の優先度の値が「64」であれば、メッセージ通信処
理の優先度の値を「16」に、オブジェクトの処理の優
先度の値が「32」であれば、メッセージ通信処理の優
先度の値を「8」にすること等が考えられる。
【0159】これにより、オブジェクトの処理の実行の
優先度の範囲と、メッセージ通信の処理の優先度が異な
る計算機を有して構成する分散処理システムにおいて
も、分散処理システム全体として、統一的な優先度制御
による分散処理が行えるという効果がある。
優先度の範囲と、メッセージ通信の処理の優先度が異な
る計算機を有して構成する分散処理システムにおいて
も、分散処理システム全体として、統一的な優先度制御
による分散処理が行えるという効果がある。
【0160】上記実施例では、オブジェクト、すなわち
プロセスの処理は、一度決定されると固定的であった
が、処理の実行中に優先度を、システムコールによりO
Sのスケジューリング処理部に優先度の変更を依頼し
て、動的に変更することも可能である。
プロセスの処理は、一度決定されると固定的であった
が、処理の実行中に優先度を、システムコールによりO
Sのスケジューリング処理部に優先度の変更を依頼し
て、動的に変更することも可能である。
【0161】これにより実行状況に応じた柔軟な優先度
制御が可能になるという効果がある。 上記実施例で
は、オブジェクトの処理の優先度は、プロセッサの使用
率等によらず固定的に扱われるものとしたが、プロセッ
サの使用率等に応じて動的に変化させるスケジューリン
グを行うこともできる。これにより、分散処理システム
全体で、効率のよいスケジューリングが可能となる。
制御が可能になるという効果がある。 上記実施例で
は、オブジェクトの処理の優先度は、プロセッサの使用
率等によらず固定的に扱われるものとしたが、プロセッ
サの使用率等に応じて動的に変化させるスケジューリン
グを行うこともできる。これにより、分散処理システム
全体で、効率のよいスケジューリングが可能となる。
【0162】上記実施例では、一つのオブジェクトは、
一つのプロセスとして実行されているが、プロセスでは
なくスレッドでもよい。これにより、プロセス切り替え
時ののオーバーヘッドの低減が可能になる。
一つのプロセスとして実行されているが、プロセスでは
なくスレッドでもよい。これにより、プロセス切り替え
時ののオーバーヘッドの低減が可能になる。
【0163】上記実施例では、一つのオブジェクトは、
一時に一つの処理しか行えないが、一つのオブジェクト
が、複数のプロセス、あるいは、複数のスレッドを使用
可能とし、複数の要求メッセージに対する処理を並行に
実行することも可能である。これにより、優先度の高い
メッセージに対する処理を割り込ませて処理できるとい
う効果がある。
一時に一つの処理しか行えないが、一つのオブジェクト
が、複数のプロセス、あるいは、複数のスレッドを使用
可能とし、複数の要求メッセージに対する処理を並行に
実行することも可能である。これにより、優先度の高い
メッセージに対する処理を割り込ませて処理できるとい
う効果がある。
【0164】上記実施例では、システムコールの呼び出
しによりメッセージ通信を行っているが、遠隔手続き呼
び出し(Remote Procedure Call)の形式で、メッセー
ジ通信を行ってもよい。
しによりメッセージ通信を行っているが、遠隔手続き呼
び出し(Remote Procedure Call)の形式で、メッセー
ジ通信を行ってもよい。
【0165】これにより、1プロセス内の手続き呼び出
しと同様の形式で、プロセス間通信を記述できるという
効果がある。
しと同様の形式で、プロセス間通信を記述できるという
効果がある。
【0166】
【発明の効果】複数の計算機を有して構成される分散処
理システム全体の処理が、同一の優先度にしたがって実
行され、リアルタイム機能を有する分散処理システムを
容易に構築できる。
理システム全体の処理が、同一の優先度にしたがって実
行され、リアルタイム機能を有する分散処理システムを
容易に構築できる。
【0167】また、メッセージの送信側のプログラム
が、メッセージの受信側のプログラムの処理の優先度を
明示的に指定せずに、優先度付きの分散処理を行うこと
が可能となり、プログラムの記述が簡単になる。
が、メッセージの受信側のプログラムの処理の優先度を
明示的に指定せずに、優先度付きの分散処理を行うこと
が可能となり、プログラムの記述が簡単になる。
【0168】さらにまた、複数の計算機を有して構成さ
れる分散処理システム全体のプログラムの実行のスケジ
ューリングを、システム全体を集中的にスケジューリン
グする手段を設けずに行うことができ、リアルタイム処
理を行う分散処理システムを容易に構築できる。
れる分散処理システム全体のプログラムの実行のスケジ
ューリングを、システム全体を集中的にスケジューリン
グする手段を設けずに行うことができ、リアルタイム処
理を行う分散処理システムを容易に構築できる。
【図1】本発明にかかる実施例の全体構成図である。
【図2】本発明にかかる実施例のソフトウェア構成図で
ある。
ある。
【図3】オブジェクトの構造例を示す図である。
【図4】オブジェクトが扱うメッセージのデータ構造例
を示す図である。
を示す図である。
【図5】オブジェクトの動作を示すフローチャートであ
る。
る。
【図6】メッセージ通信処理部が扱う、メッセージのデ
ータ構造例を示す図である。
ータ構造例を示す図である。
【図7】メッセージ受信割り込み処理の動作を示すフロ
ーチャートである。
ーチャートである。
【図8】メッセージ取出しシステムコールの動作を示す
フローチャートである。
フローチャートである。
【図9】メッセージ送信システムコールの動作を示すフ
ローチャートである。
ローチャートである。
【図10】実行可能プロセス待ち行列の構造例を示す図
である。
である。
【図11】スケジューリング処理部の動作を示すフロー
チャートである。
チャートである。
【図12】本発明における、実行例を説明するための説
明図である。
明図である。
1…計算機、2…計算機、3…計算機、1p…プロセッ
サ、2p…プロセッサ、3p…プロセッサ、1n……ネ
ットワークアダプタ、2n…ネットワークアダプタ、3
n…ネットワークアダプタ、1d…ディスク装置、2d
…ディスク装置、3d…ディスク装置、1m…メモリ、
2m…メモリ、3m…メモリ、1o…OS、2o…O
S、3o…OS、1s…スケジューリング処理部、2s
…スケジューリング処理部、3s…スケジューリング処
理部、1c…メッセージ通信処理部、2c…メッセージ
通信処理部、3c…メッセージ通信処理部、11…オブ
ジェクト、12…オブジェクト、21…オブジェクト、
22…オブジェクト、31…オブジェクト、32…オブ
ジェクト、2sq…実行可能プロセス待ち行列、2cc
…ソケット通信処理部、2cr…受信メッセージバッフ
ァ、2cs…送信メッセージバッファ
サ、2p…プロセッサ、3p…プロセッサ、1n……ネ
ットワークアダプタ、2n…ネットワークアダプタ、3
n…ネットワークアダプタ、1d…ディスク装置、2d
…ディスク装置、3d…ディスク装置、1m…メモリ、
2m…メモリ、3m…メモリ、1o…OS、2o…O
S、3o…OS、1s…スケジューリング処理部、2s
…スケジューリング処理部、3s…スケジューリング処
理部、1c…メッセージ通信処理部、2c…メッセージ
通信処理部、3c…メッセージ通信処理部、11…オブ
ジェクト、12…オブジェクト、21…オブジェクト、
22…オブジェクト、31…オブジェクト、32…オブ
ジェクト、2sq…実行可能プロセス待ち行列、2cc
…ソケット通信処理部、2cr…受信メッセージバッフ
ァ、2cs…送信メッセージバッファ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 村田 悟 茨城県日立市大みか町七丁目1番1号 株 式会社日立製作所日立研究所内 (72)発明者 中村 智明 茨城県日立市大みか町五丁目2番1号 株 式会社日立製作所大みか工場内
Claims (5)
- 【請求項1】複数のプロセスを並行に実行する複数の計
算機を、ネットワークを介して接続し、各計算機上の、
少なくとも1以上のプロセスがプロセス間通信を行いな
がら、当該プロセスの処理を実行する分散処理システム
において、 前記各計算機は、処理の順番を定める情報である優先度
を有する複数のプロセスを、優先度の高い順番に実行す
るスケジューリング処理手段と、プロセスの優先度に対
応した新たな優先度をメッセージに付加し、前記ネット
ワークを介して他の計算機に、前記新たな優先度が付加
されたメッセージを送受信処理するメッセージ通信処理
手段を備え、 さらに、前記スケジューリング処理手段は、受信したメ
ッセージに付加された前記新たな優先度に対応した、さ
らに新たな優先度を、当該受信メッセージに対応する処
理を実行するプロセスに与えることを特徴とする分散処
理システム。 - 【請求項2】請求項1において、前記メッセージ通信処
理手段は、前記メッセージに付加された新たな優先度
と、当該メッセージを送信するプロセスが有する優先度
とを一致させ、前記スケジューリング処理手段は、受信
したメッセージに付加された前記新たな優先度と、当該
メッセージに対応する処理を実行するプロセスの前記さ
らに新たな優先度とを一致させることを特徴とする分散
処理システム。 - 【請求項3】請求項1において、前記メッセージ通信処
理手段は、前記メッセージに付加する新たな優先度が取
りうる第一の範囲と、当該メッセージを送信するプロセ
スが有する優先度が取りうる第二の範囲とにおいて、前
記第一の範囲内の値を有する前記新たな優先度を、前記
第二の範囲内の値を有する優先度と一対一の対応関係を
もたせて定めることを特徴とする分散処理システム。 - 【請求項4】複数のプロセスを並行に実行する複数の計
算機を、ネットワークを介して接続し、各計算機上の、
少なくとも1以上のプロセスがプロセス間通信を行いな
がら、当該プロセスの処理を実行する分散処理システム
において、 前記各計算機は、処理の順番を定める情報である優先度
を有する複数プロセスを、優先度の高い順番に実行する
スケジューリング処理手段と、 プロセスの優先度に対応して新たに優先度を付加したメ
ッセージの、送受信処理を、前記新たな優先度にしたが
って実行するメッセージ通信処理手段を備え、 さらに、前記スケジューリング処理手段は、受信したメ
ッセージに付加された前記新たな優先度に対応した、さ
らに新たな優先度を、当該受信メッセージに対応する処
理を実行するプロセスに与えることを特徴とする分散処
理システム。 - 【請求項5】複数のプロセスを並行に実行する複数の計
算機を、ネットワークを介して接続し、各計算機上の、
少なくとも1以上のプロセスがプロセス間通信を行いな
がら、当該プロセスの処理を実行する分散処理システム
において、 前記各計算機は、処理の順番を定める情報である優先度
を有する複数プロセスを、優先度の高い順番に実行する
スケジューリング処理手段と、 プロセスの優先度に対応して新たに優先度を付加したメ
ッセージの、送受信処理を、前記プロセスの優先度と同
一の優先度で実行するメッセージ通信処理手段を備え、 さらに、前記スケジューリング処理手段は、受信したメ
ッセージに付加された前記新たな優先度に対応した、さ
らに新たな優先度を、当該受信メッセージに対応する処
理を実行するプロセスに与えることを特徴とする分散処
理システム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5087494A JPH06301655A (ja) | 1993-04-14 | 1993-04-14 | 分散処理システム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5087494A JPH06301655A (ja) | 1993-04-14 | 1993-04-14 | 分散処理システム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH06301655A true JPH06301655A (ja) | 1994-10-28 |
Family
ID=13916522
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5087494A Pending JPH06301655A (ja) | 1993-04-14 | 1993-04-14 | 分散処理システム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH06301655A (ja) |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11312093A (ja) * | 1998-04-28 | 1999-11-09 | Hitachi Ltd | 分散処理システム |
| JP2004054622A (ja) * | 2002-07-19 | 2004-02-19 | Hitachi Ltd | コントローラおよび情報通信サービス方法 |
| DE102009018261A1 (de) | 2008-04-25 | 2009-12-31 | Nec Electronics Corp., Kawasaki | Informationsverarbeitungssystem und Verfahren zur Steuerung der Aufgabenausführung |
| WO2016151654A1 (ja) * | 2015-03-23 | 2016-09-29 | 日本電気株式会社 | 並列処理システム |
| JP2017530437A (ja) * | 2014-08-12 | 2017-10-12 | マイクロソフト テクノロジー ライセンシング,エルエルシー | 通信障害後の分散ワークロード再割り当て |
| JP2018523226A (ja) * | 2015-06-30 | 2018-08-16 | ▲隣▼元科技(北京)有限公司 | 分布式計算ネットワークシステムおよび当該システムに用いられる計算ノード |
| US10545831B2 (en) | 2014-08-07 | 2020-01-28 | Microsoft Technology Licensing, Llc | Safe data access following storage failure |
-
1993
- 1993-04-14 JP JP5087494A patent/JPH06301655A/ja active Pending
Cited By (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11312093A (ja) * | 1998-04-28 | 1999-11-09 | Hitachi Ltd | 分散処理システム |
| JP2004054622A (ja) * | 2002-07-19 | 2004-02-19 | Hitachi Ltd | コントローラおよび情報通信サービス方法 |
| DE102009018261A1 (de) | 2008-04-25 | 2009-12-31 | Nec Electronics Corp., Kawasaki | Informationsverarbeitungssystem und Verfahren zur Steuerung der Aufgabenausführung |
| US10545831B2 (en) | 2014-08-07 | 2020-01-28 | Microsoft Technology Licensing, Llc | Safe data access following storage failure |
| JP2017530437A (ja) * | 2014-08-12 | 2017-10-12 | マイクロソフト テクノロジー ライセンシング,エルエルシー | 通信障害後の分散ワークロード再割り当て |
| US11228510B2 (en) | 2014-08-12 | 2022-01-18 | Microsoft Technology Licensing, Llc | Distributed workload reassignment following communication failure |
| WO2016151654A1 (ja) * | 2015-03-23 | 2016-09-29 | 日本電気株式会社 | 並列処理システム |
| JP2016181016A (ja) * | 2015-03-23 | 2016-10-13 | 日本電気株式会社 | 並列計算装置 |
| US10162675B2 (en) | 2015-03-23 | 2018-12-25 | Nec Corporation | Parallel processing system |
| JP2018523226A (ja) * | 2015-06-30 | 2018-08-16 | ▲隣▼元科技(北京)有限公司 | 分布式計算ネットワークシステムおよび当該システムに用いられる計算ノード |
| US10732588B2 (en) | 2015-06-30 | 2020-08-04 | Lynkros Technology (Beijing) Co., Ltd. | Decentralized computing network system and computing processing node used for the same |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3606541B2 (ja) | 複数ノードの非同期データ通信システム内で早期到達メッセージを処理する方法 | |
| US9703595B2 (en) | Multi-core system with central transaction control | |
| US6697876B1 (en) | Distributed kernel operating system | |
| US9720739B2 (en) | Method and system for dedicating processors for desired tasks | |
| WO2021042840A1 (zh) | 数据处理方法、装置、服务器和计算机可读存储介质 | |
| US10609125B2 (en) | Method and system for transmitting communication data | |
| EP1230597B1 (en) | Communication architecture for distributed computing environment | |
| JPH04227562A (ja) | データ処理システムのオペレーション実行装置とその方法 | |
| JP2008033952A (ja) | 共通作業キュー環境における最適格サーバ | |
| US20040015979A1 (en) | System and method for efficiently exchanging data among processes | |
| US8135851B2 (en) | Object request broker for accelerating object-oriented communications and method | |
| JPH06301655A (ja) | 分散処理システム | |
| CN113849449A (zh) | 一种通信系统和信息交互方法、设备和介质 | |
| US8176117B2 (en) | Accelerator for object-oriented communications and method | |
| CN112511636B (zh) | 数据传输系统、方法、装置、计算机设备及存储介质 | |
| KR20010010275A (ko) | 메시지큐와 공유메모리를 결합 이용한 프로세스 간의 통신 방법 | |
| JP3006187B2 (ja) | 分散処理システム | |
| JP3799741B2 (ja) | バスコントローラ | |
| JP3007340B1 (ja) | 機能呼び出し方法、並列分散処理システムおよびコンピュータ | |
| JP2000267960A (ja) | プロセス間のパケット通信方法及びパケット通信装置 | |
| KR0143742B1 (ko) | 다중처리 시스템을 위한 데이타 통신방법 | |
| JPH1115662A (ja) | 分散オブジェクト管理システム | |
| JPH06139170A (ja) | 分散処理システム | |
| JP2002542524A (ja) | オブジェクト指向プロセッサ・アレイ | |
| JPS63145550A (ja) | フアイル転送処理方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |