JPH05303544A - Data transfer controller - Google Patents

Data transfer controller

Info

Publication number
JPH05303544A
JPH05303544A JP4109720A JP10972092A JPH05303544A JP H05303544 A JPH05303544 A JP H05303544A JP 4109720 A JP4109720 A JP 4109720A JP 10972092 A JP10972092 A JP 10972092A JP H05303544 A JPH05303544 A JP H05303544A
Authority
JP
Japan
Prior art keywords
buffer
communication
data transfer
processing
processing means
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
JP4109720A
Other languages
Japanese (ja)
Inventor
Satoshi Hosoi
聡 細井
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP4109720A priority Critical patent/JPH05303544A/en
Publication of JPH05303544A publication Critical patent/JPH05303544A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Information Transfer Systems (AREA)

Abstract

PURPOSE:To shorten the time required for transfer processing as to the controller for data transfer between application processes in a computer system applied with virtual storage. CONSTITUTION:The data transfer controller for the computer system which is equipped with plural processing means 101 and a common memory 102 accessed by those information means 101 and applied with the virtual storage system is equipped with a fitting means 112 which secures part of the common memory 102 as a common buffer area 111 and fits the common buffer area 111 to the processing means 101 as storage areas starting at the same logical address, an assigning means 113 which assigns the partial storage area of the common buffer area 111 as a communication buffer at a communication buffer acquisition request from each processing means 101, and a transmitting means 114 which transmits the logical address of the corresponding buffer to a processing means 101 at a transfer destination according to a data transfer indication from the processing means 101.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、仮想記憶を適用したコ
ンピュータシステムにおいて、アプリケーションプロセ
ス間のデータ転送を制御するデータ転送制御装置に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data transfer control device for controlling data transfer between application processes in a computer system to which virtual memory is applied.

【0002】近年、利用者の間でのソフトウェア資産を
共有化を進めるために、コンピュータのオペレーティン
グシステムの標準化が進んでおり、オペレーティングシ
ステムとしてUNIX(UNIXは、米国AT&Tベル
研究所で開発されたオペレーティングシステムである)
を搭載したコンピュータシステムへの需要が高まってい
る。
In recent years, computer operating systems have been standardized in order to promote the sharing of software assets among users. UNIX (UNIX is an operating system developed by AT & T Bell Laboratories in the United States as an operating system. System)
There is an increasing demand for computer systems equipped with.

【0003】UNIXに代表される近年のオペレーティ
ングシステムは、仮想記憶を適用しているものが多く、
また、UNIXはワークステーションなどにも幅広く採
用されている。このため、大型計算機だけでなくワーク
ステーションの利用者も、仮想記憶方式を利用した大規
模プログラムの実行が可能となっている。
Many of the recent operating systems represented by UNIX apply virtual memory,
UNIX is also widely used in workstations and the like. Therefore, not only a large-scale computer but also a user of a workstation can execute a large-scale program using the virtual memory system.

【0004】このような仮想記録を適用したコンピュー
タシステムにおいては、メモリ空間は見かけ上は無限で
あることから、利用者は無制限にアプリケーションプロ
セスを生成してプログラムを実行させている。このた
め、これらのアプリケーションプロセス間のデータ転送
を効率的に行う技法が必要とされている。
In a computer system to which such virtual recording is applied, the memory space is seemingly infinite, so that the user creates an unlimited number of application processes and executes the programs. Therefore, there is a need for a technique for efficiently transferring data between these application processes.

【0005】[0005]

【従来の技術】従来は、アプリケーションプロセス間の
データ転送は、オペレーティングシステムが提供するプ
ロセス間通信によって行われている。
2. Description of the Related Art Conventionally, data transfer between application processes is performed by interprocess communication provided by an operating system.

【0006】図3に、従来のデータ転送処理の説明図を
示す。図3において、アプリケーションプロセス(以
下、単にプロセスと略称する)310,320は、それ
ぞれ作業用のバッファ311,321の他に、通信バッ
ファ312,322を確保している。例えば、プロセス
310からプロセス320にデータ転送を行う際には、
プロセス310は、バッファ311から通信バッファ3
12に必要なデータおよびデータの内容を示す制御ブロ
ックをコピーし、オペレーティングシステム(OS)3
30に対して、通信処理の依頼を行う。
FIG. 3 shows an explanatory diagram of a conventional data transfer process. In FIG. 3, application processes (hereinafter, simply referred to as processes) 310 and 320 secure communication buffers 312 and 322 in addition to work buffers 311 and 321 respectively. For example, when transferring data from the process 310 to the process 320,
The process 310 includes the buffer 311 to the communication buffer 3
A control block showing necessary data and data contents is copied to the operating system (OS) 3
Request communication processing to 30.

【0007】これに応じて、オペレーティングシステム
330は、自身が確保しているバッファ331に上述し
た通信バッファ312の内容をコピーし、更に、このバ
ッファ331の内容をプロセス320の通信バッファ3
22にコピーする。
In response to this, the operating system 330 copies the contents of the above-mentioned communication buffer 312 into the buffer 331 secured by itself, and further, the contents of this buffer 331 are copied into the communication buffer 3 of the process 320.
Copy to 22.

【0008】また、このとき、オペレーティングシステ
ム330は、プロセス320に通信バッファ322にプ
ロセス310からのデータが書き込まれた旨を通知す
る。これに応じて、プロセス320が、通信バッファ3
22の内容をバッファ321にコピーすることにより、
プロセス310からプロセス320へのデータ転送処理
が完了する。
At this time, the operating system 330 also notifies the process 320 that the data from the process 310 has been written to the communication buffer 322. In response, the process 320 causes the communication buffer 3
By copying the contents of 22 into the buffer 321,
The data transfer process from the process 310 to the process 320 is completed.

【0009】[0009]

【発明が解決しようとする課題】ところで、利用者側か
らみると1つに見えるプロセスも、実際には、機能別に
モジュール化されており、各モジュールがそれぞれプロ
セスとして実行されている場合が多い。このような構成
では、各プロセスが並列して動作可能であるので、全体
としての処理を効率的に進めることができる反面、プロ
セス間のデータ転送処理の頻度が高くなると、オペレー
ティングシステムのオーバーヘッドのために全体の処理
速度が低下してしまう。
By the way, a process that appears to the user as one is actually modularized according to the function, and each module is often executed as a process. With such a configuration, since each process can operate in parallel, the processing as a whole can be efficiently advanced, but if the frequency of data transfer processing between processes becomes high, it will be due to the overhead of the operating system. Therefore, the overall processing speed will decrease.

【0010】特に、通信網を介して他の処理装置上のプ
ロセスとの間で行われる通信処理は、多数の機能を持っ
たプロセスからなる階層構造によって実現されているの
で、各階層のプロセス間通信による処理速度の低下が著
しい。このため、トランスポート層以下の各階層の通信
機能を提供するモジュールをシステム内に組み込んで、
これらの階層間のデータ転送処理を効率的に行う仕組み
(ストリーム)が実現されている。
In particular, since communication processing performed with processes on other processing devices via a communication network is realized by a hierarchical structure composed of processes having a large number of functions, the processes between the processes of each hierarchy are The processing speed decreases significantly due to communication. Therefore, a module that provides the communication function of each layer below the transport layer is installed in the system,
A mechanism (stream) for efficiently performing data transfer processing between these layers has been realized.

