JPH1185548A - 情報を送る方法、装置、およびコンピュータ・プログラム製品 - Google Patents

情報を送る方法、装置、およびコンピュータ・プログラム製品

Info

Publication number
JPH1185548A
JPH1185548A JP18643798A JP18643798A JPH1185548A JP H1185548 A JPH1185548 A JP H1185548A JP 18643798 A JP18643798 A JP 18643798A JP 18643798 A JP18643798 A JP 18643798A JP H1185548 A JPH1185548 A JP H1185548A
Authority
JP
Japan
Prior art keywords
information
token
application
storage device
sending
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
JP18643798A
Other languages
English (en)
Inventor
Amanda Elizabeth Chessell
アマンダ・エリザベス・チェッセル
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH1185548A publication Critical patent/JPH1185548A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 2つのコンピュータ・ソフトウェア・アプリ
ケーション間で情報を送る改善された方法および装置を
提供すること。 【解決手段】 この方法は、送信側アプリケーション
が、まず情報を中間インタフェース言語に変換せずに情
報項目を記憶装置に送るステップと、トークンを送信側
アプリケーションに戻すステップと、送信側アプリケー
ションが、インタフェースを介してトークンを受信側ア
プリケーションに送るステップと、受信側アプリケーシ
ョンが、トークンを使用して、記憶装置中に記憶された
情報にアクセスするステップとを有する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピューティン
グの分野に関し、より詳細には、2つの独立したソフト
ウェア(以下「アプリケーション」と呼ぶ)がそれらの
間で情報を共用する必要がある場合に共に動作する分散
コンピューティングの分野に関する。
【0002】
【従来の技術】現代のコンピューティング・システムで
は、異なる2つのアプリケーションが、それぞれのコン
ピュータ処理タスクを実行している間に情報を共用する
ことがますます一般的になりつつある。あるプログラミ
ング言語で書かれたアプリケーションが別のプログラミ
ング言語で書かれたアプリケーションからきた情報を理
解することをより容易にするために、言語独立インタフ
ェースが開発された。すべての情報はあるアプリケーシ
ョンから別のアプリケーションにその言語独立インタフ
ェースを介して送らなければならない。情報を送ってい
る第1のアプリケーションは、まずその情報をインタフ
ェースの中間言語に変換し、次いで変換された情報をイ
ンタフェースに送り、次いでそのインタフェースがその
情報を受信側アプリケーションに送り、次いでその受信
側アプリケーションがその情報を中間言語から受信側ア
プリケーションの固有言語に変換する。
【0003】そのようなインタフェースおよび中間言語
の例は、Object Management Group(OMG)がそのCom
mon Object Request Broker Architecture(CORB
A)の一部として定義したInterface Definition Langu
age(IDL)である。このOMGは、定義された標準
に従う分散アプリケーションを開発することに同意した
コンピュータ・ソフトウェア会社の協会である。その技
術は、データおよびデータに対して作用するプログラミ
ング方法が、全体的なコンピュータ・プログラムを処理
するためにオブジェクトと呼ばれる原子単位として共に
グループ化されるオブジェクト指向プログラミングに基
づいている。したがって、この例では、2つの各アプリ
ケーションがオブジェクトであり、それらの間で送られ
る情報もオブジェクトであろう。
【0004】他の例は、インタフェースの中間言語との
間での変換とともに、情報があるアプリケーションから
別のアプリケーションに送られるオペレーティング・シ
ステム・インタフェースである。
【0005】2つのアプリケーションが異なるプログラ
ミング言語で書かれることは、極めて一般的であるの
で、多くのシステムは、アプリケーション間で送られる
すべての情報がまず中間言語に変換され、インタフェー
スを介して送られなければならないように設計される。
【0006】しばしば、2つのアプリケーションは同じ
言語で書かれ、したがってインタフェースを介して情報
をあるアプリケーションから他のアプリケーションに送
る前に情報を中間言語に変換する必要は実際にはない。
しかしながら、常にすべてのものをインタフェースを介
して送らなければならない上記の制約のために、2つの
アプリケーションが同じ言語で書かれている場合でもこ
の中間言語への変換が必要である。したがって、これら
の場合、情報を共用したい2つのアプリケーションは、
すべての情報を中間言語との間で変換しなければなら
ず、2つのアプリケーションが最初に同じ言語で書かれ
ている場合、不要な負担がアプリケーションに加わる。
【0007】
【発明が解決しようとする課題】異なるアプリケーショ
ン間で情報を送信するための改善された方法および装置
を提供することを目的とする。
【0008】
【課題を解決するための手段】第1の態様によれば、本
発明は、2つのコンピュータ・ソフトウェア・アプリケ
ーション間で情報を送る方法であって、送信側アプリケ
ーションが、まず情報を中間インタフェース言語に変換
せずに情報項目を記憶装置に送るステップと、情報項目
を表すトークンを送信側アプリケーションに戻すステッ
プと、送信側アプリケーションが、インタフェースを介
してトークンを受信側アプリケーションに送るステップ
と、受信側アプリケーションが、トークンを使用して、
記憶装置中に記憶された情報にアクセスするステップと
を有する方法を提供する。
【0009】記憶装置がキャッシュであり、かつ情報項
目がソフトウェア構成であることが好ましい。ソフトウ
ェア構成がオブジェクトであることがさらに好ましい。
【0010】別の情報項目が記憶装置中に記憶されるた
びに、この情報項目に割り当てるべきトークンの値が、
記憶装置中に記憶された直前の情報項目に割り当てられ
たトークンの値に対して1増分されることがさらに好ま
しい。
【0011】第2の態様によれば、本発明は、第1の態
様の上述の方法ステップを実施する装置を提供する。
【0012】第3の態様によれば、本発明は、コンピュ
ータ上で実行されたときに、第1の態様の方法ステップ
を実施するコンピュータ読取り可能記憶媒体上に記憶さ
れたコンピュータ・プログラム製品を提供する。
【0013】したがって、本発明を使用すれば、システ
ム・アーキテクチャが確立されたときにすべてのアプリ
ケーション間情報を中間言語に変換する事前の約束があ
る場合でも、同じ固有言語の2つのアプリケーション間
で送られるすべての情報をまずインタフェースの中間言
語に変換する必要がない。代わりに、以下で説明するよ
うに、記憶装置およびトークンを使用して、インタフェ
ースを介して一部の情報を送る。これにより、多くの言
語変換が節約できるので、2つのアプリケーションに対
する処理負担が大幅に減る。
【0014】
【発明の実施の形態】図1に示すように、本発明の好ま
しい実施形態の基本システム・アーキテクチャによれ
ば、第1のアプリケーション11は、言語独立インタフ
ェース12を介して情報を第2のアプリケーション13
に転送する。第1のアプリケーションと第2のアプリケ
ーションは、同じ固有プログラミング言語(例えば、C
++やJava)を共用する。2つのアプリケーション
間で送られる情報は、例えば、オブジェクトであるか、
または他の形のプログラミング構成である。
【0015】従来技術では、2つのアプリケーション1
1および13の間で送られるすべての情報は、付随する
中間言語への変換とともにインタフェース12を介して
送られなければならない。しかしながら、本発明の好ま
しい実施形態によれば、情報がまず中間言語に変換され
ずにインタフェース12を介してアプリケーション11
からアプリケーション13に送られるようにキャッシュ
14(または他のタイプの記憶装置)が提供される。
【0016】次に、本発明の動作について、図1のブロ
ック図および図2の流れ図を参照しながら説明する。図
1において、丸で囲まれた数字は、ステップが実施され
る時間順序を定義することに留意されたい。
【0017】まず、アプリケーション11がプログラミ
ング構成(以下、一例としてアプリケーション間で送ら
れるプログラミング構成または「情報」としてオブジェ
クトを使用する)をキャッシュ14(丸で囲まれた番号
1参照)に送る(図2、ステップ21)。次いで、一意
のトークン(例えば、符号なしの数字)がアプリケーシ
ョン11(丸で囲まれた番号2参照)に戻される(ステ
ップ22)。このトークンは、キャッシュ14中に記憶
されたばかりのオブジェクトを一意に表す。例えば、記
憶された各情報項目がトークンによって一意に識別され
るように、トークンの値を、新しい情報項目がキャッシ
ュ14に追加されるたびに1増分することができ、トー
クンによって記憶された各情報項目を唯一識別すること
ができる。
【0018】次いで、アプリケーション11は、トーク
ンを中間言語(丸で囲まれた番号3)に変換した後、イ
ンタフェース12を介してトークンを送る(ステップ2
3)。アプリケーション13は、トークンを受け取った
とき、トークンを中間言語から固有言語に戻し、次いで
トークンをキャッシュ14(丸で囲まれた番号4参照)
に送る(ステップ24)。次いで、アプリケーション1
1によって前にそこに記憶されたオブジェクトが、(こ
の記憶されたオブジェクトに固有の)トークンによって
識別され、キャッシュ14から取り出され、アプリケー
ション13(丸で囲まれた番号5参照)に送られる(ス
テップ25)。
【0019】キャッシュ14は、ソフトウェア(すなわ
ち、マップまたはアレイとして)またはハードウェアの
形で実施できることに留意されたい。
【0020】そのようにすれば、オブジェクトを言語中
間形に変換する必要がなく、しかもアプリケーション1
1とアプリケーション13との間にインタフェース12
が存在するにも関わらず、オブジェクトをアプリケーシ
ョン11とアプリケーション13との間で転送すること
ができる。代わりに、ただトークンを変換し、インタフ
ェース12を介して送る必要がある。これにより、キャ
ッシュ14に送られるオブジェクトに関する言語変換の
必要がなくなるので、アプリケーション11およびアプ
リケーション13に関連する処理負担が大幅に軽減され
る。したがって、アプリケーションを書くことがはるか
に容易になる。
【0021】さらに、受信側アプリケーションがキャッ
シュからオブジェクトを取り出すときにオブジェクトが
キャッシュから除去されるので、キャッシュの内容を極
めて小さくすることができ、したがってメモリ・サイズ
要件が緩和される。
【0022】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0023】(1)2つのコンピュータ・ソフトウェア
・アプリケーション間で情報を送る方法であって、送信
側アプリケーションが、まず情報を前記中間インタフェ
ース言語に変換せずに情報項目を記憶装置に送るステッ
プと、前記情報項目を表すトークンを送信側アプリケー
ションに戻すステップと、前記送信側アプリケーション
が、インタフェースを介してトークンを受信側アプリケ
ーションに送るステップと、前記受信側アプリケーショ
ンが、トークンを使用して、記憶装置中に記憶された情
報にアクセスするステップとを含む方法。 (2)前記記憶装置がキャッシュ・メモリである上記
(1)に記載の方法。 (3)前記情報項目がソフトウェア構成である上記
(1)に記載の方法。 (4)前記ソフトウェア構造体がオブジェクトである上
記(3)に記載の方法。 (5)別の情報項目が前記記憶装置中に記憶されるたび
に、この情報項目に割り当てるべきトークンの値が、前
記記憶装置中に記憶された直前の情報項目に割り当てら
れたトークンの値に対して1増分される上記(1)に記
載の方法。 (6)2つのコンピュータ・ソフトウェア・アプリケー
ション間で情報を送る装置であって、まず情報を前記中
間インタフェース言語に変換せずに情報項目を送信側ア
プリケーションから記憶装置に送る手段と、前記情報項
目を表すトークンを前記送信側アプリケーションに戻す
手段と、トークンを前記送信側アプリケーションからイ
ンタフェースを介して受信側アプリケーションに送る手
段と、前記受信側アプリケーションに、トークンを使用
して、前記記憶装置中に記憶された情報にアクセスさせ
る手段とを含む装置。 (7)前記記憶装置がキャッシュ・メモリである上記
(6)に記載の装置。 (8)前記情報項目がソフトウェア構成である上記
(6)に記載の装置。 (9)前記ソフトウェア構成がオブジェクトである上記
(8)に記載の装置。 (10)送信側アプリケーションが、まず情報を前記中
間インタフェース言語に変換せずに情報項目を記憶装置
に送るステップと、前記情報項目を表すトークンを前記
送信側アプリケーションに戻すステップと、前記送信側
アプリケーションが、インタフェースを介してトークン
を受信側アプリケーションに送るステップと、前記受信
側アプリケーションが、トークンを使用して、前記記憶
装置中に記憶された情報にアクセスするステップとを有
する、2つのコンピュータ・ソフトウェア・アプリケー
ション間で情報を送る方法をコンピュータ上で実現する
ためのコンピュータ読取り可能記憶媒体上に記憶された
コンピュータ・プログラム製品。
【図面の簡単な説明】
【図1】本発明の好ましい実施形態による基本システム
・アーキテクチャを示すブロック図である。
【図2】本発明の好ましい実施形態による、情報をある
アプリケーションから別のアプリケーションに転送する
際に必要とされるステップを示す流れ図である。
【符号の説明】
11 アプリケーション 12 言語独立インタフェース 13 アプリケーション 14 キャッシュ

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】2つのコンピュータ・ソフトウェア・アプ
    リケーション間で情報を送る方法であって、 送信側アプリケーションが、まず情報を前記中間インタ
    フェース言語に変換せずに情報項目を記憶装置に送るス
    テップと、 前記情報項目を表すトークンを送信側アプリケーション
    に戻すステップと、 前記送信側アプリケーションが、インタフェースを介し
    てトークンを受信側アプリケーションに送るステップ
    と、 前記受信側アプリケーションが、トークンを使用して、
    記憶装置中に記憶された情報にアクセスするステップと
    を含む方法。
  2. 【請求項2】前記記憶装置がキャッシュ・メモリである
    請求項1に記載の方法。
  3. 【請求項3】前記情報項目がソフトウェア構成である請
    求項1に記載の方法。
  4. 【請求項4】前記ソフトウェア構造体がオブジェクトで
    ある請求項3に記載の方法。
  5. 【請求項5】別の情報項目が前記記憶装置中に記憶され
    るたびに、この情報項目に割り当てるべきトークンの値
    が、前記記憶装置中に記憶された直前の情報項目に割り
    当てられたトークンの値に対して1増分される請求項1
    に記載の方法。
  6. 【請求項6】2つのコンピュータ・ソフトウェア・アプ
    リケーション間で情報を送る装置であって、 まず情報を前記中間インタフェース言語に変換せずに情
    報項目を送信側アプリケーションから記憶装置に送る手
    段と、 前記情報項目を表すトークンを前記送信側アプリケーシ
    ョンに戻す手段と、 トークンを前記送信側アプリケーションからインタフェ
    ースを介して受信側アプリケーションに送る手段と、 前記受信側アプリケーションに、トークンを使用して、
    前記記憶装置中に記憶された情報にアクセスさせる手段
    とを含む装置。
  7. 【請求項7】前記記憶装置がキャッシュ・メモリである
    請求項6に記載の装置。
  8. 【請求項8】前記情報項目がソフトウェア構成である請
    求項6に記載の装置。
  9. 【請求項9】前記ソフトウェア構成がオブジェクトであ
    る請求項8に記載の装置。
  10. 【請求項10】送信側アプリケーションが、まず情報を
    前記中間インタフェース言語に変換せずに情報項目を記
    憶装置に送るステップと、 前記情報項目を表すトークンを前記送信側アプリケーシ
    ョンに戻すステップと、 前記送信側アプリケーションが、インタフェースを介し
    てトークンを受信側アプリケーションに送るステップ
    と、 前記受信側アプリケーションが、トークンを使用して、
    前記記憶装置中に記憶された情報にアクセスするステッ
    プとを有する、2つのコンピュータ・ソフトウェア・ア
    プリケーション間で情報を送る方法をコンピュータ上で
    実現するためのコンピュータ読取り可能記憶媒体上に記
    憶されたコンピュータ・プログラム製品。
