JP2001188742A - データ分配方法 - Google Patents

データ分配方法

Info

Publication number
JP2001188742A
JP2001188742A JP2000324622A JP2000324622A JP2001188742A JP 2001188742 A JP2001188742 A JP 2001188742A JP 2000324622 A JP2000324622 A JP 2000324622A JP 2000324622 A JP2000324622 A JP 2000324622A JP 2001188742 A JP2001188742 A JP 2001188742A
Authority
JP
Japan
Prior art keywords
data
task
user
provider
type
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.)
Granted
Application number
JP2000324622A
Other languages
English (en)
Other versions
JP3247891B2 (ja
Inventor
Charlie B Cross
チャーリー・ビー・クロス
Diana Y Moy
ダイアナ・ワイ・モーイ
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.)
RIKOSU INTERNATL Inc
Original Assignee
RIKOSU INTERNATL 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 RIKOSU INTERNATL Inc filed Critical RIKOSU INTERNATL Inc
Publication of JP2001188742A publication Critical patent/JP2001188742A/ja
Application granted granted Critical
Publication of JP3247891B2 publication Critical patent/JP3247891B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1804Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for stock exchange and similar applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Finance (AREA)
  • Computing Systems (AREA)
  • Accounting & Taxation (AREA)
  • Data Mining & Analysis (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

(57)【要約】 【課題】 種々のタイプのデータを受け取る手段を有す
るマルチタスク・データ処理システムにおいて、プロバ
イダ・タスクからのデータを当該データを申し込んでい
る複数のユーザ・タスクに分配すること。 【解決手段】 本発明によるシステム(20)では、第
1のプロバイダ・タスクは、遠隔データベースからの入
来データの流れをデータタイプに応じて複数のデータの
流れに分割する。選択されたデータの流れは、ユーザの
タスクに直接伝送される。しかし、特定のモニタリング
・リクエストは第2のプロバイダ・タスクに転送され
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、種々のタイプのデ
ータを受け取る手段を有するマルチタスク・データ処理
システムにおいて、プロバイダ・タスクからのデータを
当該データを申し込んでいる複数のユーザ・タスクに分
配する方法に関する。
【0002】
【従来の技術】ローカルコンピュータは遠隔のデータベ
ースと電話線で通信することにより大量の情報に対して
アクセスが可能である。遠隔のデータベースは、ほとん
どのローカルコンピュータにおいて可能なものをはるか
に上廻る記憶能力を有し、情報の中央記憶ハウスとして
機能しうる。
【0003】ウォルシュ・グリーンウッド・インフォメ
ーション・システムズ社(Walsh Greenwood Informatio
n Systems, Inc.)により開発され、ウォング・フィナ
ンシャル・インフォメーション・サービシズ社(Wang F
inancial Information Services Corporation)に引継
がれたデータベースは、株式市場やその他の金融機関に
関する情報専用とされている。このデータベースは、リ
アルタイムの取引、店頭での相場、オプション、商品、
先物相場を含む相場情報、固定収入データならびにニュ
ースや団体の持ち株を包含している。このデータベース
は、予約したコンピュータが一般的に3種のサービス、
即ち放送、照会およびモニタリングにアクセスできるよ
うにする。
【0004】放送の場合は、情報が継続的にユーザに単
に放送されることである。一例としては、ニューヨーク
株式取引所の相場表示サービスであって、ニューヨーク
株式取引所で行われた全ての取引が、それら取引が行わ
れる際全ての予約者に伝達される。その他の放送サービ
スとしては、ダウ・ジョーンズ・ニューズ・サービス
(Dow Jones News Service)やロイターズ・ニューズ・
サービス(Reuters NewsService)から受信した見出し
をスクロールするニュースの見出しサービスがある。ま
た、ダウジョーンズ・ニューズ・サービスやロイターズ
・ニューズ・サービスからの全てのニュース項目が加入
者に伝達され、ニュースがリリースされるにつれてニュ
ース項目を通してスクロールできるようにする。
【0005】また、データベースの加入者は特定の照会
を行うことができる。例えば、加入者はいずれかの株式
の相場を要求し、当該株式についてデータベースに記憶
されている現在の情報を迅速に受け取ることができる。
また、関心あるニュース項目は、関心ある情報を識別す
る特定の識別子記号を含むリクエストを出すことにより
検索できる。
【0006】最後に、加入者は遠隔のデータベースがデ
ータベースヘ入る情報の全てをモニタし、かつ加入者に
特に関心のあるデータのみを送信するよう要求できる。
再度、加入者は識別記号を含むデータベースヘリクエス
トを伝達する。
【0007】ウォルシュ・グリーンウッド・インフォメ
ーション・システムズのシステムはパソコンとの通信用
に構成された。したがって、各通信ラインのアドレスに
対して正確に一人のユーザが居た。各パソコンは特定セ
ットのサービスを予約し、これらサービスに対して適当
な手数料を支払えばよい。いずれのサービスを当該コン
ピュータが使用できるようネットワークが許容するかを
示すメッセージを各ラインの各コンピュータに送るネッ
トワークのホストプロセッサにより構成と機密性とが取
扱われた。このため正確な勘定および計算をできるよう
にするに十分な制御を提供した。
【0008】
【発明の概要】マルチユーザ・システムは、中央コンピ
ュータを介して接続された多数の端末と、データベース
のホストコンピュータとヘの単一の通信ラインを有する
ことができる。このローカルシステムにおける種々のユ
ーザは、種々のサービスを予約できる。その状態におい
て、遠隔データベースは、各端末に対して正確なファイ
ルを保持する必要がある。さらに、遠隔データベース
は、単一の通信ラインに沿って全ての加入端末にデータ
を伝送し、予約し、かつ特定の照会をなした端末に対し
てデータを適正に分配するにはローカル・マルチユーザ
・システムに依存する必要がある。本発明が指向するの
はそのようなマルチユーザシステムである。
【0009】多数のユーザに向けて入来データを適正に
分配するためには、ローカル・マルチユーザ・システム
は予約記録と、特定のリクエストの記録とを保持し、入
来データを個々のユーザに多重化する必要がある。この
重要なタスクは、遠隔データベースから個々のユーザヘ
の情報を容認できない程遅らせることなく、達成する必
要がある。前記遅れを排除することは、株式市場情報の
場合特に重要である。本発明の1つの特徴は、このよう
に情報を迅速に分配できるように各種の情報を処埋する
ことにある。多数のユーザからのリクエストの特定のモ
ニタリングを追跡することは、厄介となりうる。本発明
の1つの特徴によれば、最初のプロバイダ(provider)
のタスクは、遠隔データベースからの入来データの流れ
を各サービスに対応したデータタイプによる複数のデー
タの流れに分割する。リクエストをモニタリングしない
ことに応答して選択されたデータの流れは、データの流
れを予約するユーザのタスクに直接伝送される。しか
し、特定のモニタリング・リクエストは第2のプロバイ
ダ・タスクに転送される。次いで、前記のプロバイダ・
タスクは、特定のモニタリングリクエストに応答してデ
ータの流れを別のデータの流れに分割し、かつ前記の別
のデータの流れをユーザタスクに転送する。このよう
に、単にユーザに放送されたり、あるいは特定の、照会
の結果であるデータは、モニタリング・リクエストに応
答して、さらに時間のかかるデータの分配を取り扱う必
要のあるタスクにより遅延される必要はない。また、第
2のプロバイダ・タスクは特定クラスのデータに必要な
復号を行うことができる。
【0010】ニュースの検索のような特定の照会は、さ
らに別のプロバイダ・タスクにより処理することができ
る。前記クラスのデータは、モニタリング・リクエスト
に基いて広範なデータ処埋を必要とはしないが、データ
は個別のタスクを保証するために十分な追加の処埋を必
要としうる。しかし、相場の照会は第1のプロバイダ・
タスクにより扱うことが好ましい。ユーザは、典型的に
は、相場の照会に応答して極めて急速に応答を得ること
に関心があり、第1のプロバイダ・タスクによる前記照
会の取扱いはそれほど厄介ではない。
【0011】データベースから受け取られた情報は、遠
隔のデータベースによりあるいは全ての加入者に提供さ
れたローカル・ソフトウェアによりつくられる特定フォ
ーマットにおいて典型的に表示される必要がある。ユー
ザにより開発されたプログラムにより受信したデータヘ
のアクセスは典型的に限定されており、かつ使用可能な
場合アクセスは特定のプログラム技術および努力を要し
てきた。そのようなアクセスは、リアルタイム・ベース
では得られなかった。本発明の別の特徴は、プロバイダ
・タスクとユーザ・タスクとの間のデータ経路が、各ユ
ーザ・タスクに接続されている共通のコード・モジュー
ルにより設定されることである。各データ経路は、単一
のユーザに転送されるタイプのデータに特定している。
共通のコードモジュールは、ユーザが予約した種々のデ
ータタイプヘのアクセスを簡素化し、ユーザ・プログラ
ムをマルチタスク・システムのオペレーティング・シス
テムの変動から遮断する。オペレーティング・システム
における変動が要する何らかのプログラミングの変動
は、共通のコードモジュールを修正することにより全て
のプログラムに対して処理できる。各ユーザに転送され
た各タイプのデータに対して明確なデータ経路を設定す
ることにより、ローカルの予約を簡単に入力でき、かつ
特定のサービスに対して停止でき、かつユーザ・プログ
ラムはいずれかの点において特定のサービスヘのアクセ
スを制限することができる。このように、内部メッセー
ジ通信量を最小にできる。
【0012】データベースからのデータを待機する間に
ユーザ・プログラムが使用される必要のある時間は、オ
ペレーティング・システムによりモニタされる待機リス
トを設定することにより最小にできる。待機リストは、
各ユーザのタスクに対して各タイプのデータについての
メールボックスアドレスを含む。前記メールボックスを
介してオペレーティング・システムは、ユーザタスクに
対して、該タスクに転送されつつあるデータを通知す
る。オペレーティング・システムは、各プログラムが独
立して待機ルーチンを通してサイクルする必要がないの
で、データの分配を迅速にする。むしろ、オペレーティ
ング・システムは多数のイベントを同時に待機させ、次
に、何でも最初に発生するものを処埋する。前記の機能
は、一般的に、より高レベルの言語で作成しているプロ
グラマーには使用できず、本発明のシステムにおいて
は、共通のコードモジュールにより使用可能とされる。
【0013】プロバイダと加入者との間でデータ経路を
設定する際、構成ファイルから各ユーザタスクに対して
構成リストを設定できる。各構成リストは、各タイプの
データに対するリクエストが転送されるプロバイダ・タ
スク・メールボックスの名前と、当該タスクが特定タイ
プのデータに対するアクセスをするか否かの指示を含
む。また、各構成リストは、タスクが他のタスクヘのデ
ータのプロバイダであるか否かも指示する。共通コード
モジュールのプロバイダの特定のルーチンは、プロバイ
ダ・タスクに制限されている。
【0014】また、共通のコードモジュールを用いて、
プロバイダ・タスクに対する待機リストを設定できる。
プロバイダ・タスクは、リクエストがユーザタスクから
つくられつつあるか否か繰り返し検査する必要はない
が、オペレーティング・システムは、単に各サービスに
対してプロバイダのタスク・メールボックスをモニタす
ればよい。また、プロバイダ・タスクが各サービスに関
する各メールボックスを識別できるよう各プロバイダ・
タスクに対して構成リストを作る。加入者へのデータの
分配を促進するために、各プロバイダは、各サービスに
関する加入者リストを設定し、各サービスに関してデー
タ経路を発生させたユーザを識別することができる。
【0015】システムの始動の間に、第1のプロバイダ
のタスクが、構成リストに含む情報を当該システムのそ
の他全てのタスクにも提供することが好ましい。第1の
プロバイダのタスクのみが、遠隔のデータベースから受
信された顧客のアクセス情報を含む構成ファイルにアク
セスする。
【0016】例えば、モニタリング・サービスを提供す
る前述の第2のプロバイダ・タスクのようなプロバイダ
・タスクは、異なるユーザからの独立したリクエストの
ために遠隔データベースからのデータに対して同一のリ
クエストをしないようにすべきである。この目的のため
に、プロバイダ・タスクは、ユーザ・タスクから特定の
データ・リクエストを受け取り、ユーザ・タスクを特定
のデータリクエストに相関させる情報をコンパイルする
各データリクエストに対して、プロバイダが別のタスク
に対して同様のリクエストが保留されているか否か検出
する。同様のリクエストが保留されていない場合のみ、
特定のデータリクエストが遠隔データベースに転送され
る。次いで、データが遠隔のデータベースから受け取ら
れると、プロパイダは、コンパイルされた情報から、受
信したデータを要求した全てのユーザタスクを検出し、
データはこれらのユーザタスクに転送される。情報はユ
ーザ・ツリーと記号ツリーとを発生させてコンパイルす
ることが好ましい。ユーザ・ツリーの各ユーザ・ノード
は、該ユーザが要求したデータを識別する記号のリスト
に向けられる。記号ツリーの各ノードは、該記号により
表示されるデータを要求したユーザを指示する。
【0017】本発明の前述およびその他の目的、特徴お
よび利点は、添付図面に示す本発明の好適実施例につい
ての以下の詳細な説明から明らかとなる。
【0018】
【発明の実施の形態】本発明は、マルチタスク、マルチ
ユーザ・データ処埋システムに関し、例えばウォング・
ラボラトリーズ社(Wang Laboratories, Inc.)製のV
Sシステムに対して実施しうる。図1では、ブロック2
0は、マルチタスク・システムの全体のオペレーティン
グ・システムを示す。オペレーティング・システムに
は、多数の明確なプログラムが設けられ、該プログラム
はオペレーティング・システムを共用してそれぞれのタ
スクを独立に完成する。例えば、3個のユーザ・プログ
ラム22、24、26が示されている。各ユーザ・プロ
グラムは、それぞれのコンピュータ端末28、50また
は52と関連している。各ユーザ・プログラムの内部で
は、このシステムのマルチタスク・マルチユーザという
特性は、ユーザには見えない。しかし、タスク間の通信
に対しては、オペレーティング・システムを通じてデー
タ経路を設定するために特定の手順を追従する必要があ
る。
【0019】本発明は、遠隔データベースのホストコン
ピュータ54へのリクエストの転送と、該コンピュータ
からのデータの復帰とに関する。ホストコンピュータ
は、ホストを例えばダウ・ジョーンズやスペクトル・イ
ンスチチューショナル・ホールデイングス(Spectrum I
nstitutional Holdings)のような全ての株式取引や数
個の補助的サービスに連結する多数のデータライン上
で、リアルタイムの取引や相場情報を集める。この情報
は、リアルタイムの株式取引、店頭、オプション、商品
取引および固定収入データ並びにニュースおよび団体の
持ち株を含む。
【0020】遠隔データベース34とユーザ・プログラ
ム22、24および26との間の全ての通信は、1次プ
ロバイダ・タスク36を介して処埋される。このタスク
は、データを予約したユーザヘ提供する。一次プロバイ
ダ56は、電話線に沿ってデータを送信および受信する
従来の通信ソフトウエアを含む。一次プロパイダ56は
また、どのタイプのデータが受信されているかに関して
最初の検出を行う必要がある。詳しくは、一次プロバイ
ダは、当該データが一部である特定データ・サービスを
検出する。
【0021】一次プロバイダは、データの最初の分配を
行う。当該サービスの全ての加入者にそのすべてが伝達
される放送クラスのほとんどのデータが、一次プロバイ
ダから直接に個々の加入ユーザヘ伝送される。このクラ
スのサービスは、ダウジョーンズ・ニュー・サービス
(dj)、ニューヨーク株式取引所相場(tk)、ニュ
ーズ・ヘッドライン(nh)およびロイターズ・ニュー
・サービス(rt)を含む。図1には、これら放送サー
ピスからユーザ・プログラム24及び26までのデータ
の転送経路の一例が示されている。これらの転送経路
は、一旦テータ経路が設定されると、遠隔データベース
ヘのユーザ・プログラムからそれ以上のリクエストは何
ら必要とされないので、一方向のみとして示している。
他のデータサービスは、プロバイダの側でさらに複雑な
ロジックを必要とする。一次プロバイダが、前記サービ
スからのデータの分配によって過負荷とならないように
するために、追加のタスク38及び40とが設けられて
いる。
【0022】この例では、照会クラスのサービスからの
データの写しは、一次プロバイダにより照会プロバイダ
38に転送される。例えば、ダウ・ジョーンズの新たな
検索サービス(m)では、遠隔データベースは、ユーザ
によりデータベースに伝送される特定の識別子に関する
ニュース項目に対する特定の照会に応答する。照会プロ
バイダ58は、最初にユーザ・プログラムからこれらの
リクエストを受け取り、類似のリクエストがすでに保留
されているかを検出し、もし類似のリクエストが保留さ
れていないとすれば、リクエストを一次プロバイダを介
して遠隔データベースヘ転送する。前記サービスからの
全ての転送されたデータは、一次プロバイダ56により
照会プロバイダ58に向けられる。次に、照会プロバイ
ダは、これ自体の記録を調べてリクエストを行ったユー
ザ・プログラムを識別し、応答データを、正に前記のユ
ーザ・プログラムに転送する。図1に示す例において、
ユーザ・プログラム22のみがダウジョーンズの新検索
サービスを予約しているが、照会プロパイダの効用は、
他のユーザ・プログラムからの予約の増加および照会ク
ラスのサービスの数の増加に伴い増加する。
【0023】最後のクラスのサービスは、ホスト・コン
ピュータが識別記号により識別する情報に対する特定の
リクエストに基づしてデータをモニタする。遠隔データ
ベースは、その供給源から受け取られる際に全てのデー
タをモニタし、リクエストが保留されているデータを選
択する。次いで、前記データは、要求元のユーザに転送
される。このように、サービスのモニタ・クラスは照会
を開放しておく。モニタ・プロバイダは、ユーザ・プロ
グラムからリクエストを受け取り、照会プロバイダが行
ったのと同様に、リクエストを単に、すでに保留となさ
れていない遠隔データベースに進める。ほとんどの遠隔
データベースは、マルチユーザ・システムを単一のユー
ザと見倣し、データの特定アイテムをマルチユーザ・シ
ステムに伝送する。前記データが受信されると、モニタ
・プロバイダヘ導かれる。モニタ・プロバイダはその記
録を探索し、いずれのユーザ・プログラムがデータを要
求したかを検出し、データをそれらのユーザ・プログラ
ムに転送する。
【0024】市場モニタ・データは、圧縮されたフォー
マットに符号化される。一次プロバイダは、受信されつ
つあるデータが市場モニタリング・フォーマットである
ことのみを決定し、符号化されたフォーマットで前記デ
ータ(mm)の全てをモニタ・プロバイダ40に転送す
る。次いで、モニタ・プロバイダは、前記データを復号
化し、3種類のサービスの1つ又は複数として、要求し
ているユーザ・プログラムに導く。基本的な市場モニタ
リング・サービス(mm)は、特定の株式の各々の株価
変動に応答する。選定した相場サービス(sl)は、株
式の各取引に応答し、その取引の量と金額とを識別す
る。ブロック取引相場(bt)は、1万株を上廻る全て
の取引を識別する。ブロック取引は、実際には放送クラ
スのサービスであるが、市場モニタ・サービスを備えた
ホスト・コンピュータにより符号化されるので、モニタ
・プロパイダにより最も効率よく復号化される。さら
に、将来のブロック取引はさらに大きい選択的サービス
となることが期待される。図1に示すように、3種類の
サービスは全て遠隔のデータベースから受け取られた同
じデータの流れに依存するがユーザ・プログラムは3種
類のサービスの中の選択した分に個々に予約することが
できる。
【0025】照会クラスであるが、一次プロバイダが完
全に処理するサービスには株価相場(qt)サービスが
ある。ユーザは、株価相場を求めて迅速に受け取れるも
のと期待し、現在のシステムでは相場についての要求の
転送数と演算システムを介する戻りデータの数を最小に
することにより相場データの戻りを迅速にしやすくす
る。照会プロバイダを用いることに起因する、各方向で
の2種類の転送が排除される。一次プロバイダは、株式
相場リクエストを、該リクエストを一次プロパイダにお
いて識別するシーケンス・コードと共に伝送する。シー
ケンス・コードは、先入/先出し記憶装置における要求
ユーザ・プログラムの識別子と共に記憶される。遠隔デ
ータベースは、データを、それが要求されたと同じ順番
で戻し、同じシーケンス・コードをデータと共に戻す。
次いで、一次プロバイダは、シーケンス番号が適合する
限り、データをそれが先入れ/先出し記憶装置から識別
されるにつれて要求しているユーザタスクヘ戻す。シー
ケンス番号が戻りデータにおいてスキップされると、一
次プロバイダは、リクエストを再び行うか、又は、再び
リクエストを行うべきである旨をユーザ・プログラムに
通知することができる。
【0026】べーシック・ユーザ・プログラムにより、
ユーザは、予約しているサービスの範囲内で特定のリク
エストを行ったり、戻されたデータを適切に表示できる
ようになる。しかし、特定の必要性に特に適した独自の
プログラムをユーザが開発することを望むことが考えら
れる。事実、ユーザは、その極めて小さい部分として、
株式市場情報を得たいという必要性を有するプログラム
を開発することを望む可能性がある。年金マネジメント
・プログラムは、そのようなプログラムの一例であろ
う。過去においては、株式市場サービスやそれ以外のデ
ータベースからの情報の検索は、プログラマに対して柔
軟性をほとんど許容せず、カスタム・プログラムの遠隔
データベースヘの結合を困難又は不可能にしている。本
発明は、アプリケーション・プログラム・インターフェ
ース(API)を用いて、このような通信を容易にす
る。このAPIは、オペレーティング・システムの機能
を最大限に利用し、同時にユーザ・プログラムに要求さ
れるプログラミング作業を最小にすることにより、タス
ク間のデータ転送経路を設定しやすくするものである。
【0027】APIは、ユーザおよびプロバイダ・タス
クのどれにでも連結することができるサブルーチンのコ
ード・モジュールである。APIコード・モジュールが
ユーザ・プログラムに連結されると、プログラムは、サ
ブルーチンを単に呼び出してデータ転送経路を設定する
のみでよい。ユーザは、基礎となるオペレーティング・
システムの能力や要求については知っていることは必要
ない。それらについては、コード・モジュールの開発時
に既に考慮されているからである。さらに、ユーザ・プ
ログラムは、オペレーティング・システムの変動から遮
断される。システム設計者は、オペレーティング・シス
テムの変動を用いて、APIコード・モジュールを適当
に変更する。APIコード・モジュールは、ユーザ・プ
ログラムをオペレーティング・システムにインターフェ
ースする際に最大の利点を提供するが、プロバイダの背
景タスクをインターフェースするのにも用いられる。こ
の方法を用いると、システム設計者は、オペレーティン
グ・システムに変更を加える場合にはAPIコード・モ
ジュールを修正するだけでよく、背後のプロパイダ・タ
スクは修正する必要はない。
【0028】以下で述べる特定のAPIコード・モジュ
ールの別の利点として、メールボックスを作成してメッ
セージをそれらのメールボックスに転送する場合に、ウ
ォング(Wang)VSシステムのタスク間メッセージ(I
TM)機能を完全に利用することがある。ウォングVS
システムでは、タスクは、オペレーティング・システム
のPリストにおいてポートあるいはメールボックスをリ
スト化し、「それ自体を休眠」させることができる。本
発明によるシステムでは、これらのPリストは、API
コード・モジュールによりつくられる待機リストであ
る。オペレーティング・システムは、Pリストをモニタ
し、Pリストのポートにおいてメッセージが受信される
と、前記Pリストに関連したタスクを通知する。その結
果,タスク・プログラムは、プログラムがイベント(事
象)の発生を待機する際に動作し続ける必要はない。オ
ペレーティング・システムのこの特徴は、ユーザ・プロ
グラムからのデータ・リクエストをモニタする上でプロ
バイダ・タスクに対して、ホスト・コンピュータからの
データの受取りをモニタする上でユーザ・プログラムに
対して、特に有用である。このようなイベントはいつで
も発生しうる。
【0029】タスク間通信は、3種類のタイプのリスト
を設定することによって、APIコード・モジュールに
より効率的に処理される。図2及び図3は、一次プロバ
イダとユーザ2のための例示的なリストを示している。
APIコード・モジュールを介して通信する各タスク
は、APIルーチンを介して構成リストと待機リストと
を設定する。さらに、各プロバイダ・タスクは、それが
提供する各サービスに対する加入者リストを設定しう
る。
【0030】いずれかのデータ転送経路を設定する前
に、プロバイダあるいはユーザタスクは、まず一次プロ
バイダを介して構成リストを獲得する必要がある。構成
リストは、入手可能な各サービスに対するサービス・コ
ードを含む。更に、構成リストは、各サービスに対し
て、特定のタスクが(リストのPにより指示される)前
記サービスのプロバイダであるか否かを指示する。タス
クがプロバイダではない場合には、リストは、タスクが
サービスへのアクセスを有するか否かを指示する(イエ
スはYで、ノーはNで示す)。また、各クラスには、I
TMポート又はメールボックス・アドレスが提供され、
そこに、当該サービスを要求しているメッセージが転送
される。
【0031】ユーザがプロバイダヘのリクエストを完了
しうる前に、プロバイダは、その構成リストを検索して
しまわねばならない。リストに提供されるそのアクセス
及びプロバイダ・メールボックス情報に基いて、プロバ
イダは、オペレーティング・システムの待機リストにお
いてリクエストを受け取るべきメールボックスをリスト
化することにより特定のサービスに対してリクエストを
受け取るようプロバイダは設定されてくべきである。第
2図において、待機リストにおげる各サービスに対して
指示した使用可能状態は、一次プロバイダが待機リスト
の各サービスに対するリクエストを受け取る状態である
ことを示す。前述のように、待機リストはウォングのV
Sシステムアーキテクチャでのオペレーテイングシステ
ムのpリストである。一旦待機リストがAPIコードモ
ジュールを介して設定されると、プロバイダ・プログラ
ムは各サービスに対してメールボックスをモニタし続け
る必要はない。むしろ、この面到な仕事は待機リストに
よりオペレーティング・システムが取り扱う。
【0032】プロバイダは各サービスに対して加入者リ
ストを設定し、構成リストにおいて(第2図において*
で示す)各加入者リストの開始アドレスに対するポイン
タを含むことができる。
【0033】また、ユーザは、APIルーチンを介して
オペレーティング・システムの待機リストを設定する。
ユーザは、アクセスを有する各サービスに対してそれ自
体のユーザポートを含むことができる。次いで、前記ユ
ーザばプロバイダから戻されたデータに対するメールボ
ックスとして作用する。待機リストは、データを受け取
ることが予想されている各メールボックスを含む。待機
リストの各メールボックスは使用可’能状態あるいは取
消状態のいずれかにセットでき、オペレーティング・シ
ステムは使用可能のメールボックスに転送されたデータ
のタスクを通知するのみである。
【0034】サービスの予約をするには、ユーザはAP
Iルーチンにおける構成リストを探索し、プロバイダメ
ールボックスアドレスを獲得する。ルーチンを通して、
第5B図に示すように、次いで予約メッセージを構成
し、該メッセージを指定されたプロパイダメールボック
スに伝達する。次いで、ユーザはメッセージが受け取ら
れたユーザポートを介してオペレーティング・システム
により通知を受けるよう待機する。予約メッセージはオ
ペレーティング・システムによりプロバイダ・タスクメ
ールボックスに転送され、プロバイダ・タスクはメッセ
ージが受け取られずみであることが通知される。次い
で、プロバイダは予約リストを処理し、ユーザの復帰メ
ールボックスと、当該サービスに対する他のデータ該サ
ービスに対するプロバイダの加入者リストに位置させれ
ぱよい。前記の他のデータは加入者のワークステーショ
ンの番号、ユーザのI.D.とキーとを含む。
【0035】構成リストにおいて各サービスに対して独
特のプロバイダメールボックスを規定することにより、
当該システムは各ユーザ・プログラムが、ユーザが予約
している数種のサービスに対して独立してデータ経路を
設定できるようにする。ホストプロセッサはカストマ
(cutomer)として特定のユーザブロクラムを含
み、そのため特定のサービスに対してデータヘのアクセ
スを許容しうるが、ローカルシステム内においては、い
ずれかのユーザは予約に失敗したり、あるいは地のサー
ビスに影響を与えることなくいずれかのときにいずれか
のサービスに対する予約を取消しする可能性がある。そ
の結果、オペレーティング・システムを通る内部メッセ
ージトラフィックを最小にすることができる。ホストプ
ロセッサはローカルシステム内の加入者としてユーザの
状態を知らせておらず、そのため当該システム内の予約
と取消しとがユーザのカストマ状態に影響しない。
【0036】構成情報へのアクセスを迅速にするため
に、当該システムの各タスクに対して、明確な構成リス
トを発生する。各クラスは、オペレーティング・システ
ムを通して構成ファイルからそれ以上のデータの転送を
必要とすることなくそのリストヘのアクセスを効率的に
獲得することができる。しかし、全てのタスクに対して
グローバルなメモリが容易に得られるマルチタスクシス
テムにおいては、個々の構成リストは必要とされない。
むしろ、情報は中央ファイルから得ることができる。し
かし、各タスクは当該システムにより指定されたプロパ
イダメールボックスアドレスおよび各々の入手可能なサ
ービスに関する独自のアクセス情報に対して直ちにアク
セスを有することが重要である。
【0037】構成・待機および加入者リストならびにデ
ータを効率的に転送できるようにするAPIサプルーチ
ンの作成についてのさらに詳しい説明は以下の通りであ
る。遠隔データベースからの全ての情報を最初に受け取
るものとして、一次プロバイダ56は遠隔テータベース
からの転送に関するプログラムの開始のための中心的プ
ログラムとして選択されずみである。一次プロバイダの
開始処埋の一部として、CNFINITと称する構成開
始APTルーチンを呼出す。CNFINITはディスク
記億装置から構成ファイルを読取る。一次プロバイダは
また通信ラインを開始させる。ホストコンピュータ34
が、ラインが使用中であることを検出すると、下記する
ようにカストマ用にサービスリストを送出することによ
り応答する。一次プロバイダは遠隔データベースから
と、ディスク記憶装置とから受け取られた情報を統合し
て第4図に示す構成ファイルをつくる。
【0038】構成ファイルの第1のアイテムは、データ
転送に含まれるべき各タスクに対するキーである。実
際、キーとは、各タスクの構成記録のための論理的な名
称である。キーPRIPRO、INQPRO及びMON
PROは、一次プロパイダ、照会プロバイタ及びモニタ
・プロバイダに対してそれぞれ与えられた名称である。
別のキーであるADMINは、システムの特定の必要性
に対して要求される場合には、事務管理プログラムの実
行を可能とする。そのようなプログラムは、キーの指定
と、特定のタスクとワークステーションとによるサービ
スヘのアクセスとを制御することができる。
【0039】ファイルの最初の4個のキーに関連したプ
ログラムは、典型的には背景で動作するプロバイダ・プ
ログラムである。更に、追加的な3つのキーであるUS
ER1、USER2及びUSER3が、図1に示す3個
のユーザ・プログラムの各々に対して指示されている。
もちろん、このシステムは、これら3つのユーザ・プロ
グラムに限定されるものではない。これらのプログラム
は、典型的には加入者であって、前面(foreground)に
おいて演算したり、しなかったりする。
【0040】端末IDフイールドは、遠隔データベース
がシステムにおいて各ユーザを知るための識別子であ
る。データベースは、特定のサービスに対する権利を与
え、端末ごとに識別を行ってそれらのサービスに対して
課金する。ユーザタスクだけは端末のIDを必要とする
のであるが、その理由は、データの唯一の真正な消費者
であるからである。供給者は、遠隔データベースの単な
る延長と考えることができ、端末IDを必要としない。
また、端末IDは、代替的なキーとしても作用する。遠
隔テータベースは、第1のキーを知ることはなく、端末
IDによってタグが付されたその構成記録を送る。端末
IDは、カスタマ(顧客)が新たな又は拡大したサービ
スを要求するときには、遠隔データベースから割り当て
られる。
【0041】各タスクが初期化されると、タスク番号
が、キーと共に、一次プロバイダに送られる。状態フィ
ールドはキーが使用されているか否か指示し、使用され
ている場合には、関連のタスクが使用されているワーク
ステーション番号も指示する。状態フィールドは、背景
でタスクが作動していることを指示しうる。ワークステ
ーション・フィールドは事務管理プログラムによって使
用され、所定のキーと対応する特権とを使用することが
できるワークステーションを限定する。キーは、図4に
星印(アステリスク)によって示されているワークステ
ーションのリストからのものに、又は、そのリストに制
限しうる。
【0042】図4の下側には、サービス・フィールドが
展開されている。このフィールドのリストは、各キーに
対して、定義されているサービスのそれぞれに関して、
関連するプログラムの役割を定義する。プログラムは、
与えられたサービスに関して3種類の役目のいずれかを
有しうる。それは完全な予約特権(Y)を有することが
できる。サービス(P)のプロバイダであったり、サー
ビスに対して何ら権利がない(N)こともありうる。遠
隔データベースによって与えられる加入者の権利は、許
容された予約にはyで示し、否定された予約にはnで指
示され、ローカルな事務管理プログラムによりオーバル
ールできる。プロバイダの役目は、システム設計者によ
り定義される。
【0043】CFNINITの間は、一次プロバイダ3
6もまた、ディスク記憶装置からプロバイダ・メールボ
ックス・ファイルを獲得する。各サービスに対するプロ
バイダ・メールボックスは、図2及び図3に示されてい
るように、後で、各タスクの各構成リストに含まれる。
プロバイダ・メールボックス・ファイルと構成リストと
からの情報を用いて、一次プロバイダは、APIコード
・モジュールを用いている各タスクが用いるべき構成リ
ストのプロトタイプを構築する。プロトタイプの構成リ
ストは、定義されたサービスそれぞれに対して1個の記
録を含み、各記録は、サービスのプロバイダのメールボ
ックスを含む。このメールボックスは、ITMポート名
である。
【0044】構成ファイルとプロトタイプ構成リストと
を手元において、一次プロバイダは、SCLINITを
呼び出すことによって、独自のパーソナル構成リストを
発生させる。そのキーPRIPROを提供することによ
り、一次プロバイダは、プロトタイプリストに基づき、
各サービスに対して構成ファイルからアクセスコード
P、Y又はNを取り出し、その構成リストを獲得する。
構成リストのサービスに対してPが指示される場合に
は、プロバイダは、メールボックスとして、構成リスト
において指示されるプロバイダ・メールボックスを設定
する。また、プロバイダは、各サービスに対して加入者
リストを設定し、現在のリストサイズを零にセットす
る。更に、プロバイダ・プログラムにより設定される各
メールボックスは、待機リストとして作用するタスクに
対して、APIサブルーチンによりオペレーティング・
システムのpリストに配置される。待機リストにおける
各プロバイダのメールボックスに対する待機状態は、使
用可能状態にセットされる。最後に、一次プロバイダ・
プログラムは、APIルーテンSCLWAITを呼び出
し、それによりオペレーティング・システムに対して、
待機リストの使用可能なメールボックスのいずれかにお
いてメッセージが受け取られたとの指示を待機するよう
に告知する。
【0045】一次プロバイダが初期化されると、その他
のタスクも初期化される。このために、各タスクは、A
PIルーチンSCLINITを呼び出すことによって、
オペレーティング・システムの待機リストを設定する。
図3に示されるように、待機リストは、最初、3個の偽
似サービスである、エマージェンシー(em)、ワーク
ステーション(WS)およびタイマ(tm)を含むこと
ができる。エマジェンシー・ポートは、待機リストの高
優先順位において、タスクが緊急メッセージを受け取る
ことができるようにする。ワークステーション・サービ
スは、ユーザ・プログラムが、APIコード・モジュー
ルにより設定された待機リストを利用してワークステー
ションのターミナルにおいて発生予定のイベントを待機
することを可能にする。この偽似サービスにより、ユー
ザ・プログラムは、例えばキー・ストロークのようなイ
ベントがターミナルで発生するのを待機する間、データ
の受取りを遅らせる必要はない。最後に、タイマの偽似
サービスによって、プログラムが、待機リストを介して
タイマをセットすることが可能になる。そのため、ユー
ザ・プログラムが他のイベントの発生を待機する時間を
制限できることが可能になる。
【0046】SCLINITルーチンの間、タスクはま
た、システムのサービスを予約するのに必要な情報を提
供する構成リストを獲得する。タスクは、その構成リス
トを一次プロバイダ・タスクから獲得し、そのために、
APIサブルーチンは、すべてのタスクがこれに従って
構成データのユーザとして構成される、デフォルトのミ
ニ構成リストを有する。ユーザは、メールボックス「c
fcf」を介して一次プロバイダに構成データを予約す
る。
【0047】構成予約メッセージが一次プロバイダのメ
ールボックス「cfcf」に達すると、オペレーティン
グ・システムは、SCLWAITルーチンにおいて、一
次プロバイダを喚起する。メールボックス「cfcf」
における構成テータ用予約メッセージに応答して、一次
プロバイダは、予約メッセージに提供されたユーザ・キ
ーを用いて構成ファイルの適当な記録を獲得し、プロト
タイプの構成リストのコピーに、そのキーに対する各サ
ービスへの適当なアクセスコードを付す。一次プロバイ
ダは、カスタム化した構成リストを予約メールボック
ス、例えぱ20cfまで戻し、マスター構成ファイルを
更新して特定のキーが使朋されていることを指示する。
【0048】SCLINITルーチンを個別に使用する
ことにより、各タスクは完成な構成リストと、空である
が、エマジェンシイ、ワークステーションおよびタイマ
についての偽似サービス用の待機リストとを有すること
ができる。第1図に示すデータ経路はまだ設定されてい
ない。経路を設定するために、各プロバイダはルーチン
PRVOPENを呼出し、該ルーチンにより、初期は空
である加入者リストを設定する。自動的にPRVOPE
Nの間双方のプロバイダ・タスクと予約者タスクとはル
ーチンSCLOPENを呼出す。ルーチンSCLOPE
Nを呼出す。ルーチンSCLOPENにより、プロバイ
ダ・タスクはサービスが構成リストに指示されたものに
対して開放されるようそのメールボックスをセットし、
かつ予約者タスクはメールボックスを、例えば第3図の
20gtのようにタスク数とサービス・コードを加えた
ものにセットする。前記サービスに対する特定のタスク
により受け取られる将来のいずれのメッセージも、指定
されたメールボックスにおいて受け取られる。
【0049】あるタスクは、あるサービスに対する加入
者及び他のサービスのプロバイダとして作用しうる。例
えば、モニタ・プロバイダは、市場モニタリングサービ
スMMに対する加入者および、市場モニタリングサービ
スmm、選択柑場サービスおよびブロック取引サービス
btのプロバイダとして作用する。同様に、照会プロバ
イダはニュース検索サービスNRへの加入者および、分
配されたニュース検索サービスntのプロバイダであ
る。個々のSCLOPENルーチンを各サービスに対し
て呼び出す必要がある。
【0050】SCLOPENルーチンにおいては、メー
ルボックスは前記タスクに対して待機リストに位置され
るが、「否定」にセットされる。次いで、プロバイダ・
タスクはSCLLISTENを取り出すことにより、待
機リストの特定のメールボックスは使用可能状態にセッ
トされる。加入者タスクは、典型的にはまずルーチンS
CLSUBSCRIBEを呼び出す。前記ルーチンによ
り予約者は第5B図に示すように予約メッセージを構築
し、該予約メッセージを、その構成リストから得たプロ
バイダメールボックスに伝送する。加入者メッセージは
加入者における当該サービスのための戻りメールボック
スと、該メッセージが加入者か、あるいは取消し用かを
示すフラグとを含む。前記メッセージはまた、タスク番
号、ユーザID及びユーザのキーとを含む、プロバイダ
は加入者を、前記サービスに対する加入者リストに追加
することにより前記メッセージに応答する。次いで、加
入者は典型的にSCLLISTENを入力することによ
り待機リストの関連のメールボックスが使用可能状態に
セットされる。
【0051】プロバイダにより加入者メールボックスに
戻されたデータは、そのときメールボックスに介在のい
ずれの情報をもユーザが獲得するAPIルーチンSCL
READを入力することにより読み取ることができる。
しかし、通常、ユーザはルーチンSCLWAITを入力
し、そのために使用中のメールボックスのいずれかにお
いてイベントが発生するとオペレーティング・システム
に信号を送りその旨通知する。
【0052】一旦ユーザがサービスを予約すると、AP
IコードモジュールにおけるSCLSEINDルーチン
によりプロバイダを介して遠隔データベースの特定のリ
クエストを行うことができる。このルーチンを用いるこ
とにより、ユーザ・プログラムは第5A図に示すように
メッセージを発生する。第5A図はサービスと、特定の
サービスとリクエストとに対して適したフラッグとメッ
セージとを含む。SCLSHNDの下で、プロバイダの
メールボックスは加入者の構成リストから獲得され、か
つメッセージが送られる。メッセージはプロバイダによ
り処埋され、照会プロバイダあるいはモニタプロバイダ
の場合、プロバイダは一次プロバイダに伝送されもかつ
遠隔データベースに伝送されるべき独自のメッセージを
発生させる。一次ブロバィドヘのメッセージはSCLO
PENとSCLSUBSCRIBEルーチンを介して、
先に設定された経路を送られる。
【0053】最後に、データがホストブロセッサ34か
らプロバイダにより受け取られると、プロバイダはその
データを予約しているユーザに送る必要がある。プロバ
イダはPRVSENDルーチンを呼出すことにより、プ
ロバイダが特定のサービスに対する予約リストを参曜、
し、送入されたデータを加入者に送る。代替的に、モニ
タのようなプロバイダは独自の内部リストを介してデー
タを伝送する必要のあるメールボック久を検出すること
ができる。
【0054】これまで説明したルーチンの他に、例えぱ
Sclinitの逆であるSCLTRM、SCLSUB
SCRIBEの逆であるSCLCACEL、SCLLI
STENの逆であるSCLIGNORE、およびSCL
CPENの逆で歩るSCLCLOSEのような逆ルーチ
ンかある。
【0055】付加的な機能SCLLISTによってユー
ザが多数のユーザが規定するイベントをSCLWAIT
が使亀する待機リストに追加できるようにする。ワーク
ステーション偽似サービスのようなこの偽似サービス
(US)によつて、入来データの受取りが遅れる可能性
のある励の待機処理をユーザ・プログラムが排除できる
ようにする。
【0056】モニタプロバイダ・タスクの詳細説明を第
6図から第8図までに関して以下提供する。モニタプロ
バイダは市場モニタ、選択相場およびブロック取引サー
ビスの各々に対する加入者リストを保存する必要がある
のみならず、ホストにより特定市場コードをモニタすべ
き旨の特定のリクエストを転送し、ホストから受け取っ
たデータが適正に分配できるように予約者リストを要求
されたコードに相関させる必要がある。その目的に対し
て、モニタプロバイダは第6A図に示す記号ツリーと、
第7A図に示すユーザツリーに依存する。各ツリーは2
進スレデイッド(threaded)ツリーであって、
結合されたリストに対するポインタを付加的に含む。
【0057】記号ツリーの場合、スリーの各ノードは、
モニタされつつある特定のセキュリティ(機密、証券)
への識別子として作用する記号を識別する。ツリーの各
ノードは、前記記号に対して情報を要求ずみのユーザの
結合されたリストを指向する。ユーザ・ツリーにおいて
は、ツリーの各ノードは、モニタ・プロバイダからのサ
ービスのいずれかに対する加入者を識別し、各ノード
は、当該ユーザに対してモニタされつつある記号の結合
されたリストを指向する。各ユーザ・ノードに結合され
たリストにおける各記号に対しては、記号ツリーには、
対応する記号のノードがある。
【0058】ユーザ・ツリーは、付加的なユーザ・タス
クがモニタ・プロバイダ・サービスを予約するにつれて
生長する。信号ツリーは、各サービス内の特定リクエス
トの数が増加するにつれて、生長する。各々の場合に、
予約すべき最初のユーザ又は要求されるべき最初の信号
は、ツリーの根元(ルーツ)として作用する。その後
で、新しいノードのアルファベット値が低位か高位かに
よって、先行ノードの左側又は右側に追加のノードが追
加される。このように、アルファベット的に記号ツリー
の根元で記号MMM.Nに先行するすべての記号が、ツ
リーの左側で見い出される。2進ツリーを使用すること
により、特定のアイテムを求めてリストをサーチするの
に要する時間が、著しく短縮される。20人のユーザ
や、1ユーザ当たり50の記号がツリーにリスト化され
る場合に、このサーチ時間は特に重要である。
【0059】記号ツリーの各ノードは、図6Bに列挙さ
れている情報を含む。各ノードは、セキュリティ記号
と、そのセキュリティが取引される条件と、ホストから
受け取った前記セキュリティに対する直近の価格とを含
む。更に、前記ノードに結合したユーザ・リスト上のエ
ンド・ユーザヘのポインタも含まれている。結合された
リストのそれぞれへの及びそのようなリスト内ポインタ
は、図6Aでは、点線の矢印で示されている。結合され
たリストは、リストヘのノードの追加と、リストからの
削除とを容易にするように、二重に結合されている。各
ノードの左右の子に対するポインタが、そのノードの親
に対するポインタと共に設けられている。これらのポイ
ンタは、図6Aでは、実線の矢印で示す。ポインタによ
る親へのツリーのスレディング(threading)により、
記号を追加する又は削除する場合のツリーの再構成が簡
略化される。結合されたリストの各ユーザノードは、特
定のユーザがそれにより記号を要求したサービスを含
む。各記号ノードに含まれるサービス・マインディング
(service minding)表は、その結合されたユーザリス
トに含まれるサービスの全てを識別する。
【0060】ユーザ・リストの各ユーザ・ノードは、図
7bに示されている情報を有する。各ノードは、ルーチ
ンSCLSUBSCRIBEでの加入者の予約メッセー
ジにおいて識別されたリターン・メールボックスと、ユ
ーザのターミナルIDと、ユーザのキーとを含む。更
に、各ノードは、そのノードに関連した記号リストヘの
ポインタと、ノードの子及び親へのポインタとを含む。
更に、ユーザ・ノードは、それ自体のサービス・マイン
ディング表を含む。このマインディング表には、特定の
ユーザが予約したサービスがすべてリスト化されてい
る。図7Aのユーザ7によって図解されているように、
特定のユーザは、ユーザ・ノードを有することが保留中
の特定の記号リクエストを有することは必要ない。
【0061】ユーザがSCLSUBSCRIBEを介し
てサービスを予約すると、モニタ・プロバイダは、ユー
ザ・ツリーを走査して、ユーザ・ノードがそのタスクに
対して既に設定されているかどうかを判断する。設定さ
れている場合には、タスクが予約している新しいサービ
スがサービス・マインディング表に追加される。設定さ
れていない場合には、新しいノードがツリーに対する葉
として追加される。
【0062】その後で、SCLSENDルーチンによ
り、タスクは、そのサービスに対して特定の記号がモニ
タされることを要求することができる。ツリーに記号を
追加する前に、ホスト・プロセッサにリクエストが送信
され、価格という形式で肯定応答をホストから受け取ら
れなければならない。同じサービス内の同じ記号が先に
要求されていなかった場合には、リクエストは、ホスト
・プロセッサに送信されるだけである。この判断を行う
には、モニタ・プロバイダは、まず、要求されるべき記
号に対する記号ツリーを走査する。プロバイダが記号の
位置を特定した場合には、サービスマインディング表を
検査して、希望するサービスに対して記号が要求された
か否かを判断する。記号及びサービスが記号ツリーにお
いて見つかる場合には、ユーザは、記号ノードに対する
結合したユーザ・リストに追加され、記号は、ユーザ・
ノードの結合した記号リストに追加される。しかし、記
号及びサービスが記号ツリーに位置していない場合に
は、ホストへのリクエストがなされる。
【0063】ホストへのリクエストがなされるときに
は、そのリクエストにはシーケンス番号が与えられ、こ
のシーケンス番号は、リクエストと共に伝送される。ホ
ストは、先入れ/先出し方式でリクエストを肯定応答
(アクノレッジ)し、シーケンス番号を戻す。肯定応答
が受け取られたかどうかを判断するために、要求された
記号は、図8に示されている追加保留中の待ち行列の中
に配置される。この待ち行列の各ノードは、要求される
べき次に続く記号を指す。シーケンス番号は、要求され
た記号と共に含まれる。更に、待ち行列の各ノードは、
リストに含まれる可能性のあるユーザ・ノードを指す。
【0064】肯定応答が受け取られると、記号ノードは
待ち行列から除去され、ユーザ・ノードに対するポイン
タは記号ツリーにおけるその記号のノードに転送され
る。記号がツリーにおいてすでにノードを有していない
場合には、ノードか設定される。さらに、ユーザ・ツリ
ーにおける結合された記号リストの中のノードが、特定
のユーザに追加される。
【0065】肯定応答シーケンス番号が乱れて受け取ら
れると、システムは、飛ばされたリクエストは不首尾で
あったものと想定し、新しいリクエストを同じ記号に対
して伝送する。記号は、新しいシーケンス番号と共に、
追加保留中の待ち行列の端に配置される。また、カウン
タが刻時される。このカウンタによって、肯定応答され
ていない記号に対してエンドレス・ループのリクエスト
がなされることを回避するために、リクエストが3回だ
け再伝送されることが可能となる。
【0066】サービスから記号を削除するようにユーザ
が要求すると、ユーザ・ツリーが走査されてユーザの位
置が特定され、その記号が、結合されたリストから削除
される。次いで、記号ツリーがその記号に関して走査さ
れ、その結合されたリストからユーザが除外される。さ
らに、結合されたリストが走査されてユーザの位置が特
定され、そのユーザが、特定のサービスに対する前記信
号を含む最後のものであるかどうかが判断される。そう
である場合には、当該サービスは、記号ノードマインデ
ィング表から取り除かれる。その後、記号ツリーを走査
して特定のサービスが信号に関して保留されているかど
うかを判断する際には、マインディング表は更新ずみで
あるから、結合されたユーザ・リストを走査することは
必要ない。削除されたユーザが結合されたユーザ・リス
トにおける最後のノードである場合には、記号ツリーか
らノードが完全に削除される。また、削除リクエスト
が、ホストプロセッサに送られる。
【0067】削除リクエストがホストによって適正に受
け取られて処理されることがない場合には、システム
は、将来において、分配されることをホストが期待する
更新情報を将来受け取ることがありうる。記号ツリーを
走査して前記データのユーザの位置を特定する際に、対
応する信号ノードの位置が特定されることはない。その
ような場合には、削除リクエストは、再びホストブロセ
ッサに送られる。
【0068】ホストから情報が受け取られるときに記号
が記号ツリーの中に見つかる場合には、結合されたユー
ザ・リストが走査されて、特定のデータを受け取るべき
ユーザが識別される。データは、ユーザ・ツリーを走査
することによって決定される適当なメールボックスにお
けるこれらのユーザに送られる。
【0069】ユーザ・プログラムがSCLCANCEL
ルーチンを呼び出し、取消メッセージをモニタ・プロバ
イダに送るときには、そのユーザに関連する記号の記号
ツリーをクリアするために、ユーザ・ツリーが要求され
る。ルーチンからメッセージを受け取ると、ユーザ・ツ
リーがそのユーザを求めて走査され、結合した記号リス
トを走査することにより、記号が識別される。次いで、
記号ツリーがこれらの記号を求めて走査され、ユーザ
は、結合されたユーザリストから除去される。再び、ユ
ーザがその記号に結合されるべき最後のユーザである場
合には、記号は記号ツリーから除去され、削除リクエス
トがホストまで送られる。
【0070】ブロック取引記号btはサンプル・ツリー
のいずれにも含まれていないことが注目できる。その埋
由は、ブロック取引サービスが放送(ブロードキャス
ト)サービスであるためである。ブロック取引サービス
は、市場モニタ・データを用いて符号化されるために、
モニタ・プロバイダだけによって処理される。しかし、
放送サービスとして、ブロック取引は、ユーザを加入者
リストに追加するAPIルーチンPRVSUBSCRI
BEと、データをリスト化されたユーザに分配するPR
VSENDとによって、簡単に処埋される。
【0071】以上では、本発明を好適実施例を用いて示
し説明したが、この技術分野の専門家であれば、特許請
求の範囲に規定した本発明の精神と範囲とから逸脱する
ことなく、形態や細部において各種の変更が可能なこと
を理解することができるであろう。例えば、本発明は、
基本的には、1つの処埋ユニットにおいて複数のタスク
が実行されるマルチタスク・システムに関するものであ
るが、これらのタスクを、本発明のある種の特徴を依然
として含めながら、他の処理ユニットに分配することが
できる。更に、本発明は、非市場データへの応用も有し
ている。
【図面の簡単な説明】
【図1】本発明を実施したシステムのソフトウエア・ア
ーキテクチャのブロック図である。
【図2】図1に示すシステムの適用プログラム・インタ
フェース(API)の共通コード・モジュールによりプ
ロバイダ・タスクメモリに記憶した構成リスト、待機リ
ストおよび加入者リストを示す図である。
【図3】APIによりユーザ・タスクメモリに記憶され
た構成リストと待機リストとを示す図である。
【図4】一次プロバイダのタスクによりAPIを介して
検索される構成ファイルを示す図である。
【図5】図5A及び図5Bで構成され、APIにより転
送されるメッセージのメッセージ・フォーマットを示す
図である。
【図6】図6A及び図6Bで構成され、図1に示すモニ
タ・プロバイダにおける記号ツリーのデータ構造を示す
図である。
【図7】図7A及び図7Bで構成され、モニタ・プロバ
イダにおけるユーザ・ツリーのデータ構造を示す図であ
る。
【図8】モニタ・プロバイダにおける追加保留中の待ち
行列を示す図である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ダイアナ・ワイ・モーイ アメリカ合衆国マサチューセッツ州01778, ウェイランド,オールド・ファーム・ロー ド 6

Claims (18)

    【特許請求の範囲】
  1. 【請求項1】 種々のタイプのデータを受け取る手段を
    有するマルチタスク・データ処理システムにおいて、プ
    ロバイダ・タスクからのデータを当該データを申し込ん
    でいる複数のユーザ・タスクに分配する方法であって、 各ユーザ・タスクに結合された共通コード・モジュール
    により、前記プロバイダ・タスクと前記ユーザ・タスク
    との間で、単一のユーザに対して転送されるタイプのデ
    ータに特定のデータ経路を設定するステップと、 前記プロバイダ・タスクにより、遠隔データベースから
    のデータの流れを前記データのタイプに従って複数のデ
    ータの流れに分割し、前記複数のデータの流れを前記設
    定されたデータ経路を介して前記ユーザ・タスクへ転送
    するステップと、 を含むことを特徴とするデータ分配方法。
  2. 【請求項2】 請求項1記載の方法において、オペレー
    ティング・システムにおいて前記共通コード・モジュー
    ルを介して設定された待機リストにより、データの各タ
    イプに関してユーザ・タスクへのメールボックスをモニ
    タし、前記ユーザ・タスクに対して当該ユーザ・タスク
    に転送されつつあるデータを通知するステップを更に含
    むことを特徴とする方法。
  3. 【請求項3】 請求項2記載の方法において、データ経
    路を設定する際に、各ユーザ・タスクに対して構成ファ
    イルから構成リストを発生するステップを更に含んでお
    り、各構成リストは、各タイプのデータに対するリクエ
    ストを転送すべきプロバイダ・タスク・メールボックス
    の名前と、前記タスクが特定タイプのデータへのアクセ
    スを有するか否かの指示と、を含むことを特徴とする方
    法。
  4. 【請求項4】 請求項3記載の方法において、各構成リ
    ストは前記タスクが他のタスクへのデータのプロバイダ
    であるか否かを指示し、前記共通コード・モジュールの
    プロバイダの特定ルーチンをプロバイダ・タスクに制限
    するステップを更に含むことを特徴とする方法。
  5. 【請求項5】 請求項3記載の方法において、オペレー
    ティング・システムにおいて前記共通コード・モジュー
    ルを介して設定された待機リストにより、データの各タ
    イプに関してプロバイダ・タスクへのメールボックスを
    モニタし、前記プロバイダ・タスクに対して当該プロバ
    イダ・タスクに転送されつつあるデータを通知するステ
    ップを更に含むことを特徴とする方法。
  6. 【請求項6】 請求項5記載の方法において、各プロバ
    イダ・タスクに対して構成ファイルから構成リストを発
    生するステップを更に含んでおり、各構成リストは、各
    タイプのデータに対するリクエストを転送すべきプロバ
    イダ・タスク・メールボックスの名前を含むことを特徴
    とする方法。
  7. 【請求項7】 請求項5記載の方法において、少なくと
    も前記プロバイダ・タスクにおいて、各タイプのデータ
    に対して当該タイプのデータを受け取るべきタスクを識
    別する予約リストを発生するステップを更に含むことを
    特徴とする方法。
  8. 【請求項8】 請求項2記載の方法において、オペレー
    ティング・システムにおいて前記共通コード・モジュー
    ルを介して設定された待機リストにより、データの各タ
    イプに関してプロバイダ・タスクへのメールボックスを
    モニタし、前記プロバイダ・タスクに対して当該プロバ
    イダ・タスクに転送されつつあるデータを通知するステ
    ップを更に含むことを特徴とする方法。
  9. 【請求項9】 請求項1記載の方法において、前記プロ
    バイダ・タスクにおいて、各タイプのデータに対して当
    該タイプのデータを受け取るべきタスクを識別する予約
    リストを発生するステップを更に含むことを特徴とする
    方法。
  10. 【請求項10】 請求項1記載の方法において、データ
    経路を設定する際に、各ユーザ・タスクに対して構成フ
    ァイルから構成リストを発生するステップを更に含んで
    おり、各構成リストは、各タイプのデータに対するリク
    エストを転送すべきプロバイダ・タスク・メールボック
    スの名前と、前記タスクが特定タイプのデータへのアク
    セスを有するか否かの指示と、を含むことを特徴とする
    方法。
  11. 【請求項11】 請求項1記載の方法において、前記デ
    ータ経路は、共通コード・モジュールのルーチンによっ
    て、前記共通コード・モジュールのルーチンに対して利
    用可能なシステム構成情報に基いて設定され、前記ルー
    チンは、前記プロバイダ・タスク・アーキテクチャに関
    係なくユーザ・タスクにより呼び出されることを特徴と
    する方法。
  12. 【請求項12】 請求項1記載の方法において、前記構
    成情報は、各タイプのデータに対するリクエストを転送
    すべきプロバイダ・タスク・メールボックスの名前と前
    記タスクが特定タイプのデータへのアクセスを有するか
    否かの指示とを含む構成リストを介して入手可能である
    ことを特徴とする方法。
  13. 【請求項13】 請求項2記載の方法において、プロバ
    イダ・タスクからのデータ転送以外に前記ユーザによっ
    て特定されるイベントを、前記待機リストに含ませるス
    テップを更に含むことを特徴とする方法。
  14. 【請求項14】 請求項1記載の方法において、第1の
    タイプのデータの流れは、前記データの流れの中味によ
    って特定のユーザ・タスクへ転送され、第2のタイプの
    データの流れは、ユーザ・タスクのリストから全てのユ
    ーザ・タスクまで転送されることを特徴とする方法。
  15. 【請求項15】 種々のタイプのデータを受け取る手段
    を有するマルチタスク・データ処理システムにおいて、
    プロバイダ・タスクからのデータを当該データを申し込
    んでいる複数のユーザ・タスクに分配する方法であっ
    て、 前記ユーザ・タスクからのコールに応答して、前記プロ
    バイダ・タスクと前記ユーザ・タスクとの間で、単一の
    ユーザに対して転送されるタイプのデータに特定のデー
    タ経路を設定するステップと、 前記プロバイダ・タスクにより、遠隔データベースから
    のデータの流れを前記データのタイプに従って複数のデ
    ータの流れに分割し、前記複数のデータの流れを前記設
    定されたデータ経路を介して前記ユーザ・タスクへ転送
    するステップと、 を含むことを特徴とするデータ分配方法。
  16. 【請求項16】 請求項15記載の方法において、デー
    タ経路を設定する際に、前記プロバイダ・タスクと前記
    ユーザ・タスクとのそれぞれに対して構成ファイルから
    構成リストを発生するステップを更に含んでおり、各構
    成リストは、各タイプのデータに対するリクエストを転
    送すべきプロバイダ・タスク・メールボックスの名前
    と、前記タスクが特定タイプのデータへのアクセスを有
    するか否かの指示と、を含むことを特徴とする方法。
  17. 【請求項17】 請求項16記載の方法において、オペ
    レーティング・システムに設定された待機リストによ
    り、データの各タイプに関して前記プロバイダ・タスク
    へのメールボックスをモニタし、ユーザ・タスクからの
    及びユーザ・タスクへのリクエストを識別して、前記ユ
    ーザ・タスクに転送されつつあるデータを識別するステ
    ップを更に含むことを特徴とする方法。
  18. 【請求項18】 請求項15記載の方法において、オペ
    レーティング・システムに設定された待機リストによ
    り、データの各タイプに関して前記プロバイダ・タスク
    へのメールボックスをモニタし、ユーザ・タスクからの
    及びユーザ・タスクへのリクエストを識別して、前記ユ
    ーザ・タスクに転送されつつあるデータを識別するステ
    ップを更に含むことを特徴とする方法。
JP2000324622A 1986-09-03 2000-10-24 データ分配方法 Expired - Lifetime JP3247891B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/903,495 US4815030A (en) 1986-09-03 1986-09-03 Multitask subscription data retrieval system
US903495 1986-09-03

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP62221167A Division JP3141943B2 (ja) 1986-09-03 1987-09-03 データを分配する方法とデータ構造

Publications (2)

Publication Number Publication Date
JP2001188742A true JP2001188742A (ja) 2001-07-10
JP3247891B2 JP3247891B2 (ja) 2002-01-21

Family

ID=25417593

Family Applications (2)

Application Number Title Priority Date Filing Date
JP62221167A Expired - Lifetime JP3141943B2 (ja) 1986-09-03 1987-09-03 データを分配する方法とデータ構造
JP2000324622A Expired - Lifetime JP3247891B2 (ja) 1986-09-03 2000-10-24 データ分配方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP62221167A Expired - Lifetime JP3141943B2 (ja) 1986-09-03 1987-09-03 データを分配する方法とデータ構造

Country Status (6)

Country Link
US (1) US4815030A (ja)
EP (1) EP0258867B1 (ja)
JP (2) JP3141943B2 (ja)
AU (1) AU595354B2 (ja)
CA (2) CA1292324C (ja)
DE (1) DE3750941T2 (ja)

Families Citing this family (113)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5230048A (en) * 1986-09-03 1993-07-20 Wang Laboratories, Inc. Data processing system with tree and list data structure
US5001666A (en) * 1987-10-19 1991-03-19 Motorola, Inc. Multiple interrupt tri-level microprocessor operating system
US5079695A (en) * 1988-04-25 1992-01-07 Hewlett-Packard Company Object management facility which includes a snapshot facility for providing data transfer between two objects
US5276866A (en) * 1988-07-19 1994-01-04 Michael Paolini System with two different communication mediums, transmitting retrieved video and compressed audio information to plural receivers responsively to users' requests
US5838917A (en) * 1988-07-19 1998-11-17 Eagleview Properties, Inc. Dual connection interactive video based communication system
US5361390A (en) * 1988-11-29 1994-11-01 International Business Machines Corporation Method for displaying and confirming the status of deferred system requests
JPH02195453A (ja) * 1989-01-25 1990-08-02 Toshiba Corp ファイルアクセス制御方式
US5297283A (en) * 1989-06-29 1994-03-22 Digital Equipment Corporation Object transferring system and method in an object based computer operating system
US5557798A (en) * 1989-07-27 1996-09-17 Tibco, Inc. Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes
US5187787B1 (en) * 1989-07-27 1996-05-07 Teknekron Software Systems Inc Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes
US5257369A (en) * 1990-10-22 1993-10-26 Skeen Marion D Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes
US6044205A (en) * 1996-02-29 2000-03-28 Intermind Corporation Communications system for transferring information between memories according to processes transferred with the information
US5434981A (en) * 1989-09-28 1995-07-18 Rockwell International Corporation Functionally programmable PCM data analyzer and transmitter for use in telecommunication equipment
JP3169597B2 (ja) * 1990-05-16 2001-05-28 エヌイーシーソフト株式会社 マルチタスク実行時間アカウント方法とその機構
US5144557A (en) * 1990-08-13 1992-09-01 International Business Machines Corporation Method and system for document distribution by reference to a first group and particular document to a second group of user in a data processing system
WO1992004679A1 (en) * 1990-08-31 1992-03-19 Seer Technologies, Inc. Transaction processor
US5404488A (en) * 1990-09-26 1995-04-04 Lotus Development Corporation Realtime data feed engine for updating an application with the most currently received data from multiple data feeds
US5333318A (en) * 1990-09-27 1994-07-26 Motorola, Inc. Creating and searching a quad linked list in a trunked communication system
US5132900A (en) * 1990-12-26 1992-07-21 International Business Machines Corporation Method and apparatus for limiting manipulation of documents within a multi-document relationship in a data processing system
US5263167A (en) * 1991-11-22 1993-11-16 International Business Machines Corporation User interface for a relational database using a task object for defining search queries in response to a profile object which describes user proficiency
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US5317695A (en) * 1992-04-03 1994-05-31 International Business Machines Corporation Method and system for permitting communication between a data processing system and input pointing devices of multiple types
JPH0668144A (ja) * 1992-08-14 1994-03-11 Fujitsu Ltd 電子ニュース翻訳配送装置
JPH06110925A (ja) * 1992-09-28 1994-04-22 Hitachi Ltd ネットワークで接続された計算機とその利用方法
US5504874A (en) * 1993-09-29 1996-04-02 Silicon Graphics, Inc. System and method of implementing read resources to maintain cache coherency in a multiprocessor environment permitting split transactions
GB2345157B (en) 1998-12-23 2003-06-18 Ibm Publish and subscribe data processing apparatus, method and computer program product with declaration of a unique publisher broker
US5838918A (en) * 1993-12-13 1998-11-17 International Business Machines Corporation Distributing system configuration information from a manager machine to subscribed endpoint machines in a distrubuted computing environment
US5634081A (en) * 1994-03-01 1997-05-27 Adaptec, Inc. System for starting and completing a data transfer for a subsequently received autotransfer command after receiving a first SCSI data transfer command that is not autotransfer
US5619656A (en) 1994-05-05 1997-04-08 Openservice, Inc. System for uninterruptively displaying only relevant and non-redundant alert message of the highest severity for specific condition associated with group of computers being managed
US5694546A (en) 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
US6769009B1 (en) 1994-05-31 2004-07-27 Richard R. Reisman Method and system for selecting a personalized set of information channels
US5502637A (en) * 1994-06-15 1996-03-26 Thomson Shared Services, Inc. Investment research delivery system
US5581687A (en) * 1994-11-10 1996-12-03 Baxter International Inc. Interactive control systems for medical processing devices
US5745748A (en) * 1994-12-09 1998-04-28 Sprint Communication Co. L.P. System and method for direct accessing of remote data
US5623696A (en) * 1995-05-30 1997-04-22 International Business Machines Corporation System for formatting a request into a packet which can be read by plurality of operating systems for providing a driver for a storage device
US5897635A (en) * 1995-06-07 1999-04-27 International Business Machines Corp. Single access to common user/application information
US5740549A (en) * 1995-06-12 1998-04-14 Pointcast, Inc. Information and advertising distribution system and method
US6807558B1 (en) 1995-06-12 2004-10-19 Pointcast, Inc. Utilization of information “push” technology
US20020178051A1 (en) 1995-07-25 2002-11-28 Thomas G. Scavone Interactive marketing network and process using electronic certificates
US6389593B1 (en) 1995-12-12 2002-05-14 Sony Corporation Method of and apparatus for controlling transmission of information on programs
US6625617B2 (en) 1996-01-02 2003-09-23 Timeline, Inc. Modularized data retrieval method and apparatus with multiple source capability
US5870605A (en) * 1996-01-18 1999-02-09 Sun Microsystems, Inc. Middleware for enterprise information distribution
US5873084A (en) * 1996-01-18 1999-02-16 Sun Microsystems, Inc. Database network connectivity product
US6264560B1 (en) 1996-01-19 2001-07-24 Sheldon F. Goldberg Method and system for playing games on a network
US9530150B2 (en) * 1996-01-19 2016-12-27 Adcension, Llc Compensation model for network services
US20090012864A1 (en) * 2007-07-02 2009-01-08 Goldberg Sheldon F Compensation model for network services
US5823879A (en) 1996-01-19 1998-10-20 Sheldon F. Goldberg Network gaming system
US5862325A (en) * 1996-02-29 1999-01-19 Intermind Corporation Computer-based communication system and method using metadata defining a control structure
US5893911A (en) * 1996-04-17 1999-04-13 Neon Software, Inc. Method for defining and applying rules for message distribution for transaction processing in a distributed application
US5768528A (en) * 1996-05-24 1998-06-16 V-Cast, Inc. Client-server system for delivery of online information
US5916307A (en) * 1996-06-05 1999-06-29 New Era Of Networks, Inc. Method and structure for balanced queue communication between nodes in a distributed computing application
JP3702546B2 (ja) * 1996-08-23 2005-10-05 ブラザー工業株式会社 多機能周辺装置および記憶媒体
US6138162A (en) * 1997-02-11 2000-10-24 Pointcast, Inc. Method and apparatus for configuring a client to redirect requests to a caching proxy server based on a category ID with the request
US6173311B1 (en) 1997-02-13 2001-01-09 Pointcast, Inc. Apparatus, method and article of manufacture for servicing client requests on a network
GB9705469D0 (en) * 1997-03-17 1997-05-07 British Telecomm Re-usable database system
FR2762950B1 (fr) * 1997-05-02 2000-08-04 Alsthom Cge Alcatel Procede de transmission d'une notification dans un reseau a applications distribuees comportant plusieurs services de notifications et reseau pour sa mise en oeuvre
US6038601A (en) 1997-07-21 2000-03-14 Tibco, Inc. Method and apparatus for storing and delivering documents on the internet
US7080385B1 (en) 1997-08-18 2006-07-18 Tibco Software Inc. Certified message delivery and queuing in multipoint publish/subscribe communications
CA2313039C (en) * 1997-08-18 2008-05-20 Tibco Software, Inc. Certified message delivery and queuing in multipoint publish/subscribe communications
US6421570B1 (en) * 1997-08-22 2002-07-16 Honeywell Inc. Systems and methods for accessing data using a cyclic publish/subscribe scheme with report by exception
US6038597A (en) 1998-01-20 2000-03-14 Dell U.S.A., L.P. Method and apparatus for providing and accessing data at an internet site
US6144947A (en) * 1998-06-05 2000-11-07 Schwartz; Peter A. System for automatically determining net capital deductions for securities held, and process for implementing same
US7058597B1 (en) * 1998-12-04 2006-06-06 Digital River, Inc. Apparatus and method for adaptive fraud screening for electronic commerce transactions
US20030195974A1 (en) 1998-12-04 2003-10-16 Ronning Joel A. Apparatus and method for scheduling of search for updates or downloads of a file
US7617124B1 (en) * 1998-12-04 2009-11-10 Digital River, Inc. Apparatus and method for secure downloading of files
US7779015B2 (en) 1998-12-18 2010-08-17 Microsoft Corporation Logging and analyzing context attributes
US6801223B1 (en) 1998-12-18 2004-10-05 Tangis Corporation Managing interactions between computer users' context models
US6791580B1 (en) 1998-12-18 2004-09-14 Tangis Corporation Supplying notifications related to supply and consumption of user context data
US7231439B1 (en) 2000-04-02 2007-06-12 Tangis Corporation Dynamically swapping modules for determining a computer user's context
US6920616B1 (en) * 1998-12-18 2005-07-19 Tangis Corporation Interface for exchanging context data
US7225229B1 (en) * 1998-12-18 2007-05-29 Tangis Corporation Automated pushing of computer user's context data to clients
US9183306B2 (en) 1998-12-18 2015-11-10 Microsoft Technology Licensing, Llc Automated selection of appropriate information based on a computer user's context
US6842877B2 (en) 1998-12-18 2005-01-11 Tangis Corporation Contextual responses based on automated learning techniques
US8225214B2 (en) 1998-12-18 2012-07-17 Microsoft Corporation Supplying enhanced computer user's context data
US7046263B1 (en) * 1998-12-18 2006-05-16 Tangis Corporation Requesting computer user's context data
US7107539B2 (en) 1998-12-18 2006-09-12 Tangis Corporation Thematic response to a computer user's context, such as by a wearable personal computer
US6513046B1 (en) 1999-12-15 2003-01-28 Tangis Corporation Storing and recalling information to augment human memories
US8181113B2 (en) * 1998-12-18 2012-05-15 Microsoft Corporation Mediating conflicts in computer users context data
US6549957B1 (en) * 1998-12-22 2003-04-15 International Business Machines Corporation Apparatus for preventing automatic generation of a chain reaction of messages if a prior extracted message is similar to current processed message
US6243757B1 (en) 1999-01-11 2001-06-05 Enuntio, Inc. Automated information filtering and distribution system
US7904187B2 (en) 1999-02-01 2011-03-08 Hoffberg Steven M Internet appliance system and method
US7596606B2 (en) * 1999-03-11 2009-09-29 Codignotto John D Message publishing system for publishing messages from identified, authorized senders
US6404441B1 (en) 1999-07-16 2002-06-11 Jet Software, Inc. System for creating media presentations of computer software application programs
GB2354847A (en) * 1999-09-28 2001-04-04 Ibm Publish/subscribe data processing with subscription points for customised message processing
GB2354848A (en) * 1999-09-28 2001-04-04 Ibm Publish/subscribe data processing with subscriber requested messageflow for customised message processing
US20030018569A1 (en) * 1999-10-06 2003-01-23 Joshua Eisenthal Enhanced interface for communicating with a handheld trading system
US7107240B1 (en) 1999-10-06 2006-09-12 Goldman Sachs & Co. Order centric tracking system and protocol for communications with handheld trading units
US7464153B1 (en) * 2000-04-02 2008-12-09 Microsoft Corporation Generating and supplying user context data
WO2001075676A2 (en) 2000-04-02 2001-10-11 Tangis Corporation Soliciting information based on a computer user's context
WO2001075570A2 (en) * 2000-04-02 2001-10-11 Tangis Corporation Interface for exchanging context data
AU5677901A (en) * 2000-05-18 2001-11-26 Kabushiki Kaisha Daiwa Shoken Group Honsha Method and system for transmitting stock price information, information databasetherefor, server for detecting conditions and client terminal
US7184982B1 (en) 2000-06-23 2007-02-27 Ebs Group Limited Architecture for anonymous trading system
GB2364586B (en) * 2000-06-23 2004-06-16 Ebs Nominees Ltd Deal matching in an anonymous trading system
US7827085B1 (en) 2000-06-23 2010-11-02 Ebs Group Limited Conversational dealing in an anonymous trading system
US7333952B1 (en) 2000-06-23 2008-02-19 Ebs Group Limited Compound order handling in an anonymous trading system
US7366690B1 (en) * 2000-06-23 2008-04-29 Ebs Group Limited Architecture for anonymous trading system
US6983259B1 (en) 2000-06-23 2006-01-03 Ebs Group Limited Anonymous trading system
US7024386B1 (en) 2000-06-23 2006-04-04 Ebs Group Limited Credit handling in an anonymous trading system
US20020054130A1 (en) * 2000-10-16 2002-05-09 Abbott Kenneth H. Dynamically displaying current status of tasks
GB2386724A (en) * 2000-10-16 2003-09-24 Tangis Corp Dynamically determining appropriate computer interfaces
US7363269B2 (en) * 2001-01-03 2008-04-22 Ebs Group Limited Conversational dealing system
US6961773B2 (en) 2001-01-19 2005-11-01 Esoft, Inc. System and method for managing application service providers
US7331050B2 (en) * 2001-06-06 2008-02-12 Intel Corporation System and method for communicating information between application programs
JP2003036219A (ja) * 2001-07-25 2003-02-07 Sony Corp コンテンツ配信システム、コンテンツ予約管理装置、コンテンツ予約管理方法、コンテンツ予約管理プログラム及びコンテンツ予約管理プログラム格納媒体
US7383315B2 (en) * 2001-08-02 2008-06-03 National Instruments Corporation System and method for a delta page protocol for caching, replication, and client/server networking
US7127467B2 (en) * 2002-05-10 2006-10-24 Oracle International Corporation Managing expressions in a database system
US7523086B1 (en) 2003-01-28 2009-04-21 Unisys Corporation System for retrieving and processing stability data from within a secure environment
US20050216416A1 (en) * 2004-03-29 2005-09-29 Carl Abrams Business method for the determination of the best known value and best known value available for security and customer information as applied to reference data
US20080077651A1 (en) * 2006-09-05 2008-03-27 Ongrand Limited Information processing system with collaborating devices
US8775245B2 (en) 2010-02-11 2014-07-08 News America Marketing Properties, Llc Secure coupon distribution
US10366083B2 (en) 2015-07-29 2019-07-30 Oracle International Corporation Materializing internal computations in-memory to improve query performance
US10204135B2 (en) 2015-07-29 2019-02-12 Oracle International Corporation Materializing expressions within in-memory virtual column units to accelerate analytic queries
US11226955B2 (en) 2018-06-28 2022-01-18 Oracle International Corporation Techniques for enabling and integrating in-memory semi-structured data and text document searches with in-memory columnar query processing

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3597741A (en) * 1969-04-30 1971-08-03 Ultronic Systems Corp Information control in a processing system
GB1489573A (en) * 1974-10-18 1977-10-19 Automated Real Time Investment Communication system
US4447673A (en) * 1977-12-27 1984-05-08 Stromberg-Carlson Corporation Ring trip apparatus for a line circuit connected to DCO switch
US4349703A (en) * 1980-03-31 1982-09-14 International Telephone And Telegraph Corporation Programmable ring signal generator
JPS57211633A (en) * 1981-06-23 1982-12-25 Fujitsu Ltd Inter-program communication system
US4484270A (en) * 1982-07-07 1984-11-20 Sperry Corporation Centralized hardware control of multisystem access to shared and non-shared subsystems
DE3521248C2 (de) * 1984-06-29 1995-05-11 Merrill Lynch & Co Inc Finanzinformationsübermittlungs-, -verarbeitungs- und -anzeigesystem

Also Published As

Publication number Publication date
JP3247891B2 (ja) 2002-01-21
EP0258867B1 (en) 1995-01-04
CA1315891C (en) 1993-04-06
DE3750941T2 (de) 1995-08-10
CA1292324C (en) 1991-11-19
US4815030A (en) 1989-03-21
JP3141943B2 (ja) 2001-03-07
JPS6365536A (ja) 1988-03-24
AU595354B2 (en) 1990-03-29
EP0258867A3 (en) 1990-05-09
EP0258867A2 (en) 1988-03-09
DE3750941D1 (de) 1995-02-16
AU7658487A (en) 1988-04-14

Similar Documents

Publication Publication Date Title
JP2001188742A (ja) データ分配方法
US5230048A (en) Data processing system with tree and list data structure
US6510429B1 (en) Message broker apparatus, method and computer program product
US20180152804A1 (en) Apparatus and a method for supplying information
US5566337A (en) Method and apparatus for distributing events in an operating system
US5826270A (en) Methods and systems for client or customer-site transaction processing in a distributed database system
US4845658A (en) Information method and apparatus using simplex and duplex communications
US20020016854A1 (en) Method of sending and receiving information and system using such method
JPH11502347A (ja) 分散型データベースシステムにおけるトランザクション処理用の方法および装置
US7103680B1 (en) Publish/subscribe data processing with publication points for customized message processing
US6286025B1 (en) Method and system of process identification by user defined process variables
JP2001022714A (ja) サーバ計算機、負荷分散システム、電話交換システムおよび負荷分散方法
JP2004506272A (ja) 未加工金融データを処理して、妥当性検査した商品案内情報を加入者に対して生成するシステム
GB2227585A (en) Method and system for information distribution services
CN113726896B (zh) 基于商业智能房地产行业的任务分发系统
Kaiser et al. The SPLENDORS real time portfolio management system
KR100324978B1 (ko) 메시지 중개인 장치, 방법 및 컴퓨터 프로그램 제품
GB2354848A (en) Publish/subscribe data processing with subscriber requested messageflow for customised message processing
US6795827B1 (en) Information terminal and broadcasting information service system
EP0555881A2 (en) Office automation system wherein files in a database are available to electronic mail services
GB2358768A (en) Supplying information over a limited-waveband mobile radio link
JP3055498B2 (ja) データベース検索方法
Blake Information agents
CN117909033A (zh) 资源处理方法、装置、设备及介质
JP2001051956A (ja) コミュニティの生成方法、コミュニティの管理方法、情報流通方法及び資源予約方法並びにそれらのプログラムを記録した媒体

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term