【0011】一方、最上位の階層であるアプリケーショ
ン層においては、処理性能よりもむしろアプリケーショ
ンプログラムを開発する際の自由度を優先する必要があ
るため、オーバーヘッドを削減する対策はとられていな
かった。
On the other hand, in the application layer, which is the highest layer, it is necessary to prioritize the degree of freedom in developing an application program rather than the processing performance, and therefore no measures have been taken to reduce the overhead.

【0012】しかしながら、アプリケーション層におい
ても複数のプロセスが階層を形成している場合があり、
これらのプロセスでプロセス間通信を行う際のオーバー
ヘッドにより、処理性能が著しく劣化してしまう場合が
あった。
However, in the application layer as well, a plurality of processes may form a hierarchy,
The processing performance may be significantly deteriorated due to the overhead of performing inter-process communication in these processes.

【0013】本発明は、アプリケーションプロセス間の
データ転送処理に要する時間を短縮するデータ転送制御
装置を提供することを目的とする。
An object of the present invention is to provide a data transfer control device that shortens the time required for data transfer processing between application processes.

【0014】[0014]

【課題を解決するための手段】図1は、本発明の原理ブ
ロック図である。本発明は、複数の処理手段101とこ
れらの処理手段101からアクセス可能な共用メモリ1
02とを備え、仮想記憶方式を適用したコンピュータシ
ステムのデータ転送制御装置において、共用メモリ10
2の一部の記憶領域を共通バッファ領域111として確
保し、複数の処理手段101それぞれに共通バッファ領
域111を同一の論理アドレスから始まる記憶領域とし
て取り付ける取り付け手段112と、複数の処理手段1
01それぞれからの通信バッファ獲得要求に応じて、共
通バッファ領域111の少なくとも一部の記憶領域を通
信バッファとして割り当てる割当て手段113と、複数
の処理手段101それぞれからのデータ転送指示に応じ
て、該当する通信バッファを示す論理アドレスを転送先
となる処理手段101に伝送する伝送手段114とを備
えたことを特徴とする。
FIG. 1 is a block diagram showing the principle of the present invention. The present invention relates to a plurality of processing means 101 and a shared memory 1 accessible from these processing means 101.
And a shared memory 10 in a data transfer control device of a computer system to which a virtual memory system is applied.
2, a part of the storage area is secured as the common buffer area 111, the common buffer area 111 is attached to each of the plurality of processing means 101 as a storage area starting from the same logical address, and the plurality of processing means 1
01 in accordance with a communication buffer acquisition request from each of the common buffer area 111, the allocation means 113 for allocating at least a part of the storage area of the common buffer area 111 as a communication buffer, and a data transfer instruction from each of the plurality of processing means 101. And a transmission means 114 for transmitting the logical address indicating the communication buffer to the processing means 101 which is the transfer destination.

【0015】[0015]

【作用】本発明は、取り付け手段112により、共用メ
モリ102内に設けられた共通バッファ領域111を複
数の処理手段101に同一の論理アドレスで取り付るの
で、各処理手段101は統一された論理アドレスを用い
て、上述した共通バッファ領域111の内容を参照する
ことができる。
According to the present invention, the mounting means 112 attaches the common buffer area 111 provided in the shared memory 102 to a plurality of processing means 101 at the same logical address, so that each processing means 101 has a unified logic. By using the address, the contents of the common buffer area 111 described above can be referred to.

【0016】したがって、複数の処理手段101相互間
でデータ転送を行う際に、伝送手段114が、割当て手
段113によって送信側の処理手段101に割り当てら
れた通信バッファの論理アドレスを転送先の処理手段1
01に伝送することにより、転送先の処理手段101
は、該当する通信バッファの内容を参照可能となる。
Therefore, when data is transferred between the plurality of processing means 101, the transmission means 114 transfers the logical address of the communication buffer assigned to the processing means 101 on the transmission side by the assigning means 113 to the processing means of the transfer destination. 1
01 to the transfer destination processing means 101.
Can refer to the contents of the corresponding communication buffer.

【0017】この場合は、転送しようとするデータその
ものを伝送する必要がないので、アプリケーションプロ
セス間のデータ転送処理に適用すれば、データ転送処理
に要する時間を短縮可能である。
In this case, since it is not necessary to transmit the data itself to be transferred, the time required for the data transfer processing can be shortened by applying it to the data transfer processing between application processes.

【0018】[0018]

【実施例】以下、図面に基づいて本発明の実施例につい
て詳細に説明する。図2は、本発明のデータ転送制御装
置を適用したコンピュータシステムの実施例構成を示
す。
Embodiments of the present invention will now be described in detail with reference to the drawings. FIG. 2 shows an embodiment configuration of a computer system to which the data transfer control device of the present invention is applied.

【0019】図2において、メモリ管理部211および
通信制御部212は、オペレーティングシステム(O
S)210の一部である。メモリ管理部211は、この
コンピュータシステム上で起動された各プロセスにおけ
る論理アドレスとメモリ220における物理アドレスと
の対応関係を保持しており、この対応関係に基づいて、
各プロセスからのアクセスを制御するものである。ま
た、通信制御部212は、各プロセス間に通信パスを設
定し、この通信パスを介するプロセス間通信を制御する
ものである。
In FIG. 2, a memory management unit 211 and a communication control unit 212 are shown as operating system (O).
S) part of 210. The memory management unit 211 holds a correspondence relationship between a logical address in each process activated on this computer system and a physical address in the memory 220, and based on this correspondence relationship,
It controls access from each process. Further, the communication control unit 212 sets a communication path between the processes and controls inter-process communication via this communication path.

【0020】また、上述したメモリ220の一部は、オ
ペレーティングシステムとアプリケーションプロセスと
が共通に利用できる共用メモリ221となっている。ま
た、図2において、アプリケーションプロセス230
a,230bは、従来のアプリケーションプロセスの通
信処理部231にアクセス制御部232をリンクした構
成となっている。以下、アプリケーションプロセス23
0a,230bを総称する場合は、単にアプリケーショ
ンプロセス230と称する。
A part of the above-mentioned memory 220 is a shared memory 221 which can be commonly used by the operating system and the application process. Further, in FIG. 2, the application process 230
Each of a and 230b has a configuration in which an access control unit 232 is linked to the communication processing unit 231 of the conventional application process. Below, application process 23
0a and 230b are collectively referred to as application process 230.

