JPH04320537A - Synchronous processing method for parallel processing system - Google Patents

Synchronous processing method for parallel processing system

Info

Publication number
JPH04320537A
JPH04320537A JP8887191A JP8887191A JPH04320537A JP H04320537 A JPH04320537 A JP H04320537A JP 8887191 A JP8887191 A JP 8887191A JP 8887191 A JP8887191 A JP 8887191A JP H04320537 A JPH04320537 A JP H04320537A
Authority
JP
Japan
Prior art keywords
procedure
data
processing
queue
executing
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
JP8887191A
Other languages
Japanese (ja)
Inventor
Hideyuki Ozaki
尾崎 英之
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP8887191A priority Critical patent/JPH04320537A/en
Publication of JPH04320537A publication Critical patent/JPH04320537A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

PURPOSE:To provide a synchronous processing method for a parallel processing system capable of executing parallel processing while guaranteeing the execution order of plural procedures. CONSTITUTION:After executing a certain procedure, a 1st process 101 adds information necessary and sufficient for executing the succeeding procedure tightly relating to the procedure concerned to data 104 to be processed and inserts the data 104 into a queue 103. A 2nd process 102 extracts the data 104 from the queue 103 and indirectly the succeeding procedure tightly relating to the procedure makes access to concerned based upon the information added to the data 104 to execute the succeeding procedure.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】0001

【産業上の利用分野】この発明は、処理の対象となるデ
ータに対する処理内容が記述された複数の手続きを予め
設定された実行順序に従って順次実行する並列処理シス
テムの同期処理方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a synchronous processing method for a parallel processing system that sequentially executes a plurality of procedures in which processing contents for data to be processed are described in accordance with a preset execution order.

【0002】0002

【従来の技術】従来においては、一般的に、複数の手続
きを実行することにより目的とする処理を達成すること
ができる。
2. Description of the Related Art Conventionally, a desired process can generally be achieved by executing a plurality of procedures.

【0003】ここで、あるデータdに対し手続きA、手
続きB、手続きCの順で処理を行う必要がある場合で、
かつ手続きCの内容は手続きAと密接に関係し、手続き
Bはその内容に関して知り得ない(つまり直接手続きC
を呼び出すことができない)ような場合を考える。
[0003] Here, if it is necessary to process procedure A, procedure B, and procedure C in order for certain data d,
Moreover, the content of procedure C is closely related to procedure A, and procedure B cannot know about its content (that is, it is directly related to procedure C).
).

【0004】このような事項を前提としたときの上記各
手続きの実行に際しては、単一プロセス(逐次実行型)
による実行と、複数プロセス(完了待ち合わせ型)によ
る実行とがある。
[0004] When executing each of the above procedures based on these conditions, a single process (sequential execution type)
There is execution by multiple processes (completion waiting type) and execution by multiple processes (completion waiting type).

【0005】図7は、単一プロセスによる上記各手続き
の実行処理を説明するための図を示したものである。こ
の図において、プロセス1はデータdに対し各手続きを
実行するようになっている。この場合、各手続きが同一
のコンテキスト内であれば、プロセス1は、データdに
対し、手続きA、手続きB、手続きCの順番に実行する
か、若しくは手続きAから手続きBを呼び出す際に引数
として手続きCのエントリ・アドレス等を渡し、手続き
B内で手続きCをコールバック(間接手続き呼びだし)
することにより目的を達成することができる。
FIG. 7 shows a diagram for explaining the execution processing of each of the above procedures by a single process. In this figure, process 1 executes various procedures on data d. In this case, if each procedure is in the same context, process 1 executes procedure A, procedure B, and procedure C on data d in this order, or when calling procedure B from procedure A, process 1 uses Pass the entry address etc. of procedure C and call back procedure C within procedure B (indirect procedure call)
By doing so, you can achieve your purpose.

【0006】上記いずれの場合も、単一プロセスによる
処理としては、図8に示すように、データdに対し手続
きAを実行し(ステップ11)、次にデータdに対し手
続きBを実行し(ステップ12)、さらにデータdに対
し手続きCを実行する(ステップ13)ことにより、手
続きA、手続きB、手続きCの順番に従って手続きを実
行することができる。
In any of the above cases, as shown in FIG. 8, procedure A is executed on data d (step 11), and then procedure B is executed on data d (step 11). By executing step 12) and procedure C on data d (step 13), the procedures can be executed in the order of procedure A, procedure B, and procedure C.

