JPH1091448A - オブジェクト指向コンピューティングシステム - Google Patents

オブジェクト指向コンピューティングシステム

Info

Publication number
JPH1091448A
JPH1091448A JP9178320A JP17832097A JPH1091448A JP H1091448 A JPH1091448 A JP H1091448A JP 9178320 A JP9178320 A JP 9178320A JP 17832097 A JP17832097 A JP 17832097A JP H1091448 A JPH1091448 A JP H1091448A
Authority
JP
Japan
Prior art keywords
computing system
input
output
storage medium
oriented computing
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.)
Withdrawn
Application number
JP9178320A
Other languages
English (en)
Inventor
Hans Erich Reinfelder
ラインフェルダー ハンス−エーリッヒ
Karlheinz Dorn
ドルン カールハインツ
Detlef Dipl Ing Becker
ベッカー デトレフ
Dietrich Dipl-Ing Quehl
クエール ディートリッヒ
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.)
Siemens Corp
Original Assignee
Siemens Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens Corp filed Critical Siemens Corp
Publication of JPH1091448A publication Critical patent/JPH1091448A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/24Object-oriented
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/4492Inheritance

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】 大きなアプリケーションへの、意味構造のな
いソフトウェアコンポーネントまたはビルディングブロ
ックを、ビルディングブロック内でのコード変化なし
で、そしてアダプタを書くことなしに独立して結合する
ための方法および/または手段を提供する。 【解決手段】 意味構造のない、ダイナミックにリンク
可能な入力と出力を備えたオブジェクトと、自動的に、
パターンに基づいて、十分に分散可能なイベントを供給
するイベント通信フレームワークとを有するようにす
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、オブジェクト指向
マルチプログラミングシステムに関する。より具体的に
は、本発明は、ソフトウェアコンポーネントまたはビル
ディングブロックを相互接続するための方法および手段
に関するものである。
【0002】
【従来の技術】米国特許第5499365号明細書に記
載されているように、オブジェクト指向プログラミング
システムおよびプロセス(“オブジェクト指向コンピュ
ータ環境”とも称される)は、多くの研究と興味の対象
である。当業者には周知であるように、オブジェクト指
向プログラミングシステムは多数の“オブジェクト”か
ら構成される。1つのオブジェクトはデータ構造であ
り、“フレーム”と称される。演算または関数のセット
はまた“メソッド”とも称され、データ構造にアクセス
することができる。フレームは“スロット”を有するこ
とができ、各スロットは、スロット内のデータの“属
性”を含む。この属性は(整数またはストリングのよう
な)基関数、または他のオブジェクトに対するポインタ
であるオブジェクトレファレンスとすることができる。
識別データ構造と共通の特性を有するオブジェクトは相
互に群に入れることができ、1つの“クラス”として正
しく識別される。
【0003】オブジェクトの各所定のクラスは通常、
“インスタンス”の数に現れる。各インスタンスは所定
のデータ構造をオブジェクトの所定の例に対して含む。
オブジェクト指向コンピュータ環境ではデータは次のよ
うに処理される。すなわち、オブジェクトにそのメソッ
ドの1つを、オブジェクト“メッセージ”を送信するこ
とによって実行することを要求することにより処理され
る。受信オブジェクトはメッセージに次のようにして応
答する。すなわち、メッセージネームを満たすメソッド
を選択し、このメソッドを名付けられたメソッドに基づ
いて実行し、コントロールをコーリング・ハイレベル・
ルーティンに、このメソッドの結果に沿って戻すのであ
る。クラス間の関係、オブジェクトおよびインスタンス
は伝統的に“形成時間”中、またはオブジェクト指向コ
ンピュータ環境の発生中に確立される。すなわち、“ラ
ンタイム”より時間的に前、またはオブジェクト指向コ
ンピュータ環境の実行前に確立される。
【0004】上記のクラス、オブジェクトおよびリファ
レンス間の関係に加えて、継承関係もまた2つまたはそ
れ以上のクラス間に存在する。すなわち、第1のクラス
は第2のクラスの“ペアレント”と見なすことができ、
第2のクラスは第1のクラスの“チャイルド”と見なす
ことができる。言い替えると、第1のクラスは第2のク
ラスの祖先であり、第2のクラスは第1のクラスの子孫
である。従って第2のクラス(すなわち子孫)は第1の
クラス(すなわち祖先)から引き継がれる。チャイルド
クラスのデータ構造はペアレントクラスの属性のすべて
を含む。
【0005】オブジェクト指向システムはこれまで、オ
ブジェクトの“バージョン”であると認識されていた。
オブジェクトのバージョンは、異なる時点でのオブジェ
クトで同じデータである。例えば、“ワーク・イン・プ
ログレス”に関連するオブジェクトは完成した立証済み
のワークに関連する同じオブジェクトとは別個のバージ
ョンである。多くのアプリケーションはまた、データが
それぞれ異なる時点で存在したというデータの歴史的記
録を要求する。従ってオブジェクトの別のバージョンが
要求される。
【0006】2つの刊行物がさらに一般的背景を示して
いる。E.W.Dijkstra, The Structure of "THE" Multi p
rogramming System, Communications of the ACM, Vol.
11,No.5, May 1968, pp.341-346,とC.A.R.Hoare, Monit
ors: Operating Systems Structuring Concepts, Commu
nications of the ACM, Vol.17, No.10, October 1974,
pp.549-557である。両方の刊行物は互いを引用してい
る。前者の刊行物は、プリミティブを使用した同期方法
について記載し、セマフォーの使用を説明するものであ
り、後者の刊行物はモニタのBrinch-Hansensコンセプト
をオペレーティングシステムの構築方法として開発した
ものである。とりわけ、Hoareの刊行物は、プロセスに
対する同期の形態を紹介し、セマフォーに関し可能な移
植法について述べており、プルーフルールについても実
例を示している。
【0007】Hoareの刊行物に記載されているように、
オペレーティングシステムの第1の目的は、計算機設置
をそのリソースに対する要求が予測不能である多くのプ
ログラム間でシェアすることである。従って設計者の第
1の役目は、種々の種類のリソース(例えば主記憶装
置、ドラム記憶装置。磁気テープ・ハンドラ、コンソー
ル)に対するスケジュールアルゴリズムによるリソース
アロケーションをデザインすることである。この役目を
簡単にするため、プログラマはリソースの各クラスごと
に別個のスケジューラを構成しようと試みる。この場合
各スケジューラは所定量のローカル管理データからな
り、いくつかのスケジューラおよびファンクションと共
に構成される。これらスケジューラおよびファンクショ
ンは、プログラムによりリソースを獲得および解放する
ために呼び出される。このような関連したデータとプロ
シージャの収集はモニタとして知られる。
【0008】適応通信環境(ACE)は、Douglas C. S
chmidt(Assistant Professor withthe Department of
Computer Science, School of Engineering and Applie
d Science, Washington University)により開発された
ネットワークプログラミングシステムのオブジェクト指
向タイプである。ACEは、ユーザーレベルユニットと
WIN32(WindowsNTおよびWindows95)OSメカニズ
ムを、形式安全で、効率的で、オブジェクト指向インタ
ーフェースによって1つにまとめる。
【0009】・ IPCメカニズム−インターネットド
メインとUNIXドメイン・ソケット、TLI、名前付
きパイプ(UNIXとWIN32に対し)およびSTR
EAMパイプ; ・ イベントマルチプレクス−UNIXでselect()とpo
ll()により、WIN32でWaitForMultipleObjectsによ
り; ・ ソラリススレッド、POSIX Pスレッド、およびWI
N32スレッド; ・ 明示的ダイナミック・リンキング機構-例えばUN
IXのdlopen/dlsym/dlclose、WIN32のLoadLibrar
y/GetProc; ・ メモリマップファイル; ・ システムVIPC−メモリのシェア、セマフォー、
メッセージキュー; ・ サンRPC(GNUrpc++) 付加的に、ACEは多数のハイレベルクラスカテゴリー
とネットワークp@うろぐらみんぐフレームワークを、
ローレベルC++ラッパを統合し、強調するために有し
ている。ACEのハイレベルコンポーネントは、コンカ
レント・ネットワーク・デーモンをサポートする。これ
らのデーモンはアプリケーションサービスからなる。A
CEは最近、多数の商用プロダクツで使用される。この
商用プロダクツは、ATMシグナリングソフトウェアプ
ロダクツ、PBXモニタアプリケーション、ネットワー
クマネージメント、および移動通信システムと事業拡大
−分散医用システムに対する一般的ゲートウェイ通信を
含む。ACEについての豊富な情報と文献は、WWW上
で次のURLから得ることができる。
【0010】http://www.cs.wustl.edu/...schmidt/ACE
-overview.html 以下の省略形が本出願で使用される。
【0011】スレッド −プロセス内での平行実行ユニ
ット。モニタ同期、強制的逐次化により、複数同時実行
スレッドの並列アクセス。このスレッドはすべてモニタ
によりプロテクトされている1つのオブジェクトの機能
をコールアップする。
【0012】・ 同期化−プリミティブ −パラレルア
クティビティの反復的正当化に対するオペレーティング
システムの手段 ・ セマフォー −パラレルアクティビティに対する同
期化プリミティブ ・ Mutex −パラレルアクティビティに対する専
用同期化プリミティブ、 相互実行目的のために、これはクリティカルなコードレ
ンジを含む。
【0013】・ コンディションキュー −所定の条件
を参照するパラレルアクティビティに対するキューを待
つイベント ・ ゲートロック −各エントリーファンクションに対
するモニタのMutex、オブジェクトをプロテクショ
ンするため、オブジェクトの1つのエントリールーチン
を使用するため同時には1つのパラレルアクティブティ
だけを許容するため。
【0014】・ ロングタームスケジュール −コンデ
ィションキュー内またはパラレルアクティビティに対す
るキュー待ちイベント内での1つのパラレルアクティビ
ティの長期遅延。
【0015】・ ブローカ −ディストリビュータ 付加的に次の省略形が使用される。
【0016】AFM Asynchronous Function Manager
(非同期ファンクションマネージャ) SESAM Service & Event Synchronous Asynchrono
us Manager(サービスおよびイベント同期非同期マネー
ジャ) PAL Programmable Area Logic(プログラマブルエ
リアロジック) API Application Programmers Interface(アプリ
ケーション・プログラマー・インターフェース) IDL Interface Definiton Language(インターフェ
ース定義言語) ATOMIC Asynchron Transport Optimizing obsev
er-pattern-like systemsupporting several Modes (cl
ient/server-push/pull) for an IDL-less Communicati
on subsystem (IDLレス通信システムに対する非同
期伝送最適オブザーバパターン様システムサポート複数
モード) XDR External Data Representation I/O 入力/出力 CSA Common Software Architecture (a Siemens AG
computing system convention) (共通ソフトウェアア
ーキテクチュア)(シーメンス社コンピューティングシ
ステム規定) SW ソフトウェア (Software) 過去において、ソフトウェアコンポーネントまたはビル
ディングブロックのインターフェースはアプリケーショ
ンプログラムインターフェース(API)にコード化す
るのが困難であった。この解決手段はプロセスにリンク
可能であったが、しかしロケーション透過型ではなかっ
た。さらにインターフェースは、コード化の困難なオブ
ジェクトリファレンスを備えたインターフェース定義言
語(IDL)によって行われていた。
【0017】
【発明が解決しようとする課題】本発明の課題は、大き
なアプリケーションへの、意味構造のないソフトウェア
コンポーネントまたはビルディングブロックを、ビルデ
ィングブロック内でのコード変化なしで、そしてアダプ
タを書くことなしに独立して結合するための方法および
/または手段を提供することである。
【0018】
【課題を解決するための手段】上記課題は本発明によ
り、意味構造のない、ダイナミックにリンク可能な入力
と出力を備えたオブジェクトと、自動的に、パターンに
基づいて、十分に分散可能なイベントを供給するイベン
ト通信フレームワークとを有するように構成して解決さ
れる。
【0019】
【発明の実施の形態】そのために、コンポーネントまた
はビルディングブロックの機能は周りの環境から完全に
分離され、これにより同じプロセス内でロケートする必
要がなく、その代わりにネットワークを介して分散する
ことができ、その際にインターフェース定義言語を必要
としない。
【0020】実施例では、ソフトウェアコンポーネント
を設計するための本発明の方法は次のステップを有す
る:すなわち、十分に分散可能な入力イベントおよび出
力イベントを定義し;ダイナミックにリンク可能であ
り、意味構造のないソフトウェアコンポーネントを入力
および出力接続点により構築し;十分に分散可能なイベ
ントに基づくオートルーティングパターンを、イベント
通信フレームワークに基づいて設定ずる。
【0021】別の実施例では、本発明はオブジェクト指
向コンピューティングシステムを提供する。このシステ
ムは、意味構造のない、ダイナミックにリンク可能な入
力と出力を備えたオブジェクトと、オートルーティング
され、パターンに基づき、十分に分散可能なイベントを
設定するイベント通信フレームワークを有する。
【0022】別の実施例では、オブジェクトの入力と出
力はCsaConnectableオブジェクトとCsaRemoteオブジェ
クトへのリンクによってそれぞれ設定される。
【0023】別の実施例では、入力および出力と関連し
た各データ構造が別個のヘッダファイルに記述され、こ
のヘッダファイルをリンクすべきすべてのオブジェクト
が使用することができる。
【0024】別の実施例では、各オブジェクトは共有ラ
イブラリであり、オブジェクトの入力および出力のASCI
I構築ファイル名によってランタイムでダイナミックに
リンクすることができる。
【0025】
【実施例】本発明を以下、有利な実施例に基づいて詳細
に説明する。
【0026】前に述べたように本発明は、意味構造のな
いビルディングブロックを大きなアプリケーションに、
ビルディングブロック内でのコード変化なしで、かつア
ダプタを書くことなしで独立して結合するための手段で
ある。このことにより、ソフトウェアブロックを、集積
回路を結合できるのと同じ仕方で結合することのできる
システムまたはアーキテクチュアが得られる。
【0027】本発明の目的のために、ソフトウェアビル
ディングブロックはその外環境(これはユーザーライト
コードと同じように、1つ以上の他のビルディングブロ
ックからなることができる)と、CsaConnectable(提供
者)およびCsaRemote(消費者)オブジェクト/クラス
を介して接続される。これは、他の接続終点が同じプロ
セスにあるかまたはリモートホスト(ローカルの場合は
最適化により)にあるかは関係ない。このルールはすべ
てのビルディングブロックに適用される。
【0028】ビルディングブロックの入力および出力と
関連する各データ構造は別個のヘッダファイルに記述さ
れる。このヘッダファイルは接続すべきすべてのビルデ
ィングブロックが使用できる。
【0029】各ビルディングブロックは共有ライブラリ
として実現または構成される。この共有ライブラリは、
パブリックドメイン通信パッケージで、ASCII構築ファ
イルが使用されるのと同じようにランタイムでダイナミ
ックにリンクされる。入力および出力の名前はダイナミ
ックリンキングの間に割り当てられ、これにより再コン
パイルまたは再リンキングなしでコンフィギュレーショ
ンを変化することができる。
【0030】この手段の大きな利点は、フレキシブルで
あることと、ハイレベルパターンが他のシンプルな、よ
くデザインされた、意味構造のないパターンの最適な結
合から得られることである。さらにこの機構は、ハード
ウェアの世界のオンボード集積回路の結合と非常によく
似ている。
【0031】図1は、ハードウェア集積回路(IC)と
本発明のソフトウェアオブジェクトとの類似性を比較す
るのに有用である。図1では、ハードウェアIC HI
Cが2つの入力ピンI1,I2と、2つの出力ピンO
1,O2を有する。同じようにソフトウェアオブジェク
トSICは、CsaRemoteを介する2つの入力R1,R2
と、CsaConnectableを介する2つの出力C1,C2を有
する。
【0032】このようなソフトウェアICシステムの実
施のための符号化の例を以下に示す。
【0033】I.入力/出力クラス定義
【0034】
【外1】
【0035】II.ビルディングブロックヘッダファイ
【0036】
【外2】
【0037】III.ビルディングブロック実施
【0038】
【外3】
【0039】IV.ASCII構築ファイル
【0040】
【外4】
【0041】図2には、ソフトウェアICを1つ以上の
アプリケーションシステムで実施するブロック回路図が
示されている。図2には5つのソフトウェアICが示さ
れている。すなわち、IC1,IC2,IC3,IC4
とIC5である。さらにソフトウェアICを使用する2
つのアプリケーション、アプリケーション1とアプリケ
ーション2が示されている。アプリケーション1はソフ
トウェアIC、IC1,IC2,IC3を含み、アプリ
ケーション2はソフトウェアIC、IC4とIC5を含
む。図からわかるように、アプリケーション1とアプリ
ケーション2は相互作用する。アプリケーション1とア
プリケーション2とを含む外部プロセスまたは外部シス
テムも同じようにソフトウェアICの入力と出力を介す
る。
【0042】図示のようにIC1は2つの入力側C11
とC12を有する。IC1はまたR11を介する1つの
出力側を有する。入力側C11とC12はIC2の2つ
の出力側、R21とR22にそれぞれ接続されている。
IC2の入力側C21はIC1の出力側R11と接続さ
れている。
【0043】IC3は出力側R31を有し、この出力側
はIC2の入力側C22と接続されている。またIC3
の入力側C31はアプリケーションを含む外部プロセス
と接続されており、入力側C32はIC4の出力側R4
1と接続され、出力側R32はIC5の入力側C52お
よび外部システムと接続されている。出力側R41に加
えて、IC4は外部システムに接続された入力側C41
と、IC5の入力側C51に接続された出力側R42を
有する。IC5はまた、アプリケーションを含む外部プ
ロセスまたは外部システムと接続された出力側R51を
有する。
【0044】入力側と出力側は、上に述べたようにCsaC
onnectableとCsaRemoteを介する。さらに、データが種
々の入力側と出力側にダイナミックリンキングを介して
オートルーティングされる。これにより、コンフィギュ
レーションを変化することができ、アプリケーションが
再コンパイルまたは再リンキングなしで相互作用するこ
とができる。
【0045】付加的に、前述のソフトウェアIC原理は
ACEからのパターン(タスク)と結合することができ
る。これは、強力なソフトウェアビルディングブロック
を得るためであり、このソフトウェアビルディングブロ
ックはハードウェアPALのような特性を有し、ビルデ
ィングブロック内での同期特性とビルディングブロック
の外側での非同期特性/相互作用にパワーを与える。
【0046】内部処理率(ハードウェアPALでのクロ
ック率に対するカウンタ部分)は従って十分に、接続さ
れた環境のイベント入/出力率から独立している。同期
を達成するために必要なバッファはまた関連する意味構
造なしで与えられる。ハードウェアPALの同期解決と
同じように、同期タスクは必要であればソフトウェアP
ALに構築することができる。
【0047】図3は、ハードウェアPALとソフトウェ
アPALとの比較を示す。図示のように、ハードウェア
PAL310はハードウェアICと同じように、2つの
入力ピンI1とI2および2つの出力ピンO1とO2を
有する。しかしハードウェアPAL310内にはまたレ
ジスタ/バッファregが設けられており、ここに到来
するデータおよび出力されるデータストアされる。
【0048】カウンタ部分ソフトウェアPAL312
は、前に述べたソフトウェアICと同じように入力側R
1,R2および出力側C1,C2を有する。しかしタス
クT1とT2が図示されており、これらはハードウェア
PAL310のレジスタ/バッファregに代わるもの
である。他の点ではソフトウェアPALは上述のソフト
ウェアICと同じである。
【0049】ソフトウェアPALは、アクティブオブジ
ェクトサポートによってソフトウェアICに対するフレ
キシビリティを内部ロジックに与える。到来するイベン
トはタスク、例えばタスクT1によって、内部ロジック
によりさらに処理する前にバッファすることができる。
これによりイベントはソフトウェアPALの内部ロジッ
クから分離される。
【0050】当業者であれば変形および変更は可能であ
るが、それらも本願技術に含まれるものである。
【図面の簡単な説明】
【図1】ハードウェアICとソフトウェアICの比較を
示す概略図である。
【図2】ソフトウェアICを使用したアプリケーション
の概略図である。
【図3】ハードウェアPALとソフトウェアPALとの
比較を示す概略図である。
【符号の説明】
HIC ハードウェア集積回路(IC) I1 入力ピン I2 入力ピン O1 出力ピン O2 出力ピン SIC ソフトウェア集積回路(IC) R1 入力CsaRemote R2 入力CsaRemote C1 出力CsaConnectable C2 出力CsaConnectable IC1〜IC5 ソフトウェアIC 310 ハードウェアPAL 312 ソフトウェアPAL T1,T2 タスク
───────────────────────────────────────────────────── フロントページの続き (72)発明者 デトレフ ベッカー ドイツ連邦共和国 メーレンドルフ ヴァ ッサーヴェルクシュトラーセ 10 (72)発明者 ディートリッヒ クエール ドイツ連邦共和国 エアランゲン ニュル ンベルガー シュトラーセ 83

