JP2003036179A - Virtual shared memory, virtual shared storing method and virtual shared storing program - Google Patents

Virtual shared memory, virtual shared storing method and virtual shared storing program

Info

Publication number
JP2003036179A
JP2003036179A JP2001223837A JP2001223837A JP2003036179A JP 2003036179 A JP2003036179 A JP 2003036179A JP 2001223837 A JP2001223837 A JP 2001223837A JP 2001223837 A JP2001223837 A JP 2001223837A JP 2003036179 A JP2003036179 A JP 2003036179A
Authority
JP
Japan
Prior art keywords
read
program
thread
write
side thread
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
JP2001223837A
Other languages
Japanese (ja)
Inventor
Masato Amamiya
真人 雨宮
Hideo Taniguchi
秀夫 谷口
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.)
Kyushu University NUC
Original Assignee
Kyushu University NUC
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 Kyushu University NUC filed Critical Kyushu University NUC
Priority to JP2001223837A priority Critical patent/JP2003036179A/en
Priority to US10/147,998 priority patent/US20030014558A1/en
Publication of JP2003036179A publication Critical patent/JP2003036179A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To reduce the overhead of a virtual shared memory and a burden on a user. SOLUTION: A virtual shared memory 1 extracts a reading side thread program and a writing side thread program from a program for performing reading operation and writing operation and performs synchronization control between the reading side thread program and the writing side thread program according to a relation between a reading side thread and a writing side thread such as a dependency relation, based on reading operation and writing operation with respect to the writing side thread and the reading side thread to be executed on the same or mutually-different processors 2A and 2B.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、ネットワークに結
合して用いる各種の並列・分散計算機に利用され、計算
機間に分散したメモリ(以下、「分散メモリ」とい
う。)をソフトウェア上で共有メモリとして仮想化し、
そのように仮想化された共有メモリ(以下、「仮想共有
メモリ」という。)への書込み及び読出し操作を効率的
に行うために、マルチスレッド処理の原理を利用した多
重平行処理を行う仮想共有メモリ、仮想共有記憶方法及
びコンピュータによって実行される仮想共有記憶プログ
ラムに関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention is used in various parallel / distributed computers used by connecting to a network, and a memory distributed between computers (hereinafter referred to as "distributed memory") is used as a shared memory on software. Virtualize,
In order to efficiently perform write and read operations to such virtualized shared memory (hereinafter referred to as "virtual shared memory"), virtual shared memory that performs multiple parallel processing using the principle of multithread processing. , A virtual shared storage method and a virtual shared storage program executed by a computer.

【0002】[0002]

【従来の技術】計算機間に分散した共有メモリ(以下、
「共有分散メモリ」という。)の管理においては、仮想
共有メモリの書込み操作と読出し操作が平行して実行さ
れる場合、正確なデータが既に書き込まれているという
保証を読出し側に与える必要があり、そのための書込み
と読出しとの間の同期制御が必要となる。
2. Description of the Related Art Shared memory distributed between computers (hereinafter,
It is called "shared distributed memory". ) Management, if write and read operations of virtual shared memory are performed in parallel, it is necessary to give a guarantee to the read side that accurate data has already been written. Synchronous control between the two is required.

【0003】このような書込み操作と読出し操作との間
の同期制御に関して、従来、ユーザプログラムでは、参
照するメモリにデータが既に書き込まれていることを前
提として、読出し操作命令を明示的に発行する。
Regarding such synchronous control between a write operation and a read operation, conventionally, a user program explicitly issues a read operation command on the assumption that data has already been written in a memory to be referenced. .

【0004】発行された読出し操作命令に対して、読出
し対象となるメモリに必要なデータが書き込まれたか否
かを、計算機ハードウェア又はオペレーティングシステ
ム(OS)でチェックし、まだ書込み操作が行われていない
場合には、読出し操作の待機を行っている。
In response to the issued read operation command, it is checked by the computer hardware or the operating system (OS) whether or not the necessary data is written in the memory to be read, and the write operation is still being performed. If not, it is waiting for the read operation.

【0005】[0005]

【発明が解決しようとする課題】このような待機のため
に、共有メモリへの排他的アクセスを制御するためのロ
ック操作及びセマフォ操作、分散メモリ間において内容
の一貫性を保持するための操作等において、メモリ管理
の際にオーバヘッドが生じる。また、書込み操作及び/
又は読出し操作のタイミングが正確でない場合、読出し
側の待機の時間及び/又は回数が増大し、これによって
オーバヘッドが増大する。
Due to such waiting, a lock operation and a semaphore operation for controlling exclusive access to the shared memory, an operation for maintaining the consistency of contents among the distributed memories, and the like. In, an overhead occurs in memory management. Also, write operations and /
Or, if the timing of the read operation is incorrect, the time and / or number of waits on the read side increases, which increases the overhead.

【0006】並列分散処理を記述するユーザプログラム
では、書込み操作及び読出し操作の同期タイミングを予
め予測して記述するが、予測に反して読出し対象データ
が書き込まれていない場合、読出し対象データが書き込
まれるまで待機が行われ、実行できない読出し操作の発
行及び待機が生じる。
In the user program describing parallel distributed processing, the synchronization timing of the write operation and the read operation is predicted and described in advance, but if the read target data is not written contrary to the prediction, the read target data is written. Waiting occurs until issuing and waiting for a read operation that cannot be performed.

【0007】ユーザプログラムでは、実行できない読出
し操作の発行を抑制するために、書込み操作と読出し操
作との間の同期の予測を正確に行うことが困難であり、
同期を考慮したプログラムの設計を行うことは、ユーザ
に対して相当な負荷を課すこととなる。
In the user program, it is difficult to accurately predict the synchronization between the write operation and the read operation in order to suppress the issuance of the read operation that cannot be executed.
Designing a program in consideration of synchronization imposes a considerable load on the user.

【0008】本発明の目的は、オーバヘッドを軽減する
ことができる仮想共有メモリ、仮想共有記憶方法及びコ
ンピュータによって実行される仮想共有記憶プログラム
を提供することである。
An object of the present invention is to provide a virtual shared memory, a virtual shared storage method and a virtual shared storage program executed by a computer, which can reduce the overhead.

【0009】本発明の他の目的は、ユーザの負担を軽減
する仮想共有メモリ、仮想共有記憶方法及びコンピュー
タによって実行される仮想共有記憶プログラムを提供す
ることである。
Another object of the present invention is to provide a virtual shared memory, a virtual shared storage method, and a virtual shared storage program executed by a computer that reduce the burden on the user.

【0010】[0010]