【0007】次に、複数プロセスによる上記各手続きの
実行処理を説明するための図を図9に示し、その実行処
理動作を示すフローチャートを図10に示す。
[0007] Next, a diagram for explaining the execution processing of each of the above procedures by a plurality of processes is shown in FIG. 9, and a flowchart showing the execution processing operation is shown in FIG.

【0008】図9において、コンテキスト(またはプロ
セス)2とコンテキスト(またはプロセス)3との間に
待ち行列(キュー)4などの同期機構が設けられている
。ここで、手続きAはプロセス2に属し、手続きBはプ
ロセス3に属しているものとする。
In FIG. 9, a synchronization mechanism such as a queue 4 is provided between a context (or process) 2 and a context (or process) 3. Here, it is assumed that procedure A belongs to process 2 and procedure B belongs to process 3.

【0009】さて、図10(a)に示すように、プロセ
ス2では、データdに対し手続きAを実行して(ステッ
プ21)、このデータdをキュー4に挿入する(ステッ
プ22)。その後、プロセス3からの、手続きBの実行
が終了した旨の通知が入力するまで待機し(ステップ2
3)、プロセス3による手続きBの実行が終了した場合
は手続きCを実行する(ステップ24)。
Now, as shown in FIG. 10(a), in process 2, procedure A is executed on data d (step 21), and this data d is inserted into queue 4 (step 22). After that, it waits until a notification from process 3 that execution of procedure B has finished (step 2
3) When the execution of procedure B by process 3 is completed, procedure C is executed (step 24).

【0010】これに対し、プロセス3では、図10(b
)に示すように、キュー4からデータdを取り出して(
ステップ31)、この取り出したデータdに対し手続き
Bを実行する(ステップ32)。そして、手続きBの実
行を終了したらその旨をプロセス2へ通知する(ステッ
プ33)。
On the other hand, in process 3, FIG.
), take out data d from queue 4 and write (
Step 31), and procedure B is executed on the extracted data d (step 32). Then, when the execution of procedure B is finished, process 2 is notified of this fact (step 33).

【0011】なお、上述した複数プロセスによる処理に
おいては、複数プロセス間での実行順序を保証するため
には、プロセス2はプロセス3による手続きBの実行の
終了を待ち合わせる必要がある。つまり上記ステップ2
3の処理を行わなければならない。このことは、プロセ
ス2は、手続きBが実行完了するまで待ち合わせを行わ
なければならないので、この間はプロセス3による処理
に並列して処理を行うことはできない。
[0011] In the above-described processing using multiple processes, in order to guarantee the order of execution among the multiple processes, process 2 needs to wait for process 3 to finish executing procedure B. In other words, step 2 above
Step 3 must be performed. This means that process 2 must wait until procedure B completes execution, and cannot perform processing in parallel with process 3 during this time.

【0012】0012

【発明が解決しようとする課題】このように上記従来の
複数プロセスによる処理においては、プロセス2は手続
きAの実行を終了した後、手続きAのコンテキスト内で
手続きBの実行完了の待ち合わせを行い、さらにプロセ
ス3による手続きBの実行が終了した後手続Cを実行し
なければならず、プロセス2はプロセス3が手続きBを
実行している間は待機状態となり処理を行うことができ
ない。従って、コンテキストを分けるそもそもの目的で
ある並列処理が実質的に行われず、処理効率の向上は望
めないという問題点があった。
As described above, in the above-mentioned conventional processing by multiple processes, after process 2 finishes executing procedure A, it waits for the completion of execution of procedure B within the context of procedure A. Further, after process 3 finishes executing procedure B, procedure C must be executed, and while process 3 is executing procedure B, process 2 is in a standby state and cannot perform any processing. Therefore, there is a problem in that parallel processing, which is the original purpose of dividing contexts, is not substantially performed, and no improvement in processing efficiency can be expected.

