JPH11272591A - Transfer quantity assurance system in shared application - Google Patents

Transfer quantity assurance system in shared application

Info

Publication number
JPH11272591A
JPH11272591A JP10071767A JP7176798A JPH11272591A JP H11272591 A JPH11272591 A JP H11272591A JP 10071767 A JP10071767 A JP 10071767A JP 7176798 A JP7176798 A JP 7176798A JP H11272591 A JPH11272591 A JP H11272591A
Authority
JP
Japan
Prior art keywords
data
change
changed
shared application
computer
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
JP10071767A
Other languages
Japanese (ja)
Inventor
Yoshimitsu Aoyanagi
慶光 青柳
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.)
Hitachi Software Engineering Co Ltd
Original Assignee
Hitachi Software Engineering Co Ltd
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 Hitachi Software Engineering Co Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP10071767A priority Critical patent/JPH11272591A/en
Publication of JPH11272591A publication Critical patent/JPH11272591A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Digital Computer Display Output (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

PROBLEM TO BE SOLVED: To evade delay to be caused when updated data is loaded as suppressing quantity of data to be transferred in one time of data transmission and the number of computers and to assure that the data is always the latest one. SOLUTION: Unnecessary data transfer is prevented by transferring no changed data to a computer by which the data changed on its desktop is not at a visible state and transferring the data by defining the changed data changed to a visible state as a trigger. In addition, the data is loaded without causing delay time when the changed data becomes the visible state by introducing a concept of cooccurrence and transferring the changed data even when cooccurrence data is changed to statistically digitize relation between the pieces of respective shared applications.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、ネットワーク上で
アプリケーションやデータを共有しているグループ間協
調作業支援システムにおいて、変更が生じたデータが同
時にネットワーク上の全てのコンピュータに転送される
ことでネットワークトラフィックが増大するのを防ぐと
ともに、各クライアントコンピュータ上でデータロード
の際に生じる遅延を防ぐことに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an inter-group cooperative work support system for sharing applications and data on a network, in which changed data is simultaneously transferred to all computers on the network. The present invention relates to preventing traffic from increasing and preventing delays that occur when data is loaded on each client computer.

【0002】[0002]

【従来の技術】共有アプリケーションにおいてデータの
変更を他のコンピュータに反映させる方法として以下に
示す3通りの方法が考えられる。1つ目は、各共有アプ
リケーションに対して、データに変更が生じる度にリア
ルタイムに全てのデータを相互に授受し合う方法であ
る。これは、共有アプリケーションに送信されるユーザ
イベントを監視し、ユーザイベントが発生するたびに全
てのコンピュータ間で情報を交換し合う方法である。
2. Description of the Related Art In a shared application, the following three methods can be considered as a method of reflecting a change in data to another computer. The first is a method of mutually exchanging all data with each shared application in real time each time data is changed. This is a method of monitoring user events transmitted to a shared application and exchanging information between all computers each time a user event occurs.

【0003】2つ目は、一定のタイム間隔、またはユー
ザが編集を終了したきっかけをトリガーにして、一括し
てデータ転送する方法である。これは、タイム間隔やユ
ーザイベントの終了を契機にまとまった単位のデータを
転送する方法である。3つ目の方法は、ユーザが共有ア
プリケーションをアクティブにしたきっかけをトリガー
として、データ転送を要求する方法である。共有アプリ
ケーションがアイコン化されている場合や最前面に表示
されていない場合にはデータの変更を反映させず、最前
面に表示されている共有アプリケーションのデータだけ
の転送を要求する方法である。
[0003] A second method is a method in which data is transferred in a batch at a fixed time interval or triggered by the end of editing by a user. This is a method of transferring a set of data in response to a time interval or the end of a user event. The third method is a method of requesting data transfer triggered by a trigger of a user activating a shared application. When the shared application is iconified or not displayed on the top, the data change is not reflected, and only the data of the shared application displayed on the top is requested to be transferred.

【0004】[0004]

【発明が解決しようとする課題】前述の上記のデータが
変更されるたびに変更データをリアルタイムに転送しあ
う方法では、各コンピュータでデータの整合性が必ず保
証されるメリットがある反面、変更が頻繁に発生するデ
ータを扱う場合や特定のユーザにとって重要ではないデ
ータ変更の場合もデータを全てのコンピュータに転送す
る為、ネットワークトラフィックが断続的に増大する問
題がある。
The above-mentioned method of transferring the changed data in real time each time the data is changed has the merit that the data consistency is always ensured in each computer, but the change is not guaranteed. Even in the case of handling frequently occurring data or in the case of data change that is not important for a specific user, the data is transferred to all the computers, so that there is a problem that network traffic increases intermittently.

【0005】また、タイム間隔やユーザが編集を終了し
たのをトリガーとしてデータ転送を実行する場合も同様
に、断続的ではないが、データを転送する場合には一時
的にネットワークトラフィックが増大する問題がある。
また、この場合には一定量以上のデータを転送すること
になり、アプリケーションを共有するコンピュータの数
が増加するほど、各コンピュータごとのデータ転送が完
了する時間にずれや遅延が生じ易くなる問題もある。
Similarly, when data transfer is executed with a time interval or when the user finishes editing, data traffic is not intermittent, but network traffic temporarily increases when data is transferred. There is.
Also, in this case, a certain amount of data is transferred, and as the number of computers sharing the application increases, the time required to complete the data transfer for each computer tends to be shifted or delayed. is there.

【0006】ユーザが共有アプリケーションをアクティ
ブにしたのをトリガーとして、データ転送を要求する方
法では、アクティブになっていない共有アプリケーショ
ンのデータが変更されないため、他の共有アプリケーシ
ョンのデータを参照しながら、アクティブな共有アプリ
ケーションのデータを編集するといった作業が出来ない
という問題がある。
In a method of requesting data transfer triggered by a user activating a shared application, data of a shared application that has not been activated is not changed. Therefore, active data is referenced while referring to data of another shared application. There is a problem that work such as editing data of various shared applications cannot be performed.

【0007】このように、従来の技術を用いて共有アプ
リケーションのデータを他のコンピュータ上の共有アプ
リケーションに反映させる場合、一回のデータ通信で転
送するデータ量やコンピュータの数を抑えてネットワー
クトラフィックを発生させない方法を導入することと、
更新データをロードする際に生じる遅延を回避すること
と、ユーザが必要としているデータは必ず最新のデータ
であることを保証することの3つを同時に満足すること
が課題となる。
As described above, when the data of the shared application is reflected on the shared application on another computer by using the conventional technology, the amount of data to be transferred in one data communication and the number of computers are reduced to reduce network traffic. Introduce a method that does not occur,
The challenge is to avoid delays that occur when loading update data, and to ensure that the data required by the user is always the latest data.

【0008】本発明は、共有アプリケーションのデータ
を複数のセグメントに分割し、変更データを含むセグメ
ントが可視状態にあるコンピュータだけに限りデータを
転送し、データを転送するコンピュータを限定すること
でネットワークトラフィックの増大を回避することがで
きるデータ転送量保証システムを提供することを目的と
する。
The present invention divides data of a shared application into a plurality of segments, transfers data only to a computer in which a segment including changed data is in a visible state, and limits a computer to which the data is transferred by limiting network traffic. It is an object of the present invention to provide a data transfer amount assurance system capable of avoiding an increase in data transfer.

【0009】また、同時に可視状態になる確率が高い他
のデータも同時に転送することで、マウス操作、スクロ
ール、サイズ変更等によるデータのロード遅延の発生回
数を低減することができるデータ転送量保証システムを
提供することを目的とする。
A data transfer amount assurance system capable of reducing the number of data load delays caused by mouse operation, scrolling, size change, etc., by simultaneously transferring other data which is likely to be in a visible state at the same time. The purpose is to provide.

【0010】また、データが可視状態になる場合は常に
最新のデータを提供することを保証することができるデ
ータ転送量保証システムを提供することを目的とする。
Another object of the present invention is to provide a data transfer amount guarantee system that can guarantee that the latest data is always provided when the data becomes visible.

【0011】[0011]

【課題を解決するための手段】本発明の目的は、ネット
ワークに接続されている複数のコンピュータ上で特定の
アプリケーションを共有しているネットワークシステム
において、サーバコンピュータは各クライアントコンピ
ュータから変更データを受け付け、変更を加えたコンピ
ュータとは別のコンピュータに変更データを反映するこ
とができるデータ共有プログラム手段を有し、クライア
ントコンピュータは他に接続されているクライアントコ
ンピュータと協調作業が可能である環境を実現する為
に、データ共有プログラムから変更データの転送を許可
するか判断し、変更データを受信し、デスクトップ上で
加えられた共有アプリケーションの変更データをデータ
共有プログラムに転送することができる通信管理プログ
ラム手段と、デスクトップ上でどの共有アプリケーショ
ンが可視状態であるか、データのどの部分が参照されて
いるかを判断するために、マウス操作、スクロール、サ
イズ変更等のデスクトップユーザイベントを監視し、イ
ベントが発生した時に管理情報の更新を行なうデスクト
ップ管理プログラム手段と、前記デスクトップ管理プロ
グラム手段には前記通信管理プログラム手段が変更デー
タの転送を許可の判断の基準となる管理情報を有し、ユ
ーザが共有アプリケーションのデータを変更した時に、
データの変更を検知する為に、デスクトップ上で起動し
ている全ての共有アプリケーションで開かれている全て
のデータに対するデータ変更イベントを監視し、データ
変更が生じた際に変更データを他のコンピュータに反映
できるように通信制御プログラムに変更データの送信を
行なうデータ管理プログラム手段から構成され、デスク
トップ上のスクリーン全体の表示領域と共有アプリケー
ションの可視状態になっている領域の割合を監視し、算
出した割合を接続されている各クライアントが共有アプ
リケーションが表示しているデータの重要度を表現する
指標とし、可視状態になり易いデータが優先的に転送さ
れることによって達成される。
SUMMARY OF THE INVENTION An object of the present invention is to provide a network system in which a specific application is shared by a plurality of computers connected to a network, wherein a server computer receives change data from each client computer, It has data sharing program means capable of reflecting the changed data on a computer different from the computer that made the change, and the client computer realizes an environment in which it is possible to cooperate with other connected client computers. A communication management program means for determining whether to permit transfer of change data from the data sharing program, receiving the change data, and transferring the change data of the shared application added on the desktop to the data sharing program; desk Monitor desktop user events, such as mouse operations, scrolling, and resizing, to determine which shared applications are visible on the desktop and which parts of the data are being referenced. Desktop management program means for updating management information, and the desktop management program means has management information serving as a criterion for judging whether or not the communication management program means permits the transfer of change data. When you change,
Monitors data change events for all open data in all shared applications running on the desktop to detect data changes and sends the changed data to another computer when a data change occurs. It consists of data management program means that sends change data to the communication control program so that it can be reflected, monitors the ratio of the display area of the entire screen on the desktop and the visible area of the shared application, and calculates the calculated ratio Is set as an index expressing the importance of the data displayed by the shared application by each connected client, and is achieved by preferentially transferring data that is likely to become visible.

【0012】また、本発明の他の目的はデータ転送量保
証システムにおいて、マウス操作、スクロール、サイズ
変更等によって特定の共有アプリケーションの可視状態
な領域が変化した場合、デスクトップ上のスクリーン全
体の領域と新たに可視状態になる領域の割合の累積値
を、データ参照頻度を表現する指標とし、参照頻度が高
いデータが優先的に転送されることによって達成でき
る。
Another object of the present invention is to provide a data transfer amount assurance system, in which a visible area of a specific shared application is changed by a mouse operation, scrolling, size change, etc. This can be achieved by using the cumulative value of the ratio of the area that is newly visible as an index representing the data reference frequency, and transferring data with a high reference frequency with priority.

【0013】さらに本発明の他の目的は、データ転送量
保証システムにおいて、特定のコンピュータ上で共有ア
プリケーションのデータが変更された場合、他のコンピ
ュータでそのデータが可視状態かどうかを問い合わせ、
データが可視状態であるコンピュータと特定のサーバコ
ンピュータにだけ変更されたデータを転送することによ
って達成できる。
Still another object of the present invention is to provide a data transfer amount guarantee system, in which, when data of a shared application is changed on a specific computer, an inquiry is made as to whether the data is visible on another computer,
This can be achieved by transferring the modified data only to the computer where the data is visible and to a particular server computer.

【0014】さらに本発明の他の目的は、データ転送量
保証システムにおいて、データの変更を通知されたが、
データが可視状態ではないために更新データが転送され
ていないコンピュータは、データが可視状態になったの
をトリガーとして更新データを、特定のサーバコンピュ
ータに要求することで、データが必要になったときにデ
ータを更新することができ、また、サーバコンピュータ
に更新データ転送を要求することによって達成できる。
Still another object of the present invention is to provide a data transfer amount assurance system in which a data change is notified.
Computers to which update data has not been transferred because the data is not visible, requesting the update data from a specific server computer triggered by the data becoming visible, when the data becomes necessary This can be achieved by requesting the server computer to transfer the updated data.

【0015】さらに本発明の他の目的は、データ転送量
保証システムにおいて、各共有アプリケーションが保持
するデータが変更された場合、データを変更したコンピ
ュータから他のコンピュータへの最大データ転送量の期
待値が一定値以下になるようにしつつ、ウインドウのス
クロール処理の際に更新データが転送される回数を減ら
すようにアプリケーションデータをセグメント分割する
ことで、データに変更が生じた場合もデータ転送量を一
定値にすることで達成できる。
Still another object of the present invention is to provide a data transfer amount assurance system, wherein when the data held by each shared application is changed, the expected value of the maximum data transfer amount from the computer that changed the data to another computer is changed. The application data is divided into segments to reduce the number of times the update data is transferred during window scrolling while keeping the data below a certain value, so that the data transfer amount is constant even if the data changes It can be achieved by setting the value.

【0016】さらに本発明の他の目的は、データ転送量
保証システムにおいて、各共有アプリケーション間でセ
グメント化されたデータが同時に複数可視状態にある場
合、同時に可視状態となったデータの組み合わせを共起
したデータと定義し、前記共起したデータの組みを個々
のデータセットとして再構成することによって達成でき
る。
Still another object of the present invention is to provide a data transfer amount guarantee system, in which, when a plurality of segmented data are simultaneously visible between each shared application, a combination of simultaneously visible data is co-occurred. This can be achieved by defining the data set as the data set and reconstructing the set of co-occurring data as individual data sets.

【0017】さらに本発明の他の目的は、データ転送量
保証システムにおいて、各クライアントコンピュータご
とにデータが共起する確率を計算したテーブルを保持
し、特定の共有アプリケーションのデータに変更が生じ
た場合に、テーブル中の共起するデータセットの内で確
率が特定のしきい値を超えるデータを同時に転送するこ
とによって達成できる。
Still another object of the present invention is to provide a data transfer amount assurance system, which holds a table in which the probability of co-occurrence of data is calculated for each client computer, and is used when data of a specific shared application is changed. Alternatively, this can be achieved by simultaneously transferring data in the co-occurring data set in the table whose probability exceeds a certain threshold.

【0018】[0018]

【発明の実施の形態】以下、本発明の一実施例を、図面
を用いて説明する。図1は本実施例のシステム構成を示
したものである。該システムは、CPU11A、メモリ
11Bからなる端末装置11、データ共有プログラム1
12Aが格納されている外部記憶装置12と通信ポート
13からなるサーバコンピュータ1と、同様にCPU2
1A、メモリ21Bからなる端末装置21、通信管理プ
ログラム22A、デスクトップ管理プログラム22B、
データ管理プログラム22Cが格納されている外部記憶
装置22と通信ポート23からなるクライアントコンピ
ュータ21と、CPU31A、メモリ31Bからなる端
末装置31、通信管理プログラム32A、デスクトップ
管理プログラム32B、データ管理プログラム32Cが
格納されている外部記憶装置32と通信ポート33から
なるクライアントコンピュータ3と、コンピュータ間で
送受信されるデータを通信するためのネットワーク4か
ら構成されている。
DESCRIPTION OF THE PREFERRED EMBODIMENTS One embodiment of the present invention will be described below with reference to the drawings. FIG. 1 shows the system configuration of the present embodiment. The system includes a terminal device 11 including a CPU 11A and a memory 11B, a data sharing program 1
A server computer 1 comprising an external storage device 12 in which the storage device 12A is stored and a communication port 13;
1A, a terminal device 21 including a memory 21B, a communication management program 22A, a desktop management program 22B,
A client computer 21 consisting of an external storage device 22 storing a data management program 22C and a communication port 23, a terminal device 31 consisting of a CPU 31A and a memory 31B, a communication management program 32A, a desktop management program 32B, and a data management program 32C are stored. It comprises a client computer 3 comprising an external storage device 32 and a communication port 33, and a network 4 for communicating data transmitted and received between the computers.

【0019】ここで上記各プログラムの機能を説明す
る。データ共有プログラム12Aは、各クライアントコ
ンピュータ上で稼動する通信制御プログラムから共有ア
プリケーションの変更データとして、共有アプリケーシ
ョンの種類、データの変更された位置、変更データを受
信すると、サーバコンピュータのディスクの該当する共
有アプリケーションの該当する変更位置のデータを転送
された変更データで更新する。
Here, the function of each program will be described. When the data sharing program 12A receives the type of the shared application, the changed position of the data, and the changed data as the changed data of the shared application from the communication control program running on each client computer, the data sharing program 12A The data at the corresponding change position of the application is updated with the transferred change data.

【0020】データ共有プログラム12Aは、各共有ア
プリケーションのデータごとに、データ位置、データ変
更頻度、データ変更確率を含むデータ更新頻度テーブル
を管理しており、変更データを受信する度に該当するデ
ータ位置のデータ変更頻度を加算し、全ての位置におけ
るデータ変更確率を再計算する。
The data sharing program 12A manages a data update frequency table including a data position, a data change frequency, and a data change probability for each data of each shared application, and each time the change data is received, the corresponding data position is updated. Are added, and the data change probabilities at all positions are recalculated.

【0021】また、本システムでは、変更データの領域
がデスクトップ上で可視状態でないクライアントにはデ
ータを転送せず、変更データの領域がデスクトップ上で
可視状態に変化した時にデータを転送する仕組である。
この時、ユーザのスクロール操作でデータの可視な領域
が頻繁に変更される場合、データ転送の頻度が増し、ス
クロール処理の遅延時間が増大してしまう。この事態に
対応する為に、データをセグメントという比較的まとま
った領域に分割し、変更データは可視状態ではないが、
変更データの領域を含むセグメントが可視状態であるク
ライアントコンピュータにはデータを転送する。
Further, in the present system, data is not transferred to a client whose change data area is not visible on the desktop, but data is transferred when the change data area changes to a visible state on the desktop. .
At this time, if the visible area of the data is frequently changed by the user's scroll operation, the frequency of data transfer increases, and the delay time of the scroll processing increases. To deal with this situation, the data is divided into relatively large areas called segments, and the changed data is not visible,
The data is transferred to the client computer in which the segment including the area of the changed data is visible.

【0022】データ共有プログラム12Aはデータ更新
頻度テーブルが更新される度にデータを再セグメント分
割する。セグメント分割する方法は、1回の最大データ
転送量の期待値が一定値以下となるように、データのサ
イズとデータ変更確率の積があらかじめ設定されている
閾値以下となるようにデータを区切っていくことで求め
られる。データ共有プログラム12Aは同様に、各共有
アプリケーションのデータごとに、セグメント種別、セ
グメント変更確率、セグメント長を含むセグメントテー
ブルを管理しており、データ更新頻度テーブルが更新さ
れる度にセグメントテーブルも更新され、各クライアン
トコンピュータ上で稼動している通信制御プログラムに
配布する。セグメントテーブル配布後、共有アプリケー
ションの変更データを各クライアントコンピュータに転
送する場合、通信制御プログラムに変更データを転送し
ていいか問い合わせる為に共有アプリケーションの種
類、データの変更された位置を送信する。通信制御プロ
グラムからの返答結果が転送許可であるクライアントコ
ンピュータの通信制御プログラムだけに変更データを転
送し、それ以外のコンピュータには変更データを転送し
ない。以上に示した処理を全てのクライアントコンピュ
ータに関して実行する。こうすることで、全てのクライ
アントコンピュータに変更データを転送する必要がなく
なり、ネットワークトラフィックの増大を防止する効果
がある。
The data sharing program 12A re-segments the data each time the data update frequency table is updated. The segmentation method is performed by dividing the data so that the product of the data size and the data change probability is equal to or less than a predetermined threshold so that the expected value of the maximum data transfer amount at one time is equal to or less than a predetermined value. It is required by going. Similarly, the data sharing program 12A manages a segment table including a segment type, a segment change probability, and a segment length for each data of each shared application, and the segment table is updated every time the data update frequency table is updated. , Distributed to communication control programs running on each client computer. When the change data of the shared application is transferred to each client computer after distributing the segment table, the type of the shared application and the changed position of the data are transmitted to the communication control program in order to inquire whether to transfer the change data. The change data is transferred only to the communication control program of the client computer for which the response result from the communication control program is transfer permission, and the change data is not transferred to other computers. The processing described above is executed for all client computers. This eliminates the need to transfer the change data to all client computers, and has the effect of preventing an increase in network traffic.

【0023】通信管理プログラム32Aは、データ共有
プログラム12Aから配布されるセグメントテーブルを
管理し、データ共有プログラムから更新データ転送の問
い合わせとして、共有アプリケーションの種類、データ
の変更された位置を受信した時に、セグメントテーブル
を参照し、変更があったデータがどのセグメントに属し
ているか検索する。
The communication management program 32A manages the segment table distributed from the data sharing program 12A, and when receiving the type of the shared application and the changed position of the data as an update data transfer inquiry from the data sharing program, Referring to the segment table, search for the segment to which the changed data belongs.

【0024】該当するセグメントがデスクトップ上で可
視状態である場合は、変更データの転送を許可する応答
をデータ共有プログラムに返す。該当するセグメントが
可視状態でない場合でも、以下の条件を満たしている場
合には、変更データの転送を許可する応答をデータ共有
プログラムに返す。
If the corresponding segment is visible on the desktop, a response permitting the transfer of the changed data is returned to the data sharing program. Even if the corresponding segment is not in the visible state, if the following conditions are satisfied, a response permitting transfer of the changed data is returned to the data sharing program.

【0025】この場合、条件は2つ有り、1つ目の条件
は、デスクトップ管理プログラム32Bが管理している
アプリケーション優先度テーブルを参照し、該当する共
有アプリケーションの固定表示領域係数と累積表示領域
係数のどちらか一方があらかじめ設定されている閾値を
超えていることである。
In this case, there are two conditions. The first condition is to refer to the application priority table managed by the desktop management program 32B and to determine the fixed display area coefficient and the accumulated display area coefficient of the corresponding shared application. Either one of them exceeds a preset threshold.

【0026】2つ目の条件は、1つ目の条件を満たし、
かつ、デスクトップ管理プログラムが管理するセグメン
ト共起確率テーブルを検索する。つまり、変更されたデ
ータを含むセグメントに関する全ての共起確率を検索
し、共起確率があらかじめ設定されている閾値を超える
共起に関して、共起するセグメントが可視状態である共
起が存在していることである。
The second condition satisfies the first condition,
In addition, a segment co-occurrence probability table managed by the desktop management program is searched. In other words, search for all co-occurrence probabilities related to the segment including the changed data, and for co-occurrence whose co-occurrence probability exceeds a preset threshold, there is a co-occurrence where the co-occurring segment is It is that you are.

【0027】上記の2つの条件は、頻繁に参照される共
有アプリケーションで、2つのセグメントが同時に参照
される確率が高いセグメントデータを検索している。こ
れによって、変更データが可視状態でなくても、変更デ
ータと同時に参照される可能性が高いデータが参照され
ている場合には、あらかじめ変更データを転送しておく
ことで、同時に参照された時のデータ転送による遅延時
間を削減する効果がある。
[0027] The above two conditions are that a shared application frequently referred to is searching for segment data having a high probability that two segments are simultaneously referred to. As a result, even if the change data is not visible, if the data that is likely to be referred to at the same time as the change data is referred to, the change data is transferred in advance so that the This has the effect of reducing the delay time due to data transfer.

【0028】通信管理プログラム32Aは、データ共有
プログラムに更新データの転送を許可する応答を返す
と、データ共有プログラムから変更データが転送され
る。受信した変更データをデスクトップ上の共有アプリ
ケーションに反映する為に、データ管理プログラムに変
更データとして、共有アプリケーションの種類、データ
の変更された位置、変更データを送信し、実際の変更処
理をデータ管理プログラムに委ねる。また、デスクトッ
プ上の共有アプリケーションでデータが変更された場合
には、逆に、データ管理プログラムから変更データとし
て、共有アプリケーションの種類、データの変更された
位置、変更データを受信し、データ共有プログラムに変
更データとして同一の情報を転送する。
When the communication management program 32A returns a response for permitting the transfer of the update data to the data sharing program, the changed data is transferred from the data sharing program. In order to reflect the received change data to the shared application on the desktop, the type of the shared application, the changed position of the data, and the change data are sent to the data management program as the change data, and the actual change process is performed by the data management program. Entrust it to When data is changed by the shared application on the desktop, on the other hand, the type of the shared application, the changed position of the data, and the changed data are received as the changed data from the data management program, and the data is shared with the data sharing program. The same information is transferred as change data.

【0029】デスクトップ管理プログラム32Bは、通
信管理プログラムがデスクトップ上で可視状態である共
有アプリケーションのデータを判定することが出来るよ
うに、共有アプリケーションの表示状態を管理する。こ
の為、デスクトップ管理プログラムは、アプリケーショ
ン種別、固定表示領域係数、累積表示領域係数を含むア
プリケーション優先度テーブルを管理している。
The desktop management program 32B manages the display state of the shared application so that the communication management program can determine the data of the shared application that is visible on the desktop. For this reason, the desktop management program manages an application priority table including an application type, a fixed display area coefficient, and an accumulated display area coefficient.

【0030】固定表示領域係数は、共有アプリケーショ
ンの表示領域の内で可視状態である領域がデスクトップ
領域に対して占める割合を意味する。この値が大きな共
有アプリケーションはデスクトップ上でデータを参照で
きる領域が多く、ユーザが参照し易い共有アプリケーシ
ョンであることを意味している。
The fixed display area coefficient means the ratio of the visible area in the display area of the shared application to the desktop area. A shared application having a large value has a large area on the desktop where data can be referred to, which means that the shared application is easy for the user to refer to.

【0031】累積表示領域係数は、マウス操作、スクロ
ール、サイズ変更によって共有アプリケーションの表示
領域の内で可視状態である領域が変化した場合に、変化
した領域の累積がデスクトップに対して占める割合を意
味する。この値が大きな共有アプリケーションは可視状
態になったり、不可視状態になったりする領域が多いこ
とを意味しており、頻繁に参照されるデータを保持して
いることを意味している。
The cumulative display area coefficient means the ratio of the cumulative total of the changed area to the desktop when the visible area in the display area of the shared application changes due to mouse operation, scrolling, and size change. I do. A shared application with a large value indicates that there are many areas that become visible or invisible, which means that data that is frequently referred to is held.

【0032】固定表示領域係数や累積表示領域係数の値
が大きな共有アプリケーションはユーザが頻繁に利用す
るアプリケーションと判断し、他のコンピュータからデ
ータ変更通知を受信したが、変更されたデータが共有ア
プリケーションで表示されていない場合でも、変更デー
タが転送されることを保証する。アプリケーション優先
度テーブルはデスクトップ上で発生する、マウス操作、
スクロール、サイズ変更等のユーザイベントが発生する
度に更新される。また、デスクトップ管理プログラム
は、異なる2つの共有アプリケーションのデータが同時
に表示されている時間を記述したデータ参照時間テーブ
ルを管理している。異なる2つの共有アプリケーション
のデータが同時に表示されている状態を共起とする。
A shared application having a large fixed display area coefficient or a large accumulated display area coefficient is determined to be an application frequently used by a user, and a data change notification is received from another computer. Ensure that changed data is transferred, even if it is not displayed. The application priority table is generated on the desktop, mouse operation,
Updated each time a user event such as scrolling or resizing occurs. In addition, the desktop management program manages a data reference time table describing the time during which data of two different shared applications is displayed at the same time. A state in which data of two different shared applications are displayed simultaneously is defined as co-occurrence.

【0033】データ参照時間テーブルも同様に、デスク
トップ上で発生する、マウス操作、スクロール、サイズ
変更等のユーザイベントが発生する度に更新される。ま
た、二つの共有アプリケーション中の2つのセグメント
が同時に可視状態である確率を保持したセグメント共起
確率テーブルを管理している。データ参照時間テーブル
を更新すると、デスクトップ管理プログラムはデータ参
照時間テーブルとセグメントテーブルを利用して、2つ
の共有アプリケーションが同時に可視状態である場合
に、2つのセグメントが同時に可視状態になる条件付確
率を計算し、セグメント共起確率テーブルを更新する。
セグメント共起確率テーブルは、異なる共有アプリケー
ション間のデータに関連性を持たせることで、可視状態
でない共有アプリケーションのデータが他のコンピュー
タ上で変更された場合でも、変更されたデータと関連性
がある共有アプリケーションのデータが可視状態である
場合には、変更データが転送されることを保証する。あ
らかじめ関連性のあるデータは転送しておくことで、ユ
ーザイベントが発生する度にデータ転送が発生し、デー
タロードの遅延が発生するのを防止する効果がある。
Similarly, the data reference time table is updated each time a user event such as a mouse operation, scrolling, and size change occurs on the desktop. In addition, it manages a segment co-occurrence probability table that holds the probability that two segments in two shared applications are simultaneously visible. When the data reference time table is updated, the desktop management program uses the data reference time table and the segment table to calculate a conditional probability that two segments are simultaneously visible when two shared applications are simultaneously visible. Calculate and update the segment co-occurrence probability table.
The segment co-occurrence probability table associates data between different shared applications, so that even if the data of a shared application that is not visible is changed on another computer, it is related to the changed data If the data of the shared application is visible, it is guaranteed that the changed data will be transferred. By transferring related data in advance, data transfer occurs every time a user event occurs, which has an effect of preventing a delay in data loading from occurring.

【0034】デスクトップ管理プログラム32Bは、ア
プリケーション優先度テーブルやをセグメント共起確率
テーブルを管理する為に、デスクトップ上で発生する、
マウス操作、スクロール、サイズ変更等のユーザイベン
トを監視し、イベントが発生する度にテーブルを更新す
る必要がある。
The desktop management program 32B is generated on the desktop in order to manage the application priority table and the segment co-occurrence probability table.
It is necessary to monitor user events such as mouse operations, scrolling, and size changes, and update the table each time an event occurs.

【0035】データ管理プログラム32Cは、通信管理
プログラムから変更データとして、共有アプリケーショ
ンの種類、データの変更された位置、変更データを受信
した時に、該当する共有アプリケーションの該当する位
置のデータを更新する。更新する方法として3通りの場
合が有る。
The data management program 32C updates the data at the corresponding position of the corresponding shared application when the type of the shared application, the changed position of the data, and the changed data are received as changed data from the communication management program. There are three methods for updating.

【0036】1つ目は、変更データの属するセグメント
がデスクトップ上で可視状態でない場合である。この場
合には、データ管理プログラムはユーザに変更を通知す
ることなくデータを変更できる。2つ目は、変更データ
の属するセグメントがデスクトップ上で可視状態である
が、共有アプリケーションはアクティブウインドウとし
て最前面に表示されていない場合である。この場合、デ
ータ管理プログラムは、ダイアログボックスや反転表示
を用いて、ユーザに変更を通知する。3つ目は、変更デ
ータの属するセグメントがアクティブウインドウとして
最前面に表示されている共有アプリケーションに属して
いる場合である。この場合、データ管理プログラムは、
変更されたデータが属するセグメントとユーザが編集中
のセグメントが同一である為、ユーザには古いデータへ
の編集を禁止する必要がある。
The first case is where the segment to which the change data belongs is not visible on the desktop. In this case, the data management program can change the data without notifying the user of the change. Second, the segment to which the change data belongs is visible on the desktop, but the shared application is not displayed on the foreground as an active window. In this case, the data management program notifies the user of the change using a dialog box or reverse display. Third, the segment to which the change data belongs belongs to the shared application displayed on the foreground as the active window. In this case, the data management program
Since the segment to which the changed data belongs and the segment being edited by the user are the same, it is necessary to prohibit the user from editing the old data.

【0037】全てのクライアントコンピュータでデータ
の整合性を保つ為、データを更新するまで編集を許可し
ないような制御を施す。具体的には、一定間隔ごとにダ
イアログボックス等で、ユーザにデータの更新を促し続
ける。
In order to maintain data consistency in all client computers, control is performed so that editing is not permitted until data is updated. Specifically, the user keeps prompting the user to update data in a dialog box or the like at regular intervals.

【0038】また、データ管理プログラム32Cは、デ
スクトップ上でユーザが加えた共有アプリケーションの
データ変更を他のコンピュータに反映させる必要がある
為、デスクトップ上で起動している全ての共有アプリケ
ーションで開かれている全てのデータに対するハンドル
を保持し、データ変更イベントを監視し、イベントが発
生した時に、通信管理プログラムに変更データとして、
共有アプリケーションの種類、データの変更された位
置、変更データを送信する。
Since the data management program 32C needs to reflect the data change of the shared application made by the user on the desktop to another computer, the data management program 32C is opened by all the shared applications running on the desktop. It keeps handles to all the data that it has, monitors the data change event, and when the event occurs, sends it to the communication management program as change data.
Send the type of shared application, the location where the data was changed, and the changed data.

【0039】図2は、特定のクライアントのデスクトッ
プ領域201で複数の共有アプリケーションを共有する
場合の構成例である。この例では、デスクトップ上に六
つの共有アプリケーションが起動されており、App1
(202)、App2(203)、App3(20
4)、App4(205)が互いに重なり合って開かれ
ている。また、App5(206)、App6(20
7)がアイコン化された状態で共有されている。四つの
共有アプリケーションの内でApp1(202)が最前
面でアクティブな状態で表示されており、ユーザはAp
p1(202)を変更できる環境で作業しているが、そ
の他の共有アプリケーションの画面でApp2(20
3)、App3(204)、App4(205)の画面
は一部が可視状態であり、これらの表示データを参照し
ながらApp1(201)のデータを編集することが可
能である。
FIG. 2 shows a configuration example in which a plurality of shared applications are shared in the desktop area 201 of a specific client. In this example, six shared applications are activated on the desktop, and App1
(202), App2 (203), App3 (20
4), App4 (205) is overlapped and opened. Also, App5 (206), App6 (20
7) is shared in an iconified state. Among the four shared applications, App1 (202) is displayed in an active state in the foreground, and the user is notified that App1 (202) is
While working in an environment where p1 (202) can be changed, App2 (20) is displayed on the screen of another shared application.
3), the screens of App3 (204) and App4 (205) are partially visible, and it is possible to edit the data of App1 (201) while referring to these display data.

