JPH11203138A - 機能実現装置 - Google Patents
機能実現装置Info
- Publication number
- JPH11203138A JPH11203138A JP10306193A JP30619398A JPH11203138A JP H11203138 A JPH11203138 A JP H11203138A JP 10306193 A JP10306193 A JP 10306193A JP 30619398 A JP30619398 A JP 30619398A JP H11203138 A JPH11203138 A JP H11203138A
- Authority
- JP
- Japan
- Prior art keywords
- program
- function
- component
- external interface
- program component
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/449—Object-oriented method invocation or resolution
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
(57)【要約】
【課題】 本発明は、外部インターフェースを有するプ
ログラムコンポーネントをダイナミックローディングす
る機能実現装置及び通信方法を提供する。 【解決手段】 1つ以上の機能を有するオブジェクトV
TRと、他のプログラムオブジェクトと通信を行うため
の機能を有する外部インターフェース20とを備える。
そして、プログラムコンポーネントcompspをロー
ドすると、このプログラムコンポーネントcompsp
の1つ以上の機能は、オブジェクトVTRの外部インタ
ーフェース20にエクスポートされる。
ログラムコンポーネントをダイナミックローディングす
る機能実現装置及び通信方法を提供する。 【解決手段】 1つ以上の機能を有するオブジェクトV
TRと、他のプログラムオブジェクトと通信を行うため
の機能を有する外部インターフェース20とを備える。
そして、プログラムコンポーネントcompspをロー
ドすると、このプログラムコンポーネントcompsp
の1つ以上の機能は、オブジェクトVTRの外部インタ
ーフェース20にエクスポートされる。
Description
【0001】
【発明が属する技術分野】本発明は、機能実現装置及び
通信方法に関し、特に、プログラムオブジェクトとプロ
グラムコンポーネント間の通信を行う機能実現方法及び
通信方法に関する。
通信方法に関し、特に、プログラムオブジェクトとプロ
グラムコンポーネント間の通信を行う機能実現方法及び
通信方法に関する。
【0002】
【従来の技術】近年、いわゆるオブジェクト指向技術と
いうソフトウェアの新技術が開発されている。オブジェ
クト指向という用語は、ソフトウェアが、データ構造と
例えば1連の動作等の振舞い(behavior、あるいはオペ
レーション(operation))との両方を含むそれぞれ独
立したモジュール又はプログラムオブジェクトのセット
として構成されていることを意味する。このことは、デ
ータ構造と振舞いの結合関係が弱い従来のプログラミン
グ技術とは対照的である。
いうソフトウェアの新技術が開発されている。オブジェ
クト指向という用語は、ソフトウェアが、データ構造と
例えば1連の動作等の振舞い(behavior、あるいはオペ
レーション(operation))との両方を含むそれぞれ独
立したモジュール又はプログラムオブジェクトのセット
として構成されていることを意味する。このことは、デ
ータ構造と振舞いの結合関係が弱い従来のプログラミン
グ技術とは対照的である。
【0003】プログラムオブジェクトは、それ自身のシ
ステムリソースを用いて実行される複数のスレッド(th
read)の内のそれ自身のスレッドを有する実行時のエン
ティティ(a run-time entity)である。同じデータ構
造と振舞い(オペレーション)を有するプログラムオブ
ジェクトは、1つのクラス(class)にグループ化され
る。各プログラムオブジェクトは、あるクラスのインス
タンス(instance)である。オペレーションは、状態が
例えば他のプログラムオブジェクト等の外部のプログラ
ムオブジェクトから見えないとしても、プログラムオブ
ジェクトが応答できるメッセージを決定する。プログラ
ムオブジェクトの内部状態を表す変数は、インスタンス
変数といい、そのオペレーションをメソッド(method
s)という。
ステムリソースを用いて実行される複数のスレッド(th
read)の内のそれ自身のスレッドを有する実行時のエン
ティティ(a run-time entity)である。同じデータ構
造と振舞い(オペレーション)を有するプログラムオブ
ジェクトは、1つのクラス(class)にグループ化され
る。各プログラムオブジェクトは、あるクラスのインス
タンス(instance)である。オペレーションは、状態が
例えば他のプログラムオブジェクト等の外部のプログラ
ムオブジェクトから見えないとしても、プログラムオブ
ジェクトが応答できるメッセージを決定する。プログラ
ムオブジェクトの内部状態を表す変数は、インスタンス
変数といい、そのオペレーションをメソッド(method
s)という。
【0004】各プログラムオブジェクトは、プログラム
オブジェクトがアクセスできるメモリ領域、オブジェク
トコードが実行するスレッド、プログラムオブジェクト
の実行時間環境といったプログラムオブジェクトのプロ
パティを記述する実行スペースを有する。各プログラム
オブジェクト間の通信は、メッセージパッシング(mess
age passing)、すなわちメッセージを送ることによっ
て行われる。出願番号が特願平9−92446号である
明細書に、メッセージパッシングの形態が開示されてい
る。各プログラムオブジェクトは、メッセージパッシン
グを実行することによって、外部インターフェースを有
するとともに、メッセージの受信を調整し。対応するプ
ログラムオブジェクトの異なるメソッドを動作させる送
信インターフェースを呼び出す。
オブジェクトがアクセスできるメモリ領域、オブジェク
トコードが実行するスレッド、プログラムオブジェクト
の実行時間環境といったプログラムオブジェクトのプロ
パティを記述する実行スペースを有する。各プログラム
オブジェクト間の通信は、メッセージパッシング(mess
age passing)、すなわちメッセージを送ることによっ
て行われる。出願番号が特願平9−92446号である
明細書に、メッセージパッシングの形態が開示されてい
る。各プログラムオブジェクトは、メッセージパッシン
グを実行することによって、外部インターフェースを有
するとともに、メッセージの受信を調整し。対応するプ
ログラムオブジェクトの異なるメソッドを動作させる送
信インターフェースを呼び出す。
【0005】プログラムオブジェクトの実行スペース
に、共有ライブラリを1つ以上のプログラムコンポーネ
ントの形でロードすることができる。この観点からする
と、プログラムコンポーネントは、1つのプログラムオ
ブジェクトのための共有ライブラリのインプリメンテー
ション(implementation、実行)である。プログラムコ
ンポーネントは、プログラムオブジェクト内にロードさ
れると、このプログラムオブジェクトの実行スペースに
置かれる。プログラムコンポーネントは、このプログラ
ムコンポーネントによって実行される機能又はメソッド
の順序付けられたリストである内部インターフェースを
備えることもでき、この内部インターフェイスは、プロ
グラムオブジェクトの機能又はメソッドによってコール
(呼び出)される。
に、共有ライブラリを1つ以上のプログラムコンポーネ
ントの形でロードすることができる。この観点からする
と、プログラムコンポーネントは、1つのプログラムオ
ブジェクトのための共有ライブラリのインプリメンテー
ション(implementation、実行)である。プログラムコ
ンポーネントは、プログラムオブジェクト内にロードさ
れると、このプログラムオブジェクトの実行スペースに
置かれる。プログラムコンポーネントは、このプログラ
ムコンポーネントによって実行される機能又はメソッド
の順序付けられたリストである内部インターフェースを
備えることもでき、この内部インターフェイスは、プロ
グラムオブジェクトの機能又はメソッドによってコール
(呼び出)される。
【0006】エリクソン・シー(Erickson C.)等の
「ソムオブジェクト開発者ツールキット:DSOMでソ
ムオブジェクトを共有する(SOMOBJECTS DEVELOPER TOO
LKIT :SHARING SOM OBJECTS WITH DSOM)」、OS/2
開発者、ボリューム6、ナンバ1、1994年1月(OS
/2 DEVELOPER, vol. 6, no 1, January 1994)により、
ダイナミックリンクライブラリ(Dynamic Link Librar
y、以下、DLLという。)のダイナミックローディン
グは、共有ライブラリの標準インプリメンテーションで
あることが知られている。DLLは、DLLと異なった
プログラムオブジェクトとの間でメッセージパッシング
通信を可能とする外部インターフェース又は送信インタ
ーフェースを提供する。
「ソムオブジェクト開発者ツールキット:DSOMでソ
ムオブジェクトを共有する(SOMOBJECTS DEVELOPER TOO
LKIT :SHARING SOM OBJECTS WITH DSOM)」、OS/2
開発者、ボリューム6、ナンバ1、1994年1月(OS
/2 DEVELOPER, vol. 6, no 1, January 1994)により、
ダイナミックリンクライブラリ(Dynamic Link Librar
y、以下、DLLという。)のダイナミックローディン
グは、共有ライブラリの標準インプリメンテーションで
あることが知られている。DLLは、DLLと異なった
プログラムオブジェクトとの間でメッセージパッシング
通信を可能とする外部インターフェース又は送信インタ
ーフェースを提供する。
【0007】なお、DLLは、ただ単に、所定又は固定
の外部インターフェース、例えばDLLのローディング
によっては変化しないプログラムオブジェクトの外部イ
ンターフェース等を実行するのに、利用される。
の外部インターフェース、例えばDLLのローディング
によっては変化しないプログラムオブジェクトの外部イ
ンターフェース等を実行するのに、利用される。
【0008】
【発明が解決しようとする課題】本発明は、上述した実
情に鑑みて成されたものであり、本発明の目的は、外部
インターフェースを有するプログラムコンポーネントを
ダイナミックローディングする機能実現装置及び通信方
法を提供するものである。
情に鑑みて成されたものであり、本発明の目的は、外部
インターフェースを有するプログラムコンポーネントを
ダイナミックローディングする機能実現装置及び通信方
法を提供するものである。
【0009】
【課題を解決するための手段】本発明に係る機能実現装
置は、1つ以上の機能を有するプログラムオブジェクト
と、このプログラムオブジェクトの他のプログラムオブ
ジェクトと通信を行うための機能を有する外部インター
フェースとを備える。そして、プログラムコンポーネン
トをロードすると、このプログラムコンポーネントの1
つ以上の機能は、プログラムオブジェクトの外部インタ
ーフェースにエクスポートされる。
置は、1つ以上の機能を有するプログラムオブジェクト
と、このプログラムオブジェクトの他のプログラムオブ
ジェクトと通信を行うための機能を有する外部インター
フェースとを備える。そして、プログラムコンポーネン
トをロードすると、このプログラムコンポーネントの1
つ以上の機能は、プログラムオブジェクトの外部インタ
ーフェースにエクスポートされる。
【0010】すなわち、プログラムコンポーネントがロ
ードされると、プログラムコンポーネントの送信インタ
ーフェースは、ホストオブジェクトの送信インターフェ
ースに自動的にエクスポートされる。したがって、ホス
トオブジェクトの送信インターフェースは、プログラム
コンポーネントの送信インターフェースを含むように変
更される。これにより、プログラムオブジェクトのプロ
グラムコンポーネントと他のプログラムオブジェクトと
の間において、メッセージパッシングによる通信が可能
となる。送信インターフェースの内容とプログラムコン
ポーネントの内部インターフェースの内容との間には、
何ら関係がない。プログラムコンポーネントのメソッド
は、両方に現れてもよいし、どちらにも現れなくてもよ
い。
ードされると、プログラムコンポーネントの送信インタ
ーフェースは、ホストオブジェクトの送信インターフェ
ースに自動的にエクスポートされる。したがって、ホス
トオブジェクトの送信インターフェースは、プログラム
コンポーネントの送信インターフェースを含むように変
更される。これにより、プログラムオブジェクトのプロ
グラムコンポーネントと他のプログラムオブジェクトと
の間において、メッセージパッシングによる通信が可能
となる。送信インターフェースの内容とプログラムコン
ポーネントの内部インターフェースの内容との間には、
何ら関係がない。プログラムコンポーネントのメソッド
は、両方に現れてもよいし、どちらにも現れなくてもよ
い。
【0011】また、本発明に係る機能実現装置では、付
加的なプログラムコンポーネントをロードすると、この
付加的なプログラムコンポーネントの1つ以上の機能
が、他のプログラムオブジェクトと通信を行うために、
プログラムオブジェクトの外部インターフェースに追加
される。
加的なプログラムコンポーネントをロードすると、この
付加的なプログラムコンポーネントの1つ以上の機能
が、他のプログラムオブジェクトと通信を行うために、
プログラムオブジェクトの外部インターフェースに追加
される。
【0012】また。本発明に係る機能実現装置では、プ
ログラムコンポーネントを取り除くと、プログラムコン
ポーネントの機能は、外部インターフェースから取り除
かれる。
ログラムコンポーネントを取り除くと、プログラムコン
ポーネントの機能は、外部インターフェースから取り除
かれる。
【0013】また、本発明に係る機能実現装置では、第
1のプログラムコンポーネントを第2のプログラムコン
ポーネントに置き換えると、外部インターフェースにお
ける第1のプログラムコンポーネントの機能は、第2の
プログラムコンポーネントの機能に置き換えられる。
1のプログラムコンポーネントを第2のプログラムコン
ポーネントに置き換えると、外部インターフェースにお
ける第1のプログラムコンポーネントの機能は、第2の
プログラムコンポーネントの機能に置き換えられる。
【0014】本発明に係る機能実現装置では、プログラ
ムコンポーネントは、実行中にダイナミックロードされ
る。
ムコンポーネントは、実行中にダイナミックロードされ
る。
【0015】本発明は、外部インターフェースを有する
プログラムコンポーネントをダイナミックローディング
する機能実現装置及び通信方法を提供するものである。
送信インターフェースを有するプログラムコンポーネン
トをロードすると、この送信インターフェースはホスト
オブジェクトに追加され、またプログラムコンポーネン
トは、動的に追加又は置き換えられるので、ホストオブ
ジェクトの送信インターフェースは、何度も発達させる
ことができる。プログラムオブジェクトのインターフェ
ースは、例えば1つのプログラムコンポーネントが取り
除かれると、縮小し、新しいプログラムコンポーネント
がリンク又は古いプログラムコンポーネントが置換され
ると、拡大する。
プログラムコンポーネントをダイナミックローディング
する機能実現装置及び通信方法を提供するものである。
送信インターフェースを有するプログラムコンポーネン
トをロードすると、この送信インターフェースはホスト
オブジェクトに追加され、またプログラムコンポーネン
トは、動的に追加又は置き換えられるので、ホストオブ
ジェクトの送信インターフェースは、何度も発達させる
ことができる。プログラムオブジェクトのインターフェ
ースは、例えば1つのプログラムコンポーネントが取り
除かれると、縮小し、新しいプログラムコンポーネント
がリンク又は古いプログラムコンポーネントが置換され
ると、拡大する。
【0016】例えばバグを取り除くために、新しいイン
プリメンテーションが要求されるとき、インプリメンテ
ーションエミュレーションを利用することができる。こ
れは、動的にリンクされたプログラムコンポーネントを
単に取り除き、それを異なる方法で同じ機能を実行する
別のプログラムコンポーネントと入れ換えるとによって
行われる。
プリメンテーションが要求されるとき、インプリメンテ
ーションエミュレーションを利用することができる。こ
れは、動的にリンクされたプログラムコンポーネントを
単に取り除き、それを異なる方法で同じ機能を実行する
別のプログラムコンポーネントと入れ換えるとによって
行われる。
【0017】プログラムコンポーネントは、内部又は送
信インターフェースを備えても備えなくてもよい。プロ
グラムコンポーネントは、送信インターフェースを備え
ていないときには、機能呼出のみによって呼び出され
る。この場合、プログラムコンポーネントは、同じ実行
スペース内で呼び出される。同様に、プログラムコンポ
ーネントが送信インターフェースだけを備えているとき
は、プログラムコンポーネントは、メッセージパッシン
グを介して、他のプログラムオブジェクトのみによって
アクセスすることができる。
信インターフェースを備えても備えなくてもよい。プロ
グラムコンポーネントは、送信インターフェースを備え
ていないときには、機能呼出のみによって呼び出され
る。この場合、プログラムコンポーネントは、同じ実行
スペース内で呼び出される。同様に、プログラムコンポ
ーネントが送信インターフェースだけを備えているとき
は、プログラムコンポーネントは、メッセージパッシン
グを介して、他のプログラムオブジェクトのみによって
アクセスすることができる。
【0018】先行技術の高水準プログラムは、通常コン
パイラによって実行可能なバイナリコードに翻訳され
る。コンパイルの最終段階において、リンクエディタ
は、全てのオブジェクト実行ファイルを、スタートアッ
プコード及びプログラムによって参照されるライブラリ
機能と共に、リンクする。スタティックリンクでは、リ
ンクエディタは、リンク時に、オブジェクトファイルの
コピーを実行可能なバイナリコードに組み込む。スタテ
ィックライブラリは、ライブラリルーティン及びデータ
を含むオブジェクトファイルを集めたものである。一
方、ダイナミックリンキングでは、共有ライブラリは、
実行時にマッピングされる。したがって、リンクエディ
タは、共有ライブラリの名前、及び実行可能なバイナリ
コードによって参照されるシンボルに関する付加的な情
報を、実行可能なバイナリコードに格納するだけであ
る。ダイナミックローディングを用いると、ルーティン
は、コール(呼び出)されたときのみに、ロードされ
る。これによって、使用されない又はめったに使用され
ないルーティンのためのメモリを節約することができ
る。特にダイナミックローディングは、実行中に、共有
ライブラリをプロセスのアドレス空間に配置し、ライブ
ラリにおける機能のアドレスを検索して、その機能を動
作させ、不要のときは共通ライブラリを例えばメモリか
ら削除する等、共有ライブラリを外すことができる。
パイラによって実行可能なバイナリコードに翻訳され
る。コンパイルの最終段階において、リンクエディタ
は、全てのオブジェクト実行ファイルを、スタートアッ
プコード及びプログラムによって参照されるライブラリ
機能と共に、リンクする。スタティックリンクでは、リ
ンクエディタは、リンク時に、オブジェクトファイルの
コピーを実行可能なバイナリコードに組み込む。スタテ
ィックライブラリは、ライブラリルーティン及びデータ
を含むオブジェクトファイルを集めたものである。一
方、ダイナミックリンキングでは、共有ライブラリは、
実行時にマッピングされる。したがって、リンクエディ
タは、共有ライブラリの名前、及び実行可能なバイナリ
コードによって参照されるシンボルに関する付加的な情
報を、実行可能なバイナリコードに格納するだけであ
る。ダイナミックローディングを用いると、ルーティン
は、コール(呼び出)されたときのみに、ロードされ
る。これによって、使用されない又はめったに使用され
ないルーティンのためのメモリを節約することができ
る。特にダイナミックローディングは、実行中に、共有
ライブラリをプロセスのアドレス空間に配置し、ライブ
ラリにおける機能のアドレスを検索して、その機能を動
作させ、不要のときは共通ライブラリを例えばメモリか
ら削除する等、共有ライブラリを外すことができる。
【0019】また、本発明に係る機能実現装置は、デー
タを一時的に記憶する記憶手段と、データを処理する処
理手段と、記憶手段と処理手段間を接続する接続手段と
を備える。
タを一時的に記憶する記憶手段と、データを処理する処
理手段と、記憶手段と処理手段間を接続する接続手段と
を備える。
【0020】本発明に係る通信方法は、プログラムオブ
ジェクトの1つ以上の機能を含む外部インターフェース
を有するプログラムオブジェクトを用い、1つ以上の機
能を有するプログラムコンポーネントをロードし、プロ
グラムオブジェクトの外部インターフェースに、ロード
されたプログラムコンポーネントの1つ以上の機能をエ
クスポートして、プログラムオブジェクト及び/又はプ
ログラムコンポーネント間及び内で通信を行う。
ジェクトの1つ以上の機能を含む外部インターフェース
を有するプログラムオブジェクトを用い、1つ以上の機
能を有するプログラムコンポーネントをロードし、プロ
グラムオブジェクトの外部インターフェースに、ロード
されたプログラムコンポーネントの1つ以上の機能をエ
クスポートして、プログラムオブジェクト及び/又はプ
ログラムコンポーネント間及び内で通信を行う。
【0021】
【発明の実施の形態】以下、本発明に係る機能実現方法
及び通信方法について、図面を参照しながら説明する。
及び通信方法について、図面を参照しながら説明する。
【0022】図1は、プログラムオブジェクトの実行ス
ペースを示す図である。実行スペース1におけるプログ
ラムオブジェクトAは、メソッドm1と、メソッドm2
と、メソッドm3との3つのメソッドからなる。実行ス
ペース1には、メソッドm4とメソッドm5の2つのメ
ソッドを含むプログラムコンポーネントcompAがロ
ードされている。このプログラムコンポーネントcom
pAの内部インターフェース2を円で示す。プログラム
オブジェクトAのメソッドm1は、プログラムオブジェ
クトAのメソッドm2を呼び出す。プログラムオブジェ
クトAのメソッドm2は、内部インターフェース2を介
してプログラムコンポーネントcompAのメソッドm
4を呼び出す。プログラムコンポーネントcompAの
メソッドm4は、メソッドm5を呼び出す。メソッドm
5は、プログラムコンポーネントcompAの内部イン
ターフェース2には含まれていない。このため、メソッ
ドm5は、プログラムコンポーネントcompAのみか
ら呼び出すことができるが、プログラムオブジェクトA
自体からは呼び出すことはできない。
ペースを示す図である。実行スペース1におけるプログ
ラムオブジェクトAは、メソッドm1と、メソッドm2
と、メソッドm3との3つのメソッドからなる。実行ス
ペース1には、メソッドm4とメソッドm5の2つのメ
ソッドを含むプログラムコンポーネントcompAがロ
ードされている。このプログラムコンポーネントcom
pAの内部インターフェース2を円で示す。プログラム
オブジェクトAのメソッドm1は、プログラムオブジェ
クトAのメソッドm2を呼び出す。プログラムオブジェ
クトAのメソッドm2は、内部インターフェース2を介
してプログラムコンポーネントcompAのメソッドm
4を呼び出す。プログラムコンポーネントcompAの
メソッドm4は、メソッドm5を呼び出す。メソッドm
5は、プログラムコンポーネントcompAの内部イン
ターフェース2には含まれていない。このため、メソッ
ドm5は、プログラムコンポーネントcompAのみか
ら呼び出すことができるが、プログラムオブジェクトA
自体からは呼び出すことはできない。
【0023】内部インターフェース2は、プログラムオ
ブジェクトAとプログラムコンポーネントcompA間
の通信を行うためのものである。プログラムオブジェク
トのコードは、内部インターフェースを有しないので、
プログラムコンポーネントcompAからプログラムオ
ブジェクトAを呼び出すことはできない。例えば、プロ
グラムコンポーネントcompAのメソッドm4は、プ
ログラムオブジェクトAのメソッドm1,m2を呼び出
すことはできない。
ブジェクトAとプログラムコンポーネントcompA間
の通信を行うためのものである。プログラムオブジェク
トのコードは、内部インターフェースを有しないので、
プログラムコンポーネントcompAからプログラムオ
ブジェクトAを呼び出すことはできない。例えば、プロ
グラムコンポーネントcompAのメソッドm4は、プ
ログラムオブジェクトAのメソッドm1,m2を呼び出
すことはできない。
【0024】図2は、図1の実行スペース1に長方形で
示す外部インターフェース3を追加した状態を示す図で
ある。他の実行スペースのプログラムオブジェクトは、
この外部インターフェース3を介して、実行スペース1
のプログラムオブジェクトAと通信することができる。
矢印は、外部インターフェース3を介して、プログラム
オブジェクトAのどのメソッドがアクセス可能であるか
を示している。すなわち、この具体例では、プログラム
オブジェクトAのメソッドm1,m3が、現在の実行ス
ペース1の外部にある他のプログラムオブジェクトから
アクセス可能である。残りのメソッドm2,m4,m5
は、プログラムオブジェクトA及び/又はコンポーネン
トcompAのみから呼び出すことができる。
示す外部インターフェース3を追加した状態を示す図で
ある。他の実行スペースのプログラムオブジェクトは、
この外部インターフェース3を介して、実行スペース1
のプログラムオブジェクトAと通信することができる。
矢印は、外部インターフェース3を介して、プログラム
オブジェクトAのどのメソッドがアクセス可能であるか
を示している。すなわち、この具体例では、プログラム
オブジェクトAのメソッドm1,m3が、現在の実行ス
ペース1の外部にある他のプログラムオブジェクトから
アクセス可能である。残りのメソッドm2,m4,m5
は、プログラムオブジェクトA及び/又はコンポーネン
トcompAのみから呼び出すことができる。
【0025】プログラムが実行されている間に、新しい
プログラムコンポーネントを、ダイナミックローディン
グによって実行スペース1にロードすることができる。
図3は、メソッドm6からなるプログラムコンポーネン
トcompBがロードされた状態を示す図である。プロ
グラムコンポーネントcompBの外部インターフェー
スは、ホストオブジェクトであるプログラムオブジェク
トAの外部インターフェース3に自動的にエクスポート
される。すなわち、実行スペース1の外部インターフェ
ース3は、プログラムコンポーネントcompBの外部
インターフェース3となり、これは、外部インターフェ
ース3を介して呼び出すことができるメソッド数が2か
ら3に増えたことを意味している。プログラムコンポー
ネントcompBのメソッドm6は、プログラムオブジ
ェクトAからの内部インターフェース4を介した機能呼
出によって呼び出され、またプログラムの残りのオブジ
ェクトからの外部インターフェース3を介したメッセー
ジパッシングによってコール(呼び出)される。
プログラムコンポーネントを、ダイナミックローディン
グによって実行スペース1にロードすることができる。
図3は、メソッドm6からなるプログラムコンポーネン
トcompBがロードされた状態を示す図である。プロ
グラムコンポーネントcompBの外部インターフェー
スは、ホストオブジェクトであるプログラムオブジェク
トAの外部インターフェース3に自動的にエクスポート
される。すなわち、実行スペース1の外部インターフェ
ース3は、プログラムコンポーネントcompBの外部
インターフェース3となり、これは、外部インターフェ
ース3を介して呼び出すことができるメソッド数が2か
ら3に増えたことを意味している。プログラムコンポー
ネントcompBのメソッドm6は、プログラムオブジ
ェクトAからの内部インターフェース4を介した機能呼
出によって呼び出され、またプログラムの残りのオブジ
ェクトからの外部インターフェース3を介したメッセー
ジパッシングによってコール(呼び出)される。
【0026】また、プログラムの実行中に、プログラム
コンポーネントcompBの代わりに、他のプログラム
コンポーネントをダイナミックローディングによってロ
ードすることもできる。図4は、メソッドm6からなる
プログラムコンポーネントcompCがロードされた状
態を示す図である。すなわち、プログラムの実行中に、
プログラムオブジェクトAを発達させることができる。
換言すると、プログラムが走っている(ランしている)
ときに、プログラムの実行を停止することなく又は処理
装置を再起動することなく、例えば新たな機能を追加し
たり、あるプログラムコンポーネントのバグを取り除く
等を行うことができる。
コンポーネントcompBの代わりに、他のプログラム
コンポーネントをダイナミックローディングによってロ
ードすることもできる。図4は、メソッドm6からなる
プログラムコンポーネントcompCがロードされた状
態を示す図である。すなわち、プログラムの実行中に、
プログラムオブジェクトAを発達させることができる。
換言すると、プログラムが走っている(ランしている)
ときに、プログラムの実行を停止することなく又は処理
装置を再起動することなく、例えば新たな機能を追加し
たり、あるプログラムコンポーネントのバグを取り除く
等を行うことができる。
【0027】ここで、本発明に係る機能実現装置及び通
信方法を、実際の装置、例えばディジタルビデオテープ
レコーダ(以下、単にVTRという。)に適応した実施
例について、図5を参照しながら説明する。
信方法を、実際の装置、例えばディジタルビデオテープ
レコーダ(以下、単にVTRという。)に適応した実施
例について、図5を参照しながら説明する。
【0028】この本発明を適用したVTRは、図5に示
すように、映像データをビデオテープに記録、又はビデ
オテープから再生する記録/再生機構10を備える。モ
ータ11は、ビデオカセット内に収納されたビデオテー
プを走行させ、例えば記録、再生、早送り、巻き戻し、
停止等の機能を実行する。中央処理装置(以下、CPU
という。)12は、データを記録/再生機構10に供給
してビデオテープに記録するとともに、記録/再生機構
10からのビデオテープより再生されたデータが供給さ
れる。また、このVTRは、プログラムを記憶するため
のランダムアクセスメモリ(以下、RAMという。)1
3とリードオンリーメモリ(以下、ROMという)14
を備える。
すように、映像データをビデオテープに記録、又はビデ
オテープから再生する記録/再生機構10を備える。モ
ータ11は、ビデオカセット内に収納されたビデオテー
プを走行させ、例えば記録、再生、早送り、巻き戻し、
停止等の機能を実行する。中央処理装置(以下、CPU
という。)12は、データを記録/再生機構10に供給
してビデオテープに記録するとともに、記録/再生機構
10からのビデオテープより再生されたデータが供給さ
れる。また、このVTRは、プログラムを記憶するため
のランダムアクセスメモリ(以下、RAMという。)1
3とリードオンリーメモリ(以下、ROMという)14
を備える。
【0029】また、このVTRは、スロットを有するI
Cカードドライブ15を備え、このスロットには、記憶
素子からなる集積回路が実装されたICカードが挿入さ
れ、ICカードに又はICカードからデータが書き込み
又は読み出される。なお、ICカードドライブ15の代
わりに、フロッピーディスクドライブ16を設け、フロ
ッピーディスクを回転させながら、磁気ヘッドを用いて
フロッピーディスクに又はフロッピーディスクからデー
タを記録又は再生するようにしてもよい。ICカードド
ライブ15又はフロッピーディスク16は、データの記
録とアプリケーションソフトウェアをインストールする
ためのものである。また、VTRは、データの入力/出
力を行うためのシリアルポート17と変復調器18を備
える。これらの記録/再生機構10〜シリアルポート1
7は、双方向のバス19で接続されている。
Cカードドライブ15を備え、このスロットには、記憶
素子からなる集積回路が実装されたICカードが挿入さ
れ、ICカードに又はICカードからデータが書き込み
又は読み出される。なお、ICカードドライブ15の代
わりに、フロッピーディスクドライブ16を設け、フロ
ッピーディスクを回転させながら、磁気ヘッドを用いて
フロッピーディスクに又はフロッピーディスクからデー
タを記録又は再生するようにしてもよい。ICカードド
ライブ15又はフロッピーディスク16は、データの記
録とアプリケーションソフトウェアをインストールする
ためのものである。また、VTRは、データの入力/出
力を行うためのシリアルポート17と変復調器18を備
える。これらの記録/再生機構10〜シリアルポート1
7は、双方向のバス19で接続されている。
【0030】このVTRは、通常のVTRの機能に加
え、付加的なアプリケーション機能を追加することがで
きるように設計されている。例えば、ユーザは、ICカ
ードドライブ15を介して、新しいバージョンのアプリ
ケーションソフトウェアをインストールして、VTRに
新しい機能を追加することができる。また、例えば、ユ
ーザは、インターネットからモデム18及びシリアルポ
ート17を介して、新たなアプリケーションソフトウェ
アをダウンロードすることができる。これにより、ユー
ザは、VTRを新たに購入することなく、VTRの機能
をアップグレードすることができる。
え、付加的なアプリケーション機能を追加することがで
きるように設計されている。例えば、ユーザは、ICカ
ードドライブ15を介して、新しいバージョンのアプリ
ケーションソフトウェアをインストールして、VTRに
新しい機能を追加することができる。また、例えば、ユ
ーザは、インターネットからモデム18及びシリアルポ
ート17を介して、新たなアプリケーションソフトウェ
アをダウンロードすることができる。これにより、ユー
ザは、VTRを新たに購入することなく、VTRの機能
をアップグレードすることができる。
【0031】図6は、VTRの再生、巻戻し、早送り、
停止機能を動作させるための実行スペースを示す図であ
る。オブジェクトVTRは、再生、巻戻し、早送り及び
停止機能を実現するために、メソッドplay、メソッ
ドrew、メソッドff、メソッドstopの4つのメ
ソッドを有する。これらのメソッドplay,rew,
ff,stopは、それぞれビデオテープの再生動作、
ビデオテープの巻戻り動作、ビデオテープの早送り動
作、ビデオテープの停止動作を実行するためのものであ
る。これらの動作の1つとして、例えばビデオテープを
走行させるモータ11の制御がある。これは、例えばモ
ータ11をある速度で回転させるように電気的に制御す
るインターフェースを更に介して、プログラムコンポー
ネントcompmdを呼び出すことにより達成される。
オブジェクトVTRの外部インターフェースを有するメ
ッセージパッシングを介して、例えばVTRのリモート
コントローラ又はVTRの操作パネルの再生ボタン、巻
戻しボタン、早送りボタン又は停止ボタンを押すことに
よって、オブジェクトVTRのそれらに対応したメソッ
ドが、起動される。例えばICカード、又はモデム18
とシリアルポート17を備えた外部とのデータの送受に
よって、新しいプログラムを、VTRのランダムアクセ
スメモリ13にロードすることができる。図7は、VT
Rに既にインプリメントされた機能に、例えば「低速再
生」機能を追加するためのプログラムコンポーネントc
ompspを追加した状態を示す図である。このプログ
ラムコンポーネントcompspには、外部インターフ
ェース20を有し、この外部インターフェース20は、
プログラムコンポーネントcompspをオブジェクト
VTRの実行スペースにロードしたときに、プログラム
オブジェクトVTRの外部インターフェース20にエク
スポート、すなわち追加される。これにより、追加され
た機能(この場合、低速再生機能)は、プログラムオブ
ジェクトの外部インターフェースとのメッセージパッシ
ングによって動作する。すなわち、VTRのプログラム
実行中に、VTRを再起動又は初期化しなくても、VT
Rに新しい機能を追加することができる。
停止機能を動作させるための実行スペースを示す図であ
る。オブジェクトVTRは、再生、巻戻し、早送り及び
停止機能を実現するために、メソッドplay、メソッ
ドrew、メソッドff、メソッドstopの4つのメ
ソッドを有する。これらのメソッドplay,rew,
ff,stopは、それぞれビデオテープの再生動作、
ビデオテープの巻戻り動作、ビデオテープの早送り動
作、ビデオテープの停止動作を実行するためのものであ
る。これらの動作の1つとして、例えばビデオテープを
走行させるモータ11の制御がある。これは、例えばモ
ータ11をある速度で回転させるように電気的に制御す
るインターフェースを更に介して、プログラムコンポー
ネントcompmdを呼び出すことにより達成される。
オブジェクトVTRの外部インターフェースを有するメ
ッセージパッシングを介して、例えばVTRのリモート
コントローラ又はVTRの操作パネルの再生ボタン、巻
戻しボタン、早送りボタン又は停止ボタンを押すことに
よって、オブジェクトVTRのそれらに対応したメソッ
ドが、起動される。例えばICカード、又はモデム18
とシリアルポート17を備えた外部とのデータの送受に
よって、新しいプログラムを、VTRのランダムアクセ
スメモリ13にロードすることができる。図7は、VT
Rに既にインプリメントされた機能に、例えば「低速再
生」機能を追加するためのプログラムコンポーネントc
ompspを追加した状態を示す図である。このプログ
ラムコンポーネントcompspには、外部インターフ
ェース20を有し、この外部インターフェース20は、
プログラムコンポーネントcompspをオブジェクト
VTRの実行スペースにロードしたときに、プログラム
オブジェクトVTRの外部インターフェース20にエク
スポート、すなわち追加される。これにより、追加され
た機能(この場合、低速再生機能)は、プログラムオブ
ジェクトの外部インターフェースとのメッセージパッシ
ングによって動作する。すなわち、VTRのプログラム
実行中に、VTRを再起動又は初期化しなくても、VT
Rに新しい機能を追加することができる。
【0032】以上の説明でも明らかなように、本発明
は、外部インターフェースを有するプログラムコンポー
ネントをダイナミックローディングする機能実現装置及
び通信方法を提供するものである。送信インターフェー
スを有するプログラムコンポーネントをロードすると、
この送信インターフェースはホストオブジェクトに追加
され、またプログラムコンポーネントは、動的に追加又
は置き換えられるので、ホストオブジェクトの送信イン
ターフェースは、何度も発達させることができる。プロ
グラムオブジェクトのインターフェースは、例えば1つ
のプログラムコンポーネントが取り除かれると、縮小
し、新しいプログラムコンポーネントがリンク又は古い
プログラムコンポーネントが置換されると、拡大する。
は、外部インターフェースを有するプログラムコンポー
ネントをダイナミックローディングする機能実現装置及
び通信方法を提供するものである。送信インターフェー
スを有するプログラムコンポーネントをロードすると、
この送信インターフェースはホストオブジェクトに追加
され、またプログラムコンポーネントは、動的に追加又
は置き換えられるので、ホストオブジェクトの送信イン
ターフェースは、何度も発達させることができる。プロ
グラムオブジェクトのインターフェースは、例えば1つ
のプログラムコンポーネントが取り除かれると、縮小
し、新しいプログラムコンポーネントがリンク又は古い
プログラムコンポーネントが置換されると、拡大する。
【0033】例えばバグを取り除くために、新しいイン
プリメンテーションが要求されるとき、インプリメンテ
ーションエミュレーションを利用することができる。こ
れは、動的にリンクされたプログラムコンポーネントを
単に取り除き、それを異なる方法で同じ機能を実行する
別のプログラムコンポーネントと入れ換えるとによって
行われる。
プリメンテーションが要求されるとき、インプリメンテ
ーションエミュレーションを利用することができる。こ
れは、動的にリンクされたプログラムコンポーネントを
単に取り除き、それを異なる方法で同じ機能を実行する
別のプログラムコンポーネントと入れ換えるとによって
行われる。
【0034】プログラムコンポーネントは、内部又は送
信インターフェースを備えても備えなくてもよい。プロ
グラムコンポーネントは、送信インターフェースを備え
ていないときには、機能呼出のみによって呼び出され
る。この場合、プログラムコンポーネントは、同じ実行
スペース内で呼び出される。同様に、プログラムコンポ
ーネントが送信インターフェースだけを備えているとき
は、プログラムコンポーネントは、メッセージパッシン
グを介して、他のプログラムオブジェクトのみによって
アクセスすることができる。
信インターフェースを備えても備えなくてもよい。プロ
グラムコンポーネントは、送信インターフェースを備え
ていないときには、機能呼出のみによって呼び出され
る。この場合、プログラムコンポーネントは、同じ実行
スペース内で呼び出される。同様に、プログラムコンポ
ーネントが送信インターフェースだけを備えているとき
は、プログラムコンポーネントは、メッセージパッシン
グを介して、他のプログラムオブジェクトのみによって
アクセスすることができる。
【0035】先行技術の高水準プログラムは、通常コン
パイラによって実行可能なバイナリコードに翻訳され
る。コンパイルの最終段階において、リンクエディタ
は、全てのオブジェクト実行ファイルを、スタートアッ
プコード及びプログラムによって参照されるライブラリ
機能と共に、リンクする。スタティックリンクでは、リ
ンクエディタは、リンク時に、オブジェクトファイルの
コピーを実行可能なバイナリコードに組み込む。スタテ
ィックライブラリは、ライブラリルーティン及びデータ
を含むオブジェクトファイルを集めたものである。一
方、ダイナミックリンキングでは、共有ライブラリは、
実行時にマッピングされる。したがって、リンクエディ
タは、共有ライブラリの名前、及び実行可能なバイナリ
コードによって参照されるシンボルに関する付加的な情
報を、実行可能なバイナリコードに格納するだけであ
る。ダイナミックローディングを用いると、ルーティン
は、コール(呼び出)されたときのみに、ロードされ
る。これによって、使用されない又はめったに使用され
ないルーティンのためのメモリを節約することができ
る。特にダイナミックローディングは、実行中に、共有
ライブラリをプロセスのアドレス空間に配置し、ライブ
ラリにおける機能のアドレスを検索して、その機能を動
作させ、不要のときは共通ライブラリを例えばメモリか
ら削除する等、共有ライブラリを外すことができる。
パイラによって実行可能なバイナリコードに翻訳され
る。コンパイルの最終段階において、リンクエディタ
は、全てのオブジェクト実行ファイルを、スタートアッ
プコード及びプログラムによって参照されるライブラリ
機能と共に、リンクする。スタティックリンクでは、リ
ンクエディタは、リンク時に、オブジェクトファイルの
コピーを実行可能なバイナリコードに組み込む。スタテ
ィックライブラリは、ライブラリルーティン及びデータ
を含むオブジェクトファイルを集めたものである。一
方、ダイナミックリンキングでは、共有ライブラリは、
実行時にマッピングされる。したがって、リンクエディ
タは、共有ライブラリの名前、及び実行可能なバイナリ
コードによって参照されるシンボルに関する付加的な情
報を、実行可能なバイナリコードに格納するだけであ
る。ダイナミックローディングを用いると、ルーティン
は、コール(呼び出)されたときのみに、ロードされ
る。これによって、使用されない又はめったに使用され
ないルーティンのためのメモリを節約することができ
る。特にダイナミックローディングは、実行中に、共有
ライブラリをプロセスのアドレス空間に配置し、ライブ
ラリにおける機能のアドレスを検索して、その機能を動
作させ、不要のときは共通ライブラリを例えばメモリか
ら削除する等、共有ライブラリを外すことができる。
【0036】なお、上述では、本発明をVTRに適用し
た具体例について説明したが、本発明は、この具体例に
限定されるものではなく、ソフトウェアプログラムで動
作するあらゆる電子機器又は装置に適用できることは言
うまでもない。
た具体例について説明したが、本発明は、この具体例に
限定されるものではなく、ソフトウェアプログラムで動
作するあらゆる電子機器又は装置に適用できることは言
うまでもない。
【0037】
【発明の効果】本発明に係る機能実現装置は、1つ以上
の機能を有するプログラムオブジェクトと、このプログ
ラムオブジェクトの他のプログラムオブジェクトと通信
を行うための機能を有する外部インターフェースとを備
える。そして、プログラムコンポーネントをロードする
と、このプログラムコンポーネントの1つ以上の機能
は、プログラムオブジェクトの外部インターフェースに
エクスポートされる。これにより、例えば、使用されな
い又はめったに使用されないルーティンのためのメモリ
を節約することができる。特にダイナミックローディン
グは、実行中に、共有ライブラリをプロセスのアドレス
空間に配置し、ライブラリにおける機能のアドレスを検
索して、その機能を動作させ、不要のときは共通ライブ
ラリを例えばメモリから削除する等、共有ライブラリを
外すことができる。
の機能を有するプログラムオブジェクトと、このプログ
ラムオブジェクトの他のプログラムオブジェクトと通信
を行うための機能を有する外部インターフェースとを備
える。そして、プログラムコンポーネントをロードする
と、このプログラムコンポーネントの1つ以上の機能
は、プログラムオブジェクトの外部インターフェースに
エクスポートされる。これにより、例えば、使用されな
い又はめったに使用されないルーティンのためのメモリ
を節約することができる。特にダイナミックローディン
グは、実行中に、共有ライブラリをプロセスのアドレス
空間に配置し、ライブラリにおける機能のアドレスを検
索して、その機能を動作させ、不要のときは共通ライブ
ラリを例えばメモリから削除する等、共有ライブラリを
外すことができる。
本発明は、添付の図面の参照例によって記述される。図
面では、同じ部分は、同じ符号を付している。
面では、同じ部分は、同じ符号を付している。
【図1】 プログラムオブジェクトを有する実行スペー
ス及びロードされたプログラムコンポーネントを概略的
に示す図である。
ス及びロードされたプログラムコンポーネントを概略的
に示す図である。
【図2】 プログラムオブジェクト及び外部インターフ
ェースを有する実行スペース及びプログラムコンポーネ
ントを概略的に示す図である。
ェースを有する実行スペース及びプログラムコンポーネ
ントを概略的に示す図である。
【図3】 新たなプログラムコンポーネントがロードさ
れた実行スペースを概略的に示す図である。
れた実行スペースを概略的に示す図である。
【図4】 他のプログラムコンポーネントがロードされ
た実行スペースを概略的に示す図である。
た実行スペースを概略的に示す図である。
【図5】 本発明を適用したVTRの具体的な構成を示
すブロック図である。
すブロック図である。
【図6】 上記VTRの実行スペースを実行スペースを
概略的に示す図である。
概略的に示す図である。
【図7】 新たな機能のプログラムコンポーネントを追
加した実行スペースを概略的に示す図である。
加した実行スペースを概略的に示す図である。
10 記録/再生機構、11 モータ、12 CPU、
13 RAM、14 ROM、15 ICカードドライ
ブ、16 FDドライブ、17 シリアルポート、18
変復調器
13 RAM、14 ROM、15 ICカードドライ
ブ、16 FDドライブ、17 シリアルポート、18
変復調器
Claims (15)
- 【請求項1】 1つ以上の機能を有するプログラムオブ
ジェクトと、 上記プログラムオブジェクトの他のプログラムオブジェ
クトと通信を行うための機能を有する外部インターフェ
ースとを備え、 プログラムコンポーネントをロードすると、該プログラ
ムコンポーネントの1つ以上の機能は、上記プログラム
オブジェクトの外部インターフェースにエクスポートさ
れることを特徴とする機能実現装置。 - 【請求項2】 付加的なプログラムコンポーネントをロ
ードすると、該付加的なプログラムコンポーネントの1
つ以上の機能が、他のプログラムオブジェクトと通信を
行うために、上記プログラムオブジェクトの外部インタ
ーフェースに追加されることを特徴とする請求項1に記
載の機能実現装置。 - 【請求項3】 上記プログラムコンポーネントを取り除
くと、上記プログラムコンポーネントの機能は、上記外
部インターフェースから取り除かれることを特徴とする
請求項1又は2記載の機能実現装置。 - 【請求項4】 第1のプログラムコンポーネントを第2
のプログラムコンポーネントに置き換えると、上記外部
インターフェースにおける上記第1のプログラムコンポ
ーネントの機能は、上記第2のプログラムコンポーネン
トの機能に置き換えられることを特徴とする請求項1乃
至3のいずれか1項に記載の機能実現装置。 - 【請求項5】 上記プログラムコンポーネントは、実行
中にダイナミックロードされることを特徴とする請求項
1乃至4のいずれか1項に記載の機能実現装置。 - 【請求項6】 1つ以上の機能を有するプログラムオブ
ジェクトと、 上記プログラムオブジェクトの他のプログラムオブジェ
クトと通信を行うための機能を有する外部インターフェ
ースと、 1つ以上の機能を有する少なくとも1つのプログラムコ
ンポーネントとを備え、 上記プログラムコンポーネントの機能は、上記プログラ
ムオブジェクトの外部インターフェースに追加されるこ
とを特徴とする機能実現装置。 - 【請求項7】 上記プログラムオブジェクトの機能は、
相互にアクセス可能であることを特徴とする請求項1乃
至6のいずれか1項に記載の機能実現装置。 - 【請求項8】 上記プログラムコンポーネントの機能
は、相互にアクセス可能であることを特徴とする請求項
1乃至7のいずれか1項に記載の機能実現装置。 - 【請求項9】 上記プログラムコンポーネントは、対応
するプログラムオブジェクトによってアクセスされる機
能を有する内部インターフェースを備えることを特徴と
する請求項1乃至8のいずれか1項に記載の機能実現装
置。 - 【請求項10】 上記プログラムコンポーネントの機能
は、上記外部インターフェースを介して、他のプログラ
ムオブジェクトによりアクセス可能であることを特徴と
する請求項1乃至9のいずれか1項に記載の機能実現装
置。 - 【請求項11】 上記外部インターフェースを介し、メ
ッセージパッシングによって通信が起動されることを特
徴とする請求項1乃至10のいずれか1項に記載の機能
実現装置。 - 【請求項12】 更に、データを一時的に記憶する記憶
手段と、 データを処理する処理手段と、 上記記憶手段と処理手段間を接続する接続手段とを備え
る請求の範囲1乃至11のいずれか1項に記載の機能実
現装置。 - 【請求項13】 上記プログラムコンポーネントは、対
応プログラムオブジェクトが実行されると、上記記憶手
段に転送されることを特徴とする請求項12に記載の機
能実現装置。 - 【請求項14】 上記プログラムコンポーネントは、対
応プログラムオブジェクトの実行後に、上記記憶手段か
ら取り除かれることを特徴とする請求項12又は13に
記載の機能実現装置。 - 【請求項15】 プログラムオブジェクトの1つ以上の
機能を含む外部インターフェースを有するプログラムオ
ブジェクトを用い、 1つ以上の機能を有するプログラムコンポーネントをロ
ードし、 上記プログラムオブジェクトの外部インターフェース
に、上記ロードされたプログラムコンポーネントの1つ
以上の機能をエクスポートし、 プログラムオブジェクト及び/又はプログラムコンポー
ネント間及び内で通信を行う通信方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP97203323A EP0911730B1 (en) | 1997-10-27 | 1997-10-27 | System of program objects and program components with external interface |
| EP97203323.7 | 1997-10-27 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH11203138A true JPH11203138A (ja) | 1999-07-30 |
Family
ID=8228864
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP10306193A Withdrawn JPH11203138A (ja) | 1997-10-27 | 1998-10-27 | 機能実現装置 |
Country Status (10)
| Country | Link |
|---|---|
| US (1) | US6675231B1 (ja) |
| EP (1) | EP0911730B1 (ja) |
| JP (1) | JPH11203138A (ja) |
| KR (1) | KR100620765B1 (ja) |
| CN (1) | CN1226060A (ja) |
| AT (1) | ATE265062T1 (ja) |
| CA (1) | CA2250676C (ja) |
| DE (1) | DE69728766T2 (ja) |
| SG (1) | SG87775A1 (ja) |
| TW (1) | TW494362B (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007249519A (ja) * | 2006-03-15 | 2007-09-27 | Hitachi Software Eng Co Ltd | 任意アプリケーションによる外部記憶装置への情報持ち出し制御方法 |
| JP2012014700A (ja) * | 2010-07-01 | 2012-01-19 | Nhn Corp | 開発者インタフェース提供方法およびシステム |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE60002202T2 (de) | 1999-06-11 | 2004-02-05 | British Telecommunications P.L.C. | Kommunikation zwischen softwarekomponenten |
| US9594910B2 (en) * | 2014-03-28 | 2017-03-14 | Intel Corporation | In-system provisioning of firmware for a hardware platform |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5126843A (en) | 1989-03-10 | 1992-06-30 | Sony Corporation | Interpolation signal producing circuit with improved amplitude interpolation |
| US5805885A (en) * | 1992-12-24 | 1998-09-08 | Microsoft Corporation | Method and system for aggregating objects |
| FI93071C (fi) | 1993-02-08 | 1995-02-10 | Nokia Technology Gmbh | Menetelmä ja kytkentäjärjestely lomitellun videosignaalin muuttamiseksi lomittelemattomaksi tai sen kenttätaajuuden kaksinkertaistamiseksi |
| KR970009469B1 (ko) | 1993-06-05 | 1997-06-13 | 삼성전자 주식회사 | 더블스무딩(Double Smoothing) 기능을 갖는 비월/순차주사변환장치 및 그 방법 |
| JPH0981486A (ja) * | 1994-11-17 | 1997-03-28 | Texas Instr Inc <Ti> | ソフトウェア・アプリケーション・プログラム間の共通の通信インターフェースを与えるオブジェクト指向型方法及び装置 |
| JPH096605A (ja) * | 1995-06-23 | 1997-01-10 | Hitachi Ltd | 機能オブジェクト間通信装置 |
| US5959536A (en) * | 1996-10-15 | 1999-09-28 | Philips Electronics North America Corporation | Task-driven distributed multimedia consumer system |
-
1997
- 1997-10-27 DE DE69728766T patent/DE69728766T2/de not_active Expired - Lifetime
- 1997-10-27 EP EP97203323A patent/EP0911730B1/en not_active Expired - Lifetime
- 1997-10-27 AT AT97203323T patent/ATE265062T1/de not_active IP Right Cessation
-
1998
- 1998-10-16 CA CA002250676A patent/CA2250676C/en not_active Expired - Fee Related
- 1998-10-17 SG SG9804221A patent/SG87775A1/en unknown
- 1998-10-17 TW TW087117200A patent/TW494362B/zh not_active IP Right Cessation
- 1998-10-26 US US09/178,877 patent/US6675231B1/en not_active Expired - Fee Related
- 1998-10-27 KR KR1019980044945A patent/KR100620765B1/ko not_active Expired - Fee Related
- 1998-10-27 CN CN98123606A patent/CN1226060A/zh active Pending
- 1998-10-27 JP JP10306193A patent/JPH11203138A/ja not_active Withdrawn
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007249519A (ja) * | 2006-03-15 | 2007-09-27 | Hitachi Software Eng Co Ltd | 任意アプリケーションによる外部記憶装置への情報持ち出し制御方法 |
| JP2012014700A (ja) * | 2010-07-01 | 2012-01-19 | Nhn Corp | 開発者インタフェース提供方法およびシステム |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0911730B1 (en) | 2004-04-21 |
| TW494362B (en) | 2002-07-11 |
| DE69728766T2 (de) | 2005-03-31 |
| CA2250676A1 (en) | 1999-04-27 |
| ATE265062T1 (de) | 2004-05-15 |
| DE69728766D1 (de) | 2004-05-27 |
| CN1226060A (zh) | 1999-08-18 |
| US6675231B1 (en) | 2004-01-06 |
| EP0911730A1 (en) | 1999-04-28 |
| KR19990037397A (ko) | 1999-05-25 |
| SG87775A1 (en) | 2002-04-16 |
| CA2250676C (en) | 2005-04-12 |
| KR100620765B1 (ko) | 2006-12-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7181610B2 (en) | Method and system to encapsulate a driver written for an operating system (OS) runtime environment in an OS independent environment firmware extension | |
| US6085318A (en) | Computer system capable of booting from CD-ROM and tape | |
| US6601139B1 (en) | Information processing method and apparatus using a storage medium storing all necessary software and content to configure and operate the apparatus | |
| US6519594B1 (en) | Computer-implemented sharing of java classes for increased memory efficiency and communication method | |
| US20010039612A1 (en) | Apparatus and method for fast booting | |
| US5950000A (en) | Integrated of a third party software tool | |
| US7203868B1 (en) | Dynamic monitoring of resources using snapshots of system states | |
| CN114020621B (zh) | 一种调试方法、电子设备及存储介质 | |
| EP0851347A2 (en) | Methods, systems, and computer program products for storing, loading, analyzing, and sharing references to recently used objects | |
| US20040088697A1 (en) | Software loading system and method | |
| JP2009151763A (ja) | メディア処理装置 | |
| CN1155946C (zh) | 包括操作系统和用户配置的可记录光盘及其装置 | |
| KR20040087898A (ko) | 프로그램 처리 시스템 및 프로그램 처리 방법, 및컴퓨터·프로그램 | |
| JPH11203138A (ja) | 機能実現装置 | |
| US7647455B2 (en) | Information processing apparatus and method, program, and program recording medium | |
| KR100359200B1 (ko) | 펌웨어 운용방법 | |
| JP4125056B2 (ja) | ログ取得方法 | |
| US6636964B1 (en) | Method and apparatus for loading an object-oriented operating system by providing an initial execution environment and migrating to a core execution environment thereafter | |
| US7487137B2 (en) | Apparatus, system, and method for java bean delta generation | |
| CN115904623A (zh) | 容器创建方法及系统、电子设备、存储介质 | |
| CN101944034B (zh) | 文件执行方法及系统 | |
| JP4345559B2 (ja) | 情報処理装置および情報処理方法、並びにプログラムおよびプログラム記録媒体 | |
| JP2002175187A (ja) | コンテンツカプセルの実行管理方法、コンピュータシステム及びコンテンツカプセルを記録した記録媒体 | |
| CN119003382B (zh) | Android程序外发行为的管控方法、系统、电子设备及介质 | |
| KR20140018743A (ko) | 디스크리스 어플리케이션 재생 장치 및 기록 장치, 재생 방법 및 기록 방법과 디스크리스 어플리케이션을 기록한 정보저장매체 |
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: 20060110 |