【0021】上述した通信処理部231は、処理手段1
01に相当するものである。また、アクセス制御部23
2は、通信処理部231からの指示に応じて、共用メモ
リ221および後述するバッファ管理プロセス240と
の間の情報の授受を媒介する構成となっている。
The communication processing unit 231 described above is the processing means 1
It corresponds to 01. In addition, the access control unit 23
2 is configured to mediate transfer of information between the shared memory 221 and a buffer management process 240 described later in response to an instruction from the communication processing unit 231.

【0022】図2において、バッファ管理プロセス24
0のバッファ確保処理部241は、上述した共用メモリ
221の一部の記憶領域を共通バッファ領域111とし
て確保するものである。また、受付/解析部242は、
アプリケーションプロセス230から入力される指示を
解析して、獲得制御部243,解放制御部244,書込
制御部245それぞれに対する指示を送出する構成とな
っており、これらの各部によって、上述した共通バッフ
ァ領域111の割当てや解放などの管理を行う構成とな
っている。
In FIG. 2, the buffer management process 24
The buffer reservation processing unit 241 for 0 reserves a part of the storage area of the shared memory 221 as the common buffer area 111. In addition, the reception / analysis unit 242
The instruction input from the application process 230 is analyzed and the instruction is sent to each of the acquisition control unit 243, the release control unit 244, and the write control unit 245. By these units, the common buffer area described above is used. It is configured to manage allocation and release of 111.

【0023】ここで、上述したバッファ確保処理部24
1は、共通バッファ領域111を確保する際に、論理ア
ドレスALを先頭アドレスとして指定して、メモリ管理部
211に取り付けを依頼すればよい。これに応じて、メ
モリ管理部211により、論理アドレスALと共用メモリ
221の該当する物理アドレスとの間の対応関係が設定
される。
Here, the above-mentioned buffer reservation processing section 24
When securing the common buffer area 111, 1 may request the memory management unit 211 to attach by designating the logical address AL as the start address. In response to this, the memory management unit 211 sets the correspondence between the logical address AL and the corresponding physical address of the shared memory 221.

【0024】この論理アドレスALとしては、アプリケー
ションプログラムのサイズとして考えられる上限よりも
充分に大きい値を設定すればよい。また、共通バッファ
領域111として確保する記憶領域の先頭の物理アドレ
スは、コンピュータシステム内部で予め取り決めておけ
ばよい。
As the logical address AL, a value sufficiently larger than the upper limit considered as the size of the application program may be set. Further, the top physical address of the storage area secured as the common buffer area 111 may be determined in advance inside the computer system.

【0025】また、バッファ確保処理部241は、上述
したようにして確保した共通バッファ領域111を予め
それぞれ適当な容量を有する複数のバッファに分割し、
各バッファに識別番号を対応させておけばよい。また、
各バッファの割当て状況を示すバッファ管理テーブル2
46を設け、このバッファ管理テーブル246を参照し
ながら、上述した獲得制御部243,解放制御部24
4,書込制御部245が動作する構成とすればよい。
The buffer reservation processing section 241 divides the common buffer area 111 reserved as described above into a plurality of buffers each having an appropriate capacity in advance,
An identification number may be associated with each buffer. Also,
Buffer management table 2 showing allocation status of each buffer
46, and referring to the buffer management table 246, the acquisition control unit 243 and the release control unit 24 described above are provided.
4, the write controller 245 may be operated.

【0026】なお、このバッファ管理プロセス240
は、他のアプリケーションプロセス230よりも先に起
動されている必要があるので、コンピュータシステムの
立ち上げ処理の延長上で起動するとともに、いわゆるデ
ーモンプロセスとしておけばよい。
The buffer management process 240
Needs to be started prior to other application processes 230, so it can be started as an extension of the startup process of the computer system and can be set as a so-called daemon process.

【0027】また、図2において、アクセス制御部23
2は、アプリケーションプロセス230の起動に応じ
て、取り付け処理部233が共通バッファ領域111の
取り付け処理を行い、他のプロセスとの間で通信を行う
際に、獲得/解放処理部234がバッファ管理プロセス
240を介して共通バッファ領域111内に通信バッフ
ァを獲得して、転送処理部245と書込処理部246と
により、転送処理を実行する構成となっている。
Further, in FIG. 2, the access control unit 23
2, the attachment processing unit 233 performs the attachment processing of the common buffer area 111 according to the activation of the application process 230, and the acquisition / release processing unit 234 causes the buffer management process to perform the communication with other processes. A communication buffer is acquired in the common buffer area 111 via 240, and the transfer processing is performed by the transfer processing unit 245 and the write processing unit 246.

【0028】ここで、アクセス制御部232とバッファ
管理プロセス240および他のアプリケーションプロセ
ス230との間の情報の授受は、通信制御部212によ
って設定される通信パスを介したプロセス通信によって
行われている。但し、図2においては、説明の簡明のた
めに、アクセス制御部232を形成する各部とバッファ
管理プロセス240および他のアプリケーションプロセ
ス230との間で授受される情報の流れを示した。ま
た、図2においては、アプリケーションプロセス230
aの内部構成のみを示したが、アプリケーションプロセ
ス230bの構成も同様である。
Here, the exchange of information between the access control section 232 and the buffer management process 240 and other application process 230 is performed by process communication via the communication path set by the communication control section 212. .. However, in FIG. 2, the flow of information exchanged between each unit forming the access control unit 232 and the buffer management process 240 and the other application process 230 is shown for the sake of simplicity. Also, in FIG. 2, the application process 230
Although only the internal configuration of a is shown, the configuration of the application process 230b is similar.

【0029】また、バッファ管理プロセス240は、通
信パス制御部247と通信パステーブル248とを備え
ており、通信パス制御部247が、通信制御部212,
獲得制御部243,解放制御部244からの通知に応じ
て、各アプリケーションプロセス230との間に設定さ
れた通信パスと共通バッファ領域111内の各バッファ
との対応関係を認識し、通信パステーブル248に保持
する構成となっている。また、通信制御部212からア
プリケーションプロセス230との間の通信パスが切断
された旨が通知された場合に、通信パス制御部247
は、該当するアプリケーション230が異常終了したと
判断し、解放制御部244に共通バッファ領域111の
対応する領域の解放を指示すればよい。
Further, the buffer management process 240 includes a communication path control unit 247 and a communication path table 248. The communication path control unit 247 causes the communication control unit 212,
In response to the notifications from the acquisition control unit 243 and the release control unit 244, the correspondence relation between the communication path set with each application process 230 and each buffer in the common buffer area 111 is recognized, and the communication path table 248. It is configured to hold. Further, when the communication control unit 212 notifies that the communication path to the application process 230 has been disconnected, the communication path control unit 247.
Determines that the corresponding application 230 has terminated abnormally, and instructs the release control unit 244 to release the corresponding region of the common buffer region 111.

【0030】このように、通信パス制御部247が通信
パスの監視を行うことにより、間接的にアプリケーショ
ンプロセス230を監視することができ、アプリケーシ
ョンプロセス230の異常終了などに柔軟に対応するこ
とが可能である。
As described above, the communication path control unit 247 monitors the communication path, so that the application process 230 can be indirectly monitored, and it is possible to flexibly deal with abnormal termination of the application process 230. Is.