【0040】図の網点で塗られた領域208は、共有ア
プリケーションの画面がデスクトップに対して占める割
合を表している。ここでは、デスクトップ領域が占める
割合に対して各共有アプリケーションの画面が占める割
合を固定表示領域係数と定義している。固定表示領域係
数はデスクトップ上で頻繁にアクセスされる共有アプリ
ケーションを表す指標であるため、App5(20
6)、App6(207)の固定表示領域係数は「0」
となる。
An area 208 indicated by a halftone dot in the figure represents the ratio of the screen of the shared application to the desktop. Here, the ratio of the screen of each shared application to the ratio of the desktop region is defined as the fixed display region coefficient. Since the fixed display area coefficient is an index indicating a shared application that is frequently accessed on the desktop, App5 (20)
6), the fixed display area coefficient of App6 (207) is “0”
Becomes

【0041】図4(a)は、図3と同様に特定のクライ
アントのデスクトップ領域211で複数の共有アプリケ
ーションを共有する場合を表しており、同様にデスクト
ップ上に6つの共有アプリケーションが起動されてお
り、直前まで最前面でアクティブな共有アプリケーショ
ンとして開かれていたApp1(212)の軌跡を表現
している。
FIG. 4A shows a case where a plurality of shared applications are shared in the desktop area 211 of a specific client, similarly to FIG. 3, and six shared applications are activated on the desktop similarly. , The trajectory of App1 (212), which was opened as a shared application active in the foreground until immediately before.