【0013】この発明は上記実情に鑑みてなされたもの
であり、複数の手続きの実行順序を保証しつつ、並列処
理を行うことのできる並列処理システムの同期処理方法
を提供することを目的とする。
The present invention has been made in view of the above circumstances, and an object thereof is to provide a synchronization processing method for a parallel processing system that can perform parallel processing while guaranteeing the execution order of a plurality of procedures. .

【0014】[0014]

【課題を解決するための手段】上記目的を達成するため
、この発明では、処理の対象となるデータに対する処理
内容が記述された複数の手続きを予め設定された実行順
序に従って順次実行する並列処理システムの同期処理方
法において、ある手続きを実行する第1のプロセスと、
該ある手続きの後続の手続きを実行する第2のプロセス
とを有し、前記第1のプロセスは、前記ある手続きを実
行した後、前記データに当該ある手続きと密接に関係し
ている後続の手続きを実行するに必要十分な情報を付加
し、前記第2のプロセスは、前記データに付加された前
記情報に基づいて前記ある手続きと密接に関係している
後続の手続きを間接的に呼び出して実行することを特徴
としている。
[Means for Solving the Problems] In order to achieve the above object, the present invention provides a parallel processing system that sequentially executes a plurality of procedures in which processing contents for data to be processed are described in accordance with a preset execution order. In the synchronous processing method, a first process that executes a certain procedure;
and a second process that executes a procedure subsequent to the certain procedure, and after executing the certain procedure, the first process executes a subsequent procedure that is closely related to the certain procedure in the data. The second process indirectly calls and executes a subsequent procedure that is closely related to the certain procedure based on the information added to the data. It is characterized by

【0015】[0015]

【作用】この発明に係る並列処理システムの同期処理方
法によれば、ある手続きは第1のプロセスによって実行
され、該ある手続きと密接に関係している後続の手続き
は第2のプロセスによって実行される。従って、第1の
プロセスは、ある手続きを実行した後は、当該ある手続
きと密接に関係している後続の手続きの実行に際しては
何等関与する必要がないので、他の処理を行うことがで
きる。
[Operation] According to the synchronous processing method for a parallel processing system according to the present invention, a certain procedure is executed by a first process, and a subsequent procedure closely related to the certain procedure is executed by a second process. Ru. Therefore, after executing a certain procedure, the first process does not need to be involved in the execution of subsequent procedures that are closely related to the certain procedure, so it can perform other processes.

【0016】[0016]

【実施例】以下、本発明に係る並列処理システムの同期
処理方法の一実施例を図1乃至図6を参照して説明する
DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of a synchronous processing method for a parallel processing system according to the present invention will be described below with reference to FIGS. 1 to 6.

【0017】図1は本発明に係る同期処理方法を適用し
た並列処理システムの一実施例の概略構成を示したもの
であり、この図に示した実施例のシステムは汎用の計算
機システムに適用することができる。
FIG. 1 shows a schematic configuration of an embodiment of a parallel processing system to which the synchronous processing method according to the present invention is applied, and the system of the embodiment shown in this figure is applied to a general-purpose computer system. be able to.

【0018】同図において、並列処理システムは、第1
のプロセス101及び第2のプロセス102と、該各プ
ロセス間に設けられる待ち行列(Queue)(以下、
キューという)103とを有して構成されている。
In the figure, the parallel processing system includes a first
process 101 and second process 102, and a queue (hereinafter referred to as "Queue") provided between each process.
(referred to as a queue) 103.

【0019】この実施例では、上記従来の技術で説明し
たように、あるデータに対し手続きA、手続きB、手続
きCの順で処理を行う必要がある場合で、かつ手続きC
の内容は手続きAと密接に関係し、手続きBはその内容
に関して知り得ない(つまり直接手続きCを呼び出すこ
とができない)ような場合を前提とする。
In this embodiment, as explained in the above-mentioned conventional technology, there is a case where it is necessary to process procedure A, procedure B, and procedure C in the order of procedure A, procedure B, and procedure C for certain data.
The content of is closely related to procedure A, and procedure B cannot know about the content (that is, cannot directly call procedure C).