【0031】以下、本発明のデータ転送制御装置の動作
について説明する。まず、コンピュータシステムの立ち
上げ処理に続いて、バッファ管理プロセス240が起動
される。これに応じてバッファ確保処理部241が動作
し、メモリ管理部211を介して共用メモリ221の一
部を共通バッファ領域111として確保し、例えば2の
巾乗バイトごとにこの共通バッファ領域111を区切っ
て、幾つかの異なる容量を持つバッファを作成する。
The operation of the data transfer control device of the present invention will be described below. First, following the computer system startup processing, the buffer management process 240 is activated. In response to this, the buffer reservation processing unit 241 operates to reserve a part of the shared memory 221 as the common buffer area 111 via the memory management unit 211, and divides the common buffer area 111 into, for example, every 2 power bytes. To create a buffer with several different capacities.

【0032】このとき、バッファ確保処理部241は、
共通バッファ領域111を区切って得られる各バッファ
に対応して、データ部分の先頭アドレスや各バッファ間
のチェインなどの関係を保持する制御ヘッダを設けてお
けばよい。
At this time, the buffer reservation processing section 241
A control header may be provided corresponding to each buffer obtained by dividing the common buffer area 111 so as to hold a relation such as a start address of a data part and a chain between the buffers.

【0033】このように、共通バッファ領域111を予
め様々な容量を有するバッファに区切っておき、アプリ
ケーションプロセス230からの要求に応じて、適切な
容量のバッファを速やかに割当てることができる。ま
た、バッファ間の関係を制御ヘッダによって示す構成と
することにより、バッファのチェインなどにも対応可能
である。
As described above, the common buffer area 111 is divided into buffers having various capacities in advance, and a buffer having an appropriate capacity can be promptly allocated in response to a request from the application process 230. Further, by configuring the relationship between the buffers by the control header, it is possible to deal with a chain of buffers.

【0034】その後、アプリケーションプロセス230
が起動されると、それぞれのアクセス制御部232に設
けられた取り付け処理部233が動作を開始する。この
取り付け処理部233は、まず、バッファ管理プロセス
240との間の通信パスの設定を通信制御部212に依
頼し、設定され通信パスを介して、バッファ管理プロセ
ス240に共通バッファ領域111の取り付けアドレス
を要求する。
Thereafter, the application process 230
When is activated, the attachment processing unit 233 provided in each access control unit 232 starts its operation. The attachment processing unit 233 first requests the communication control unit 212 to set a communication path with the buffer management process 240, and the attachment address of the common buffer area 111 is sent to the buffer management process 240 via the set communication path. To request.

【0035】これに応じて、バッファ管理プロセス24
0の受付/解析部242は、バッファ確保処理部241
に対して、共通バッファ領域111を確保した際にメモ
リ管理部211に指定した論理アドレスALの通知を要求
し、得られた論理アドレスALを取り付け処理部233に
通知すればよい。
In response, the buffer management process 24
The reception / analysis unit 242 of 0 is the buffer reservation processing unit 241.
On the other hand, when the common buffer area 111 is secured, the memory management unit 211 may be requested to notify the specified logical address AL, and the obtained logical address AL may be notified to the attachment processing unit 233.

【0036】また、取り付け処理部233は、通知され
た論理アドレスALを指定して、メモリ管理部211に対
して共通バッファ領域111の取り付けを依頼し、これ
に応じて、メモリ管理部211により、該当するアプリ
ケーションプロセス230の論理アドレス空間の論理ア
ドレスALから始まる記憶領域に共通バッファ領域111
に相当する共用メモリ221の記憶領域が対応づけられ
る。
Further, the attachment processing unit 233 requests the memory management unit 211 to attach the common buffer area 111 by designating the notified logical address AL, and in response thereto, the memory management unit 211 The common buffer area 111 is stored in the storage area starting from the logical address AL of the logical address space of the corresponding application process 230.
The storage area of the shared memory 221 corresponding to is associated with.

【0037】このようにして、各アプリケーションプロ
セス230の取り付け処理部233による取り付け処理
を行うことにより、各アプリケーションプロセス230
間で、共通バッファ領域111の論理アドレスを統一す
ることができる。すなわち、取り付け処理部233と受
付/解析部242とバッファ確保処理部241とメモリ
管理部211とにより、取り付け手段112の機能を実
現する構成となっている。
In this way, by performing the attachment processing by the attachment processing unit 233 of each application process 230, each application process 230
It is possible to unify the logical addresses of the common buffer area 111 among them. That is, the attachment processing unit 233, the reception / analysis unit 242, the buffer reservation processing unit 241, and the memory management unit 211 are configured to realize the function of the attachment unit 112.

【0038】また、このとき、通信制御部212から各
アプリケーションプロセス230との間に設定された通
信パスの識別番号が、バッファ管理プロセス240の通
信パス制御部247に通知されている。
At this time, the communication control unit 212 notifies the communication path control unit 247 of the buffer management process 240 of the communication path identification number set with each application process 230.

【0039】その後、例えばアプリケーションプロセス
230aからアプリケーションプロセス230bへのデ
ータ転送処理に先立って、アプリケーションプロセス2
30aの通信処理部231は、従来と同様に、通信制御
部212に対してアプリケーションプロセス230bと
の間の通信パスの設定を依頼する。これに応じて、オペ
レーティングシステム210により、従来と同様にアプ
リケーションプロセス230a,230b間に通信パス
が設定される。
Thereafter, for example, prior to data transfer processing from the application process 230a to the application process 230b, the application process 2
The communication processing unit 231 of 30a requests the communication control unit 212 to set a communication path with the application process 230b, as in the conventional case. In response to this, the operating system 210 sets a communication path between the application processes 230a and 230b as in the conventional case.

【0040】このとき、アクセス制御部232の獲得/
解放処理部234は、通信処理部231からのバッファ
獲得指示に応じて、オペレーティングシステム210を
介して制御ブロックに相当する容量を有する通信バッフ
ァを獲得するとともに、バッファ管理プロセス240と
の間に設定された通信パスを介して通信バッファ獲得要
求を送出する。ここで、獲得/解放処理部234は、こ
の通信バッファ獲得要求で、転送しようとするデータ量
に相当する容量の通信バッファを共通バッファ領域11
1から獲得する旨を要求すればよい。
At this time, the access control unit 232 is acquired /
The release processing unit 234 acquires a communication buffer having a capacity corresponding to a control block via the operating system 210 according to the buffer acquisition instruction from the communication processing unit 231, and is set between the release processing unit 234 and the buffer management process 240. The communication buffer acquisition request is transmitted via the communication path. Here, the acquisition / release processing unit 234 uses the communication buffer acquisition request to set the communication buffer having a capacity corresponding to the amount of data to be transferred to the common buffer area 11.
You only have to request the acquisition from 1.