【0042】その他に共有されている状態で、App2
(213)、App3(214)、App4(215)
が互いに重なり合って開かれている。また、直前にAp
p1がユーザによってアイコン化されたため、アイコン
状態のApp1(216)とApp5(217)、Ap
p6(218)が画面右隅でアイコン化された状態で共
有されている。図の例では現在App2、App3、A
pp4が最前面に表示されているが、図の網点で塗られ
た領域(219)はApp1がアイコン化されたことで
新たに可視状態になった共有アプリケーションの領域で
ある。固定表示領域係数だけでは頻繁にアクセスされる
共有アプリケーションを評価することは出来るが、頻繁
にはアクセスされないため、参照データとして重要なデ
ータを評価することは出来ない。
In another shared state, App2
(213), App3 (214), App4 (215)
Are open on top of each other. Also, just before Ap
Since p1 has been iconized by the user, App1 (216), App5 (217), and Ap in the icon state are displayed.
p6 (218) is shared as an icon at the right corner of the screen. In the example shown in the figure, App2, App3, A
Although pp4 is displayed in the foreground, the area (219) painted with a halftone dot in the figure is an area of the shared application that is newly visible due to the iconization of App1. Frequently accessed shared applications can be evaluated using only the fixed display area coefficients, but important data cannot be evaluated as reference data because they are not accessed frequently.