【課題を解決するための手段】本発明による仮想共有メ
モリは、読出し操作及び書込み操作を行うためのプログ
ラムから読出し側スレッドプログラム及び書込み側スレ
ッドプログラムを抽出するスレッドプログラム抽出手段
と、同一又は互いに相違するプロセッサ上で実行される
書込み側スレッド及び読出し側スレッドに対し、前記読
出し操作及び前記書込み操作に基づく前記書込み側スレ
ッドと読出し側スレッドとの間の関係に従って、前記読
出し側スレッドプログラムと前記書込み側スレッドプロ
グラムとの間の同期制御を行う同期制御手段とを具える
ことを特徴とする。
A virtual shared memory according to the present invention is the same as or different from a thread program extracting means for extracting a read side thread program and a write side thread program from a program for performing a read operation and a write operation. The read side thread program and the write side thread according to the relationship between the read side thread and the read side thread based on the read operation and the write operation. And a synchronization control means for performing synchronization control with the thread program.

【0011】本発明によれば、ユーザプログラムのよう
な読出し操作及び書込み操作を行うプログラムから読出
し側スレッドプログラム及び書込み側スレッドプログラ
ムを抽出し、書込み側スレッドと読出し側スレッドとの
間の関係に従って、読出し側スレッドプログラムと書込
み側スレッドプログラムとの間の同期制御を行うので、
データが既に書き込まれた状態で読出し操作を行うこと
ができる。
According to the present invention, the read side thread program and the write side thread program are extracted from the program such as the user program which performs the read operation and the write operation, and according to the relation between the write side thread and the read side thread, Since synchronization control is performed between the reading side thread program and the writing side thread program,
A read operation can be performed with the data already written.

【0012】その結果、書込み操作の待機の必要がほと
んどなくなり、オーバヘッドが軽減する。また、書込み
操作及び/又は読出し操作のタイミングを適切に制御す
ることができるので、待機の時間及び/又は回数が著し
く減少し、オーバヘッドが軽減する。
As a result, there is almost no need to wait for a write operation, and the overhead is reduced. Further, since the timing of the write operation and / or the read operation can be appropriately controlled, the waiting time and / or the number of times of waiting can be significantly reduced, and the overhead can be reduced.

【0013】さらに、言語処理系によって書込み操作及
び読出し操作の同期の予測を適切に行うことができるの
で、同期を考慮してプログラムを設計する必要がなくな
り、ユーザの負担が軽減する。
Further, since the language processing system can appropriately predict the synchronization of the write operation and the read operation, it is not necessary to design the program in consideration of the synchronization, and the burden on the user is reduced.

【0014】好適には、前記読出し操作及び前記書込み
操作をそれぞれ書込みイベント及び読出しイベントとし
て取り扱う。また、前記読出しスレッドプログラム及び
前記書込みスレッドプログラムをそれぞれ、言語処理系
によって既存のプログラムコードから変換した後に前記
同一又は互いに相違するプロセッサでの読出し操作及び
書込み操作を行うのに適切な形式に変換された読出しス
レッドプログラム及び前記書込みスレッドプログラムと
する。
Preferably, the read operation and the write operation are treated as a write event and a read event, respectively. In addition, the read thread program and the write thread program are respectively converted by the language processing system from the existing program code and then converted into a format suitable for the read operation and the write operation in the same or different processors. The read thread program and the write thread program.

【0015】本発明による仮想共有記憶方法は、読出し
操作及び書込み操作を行うためのプログラムから読出し
側スレッドプログラム及び書込み側スレッドプログラム
を抽出するステップと、同一又は互いに相違するプロセ
ッサ上で実行される書込み側スレッド及び読出し側スレ
ッドに対し、前記読出し操作及び前記書込み操作に基づ
く前記書込み側スレッドと読出し側スレッドとの間の関
係に従って、前記読出し側スレッドプログラムと前記書
込み側スレッドプログラムとの間の同期制御を行うステ
ップとを具えることを特徴とする。
The virtual shared storage method according to the present invention includes a step of extracting a read side thread program and a write side thread program from a program for performing a read operation and a write operation, and a write executed on a processor which is the same as or different from each other. Synchronization control between the read-side thread program and the write-side thread program according to the relationship between the write-side thread and the read-side thread based on the read operation and the write operation for the side thread and the read-side thread And a step of performing.

【0016】本発明によれば、仮想共有記憶を行う際に
オーバヘッドを軽減するとともに、ユーザの負担を軽減
することができる。
According to the present invention, it is possible to reduce the overhead and the burden on the user when performing virtual shared storage.

【0017】本発明によるコンピュータによって実行さ
れる仮想共有記憶プログラムは、読出し操作及び書込み
操作を行うためのプログラムから読出し側スレッドプロ
グラム及び書込み側スレッドプログラムを抽出するステ
ップと、同一又は互いに相違するプロセッサ上で実行さ
れる書込み側スレッド及び読出し側スレッドに対し、前
記読出し操作及び前記書込み操作に基づく前記書込み側
スレッドと読出し側スレッドとの間の関係に従って、前
記読出し側スレッドプログラムと前記書込み側スレッド
プログラムとの間の同期制御を行うステップとを具える
ことを特徴とする。
The virtual shared storage program executed by the computer according to the present invention is the same as or different from the step of extracting the read side thread program and the write side thread program from the program for performing the read operation and the write operation. The read-side thread program and the write-side thread program according to the read operation and the relationship between the write-side thread and the read-side thread based on the write operation. And a step of performing synchronous control between the two.

【0018】本発明によれば、仮想共有記憶をコンピュ
ータによって実行する際にオーバヘッドを軽減するとと
もに、ユーザの負担を軽減することができる。
According to the present invention, it is possible to reduce the overhead and the burden on the user when the virtual shared storage is executed by the computer.

【0019】[0019]

【発明の実施の形態】本発明による仮想共有メモリ、仮
想共有記憶方法及びコンピュータによって実行される仮
想共有記憶プログラムの実施の形態を、図面を参照して
詳細に説明する。図1から図4を用いて説明する第1の
実施の形態では、同一又は互いに相違するプロセッサの
間で共有分散メモリへの書込み及び読出しを行う機構を
ハードウェアで実現し、仮想共有メモリへの読出し操作
及び書込み操作を、図1に示すようにスレッドプログラ
ムとして記述する。なお、そのようなスレッドプログラ
ムは、言語処理系によって既存のプログラムコードから
変換される。
Embodiments of a virtual shared memory, a virtual shared storage method, and a virtual shared storage program executed by a computer according to the present invention will be described in detail with reference to the drawings. In the first embodiment described with reference to FIGS. 1 to 4, a mechanism for writing and reading to and from the shared distributed memory between the same or different processors is realized by hardware, and the virtual shared memory is read. The read operation and the write operation are described as a thread program as shown in FIG. In addition, such a thread program is converted from an existing program code by a language processing system.