【0041】この要求に応じて、バッファ管理プロセス
240の受付/解析部242は獲得制御部243を起動
し、この獲得制御部243により、指定された容量に対
応するバッファの獲得処理が行われ、獲得されたバッフ
ァに対応する識別情報(例えば制御ヘッダ)が、受付/
解析部242を介して獲得/解放処理部234に通知さ
れる。
In response to this request, the reception / analysis unit 242 of the buffer management process 240 activates the acquisition control unit 243, and the acquisition control unit 243 performs the acquisition process of the buffer corresponding to the designated capacity, The identification information (for example, control header) corresponding to the acquired buffer is accepted / received.
The acquisition / release processing unit 234 is notified via the analysis unit 242.

【0042】このように、各アプリケーションプロセス
230の獲得/解放処理部234からの要求に応じて、
バッファ管理プロセス240の受付/解析部242と獲
得制御部243とが動作することにより、割当て手段1
13の機能が実現され、各アプリケーションプロセス2
30に、共通バッファ領域111に含まれるバッファを
割り当てることができる。
In this way, according to the request from the acquisition / release processing section 234 of each application process 230,
The accepting / analyzing unit 242 and the acquisition control unit 243 of the buffer management process 240 operate so that the allocation unit 1
13 functions are realized, and each application process 2
A buffer included in the common buffer area 111 can be assigned to 30.

【0043】このとき、獲得制御部243が、獲得した
バッファに対応する識別番号を通信パス制御部247に
通知し、これに応じて、通信パス制御部247が、この
バッファの識別番号を該当する通信パスの識別番号に対
応して通信パステーブル248に格納すればよい。
At this time, the acquisition control unit 243 notifies the communication path control unit 247 of the identification number corresponding to the acquired buffer, and accordingly, the communication path control unit 247 applies the identification number of this buffer. It may be stored in the communication path table 248 corresponding to the identification number of the communication path.

【0044】なお、通信処理部231からチェインされ
た複数のバッファの獲得が指示された場合は、獲得/解
放処理部234は、各バッファの容量およびチェインす
る旨を指定して通信バッファ獲得要求を送出すればよ
い。この場合は、獲得制御部243により、共通バッフ
ァ領域111から複数のバッファを獲得して、先頭のバ
ッファに対応する制御ヘッダに次のバッファの制御ヘッ
ダを示すポインタを格納し、この制御ヘッダを獲得した
バッファの識別情報として獲得/解放処理部234に通
知すればよい。また、これらのバッファの識別番号は通
信パス制御部247に通知され、該当する通信パスの識
別番号に対応して、通信パステーブル248に格納され
る。
When acquisition of a plurality of chained buffers is instructed by the communication processing unit 231, the acquisition / release processing unit 234 requests the communication buffer acquisition request by designating the capacity of each buffer and the effect of chaining. Just send it out. In this case, the acquisition control unit 243 acquires a plurality of buffers from the common buffer area 111, stores a pointer indicating the control header of the next buffer in the control header corresponding to the first buffer, and acquires this control header. The acquisition / release processing unit 234 may be notified as the identification information of the created buffer. Also, the identification numbers of these buffers are notified to the communication path control unit 247 and stored in the communication path table 248 in correspondence with the identification numbers of the corresponding communication paths.

【0045】このようにして、メモリ管理部211を介
して通信バッファを獲得した場合と同様に、通信バッフ
ァのチェインにも対応することができる。また、バッフ
ァ管理テーブル246は、例えば、各バッファの識別情
報に対応して、そのバッファを獲得したアプリケーショ
ンプロセス230に対応する通信パスの識別番号を格納
する構成とすればよい。この場合は、上述した獲得制御
部243は、獲得/解放処理部233からの指示に応じ
てバッファを獲得するごとに、そのアプリケーションプ
ロセスに対応する通信パスの識別番号をバッファ管理テ
ーブル246の該当するバッファの識別情報に対応して
格納すればよい。
In this way, a chain of communication buffers can be dealt with in the same manner as when a communication buffer is acquired via the memory management unit 211. Further, the buffer management table 246 may be configured to store, for example, the identification number of the communication path corresponding to the application process 230 that acquired the buffer, corresponding to the identification information of each buffer. In this case, each time the acquisition control unit 243 described above acquires a buffer in response to an instruction from the acquisition / release processing unit 233, the identification number of the communication path corresponding to the application process corresponds to the buffer management table 246. It may be stored corresponding to the identification information of the buffer.

【0046】ここで、上述したように、アプリケーショ
ンプロセス230a,230bは、同一の論理アドレス
ALを指定して共通バッファ領域111を取り付けている
から、同一の論理アドレスを指定することにより、この
共通バッファ領域111の各バッファの内容を参照可能
である。
Here, as described above, the application processes 230a and 230b have the same logical address.
Since the common buffer area 111 is attached by designating AL, the content of each buffer in the common buffer area 111 can be referred to by designating the same logical address.

【0047】したがって、送信側のアプリケーションプ
ロセス230が、上述したようにして獲得した共通バッ
ファ領域111内のバッファに、送信しようとするデー
タを格納し、このバッファのアドレスを受信側のアプリ
ケーションプロセス230に通知すれば、受信側のアプ
リケーションプロセス230が該当するバッファに格納
されたデータを参照することができる。すなわち、共通
バッファ領域111内に獲得されたバッファのアドレス
に相当する識別情報を伝送することにより、アプリケー
ションプロセス230a,230b間のデータ転送処理
を実現することができる。
Therefore, the application process 230 on the transmission side stores the data to be transmitted in the buffer in the common buffer area 111 acquired as described above, and the address of this buffer is stored in the application process 230 on the reception side. When notified, the application process 230 on the receiving side can refer to the data stored in the corresponding buffer. That is, by transmitting the identification information corresponding to the buffer address acquired in the common buffer area 111, the data transfer process between the application processes 230a and 230b can be realized.

【0048】以下、データの転送処理を具体的に説明す
る。アプリケーションプロセス230aからアプリケー
ションプロセス230bへデータの転送を行う際には、
まず、アプリケーションプロセス230aの通信処理部
231により、自身の作業領域から通信バッファへのデ
ータの複写処理が指示される。
The data transfer process will be specifically described below. When transferring data from the application process 230a to the application process 230b,
First, the communication processing unit 231 of the application process 230a gives an instruction to copy data from its own work area to the communication buffer.

【0049】この指示に応じて、書込処理部236は、
まず、バッファ管理プロセス240に対して、アプリケ
ーションプロセス230aが共通バッファ領域111内
に獲得した通信バッファへの書込要求を行う。
In response to this instruction, the writing processor 236
First, the application process 230a requests the buffer management process 240 to write to the communication buffer acquired in the common buffer area 111.