【0043】そこで、アプリケーションの可視状態が変
化するたびに表示領域の変化分を加算した値を累積表示
領域係数と定義する。累積表示領域係数を導入すること
で、共有アプリケーションのデータを参照する頻度を評
価することが出来る。
Therefore, a value obtained by adding a change amount of the display area each time the visible state of the application changes is defined as a cumulative display area coefficient. By introducing the cumulative display area coefficient, the frequency of referring to the data of the shared application can be evaluated.

【0044】図3(b)はデスクトップ管理プログラム
が管理し、通信管理プログラムがデータの転送をデータ
共有プログラムに要求する場合に用いるアプリケーショ
ン優先度テーブルである。テーブルにはアプリケーショ
ン種別221、図2で定義した固定表示領域係数、図3
(b)で定義した累積表示領域係数が列挙されている。
図では4つのアプリケーションがデスクトップ上で共有
されている場合のアプリケーション優先度テーブルの例
が示されている。テーブルはアプリケーションを共有し
ている各コンピュータごとに別々に定義されており、テ
ーブル中の閾値はシステム全体であらかじめ定義されて
いる値を使用する。固定表示領域係数の算出方法は、デ
スクトップ全体のスクリーン領域をArea(des
k)、各共有アプリケーションi{i=1,2,3,
4}が時間tで可視状態である領域をAreai
(t)、固定表示領域係数をSA(i)、アプリケーシ
ョン優先度テーブルを更新する時間間隔をTとした場
合、次の「数1」で表される。
FIG. 3B is an application priority table managed by the desktop management program and used when the communication management program requests data transfer to the data sharing program. In the table, the application type 221, the fixed display area coefficient defined in FIG.
The cumulative display area coefficients defined in (b) are listed.
FIG. 5 shows an example of the application priority table when four applications are shared on the desktop. The table is defined separately for each computer sharing the application, and the threshold value in the table uses a value predefined in the entire system. The fixed display area coefficient is calculated by setting the screen area of the entire desktop to Area (des).
k), each shared application i {i = 1, 2, 3,
Area where 4} is visible at time t is Area
(T), when the fixed display area coefficient is SA (i) and the time interval for updating the application priority table is T, it is expressed by the following “Equation 1”.

【0045】[0045]

【数1】 (Equation 1)

【0046】Tにはあらかじめ一定値を設定しておくこ
とも、ユーザが共有アプリケーションの可視状態を変え
た時間と前回変化時の時間差を利用することも可能であ
る。
It is possible to set a constant value for T in advance, or to use the time difference between the time when the user changed the visible state of the shared application and the time when the previous change was made.

【0047】また、累積表示領域係数の算出方法は、同
様にデスクトップ全体のスクリーン領域をArea(d
esk)、各共有アプリケーションi{i=1,2,
3,4}が新たに可視状態になる領域をNew(i)、
n回目のアプリケーション優先度テーブル変更時におけ
る累積表示領域係数をDAn(i)、アプリケーション
優先度テーブルを更新する時間間隔をTとした場合、次
の「数2」で表される。
In addition, the method of calculating the cumulative display area coefficient is the same as that of calculating the screen area of the entire desktop by Area (d
esk), each shared application i {i = 1, 2, 2,
The area where 3,4} is newly visible is New (i),
If the cumulative display area coefficient at the time of the nth application priority table change is DAn (i) and the time interval for updating the application priority table is T, it is represented by the following “Equation 2”.

【0048】[0048]

【数2】 (Equation 2)

【0049】図には固定表示領域係数の閾値が「0.5
00」、累積表示領域係数の閾値が「0.250」の場
合が示されており、「アプリケーション1」の固定表示
領域係数224と「アプリケーション4」の累積表示領
域係数225が閾値を超えている為、「アプリケーショ
ン1」と「アプリケーション4」のデータが変更された
場合、データが可視状態であるかどうかによらず優先的
にデータが転送される。
In the figure, the threshold value of the fixed display area coefficient is "0.5
00, and the threshold of the cumulative display area coefficient is “0.250”, and the fixed display area coefficient 224 of “application 1” and the cumulative display area coefficient 225 of “application 4” exceed the threshold. Therefore, when the data of “application 1” and “application 4” are changed, the data is preferentially transferred regardless of whether the data is in a visible state.

【0050】図4(a)はデータ共有プログラムが各共
有アプリケーションのデータを複数のセグメントに分割
した場合の構成例である。図では「アプリケーション
1」301が「1000バイト」のデータを保持してお
り、「アプリケーション2」307が半分の「500バ
イト」のデータを保持している場合に、「アプリケーシ
ョン1」のデータを「セグメント1」302、「セグメ
ント2」303、「セグメント3」304、「セグメン
ト4」305、「セグメント5」306の5つのセグメ
ントに分割し、「アプリケーション2」307のデータ
を「セグメント1」308、「セグメント2」309に
分割している。図の網点で塗られた2つのセグメントは
同時に参照される確率が高く、1つのデータセットとし
て定義されていることを示している。
FIG. 4A shows an example of a configuration in which the data sharing program divides the data of each shared application into a plurality of segments. In the figure, when “application 1” 301 holds “1000 bytes” of data and “application 2” 307 holds half of “500 bytes” of data, the data of “application 1” is "Segment 1" 302, "Segment 2" 303, "Segment 3" 304, "Segment 4" 305, and "Segment 5" 306, and the data of "Application 2" 307 is divided into "Segment 1" 308, It is divided into “segment 2” 309. The two segments painted with halftone dots in the figure have a high probability of being referred to at the same time, indicating that they are defined as one data set.

【0051】一方のデータが更新された場合には、必ず
データセットとしてデータが転送されることを意味して
いる。例えば、特定のコンピュータで共有アプリケーシ
ョン1の「セグメント3」304を参照しているが、共
有アプリケーション2の「セグメント2」309は参照
していないとき、他のコンピュータで共有アプリケーシ
ョン2の「セグメント2」309のデータが変更された
場合に変更データは転送されない。しかし、2つのデー
タが共起関係の場合には、一方のデータを参照していな
い場合でもどちらかのデータが参照されていれば、デー
タが転送されることが保証されている。
When one data is updated, it means that the data is always transferred as a data set. For example, when a specific computer refers to “segment 3” 304 of the shared application 1 but does not reference “segment 2” 309 of the shared application 2, when another computer refers to “segment 2” of the shared application 2, When the data of the line 309 is changed, the changed data is not transferred. However, in the case where two data have a co-occurrence relationship, even if one of the data is not referred to, if one of the data is referred to, it is guaranteed that the data is transferred.

【0052】図4(b)は、データ共有プログラムが管
理し、データをセグメント分割するときのデータ更新頻
度テーブルの構成例を示している。テーブルは、100
0バイトのデータを100バイトづつに区切り、データ
の位置を示すデータ位置311、データの変更頻度31
2、データ変更確率313から構成されている。各共有
アプリケーションごとのデータサイズに依存せず、ま
た、データの変更頻度に依存しないようにデータをセグ
メント分割することで1回のデータ変更によるデータ転
送量を常に一定値以下に保つことが可能となる。
FIG. 4B shows an example of the configuration of a data update frequency table managed by the data sharing program and dividing data into segments. The table is 100
The 0-byte data is divided into 100-byte units, the data position 311 indicating the position of the data, the data change frequency 31
2, data change probability 313. By dividing the data into segments independent of the data size of each shared application and independent of the frequency of data change, it is possible to keep the data transfer volume per data change below a certain value at all times. Become.