【0020】図1に示すプログラムは、更に、プロセス
起動時を含むプログラム起動時に、プログラム・ローダ
によって、図3に示すような分散実メモリへの書込み及
び読出しを行うスレッドプログラムに自動的に変換され
る。図2に示すプログラムは、図3に示すようなハード
ウェア装置によって実行される。
Further, the program shown in FIG. 1 is automatically converted by the program loader into a thread program for writing and reading to and from the distributed real memory as shown in FIG. 3 at the time of program startup including process startup. It The program shown in FIG. 2 is executed by the hardware device shown in FIG.

【0021】仮想共有メモリ1は、読出し操作及び書込
み操作を行うためのプログラムから読出し側スレッドプ
ログラム及び書込み側スレッドプログラムを抽出し、後
に説明するように、同一又は互いに相違するプロセッサ
2A,2B上で実行される書込み側スレッド及び読出し
側スレッドに対して、読出し操作及び書込み操作に基づ
く書込み側スレッドと読出し側スレッドとの間の関係、
例えば依存関係に従った読出し側スレッドプログラムと
書込み側スレッドプログラムとの間の同期制御を行う。
The virtual shared memory 1 extracts a read side thread program and a write side thread program from a program for performing a read operation and a write operation and, as will be described later, on the same or different processors 2A and 2B. A relationship between the write thread and the read thread based on the read operation and the write operation based on the write operation, and
For example, synchronization control is performed between the read side thread program and the write side thread program according to the dependency relationship.

【0022】プロセッサ2A,2Bはそれぞれ、演算装
置3A,3Bと、データ転送装置4A,4Bと、分散メ
モリ5A,5Bとを有する。実行に先立って、プログラ
ムのロード時又はプロセスの起動時に、書込み側スレッ
ドプログラムはプロセッサ2Aにロードされ、プロセッ
サ2Bに既にロードされている(図2参照)。これと同
時に、書込み対象及び読出し対象となる仮想共有メモリ
1と分散メモリ2A,2Bとの間の変換テーブルが転送
装置4A,4Bにそれぞれ作成される。
The processors 2A and 2B have arithmetic units 3A and 3B, data transfer units 4A and 4B, and distributed memories 5A and 5B, respectively. Prior to execution, the write-side thread program is loaded into the processor 2A and is already loaded into the processor 2B when the program is loaded or the process is started (see FIG. 2). At the same time, conversion tables between the virtual shared memory 1 to be written and read and the distributed memories 2A and 2B are created in the transfer devices 4A and 4B, respectively.

【0023】書込み側スレッドプログラムは、演算装置
3Aのスレッド実行装置6Aで実行される。プログラム
実行中、書込み命令(write)を実行すると、データ(Dat
a)が分散メモリ5Aに書き込まれる。
The writing side thread program is executed by the thread execution unit 6A of the arithmetic unit 3A. If a write command (write) is executed during program execution, data (Data
a) is written in the distributed memory 5A.

【0024】ここで、読出し側スレッドが同一プロセッ
サすなわちプロセッサ2Aで実行される場合について説
明する。書込み側スレッドプログラムがスレッド実行終
了命令を実行すると、この実行終了命令によって、継続
スレッドとして指定されている読出し側スレッド、すな
わち、図1及び図2に示すプロセス2のスレッド2に対
して起動シグナルを発行する。この操作では、図4に示
すように、読出し側スレッドを同期待ちスレッド管理表
7Aに登録し、登録と同時に読出し側スレッドの同期カ
ウンタを1減じる。
Here, a case where the read side threads are executed by the same processor, that is, the processor 2A will be described. When the writing side thread program executes the thread execution end instruction, the execution end instruction sends an activation signal to the reading side thread designated as the continuing thread, that is, the thread 2 of the process 2 shown in FIGS. 1 and 2. Issue. In this operation, as shown in FIG. 4, the reading side thread is registered in the synchronization waiting thread management table 7A, and the synchronization counter of the reading side thread is decremented by 1 at the same time as the registration.

【0025】起動シグナルを受けた読出し側スレッド、
すなわち、図1及び図2に示すプロセス2のスレッド2
は、同期待ち管理表7A内で管理され、他のイベントに
よる起動シグナルが全て到着して同期待ち管理表7Aの
同期カウンタが零となることによって起動同期条件が整
ったとき、実行待ちスレッドキュー8Aに入れられる。
同時に、このスレッドは同期待ち管理表7Aから削除さ
れる。その後、このスレッドが実行待ちスレッドキュー
8Aから取り出され、スレッド実行装置6Aによって実
行される。スレッド実行装置6Aは、スレッド実行中に
読出し命令(read)を実行する際に分散メモリ5Aのアド
レス(Local-Phys-Address-A: 図2ではXA)からデータ(D
ata)を読み出す。
The reading thread which received the activation signal,
That is, thread 2 of process 2 shown in FIGS. 1 and 2.
Is managed in the synchronization waiting management table 7A, and when all the activation signals due to other events arrive and the synchronization counter of the synchronization waiting management table 7A becomes zero, and the activation synchronization condition is satisfied, the execution waiting thread queue 8A Can be put in.
At the same time, this thread is deleted from the synchronization wait management table 7A. Then, this thread is taken out of the execution waiting thread queue 8A and executed by the thread execution device 6A. The thread execution device 6A uses the data (D-D) from the address (Local-Phys-Address-A: XA in FIG. 2) of the distributed memory 5A when executing a read instruction (read) during thread execution.
read ata).

【0026】次に、読出し側スレッドが別のプロセッサ
すなわちプロセッサ2Bで実行される場合について説明
する。書込み側スレッドプログラムでは、書込みが終了
した後にデータ送出命令(send)を実行する。データ送出
命令によって、転送すべきデータを保持している分散メ
モリ5Aのアドレス(Local-Phys-Address-A: 図2ではX
A)、転送先プロセッサ(Destination:この場合、プロセ
ッサ2B)及び起動すべき読出し側スレッド名(Thread-
ID)をデータ転送装置4Aに伝送する。なお、Thread-ID
にはプロセッサ名及びプロセス名も含まれており、図1
及び図2では、プロセス3のスレッド1がこれに対応す
る。
Next, a case where the reading thread is executed by another processor, that is, the processor 2B will be described. In the writing side thread program, the data sending instruction (send) is executed after the writing is completed. The address of the distributed memory 5A holding the data to be transferred by the data transmission command (Local-Phys-Address-A: X in FIG. 2).
A), the destination processor (Destination: processor 2B in this case), and the name of the thread on the reading side to be activated (Thread-
ID) is transmitted to the data transfer device 4A. In addition, Thread-ID
Contains the processor name and process name as well.
And in FIG. 2, thread 1 of process 3 corresponds to this.