【0020】さて、第1のプロセス101は、処理の対
象となるデータ104に対し手続きCを実行するのに必
要十分な情報を設定する機能を有しており、一方、第2
のプロセス102は、データ104内に設定された手続
きCへの情報を参照し、該参照結果に基づいて手続きC
を間接的に呼び出す機能を有している。
Now, the first process 101 has a function of setting necessary and sufficient information to execute procedure C on the data 104 to be processed, while the second
The process 102 refers to the information for procedure C set in the data 104, and executes procedure C based on the reference result.
It has a function to call indirectly.

【0021】なお、第1のプロセス101及び第2のプ
ロセス102は図示しないプロセッサや中央処理装置な
どの制御手段によって実行されるものである。また、上
記各手続き及びデータ104は図示しない記憶手段に割
当てされている。
Note that the first process 101 and the second process 102 are executed by a control means such as a processor or a central processing unit (not shown). Further, each of the above-mentioned procedures and data 104 are allocated to a storage means (not shown).

【0022】なお、この実施例では、手続きAは第1の
プロセス101に属し、手続きBは第2のプロセス10
2に属すものとし、また手続きA、手続きB、手続きC
は共に同一のコンテキスト内に存在しているものとする
Note that in this embodiment, procedure A belongs to the first process 101, and procedure B belongs to the second process 101.
2, and Procedure A, Procedure B, and Procedure C.
It is assumed that both exist within the same context.

【0023】次に、並列処理システムの基本的な並列処
理動作を図2及び図3を参照して説明する。
Next, the basic parallel processing operation of the parallel processing system will be explained with reference to FIGS. 2 and 3.

【0024】なお、図2は第1のプロセス101の処理
動作を示すフローチャートであり、図3は第2のプロセ
ス102の処理動作を示すフローチャートである。
Note that FIG. 2 is a flowchart showing the processing operation of the first process 101, and FIG. 3 is a flowchart showing the processing operation of the second process 102.

【0025】第1のプロセス101では、図2に示すよ
うに、手続きAを実行し(ステップ201)、その後、
データ104に手続きCを実行するに必要十分な情報、
この実施例では例えば手続きCが格納されている領域の
アドレス値を格納する(ステップ202)とともに、当
該データ104をキュー103に挿入する(ステップ2
03)。ステップ203終了後は、他の処理を実行する
ことができる(ステップ204)。なお、図1に示され
るデータ104において、斜線で示されている部分が、
手続きCを実行するのに必要十分な情報が格納されてい
ることを示している。
In the first process 101, as shown in FIG. 2, procedure A is executed (step 201), and then,
information necessary and sufficient to execute procedure C on the data 104;
In this embodiment, for example, the address value of the area where procedure C is stored is stored (step 202), and the data 104 is inserted into the queue 103 (step 2).
03). After step 203, other processing can be executed (step 204). Note that in the data 104 shown in FIG. 1, the shaded portion is
This indicates that sufficient information necessary to execute procedure C is stored.