【0053】図の網点で塗られた領域は、最大転送量の
期待値が50バイトとなるように閾値を設定した場合の
データのセグメント1になる部分を示している。セグメ
ントを決定する方法は、セグメント長をS、セグメント
長がSのときのデータ変更確率をP(0<n<S)、変
更位置がn、閾値をCとした場合、次の「数3」で表さ
れる。
The area shaded with halftone dots in the figure indicates a portion that becomes the segment 1 of the data when the threshold value is set so that the expected value of the maximum transfer amount is 50 bytes. The method of determining the segment is as follows, when the segment length is S, the data change probability when the segment length is S is P (0 <n <S), the change position is n, and the threshold value is C, It is represented by

【0054】[0054]

【数3】 (Equation 3)

【0055】図の例の場合、S=100*n(n=1,
2,…)、C=50の場合を意味している。セグメント
2を決定する場合もデータ更新頻度テーブルからセグメ
ント1の部分を除いたテーブルで同様に計算することが
できる。セグメントのサイズはデータが変更される度に
動的に変更され、各コンピュータに通知される。
In the case of the example shown in the figure, S = 100 * n (n = 1,
2,...) And C = 50. When the segment 2 is determined, the same calculation can be performed using a table obtained by removing the segment 1 from the data update frequency table. The size of the segment is dynamically changed each time data is changed, and is notified to each computer.

【0056】図5は、データ共有プログラムが管理し、
データ更新頻度テーブルをもとに作成されるセグメント
テーブルの構成例を示している。テーブルは図4(b)
で決定した各セグメントを羅列しており、セグメント種
別321、セグメント変更確率322、セグメント長3
23から構成される。セグメントテーブルは、データが
変更されるたびにデータ更新頻度テーブルから作成さ
れ、各クライアントに配布される。
FIG. 5 shows a case where the data sharing program manages
3 shows a configuration example of a segment table created based on a data update frequency table. Table 4 (b)
Are determined, and the segment type 321, the segment change probability 322, and the segment length 3
23. The segment table is created from the data update frequency table every time data is changed, and distributed to each client.

【0057】データ共有プログラムは、各コンピュータ
から更新データを転送された場合、配布されたセグメン
トテーブルから更新データが属するたセグメントを検索
し、該当するセグメントの領域が可視状態であるかどう
かを他のコンピュータに問い合わせることが出来る。他
のコンピュータはセグメントテーブルを配布されている
ので、セグメントデータが可視状態であるかどうか判断
することが出来る。
When the update data is transferred from each computer, the data sharing program searches the distributed segment table for the segment to which the update data belongs, and determines whether the area of the corresponding segment is visible or not. You can ask the computer. Since other computers are distributed with the segment table, it is possible to determine whether the segment data is visible.

【0058】図6(a)は、デスクトップ管理プログラ
ムが管理し、ユーザイベントによって共有アプリケーシ
ョンの表示データが変化した際に更新する、データ参照
時間テーブルの構成例を示している。図は特定のアプリ
ケーションが1000バイトのデータを100バイトづ
つに区切り、データの位置を示すデータ位置401、共
有アプリケーションが可視状態ではないか、もしくはア
イコン化されている場合を示す無表示402、各共有ア
プリケーションが可視状態である合計時間403から構
成されている。
FIG. 6A shows a configuration example of a data reference time table managed by the desktop management program and updated when display data of the shared application changes due to a user event. In the figure, a specific application divides 1000-byte data into 100-byte units, and indicates a data position 401 indicating the position of the data; a non-display 402 indicating that the shared application is not visible or iconified; It consists of the total time 403 during which the application is visible.

【0059】図では共有アプリケーションApp1の0
バイトから100バイトまでのデータと共有アプリケー
ションApp2の401バイトから500バイトまでの
データが両方とも可視状態である時間がカラムデータ4
04として値「0」が記述されている。デスクトップ管
理プログラムは、ユーザがマウス操作、スクロール、サ
イズ変更等でデータの可視状態を変化させたときに、デ
ータ参照時間テーブルを前回更新した時刻と現在の時刻
の差を計算し、データ参照時間テーブルの共起している
データのカラムに値を加算する。図の網点で塗られた領
域405は共有アプリケーションApp1のセグメント
1と共有アプリケーションApp2のセグメント1に該
当するカラムの集合である。
In the figure, 0 of the shared application App1
The column data 4 is the time during which both the data from bytes to 100 bytes and the data from 401 bytes to 500 bytes of the shared application App2 are visible.
04 is described as a value “0”. The desktop management program calculates the difference between the time when the data reference time table was last updated and the current time when the user changes the visibility of the data by mouse operation, scrolling, resizing, etc. Add a value to the column of data that co-occurs. An area 405 indicated by a halftone dot in the figure is a set of columns corresponding to the segment 1 of the shared application App1 and the segment 1 of the shared application App2.

【0060】図5のセグメントテーブルはデータ共有プ
ログラムから配布されるため、各クライアントコンピュ
ータはApp1のセグメント1がデータの先頭から30
0バイトまでの領域で、App2のセグメント1がデー
タの先頭から200バイトまでの領域であることを知る
ことが出来る。
Since the segment table shown in FIG. 5 is distributed from the data sharing program, each client computer stores the segment 1 of App1 from the beginning of the data by 30 minutes.
In the area up to 0 bytes, it can be known that the segment 1 of App2 is the area up to 200 bytes from the beginning of the data.

【0061】図6(b)は、デスクトップ管理プログラ
ムが管理し、データ参照時間テーブルが更新された際に
再計算される、セグメント共起確率テーブルの構成例を
示している。テーブルはセグメントを示すカラム41
1、セグメントが可視状態ではないかアイコン化されて
いる場合を示す無表示412、セグメントが可視状態で
ある合計時間413から構成されている。
FIG. 6B shows a configuration example of the segment co-occurrence probability table managed by the desktop management program and recalculated when the data reference time table is updated. The table has a column 41 indicating the segment.
1, a non-display 412 indicating that the segment is not visible or iconified, and a total time 413 during which the segment is visible.

【0062】図5のセグメントテーブルと図6(a)の
データ参照時間テーブルから共有アプリケーションデー
タの全ての共起関係を計算することが出来る。計算方法
は、App1のセグメントMとApp2のセグメントN
が共起している確率をPmn、App1のセグメントM
の開始位置と終了位置をM(min)、M(max)、
App2のセグメントNの開始位置と終了位置をN(m
in)、N(max)、App1の位置iのデータとA
pp2の位置jのデータが同時に可視状態である時間を
T(i)(j)、App1とApp2が同時に可視状態
である総時間をT(all)としたときに、次の「数
4」によって表される。
All co-occurrence relationships of the shared application data can be calculated from the segment table of FIG. 5 and the data reference time table of FIG. The calculation method is as follows: the segment M of App1 and the segment N of App2.
Is Pmn, the segment M of App1
Are defined as M (min), M (max),
The start position and the end position of the segment N of App2 are set to N (m
in), N (max), data at position i of App1 and A
When the time when the data at the position j of pp2 is simultaneously visible is T (i) (j), and the total time when App1 and App2 are simultaneously visible is T (all), expressed.

【0063】[0063]

【数4】 (Equation 4)

【0064】図の網点で塗られた領域は414は、共有
アプリケーションApp1のセグメント1と共有アプリ
ケーションApp2のセグメント1が共起する確率を示
している。
A region 414 indicated by a halftone dot in the figure indicates a probability that the segment 1 of the shared application App1 and the segment 1 of the shared application App2 co-occur.

【0065】以下、フローチャートを用いて、本実施の
形態の動作を説明する。図7は、サーバコンピュータ上
で稼動するデータ共有プログラムが各クライアントコン
ピュータ上で稼動する通信制御プログラムから共有アプ
リケーションのデータ変更通知されたときの動作を示す
フローチャートである。データ共有プログラムは、他の
クライアントコンピュータ上で稼動する通信制御プログ
ラムから共有アプリケーションのデータ変更通知を待ち
(ステップ501)、データ変更通知として変更になっ
たデータの位置を受信した場合(ステップ502)、デ
ータ更新頻度テーブルの変更された位置のデータ変更頻
度の値を加算し、図4(b)で示した方法でデータ変更
確率を再計算し直し、データ更新頻度テーブルを更新す
る(ステップ503)。
Hereinafter, the operation of the present embodiment will be described with reference to a flowchart. FIG. 7 is a flowchart showing an operation when a data sharing program running on a server computer is notified of a change in data of a shared application from a communication control program running on each client computer. The data sharing program waits for a data change notification of the shared application from the communication control program running on another client computer (step 501), and receives the changed data position as the data change notification (step 502). The value of the data change frequency at the changed position in the data update frequency table is added, the data change probability is recalculated by the method shown in FIG. 4B, and the data update frequency table is updated (step 503).

【0066】更新されたデータ更新頻度テーブルを元に
図5で示した方法で変更された共有アプリケーションの
データを再セグメント分割し(ステップ504)、セグ
メントテーブルを更新する(ステップ505)。更新さ
れたセグメントテーブルは各クライアントコンピュータ
上で稼動している通信制御プログラムに配布される(ス
テップ506)。ステップ506まで終了するとステッ
プ501から繰り返す。
Based on the updated data update frequency table, the shared application data changed by the method shown in FIG. 5 is re-segmented (step 504), and the segment table is updated (step 505). The updated segment table is distributed to the communication control program running on each client computer (step 506). When the process is completed up to step 506, the process is repeated from step 501.

【0067】図8は、サーバコンピュータ上で稼動する
データ共有プログラムが各クライアントコンピュータ上
で稼動する通信制御プログラムから共有アプリケーショ
ンの変更データを転送された場合の動作を示すフローチ
ャートである。
FIG. 8 is a flowchart showing the operation when the data sharing program running on the server computer transfers the change data of the shared application from the communication control program running on each client computer.

【0068】データ共有プログラムは他のクライアント
コンピュータ上で稼動する通信制御プログラムから共有
アプリケーションの変更データ転送を待ち(ステップ5
11)、クライアントコンピュータから変更データが転
送され、全ての変更データの転送が終了すると(ステッ
プ512)、サーバコンピュータ上のディスクに変更さ
れたデータを格納する(ステップ513)。
The data sharing program waits for transfer of changed data of the shared application from the communication control program running on another client computer (step 5).
11), the changed data is transferred from the client computer, and when the transfer of all the changed data is completed (step 512), the changed data is stored in the disk on the server computer (step 513).

【0069】ディスクへの格納が終了すると、他のクラ
イアントコンピュータ上で稼動している通信制御プログ
ラムに更新データの転送が必要かどうか問い合せる(ス
テップ514)ため、変更になったデータの種類と変更
された位置を送信する。各クライアントコンピュータ上
で稼動している通信制御プログラムはデータ転送が必要
かどうかを判定するロジックが組み込まれており、クラ
イアントコンピュータ上の通信制御プログラムから更新
データを転送するように依頼があった場合(ステップ5
15)、サーバコンピュータのディスクに格納した更新
データを依頼したクライアントコンピュータに転送する
(ステップ516)。
When the storage in the disk is completed, the communication control program running on another client computer is inquired as to whether or not the update data needs to be transferred (step 514). To send the position. The communication control program running on each client computer incorporates logic to determine whether data transfer is necessary, and when a request is made to transfer update data from the communication control program on the client computer ( Step 5
15), the update data stored in the disk of the server computer is transferred to the client computer that requested it (step 516).