【0050】これに応じて、バッファ管理プロセス24
0の受付/解析部242は、書込制御部245を起動す
る。この書込制御部245は、該当するバッファが書込
中であるか否かを判定し、書込中でない場合に、該当す
るバッファへの書き込みを許可する旨を受付/解析部2
42を介して書込処理部236に通知する構成となって
いる。例えば、バッファ管理テーブル246に書込中で
あるか否かを示すフラグを設け、書込制御部245が、
書込要求に応じてこのフラグを参照し、書込中でない旨
が示されている場合に、このフラグを書込中である旨に
セットしてから、書き込みを許可する旨を通知すればよ
い。
In response, the buffer management process 24
The 0 reception / analysis unit 242 activates the writing control unit 245. The writing control unit 245 determines whether or not the corresponding buffer is being written, and if the writing is not being performed, the acceptance / analysis unit 2 accepts that writing to the corresponding buffer is permitted.
The writing processing unit 236 is notified via 42. For example, a flag indicating whether or not writing is being performed is provided in the buffer management table 246, and the writing control unit 245
If it is indicated that the writing is not being performed by referring to this flag in response to the writing request, it is sufficient to set this flag to the writing and then notify that the writing is permitted. ..

【0051】上述したようにして通信バッファへの書き
込みが許可された場合は、書込処理部236は、メモリ
管理部211を介して、共通バッファ領域111の該当
するバッファに通信処理部231から指定されたデータ
を書き込む。また、書込処理の終了後に、書込処理部2
36は、バッファ管理プロセス240に書込処理が終了
した旨を通知し、この通知に応じて、書込制御部245
が、上述したバッファ管理テーブル246のフラグをリ
セットして書込中でない旨を示せばよい。
When the writing to the communication buffer is permitted as described above, the writing processing unit 236 designates the corresponding buffer of the common buffer area 111 from the communication processing unit 231 via the memory management unit 211. The written data. In addition, after the writing process is completed, the writing processing unit 2
36 notifies the buffer management process 240 that the writing process has been completed, and in response to this notification, the writing control unit 245.
However, the flag of the buffer management table 246 described above may be reset to indicate that writing is not in progress.

【0052】一方、バッファ管理テーブル246を参照
した際に、共通バッファ領域111の該当するバッファ
が書込中である旨が示された場合は、書込制御部245
は、書込要求を待ち行列に保持しておき、先に書込要求
が許可されたアプリケーションプロセス230からの終
了通知を待ってから、改めて書込要求を許可すればよ
い。
On the other hand, when referring to the buffer management table 246 indicates that the corresponding buffer in the common buffer area 111 is being written, the write control unit 245.
Holds the write request in the queue, waits for the end notification from the application process 230 which has been permitted the write request, and then permits the write request again.

【0053】このように、各アプリケーションプロセス
230がバッファ管理プロセス240から書込要求の許
可を受けて共用メモリ221に書込処理を行う構成とし
たことにより、複数のアプリケーションプロセス230
に同一のバッファを割り当てた場合にも、これらのアプ
リケーションプロセス230から該当するバッファへの
書込処理の排他制御を行うことができる。
As described above, each application process 230 receives the write request permission from the buffer management process 240 and performs the writing process in the shared memory 221, so that the plurality of application processes 230 can be processed.
Even when the same buffer is assigned to the buffers, exclusive control of the write processing from these application processes 230 to the corresponding buffers can be performed.

【0054】上述したようにして、データの書込処理が
終了した後に、アプリケーションプロセス230aの転
送処理部235は、アプリケーションプロセス230b
との間に設定された通信パスを介して、データの内容を
示す制御ブロックとして、自身がバッファ管理プロセス
240から獲得したバッファを示す識別情報を送信すれ
ばよい。このとき、転送処理部235は、バッファの識
別情報として、例えば、このバッファに対応する制御ヘ
ッダを送信すればよい。この場合は、上述した通信パス
を介して情報を送信するための通信バッファとしては、
この制御ブロックに相当する容量を確保すればよい。
As described above, after the data writing process is completed, the transfer processing unit 235 of the application process 230a is activated by the application process 230b.
The identification information indicating the buffer acquired by itself from the buffer management process 240 may be transmitted as a control block indicating the content of the data via the communication path set between and. At this time, the transfer processing unit 235 may transmit, for example, a control header corresponding to this buffer as the identification information of the buffer. In this case, as a communication buffer for transmitting information via the above-mentioned communication path,
It suffices to secure a capacity corresponding to this control block.

【0055】すなわち、転送処理部235と通信制御部
212とによって、伝送手段114の機能が果たされ、
受信側のアプリケーションプロセス230bに、転送し
ようとするデータが格納されたバッファを示すことがで
きる。
That is, the function of the transmission means 114 is fulfilled by the transfer processing section 235 and the communication control section 212.
It is possible to indicate to the receiving application process 230b a buffer in which the data to be transferred is stored.

【0056】これにより、受信側のアプリケーションプ
ロセス230bは、送信側のアプリケーションプロセス
230aが送信しようとしたデータが格納されているバ
ッファを認識することが可能となる。
As a result, the application process 230b on the receiving side can recognize the buffer in which the data that the application process 230a on the sending side tries to send is stored.

【0057】例えば、受信側のアプリケーションプロセ
ス230bの転送処理部235が、通信パスを介して受
信したバッファの識別情報を書込処理部236に通知
し、これに応じて、書込処理部236が、メモリ管理部
211を介して共用メモリ221から該当するデータを
読み出し、通信処理部231の作業用のバッファに転送
すればよい。
For example, the transfer processing unit 235 of the application process 230b on the receiving side notifies the write processing unit 236 of the identification information of the buffer received via the communication path, and the write processing unit 236 responds to this by the write processing unit 236. The corresponding data may be read from the shared memory 221 via the memory management unit 211 and transferred to the work buffer of the communication processing unit 231.

【0058】この場合は、アプリケーションプロセス2
30a,230b間のプロセス間通信で送受信される情
報は、通信バッファの識別情報のみであり、通信バッフ
ァに格納されたデータそのものは送受信されず、受信側
のアプリケーションプロセス230が、共通バッファ領
域111内のバッファを直接に参照することにより受信
されている。
In this case, the application process 2
The information transmitted / received in the inter-process communication between 30a and 230b is only the identification information of the communication buffer, the data itself stored in the communication buffer is not transmitted / received, and the application process 230 on the receiving side is in the common buffer area 111. Is received by directly referencing the buffer.

【0059】したがって、従来方式に比べて、プロセス
間通信によるデータの伝送時間分だけ、アプリケーショ
ンプロセス間のデータ転送処理全体に要する時間を短縮
することが可能となる。発明者は、本発明のデータ転送
制御装置を適用したコンピュータシステムを用いて、ア
プリケーションプロセス間のデータ転送時間を測定する
実験を行っており、従来方式に比べて、データ転送処理
に要する時間が大幅に短縮するという結果を得ている。
Therefore, as compared with the conventional method, the time required for the entire data transfer process between application processes can be shortened by the amount of data transmission time by interprocess communication. The inventor has conducted an experiment to measure the data transfer time between application processes using a computer system to which the data transfer control device of the present invention is applied, and the time required for the data transfer processing is significantly larger than that of the conventional method. The result has been shortened to.

