JPS61294574A - 最小限のデ−タ経路および新しいアドレス指定モ−ドをもつたデジタルデ−タ処理法 - Google Patents

最小限のデ−タ経路および新しいアドレス指定モ−ドをもつたデジタルデ−タ処理法

Info

Publication number
JPS61294574A
JPS61294574A JP61103699A JP10369986A JPS61294574A JP S61294574 A JPS61294574 A JP S61294574A JP 61103699 A JP61103699 A JP 61103699A JP 10369986 A JP10369986 A JP 10369986A JP S61294574 A JPS61294574 A JP S61294574A
Authority
JP
Japan
Prior art keywords
message
cell
processes
context
name
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
JP61103699A
Other languages
English (en)
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.)
Computer X Inc
Original Assignee
Computer X Inc
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 Computer X Inc filed Critical Computer X Inc
Publication of JPS61294574A publication Critical patent/JPS61294574A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41845Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by system universality, reconfigurability, modularity
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33125System configuration, reconfiguration, customization, automatic
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34345Database for sequential control of several machines by messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 技術的分野 本発明は一般的にはデジタルデータ処理法に関するもの
であシ、特にネットワークインタフェースモジュール(
NIM)がネットワーク内の相異なるセルに常駐するプ
ロセス間のメツセージ伝送を促進する手段を含みHIM
がネットワーク内の相異なるセルに常駐するプロセス間
のメツセージ伝送を促進するモードを使用する分散型デ
ータ処理システムにおけるNIMに関する。
発明の概要 多重プロセッサ、多重タスク化仮想計算機はプロセス、
メツセージおよび文脈を含む。プロセスはメツセージを
通じてのみ連絡する。文脈は関連したプロセスの群であ
る。仮想計算機は構内通信ネットワーク(r、m)によ
って結合された複数の個別的セルを含む分散型データ処
理システムにおいて実施されている。各セルは1つ又は
複数のプロセスおよび/又は文脈を含んでいてもよい。
ネットワークインタフェースモジュール(HIM)は個
々のセルとLANとの間のインタフェースを与える。
異なるセルに常駐するセル間のメツセージ伝送を促進す
るために、各セルには常駐および非常駐プロセスの位置
をそれぞれ識別する表が備えられている。各NIMはま
たアドレス指定モードを与えメツセージがプロセス名に
よって送られることができるようにする。LANの動作
を妨げずにセルをLANに追加したり、又はセルをLA
Nから削除することができる。
発明の背景 本発明は分散をデータ処理システム、即ち独立して機能
し得るが互にメツセージを送ったシ受けとったシするよ
うに結合している2つ又はそれ以上のデータ処理システ
ムに関する。
構内通信ネットワーク(LM)は分散型データ処理シス
テムの1例である。代表的なZ、A#は多数の自律デー
タ処理1セル(e、all)”を含み、各セルは少なく
とも1つのプロセッサとメモリを含む。各セルは独立し
てデータ処理動作を行うことができる。更に、各セルは
(ツイストペア線、同軸ケーブル、光学線維ケーブルな
どの適当な手段によって)設計上の考え方に応じて例え
ばループ、星形。
樹木構造の他のセルのネットワークに結合されている。
上述したように1本発明はそのような分散型データ処理
システムに有用性がある。という訳は。
そのようなシステムにおいては比較的高度のハードウェ
ア独立性に対する大きな必要性があるからである。代表
的な分散型データ処理システムは多くの種類のさまざま
なプロセッサ、メモリ、オペレータインタフェース、プ
リンタおよびその他の周辺装置を含む。従って、デバイ
スをシステムに追加したシ又はシステムから除去する度
毎にオペレーティングシステムの大部分を書込みおよび
/又は再書込みする必要なしに相異なる型の一ノ・−ド
ウェア装置を容易に収容する(a660剣data)オ
ペレーティングシステムをそのような分散型データ処理
システムのために緊急の必要がある。
本発明に用いられている1プロセス”とは、内蔵されて
いるデータパッケージでありそのデータに関して動作す
る実行可能な手続と定義されており、他の周知のシステ
ムにおける1タスク”に匹敵する。本発明ではプロセス
はサイズ、複雑さおよびそれが用いられる方法の点でサ
ブルーチンに匹敵すると考えることができる。プロセス
とサブルーチンとの違いは、プロセスは動的に作成し破
)裏することができ、それらのクリエータ(6層gαt
oデ)およびその他のIサブルーチン”と同時に実行で
きる点にある。
本発明に用いられているプロセス内では、データは完全
に専用であり、外から、即ち他のプロセスによってはア
クセスすることはできない。従ってプロセスは1目的”
、′モジュール′又はその他の高レベルデータ抽象を実
現するのに使用できる。各プロセスは逐次実行する。同
時性は多重プロセスを介して、多分多重プロセッサにつ
いて実行することによって達成される。
本発明の分散型データ処理システムにおけるあらゆるプ
ロセスはそれによって参照される独特の識別子(PID
)を有する。PIDはプロセスが作成される時にシステ
ムによって割当てられ、プロセスの位置を物理的に決め
るシステムによって用いられる。
どのプロセスもまた可変長文字列である独特でない記号
1名°を有する。一般的に云うと、プロセスの名前はシ
ステム全体に知られている。名前の範囲を制限するため
に2本発明は・文脈″の概念を用いている。
1文脈”はその名前が文脈外には知られていない関連プ
ロセスの集りにすぎない。文脈は名前スペースをより小
さいか、よシ管理可能なサブシステムに区分する。文脈
はまた名前を1かくし”それらに含まれるプロセスと他
の文脈と偶然に矛盾することがないようにする。
1つの文脈内のプロセスは他のプロセス内の文脈と明示
的に連絡することができず、他の文脈内のプロセスを知
らない。文脈境界を越えるすべての対話は1文脈プロセ
ス”を介して行われなければならず、従っである程度の
機密保護を与える。
文脈プロセスはしばしば入力メツセージのためのスイッ
チボードとして動作し、それらの入力メツセージをその
文脈内の適当なサブプロセスへ再送する。
文脈プロセスは他のプロセスと同じようにふるまい、更
に文脈プロセスが作るいかなるプロセスも文脈プロセス
だけに、そしてそれらのプロセス相互間においてのみ判
っているという性質を有する。プロセスの作成はそのプ
ロセスと同じ名前をもつ新たな文脈を定義することに等
しい。
いかなるプロセスも文脈プロセスを作ることができる。
従って定義された各新文脈はそれがそのなかに作られた
文脈内に完全に含まれており、従って外の参照からシー
ルドされている。この1ネステイングによって名前スペ
ースは任意の所望する深さに階層的に構成することがで
きる。
概念的には2階層の最高レベルはすべての文脈を包含す
るシステム自体である。ネスティングがトップダウン設
計に用いられてシステムをコンポーネント又は1層”に
分け、各層は前の層よりも明細にされている。これはタ
スクをサブルーチンに分解するのに似ており、事実周知
のシステムに関する単一タスクである多数のアプリケー
ションは入れ子にされた文脈における多重プロセス【変
換してもよい。
1メツセージ”は、プロセスに冷すべきことを告げおよ
び/又はプロセスがそのオペレーションを実行するのに
必要とする情報をプロセスに供給するデータを含むバッ
ファである。各メツセージバッファは(最高64キロバ
イトまでの)異なる長さをもつことができる。規定によ
り、メツセージバッファの第1フイールドはメツセージ
の型(例えば1読出”、C印刷”、′状態′、′事象”
など)を定義する。
メツセージは名前又は’PID”によって1つのプロセ
スから別のプロセスへキュー(qsaug )−される
待合せ(queuing)は潜在的な周期問題を回避し
セマフォ(Sσmtgphoデ#)、監視などの代わシ
に用いられる。メツセージのセンダ(sender)は
メツセージが送られた後に継続するのは自由である。レ
シーバ(rgegtvar)  がメツセージを得よう
と試みると。
すてKその待ち行列のなかで待機しているものがなけれ
ば1つのメツセージが到着するまでそれは中断される。
任意選択でセンダは応答を待ちたいということを指定で
き、特定のメツセージが到着するまで中断される。他の
いかなるソースからのメツセージもそれが起きてしまう
まではキューから外されない。
ここに説明する分散型データ処理システムでは。
メツセージは2つのプロセスがデータを交換する唯一の
方法である。1大域変数“の概念はない。
共用メモリ領域は本質的にメツセージによって各領域を
1管理”するプロセスによる以外は許されない。メツセ
ージはまたシステムが扱う唯一の形の動的メモリである
。従って、メモリを割当てる要求はメモリのブロックを
戻し、それはプロセスによって局部的に用いることがで
きるか、ま九別のプロセスへ伝送することもできる。
メツセージはそれによってハードウェア透過性が達成さ
れる機構を与える。システム内のどこかにあるプロセス
は、プロセス名を知っていればシステム内の他の場所に
ある他のどのプロセスへも(たとえ別のプロセッサおよ
び/又はセルにあっても)メツセージを送ることができ
る。このことは、プロセスはいかなる時にもシステム全
体に動的に分散させ、参照するプロセスを変えずに最適
スルーブツトをうろことができることを意味する。
宛先の分解(r*sat%tie%)はプロセス名スペ
ースを探索することに二って行われる。
文脈ネスティングレベルは名前によってプロセス間でメ
ツセージを送る場合に1参照の範囲”を決定する。一定
のプロセスからメツセージはそれ自身のレベルの(即ち
同−文脈内の)すべてのプロセスへ送ることができ、ま
た(任意選択で)いかなる任意のよシ高いレベルへ送る
ことができる。
文脈は一致(matoh)が発見されるまで現在の文脈
およびそれよシ高次の文脈から探索される。次に。
そのレベルで一定の名前をもったすべてのプロセスはメ
ツセージのコピーが送られる。プロセスはまた名前を明
示的に知らなくてもメツセージを自分へ、又はその親(
文脈プロセス)へ送り、Jlる名前で異なる文脈内で1
つのプロセスが多重的に存在することを可能にする。
PIDによってメツ七−ジを送ると名前を探索する必要
がなくなり2文脈境界を無視する。これは最も効率的な
連絡方法である。
ネットワークオペレーションを妨げずにネットワーク内
の個々のセルおよび/又はプロセスを容易に追加し削除
できる能力を分散型データ処理システム内に備えること
ができるようにする大きな必要性がある。
ユーザにとって透過性である方法によって同一セル内又
は相異なるセル内に常駐するプロセス間で容易に且つ迅
速に連絡できるようにする大きな必要性もある。
発明の簡単な要約 従って2本発明の目的は改良されたネットワークインタ
フェースを有する分散型データ処理システムを提供する
ことである。
本発明のもう1つの目的は相異なるセルに常駐するプロ
セス間のメツセージ伝送を促進する改良されたネットワ
ークインタフェースを提供することである。
本発明のもう1つの目的はネットワークオペレーション
を妨げずに個々のセルをネットワークへ追加し1個々の
セルをネットワークから削除することを促進する改良さ
れたネットワークインタフェースを提供することである
本発明の更にもう1つの目的は一定の名前をもったすべ
てのプロセスをアドレスできるメツセージ伝送モードを
与える改良されたネットワークインタフエースを提供す
ることである。
本発明の更にもう1つの目的は一定の名前をもった次の
プロセスをアドレスできるメツセージ伝送モードを与え
る改良されたネットワーク゛インタフェースを提供する
ことである。
これらの、およびその他の目的は1分散型データ処理シ
ステム内のプロセス間の連絡方法を提供することによっ
て本発明の好ましい実施例により達成されるが、前記シ
ステムは複数の個別的セルおよびそれらセルのうちの相
異なるセルに常駐する少なくとも2つのプロセスとを含
み、前記方法は非常駐プロセスの表をセルのうちの少な
くとも第1のセルに備えるステップと2名前のみによっ
て識別される第1セルに常駐しない第2プロセスへメツ
セージを伝送する要求を第1セル内の第1プロセスが発
生させるステップと、第1セルの表における第2プロセ
スの位置を探索するステップと、第2プロセスを含むセ
ルへ前記メツセージを伝送するステップとを含む。
コンピュータシステムノ概観 第1図を参照すると、構内通信ネットワーク(LAN)
1によってゆるやかに結合されている多くのセル2−7
(ノード)を含む分散型コンピュータ構成が示されてい
る。ネットワークに接続されるセルの数は任意であシ、
ユーザのアプリケーションに依存する。各セルは第2図
を参照して下記に詳述するように少なくとも1つのプロ
セッサとメモリを含む。更に、各セルはプリンタ8.オ
ペレータ表示装置モジュール(ODM)9 、大容量記
憶装置モジュール13および入出力装置10のような他
の装置を含んでいてもよい。
第2図を参照すると、多重ネットワーク分散型コンピュ
ータ構成が示されている。第1の構内通信ネットワーク
LAN 1はいくつかのセル2,4および7を含む。L
AN1は知能通信モジュール(ICU)50によって第
2の構内通信ネットワークLAN 2に結合されている
。知能通信モジュールはLMお↓びその他のネットワー
クおよび/又は(プログラマブルコントローラなどの)
遠隔プロセッサの間のリンクを与える。
Z、AIV2はいくつかのセル(図示されていない)を
含み本発明と同じプロトコルで動作してもよく。
又はEthgrnat 、 ゼネラルモーター社のMA
P (製造自動化プロトコル)、インターナショナル・
ビジネス・マシンズ社のSNA (システムズ・ネット
ワーク・アーキテクチュア)t 5EC8−n  など
いくつかの市販されているプロトコルのうちのいずれか
によって動作してもよい。各ICM50は上述した特定
のプロトコルの1つを実行するためにプログラムするこ
とができる。更に、セル自体の基本的処理モジュールは
専用装置用知能周辺装置コントロール(IPC)として
使用できる。
LAN 1は70M52を介して第3の構内通信ネット
ワークLAN 3に更に結合されている。プロセスコン
トローラ55も10M54を介してLA?/ 1に結合
されている。
代表的なセル(第2図の7)はプロセッサ24を含み、
このプロセッサ24は好ましい実施例ではモトローラ6
8010プロセツサである。各セルは更に固定メモリ(
ROM) 28とランダムアクセスメモリ(RAM)2
6を含む。更に、各セルはセルをL/L#に接続させる
ネットワークインタフェースモジュール(NIM) 2
1 、およびセルをセル内の追加装置に結合させるバス
インタフェース29を含む。最小セルはオペレータ表示
装置モジュール(ODM)41および入出カモジュール
44のような2つの周辺装置をサポートすることができ
るが、(プロセッサ27のような追加プロセッサを含む
)追加装置をセル内に備えることができる。その他の追
加装置は例えばプリンタ42.およびハードディスクお
よびバックアップ装置(プロツピイディスク又はストリ
ーミングテープ駆動機構)をサポートする大容量記憶装
置モジュール43を含んでもよい。
オペレータ表示装置モジュール41はオペレータがkl
報を入力し視覚情報を受けとることができるようにする
ために鍵盤とスクリーンを備えている。
単一セルは上述した装置をすべて含むことができるが2
代表的をユーザアプリケーションでハ個個のセルは通常
は特殊化された機能のみに用いられる。例えば、1つ又
は複数の大容量記憶装置セルをデータベースサーバ(s
−rvers)として機能するように設けてもよい。バ
ードコピー印刷出力を発生させるためにいくつかのオペ
レータコシソールおよび少なくとも1つのセルがあって
もよい。これらの同じセル又は別々の専用セルが特定の
アプリケーションプログラムを実行してもよい。
このシステムは工場の自動化、データ収集およびその他
の実時間アプリケーションを統合的に解決するように特
設計されている。従ってこのシステムは図形出力、ウィ
ンドー、メニュー、図像(i6%s)、動的表示、電子
郵便、事象記録およびファイル管理などのあらゆる補足
的サービスを含む。
ソフトウェア開発機構はコンバイラ、ウィンドー指向エ
ディタ、デバッガおよび性能監視手段を含む。
構内通信ネットワーク 第1図又は第2図に描かれている構内通信ネットワーク
は全システムを一緒に結びつけ、後述する分散型仮想計
算機モデルを可能にする。LANは高スループツト、保
証された応答、信頼性および低エントリ費用を与える。
LA/l/はまた全システムおヨヒアプリケーションン
7トウエアがその存在を知らないという意味において自
律性である。例えば、いかなるネットワークインタフェ
ースモジュール(例えば第2図のNIM )もそれを直
接に駆動させるソフトウェア以外のいかなるソフトウェ
アも書きかえずに交換できる。
LAN相互接続媒体にツイストペア線又は同軸ケーブル
でもよい。2つのチャネル(論理的には2つの別々のネ
ットワーク)を信頼性およびスループットを高めるため
に備えてもよい。
LANアーキテクチュアは論理リングであり、そこでは
電子1トークン゛が絶えず高速でセルからセルへ通過し
ている。トークンの電流ホールダはそれを用いてデータ
の1フレーム”を送ったり。
又はそれをリングのなかの次のセルへ送ったりすること
がある。HIMはそのすぐ次の隣りのセル(ngigh
bor)の論理アドレスと状態を知るだけでよい。NI
Mの責任はその隣シのセル(ngighbor)の故障
又は新たな隣りのセル(s−wigル60デ)の包含の
検出に限られている。一般に故障したシ、又は新たに追
加されたセルにする調整は自動的に行われる。
ネットワークインタフェースは直接にプロセッサのメモ
リ内にマツプする。データ交換はベンディングの17レ
ーム”のリンクしたリストを含む二重ポートバッファプ
ールを介して起きる。長さが変化する論理メツセージは
伝送のため固定サイズのフレームに分解され、受けると
HIMに二って再びアセンブルされる。この目的のため
にフレームには一連番号がつけられている。フレームは
短時間内に応答されないと、そのフレームは故障として
処理される前に何回も再伝送される。
第2図に関連して上述したように、  LANはいわゆ
る〆ブリッジウエイ”を介して同じ(LANプロトコル
で動作している他のLANに接続してもよく。
又はlケイトウエイ”を介して他の型のLANに接続し
てもよい。
ソフトウェアモデル 本発明のコンピュータオペレーティングシステムハプロ
セス、メツセージおよび文脈について動作するが、これ
らの術語についてはここに定義しである。従ってこのオ
ペレーティングシステムはプロゲラ1にデータ又は制御
抽象ではなくハードウェア抽象を提供する。
プロセスはそれらの物理的位置には関係なく小さい1セ
ツトのメツセージパッシングプリミティブによって参照
される。上述したように、すべてのプロセスはシステム
により発生された一意名とプログラマによつ工割当てら
れた必ずしも一意でない名前の両方を有する。−意名は
速やかな直接的アクセスを与え、一方必ずしも一意でな
い名前は限られた範囲を有し2間接的記号アクセスを与
える。
第3図を参照すると2本発明のアーキテクチュアモデル
が示されている。下の方のハードウェア層63は上述し
たように多数のプロセッサ71〜76を含む。プロセッ
サ71〜76は1つ又は複数のセル内に物理的に存在し
てもよい。上方のソフトウェア層60は互にメツセージ
m1〜m6を送る多数のプロセスP1〜F10を含む。
l仮想計算機”というラベルが付いている中間層61は
ソフトウェアがらノ・−ドウエアを分離し、プログラム
があたかも単一プロセッサで実行されるかのようにプロ
グラムが書き込まれることを可能にする。逆に、プログ
ラムをその目的のために明示的に設計することなく多数
のプロセッサに分散することができる。
ここに開示しである仮想計算機概念の重要な目的はアプ
リケーションプログラマに彼が設計する簡単な首尾一貫
したモデルを提供することである。
このモデルは上述したようにいくつかの主要概念。
プロセス、メツセージおよび文脈に還元される。
この主要モデルの結果、ハードウェア特殊性はユーザに
とって透過性にされており、ノ・−ドウエア構成の変更
はソフトウェアに直接的影響を与えない。
仮想計算機 lプロセス”は内蔵されたデータパッケージであシその
データについて動作する実行可能な手続である。このデ
ータは完全に専用であシ、他のプロセスによってアクセ
スすることはできない。本発明には共用メモリの概念は
ない。プロセスの実行は厳密に順次に行われる。多数の
プロセスは同時に実行し、オペレーティングシステムに
よってスケジュールされなければならない。プロセスは
再入可能とすることができ、その場合にはたとえ多くの
段階(s9%stancga)  がアクティブであっ
てもコードの1つのコピーだけがロードされる。
あらゆるプロセスはそれによって参照可能な固有の1プ
ロセス識別子番号(PID)を有する。prryはプロ
セスが作られる時にシステムによって割当てられ、その
プロセスが終了するまで有効である。
PID割当はPIDが近い将来に再使用されないことを
保証するランダム化7アクタを含む。PIDの内容はプ
ログラマには関係ないが、プロセスの位置を物理的に決
めるために仮想計算機によって用いられる。PIDはプ
ロセスに対するポインタとして考えてもよい。
あらゆるプロセスはまたプロゲラiによって割当てられ
た文字の可変長列である1名前”を有する。名前は一意
である必要はなく、このあいまいさは新しいサービスを
透過的に加え故障許容限度を助長するのに用いてもよい
第4図はシステム全体にわたる名前スペースが参照数字
90〜92によって識別されているI文脈”によって別
個のサブセットに区分されていることを示す。文脈とは
その名前が文脈外には判らない関連プロセスの集りにす
ぎない。例えば文脈90はプロセスA 、 eL 、 
(4、b 、丘、咲および二を含む。文脈91はプロセ
スB、αTbT6およびfを含む。更に文脈92はプロ
セスC2α、c、dおよびXを含む。
1文脈プロセス”と呼ばれる各文脈内の1つの特定のプ
ロセスは文脈内においても、また直接に包含している文
脈(その1親文脈”と云われる)内でも判っている。第
4図に示しである例においては、プロセスA−Cはそれ
ぞれ文脈90〜92に対する文脈プロセスである。文脈
91の親文脈は文脈90であり2文脈92の親文脈は文
脈91である。
概念的には文脈プロセスは文脈の境界上に位置し。
それへのゲートとして動作する。
文脈92内のプロセスは名前によって文脈9oおよび9
1内のどのプロセスも参照できる。しかし。
文脈91内のプロセスは文脈プロセスqを通過すること
によって文脈92内のプロセスをアクセスできるだけで
ある。文脈90内のプロセスは文脈プロセス旦およびQ
を通過する。とによって文脈92内のプロセスをアクセ
スできるだけである。
文脈プロセスの機能は入力メッ七−ジをろ過しくfsl
tgr)tそれらのメツセージを拒否するが、又はその
文脈内の他のプロセスへそれらのメツセージを再送する
。文脈を入れ子とにして、抽象の階層を構成できるよう
にしてもよい。1つの文脈は1つのセルに完全に常駐し
なければならない。全システムは常駐し階層中の最高レ
ベルにある総括的文脈として扱わなければならない。要
するに。
文脈は限られた保護領域を定め、故意でない命名上の矛
盾の機会を減らす。
文脈プロセスの一方又は他方を通じてひとたび接触が確
立されたら、もし適当と思われる場合にはPIDを交換
することによって1つの文脈内のプロセスを別の文脈内
のプロセスに1接続”させることができる。本発明内の
大部分のプロセスサーバはそのように機能する。初最の
アクセスは名前による。ひとたび所望する機能(例えば
ウィンドー又はファイル)が1開かれる”と、ユーザプ
ロセスおよびサービスはPIDを介して直接に連絡する
1メツセージ“はプロセス間で情報を運ぶ(プロセッサ
の物理メモリサイズによってのみ制限される)可変長バ
ッファである。プログラマにとってアクセス不可能なヘ
ッダは宛先名とセンダ(8−%whr)のPIDを含む
。規定によシ、メツセージ内の第1フイールドはメツセ
ージの型(例えば1読出”。
−状態”など)を定める空白終了列である。メツセージ
はそれが送られると受取側プロセッサのキューに入れら
れる。キューイングは逐次アクセスを確実にし、セマフ
ォ、モニタなどに優先して用いられる。
メツセージはそれによってハードウェア透過性が達成さ
れる機構を与える。仮想計算機内のどこかに位置するプ
ロセスはその名前が判れば他のどのプロセスにもメツセ
ージを送ることができる。
透過性はフリツジウエイ(即ち同じネットワークプロト
コルで動作しているLAN間のインク7エース)には成
る程度の制約をもって適用し、一般的には性能低下によ
シゲートウエイ(即ち異なるネットワークプロトコルで
動作しているLAN間のインタフェース)には全く適用
しない。しかし、それらは必要とされる性能レベルに応
じてそのように動作することができ石。
プロセス間連絡 すべてのプロセス間連絡はメツセージを介して行われる
。その結果、仮想計算機プリミティブの大部分はメツセ
ージの処理に関する。仮想計算機の核プリミティブは下
記の通りである。
、4LLOC−一定のサイズの(メツセージ)バッファ
の割当を要求する。
FRH:E   −一定のメツセージバッファの割当解
除を要求する。
PUT   −(名前又はPIDによって)一定の宛先
へのメツセージを終らせる。
GET   −(PIDによシ)特定のプロセスから自
由選択によυ次の入力メツセージを待 ち、キューから外す。
FOWARD  −受けとったメツセージを別のプロセ
スへ通過させる。
CALL  −メツセージを送ってから応答を待ちキュ
ーから外す。
REPLY  −一定のメツセージのオリジネータへメ
ツセージを送る。
ANY−MSG−受取側キューが空でなければI真”を
戻し、さもなければI誤“を戻す。任 意選択で特定のPIDからのいずれかのメツセージがキ
ューに入れられるかど うかを検査する。
核プリミティブの機能を更に説明すると、 ALLOC
はすべてのメモリ割当を扱う。AI、LOCはポインタ
をバッファへ戻し、バッファはプロセス内の局部記憶装
置に用いることができ、又は(PUTなどを介して)別
のプロセスへ送ることができる。ALLOCは決してI
故障”せず、要求を満たすのに十分なメモリが開放され
るまで待機する。
PUTプリミティブは別のプロセスに対しメツセージを
キューに入れる。送出し側のプロセスはメツセージがキ
ューに入れられるや否や直ちに実行を再開する。
FORWARDはメツセージを速やかに再送するかもと
のセンダに関する情報を維持するのに用いられる(但し
、 PUTは常に送出し側プロセスをメツセージのオリ
ジネータにする)。
REPLYは名前又はPIDによってではなく以前に受
けとったメツセージのオリジネータへメツセージを送る
CALL は本質的には遠隔サブルーチン呼出しを実施
し、レシーバ(racgtvar )がREPLYを実
行するまでコーラ(car!er)をして中断させる。
この結果。
応答されたメツセージは到着すると直ちにシーケンスの
キューから外され、コーラは実行を再開する。
同時実行に重点がおかれているので、できるだけ多くの
プロセスが並列で実行される。従ってPUTもFORW
ARDもメツセージが送られるのを待たない。逆に、 
GH:TSは1つのオペレーションにおいてメツセージ
が到着しそれをキューから外すま。
でプロセスを中断させる。ANY−MEGプリミティブ
は、  GF:Tに専念する前にキューのなかに重要な
ことがあるかどうかをプロセスが決定できるようにする
ために用意されている。
メツセージが名前によって送られる場合には。
宛先プロセスが名前スペースのなかに発見されなければ
ならない。探索経路は送出し側プロセスが常駐する文脈
のネスティングによって決定される。
一定のプロセスからメツセージはそれ自体の文脈内のす
べてのプロセスへ送ることができ、又は(任意選択によ
り)何らかのよシ高次の文脈内のプロセスへ送ることが
できる。第3図を参照すると、一致がみつかるまで、又
はシステム文脈に達するまで2文脈は現在の文脈および
それより高次の文脈から探索される。その文脈内で同じ
名前をもったすべてのプロセスが次にメツセージのコピ
ーのキューに入れられる。
例えば、第3図を参照すると9文脈141においてプロ
セスtは名前圧によってすべてのプロセスにメツセージ
を送るとする。プロセスVは先ずそれ自身の文脈141
内で探索するが、プロセス色はみつからない。プロセス
νは次の高次の文脈131(その親文脈)内で探索する
がやはシプロセス玉はみつからない。次に、プロセスV
はその次の高次の文脈110内で検索し、参照数字11
2によって識別されるプロセス色を発見する。それは文
脈110内の唯一のプロセス色であるので、それはプロ
セスVからのメツセージの唯一のレシピエンドである。
文脈131内のプロセス色が名前圧によってメツセージ
をすべてのプロセスへ送ると、それは先ずそれ自身の文
脈131内で探索し、そこにプロセス2がないことを知
る。次にそれは文脈110内で探索し、プロセス色を発
見する。
文脈131内のプロセス色は名前乙によ゛つてメツセー
ジtfべてのプロセスへ送るとする。それは文脈121
に対する文脈プロセスであるプロセス4(122)とと
もに文脈110内のプロセスA(111)を発見する。
プロセスはまたいずれの名前もはっきりと知らずに自分
自身に、又はその文脈プロセスへメツセージを送ること
がある。
(LANに類似している)1論理リングの概念は一定の
名前でシステム内の次のプロセスへメツセージを送るこ
とを可能にする。メツセージはもしそのようなプロセス
が存在するとすればセンダの文脈内で正に1つのプロセ
スへ送られる。さもなければ親文脈が探索される。
仮想計算機は、各NEXT伝送が異なるプロセスに達し
、最終的には伝送がリング内の論理的に1最初の”プロ
セス(もとのメツセージを送ったプロセス)へ送られル
ープを完成することを保証する。換言すると、同一レベ
ルにある同じ名前をもったすべてのプロセスはプロセス
の数がどれ位あるか、又はそれらの位置が判らなくても
互に連絡することができる。論理リングはデータベース
のようなサービスを分散させるのに不可欠である。
リング内のプロセスの順序づけは予言できない。
例えば2文脈121内のプロセスa (125)がNE
XTプリミティブを用いてメツセージをプロセス色に送
ると、探索は同じ文脈121内の第1プロセスニ(12
4)をみつける。プロセス!(124)はメツセージを
受けとったとしてマークされ2次にプロセスg (12
4)はメツセージを文脈121内のMEXTプロセスg
 (123)へ送る。プロセスt4 (12!i)はそ
のメツセージを受けとったとしてマークされ2次にプロ
セス仝(123)はもとのセンダプロセス色(125)
であるNEXTプロセス二へメツセージを送シ、このプ
ロセス4 (125)はそのメツセージを更に送ること
を知らない。という訳はそればメツセージをすでに受け
とったとしてマークされているからである。
PIDによって直接にメツセージを送ると名前探索の必
要をなくシ2文脈境界を無視する。これはDIRECT
 (直接)伝送モードとして知られ、最も効率的である
。例え゛ば、プロセスA (111)はDIRECTモ
ードでメツセージを文脈141内のプロセスVへ送る。
プロセスがLOCAL (局部)伝送モードでメツセー
ジを送る場合には、そのプロセスはセンダ自身の文脈内
の一定の名前を有するプロセスだけにメツセージを送る
要するに、 DIRECT伝送モードを含めて、  P
UT。
FORWARDおよびCALLプリミティブとともに用
いることができる5つの伝送モードがある。
ALL   −一定の名前を含む第1文脈内でその名前
を有する全プロセスへ伝送する。セ ンダの文脈から始まり、より高次のす べての親文脈を探索する。
LOCAL  −センダの文脈内の一定の名前をもった
全プロセスへのみ伝送する。
NEXT  −センダと同じ文脈内の一定の名前をもっ
た次のプロセスがあるとそれへ伝送 する。さもなければその名前が発見さ れるまでより高次のすべての親文脈を 探索する。
LFVE:L  −’自己”(送り出し側プロセス)又
は櫂文脈1(センダの文脈に対応する文 脈プロセス)へ伝送する。#自己”は CADL プリミティブととも使用することはできない
DIEECT −PIDによって送られる。
メツセージは通常はメツセージを含むバツ7アニ対スる
ポインタをキューに入れることによって伝送される。メ
ツセージは多数の宛先がある場合。
又は宛先が別のセルにある場合にのみコーピーされる。
ALLおよびNEXT伝送モード国ついての更に詳しい
説明は発明の詳細な説明と題した章で後述する。
オペレーティングシステム 本発明のオペレーティングシステムは上述したプリミテ
ィブを実施する核、およびプロセス作成と終了1時間管
理(時間のセット、1iF報装置のセットなど)を行い
セル始動(start−up)と構成を行う1セツトの
プロセスとからなる。装置の駆動機構(driver)
もまた上述したようにプロセス(EEEP)として実施
される。このためシステムサービスおよび装置駆動機構
は両方とも容易に追加又は交換される。オペレーティン
グシステムはまたスワツピングおよびベージングをサポ
ートするが、これらはいずれもアプリケーションソフト
ウェアには見えない。
周知の分散型コンピュータシステムとは異な9本発明の
分散型コンピュータシステムは名前を分解する(t−a
solν#)のに別個の1名前サーバ”プロセスを用い
ない。名前探索は核に限定され、これは非常に早いとい
う利点を有する。
最小ブートストラッププログラムはいずれのセルでも(
ROMに)1例えば第2図のセルNのRO,’y128
 に永久的に常1駐する。このブートストラッププログ
ラムはセルがパワーアップされると自動的に実行し、基
本的オンボード診断を行うことによって始まる。次にこ
のブートストラッププログラムは食核、およびクロック
、(必要があれば)ディスクおよび(必要があれば) 
HIMのRESPを含む初期システムコードモジュール
を発見し始動させようと試みる。このモジュールについ
てセルに関する第1デイ・スフ駆動機構があればそれが
さがし出される。ディスクがなくセルがLANにあると
モジュールを要求するメツセージが送シ出される。
それに失敗すると、必要とされるソフトフェアがROM
内に常駐しなければならない。クロックおよヒフロセス
作成のためのシステムサービス、初期設定プログラムお
よび最小ファイルシスチームもまたモジュールに組込ま
れている。初期設定プログラムは核の内部表のすべてを
作シ2次に予めロードされたサービス(ファイル管理な
ど)の各々の予め定められた入口点を呼出す。最終的な
結果として取付けられた装置のためのKESPが実行さ
れるようにスケジュールされ、セルは利用可能になる。
一般的に云うと、システムの各セル用の初期ソフトウェ
アおよびハードウェアを説明するテンプレートファイル
が存在する。このテンプレートはセル始動直後にスケジ
ュールされる1セツトの初期フロセス(通常は1つのサ
ービスについて1プロセス)を規定する。次にこれらの
プロセスはそれぞれのサブシステムを始動させる。各セ
ルのセル構成サービスは各サブシステムが初期設定され
るとそのサブシステム構成メツセージを送シ、サプクス
テムにそれがもっている装置を知らせる。
その後、新たな装置がセルに付加されたシ、装置が故障
したり、又は装置がセルから取除かれたシすると同様な
メツセージが送られる。
従って、′システムアップ”1システムダウン”につい
ては明確に定義され九意味はなく、セルがアクティブで
いる限りにおいては、システム全体にしては17ツプ”
であると考えてもよい。セルはネットワークの他のセル
に影響を与えずに停止又は始動させることができる。同
じ原理は限られた意味で周辺装置にもあてはまる。型、
モデル番号などに関して自らを識別できる装置はオペレ
ータ介入なしに追加又は除去できる。このオペレーティ
ングシステムはシステムの大域状態を維持できず、また
全システムの制御を集中しようとしない。
発明の詳細な説明 第6図はいくつかのセルを含む構内通信ネットワーク(
Z、A/l/)の概念図およびネットワークインクフェ
ースモジュール(NIM)の副写図を示す。LAN40
4は代表的セル1.2. =−N (400−402)
を結合させている。セル2 (401)は本発明の更に
他の局面を示している。ネットワークインク7エースモ
ジユール(NIM) 406は他のものとともに常駐プ
ロセス名キャッシュ440および非常駐プロセス名キャ
ッシュ441を含むブロック図の形で示されている。
N1M406はまた一般に408として知られる核、お
よび少なくとも1つのプロセスを含む少なくとも1つの
記憶装置410を含む。第6図においては記憶装置41
0は代表的なプロセスB、! およびgを含むものとし
て示されている。LAN 404に結合されている他の
どのセルもセル2 (401)のN1M406に似九H
IMを含む。
第7図AはHIMの非常駐プロセス名キャッシュ441
の描写図である。キャッシュは複数のアドレス可能なメ
モリ位置を含む高速メモリである。各位置は代表的なキ
ャッシュワード414によって示されている少なくとも
3つのフィールド、即ちプロセス名を含むフィールド4
33.このプロセスが位置しているLAPJ内の次のセ
ルのアドレスを含むフィールド434および1プロセス
における発見’ (DIP) 7 ′yグを含むフィー
ルド435を有する。
NIMの非常駐プロセス名キャッシュの動作については
後述する。
第7図BはNIMの常駐プロセス名キャッシュ440の
描写図である。各キャッシュワードは少なくとも3つの
フィールド、即ちプロセス名を含むフィールド436.
プロセスカウントを含むフィールド437および1伝送
された”(T)フラグを含むフィールド438を含む。
その動作については後述する。
第8図Aは発見メツセージ420の書式を示す。
発見メツセージ420は少なくともプロセス名を含む部
分421およびメツセージの起点となるセルのアドレス
を含む部分422を含む。
第8図Bは発見応答メツセージ424の書式を示す。発
見応答メツセージ424は少なくともプロセス名を含む
部分425および応答するセルのアドレスを含む部分4
26を含む。
第8図Cは更新キャッシュメツセージ428の書式を示
す。更新キャッシュメツセージ428は少なくともプロ
セス名を含む部分429およびプロセスを作るセルのア
ドレスを含む部分450をdむ。
好ましい実施例の動作 MEANTおよびAZ、Lメツセージ伝送モード上述し
たように、プロセスは(システム内に常駐する場合には
)プロセス名によシ記号でアドレスできる。プロセス名
はシステム内で一意である必要はない。2つの特殊なメ
ツセージ伝送又はアドレス指定モード、即ちNEXTモ
ードとALLモードとが一定のプロセスと任意の命名さ
れたプロセスとの間でメツセージを伝送するために備え
られている。
NEXTモードアドレス指定では、宛先プロセスは名前
によって指定され、先ずセンダの文脈レベル内で(即ち
センダが文脈であるか否かには関係なくすべての兄弟プ
ロセスの間で)探索される。
発見されないと、探索は親文脈内で続けられ2次に親の
文脈内で続けられる。少なくとも1つの一致が発見され
た第1文脈レベルにおける指定された名前をもった第1
プロセスがメツセージを受けとる。
NEXTモードアドレス指定の特殊な場合は、宛先プロ
セスの名前がセンダプロセスの名前と同じ場合であり、
その場合には、(l)もしセンダがその文脈内で指定さ
れた名前をもつ唯一のプロセスであれば、センダはまた
メツセージのレシーバトナjり、(2)同−文脈内にお
いて指定された名前をもったプロセスがいくつかある場
合には、各プロセスがメツセ゛−ジを受けとる。
核はセル内で同一名のプロセスの論理チェーンを実現で
きる。NIMはこのチェーンを論理リングに作るリンク
を与え、相異なるセルを接続させる。
1つのセルのチェーン内のすべてのプロセスがメツセー
ジを受けとると、そのメツセージはNIMへ送られ、た
とえ同一名前の次のプロセスがどこKあってもLANを
通って同一名前をもつ次のプロセスへ伝送される。
NEXTモードメツセージ書式は1受理“フラグと指定
されたフィールドを含む。′受理”フラグが真にセット
されてメツセージが起点セルに戻ると、  NEXTモ
ードメツセージの伝送は成功したと考えられる。受理と
は一定の名前をもった少なくとも1つのプロセスがメツ
セージを受取ったことを意味する(伝送されるNEXT
モードメツセージは受取られずにNIMへ常に送られる
)。この場合には、メツセージは単に自由にされるにす
ぎない。
もしメツセージを送ることができなかったシ、又は受取
られずに戻ると、その伝送は失敗したと考えられる。メ
ツセージが戻ってとないと、それは再伝送される。メツ
セージが論理リングモードで送られると(即ちプロセス
によって同一名前をもつ別のプロセスへ転送されると)
、メツセージはこのプロセスへ戻されてリングを完成さ
せる。さもなければ、メツセージは伝送誤シを示されて
核へ送られる。
ALLモードアドレス指定においても、宛名プロ、セス
は名前によって指定される。それは先ずセンダの文脈内
で(即ち、センダが文脈であればセンダの子の間で、さ
もなければその兄弟の間で)探索される。発見されない
と、探索は親文脈内で続けられ9次に親の親文脈内で続
けられる。少なくとも1つの一致が発見された第1文脈
レベル(おける指定された名前をもったすべてのプロセ
スがメツセージを受取る(同一名前をもっている場合に
はセンダを除く)。
すべてのALLモードメツセージはNIMへ送られ。
L、4#の他のセルに常駐するプロセスがあればそのす
べてに伝送される。
ALLモードメツセージ書式はまた1受理゛フラグと指
定されたフィールドを含む(アドレスされた名前をもつ
1つ又は複数のプロセスが起点セルに常駐する場合にの
みALLモードメツセージは受取られる)。′受理”フ
ラグが真にセットされてメツセージが起点セルに戻ると
、  ALLモードメツセージの伝送は成功したと考え
られる。この場合には、メツセージは自由にされる。メ
ツセージを送ることができなかった夛、又は受取られず
に戻つたり、又は全く戻らなかったりすると、伝送は失
敗したと考えられ、メツセージは伝送誤シと示されて核
へ送られる。
ALLモードメツセージがその1受理”7−ラグが真に
セットされてその起点セルに戻ると、その起点セルはア
ドレスされた名前をもつすべてのプロセスが実際にメツ
セージを受取ったことが保証される。
非常駐プロセス発見およびキャッシュイングNIMが別
のセルに常駐する命名されたプロセスへ伝送するために
核からメツセージを受取ると。
どのセルへメツセージを送るかをHIMは決定しなけれ
ばならない。従って各NIMは非常駐プロセス名のキャ
ッシュ(第7図Aのキャッシュ)を維持している。この
キャッシュは、その各々が3つのフィールド、即ちプロ
セス名433.プロセスがそのなかに常駐する次のセル
のアドレス434および1プロセスに訃ける発見”(D
IP)フラグ455を含む多数のレコードからなる動的
衣である。
各NIMは命名されたプロセスを含む1次の”セルのみ
のアドレスを知っているという点に注目することが重要
である(この1次の”セルは物理的にNIMに最も近い
セルではないかもしれない)。
このことはシステムを構成するセルを論理リング内形成
するものと考えることを要求する。(後述する)発見メ
ツセージのようにセルからセルへ伝播されるすべてのメ
ツセージはこの論理リングの周りを1つの方向に通過す
る。
もう1つの重要な点は、どの一定のセルの非常駐プロセ
ス名キャッシュ441もそのセルがメツセージを伝送し
たいと思うプロセスの名前だけを含むことである。キャ
ッシュの内容は動的であゃ。
即ちプロセス名を付加したシ削除したシできる。
命名されたプロセスへ伝送されるメツセージをHIMが
受取ると、 NIMはそのプロセス名に対するその非常
駐プロセス名キャッシュ441を探索する。
(キャッシュが空であるために)先ずパワーアップの場
合のようにそれがみつからない場合には。
プロセスの常駐を突止め、又は1発見”する必要がある
プロセス名はLA/’/の待ち行列に登録され、  n
rpフラグ435は真にセットされる。メツセージはホ
ールド待ち行列に入れられ2発見の完了を待つ。
プロセスの発見が進められている間に同一プロセスにア
ドレスされたすべてのメツセージもまたホールド待ち行
列に入れられる。
次にLmに発見メツセージ(第8図Aの420)を造る
。発見メツセージの本質的要素は発見されるプロセスの
名前とメッセージオリジネータのアドレスである。発見
メツセージは論理リング内の第1セルへ送られる。
(しかし、もし論理リングがまだ確立されていないと、
その時にはリングが何時形成されるか判らないのでメツ
セージ伝送は終了する。受取られなかったメツセージは
伝送誤りの状態で核へ戻される。受取られたメツセージ
は自由にされる。プロセスの所在は決定されていないの
で、非常、tEプ四セス名キャッシュ表441に記録さ
れたアドレスはセル自身のアドレスにセットされる。)
発見メツセージの次のセルへの伝送が成功すると、その
メツセージはタイムアウト待ち行列に入れられ9発見メ
ツセージが戻ってくるのを待つか。
又は発見応答メツセージ(第8図Bの424)が受取ら
れるのを待つ。タイムライトが起きると、このことは発
見メツセージを伝播する前にセルが失敗したことを意味
し9発見メツセージは再伝送されなければならない。発
見メツセージが起点セルに戻ると、プロセスはLANの
どの他のセルには同時に存在しない。発見メツセージは
戻ってきた発見メツセージ又は対応する発見応答メツセ
ージが受けとられるとタイムアウト待ち行列から外され
る。
HIMがLA7’/を離れて発見メツセージを受取ると
HIMはメツセージ内の名前に対するその常駐プロセス
名キャッシュを探索する。もしNIMがそれを発見する
と2発見メツセージは発見応答メツセージに変えられ、
その発見応答メツセージは応答するセルを識別し、メッ
セージオリジネータへ送られる。しかしプロセスがこの
セルに存在しないと。
発見メツセージは論理リング内の次のセルへ送られる。
メツセージが命名されたプロセスをもったセルによって
受取られるか、又は起点セルへ戻るまでメツセージはこ
の方法で伝播される。
発見メツセージが起点セルへ戻υ命名さ−れたプロセス
が外部に存在しないことを示すと、プロセスが外部に存
在しないことを示す無効セルアドレスが非常駐プロセス
名キャッシュ表中のプロセスのレコードに入れられる。
発見は完了しているので、  DIPフラグが誤りにセ
ットされる。命令されたプロセスへアドレスされたすべ
てのメツセージはホールド待ち行列から外される。別の
セルによって起始されたメツセージはそのセルへ戻され
る。
このセルによって起始されたメツセージは伝送エラーが
示されて核へ戻されるが、又は単に自由にされる。
発見応答メツセージがHIMによって受取られると、応
答するセルのアドレスは非常駐プロセス名キャッシュ表
に記録され2発見は完了しているのでDIPフラグは誤
りにセットされる。発見されたプロセスへアドレスされ
たすべてのメツセージはホールド待ち行列から外され、
応答したセルへ送られる。これらのメツセージはセルへ
の伝送が成功するとタイムアウト待ち行列に入れられて
その戻ってくるのを待つ。
NIMがLANを離れてそれヘアドレスされたALLモ
ード又はNE:XTモードメツセージを受取ると。
NIMはアドレスされたプロセスに対するその常駐プロ
セス名キャッシュ(第7図Hの440)を探索する。そ
れが発見されないと、メツセージはセンダへ戻される。
このことは例えばプロセスが削除されてしまっていると
起きる。拒否されたメツセージを受取ると、送出し側の
HIMはプロセスを含む次のセルのアドレスを再発見し
、その非常駐プロセス名キャッシュを更新しなければな
らない。
名前が常駐プロセス名キャッシュに発見されないと、メ
ツセージは核を介してアドレスされ九プロセスへ送られ
る。メツセージがまだ受取られていないと、)HMはメ
ツセージが受取られたかどうかを示すために核を待たな
ければならない。このことが必要な理由は、常駐プロセ
ス名キャッシュの検査と核にメツセージが渡される間に
タイムウィンドーがありその間にプロセスが削除される
からである。
NEXTモードメツセージは1受理”フラグが誤りにセ
ットされてNIMへすでに送られている。従って受取る
端末にあるNIMはその受取シを示すために核を常に待
たなければならない。核からこの応答を受取ると、メツ
セージはオリジネータへ戻される。メツセージが受取ら
れると、オリジネータはそれをタイムアウト待ち行列か
ら外し、伝送が成功したと考える。しかし、プロセスが
削除されていてそのためにメツセージが受取られないと
起点のNIMはプロセスの位置を再発見しようと試みる
メツセージがすでに受取られていさえすれば。
ALLモードメツセージは命令されたプロセスを含む次
のセルへ直ちに伝播してもよい。メツセージが受取られ
ている場合には、メツセージが受取られたことを核が示
すまではその伝播を遅らせなければならない。
NEXTモードメツセージもALLモードメツセージも
最後には起点のセルへ戻る。メツセージを伝播する前に
セルが失敗すると、起点のセルはタイムアウトする。N
EXTモードメツセージは伝送されるが、  NEXT
モードメツセージは伝送できない。
という訳はどのセルがメツセージを受取っておシどのセ
ルが受取っていないかが判らないからである。メツセー
ジが受取られたかどうかによって。
メツセージは自由にされるか、又は伝送エラー状態で核
へ戻される。
プロセス作成および削除 プロセスが作成され、又は削除されると、核はNIMに
知らせる。NIMはそれ自身の常駐プロセス名キャッシ
ュを維持するが、これは常駐プロセス名1つにつき1つ
のレコードを含む動的表である。
各レコードは3つのフィールド、即ちプロセス名。
プロセスカウントおよび1伝達された”フラグを有する
($7図B参照)。
プロセスが作成されると、キャッシュが名前を探索され
る。名前が発見されないと、レコードはプロセスに対し
て入シ、カウントは1にセットされ伝送されたフラグは
誤シにセットされる。名前がすでに常駐プロセス名キャ
ッシュ内におると。
プロセスカウントが増分されるだけである。
プロセス削除されると、そのプロセスに対応するレコー
ド内のカウントが減分される。カウントが零値に達する
と、命令されたプロセスはもはやセル内に存在せず、レ
コードは常駐プロセス名キャッシュから除去される。
新らしいプロセスが作られると、更新キャッシュメツセ
ージ(第8図C参照)が造られ論理リング内の次のセル
へ伝送される。伝送されたフラグが真にセットされる。
ひとたび伝送されると、メツセージはタイムアウト待ち
行列に入れられてその戻シを待つ。
更新キャッシュメツセージは作られたプロセスの名前お
よびプロセスが作られたセルのアドレスを含む。そのよ
うな更新キャッシュメツセージを受取ると、 NIMは
プロセスに対するその非常駐プロセス名キャッシュを探
索する。それが発見されると、新たなプロセスを含むセ
ルがこのプロセスをきむリストされた現在のセルよシ近
いと非常駐プロセス名キャッシュが更新される。 ”更
新キャッシュメツセージはそれが起点セルに到着するま
で論理リングの周りをセルからセルへ通過する。セルが
メツ・伝−ジの伝播に失敗すると起点セルはタイムアウ
トしメツセージを再伝送する。
プロセス削除については特別な処置はとられない。NI
Mは、セルへ送られたALLモード又はMITI’モー
ドメツセージが拒否され戻されるとプロセスがそのセル
から削除されたことを発見する。次に。
送出し側のセルはプロセスを再発見しその非常駐プロセ
ス名キャッシュに更薪しようと試みる。
以下本発明の実施の態様を列記する。
1、(ε)前記第2プロセスが前記の異なるセルに常駐
していない場合には、前記第2プロセスの位置が発見さ
れるまでステップ(b)および(c)を反復しくこの場
合には第1セルには前記の異なるセルの位置が知らされ
る)、又は前記第2プロセスの位置が発見されないまま
システム内のすべての他のセルが質問されるまでステッ
プ(6)および(c)を反復する(この場合には第1セ
ルには第2セルが発見できないことを知らせる)ステッ
プを更に含む特許請求の範囲第1項に挙げられているプ
ロセスを配置する方法。
2、 (6)前記第2プロセスが前記の異なるセルに常
駐していない場合には、前記第2プロセスの位置が発見
されるまでステップ(6)および(d)を反復しくこの
場合には前記の異なるセルの位置は前記表に記憶される
)、又は前記第2プロセスの位置が発見されないままシ
ステム内の他のすべてのセルが質問されるまでステップ
(c)および(d)を反復する(この場合には第1セル
には第2プロセスが発見できないことを知らせる)ステ
ップを更に含む特許請求の範囲第2項に挙げられている
プロセスを配置する方法。
5、(d)前記メツセージを前記第3プロセスから前記
第1プロセスへ伝送するステップと。
(g)  前記第2又は第6プロセスのうちの少なくと
も1つのプロセスが前記メツセージを受取ったという確
認を前記メツセージ内の前記第1プロセスへ与えるステ
ップとを更に含む。
特許請求の範囲第3項に挙げられているプロセス間連絡
方法。
【図面の簡単な説明】
第1図は本発明の改良されたデータ管理システムを組入
れた単一ネットワーク分散型データ処理システムの描写
図を示す。 第2図は本発明の改良されたデータ管理システムを組入
れた多重ネットワーク分散型データ処理システムを示す
ブロック図である。 第3図は本発明を組入れたデータ処理システムのアーキ
テクチュアモデルを示す。 第4図はソフトウェア文脈およびプロセスが本発明に関
係する場合のソフトウェア文脈とプロセスとの間の関係
を示す。 第3図はメツセージが入れ子形文脈内のプロセス間でど
のようにして送られるかを示す。 第6図はいくつかのセルを含む構内通信−ネットワーク
(LAN)の概念図、およびネットワークインタフェー
スモジュール(NIM)の描写図を示す。 第7図A 14 NIMの非常駐プロセス名キャッシュ
の描写図を示し、第7図BはHIMの常、駐プロセス名
キャッシュの描写図を示す。 第8図Aは発見メツセージの書式を示す。 第8図Bは発見応答メツセージの書式を示す。 第8図Cは更新キャッシュメツセージの書式を示す。 特許出願人 コンピュータ・エックス、インコーボレー
テツド代理人 弁理士 玉 蟲 久 五 部 FI″G、1 F’lG、3 F’IG:、4 F’lG、5 !II覇°キャッシュメワセーシ Ii′Iに:、2−4 1”10.713

Claims (1)

  1. 【特許請求の範囲】 1、(a)セルのうちの最初の1つのなかの第1プロセ
    スによつて要求を発生させ、前記第1セルに常駐してい
    ない第2セルの位置を発見するステップと、 (b)前記要求を前記セルのうちの異なる1つのセルへ
    伝送するステップと、 (c)前記第2プロセスが前記の異なるセルに常駐して
    いるかどうかを決定するステップと、(d)前記第2プ
    ロセスが前記の異なるセルに常駐していると、前記の異
    なるセルの位置を前記第1セルに知らせるステップとを
    含む、 複数の個別的セルおよび前記セルの相異なるセルに常駐
    する少なくとも2つのプロセスを含む分散型データ処理
    システムにおいてプロセスを配置する方法。 2、(a)前記セルのうちの少なくとも1つに非常駐プ
    ロセスの表を備えるステップと、 (b)前記の1つのセル内の第1プロセスによつて要求
    を発生させ、前記第1セルに常駐してない、名前のみに
    よつて識別される第2プロセスの位置を発見するステッ
    プと、 (c)前記要求を前記のセルのうちの異なるセルへ伝送
    するステップと、 (d)前記第2プロセスが前記の異なるセルに常駐して
    いるかどうかを決定するステップと、(e)前記第2プ
    ロセスが前記の異なるセルに常駐していると、前記の異
    なるセルの位置を前記表に記憶するステップとを含む、 複数の個別的セルおよび前記セルのうちの異なるセルに
    常駐する少なくとも2つのプロセスを含む分散型データ
    処理システムにおいてプロセスを配置する方法。 3、(a)前記セルのうちの第1セル内に位置している
    第1セルによつて要求を発生させ、第2および第3プロ
    セスとも同一である名前によつてのみ識別される前記第
    2および第3プロセスへメッセージを伝送するステップ
    と、 (b)前記メッセージを前記第1プロセスから前記第2
    プロセスへ伝送するステップと、 (c)前記メッセージを前記第2プロセスから前記第3
    プロセスへ伝送するステップとを含む、複数の個別的セ
    ルおよび前記セルのうちの異なるセルに常駐する少なく
    とも3つのプロセスを含む分散型データ処理システムに
    おいてプロセス間で連絡する方法。 4、(a)前記複数のセルのうちの第1セル内に位置し
    ている第1プロセスによつて要求を発生させ、名前のみ
    によつて識別される少なくとも1つのプロセスへメッセ
    ージを伝送するが前記の2つのプロセスの両方へはメッ
    セージを伝送しないステップと、 (b)前記メッセージを前記第1プロセスから前記の2
    つのプロセスのうちの1つへ伝送しようと試みるステッ
    プとを含む、 複数の個別的セルおよび前記セルに常駐する複数のプロ
    セスを含み前記プロセスのうちの少なくとも2つのプロ
    セスは異なるセルに常駐する分散型データ処理システム
    においてプロセス間で連絡をする方法。
JP61103699A 1985-05-06 1986-05-06 最小限のデ−タ経路および新しいアドレス指定モ−ドをもつたデジタルデ−タ処理法 Pending JPS61294574A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US06/730,621 US4754395A (en) 1985-05-06 1985-05-06 Network interface module with minimized data paths
US730892 1985-05-06
US730621 2000-12-05

Publications (1)

Publication Number Publication Date
JPS61294574A true JPS61294574A (ja) 1986-12-25

Family

ID=24936084

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61103699A Pending JPS61294574A (ja) 1985-05-06 1986-05-06 最小限のデ−タ経路および新しいアドレス指定モ−ドをもつたデジタルデ−タ処理法

Country Status (3)

Country Link
US (1) US4754395A (ja)
JP (1) JPS61294574A (ja)
CA (1) CA1273436C (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0460739A (ja) * 1990-06-28 1992-02-26 Ee G Sofuto:Kk ネットワークシステムにおけるアプリケーションプログラム起動方式、転送方式および登録方式

Families Citing this family (80)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6170654A (ja) * 1984-09-14 1986-04-11 Hitachi Ltd 分散処理システムにおける資源管理方式
JPH0711779B2 (ja) * 1986-02-21 1995-02-08 株式会社日立製作所 処理対象指示図柄表示装置
US5301322A (en) * 1986-05-23 1994-04-05 Hitachi, Ltd. System for converting job/process identifiers into processor/process identifiers in transferring data between processes in a multiprocessor system
US4975829A (en) * 1986-09-22 1990-12-04 At&T Bell Laboratories Communication interface protocol
NL8603193A (nl) * 1986-12-16 1988-07-18 Hollandse Signaalapparaten Bv Database-systeem.
US5060150A (en) * 1987-01-05 1991-10-22 Motorola, Inc. Process creation and termination monitors for use in a distributed message-based operating system
JPS63174122A (ja) * 1987-01-05 1988-07-18 コンピュータ・エツクス・インコーポレーテツド コンピユーターヒューマンインタフエース
US5335323A (en) * 1987-01-05 1994-08-02 Motorola, Inc. Computer human interface with multiapplication display
US4791566A (en) * 1987-03-27 1988-12-13 Digital Equipment Corporation Terminal device session management protocol
US5136708A (en) * 1987-06-09 1992-08-04 Oce-Nederland B.V. Distributed office automation system with specific task assignment among workstations
US4914571A (en) * 1987-06-15 1990-04-03 International Business Machines Corporation Locating resources in computer networks
US4989139A (en) * 1987-07-17 1991-01-29 International Business Machines Corporation Map case network virtual connection interface system
DE3889904T2 (de) * 1987-09-08 1995-01-12 Digital Equipment Corp Namensverwaltung für ein digitaldatenverarbeitungssystemnetzwerk.
US5109515A (en) * 1987-09-28 1992-04-28 At&T Bell Laboratories User and application program transparent resource sharing multiple computer interface architecture with kernel process level transfer of user requested services
US5390297A (en) * 1987-11-10 1995-02-14 Auto-Trol Technology Corporation System for controlling the number of concurrent copies of a program in a network based on the number of available licenses
US4918653A (en) * 1988-01-28 1990-04-17 International Business Machines Corporation Trusted path mechanism for an operating system
JPH0776939B2 (ja) * 1988-03-16 1995-08-16 富士ゼロックス株式会社 通信ネットワークシステム
US5146561A (en) * 1988-06-02 1992-09-08 Sears Communications Network, Inc. Communication network data manager system
US5155808A (en) * 1988-07-11 1992-10-13 Nec Corporation System for cooperatively executing programs by sequentially sending a requesting message to serially connected computers
US5345587A (en) * 1988-09-14 1994-09-06 Digital Equipment Corporation Extensible entity management system including a dispatching kernel and modules which independently interpret and execute commands
US5091849A (en) * 1988-10-24 1992-02-25 The Walt Disney Company Computer image production system utilizing first and second networks for separately transferring control information and digital image data
US5163149A (en) * 1988-11-02 1992-11-10 International Business Machines Corporation Combining switch for reducing accesses to memory and for synchronizing parallel processes
US5093918A (en) * 1988-12-22 1992-03-03 International Business Machines Corporation System using independent attribute lists to show status of shared mail object among respective users
EP0374338B1 (en) * 1988-12-23 1995-02-22 International Business Machines Corporation Shared intelligent memory for the interconnection of distributed micro processors
US5041963A (en) * 1988-12-29 1991-08-20 Intel Corporation Local area network with an active star topology comprising ring controllers having ring monitor logic function
US5109486A (en) * 1989-01-06 1992-04-28 Motorola, Inc. Distributed computer system with network and resource status monitoring
US5247676A (en) * 1989-06-29 1993-09-21 Digital Equipment Corporation RPC based computer system using transparent callback and associated method
US5404501A (en) * 1989-08-31 1995-04-04 Motorola, Inc. Fault-tolerant method of communicating between processes in a multi processor system by keeping track of the current node location of messages
US5420981A (en) * 1989-09-29 1995-05-30 At&T Corp. Arrangement for establishing a data pipeline in a data processing system employing multiple processors
US6507909B1 (en) * 1990-02-13 2003-01-14 Compaq Information Technologies Group, L.P. Method for executing trusted-path commands
US5327532A (en) * 1990-05-16 1994-07-05 International Business Machines Corporation Coordinated sync point management of protected resources
US5165031A (en) * 1990-05-16 1992-11-17 International Business Machines Corporation Coordinated handling of error codes and information describing errors in a commit procedure
US5319774A (en) * 1990-05-16 1994-06-07 International Business Machines Corporation Recovery facility for incomplete sync points for distributed application
US5261089A (en) * 1990-05-16 1993-11-09 International Business Machines Corporation Optimization of commit procedures by utilizing a two-phase commit procedure only when necessary
JP2691081B2 (ja) * 1990-05-16 1997-12-17 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータ・ネットワーク
JP3293839B2 (ja) * 1990-05-16 2002-06-17 インターナショナル・ビジネス・マシーンズ・コーポレーション 作業ユニットに合わせてコミット範囲を調整するコンピュータ・システム
US5276876A (en) * 1990-05-16 1994-01-04 International Business Machines Corporation Registration of resources for commit procedures
US5319773A (en) * 1990-05-16 1994-06-07 International Business Machines Corporation Asynchronous resynchronization of a commit procedure
US5224205A (en) * 1990-05-21 1993-06-29 International Business Machines Corp. Method of combining architecturally dissimilar computing networks into a single logical network
US5388252A (en) * 1990-09-07 1995-02-07 Eastman Kodak Company System for transparent monitoring of processors in a network with display of screen images at a remote station for diagnosis by technical support personnel
US5654695A (en) * 1991-02-22 1997-08-05 International Business Machines Corporation Multi-function network
US5404461A (en) * 1991-03-29 1995-04-04 International Business Machines Corp. Broadcast/switching apparatus for executing broadcast/multi-cast transfers over unbuffered asynchronous switching networks
US5250943A (en) * 1991-03-29 1993-10-05 International Business Machines Corporation GVT-NET--A Global Virtual Time Calculation Apparatus for Multi-Stage Networks
US5365228A (en) * 1991-03-29 1994-11-15 International Business Machines Corporation SYNC-NET- a barrier synchronization apparatus for multi-stage networks
US5495474A (en) * 1991-03-29 1996-02-27 International Business Machines Corp. Switch-based microchannel planar apparatus
US5265239A (en) * 1991-04-08 1993-11-23 Ardolino Anthony A Method for remotely accessing service programs of a local processing system supporting multiple protocol stacks and multiple device drivers
JP3496222B2 (ja) * 1991-06-25 2004-02-09 富士ゼロックス株式会社 共同作業装置および方法
AU682815B2 (en) * 1992-02-11 1997-10-23 Mark C. Koz An ISDN audiovisual teleservices interface subsystem
US5566301A (en) * 1992-02-11 1996-10-15 Futuretel, Inc. ISDN audiovisual teleservices interface subsystem
US5715474A (en) * 1992-04-30 1998-02-03 Motorola, Inc. Simultaneous control of radio frequency modem in a multi-tasking system using a single session manager program with separate command queue for each application program
EP0588046A1 (en) * 1992-08-14 1994-03-23 International Business Machines Corporation IEEE standard 802.2 virtual device driver
US5455952A (en) * 1993-11-03 1995-10-03 Cardinal Vision, Inc. Method of computing based on networks of dependent objects
US5742848A (en) * 1993-11-16 1998-04-21 Microsoft Corp. System for passing messages between source object and target object utilizing generic code in source object to invoke any member function of target object by executing the same instructions
US5630125A (en) * 1994-05-23 1997-05-13 Zellweger; Paul Method and apparatus for information management using an open hierarchical data structure
US5553239A (en) * 1994-11-10 1996-09-03 At&T Corporation Management facility for server entry and application utilization in a multi-node server configuration
US6732138B1 (en) 1995-07-26 2004-05-04 International Business Machines Corporation Method and system for accessing system resources of a data processing system utilizing a kernel-only thread within a user process
US5805929A (en) * 1996-01-29 1998-09-08 International Business Machines Corporation Multiple independent I/O functions on a PCMCIA card share a single interrupt request signal using an AND gate for triggering a delayed RESET signal
US5805820A (en) * 1996-07-15 1998-09-08 At&T Corp. Method and apparatus for restricting access to private information in domain name systems by redirecting query requests
DE69734179T2 (de) * 1996-07-15 2006-06-29 At & T Corp. Verfahren und Vorrichtung zum Begrenzen des Zugriffs auf private Information in Domain Name Systemen durch Informationsfilterung
US6389464B1 (en) 1997-06-27 2002-05-14 Cornet Technology, Inc. Device management system for managing standards-compliant and non-compliant network elements using standard management protocols and a universal site server which is configurable from remote locations via internet browser technology
US6490722B1 (en) * 1999-03-30 2002-12-03 Tivo Inc. Software installation and recovery system
US6968384B1 (en) 1999-09-03 2005-11-22 Safenet, Inc. License management system and method for commuter licensing
US6842896B1 (en) 1999-09-03 2005-01-11 Rainbow Technologies, Inc. System and method for selecting a server in a multiple server license management system
US7716348B1 (en) 1999-09-03 2010-05-11 Safenet, Inc. License management system and method with license balancing
US7035918B1 (en) 1999-09-03 2006-04-25 Safenet Canada. Inc. License management system and method with multiple license servers
JP5220974B2 (ja) * 1999-10-14 2013-06-26 ブルアーク ユーケー リミテッド ハードウェア実行又はオペレーティングシステム機能の加速のための装置及び方法
US6529983B1 (en) 1999-11-03 2003-03-04 Cisco Technology, Inc. Group and virtual locking mechanism for inter processor synchronization
US6654748B1 (en) 1999-12-07 2003-11-25 Rwd Technologies, Inc. Dynamic application browser and database for use therewith
US6892237B1 (en) * 2000-03-28 2005-05-10 Cisco Technology, Inc. Method and apparatus for high-speed parsing of network messages
US6505269B1 (en) 2000-05-16 2003-01-07 Cisco Technology, Inc. Dynamic addressing mapping to eliminate memory resource contention in a symmetric multiprocessor system
US8041735B1 (en) 2002-11-01 2011-10-18 Bluearc Uk Limited Distributed file system and method
US7457822B1 (en) 2002-11-01 2008-11-25 Bluearc Uk Limited Apparatus and method for hardware-based file system
US7440992B1 (en) * 2003-09-16 2008-10-21 Agent Software Corporation Cell-based computing platform where services and agents interface within cell structures to perform computing tasks
US7552433B2 (en) * 2003-11-12 2009-06-23 Hewlett-Packard Development Company, L.P. Non-platform-specific unique indentifier generation
JP2006208323A (ja) * 2005-01-31 2006-08-10 Toshiba Corp 分散型のレーダ情報処理システム
US20070168872A1 (en) * 2006-01-19 2007-07-19 Raytheon Company Multi-monitor, multi-JVM java GUI infrastructure with layout via XML
US8863151B2 (en) * 2007-08-15 2014-10-14 Red Hat, Inc. Securing inter-process communication
US8578214B2 (en) * 2010-09-09 2013-11-05 International Business Machines Corporation Error handling in a virtualized operating system
US9798567B2 (en) 2014-11-25 2017-10-24 The Research Foundation For The State University Of New York Multi-hypervisor virtual machines
US11016798B2 (en) 2018-06-01 2021-05-25 The Research Foundation for the State University Multi-hypervisor virtual machines that run on multiple co-located hypervisors

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57114960A (en) * 1981-01-07 1982-07-17 Nec Corp Access device
JPS5836049A (ja) * 1981-08-27 1983-03-02 バロース コーポレーシヨン 情報通信方法および情報通信システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3810100A (en) * 1971-12-16 1974-05-07 Collins Radio Co Looped direct switching system
US4031512A (en) * 1975-05-29 1977-06-21 Burroughs Corporation Communications network for general purpose data communications in a heterogeneous environment
US4007450A (en) * 1975-06-30 1977-02-08 International Business Machines Corporation Data sharing computer network
US4325120A (en) * 1978-12-21 1982-04-13 Intel Corporation Data processing system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57114960A (en) * 1981-01-07 1982-07-17 Nec Corp Access device
JPS5836049A (ja) * 1981-08-27 1983-03-02 バロース コーポレーシヨン 情報通信方法および情報通信システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0460739A (ja) * 1990-06-28 1992-02-26 Ee G Sofuto:Kk ネットワークシステムにおけるアプリケーションプログラム起動方式、転送方式および登録方式

Also Published As

Publication number Publication date
CA1273436A (en) 1990-08-28
CA1273436C (en) 1990-08-28
US4754395A (en) 1988-06-28

Similar Documents

Publication Publication Date Title
JPS61294574A (ja) 最小限のデ−タ経路および新しいアドレス指定モ−ドをもつたデジタルデ−タ処理法
US4694396A (en) Method of inter-process communication in a distributed data processing system
US4914583A (en) Method of indicating processes resident within a cell of a data processing system
US4835685A (en) Virtual single machine with message-like hardware interrupts and processor exceptions
US5060150A (en) Process creation and termination monitors for use in a distributed message-based operating system
US5165018A (en) Self-configuration of nodes in a distributed message-based operating system
US5047925A (en) Logical ring in a virtual single machine
US5109486A (en) Distributed computer system with network and resource status monitoring
US5014192A (en) System for locating a file in a logical ring by sequentially forwarding access request with file system name and file name
US5226172A (en) Methods for configuring and performing 3-level password searching in a distributed computer system
US5652911A (en) Multinode distributed data processing system for use in a surface vehicle
JP2677744B2 (ja) 分散メモリ式デジタル計算システム
TW544589B (en) Loosely coupled-multi processor server
US5502839A (en) Object-oriented software architecture supporting input/output device independence
EP0201063B1 (en) Method of locating processes in a distributed data processing system
JPS63201860A (ja) ネツトワーク管理システム
JPH07101407B2 (ja) スケジユーリング方法及び装置
US6269378B1 (en) Method and apparatus for providing a name service with an apparently synchronous interface
EP0201065A2 (en) Virtual single machine with logical ring and with message-like hardware interrupts and processor exceptions
EP0274413B1 (en) Process traps in a distributed message-based system
EP0201064B1 (en) Computer system with data residency transparency and data access transparency
Kepecs et al. SODA: A simplified operating system for distributed applications
JP3238788B2 (ja) オブジェクト通信方式
JP2000227860A (ja) 並行アクセス制御方法とその装置及びマルチスレッドプロセス方法
Seevers The Virtual Parallel Machine: A dynamically reconfigurable approach