【0070】更新データを転送するようにクライアント
が依頼しなかった場合、もしくは更新データの転送が終
了した場合、更新データの転送が必要かどうか問い合せ
ていないクライアントコンピュータが存在しているかチ
ェックし(ステップ516)、存在している場合はステ
ップ514から繰り返す。存在していない場合はステッ
プ511から繰り返す。図9は、各クライアントコンピ
ュータ上で稼動する通信制御プログラムがサーバコンピ
ュータ上で稼動するデータ共有プログラムから共有アプ
リケーションの変更データの転送が必要かどうか問い合
わせを受信したときの動作を示すフローチャートであ
る。
When the client does not request the transfer of the update data, or when the transfer of the update data is completed, it is checked whether or not there is a client computer which does not inquire whether the transfer of the update data is necessary (step 516) If it exists, repeat from step 514. If not, the process is repeated from step 511. FIG. 9 is a flowchart showing the operation when the communication control program running on each client computer receives an inquiry from the data sharing program running on the server computer as to whether transfer of the change data of the shared application is necessary.

【0071】各クライアントコンピュータ上で稼動する
通信制御プログラムはデータ共有プログラムから共有ア
プリケーションの変更データを転送する必要があるかど
うかの問い合わせを待ち(ステップ601)、変更デー
タの転送が必要かどうかの問い合わせとしてデータの種
類とデータが変更された位置を受信すると(ステップ6
02)、図5に示したセグメントテーブルを参照し、更
新されたのがどのセグメントに属しているのかを検索す
る(ステップ603)。
The communication control program running on each client computer waits for an inquiry from the data sharing program as to whether the change data of the shared application needs to be transferred (step 601), and inquires whether the change data needs to be transferred. When the data type and the position where the data is changed are received (step 6)
02), referring to the segment table shown in FIG. 5, it is searched which segment belongs to the updated one (step 603).

【0072】更新されたセグメントがデスクトップ上で
可視状態であるかどうかチェックし(ステップ60
4)、セグメントが可視状態である場合データ共有プロ
グラムに更新データを転送するように依頼し(ステップ
605)、ステップ601から繰り返す。更新されたセ
グメントがデスクトップ上で可視状態でない場合、図3
(b)に示したアプリケーション優先度テーブルの該当
するアプリケーションの欄を参照し(ステップ60
6)、図2で定義した固定表示領域係数と図3(b)で
定義した累積表示領域係数のどちらか一方があらかじめ
設定されている閾値を超えているかどうかチェックし
(ステップ607)、固定表示領域係数と累積表示領域
係数の両方が閾値を超えていない場合はステップ601
から繰り返す。
Check whether the updated segment is visible on the desktop (step 60).
4) If the segment is visible, request the data sharing program to transfer the update data (step 605), and repeat from step 601. Figure 3 if the updated segment is not visible on the desktop
Referring to the corresponding application column in the application priority table shown in (b) (step 60).
6) Check whether one of the fixed display area coefficient defined in FIG. 2 and the cumulative display area coefficient defined in FIG. 3B exceeds a preset threshold (step 607), and the fixed display is performed. If both the area coefficient and the cumulative display area coefficient do not exceed the threshold, step 601
Repeat from

【0073】固定表示領域係数と累積表示領域係数のど
ちらか一方が閾値を超えている場合、可視状態である共
有アプリケーションで表示されているデータのセグメン
トと変更されたデータのセグメントに関連する全ての共
起を図6(b)に示したセグメント共起確率テーブルか
ら検索する(ステップ608)。
If one of the fixed display area coefficient and the cumulative display area coefficient exceeds the threshold value, all segments related to the data segment displayed by the visible shared application and the changed data segment are changed. The co-occurrence is retrieved from the segment co-occurrence probability table shown in FIG. 6B (step 608).

【0074】検索している共起セグメント同士の共起確
率があらかじめ設定されている閾値を超えているかチェ
ックし(ステップ609)、共起確率が閾値を超えてい
る場合、サーバ上のデータ共有プログラムに更新データ
の転送を依頼し(ステップ611)、ステップ601か
ら繰り返す。
It is checked whether the co-occurrence probability of the searched co-occurrence segments exceeds a preset threshold value (step 609). If the co-occurrence probability exceeds the threshold value, the data sharing program on the server is checked. (Step 611), and the process is repeated from step 601.

【0075】共起確率が閾値を超えていない場合、次に
検索すべき共起が存在するかチェックし(ステップ61
0)、検索すべき共起が存在する場合、ステップ608
から繰り返す。検索すべき共起が存在しない場合、ステ
ップ601から繰り返す。図10(a)は、各クライア
ントコンピュータ上で稼動する通信制御プログラムがサ
ーバコンピュータ上で稼動するデータ共有プログラムか
ら更新データを転送された場合の動作を示すフローチャ
ートである。
If the co-occurrence probability does not exceed the threshold, it is checked whether there is a co-occurrence to be searched next (step 61).
0) If there is a co-occurrence to be searched, step 608
Repeat from If there is no co-occurrence to be searched, the process is repeated from step 601. FIG. 10A is a flowchart showing the operation when the communication control program running on each client computer transfers update data from the data sharing program running on the server computer.

【0076】通信制御プログラムは、サーバコンピュー
タ上で稼動するデータ共有プログラムから更新データの
転送を待ち(ステップ621)、データ共有プログラム
から更新データを転送され、すべての更新データの転送
が終了すると(ステップ622)、クライアントコンピ
ュータ上で稼動しているデータ管理プログラムに更新さ
れたデータの種類、更新された位置、更新データを送信
する(ステップ623)。
The communication control program waits for transfer of update data from the data sharing program running on the server computer (step 621), transfers the update data from the data sharing program, and completes the transfer of all update data (step 621). 622), the type of the updated data, the updated position, and the updated data are transmitted to the data management program running on the client computer (step 623).

【0077】ステップ623が終了するとステップ62
1から繰り返す。図10(b)は、各クライアントコン
ピュータ上で稼動する通信制御プログラムがサーバコン
ピュータ上で稼動するデータ共有プログラムからセグメ
ントテーブルを配布された場合の動作を示すフローチャ
ートである。
When step 623 is completed, step 62
Repeat from 1. FIG. 10B is a flowchart showing an operation when the communication control program running on each client computer distributes the segment table from the data sharing program running on the server computer.

【0078】通信制御プログラムは、サーバコンピュー
タ上で稼動するデータ共有プログラムからセグメントテ
ーブルの配布を待ち(ステップ631)、データ共有プ
ログラムからセグメントテーブルのデータを転送される
と(ステップ632)、セグメントテーブルを受信した
データで置き換える(ステップ633)。ステップ63
3が終了するとステップ631から繰り返す。
The communication control program waits for the distribution of the segment table from the data sharing program running on the server computer (step 631), and transfers the segment table data from the data sharing program (step 632). Replace with the received data (step 633). Step 63
When 3 is completed, the process is repeated from step 631.

【0079】図10(c)は、各クライアントコンピュ
ータ上で稼動する通信制御プログラムが同じコンピュー
タ上で稼動するデータ管理プログラムから、ユーザが加
えた変更データを送信された場合の動作を示すフローチ
ャートである。
FIG. 10C is a flow chart showing the operation when the communication control program running on each client computer transmits changed data added by the user from the data management program running on the same computer. .

【0080】通信制御プログラムは、データ管理プログ
ラムからから変更データの送信を待ち(ステップ64
1)、データ管理プログラムからから変更があった共有
アプリケーションの種類、変更があったデータの位置、
変更データを送信されると(ステップ642)、サーバ
コンピュータ上で稼動するデータ共有プログラムに変更
通知として共有アプリケーションの種類、変更があった
データの位置を送信する(ステップ643)。
The communication control program waits for transmission of changed data from the data management program (step 64).
1) the type of shared application that has been changed from the data management program, the location of the changed data,
When the changed data is transmitted (step 642), the type of the shared application and the position of the changed data are transmitted as a change notification to the data sharing program running on the server computer (step 643).

【0081】データの変更通知が完了すると、実際の変
更データをデータ共有プログラムに転送する(ステップ
644)。ステップ643が終了するとステップ641
から繰り返す。
When the data change notification is completed, the actual change data is transferred to the data sharing program (step 644). When step 643 ends, step 641
Repeat from

【0082】図11は、各クライアントコンピュータ上
で稼動するデスクトップ管理プロラムがユーザイベント
を監視し、ウインドウやデータの表示領域変更イベント
を検知した場合に、管理するテーブルを更新する時の動
作を示すフローチャートである。
FIG. 11 is a flowchart showing the operation of updating a table to be managed when a desktop management program running on each client computer monitors a user event and detects a window or data display area change event. It is.

【0083】デスクトップ管理プログラムは、デスクト
ップ上で発生する、マウス操作、スクロール、サイズ変
更等のユーザイベントを監視し(ステップ701)、ユ
ーザが発行したイベントがイベントキューに格納され、
デスクトップ管理プログラムがイベントキューに溜まっ
ているイベントをキャプチャーした際(ステップ70
2)、そのイベントが共有アプリケーションウインドウ
の表示領域を変化させるイベントかどうかチェックし
(ステップ703)、共有アプリケーションの可視状態
が変化するイベントであった場合、表示領域が変化した
共有アプリケーションに関する固定表示領域係数と累積
表示領域係数の値を図2と図3(a)に示した方法で再
計算する(ステップ704)。
The desktop management program monitors user events such as mouse operation, scrolling, and size change occurring on the desktop (step 701), and the events issued by the user are stored in an event queue.
When the desktop management program captures an event stored in the event queue (step 70)
2) Check whether the event is an event that changes the display area of the shared application window (step 703). If the event is a change in the visible state of the shared application, a fixed display area related to the shared application whose display area has changed. The values of the coefficient and the cumulative display area coefficient are recalculated by the method shown in FIGS. 2 and 3A (step 704).

【0084】固定表示領域係数と累積表示領域係数の計
算が終了したら、図3(b)で定義したアプリケーショ
ン優先度テーブルの該当する項目の値を置き換える(ス
テップ705)。ステップ703で、ウインドウの表示
領域が変化しなかった場合と、ウインドウの表示領域が
変化してステップ705まで終了した場合に、キャプチ
ャーしたイベントが共有アプリケーション中の表示デー
タのセグメント領域を変化させたかどうかチェックする
(ステップ706)。共有アプリケーション中の参照さ
れているデータのセグメントが変化しなかった場合はス
テップ701から繰り返す。
When the calculation of the fixed display area coefficient and the cumulative display area coefficient is completed, the value of the corresponding item in the application priority table defined in FIG. 3B is replaced (step 705). In step 703, when the display area of the window has not changed, and when the display area of the window has changed and the processing has ended up to step 705, whether the captured event has changed the segment area of the display data in the shared application. Check (step 706). If the segment of the data referenced in the shared application has not changed, the process is repeated from step 701.

【0085】共有アプリケーション中の参照されている
データのセグメントが変化した場合は、図6(a)に示
したデータ参照時間テーブルの該当する共有アプリケー
ションの該当するデータ位置の項目に前回テーブル更新
時刻と現在の時刻の差を加算する(ステップ707)。
更新されたデータ参照時間テーブルの全ての項目に対し
て、図5に示したセグメントテーブルを利用して、デー
タ領域を再セグメント分割し、個々のセグメントに関す
る共起確率を再計算する(ステップ708)。
When the segment of the data referred to in the shared application changes, the item of the corresponding data position of the corresponding shared application in the data reference time table shown in FIG. The difference of the current time is added (step 707).
For all items of the updated data reference time table, the data area is re-segmented using the segment table shown in FIG. 5, and the co-occurrence probabilities for the individual segments are recalculated (step 708). .