JP18643798A 1997-08-28 1998-07-01 情報を送る方法、装置、およびコンピュータ・プログラム製品 Pending JPH1185548A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB9718137.4 1997-08-28
GB9718137A GB2328764B (en) 1997-08-28 1997-08-28 Method, apparatus and computer program product for passing programming constructs across a foreign interface

Publications (1)

Publication Number Publication Date
JPH1185548A true JPH1185548A (ja) 1999-03-30

Family

ID=10818094

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18643798A Pending JPH1185548A (ja) 1997-08-28 1998-07-01 情報を送る方法、装置、およびコンピュータ・プログラム製品

Country Status (2)

Country Link
JP (1) JPH1185548A (ja)
GB (1) GB2328764B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7565330B2 (en) * 2005-06-20 2009-07-21 Microsoft Corporation Secure online transactions using a captcha image as a watermark
US8145914B2 (en) 2005-12-15 2012-03-27 Microsoft Corporation Client-side CAPTCHA ceremony for user verification
US9213992B2 (en) 2005-07-08 2015-12-15 Microsoft Technology Licensing, Llc Secure online transactions using a trusted digital identity

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8171487B2 (en) * 2007-05-02 2012-05-01 International Business Machines Corporation Method for processing work items of a workflow system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5313578A (en) * 1990-12-23 1994-05-17 Motorola, Inc. Portable interprocess communication facility
JPH0778775B2 (ja) * 1991-06-12 1995-08-23 インターナショナル・ビジネス・マシーンズ・コーポレイション アプリケーション・プログラム間における情報交換システム及び方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7565330B2 (en) * 2005-06-20 2009-07-21 Microsoft Corporation Secure online transactions using a captcha image as a watermark
US9213992B2 (en) 2005-07-08 2015-12-15 Microsoft Technology Licensing, Llc Secure online transactions using a trusted digital identity
US8145914B2 (en) 2005-12-15 2012-03-27 Microsoft Corporation Client-side CAPTCHA ceremony for user verification
US8782425B2 (en) 2005-12-15 2014-07-15 Microsoft Corporation Client-side CAPTCHA ceremony for user verification