【0027】データ転送装置4Aは、データ読出し装置
9によって分散メモリ5Aから取得したデータ(Data)を
分散メモリ5Aのアドレス(Local-Phys-Address-A: 図
2ではXA)から読み出し、データ送信装置10によっ
て、転送先プロセッサ(Destination:この場合、プロセ
ッサ2B)に転送する。
The data transfer device 4A reads the data (Data) acquired from the distributed memory 5A by the data reading device 9 from the address (Local-Phys-Address-A: XA in FIG. 2) of the distributed memory 5A, and the data transmission device 4A. 10 transfers to the transfer destination processor (Destination: processor 2B in this case).

【0028】この際、データ転送装置4Aは、分散メモ
リ5Aのアドレス(Local-Phys-Address-A: 図2ではXA)
から仮想共有メモリ1のアドレス(Logical-Mem-Addres
s:図2ではX)へのアドレス変換を行い、データ(Data)と
ともに仮想共有メモリ1のアドレス(Logical-Mem-Addre
ss:図2ではX)及び起動すべき読出しスレッド名(Thread
-ID)をデータ送信装置10によって送信する。
At this time, the data transfer device 4A uses the address (Local-Phys-Address-A: XA in FIG. 2) of the distributed memory 5A.
To the address of virtual shared memory 1 (Logical-Mem-Addres
s: The address is converted to X in Fig. 2 and the address of the virtual shared memory 1 (Logical-Mem-Addre
ss: X in Figure 2) and the read thread name (Thread
-ID) is transmitted by the data transmission device 10.

【0029】データ転送装置4Bは、転送されたデータ
(Data)、仮想共有メモリ1のアドレス(Logical-Mem-Add
ress:図2ではX)及び起動すべき読出しスレッド名(Thre
ad-ID)をデータ受信装置11で受信すると、データ書込
み装置12によって、仮想共有メモリ1のアドレス(Log
ical-Mem-Address:図2ではX)から分散メモリ5Bのア
ドレス(Local-Phys-Address-B)へのアドレス変換を行う
とともに、転送されたデータを分散メモリ5Bのアドレ
ス(Local-Phys-Address-B)に書き込む。書込みが終了す
ると起動シグナルが発行される。この操作では、スレッ
ド同期管理装置13を起動し、同期待ちスレッド管理表
7B内のThread-IDで指定された読出し側スレッドの同
期カウンタを1減じる。
The data transfer device 4B uses the transferred data.
(Data), address of virtual shared memory 1 (Logical-Mem-Add
ress: X in Fig. 2) and the name of the read thread to be activated (Thre
When the data receiving device 11 receives the ad-ID, the data writing device 12 causes the address (Log
ical-Mem-Address: The address conversion from X in FIG. 2 to the address of the distributed memory 5B (Local-Phys-Address-B) is performed, and the transferred data is transferred to the address of the distributed memory 5B (Local-Phys-Address). -Write to B). When the writing is completed, a start signal is issued. In this operation, the thread synchronization management device 13 is activated, and the synchronization counter of the thread on the reading side designated by Thread-ID in the synchronization waiting thread management table 7B is decremented by 1.

【0030】起動シグナルを受けた読出し側スレッド、
すなわち、プロセス3内のスレッド1は、同期待ち管理
表7B内で管理され、他のイベントによる起動シグナル
が全て到着して同期待ち管理表7Bの同期カウンタが零
となることによって起動同期条件が整ったとき、実行待
ちスレッドキュー8Bに入れられる。同時に、このスレ
ッドは同期待ち管理表7Bから削除される。その後、こ
のスレッドが実行待ちスレッドキュー8Aから取り出さ
れ、スレッド実行装置6Bによって実行される。スレッ
ド実行装置6Bは、スレッド実行中に読出し命令(read)
を実行する際に分散メモリ5Bのアドレス(Local-Phys-
Address-B: 図2ではXB)からデータ(Data)を読み出す。
The reading side thread which received the activation signal,
That is, the thread 1 in the process 3 is managed in the synchronization waiting management table 7B, and all the activation signals due to other events arrive and the synchronization counter of the synchronization waiting management table 7B becomes zero, so that the activation synchronization condition is satisfied. Then, it is put into the waiting thread queue 8B. At the same time, this thread is deleted from the synchronization wait management table 7B. Then, this thread is taken out from the execution waiting thread queue 8A and executed by the thread execution device 6B. The thread execution device 6B uses a read instruction (read) during thread execution.
Address of the distributed memory 5B (Local-Phys-
Address-B: Data is read from XB in FIG.

【0031】次に、図1、図2、図5及び図6を用いて
第2の実施の形態を説明する。第2の実施の形態では、
書込み及び読出しの実行と他のイベント処理及びスレッ
ド実行(内部演算処理)を並行動作として行う機構をソ
フトウェアで実現したものである。
Next, a second embodiment will be described with reference to FIGS. 1, 2, 5, and 6. In the second embodiment,
This is a software implementation of a mechanism for performing writing and reading, and other event processing and thread execution (internal operation processing) as parallel operations.

【0032】本実施の形態でも、実行に先立ってロード
された図2の読出しスレッドプログラム及び書込みスレ
ッドプログラムの実行を前提とする。また、上記ソフト
ウェアは、図5に示すような市販のハードウェア装置2
1で使用されるものとし、このハードウェア装置21
は、演算装置22と、メモリ装置23と、データ送受信
装置(割込み装置)24と、これらの間でデータの転送
を行うバス25とを具える。
This embodiment also presupposes the execution of the read thread program and the write thread program of FIG. 2 loaded prior to execution. In addition, the software is a commercially available hardware device 2 as shown in FIG.
It is assumed that the hardware device 21
Includes an arithmetic unit 22, a memory unit 23, a data transmission / reception unit (interruption unit) 24, and a bus 25 for transferring data between them.

【0033】本実施の形態の動作を、主に図6を参照し
て説明する。第1の実施の形態で説明したように書込み
側スレッドを実行する演算装置22でスレッド実行管理
部26が走行する。それと同時に、他のプロセッサから
転送データを受信したときには、それを他の外部発生イ
ベントと同様に扱う。
The operation of this embodiment will be described mainly with reference to FIG. As described in the first embodiment, the thread execution management unit 26 runs in the arithmetic unit 22 that executes the writing side thread. At the same time, when the transfer data is received from another processor, it is treated like any other externally generated event.

【0034】書込み側スレッドプログラムの実行中に書
込み命令(write)を実行したとき、データ(Data)を、書
込み命令のオペランドで指定された分散メモリ27のア
ドレス(Local-Phys-Address-A:図2ではXA)に書き込
む。
When a write command (write) is executed during execution of the write side thread program, the data (Data) is transferred to the address (Local-Phys-Address-A: Figure) of the distributed memory 27 specified by the operand of the write command. In 2, write to XA).

【0035】スレッド実行終了命令の実行によってこの
スレッドの実行が終了するとき、そのスレッド実行終了
命令のオペランドで指定された読出し側スレッドを、継
続スレッドとして継続スレッド登録を行う。
When the execution of the thread execution end instruction ends the execution of this thread, the read side thread designated by the operand of the thread execution end instruction is registered as the continuation thread.

【0036】ここで、読出し側スレッドが同一プロセッ
サ内で実行される場合について説明する。継続スレッド
登録において、その読出し側スレッドを同期待ちスレッ
ド管理表28に登録し、これと同時にこの読出し側スレ
ッドの同期待ち管理表28中の同期カウンタを1減じ
る。
Here, the case where the reading thread is executed in the same processor will be described. In the continuation thread registration, the reading side thread is registered in the synchronization waiting thread management table 28, and at the same time, the synchronization counter in the synchronization waiting management table 28 of the reading side thread is decremented by 1.

【0037】読出し側スレッドに対して他のイベントに
よる起動シグナルが全て到着して同期カウンタが零とな
ることによって起動同期条件が整ったときに、実行待ち
キュー29に入れられる。同時に、このスレッドを同期
待ち管理表から削除する。その後、このスレッドが実行
待ちキューから取り出されたとき、実行が開始される。
このスレッドの実行中に読出し命令(read)が実行された
とき、分散メモリ27のアドレス(Local-Phys-Address-
A:図2ではXA)にアクセスする。
When the start-up synchronization condition is satisfied by the arrival of all start-up signals due to other events to the thread on the reading side and the synchronization counter becoming zero, the signals are put into the execution waiting queue 29. At the same time, this thread is deleted from the synchronization wait management table. Execution then begins when this thread is dequeued.
When a read command (read) is executed during the execution of this thread, the address (Local-Phys-Address-
A: Access XA) in Figure 2.

【0038】次に、読出し側スレッドが他のプロセッサ
内で実行される場合について説明する。スレッド実行管
理部26のデータ送信処理部で仮想共有メモリのアドレ
ス(Local-Mem-Address:図2ではX)へのアドレス変換を
行い、図示しないデータ転送装置を駆動してデータの転
送を行う。
Next, the case where the reading thread is executed in another processor will be described. The data transmission processing unit of the thread execution management unit 26 performs address conversion to an address (Local-Mem-Address: X in FIG. 2) of the virtual shared memory, and drives a data transfer device (not shown) to transfer data.

【0039】この際、スレッド実行管理部26のデータ
処理部は、転送すべきデータを保持している分散メモリ
27のアドレス(Local-Phys-Address-A:図2ではXA)、
転送先プロセッサ(Destination:図2ではプロセッサ2
B)及び起動すべき読出し側スレッド名(Thread-ID)をデ
ータ送信装置30に伝送する。なお,スレッド名は、そ
の継続スレッドが実行されるプロセッサ名及びプロセス
名を含み、図2では、プロセッサ2Bで実行されるプロ
セス3中のスレッド1に対応する。
At this time, the data processing unit of the thread execution management unit 26 has the address (Local-Phys-Address-A: XA in FIG. 2) of the distributed memory 27 holding the data to be transferred,
Destination Processor (Destination: Processor 2 in FIG. 2)
B) and the thread name (Thread-ID) on the reading side to be activated are transmitted to the data transmission device 30. The thread name includes the processor name and the process name in which the continuation thread is executed, and corresponds to the thread 1 in the process 3 executed in the processor 2B in FIG.

【0040】データ送信装置30は、書込まれたデータ
(Data)を分散メモリ27のアドレス(Local-Phys-Addres
s-A:図2ではXA)から読み出して、転送先プロセッサ(De
stination:図2ではプロセッサ2B)にデータ(Data)を
送信する。この際、データ送信装置30は、データ(Dat
a)とともに仮想共有メモリのアドレス(Local-Mem-Addre
ss:図2ではX)及び起動すべき読出し側スレッド名(Thre
ad-ID)を転送する。
The data transmission device 30 uses the written data.
(Data) is the address of the distributed memory 27 (Local-Phys-Addres
sA: Read from the transfer destination processor (DeA
stination: In FIG. 2, data is transmitted to the processor 2B). At this time, the data transmission device 30 determines that the data (Dat
a) with the virtual shared memory address (Local-Mem-Addre
ss: X in Fig. 2) and the name of the thread on the reading side to be activated (Thre
transfer ad-ID).

【0041】転送先プロセッサがデータを受信すると、
そのイベントはデータ受信装置31によって取り上げら
れ、割込みキュー32に保持される。この際、データ受
信装置31は、仮想共有メモリのアドレス(Local-Mem-A
ddress:図2ではX)から転送先プロセッサの分散メモリ
のアドレス(Local-Phys-Ad-B:図2ではXB)を求め、転送
されたデータ(Data)をその分散メモリのアドレス(Local
-Phys-Ad-B:図2ではXB)に書き込む。この書込みが終了
すると、そのイベントを割込みキュー32に入れる。
When the destination processor receives the data,
The event is picked up by the data receiving device 31 and held in the interrupt queue 32. At this time, the data receiving device 31 uses the address (Local-Mem-A) of the virtual shared memory.
ddress: X in FIG. 2) is used to obtain the address (Local-Phys-Ad-B: XB in FIG. 2) of the distributed memory of the transfer destination processor, and the transferred data (Data) is assigned to the distributed memory address (Local
-Phys-Ad-B: Write to XB) in Figure 2. When this writing is completed, the event is put in the interrupt queue 32.

【0042】演算装置22では、スレッド実行管理部2
6が動作する。スレッド実行管理部26は、スレッド実
行部26a及び割込み処理実行部26bを有する。スレ
ッド実行部26aは、実行待ちスレッドキュー33に保
持されている実行待ちスレッドをキューの先頭から取り
出し、実行する。実行スレッド(読出しスレッド)は、
そのスレッド中の読出し命令を実行するときに、分散メ
モリのアドレス(Local-Phys-Ad-B:図2ではXB)に対して
読出しのアクセスを行う。
In the arithmetic unit 22, the thread execution management unit 2
6 works. The thread execution management unit 26 has a thread execution unit 26a and an interrupt processing execution unit 26b. The thread execution unit 26a extracts the execution waiting thread held in the execution waiting thread queue 33 from the head of the queue and executes it. The execution thread (read thread) is
When executing the read instruction in the thread, the read access is performed to the address (Local-Phys-Ad-B: XB in FIG. 2) of the distributed memory.

【0043】なお、書込み側スレッドおよび読出し側ス
レッドを含むスレッドの実行管理は、次のようにして行
われる。 1.一つのスレッド実行が終了すると、割込み処理実行
部26bに制御を移行する。割込み処理実行部26bで
は、割込みキュー32が空になるまで次の操作を繰り返
す。 2.割込みキューの先頭から割込みを取り出し、その割
込み要因を調べて、該当の割込み処理ルーチンを実行す
る。 3.同期待ちスレッド管理表28内に登録されているス
レッドのうち、そのイベントを待っているスレッドに対
してその同期カウンタを1減じる(スレッド同期処
理)。 4.その結果として同期カウンタの値が零になった場合
には、そのスレッドを同期待ちスレッド管理表28から
削除し、実行待ちキューに入れる。 5.割込み処理実行部26bの処理が終了すると、制御
をスレッド実行部26aに移行する。
The execution management of the threads including the writing side thread and the reading side thread is performed as follows. 1. When the execution of one thread is completed, the control is transferred to the interrupt processing execution unit 26b. The interrupt process execution unit 26b repeats the next operation until the interrupt queue 32 becomes empty. 2. An interrupt is taken out from the head of the interrupt queue, the cause of the interrupt is checked, and the corresponding interrupt processing routine is executed. 3. Of the threads registered in the synchronization waiting thread management table 28, the synchronization counter is decremented by 1 for the thread waiting for the event (thread synchronization processing). 4. As a result, when the value of the synchronization counter becomes zero, the thread is deleted from the synchronization waiting thread management table 28 and put in the execution waiting queue. 5. When the processing of the interrupt processing execution unit 26b is completed, the control is transferred to the thread execution unit 26a.

【0044】上記実施の形態によれば、仮想共有メモリ
への書込み及び読出しを含むプログラムをスレッドプロ
グラム化し、書込み側スレッドと読出し側スレッドとの
間での同期を同期シグナルを用いて制御することによっ
て、オーバヘッド及びユーザの負担が軽減する。
According to the above embodiment, a program including writing and reading in the virtual shared memory is thread-programmed, and the synchronization between the writing side thread and the reading side thread is controlled by using the synchronization signal. , Overhead and burden on the user are reduced.

【0045】ユーザプログラムでは、書込み操作及び読
出し操作を、仮想共有メモリ上での書込み操作及び読出
し操作の同期を考慮せずに記述し、言語処理系は、その
メモリ資源に対する書込み操作と読出し操作の間の依存
関係を解析して同期制御の必要な個所を自動的に抽出
し、書込み操作を含むプログラム片と読出し操作を行う
プログラム片とに分割し、それぞれをスレッド化する。
In the user program, the write operation and the read operation are described without considering the synchronization of the write operation and the read operation on the virtual shared memory, and the language processing system performs the write operation and the read operation for the memory resource. By analyzing the interdependencies between them, locations where synchronization control is required are automatically extracted, divided into program pieces that include write operations and program pieces that perform read operations, and each is threaded.

【0046】プログラム実行の際には、仮想共有メモリ
空間は、それぞれのプロセッサに分散して配置された分
散メモリ空間に写像されており、書込み操作及び読出し
操作は、それぞれの操作を含むスレッドが実行されるプ
ロセッサ上の分散メモリに対して行われる。
At the time of program execution, the virtual shared memory space is mapped to the distributed memory space distributed in each processor, and the write operation and the read operation are executed by the thread including each operation. Is performed on distributed memory on the processor.

【0047】書込み側スレッドでは、書込み側に存在す
る分散メモリに書込みを行い、書込み終了後に書込み終
了通知を読出し側スレッドに伝送する。読出し側スレッ
ドが書込み側スレッドと同一プロセッサ内で実行される
場合、読出し側スレッドは、書込み終了通知を受けたと
きに起動され、そのプロセッサ上の分散メモリに対して
読出しを行う。
The writing side thread writes in the distributed memory existing on the writing side, and transmits a writing end notification to the reading side thread after the writing is completed. When the reading side thread is executed in the same processor as the writing side thread, the reading side thread is started when the writing end notification is received, and reads the distributed memory on the processor.

【0048】それに対して、読出し側スレッドが別のプ
ロセッサ上で実行される場合、書き込み終了通知によっ
てデータ転送装置が動作し、書込み側の分散メモリから
読出し側の分散メモリへデータ転送を行うのと同時に読
出し側スレッドの名前を読出し側プロセッサに伝送す
る。読出し側のデータ転送装置は、データを分散メモリ
に書き込んだ後、書込み終了通知を読出し側スレッドに
伝送し、読出し側スレッドを起動する。
On the other hand, when the read side thread is executed on another processor, the data transfer device operates according to the write end notification to transfer data from the write side distributed memory to the read side distributed memory. At the same time, the name of the reading thread is transmitted to the reading processor. After reading the data in the distributed memory, the data transfer device on the read side transmits a write end notification to the read side thread and activates the read side thread.

【0049】したがって、本実施の形態によれば、仮想
共有メモリに対して書込み操作及び読出し操作を行うプ
ログラムを、書込み側スレッドプログラムと読出し側ス
レッドプログラムとに分割し、書込み操作及び読出し操
作をそれぞれイベントとして取り扱い、同一又は互いに
相違するプロセッサ上で実行される書込み側スレッドと
読出し側スレッドに対して、書込みイベントと読出しイ
ベントとの間の順序関係に基づくスレッド間の依存関係
に従ってスレッド間の同期制御を行う。
Therefore, according to the present embodiment, the program for performing the write operation and the read operation to the virtual shared memory is divided into the write side thread program and the read side thread program, and the write operation and the read operation are respectively performed. Synchronous control between threads for a writing thread and a reading thread that are handled as events and executed on the same or different processors according to the inter-thread dependency based on the order relationship between the writing event and the reading event. I do.

【0050】その結果、書込み操作及び読出し操作を適
切なタイミングで実行することができ、次のような効果
が得られる。 1.書込み時及び読出し時のメモリロック操作及びメモ
リアンロック操作を必要としなくなる。 2.分散メモリ間のデータ一貫性保持のための管理を単
純化する。 3.書込み操作及び読出し操作の待機の時間及び/又は
回数を著しく軽減し、書込み操作及び読出し操作に伴う
プロセス状態制御を単純化することができる。 4.ユーザプログラムにおいて、分散メモリ間の書込み
操作タイミング及び読出し操作タイミングを考慮するこ
となく共有メモリへの読出し操作及び書込み操作を簡潔
に記述することができるので、プログラム設計が容易と
なる。
As a result, the write operation and the read operation can be executed at appropriate timing, and the following effects can be obtained. 1. The memory lock operation and the memory unlock operation at the time of writing and reading are not necessary. 2. Simplify management for maintaining data consistency between distributed memories. 3. The wait time and / or number of waits for write and read operations can be significantly reduced and process state control associated with write and read operations can be simplified. 4. Since the read operation and the write operation to the shared memory can be simply described in the user program without considering the write operation timing and the read operation timing between the distributed memories, the program design becomes easy.

【0051】それによって、分散共有メモリ管理機構を
単純化し、並列分散計算機の構成及び並列分散オペレー
ティングシステムの設計を単純化することができる。
As a result, the distributed shared memory management mechanism can be simplified, and the configuration of the parallel distributed computer and the design of the parallel distributed operating system can be simplified.

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

【図1】 本発明の第1及び第2の実施の形態において
仮想共有メモリへの書込み及び読出しを記述するスレッ
ドプログラムの構造を示すプログラムブロック図であ
る。
FIG. 1 is a program block diagram showing the structure of a thread program that describes writing and reading to and from a virtual shared memory in the first and second embodiments of the present invention.

【図2】 本発明の第1及び第2の実施の形態において
実行される分散メモリへの書込み及び読出し操作を含む
スレッドプログラムの構造を示すプログラムブロック図
である。
FIG. 2 is a program block diagram showing a structure of a thread program including write and read operations to a distributed memory executed in the first and second embodiments of the present invention.

【図3】 分散メモリ間のデータ転送及びスレッド同期
制御の機構を示すハードウェアのブロック図である。
FIG. 3 is a block diagram of hardware showing a mechanism of data transfer between distributed memories and a thread synchronization control.

【図4】 図3のデータ転送装置及び演算装置を詳細に
示す図である。
FIG. 4 is a diagram showing in detail the data transfer device and the arithmetic device of FIG.

【図5】 本発明の第2の実施の形態のハードウェア装
置のブロック図である。
FIG. 5 is a block diagram of a hardware device according to a second embodiment of this invention.

【図6】 図4におけるデータの書込み及び読出しに伴
うデータ送受信及びスレッド実行管理のソフトウェアの
動作過程を示す図である。
FIG. 6 is a diagram showing an operation process of software for data transmission / reception and thread execution management accompanying writing and reading of data in FIG. 4;

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

1 仮想共有メモリ 2A,2B プロセッサ 3A,3B,22 演算装置 4A,4B データ転送装置 5A,5B,27 分散メモリ 6A,6B スレッド実行装置 7A,7B,28 同期待ちスレッド管理表 8A,8B,29 実行待ちスレッドキュー 9 データ読出し装置 10 データ送信装置 11 データ受信装置 12 データ書き込み装置 13 スレッド同期管理装置 21 ハードウェア装置 23 メモリ装置 24 データ送受信装置 25 バス 26 スレッド実行管理部 26a スレッド実行部 26b 割込み処理実行部 30 データ送信装置 31 データ受信装置 32 割込みキュー 1 virtual shared memory 2A, 2B processor 3A, 3B, 22 arithmetic unit 4A, 4B data transfer device 5A, 5B, 27 distributed memory 6A, 6B thread execution device 7A, 7B, 28 Synchronization waiting thread management table 8A, 8B, 29 Waiting thread queue 9 Data reading device 10 Data transmitter 11 Data receiving device 12 Data writing device 13 Thread synchronization management device 21 Hardware device 23 Memory device 24 Data transmitter / receiver 25 bus 26 Thread execution manager 26a Thread execution unit 26b Interrupt processing execution unit 30 data transmitter 31 Data receiver 32 interrupt queue

フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 15/177 681 G06F 15/177 681B Continuation of front page (51) Int.Cl. 7 Identification code FI theme code (reference) G06F 15/177 681 G06F 15/177 681B

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】 読出し操作及び書込み操作を行うための
プログラムから読出し側スレッドプログラム及び書込み
側スレッドプログラムを抽出する手段と、 同一又は互いに相違するプロセッサ上で実行される書込
み側スレッド及び読出し側スレッドに対し、前記読出し
操作及び前記書込み操作に基づく前記書込み側スレッド
と読出し側スレッドとの間の関係に従って、前記読出し
側スレッドプログラムと前記書込み側スレッドプログラ
ムとの間の同期制御を行う手段とを具えることを特徴と
する仮想共有メモリ。
1. A means for extracting a read side thread program and a write side thread program from a program for performing a read operation and a write operation, and a write side thread and a read side thread executed on the same or different processors. On the other hand, there is provided means for performing synchronous control between the read side thread program and the write side thread program according to the relationship between the read side thread and the read side thread based on the read operation and the write operation. Virtual shared memory characterized by the following.
【請求項2】 前記読出し操作及び前記書込み操作をそ
れぞれ書込みイベント及び読出しイベントとして取り扱
ったことを特徴とする請求項1記載の仮想共有メモリ。
2. The virtual shared memory according to claim 1, wherein the read operation and the write operation are treated as a write event and a read event, respectively.
【請求項3】 前記読出しスレッドプログラム及び前記
書込みスレッドプログラムをそれぞれ、言語処理系によ
って既存のプログラムコードから変換した後に前記同一
又は互いに相違するプロセッサでの読出し操作及び書込
み操作を行うのに適切な形式に変換された読出しスレッ
ドプログラム及び前記書込みスレッドプログラムとした
ことを特徴とする請求項1又は2記載の仮想共有メモ
リ。
3. A format suitable for performing read and write operations in the same or different processors after converting the read thread program and the write thread program from existing program code by a language processing system, respectively. The virtual shared memory according to claim 1 or 2, wherein the read thread program and the write thread program converted into the above are used.
【請求項4】 読出し操作及び書込み操作を行うための
プログラムから読出し側スレッドプログラム及び書込み
側スレッドプログラムを抽出するステップと、 同一又は互いに相違するプロセッサ上で実行される書込
み側スレッド及び読出し側スレッドに対し、前記読出し
操作及び前記書込み操作に基づく前記書込み側スレッド
と読出し側スレッドとの間の関係に従って、前記読出し
側スレッドプログラムと前記書込み側スレッドプログラ
ムとの間の同期制御を行うステップとを具えることを特
徴とする仮想共有記憶方法。
4. A step of extracting a reading side thread program and a writing side thread program from a program for performing a reading operation and a writing operation, and a writing side thread and a reading side thread executed on the same or different processors. On the other hand, according to the relationship between the read side thread and the read side thread based on the read operation and the write operation, the step of performing synchronous control between the read side thread program and the write side thread program. A virtual shared storage method characterized by the above.
【請求項5】 前記読出し操作及び前記書込み操作をそ
れぞれ書込みイベント及び読出しイベントとして取り扱
うことを特徴とする請求項4記載の仮想共有記憶方法。
5. The virtual shared storage method according to claim 4, wherein the read operation and the write operation are treated as a write event and a read event, respectively.
【請求項6】 前記読出しスレッドプログラム及び前記
書込みスレッドプログラムをそれぞれ、言語処理系によ
って既存のプログラムコードから変換した後に前記同一
又は互いに相違するプロセッサでの読出し操作及び書込
み操作を行うのに適切な形式に変換された読出しスレッ
ドプログラム及び前記書込みスレッドプログラムとする
ことを特徴とする請求項4又は5記載の仮想共有記憶方
法。
6. A format suitable for performing read and write operations in the same or different processors after converting the read thread program and the write thread program from existing program code by a language processing system, respectively. 6. The virtual shared storage method according to claim 4, wherein the read thread program and the write thread program converted into the above are used.
【請求項7】 読出し操作及び書込み操作を行うための
プログラムから読出し側スレッドプログラム及び書込み
側スレッドプログラムを抽出するステップと、 同一又は互いに相違するプロセッサ上で実行される書込
み側スレッド及び読出し側スレッドに対し、前記読出し
操作及び前記書込み操作に基づく前記書込み側スレッド
と読出し側スレッドとの間の関係に従って、前記読出し
側スレッドプログラムと前記書込み側スレッドプログラ
ムとの間の同期制御を行うステップとを具えることを特
徴とするコンピュータによって実行される仮想共有記憶
プログラム。
7. A step of extracting a reading side thread program and a writing side thread program from a program for performing a reading operation and a writing operation, and a writing side thread and a reading side thread executed on the same or different processors. On the other hand, according to the relationship between the read side thread and the read side thread based on the read operation and the write operation, the step of performing synchronous control between the read side thread program and the write side thread program. A virtual shared storage program executed by a computer characterized by the following.
【請求項8】 前記読出し操作及び前記書込み操作をそ
れぞれ書込みイベント及び読出しイベントとして取り扱
うことを特徴とする請求項7記載のコンピュータによっ
て実行される仮想共有記憶プログラム。
8. The virtual shared storage program executed by a computer according to claim 7, wherein the read operation and the write operation are treated as a write event and a read event, respectively.
【請求項9】 前記読出しスレッドプログラム及び前記
書込みスレッドプログラムをそれぞれ、言語処理系によ
って既存のプログラムコードから変換した後に前記同一
又は互いに相違するプロセッサでの読出し操作及び書込
み操作を行うのに適切な形式に変換された読出しスレッ
ドプログラム及び前記書込みスレッドプログラムとする
ことを特徴とする請求項7又は8記載のコンピュータに
よって実行される仮想共有記憶プログラム。
9. A format suitable for performing read and write operations in the same or different processors after converting the read thread program and the write thread program from existing program code by a language processing system, respectively. 9. The virtual shared storage program executed by a computer according to claim 7, wherein the read thread program and the write thread program are converted into the above.
JP2001223837A 2001-05-21 2001-07-25 Virtual shared memory, virtual shared storing method and virtual shared storing program Pending JP2003036179A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001223837A JP2003036179A (en) 2001-07-25 2001-07-25 Virtual shared memory, virtual shared storing method and virtual shared storing program
US10/147,998 US20030014558A1 (en) 2001-05-21 2002-05-20 Batch interrupts handling device, virtual shared memory and multiple concurrent processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001223837A JP2003036179A (en) 2001-07-25 2001-07-25 Virtual shared memory, virtual shared storing method and virtual shared storing program

Publications (1)

Publication Number Publication Date
JP2003036179A true JP2003036179A (en) 2003-02-07

Family

ID=19057103

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001223837A Pending JP2003036179A (en) 2001-05-21 2001-07-25 Virtual shared memory, virtual shared storing method and virtual shared storing program

Country Status (1)

Country Link
JP (1) JP2003036179A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010176630A (en) * 2009-02-02 2010-08-12 Ntt Docomo Inc Portable terminal

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010176630A (en) * 2009-02-02 2010-08-12 Ntt Docomo Inc Portable terminal

Similar Documents

Publication Publication Date Title
US7234004B2 (en) Method, apparatus and program product for low latency I/O adapter queuing in a computer system
JPH0792761B2 (en) Input / output control method for virtual computer system
JPH0236969B2 (en)
JP4171910B2 (en) Parallel processing system and parallel processing program
JPH0784883A (en) Method for purging address conversion buffer of virtual computer system
JPH02178756A (en) Schedule system for multi-processor work
JP6508382B1 (en) INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND PROGRAM
CN106030515B (en) Binary translation for multiprocessor and multi-core platform
JPH1078873A (en) Method for processing asynchronizing signal in emulation system
US20030014558A1 (en) Batch interrupts handling device, virtual shared memory and multiple concurrent processing device
US7299476B2 (en) Method for exchanging information between operating systems coexisting on the same computer
JP2000259434A (en) Logical interval type computer system
JP2003036179A (en) Virtual shared memory, virtual shared storing method and virtual shared storing program
JP2007141155A (en) Multi-core control method in multi-core processor
CN108958904B (en) Driver framework of lightweight operating system of embedded multi-core central processing unit
JP3516049B2 (en) Batch job control system
US11640246B2 (en) Information processing device, control method, and computer-readable recording medium storing control program
JPS603229B2 (en) Information processing method
JPS6239789B2 (en)
JPH07105120A (en) Input/output controller
JP2594557B2 (en) Multitask processing unit
JP2010026575A (en) Scheduling method, scheduling device, and multiprocessor system
EP0290533B1 (en) I/o system for off-loading operating system functions
JPH1185673A (en) Method and device for controlling shared bus
JPH0290331A (en) Inter-processor communication instruction processor for virtual computer system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050329

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050526

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20050526

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20050526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050712

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050909

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060110