【0086】図6(b)に示したセグメント共起確率テ
ーブルの該当する項目を再計算した共起確率で置き換え
る(ステップ709)。テーブルの更新が終了した場
合、キャプチャーしていたイベントをウインドウに渡し
てユーザイベントを実行する(ステップ710)。処理
が終了したらステップ801から繰り返す。
The corresponding item in the segment co-occurrence probability table shown in FIG. 6B is replaced with the recalculated co-occurrence probability (step 709). When the update of the table is completed, the captured event is passed to the window to execute a user event (step 710). Upon completion of the processing, the processing is repeated from step 801.

【0087】図12は,各クライアントコンピュータ上
で稼動するデータ管理プログラムが同一のコンピュータ
上で稼動する通信管理プログラムから変更があったデー
タを送信された場合の動作を示すフローチャートであ
る。
FIG. 12 is a flow chart showing the operation when the data management program running on each client computer sends changed data from the communication management program running on the same computer.

【0088】データ管理プログラムが同一のコンピュー
タ上で稼動する通信管理プログラムから変更データの送
信を待ち(ステップ801)、変更データとして、共有
アプリケーションの種類、変更があった位置、変更デー
タを送信されると(ステップ802)、共有アプリケー
ションの変更された位置のデータがデスクトップ上で可
視状態であるかどうかをチェックし(ステップ80
3)、データが可視状態でない場合、元データを変更デ
ータで置き換える(ステップ804)。
The data management program waits for transmission of the change data from the communication management program running on the same computer (step 801), and the type of the shared application, the position where the change was made, and the change data are transmitted as the change data. (Step 802), it is checked whether the data of the changed position of the shared application is visible on the desktop (Step 80).
3) If the data is not visible, replace the original data with the changed data (step 804).

【0089】データ更新が終了すると,ユーザには変更
通知をせずにステップ801から繰り返す。変更データ
がデスクトップ上で可視状態である場合、変更データを
反映する共有アプリケーションがデスクトップ上でアク
ティブウインドウとして最前面に表示されているかどう
かチェックする(ステップ805)。
When the data update is completed, the process is repeated from step 801 without notifying the user of the change. If the change data is visible on the desktop, it is checked whether the shared application reflecting the change data is displayed on the desktop as the active window on the foreground (step 805).

【0090】変更データを反映する共有アプリケーショ
ンがアクティブでない場合、元データを変更データで置
き換え(ステップ806)、データ更新が終了したらユ
ーザにデータが更新されたことを通知するために、アク
ティブな共有アプリケーションのウインドウに通知メッ
セージを送信する(ステップ807)。通知が終了する
と,ステップ801から繰り返す。変更データを反映す
る共有アプリケーションがアクティブである場合、元デ
ータを変更データで置き換えてよいかユーザに問い合わ
せ(ステップ808)、ユーザが承認しなかった場合、
データの整合性を保つ為、一定時間処理を中断し(ステ
ップ809)、元データを変更データで置き換えてよい
か再度ユーザに問い合わせるためにステップ808から
繰り返す。
If the shared application reflecting the changed data is not active, the original data is replaced with the changed data (step 806). When the data update is completed, the active shared application is notified to notify the user that the data has been updated. (Step 807). When the notification is completed, the process is repeated from step 801. If the shared application reflecting the change data is active, the user is asked whether the original data can be replaced with the change data (step 808). If the user does not approve,
In order to maintain data consistency, the process is interrupted for a certain period of time (step 809), and the process is repeated from step 808 to ask the user again whether the original data can be replaced with the changed data.

【0091】元データを変更データで置き換えるのをユ
ーザが承認した場合、元データを変更データで置き換え
る(ステップ810)。データ更新が終了したらステッ
プ801から繰り返す。
If the user approves the replacement of the original data with the changed data, the original data is replaced with the changed data (step 810). When the data update is completed, the process is repeated from step 801.

【0092】図13は,各クライアントコンピュータ上
で稼動するデータ管理プログラムがデスクトップ上の共
有アプリケーションデータの変更を検知し、他のコンピ
ュータに反映させるときの動作を示すフローチャートで
ある。データ管理プログラムはデスクトップ上で起動し
ている全ての共有アプリケーションで開かれている全て
のデータに対するハンドルを保持し、データ変更イベン
トを監視する(ステップ811)。ユーザがデータを変
更し、データ変更イベントがイベントキューに格納さ
れ、データ管理プログラムがイベントキューに溜まって
いるイベントをキャプチャーした場合(ステップ81
2)、同一のコンピュータ上で稼動している通信管理プ
ログラムに変更データとして、共有アプリケーションの
種類、データが変更された位置、変更データを送信する
(ステップ813)。変更データ送信が終了すると、ス
テップ811から繰り返す。
FIG. 13 is a flowchart showing the operation when the data management program running on each client computer detects a change in the shared application data on the desktop and reflects it on another computer. The data management program holds handles to all data opened by all shared applications running on the desktop and monitors data change events (step 811). When the user changes the data, the data change event is stored in the event queue, and the data management program captures the event stored in the event queue (step 81).
2) The type of the shared application, the location where the data was changed, and the change data are transmitted as change data to the communication management program running on the same computer (step 813). When the change data transmission is completed, the process is repeated from step 811.

【0093】[0093]

【発明の効果】以上説明したように本発明を利用すれ
ば、複数のコンピュータで特定のアプリケーションを共
有し、互いに協調作業を行うシステムにおいて、特定の
コンピュータ上でユーザが変更を加えたデータを他のコ
ンピュータ上の共有アプリケーションに反映する場合
に、変更されたデータを他の全てのコンピュータに転送
するときにネットワークトラフィックが断続的に増大す
るのを抑止するために、データを複数のセグメントに分
割し、各セグメント単位でデータを転送し、かつセグメ
ントが可視状態になっているコンピュータにだけデータ
を転送するため、ネットワークトラフィックを一定値以
下に抑止することが出来る効果がある。
As described above, according to the present invention, in a system in which a plurality of computers share a specific application and cooperate with each other, data modified by a user on the specific computer can be used for other systems. Data into multiple segments to prevent intermittent increases in network traffic when transferring changed data to all other computers when reflected in a shared application on one computer. Since data is transferred in units of segments and data is transferred only to computers in which the segments are visible, network traffic can be suppressed to a certain value or less.

【0094】また、各共有アプリケーション間で同時に
可視状態になる確率が高いデータをまとめて1つのデー
タセットとし、データセットごとにデータを転送するた
め、マウス操作、スクロール、サイズ変更等により可視
状態のデータセグメントが変更された場合に、セグメン
トデータのロード遅延の発生回数を低減することが出来
るという効果がある。
In addition, since data having a high probability of being in a visible state at the same time among the shared applications is collected into one data set, and the data is transferred for each data set, the visible state can be changed by mouse operation, scrolling, size change, and the like. When the data segment is changed, there is an effect that the number of occurrences of the load delay of the segment data can be reduced.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明に係わるデータ転送量保証システムの実
施形態を示すシステム構成図である。
FIG. 1 is a system configuration diagram showing an embodiment of a data transfer amount guarantee system according to the present invention.

【図2】デスクトップ管理プログラムが固定表示領域係
数を計算する時に対象とするデスクトップ上の可視状態
である共有アプリケーションの領域を示す図である。
FIG. 2 is a diagram showing an area of a shared application in a visible state on a target desktop when a desktop management program calculates a fixed display area coefficient.

【図3】デスクトップ管理プログラムが累積表示領域係
数を計算する時に対象とする、デスクトップ上の可視状
態である領域が変化した時に、変化した表示領域を示す
図と、デスクトップ管理プログラムが管理するアプリケ
ーション優先度テーブルの構成を示す図である。
FIG. 3 is a diagram showing a changed display area when a visible area on the desktop changes when a desktop management program calculates a cumulative display area coefficient, and an application priority managed by the desktop management program. It is a figure showing the composition of a degree table.

【図4】データ共有プログラムが各共有アプリケーショ
ンのデータを複数のセグメントに分割した場合のデータ
セグメントの構成を示す図と、データ共有プログラムが
管理するデータ更新頻度テーブルの構成を示す図であ
る。
FIG. 4 is a diagram illustrating a configuration of a data segment when a data sharing program divides data of each shared application into a plurality of segments, and a diagram illustrating a configuration of a data update frequency table managed by the data sharing program.

【図5】データ共有プログラムが管理し、各クライアン
トコンピュータに配布されるセグメントテーブルの構成
を示す図である。
FIG. 5 is a diagram showing a configuration of a segment table managed by a data sharing program and distributed to each client computer.

【図6】デスクトップ管理プログラムが管理するデータ
参照時間テーブルの構成を示す図と、デスクトップ管理
プログラムが管理するセグメント共起確率テーブルの構
成を示す図である。
FIG. 6 is a diagram showing a configuration of a data reference time table managed by the desktop management program, and a diagram showing a configuration of a segment co-occurrence probability table managed by the desktop management program.

【図7】データ共有プログラムが通信制御プログラムか
ら共有アプリケーションのデータ変更を通知されたとき
の動作を示すフローチャートである。
FIG. 7 is a flowchart illustrating an operation when the data sharing program is notified of a data change of the shared application from the communication control program.

【図8】データ共有プログラムが通信制御プログラムか
ら共有アプリケーションの変更データを転送された場合
の動作を示すフローチャートである。
FIG. 8 is a flowchart illustrating an operation when a data sharing program transfers change data of a shared application from a communication control program.

【図9】通信制御プログラムがデータ共有プログラムか
ら共有アプリケーションの変更データの転送が必要かど
うか問い合わせを受信したときの動作を示すフローチャ
ートである。
FIG. 9 is a flowchart illustrating an operation when the communication control program receives an inquiry from the data sharing program as to whether transfer of change data of the shared application is necessary.

【図10】通信制御プログラムがデータ共有プログラム
から更新データを転送された場合の動作、通信制御プロ
グラムがデータ共有プログラムからセグメントテーブル
を配布された場合の動作、通信制御プログラムがデータ
管理プログラムから、ユーザが加えた変更データを送信
された時の動作を示すフローチャートである。
FIG. 10 illustrates an operation when the communication control program transfers update data from the data sharing program, an operation when the communication control program distributes a segment table from the data sharing program, 9 is a flowchart showing an operation when the change data added by the user is transmitted.

【図11】デスクトップ管理プログラムがウインドウや
データの表示領域変更イベントイベントを監視し、管理
テーブルを更新する時の動作を示すフローチャートであ
る。
FIG. 11 is a flowchart showing an operation when the desktop management program monitors a window or data display area change event and updates the management table.

【図12】データ管理プログラムが通信管理プログラム
から変更がデータを送信された場合の動作を示すフロー
チャートである。
FIG. 12 is a flowchart showing an operation when the data management program transmits a change data from the communication management program.

【図13】データ管理プログラムが共有アプリケーショ
ンデータの変更を監視し、他のコンピュータに反映させ
るときの動作を示すフローチャートである。
FIG. 13 is a flowchart illustrating an operation when the data management program monitors a change in shared application data and reflects the change on another computer.