【0060】したがって、本発明のデータ転送制御装置
を適用するにより、コンピュータシステムにおいて、ア
プリケーションプロセスの処理効率の向上を図ることが
でき、利用者へのサービス性を向上することができる。
特に、アプリケーションプロセスが階層化されている場
合には、データ転送処理に要する時間を短縮したことに
よる効果は顕著である。
Therefore, by applying the data transfer control device of the present invention, the processing efficiency of the application process in the computer system can be improved, and the serviceability to the user can be improved.
In particular, when the application processes are layered, the effect of reducing the time required for the data transfer processing is remarkable.

【0061】また、上述したように、本発明のデータ転
送制御装置は、バッファ管理プロセス240と各アプリ
ケーションプロセス230の通信処理部231にリンク
されるアクセス制御部232とから構成されており、オ
ペレーティングシステム側には全く変更の必要がない。
Further, as described above, the data transfer control device of the present invention comprises the buffer management process 240 and the access control unit 232 linked to the communication processing unit 231 of each application process 230, and the operating system. There is no need to change anything on the side.

【0062】したがって、近年の標準化の流れに逆らう
ことはなく、上述したバッファ管理プロセス240およ
びアクセス制御部232を提供することにより、標準化
されたオペレーティングシステムを搭載した様々な構成
のコンピュータシステム上で、本発明のデータ転送制御
装置を実現することができる。また、アプリケーション
プログラムの変更も極くわずかであり、既存のソフトウ
ェア資源を有効に活用することも可能である。
Therefore, without countering the flow of standardization in recent years, by providing the above-mentioned buffer management process 240 and access control section 232, it is possible to perform various operations on computer systems having various standardized operating systems. The data transfer control device of the present invention can be realized. Moreover, the change of the application program is very slight, and it is possible to effectively use the existing software resources.

【0063】ところで、上述した実施例で述べたよう
に、共通バッファ領域111全体を予め区切ってバッフ
ァを作成しておくことにより、バッファ管理プロセス2
40によるバッファの割当て処理の高速化が図られてい
る。反面、適切な容量のバッファが全て割当てずみとな
った後や、予想された容量よりもはるかに大きな容量を
有するバッファが要求された場合などに、柔軟に対応す
ることができない。
By the way, as described in the above embodiment, the buffer management process 2 is performed by dividing the entire common buffer area 111 in advance to create a buffer.
The speed of the buffer allocation process by 40 is increased. On the other hand, it is not possible to deal flexibly after all buffers having an appropriate capacity have been allocated, or when a buffer having a capacity much larger than the expected capacity is requested.

【0064】このような場合に柔軟に対応するために、
共通バッファ領域111に動的に管理可能な領域を設け
てもよい。例えば、共通バッファ領域111を確保する
際に、バッファ管理プロセス240のバッファ確保処理
部241が、共通バッファ領域111の一部を動的管理
領域とし、この部分を区切らずに一連の記憶領域として
残しておけばよい。また、獲得制御部243は、バッフ
ァ獲得要求で示されたバッファ容量に対応する空きバッ
ファがない場合に、この動的管理領域から必要なバッフ
ァを切り出す構成とすればよい。
In order to flexibly deal with such a case,
An area that can be dynamically managed may be provided in the common buffer area 111. For example, when reserving the common buffer area 111, the buffer reserving processing unit 241 of the buffer management process 240 leaves a part of the common buffer area 111 as a dynamic management area and leaves this part as a series of storage areas without partitioning. You can leave it. Further, the acquisition control unit 243 may be configured to cut out a necessary buffer from this dynamic management area when there is no free buffer corresponding to the buffer capacity indicated by the buffer acquisition request.

【0065】このように、共通バッファ領域111に予
め所定の容量ごとに区切られた静的管理領域とともに動
的管理領域を設けることにより、処理性能だけでなく拡
張性をも考慮したバッファ管理を実現することができ
る。
In this way, by providing the common buffer area 111 with the dynamic management area together with the static management area previously divided into predetermined capacities, buffer management considering not only processing performance but also expandability is realized. can do.

【0066】また、バッファ獲得要求に優先順位を設定
しておき、適切な容量の空きバッファがない場合に、こ
の優先順位に応じて、獲得制御部243が、上述した動
的管理領域からバッファを切り出すか否かを決定する構
成としてもよい。
If a priority is set in the buffer acquisition request and there is no free buffer having an appropriate capacity, the acquisition control unit 243 acquires a buffer from the dynamic management area according to the priority. It may be configured to determine whether to cut out.

【0067】例えば、バッファ獲得要求に3段階の優先
順位を設定し、最も優先順位の高いバッファ獲得要求で
ある場合に動的管理領域からバッファを切り出し、次に
高い優先順位が設定されたバッファ獲得要求の場合は、
獲得制御部243がこのバッファ獲得要求を待ち行列に
保持しておき、最も優先順位の低いバッファ獲得要求の
場合は、単にバッファを獲得できない旨を通知すればよ
い。
For example, three priority levels are set in the buffer acquisition request, the buffer is cut out from the dynamic management area when the buffer acquisition request has the highest priority, and the buffer acquisition with the next highest priority is acquired. In case of request,
The acquisition control unit 243 holds this buffer acquisition request in a queue, and if the buffer acquisition request has the lowest priority, simply notifies that the buffer cannot be acquired.

【0068】これにより、アプリケーションプロセス2
30側の必要度に応じて、バッファを効率よく割り当て
ることができる。更に、獲得制御部243にトレース情
報保持部を設けておき、要求されたバッファを獲得でき
なかった場合に、そのときに指定された容量に関する情
報をトレース情報として保持し、動的管理領域からバッ
ファを切り出す際に、このトレース情報を参考にして、
必要度が高いと考えられる容量のバッファをまとめて区
切っておいてもよい。
As a result, the application process 2
The buffer can be efficiently allocated according to the need on the side of 30. Furthermore, a trace information holding unit is provided in the acquisition control unit 243, and when the requested buffer cannot be acquired, the information regarding the capacity designated at that time is held as trace information, and the buffer is deleted from the dynamic management area. When cutting out, refer to this trace information,
You may separate the buffers with the capacity that is considered to be highly necessary.

【0069】また、書込制御部245に書込禁止アドレ
スを設定しておき、アプリケーションプロセス230が
該当するアドレスへの書込要求を行ったときに、オペレ
ーティングシステム210に通知して、書込要求を行っ
たアプリケーションプロセスの排除を依頼することによ
り、機密情報を保護することも可能である。
Further, a write-prohibited address is set in the write controller 245, and when the application process 230 makes a write request to the corresponding address, the operating system 210 is notified and the write request is sent. It is also possible to protect confidential information by requesting the exclusion of the application process that performed the above.

【0070】[0070]