Claims (18)

    【特許請求の範囲】
  1. 【請求項1】 意味構造のない、ダイナミックにリンク
    可能な入力と出力を備えたオブジェクトと、 自動的に、パターンに基づいて、十分に分散可能なイベ
    ントを供給するイベント通信フレームワークとを有す
    る、ことを特徴とするオブジェクト指向コンピューティ
    ングシステム。
  2. 【請求項2】 オブジェクトの入力と出力はそれぞれ、
    CsaConnectableとCsaRemoteオブジェクトを介して供給
    される、請求項1記載のオブジェクト指向コンピューテ
    ィングシステム。
  3. 【請求項3】 入力と出力に関連した各データ構造が別
    個のヘッダファイルに記述されており、該ヘッダファイ
    ルはリンクすべき各オブジェクトにより使用される、請
    求項2記載のオブジェクト指向コンピューティングシス
    テム。
  4. 【請求項4】 各オブジェクトは共有ライブラリであ
    り、該共有ライブラリは、オブジェクトの入力と出力の
    ASCII構築ファイル名のランタイムでダイナミックにリ
    ンク可能である、請求項2記載のオブジェクト指向コン
    ピューティングシステム。
  5. 【請求項5】 ダイナミックにリンク可能な入力および
    出力と、オブジェクトへおよびオブジェクトからそれぞ
    れ前記入力および出力を介して伝送されるデータをキュ
    ーイングするための内部タスクと、自動的に、パターン
    に基づいて、十分に分散可能なイベントを供給するイベ
    ント通信フレームワークとを有する、ことを特徴とする
    オブジェクト指向コンピューティングシステム。
  6. 【請求項6】 オブジェクトの入力と出力は、CsaConne
    ctableオブジェクトとCsaRemoteオブジェクトをそれぞ
    れ介して供給される、請求項5記載のオブジェクト指向
    コンピューティングシステム。
  7. 【請求項7】 入力および出力に関連する各データ構造
    が別個のヘッダファイルに記述されており、該ヘッダフ
    ァイルはリンクすべき各オブジェクトにより使用され
    る、請求項6記載のオブジェクト指向コンピューティン
    グシステム。
  8. 【請求項8】 各オブジェクトは共有ライブラリであ
    り、該共有ライブラリは、オブジェクトの入力と出力の
    名前を含むASCII構築ファイルによるランタイムでダイ
    ナミックにリンク可能である、請求項6記載のオブジェ
    クト指向コンピューティングシステム。
  9. 【請求項9】 オブジェクト指向コンピューティングシ
    ステムに含まれるソフトウェアコンポーネントを設計す
    るための方法において、 十分に分散可能な入力と出力を定義し、 リンク可能であり、意味構造のないソフトウェアコンポ
    ーネントを入力および出力接続点によって構築し、 十分に分散可能なイベントに基づくオートルーティング
    されるパターンを、イベント通信フレームワークに基づ
    いて供給する、ことを特徴とする方法。
  10. 【請求項10】 コンピュータプラットホーム上にオブ
    ジェクト指向コンピューティングシステムを有するオブ
    ジェクト指向コードを含む記憶媒体において、 意味構造のない、ダイナミックにリンク可能な入力およ
    び出力を備えたオブジェクトと、自動的に、パターンに
    基づいて、十分に分散可能なイベントを供給するイベン
    ト通信フレームワークとを有する、ことを特徴とする記
    憶媒体。
  11. 【請求項11】 オブジェクトの入力と出力は、CsaCon
    nectableオブジェクトとCsaRemoteオブジェクトを介し
    てそれぞれ供給される、請求項10記載の記憶媒体。
  12. 【請求項12】 入力および出力に関連する各データ構
    造は別個のヘッダファイルに記述されており、該記述フ
    ァイルはリンクすべき各オブジェクトにより使用され
    る、請求項11記載の記憶媒体。
  13. 【請求項13】 各オブジェクトは共有ライブラリであ
    り、該共有ライブラリは、オブジェクトの入力および出
    力の名前でファイルされたASCIIコンフィギュレーショ
    ンによってランタイムでダイナミックにリンク可能であ
    る、請求項11記載の記憶媒体。
  14. 【請求項14】 コンピューティングシステム上のオブ
    ジェクト指向コンピューティングシステムに対するオブ
    ジェクト指向コードを含む記憶媒体において、 ダイナミックにリンク可能な入力および出力と、 オブジェクトへおよびオブジェクトから前記入力および
    出力をそれぞれ介して伝送されるデータのキューイング
    のため内部タスクと、 自動的に、パターンに基づいて、十分に分散可能なイベ
    ントを供給するイベント通信フレームワークとを有す
    る、ことを特徴とする記憶媒体。
  15. 【請求項15】 オブジェクトの入力および出力は、Cs
    aConnnectableオブジェクトおよびCsaRemoteオブジェク
    トを介してそれぞれ供給される、請求項14記載の記憶
    媒体。
  16. 【請求項16】 入力および出力に関連する各データ構
    造は別個のヘッダファイルに記述されており、該ヘッダ
    ファイルはリンクすべき各オブジェクトにより使用され
    る、請求項15記載の記憶媒体。
  17. 【請求項17】 各オブジェクトは共有ライブラリであ
    り、該共有ライブラリは、オブジェクトの入力および出
    力の名前を含むASCII構築ファイルにより、ランタイム
    でダイナミックにリンク可能である、請求項15記載の
    記憶媒体。
  18. 【請求項18】 オブジェクト指向コンピューティング
    システムでソフトウェアコンポーネントを設計するため
    の方法に対するオブジェクト指向コードを含む記憶媒体
    において、 十分に分散可能な入力および出力イベントを定義し、 ダイナミックにリンク可能で、意味構造のないソフトウ
    ェアコンポーネントを入力および出力接続点により構築
    し、 十分に分散可能なイベントに基づいてオートルーティン
    グされるパターンをイベント通信フレームワークに基づ
    いて供給する、ことを特徴とする記憶媒体。