【符号の説明】[Explanation of symbols]

1…サーバコンピュータ、2,3…クライアントコンピ
ュータ、4…ネットワーク、11,21,31…端末装
置、12,22,32…外部記憶装置、12A…データ
共有プログラム、22A,32A…通信管理プログラ
ム、22B,32B…デスクトップ管理プログラム、2
2C,32C…データ管理プログラム、42A…タスク
要求プログラム。
DESCRIPTION OF SYMBOLS 1 ... Server computer, 2, 3 ... Client computer, 4 ... Network, 11, 21, 31 ... Terminal device, 12, 22, 32 ... External storage device, 12A ... Data sharing program, 22A, 32A ... Communication management program, 22B , 32B ... Desktop management program, 2
2C, 32C: Data management program, 42A: Task request program.

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 ネットワークに接続されている複数のコ
ンピュータ上で特定のアプリケーションを共有している
ネットワークシステムにおいて、 サーバコンピュータは各クライアントコンピュータから
変更データを受け付け、変更を加えたコンピュータとは
別のコンピュータに変更データを反映することができる
データ共有プログラム手段を有し、 クライアントコンピュータは他に接続されているクライ
アントコンピュータと協調作業が可能である環境を実現
する為に、データ共有プログラムから変更データの転送
を許可するか判断し、変更データを受信し、デスクトッ
プ上で加えられた共有アプリケーションの変更データを
データ共有プログラムに転送することができる通信管理
プログラム手段と、デスクトップ上でどの共有アプリケ
ーションが可視状態であるか、データのどの部分が参照
されているかを判断するために、マウス操作、スクロー
ル、サイズ変更等のデスクトップユーザイベントを監視
し、イベントが発生した時に管理情報の更新を行なうデ
スクトップ管理プログラム手段と、前記デスクトップ管
理プログラム手段には前記通信管理プログラム手段が変
更データの転送を許可の判断の基準となる管理情報を有
し、 ユーザが共有アプリケーションのデータを変更した時
に、データの変更を検知する為に、デスクトップ上で起
動している全ての共有アプリケーションで開かれている
全てのデータに対するデータ変更イベントを監視し、デ
ータ変更が生じた際に変更データを他のコンピュータに
反映できるように通信制御プログラムに変更データの送
信を行なうデータ管理プログラム手段から構成され、 デスクトップ上のスクリーン全体の表示領域と共有アプ
リケーションの可視状態になっている領域の割合を監視
し、算出した割合を接続されている各クライアントが共
有アプリケーションが表示しているデータの重要度を表
現する指標とし、可視状態になり易いデータが優先的に
転送されることを特徴とする共有アプリケーションにお
けるデータ転送量保証システム。
In a network system in which a specific application is shared on a plurality of computers connected to a network, a server computer receives change data from each client computer, and a computer different from the computer that made the change. Transfer data from the data sharing program to realize an environment in which the client computer can cooperate with other connected client computers. Communication management program means for determining whether to permit the change, receiving the change data, and transferring the change data of the shared application made on the desktop to the data sharing program, and which shared application on the desktop Monitors desktop user events, such as mouse operations, scrolling, and size changes, to determine if the application is visible and which part of the data is being referenced, and updates management information when an event occurs The desktop management program means and the desktop management program means have management information that is used as a criterion for the communication management program means to determine whether to permit the transfer of the changed data. Monitors data change events for all data opened by all shared applications running on the desktop to detect changes, and reflects the changed data to other computers when a data change occurs To send change data to communication control program Monitors the ratio of the display area of the entire screen on the desktop to the visible area of the shared application, and the calculated ratio is the data displayed by each connected client by the shared application. A data transfer amount guarantee system for a shared application, wherein data that tends to be in a visible state is transferred preferentially as an index expressing the importance of the data.
【請求項2】 マウス操作、スクロール、サイズ変更等
によって特定の共有アプリケーションの可視状態な領域
が変化した場合、デスクトップ上のスクリーン全体の領
域と新たに可視状態になる領域の割合の累積値を、デー
タ参照頻度を表現する指標とし、参照頻度が高いデータ
が優先的に転送されることを特徴とする請求項1記載の
データ転送量保証システム。
2. When the visible area of a specific shared application changes due to mouse operation, scrolling, size change, etc., the cumulative value of the ratio of the entire screen area on the desktop to the newly visible area is calculated as: 2. The data transfer amount guarantee system according to claim 1, wherein an index representing the data reference frequency is used, and data with a high reference frequency is transferred with priority.
【請求項3】 特定のコンピュータ上で共有アプリケー
ションのデータが変更された場合、他のコンピュータで
そのデータが可視状態かどうかを問い合わせ、データが
可視状態であるコンピュータと特定のサーバコンピュー
タにだけ変更されたデータを転送することを特徴とする
請求項2記載のデータ転送量保証システム。
3. When data of a shared application is changed on a specific computer, another computer inquires whether the data is visible, and changes the data only on the computer on which the data is visible and on a specific server computer. 3. The data transfer amount guarantee system according to claim 2, wherein the transferred data is transferred.
【請求項4】 データの変更を通知されたが、データが
可視状態ではないために更新データが転送されていない
コンピュータは、データが可視状態になったのをトリガ
ーとして更新データを、特定のサーバコンピュータに要
求することで、データが必要になったときにデータを更
新することができ、また、サーバコンピュータに更新デ
ータ転送を要求することを特徴とする請求項3記載のデ
ータ転送量保証システム。
4. A computer which has been notified of a change in data but has not received update data because the data is not in a visible state, sends the update data in response to the data being in a visible state as a trigger and sends the update data to a specific server. 4. The data transfer amount guarantee system according to claim 3, wherein by requesting the computer, the data can be updated when the data becomes necessary, and the server computer is requested to transfer the updated data.
【請求項5】 各共有アプリケーションが保持するデー
タが変更された場合、データを変更したコンピュータか
ら他のコンピュータへの最大データ転送量の期待値が一
定値以下になるようにしつつ、ウインドウのスクロール
処理の際に更新データが転送される回数を減らすように
アプリケーションデータをセグメント分割をすることを
特徴とする請求項4記載のデータ転送量保証システム。
5. When data held by each shared application is changed, window scroll processing is performed while an expected value of a maximum data transfer amount from a computer that has changed the data to another computer is equal to or less than a certain value. 5. The data transfer amount guarantee system according to claim 4, wherein the application data is segmented so as to reduce the number of times the update data is transferred at the time of the data transfer.
【請求項6】 各共有アプリケーション間でセグメント
化されたデータが同時に複数可視状態にある場合、同時
に可視状態となったデータの組み合わせを共起したデー
タと定義し、前記共起したデータの組みを個々のデータ
セットとして再構成することを特徴とする請求項5記載
のデータ転送量保証システム。
6. When a plurality of segmented data are simultaneously visible in each shared application, a combination of data that is simultaneously visible is defined as co-occurred data, and the co-occurred data set is defined as a co-occurred data. 7. The data transfer amount guarantee system according to claim 5, wherein the data transfer amount is reconstructed as individual data sets.
【請求項7】 各クライアントコンピュータごとにデー
タが共起する確率を計算したテーブルを保持し、特定の
共有アプリケーションのデータに変更が生じた場合に、
テーブル中の共起するデータセットの内で確率が特定の
しきい値を超えるデータを同時に転送することを特徴と
する請求項6記載のデータ転送量保証システム。
7. A table in which the probability of co-occurrence of data is calculated for each client computer, and when data of a specific shared application is changed,
7. The data transfer amount guarantee system according to claim 6, wherein data having a probability exceeding a specific threshold value is simultaneously transferred among the co-occurring data sets in the table.
JP10071767A 1998-03-20 1998-03-20 Transfer quantity assurance system in shared application Pending JPH11272591A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10071767A JPH11272591A (en) 1998-03-20 1998-03-20 Transfer quantity assurance system in shared application

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10071767A JPH11272591A (en) 1998-03-20 1998-03-20 Transfer quantity assurance system in shared application

Publications (1)

Publication Number Publication Date
JPH11272591A true JPH11272591A (en) 1999-10-08

Family

ID=13470041

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10071767A Pending JPH11272591A (en) 1998-03-20 1998-03-20 Transfer quantity assurance system in shared application

Country Status (1)

Country Link
JP (1) JPH11272591A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187379A (en) * 2008-02-07 2009-08-20 Toshiba Corp Virtual computer server unit, updating image detection method, and program
JP2011505739A (en) * 2007-11-30 2011-02-24 サムスン エレクトロニクス カンパニー リミテッド Method and apparatus for sharing data in a near field communication network
EP3506077A1 (en) 2017-12-28 2019-07-03 Fujitsu Limited Effective synchronous communication of screen information shared among information processing apparatuses
CN114385336A (en) * 2021-12-27 2022-04-22 同济大学 Anti-interference scheduling method and device for flow big data processing task

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011505739A (en) * 2007-11-30 2011-02-24 サムスン エレクトロニクス カンパニー リミテッド Method and apparatus for sharing data in a near field communication network
JP2009187379A (en) * 2008-02-07 2009-08-20 Toshiba Corp Virtual computer server unit, updating image detection method, and program
US8255900B2 (en) 2008-02-07 2012-08-28 Kabushiki Kaisha Toshiba Virtual computer server apparatus, and update image detection method
EP3506077A1 (en) 2017-12-28 2019-07-03 Fujitsu Limited Effective synchronous communication of screen information shared among information processing apparatuses
US10871990B2 (en) 2017-12-28 2020-12-22 Fujitsu Limited Effective synchronous communication of screen information shared among information processing apparatuses
CN114385336A (en) * 2021-12-27 2022-04-22 同济大学 Anti-interference scheduling method and device for flow big data processing task

Similar Documents

Publication Publication Date Title
EP2665001B1 (en) Architectural pattern for persistent web application design
US5829001A (en) Database updates over a network
US9086914B2 (en) System and method for reducing startup cost of a software application
JP4006066B2 (en) System for cache management in mobile user file system
US8275902B2 (en) Method and system for heuristic throttling for distributed file systems
US7089564B2 (en) High-performance memory queue
JP2004062869A (en) Method and apparatus for selective caching of transactions in computer system
EP2062125A2 (en) System and method for providing high availability data
JP4574230B2 (en) Database management method and database system
US11240188B2 (en) Large data management in communication applications through multiple mailboxes
JP2002324155A (en) Workflow system and program
CN109684270A (en) Database filing method, apparatus, system, equipment and readable storage medium storing program for executing
US20030217114A1 (en) Method and system for caching network data
US20030105780A1 (en) File system, control method, and program
US5813042A (en) Methods and systems for control of memory
US6539389B1 (en) Pacing the frequency at which systems of a multisystem environment compress log streams
US6353845B1 (en) Computer system, program product and method for tracking asynchronous I/O with timeout support
CN111736975A (en) Request control method and device, computer equipment and computer readable storage medium
JPH11272591A (en) Transfer quantity assurance system in shared application
US6591346B1 (en) Mechanism for managing an object cache
CN114513468A (en) Method, device, equipment, storage medium and product for protecting flow in Sentinel
CN113014683A (en) Request processing method and device, electronic equipment and storage medium
CN113051244A (en) Data access method and device, and data acquisition method and device
CN116303513A (en) Data loading method, device and medium of distributed platform
JP2003131909A (en) File management apparatus in computer network system and method therefor