Also Published As

Publication number Publication date
GB2328764B (en) 2002-01-23
GB2328764A (en) 1999-03-03
GB9718137D0 (en) 1997-10-29

Similar Documents

Publication Publication Date Title
US6253252B1 (en) Method and apparatus for asynchronously calling and implementing objects
US8763008B2 (en) System and method for processing messages using native data serialization/deserialization in a service-oriented pipeline architecture
US8806506B2 (en) System and method for processing messages using a common interface platform supporting multiple pluggable data formats in a service-oriented pipeline architecture
US5758186A (en) Method and apparatus for generically handling diverse protocol method calls in a client/server computer system
US8205007B2 (en) Native format tunneling
US6951021B1 (en) System and method for server-side communication support in a distributed computing environment
US6405264B1 (en) Marshaling and unmarshaling framework for supporting filters in a distributed object system
US20020019884A1 (en) Accessing legacy applications from the internet
US6836892B2 (en) Apparatus and method for use in distributed computing environment for converting data format between program language-specific format used in respective computers and stream format used for communication among computers
US6249803B1 (en) Method and apparatus for executing code during method invocation
CA2255393A1 (en) Method and apparatus for constructing stable iterators in a shared data collection
US6516354B2 (en) Method and apparatus for efficient representation of variable length identifiers in a distributed object system
JP2008165340A (ja) 遠隔手続呼出方式
US7003773B2 (en) Dynamic interface aggregation on demand
US6282582B1 (en) Computer system, agent transmission method and agent reactivation method
US8028018B2 (en) System, device, and method for cooperative processing
JPH1185548A (ja) 情報を送る方法、装置、およびコンピュータ・プログラム製品
US5838971A (en) Process for implementing dynamic data types in distributed computing networks using an OSF/DCE platform
US20080082473A1 (en) Peer based event conversion
JPH0793264A (ja) クライアント側スタブインタプリタ
CN113849449A (zh) 一种通信***和信息交互方法、设备和介质
CN117527654B (zh) 一种用于网络流量抓包分析的方法及***
JP2001337935A (ja) 分散オブジェクト環境におけるアプリケーションのラッピング方法、その通信管理装置及び記録媒体
KR100272094B1 (ko) 객체전이 시스템 및 방법
JPH09245003A (ja) 並列分散処理システムおよびその方法