【0026】一方、第2のプロセス102では、図3に
示すように、キュー103からデータ104を取り出し
(ステップ301)、このデータ104に対し手続きB
を実行する(ステップ302)。そして、その手続きB
の実行終了後、データ104に設定されている手続きC
を実行するに必要十分な情報を参照し、この参照結果(
手続きCが格納されている領域のアドレス値)に基づい
て手続きCをコールバック(間接手続呼び出し)して、
手続きCを実行する(ステップ303)。
On the other hand, in the second process 102, as shown in FIG.
(Step 302). And that procedure B
After the execution of the procedure C set in the data 104
The result of this reference (
Call back procedure C (indirect procedure call) based on the address value of the area where procedure C is stored,
Procedure C is executed (step 303).

【0027】こうして第2のプロセス102によって手
続きCが実行されているときには、第1のプロセス10
1は手続きCの実行に対し何等関与する必要はない。ま
た手続きCの処理自体は第1のプロセス101によって
規定された方法によるため、第2のプロセス102は何
を実行しているかを知る必要はない。つまり、手続きC
がどういった処理であるかを知る必要はない。
In this way, when procedure C is being executed by the second process 102, the first process 10
1 need not be involved in the execution of procedure C in any way. Further, since the processing of procedure C itself is based on the method defined by the first process 101, the second process 102 does not need to know what is being executed. In other words, procedure C
There is no need to know what the process is.

【0028】なお、上記ステップ202において手続き
Cを実行するのに必要十分な情報のデータ104への設
定に際しては、手続きAの実行終了後に行うようにして
いるが、これを手続きA内で設定する(つまり手続きA
内にデータ104への設定処理を記述しておく)ように
しても良い。
[0028] In step 202, the information necessary and sufficient to execute procedure C is set in the data 104 after the execution of procedure A is completed, but this is set within procedure A. (In other words, procedure A
The setting process for the data 104 may be described in the data 104.

【0029】また、この実施例では、手続きCを実行す
るのに必要十分な情報として、手続きCが記憶されてい
る領域のアドレス値としたが、これは手続きA、手続き
B、手続きCが同一のコンテキスト内に存在しているか
らアドレス値とすることが可能なのである。従って、各
手続きがそれぞれ異なるコンテキスト内に存在している
場合は、手続きCを実行するのに必要十分な情報として
、手続きCが記憶されている領域へのオフセット値やイ
ンデックス値などにすれば良い。
Furthermore, in this embodiment, the address value of the area where procedure C is stored is used as information necessary and sufficient to execute procedure C, but this is because procedure A, procedure B, and procedure C are the same. Since it exists within the context of , it is possible to use it as an address value. Therefore, if each procedure exists in a different context, the information necessary and sufficient to execute procedure C can be an offset value or index value to the area where procedure C is stored. .

【0030】次に、通信プロトコルの処理系を例にとっ
て、本発明に係る同期処理方法の実施例を説明する。
Next, an embodiment of the synchronization processing method according to the present invention will be described using a communication protocol processing system as an example.

【0031】図4は通信プロトコルの処理系を実現する
並列処理システムの一実施例の概略構成を示しており、
上記第1のプロセス101及び第2のプロセス102に
それぞれ相当する第1のプロセス401及び第2のプロ
セス402と、上記キュー103に相当するキュー40
3とを有している。
FIG. 4 shows a schematic configuration of an embodiment of a parallel processing system that implements a communication protocol processing system.
A first process 401 and a second process 402 corresponding to the first process 101 and second process 102, respectively, and a queue 40 corresponding to the queue 103
3.

【0032】ここで、通信プロトコルの処理系において
、手続きAを上位層(OSI参照モデルの第3層〜第7
層に相当)のパケット送信準備処理、手続きBを物理イ
ンタフェース・ドライバ(すなわち回線へのパケット送
出処理)、手続きCをパケット・バッファの送信完了後
の後処理、データ104をパケット・バッファ404と
する。また手続きAは第1のプロセス401に属し、手
続きBは第2のプロセス402に属すものとする。さら
にここでも、各手続きは同一のコンテキスト内に存在し
ているものとする。なお、キュー403に関してはその
他の一般的なプロセス間通信の手法でも良い。
[0032] Here, in the communication protocol processing system, procedure A is transferred to upper layers (layers 3 to 7 of the OSI reference model).
The procedure B is the physical interface driver (i.e., the process of sending packets to the line), the procedure C is the post-processing after the transmission of the packet buffer is completed, and the data 104 is the packet buffer 404. . It is also assumed that procedure A belongs to the first process 401 and procedure B belongs to the second process 402. Furthermore, it is assumed here that each procedure exists within the same context. Note that for the queue 403, other general inter-process communication methods may be used.

【0033】次に、通信プロトコルの処理系を実現する
並列処理システムの並列処理動作を図5及び図6を参照
して説明する。
Next, the parallel processing operation of the parallel processing system that implements the communication protocol processing system will be explained with reference to FIGS. 5 and 6.

【0034】なお、図5は第1のプロセス401の処理
動作を示すフローチャートであり、図6は第2のプロセ
ス402の処理動作を示すフローチャートである。
Note that FIG. 5 is a flowchart showing the processing operation of the first process 401, and FIG. 6 is a flowchart showing the processing operation of the second process 402.

【0035】さて、図5に示すように、第1のプロセス
401は、データセットや送信先のアドレスセットなど
のパケットの送信準備処理を行い(ステップ501)、
その後、パケット・バッファ404の予め決められた領
域にバッファ解放ルーチンのエントリ・アドレスを格納
(ステップ502)した後、パケット・バッファ404
をキュー403に挿入する(ステップ503)。ステッ
プ503を終了した後はその他の処理を実行し(ステッ
プ504)、その後、全ての処理が終了したか否かを判
断する(ステップ505)。ここで、全ての処理が終了
していない場合には上記ステップ501に戻りこのステ
ップ以降を実行し、一方、全ての処理が終了した場合は
処理を終了する。なお、図4に示されるパケット・バッ
ファ404において、斜線で示されている部分が、バッ
ファ解放ルーチンのエントリ・アドレスが格納されてい
ることを示している。
Now, as shown in FIG. 5, the first process 401 performs packet transmission preparation processing such as a data set and a destination address set (step 501).
Thereafter, after storing the entry address of the buffer release routine in a predetermined area of the packet buffer 404 (step 502), the packet buffer 404
is inserted into the queue 403 (step 503). After completing step 503, other processing is executed (step 504), and then it is determined whether all processing has been completed (step 505). Here, if all the processing has not been completed, the process returns to step 501 and the steps after this step are executed, whereas if all the processing has been completed, the processing is ended. Note that in the packet buffer 404 shown in FIG. 4, the diagonally shaded portion indicates that the entry address of the buffer release routine is stored.

【0036】一方、第2のプロセス402は、図6に示
すように、キュー403からパケット・バッファ404
を取り出して(ステップ601)、パケット送信処理を
実行する(ステップ602)。この結果、パケットが回
線(図示せず)へ送出されることになる。ステップ60
2を終了した後、パケット・バッファ404内に設定さ
れたエントリ・アドレスをコール(CALL)し、バッ
ファ解放ルーチンを実行する(ステップ603)。結果
としてパケット・バッファ404が解放されることにな
る。ステップ603を終了したら、全ての処理が終了し
たか否かを判断する(ステップ604)。ここで、全て
の処理が終了していない場合には上記ステップ601に
戻りこのステップ以降を実行し、一方、全ての処理が終
了した場合は処理を終了する。
On the other hand, the second process 402 retrieves the packet buffer 404 from the queue 403, as shown in FIG.
(step 601) and performs packet transmission processing (step 602). As a result, the packet will be sent out onto a line (not shown). Step 60
2, the entry address set in the packet buffer 404 is called (CALL) and a buffer release routine is executed (step 603). As a result, packet buffer 404 will be freed. After completing step 603, it is determined whether all processing has been completed (step 604). Here, if all the processing has not been completed, the process returns to step 601 and the steps from this step onwards are executed, whereas if all the processing has been completed, the processing is ended.

【0037】上述したように第2のプロセス402は、
パケット送信処理を終了した後、バッファ解放処理(ル
ーチン)を引続き実行することになる。なおバッファ解
放の処理自体は第1のプロセス401によって規定され
た方法によるため、第2のプロセス402は何を実行し
ているかを知る必要はない。
As mentioned above, the second process 402 includes:
After completing the packet transmission process, the buffer release process (routine) will be continued. Note that the buffer release process itself is based on the method defined by the first process 401, so there is no need for the second process 402 to know what it is executing.

【0038】従って、第1のプロセス401による処理
と第2のプロセス402による処理とを並列に行うこと
ができるので、第1のプロセス401は、第2のプロセ
ス402による処理に関係なく、次の送信相手先につい
ての処理を行うことができることとなり、よって同一の
データの、異なる複数の送信相手先への送信処理を迅速
に行うことができる。
Therefore, since the processing by the first process 401 and the processing by the second process 402 can be performed in parallel, the first process 401 can perform the following processing regardless of the processing by the second process 402. Processing can be performed for the transmission destination, and therefore, the same data can be quickly transmitted to a plurality of different transmission destinations.

【0039】また、バーチャル・サーキット(仮想回線
)を実現するような処理系では、上記通信プロトコルの
処理系における手続きCを、パケット・バッファの、パ
ケット・バッファを再送するためのキュー(以下、再送
キューという)への挿入処理とすることにより、上記図
5及び図6のフローを何等変更することなく、第2のプ
ロセス402により送信したパケットを、通信相手先か
らの受信確認応答がくるまで上記再送キューに保持する
といったことが可能となる。
In addition, in a processing system that implements a virtual circuit (virtual line), procedure C in the processing system of the above-mentioned communication protocol is used as a queue for retransmitting the packet buffer (hereinafter referred to as a retransmission queue). By inserting the packet into the queue (referred to as a queue), the packets sent by the second process 402 are inserted into the queue (referred to as a queue), without changing the flows shown in FIGS. It becomes possible to hold the data in a retransmission queue.

【0040】以上説明したように本実施例によれば、手
続きAと手続きBとの間に待ち行列(キュー)などの非
同期要素が入ったとしても、必ず手続きBが終了した後
手続きCが実行されることになり、これによって複数の
手続きの実行順序を保証しつつ、並列処理が可能となる
As explained above, according to this embodiment, even if an asynchronous element such as a queue is inserted between procedure A and procedure B, procedure C is always executed after procedure B is completed. This allows parallel processing while guaranteeing the execution order of multiple procedures.

【0041】また、従来においては手続きCは手続きA
と同一のコンテキスト内で実行されるが、この発明によ
れば、手続きCは手続きBのコンテキスト内で実行され
ることとなり、よって手続きAを実行していたプロセス
は、実質的に手続きCの実行に際し何等関与する必要が
なくなる。
[0041] Also, in the past, procedure C was
However, according to the present invention, procedure C is executed within the context of procedure B, so that the process that was executing procedure A is actually executed in the same context as procedure C. There is no need for any involvement in this process.

【0042】[0042]

【発明の効果】以上説明したように本発明によれば、あ
る手続きと、該ある手続と密接に関係している後続の手
続きとを含む複数の手続きを実行するに際し、ある手続
と密接に関係している後続の手続きを実行するに必要十
分な情報を、処理対象となるデータに付加し、ある手続
を実行するプロセスとは異なる他のプロセスが前記デー
タに付加された前記情報を参照し、該参照結果に基づい
て前記ある手続と密接に関係している後続の手続きを間
接的に呼び出して実行するようにしているので、ある手
続きと、該ある手続と密接に関係している後続の手続き
を含む複数の手続きの実行順序を保証しつつ、並列処理
を行うことができる。
Effects of the Invention As explained above, according to the present invention, when executing a plurality of procedures including a certain procedure and a subsequent procedure that is closely related to the certain procedure, Adding information necessary and sufficient to execute a subsequent procedure to the data to be processed, and another process different from the process executing the procedure refers to the information added to the data, Based on the reference result, a subsequent procedure that is closely related to the certain procedure is indirectly called and executed, so that a certain procedure and the subsequent procedure that is closely related to the certain procedure are It is possible to perform parallel processing while guaranteeing the execution order of multiple procedures including

【図面の簡単な説明】[Brief explanation of the drawing]

【図1】本発明に係る同期処理方法を適用した並列処理
システムの一実施例を示す概略構成図。
FIG. 1 is a schematic configuration diagram showing an embodiment of a parallel processing system to which a synchronous processing method according to the present invention is applied.

【図2】本実施例における第1のプロセスの処理動作を
示すフローチャート。
FIG. 2 is a flowchart showing processing operations of a first process in this embodiment.

【図3】本実施例における第2のプロセスの処理動作を
示すフローチャート。
FIG. 3 is a flowchart showing the processing operation of a second process in this embodiment.

【図4】通信プロトコルの処理系を実現した並列処理シ
ステムの一実施例を示す概略構成図。
FIG. 4 is a schematic configuration diagram showing an embodiment of a parallel processing system that implements a communication protocol processing system.

【図5】図4に示した実施例における第1のプロセスの
処理動作を示すフローチャート。
FIG. 5 is a flowchart showing processing operations of a first process in the embodiment shown in FIG. 4;

【図6】図4に示した実施例における第2のプロセスの
処理動作を示すフローチャート。
FIG. 6 is a flowchart showing processing operations of a second process in the embodiment shown in FIG. 4;

【図7】従来における単一プロセスによる処理を説明す
るための図。
FIG. 7 is a diagram for explaining conventional processing by a single process.

【図8】単一プロセスの処理動作を示すフローチャート
FIG. 8 is a flowchart showing the processing operation of a single process.

【図9】従来における複数プロセスによる処理を説明す
るための図。
FIG. 9 is a diagram for explaining conventional processing using multiple processes.

【図10】複数プロセスによる処理動作を示すフローチ
ャート。
FIG. 10 is a flowchart showing processing operations by multiple processes.

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

101、401…第1のプロセス、102、402…第
2のプロセス、103、403…キュー。
101, 401...first process, 102, 402...second process, 103, 403...queue.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】処理の対象となるデータに対する処理内容
が記述された複数の手続きを予め設定された実行順序に
従って順次実行する並列処理システムの同期処理方法に
おいて、ある手続きを実行する第1のプロセスと、該あ
る手続きの後続の手続きを実行する第2のプロセスとを
有し、前記第1のプロセスは、前記ある手続きを実行し
た後、前記データに当該ある手続きと密接に関係してい
る後続の手続きを実行するに必要十分な情報を付加し、
前記第2のプロセスは、前記データに付加された前記情
報に基づいて前記ある手続きと密接に関係している後続
の手続きを間接的に呼び出して実行することを特徴とす
る並列処理システムの同期処理方法。
1. A synchronous processing method for a parallel processing system in which a plurality of procedures in which processing contents for data to be processed are described are sequentially executed according to a preset execution order, wherein a first process that executes a certain procedure; and a second process that executes a subsequent procedure of the certain procedure, and after executing the certain procedure, the first process includes a subsequent process that is closely related to the certain procedure in the data. Add sufficient information necessary to carry out the procedure,
The second process indirectly calls and executes a subsequent procedure that is closely related to the certain procedure based on the information added to the data. Method.
JP8887191A 1991-04-19 1991-04-19 Synchronous processing method for parallel processing system Pending JPH04320537A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8887191A JPH04320537A (en) 1991-04-19 1991-04-19 Synchronous processing method for parallel processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8887191A JPH04320537A (en) 1991-04-19 1991-04-19 Synchronous processing method for parallel processing system

Publications (1)

Publication Number Publication Date
JPH04320537A true JPH04320537A (en) 1992-11-11

Family

ID=13955076

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8887191A Pending JPH04320537A (en) 1991-04-19 1991-04-19 Synchronous processing method for parallel processing system

Country Status (1)

Country Link
JP (1) JPH04320537A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8339636B2 (en) * 2006-01-27 2012-12-25 Kyocera Document Solutions Inc. Multi-function peripheral apparatus for processing unified job steps

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8339636B2 (en) * 2006-01-27 2012-12-25 Kyocera Document Solutions Inc. Multi-function peripheral apparatus for processing unified job steps

Similar Documents

Publication Publication Date Title
JPH0287259A (en) Dispersion type digital data processing system
JPS63234343A (en) Stations in a system of multiple stations coupled to a communication medium and methods of communication between the stations
JPH0570177B2 (en)
JPH06187302A (en) Transfer request queue control system
CN117896201A (en) Multiport communication system and method
CN110138662A (en) Session entry processing method, device and multiple nucleus system in multiple nucleus system
JP3245500B2 (en) Event management method in multi-programming
EP1631906B1 (en) Maintaining entity order with gate managers
JPH04320537A (en) Synchronous processing method for parallel processing system
JPH06282447A (en) Queue management method
JP2011048844A (en) Asynchronous communication technique
JP2915074B2 (en) Event dequeueing method in multitask processing system
JP2004054562A (en) Method of controlling input and output for network file system
JP5262329B2 (en) Scheduling program, scheduling method, and scheduling apparatus
JP2001344119A (en) Transaction execution control system and transaction execution control method
JPH0827729B2 (en) Message queue incoming management method
JPH02143321A (en) Output server for network environment
CN120872636A (en) Multi-user communication method, electronic device and medium
JPH03219357A (en) Program execution control system
JP2573692B2 (en) Task processing control method
JPH0370950B2 (en)
JPH0340053A (en) Control system for plural communication procedures
JPH03262060A (en) Completion synchronizing system for communication control
JP2534797B2 (en) Curing control system
JP3280676B2 (en) Retrieval method of call processing task by providing purpose