【発明の効果】以上説明したように本発明は、送信側の
処理手段が共通バッファ領域から獲得した通信バッファ
のアドレスを受信側の処理手段に伝送することにより、
受信側の処理手段がこのアドレスに基づいて該当する通
信バッファの内容を参照することができるので、アプリ
ケーションプロセス間のデータ転送処理を高速化するこ
とが可能である。これにより、アプリケーションプロセ
スの処理性能を向上して、利用者へのサービス性の向上
を図ることができる。
As described above, according to the present invention, the transmitting side processing means transmits the address of the communication buffer acquired from the common buffer area to the receiving side processing means.
Since the processing means on the receiving side can refer to the contents of the corresponding communication buffer based on this address, it is possible to speed up the data transfer processing between application processes. As a result, the processing performance of the application process can be improved and the serviceability to the user can be improved.

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

【図1】本発明の原理ブロック図である。FIG. 1 is a principle block diagram of the present invention.

【図2】本発明のデータ転送制御装置を適用したコンピ
ュータシステムの実施例構成図である。
FIG. 2 is a block diagram of an embodiment of a computer system to which the data transfer control device of the present invention is applied.

【図3】従来のデータ転送処理の説明図である。FIG. 3 is an explanatory diagram of a conventional data transfer process.

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

101 処理手段 102 共用メモリ 111 共通バッファ領域 112 取り付け手段 113 割当て手段 114 伝送手段 210,330 オペレーティングシステム(OS) 211 メモリ管理部 212 通信制御部 220 メモリ 221 共用メモリ 230,310,320 アプリケーションプロセス 231 通信処理部 232 アクセス制御部 233 取り付け処理部 234 獲得/解放処理部 235 転送処理部 236 書込処理部 240 バッファ管理プロセス 241 バッファ確保処理部 242 受付/解析部 243 獲得制御部 244 解放制御部 245 書込制御部 246 バッファ管理テーブル 247 通信パス制御部 248 通信パステーブル 311,321,331 バッファ 312,322 通信バッファ 101 Processing Means 102 Shared Memory 111 Common Buffer Area 112 Attachment Means 113 Allocation Means 114 Transmission Means 210,330 Operating System (OS) 211 Memory Management Unit 212 Communication Control Unit 220 Memory 221 Shared Memory 230,310,320 Application Process 231 Communication Processing Part 232 Access control part 233 Attachment processing part 234 Acquisition / release processing part 235 Transfer processing part 236 Write processing part 240 Buffer management process 241 Buffer reservation processing part 242 Reception / analysis part 243 Acquisition control part 244 Release control part 245 Write control 246 buffer management table 247 communication path control unit 248 communication path table 311, 321, 331 buffer 312, 322 communication buffer

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 複数の処理手段(101)とこれらの処
理手段(101)からアクセス可能な共用メモリ(10
2)とを備え、仮想記憶方式を適用したコンピュータシ
ステムのデータ転送制御装置において、 前記共用メモリ(102)の一部の記憶領域を共通バッ
ファ領域(111)として確保し、前記複数の処理手段
(101)それぞれに前記共通バッファ領域(111)
を同一の論理アドレスから始まる記憶領域として取り付
ける取り付け手段(112)と、 前記複数の処理手段(101)それぞれからの通信バッ
ファ獲得要求に応じて、前記共通バッファ領域(11
1)の少なくとも一部の記憶領域を通信バッファとして
割り当てる割当て手段(113)と、 前記複数の処理手段(101)それぞれからのデータ転
送指示に応じて、該当する通信バッファを示す論理アド
レスを転送先となる処理手段(101)に伝送する伝送
手段(114)とを備えたことを特徴とするデータ転送
制御装置。
1. A plurality of processing means (101) and a shared memory (10) accessible from these processing means (101).
2) and a data transfer control device of a computer system to which a virtual memory system is applied, a partial storage area of the shared memory (102) is secured as a common buffer area (111), and the plurality of processing means ( 101) The common buffer area (111) for each
Is attached as a storage area starting from the same logical address, and the common buffer area (11) according to a communication buffer acquisition request from each of the plurality of processing means (101).
In accordance with a data transfer instruction from each of the allocation means (113) for allocating at least a part of the storage area as a communication buffer in 1) and the plurality of processing means (101), a logical address indicating the corresponding communication buffer is transferred to the transfer destination. A data transfer control device comprising: a transmission means (114) for transmitting to a processing means (101) that becomes
JP4109720A 1992-04-28 1992-04-28 Data transfer controller Pending JPH05303544A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4109720A JPH05303544A (en) 1992-04-28 1992-04-28 Data transfer controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4109720A JPH05303544A (en) 1992-04-28 1992-04-28 Data transfer controller

Publications (1)

Publication Number Publication Date
JPH05303544A true JPH05303544A (en) 1993-11-16

Family

ID=14517519

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4109720A Pending JPH05303544A (en) 1992-04-28 1992-04-28 Data transfer controller

Country Status (1)

Country Link
JP (1) JPH05303544A (en)

Similar Documents

Publication Publication Date Title
US7478390B2 (en) Task queue management of virtual devices using a plurality of processors
US5652885A (en) Interprocess communications system and method utilizing shared memory for message transfer and datagram sockets for message control
US5027271A (en) Apparatus and method for alterable resource partitioning enforcement in a data processing system having central processing units using different operating systems
EP0426323B1 (en) Portable, resource sharing file server using co-routines
US8549521B2 (en) Virtual devices using a plurality of processors
US5452459A (en) Method and apparatus for allocating server access in a distributed computing environment
US7299468B2 (en) Management of virtual machines to utilize shared resources
KR100373381B1 (en) Method and system for memory management in a network processing system
US5535416A (en) Method for allowing application program in computer system to access device directly in exclusive mode by bypassing operating system and blocking requests from other programs
US5230065A (en) Apparatus and method for a data processing system having a peer relationship among a plurality of central processing units
US8307053B1 (en) Partitioned packet processing in a multiprocessor environment
EP0747832A2 (en) Customer information control system and method in a loosely coupled parallel processing environment
US20030055864A1 (en) System for yielding to a processor
KR20040004554A (en) Shared i/o in a partitioned processing environment
US20070277179A1 (en) Information Processing Apparatus, Communication Processing Method, And Computer Program
US5954794A (en) Computer system data I/O by reference among I/O devices and multiple memory units
JP2004530196A (en) Resource balancing in partitioned processing environment
US5682507A (en) Plurality of servers having identical customer information control procedure functions using temporary storage file of a predetermined server for centrally storing temporary data records
US5941959A (en) System for transferring a data stream to a requestor without copying data segments to each one of multiple data source/sinks during data stream building
US5790868A (en) Customer information control system and method with transaction serialization control functions in a loosely coupled parallel processing environment
US5630133A (en) Customer information control system and method with API start and cancel transaction functions in a loosely coupled parallel processing environment
KR20050076702A (en) Method for transferring data in a multiprocessor system, multiprocessor system and processor carrying out this method
CN113076189B (en) Data processing system with multiple data paths and virtual electronic device constructed using multiple data paths
CN113076180B (en) Method for constructing uplink data path and data processing system
JPH05303544A (en) Data transfer controller

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20010717