JP9178320A 1996-07-03 1997-07-03 オブジェクト指向コンピューティングシステム Withdrawn JPH1091448A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US67584696A 1996-07-03 1996-07-03
US08/675846 1996-07-03

Publications (1)

Publication Number Publication Date
JPH1091448A true JPH1091448A (ja) 1998-04-10

Family

ID=24712192

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9178320A Withdrawn JPH1091448A (ja) 1996-07-03 1997-07-03 オブジェクト指向コンピューティングシステム

Country Status (3)

Country Link
US (2) US20020087735A1 (ja)
EP (1) EP0817016A3 (ja)
JP (1) JPH1091448A (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI106988B (fi) * 1997-05-16 2001-05-15 Nokia Networks Oy Palveluriippumattomien rakenneosien toteutus
US6366921B1 (en) * 1999-02-09 2002-04-02 International Business Machines Corporation System and method for data manipulation in a dynamic object-based format
US6889360B1 (en) 1999-08-30 2005-05-03 International Business Machines Corporation Representing IMS transaction definitions as XML documents
WO2004051460A2 (en) * 2002-12-03 2004-06-17 Koninklijke Philips Electronics N.V. Pull scheduling of software components in hard real-time systems
CN105242976A (zh) * 2015-09-17 2016-01-13 上海寰信网络信息技术有限公司 一种程序中逻辑单元之间数据传输的方法与系统
US10430179B1 (en) * 2019-03-07 2019-10-01 Capital One Services, Llc Methods and systems for managing application configurations
US12217034B2 (en) * 2023-03-27 2025-02-04 Oracle International Corporation Build system for securely building and deploying a target build artifact

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5047918A (en) * 1985-12-31 1991-09-10 Tektronix, Inc. File management system
US5043871A (en) * 1986-03-26 1991-08-27 Hitachi, Ltd. Method and apparatus for database update/recovery
GB2203573A (en) * 1987-04-02 1988-10-19 Ibm Data processing network with upgrading of files
US5226161A (en) * 1987-08-21 1993-07-06 Wang Laboratories, Inc. Integration of data between typed data structures by mutual direct invocation between data managers corresponding to data types
US4853843A (en) * 1987-12-18 1989-08-01 Tektronix, Inc. System for merging virtual partitions of a distributed database
GB2242293A (en) * 1990-01-05 1991-09-25 Apple Computer Apparatus and method for dynamic linking of computer software components
US5129082A (en) * 1990-03-27 1992-07-07 Sun Microsystems, Inc. Method and apparatus for searching database component files to retrieve information from modified files
US5297279A (en) * 1990-05-30 1994-03-22 Texas Instruments Incorporated System and method for database management supporting object-oriented programming
JPH04241023A (ja) * 1991-01-25 1992-08-28 Hitachi Ltd プログラム合成方法
US5421016A (en) * 1991-12-12 1995-05-30 International Business Machines Corporation System and method for dynamically invoking object methods from an application designed for static method invocation
JPH05257664A (ja) * 1991-12-12 1993-10-08 Internatl Business Mach Corp <Ibm> バージョン独立のオブジェクト指向アプリケーション・プログラムを生成するシステム及び方法
EP0546682A3 (en) * 1991-12-12 1993-12-08 Ibm Parent class shadowing
US5386568A (en) * 1992-12-01 1995-01-31 Yamaha Corporation Apparatus and method for linking software modules
US5315703A (en) * 1992-12-23 1994-05-24 Taligent, Inc. Object-oriented notification framework system
US5499365A (en) * 1993-08-04 1996-03-12 International Business Machines Corporation System and method for controlling versions of objects in an object oriented computing environment
CA2128387C (en) * 1993-08-23 1999-12-28 Daniel F. Hurley Method and apparatus for configuring computer programs from available subprograms
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
US5608909A (en) * 1994-04-15 1997-03-04 Microsoft Corporation Method and system for caching presentation data of a source object in a presentation cache
US5692195A (en) * 1994-08-31 1997-11-25 International Business Machines Corporation Parent class shadowing
US5732270A (en) * 1994-09-15 1998-03-24 Visual Edge Software Limited System and method for providing interoperability among heterogeneous object systems
US5737609A (en) * 1994-10-18 1998-04-07 Marcam Corporation Method and apparatus for testing object-oriented programming constructs
US5761684A (en) * 1995-05-30 1998-06-02 International Business Machines Corporation Method and reusable object for scheduling script execution in a compound document
US6275871B1 (en) * 1996-07-03 2001-08-14 Siemens Aktiengesellschaft Asynchronous transport optimizing observer-pattern-like system supporting several modes for an interface definition language-less communication subsystem
US5892949A (en) * 1996-08-30 1999-04-06 Schlumberger Technologies, Inc. ATE test programming architecture
US6052525A (en) * 1997-08-14 2000-04-18 International Business Machines Corporation Method of error handling in a framework
US6256771B1 (en) * 1997-10-16 2001-07-03 At&T Corp. Method and apparatus for providing a dynamic service composition software architecture
US6285981B1 (en) * 1998-06-30 2001-09-04 Texas Instruments Incorporated Speed up speech recognition search using macro evaluator

Also Published As

Publication number Publication date
EP0817016A2 (en) 1998-01-07
EP0817016A3 (en) 2003-10-22
US20080016494A1 (en) 2008-01-17
US20020087735A1 (en) 2002-07-04

Similar Documents

Publication Publication Date Title
Sha et al. Generalized rate-monotonic scheduling theory: A framework for developing real-time systems
Schmidt ASX: An Object-Oriented Framework for Developing Distributed Applications.
Lampson et al. Experience with processes and monitors in Mesa
US6167423A (en) Concurrency control of state machines in a computer system using cliques
Gelernter Generative communication in Linda
Schmidt The adaptive communication environment
Dinning A survey of synchronization methods for parallel computers
Nakano et al. Full hardware implementation of FreeRTOS-based real-time systems
US20080016494A1 (en) Software ics for high level application frameworks
Olszak et al. Parampl: A simple tool for parallel and distributed execution of AMPL programs
JPH11272480A (ja) オンチップリアルタイムos
JP2000187587A (ja) ジェネリックメインオブジェクトによって実現されるインタ―プリティブネットワ―クデ―モン
Wang et al. COTS simulation package (CSP) interoperability-a solution to synchronous entity passing
Protopopov Concurrency, multi-threading, and message-passing
Bagrodia An environment for the design and performance analysis of distributed systems
Lortz et al. MDARTS: A multiprocessor database architecture for hard real-time systems
Serdar Effective Concurrency in Go: Develop, analyze, and troubleshoot high performance concurrent applications with ease
Williamson et al. Concurrent communication and synchronization mechanisms
Olsson Using SR for discrete event simulation: A study in concurrent programming
Burgess et al. Bed: A multithreaded kernel for embedded systems
Nguyen-Tuong et al. Using Reflection for Flexibility and Extensibility in a Metacomputing Environment
Chen et al. Research on client/server communication mechanism in autosar system
Eriksson et al. A real-time kernel integrated with an off-line scheduler
Okol’nishnikov et al. Development of distributed simulation system
Ortega Timing predictability in real-time systems

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20040907