JP6728773B2 - Information processing system, information processing device, exclusive control device, information processing method, exclusive control method, and program - Google Patents

Information processing system, information processing device, exclusive control device, information processing method, exclusive control method, and program Download PDF

Info

Publication number
JP6728773B2
JP6728773B2 JP2016039025A JP2016039025A JP6728773B2 JP 6728773 B2 JP6728773 B2 JP 6728773B2 JP 2016039025 A JP2016039025 A JP 2016039025A JP 2016039025 A JP2016039025 A JP 2016039025A JP 6728773 B2 JP6728773 B2 JP 6728773B2
Authority
JP
Japan
Prior art keywords
resource
information
request
lock
response
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.)
Active
Application number
JP2016039025A
Other languages
Japanese (ja)
Other versions
JP2017156951A (en
Inventor
聖子 松村
聖子 松村
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2016039025A priority Critical patent/JP6728773B2/en
Publication of JP2017156951A publication Critical patent/JP2017156951A/en
Application granted granted Critical
Publication of JP6728773B2 publication Critical patent/JP6728773B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報の処理に関し、特に、資源を管理する情報処理システム、情報処理装置、情報処理方法、及び、プログラムに関する。 The present invention relates to information processing, and more particularly, to an information processing system, an information processing device, an information processing method, and a program that manage resources.

情報処理システムに含まれる情報処理装置は、情報処理システムに含まれる資源(リソース)を用いて動作する。資源には、複数の情報処理装置から共有して使用される資源がある。 The information processing device included in the information processing system operates using resources included in the information processing system. The resources include resources shared by a plurality of information processing devices.

複数の情報処理装置が、データを保存する共有資源(ファイル又はデータベースなど)を同時に更新した場合、共有資源のデータにおいて、一貫性が失われる。あるいは、いずれかの情報処理装置が共有資源を参照している最中に、他の情報処理装置がデータを更新した場合、データの一貫性が失われる。このように、共有資源におけるデータの更新を管理しない場合、共有資源においてデータの一貫性が損なわれる。 When a plurality of information processing devices simultaneously update a shared resource (file or database etc.) for storing data, the consistency of the data of the shared resource is lost. Alternatively, if another information processing device updates the data while one of the information processing devices is referring to the shared resource, the data consistency is lost. As described above, if the update of data in the shared resource is not managed, the consistency of the data in the shared resource is lost.

そこで、共有資源のデータを保護するため、一般的に、情報処理システムは、共有資源の管理として、排他制御装置を用いる(例えば、特許文献1を参照)。 Therefore, in order to protect the data of the shared resource, the information processing system generally uses an exclusive control device for managing the shared resource (for example, refer to Patent Document 1).

情報処理装置は、共有資源を使用する場合、資源にアクセスする前に、排他制御装置から資源に対するアクセス権を取得する。そして、情報処理装置は、アクセス権を取得した資源を利用する。 When using a shared resource, the information processing apparatus acquires an access right to the resource from the exclusive control device before accessing the resource. Then, the information processing device uses the resource for which the access right is acquired.

一般的に、資源に対するアクセス権には、2種類のアクセス権がある。 Generally, there are two types of access rights to resources.

第1のアクセス権は、資源のデータを参照する場合(データを更新しない場合)のアクセス権である。第1のアクセス権は、「参照権」と呼ばれる。参照権を取得した情報処理装置は、共有資源のデータを更新できない。 The first access right is an access right when referring to resource data (when data is not updated). The first access right is called a "reference right". The information processing apparatus that has acquired the reference right cannot update the data of the shared resource.

第2のアクセス権は、資源のデータを更新する場合のアクセス権である。第2のアクセス権は、「更新権」と呼ばれる。更新権を取得した情報処理装置は、共有資源のデータを更新できる。 The second access right is an access right for updating the resource data. The second access right is called the "update right". The information processing apparatus that has acquired the update right can update the data of the shared resource.

情報処理装置は、資源の使用目的に合わせてアクセス権を取得し、アクセス権の取得後に、目的の資源のデータにアクセスする。 The information processing apparatus acquires an access right according to the purpose of use of the resource, and accesses the data of the target resource after acquiring the access right.

このように、情報処理装置が、共有資源にアクセスする場合、実際に資源のデータをアクセスする時間に加え、アクセス権を取得するための時間が必要となる。 As described above, when the information processing apparatus accesses the shared resource, in addition to the time for actually accessing the resource data, the time for acquiring the access right is required.

特開2000−215190号公報JP, 2000-215190, A

上記のとおり、情報処理装置は、共有資源を更新する場合に限らず、共有資源を参照する場合でも、排他制御装置に資源にアクセスするための要求を送信し、排他制御装置からはその要求に対するアクセス可否を判断した結果である応答を受信する。 As described above, the information processing device transmits a request for accessing the resource to the exclusive control device not only when updating the shared resource but also when referring to the shared resource, and the exclusive control device responds to the request. A response, which is the result of determining whether or not access is possible, is received.

つまり、情報処理装置は、資源にアクセスする場合、資源にアクセスする時間に加え、排他制御装置のとの通信の時間が必要である。 That is, when accessing the resource, the information processing apparatus needs the time for communication with the exclusive control device in addition to the time for accessing the resource.

近年、共有資源であるディスク装置等の性能が、高速化している。つまり、データの転送時間が、短くなっている。その結果、情報処理システムの処理性能において、情報処理装置と排他制御装置との通信に必要となる時間の比率が、大きくなっている。そこで、この時間の削減が望まれている。しかし、特許文献1に記載の発明は、情報処理装置と排他制御装置との時間を削減するものではない。 In recent years, the performance of disk devices, which are shared resources, has become faster. That is, the data transfer time is shortened. As a result, in the processing performance of the information processing system, the ratio of the time required for communication between the information processing device and the exclusive control device is large. Therefore, reduction of this time is desired. However, the invention described in Patent Document 1 does not reduce the time between the information processing device and the exclusive control device.

このように、特許文献1に記載の発明は、情報処理装置と排他制御装置との通信の時間が大きいという問題点があった。 As described above, the invention described in Patent Document 1 has a problem that the communication time between the information processing device and the exclusive control device is long.

本発明の目的は、上記問題点を解決し、情報処理装置と排他制御装置との通信に掛かる時間を削減する情報処理システム、情報処理装置、情報処理方法、及び、プログラムを提供することにある。 An object of the present invention is to solve the above problems and provide an information processing system, an information processing apparatus, an information processing method, and a program that reduce the time required for communication between the information processing apparatus and the exclusive control apparatus. ..

本発明の一形態における情報処理システムは、複数の情報処理装置と、情報処理装置がアクセスする資源における排他制御を実行する排他制御装置とを含む情報処理システムにおいて、排他制御装置が、情報処理装置から資源を参照するための要求である参照ロック要求を受信し、参照ロック要求に対応する資源に関する情報を保持せず、資源が所定の資源の場合に、所定の資源に関する情報を保存し、所定の資源に対応する第1の通知を作成し、情報処理装置から第1の通知に対する第1の応答を受信し、資源のアクセスに関する第1の情報を保存し、資源に関する第2の応答を作成し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が応答済みを示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が未応答を示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、資源に関する第2の応答を作成する参照ロック処理手段と、第1の通知を複数の情報処理装置に送信し、第2の応答を、参照ロック要求を送信した情報処理装置に送信する情報通信手段とを含み、情報処理装置が、所定の要求元より資源に関する参照ロック要求を受信し、参照ロック要求に対応する資源に関する第2の情報が保存されている場合に、要求元に参照ロック要求に対応する第3の応答を送信し、参照ロックを基に応答済みを示す情報を含む参照ロック要求を作成して排他制御装置に送信し、参照ロック要求に対応する資源に関する第2の情報が保存されていない場合に、参照ロック要求を基に未応答を示す情報を含む参照ロック要求を作成して排他制御装置に送信する要求処理手段と、排他制御装置から第1の通知を受信した場合に、第1の通知に対応する第2の情報を保存し、第1の応答を排他制御装置に送信し、排他制御装置から第2の応答を受信した場合に、第2の応答を要求元に送信する資源情報処理手段とを含む。 An information processing system according to an aspect of the present invention is an information processing system that includes a plurality of information processing apparatuses and an exclusive control apparatus that executes exclusive control on resources accessed by the information processing apparatus. Receives a reference lock request, which is a request for referencing a resource from the resource, does not hold information about the resource corresponding to the reference lock request, and when the resource is a predetermined resource, saves information about the predetermined resource, Create a first notification corresponding to the resource, receive a first response to the first notification from the information processing device, store first information regarding access to the resource, and create a second response regarding the resource. If the resource is locked as a reference and the reference lock request includes information indicating that the response is completed, the first information corresponding to the reference lock request is stored. Retains information about the resource corresponding to the reference lock request, stores the first information corresponding to the reference lock request when the resource is locked as a reference, and the reference lock request includes information indicating an unanswered, and relates to the resource A reference lock processing unit that creates a second response and an information communication unit that sends the first notification to the plurality of information processing devices and sends the second response to the information processing device that sent the reference lock request. In the case where the information processing device receives the reference lock request regarding the resource from the predetermined request source and the second information regarding the resource corresponding to the reference lock request is stored, the request source responds to the reference lock request. A third response is transmitted, a reference lock request including information indicating that the response is completed is created based on the reference lock, and the reference lock request is transmitted to the exclusive control device. The second information regarding the resource corresponding to the reference lock request is stored. If there is not, a request processing unit that creates a reference lock request including information indicating a non-response based on the reference lock request and sends the reference lock request to the exclusive control device, and a first notification when the first notification is received from the exclusive control device. The second information corresponding to the notification of No. 1 is stored, the first response is transmitted to the exclusive control device, and when the second response is received from the exclusive control device, the second response is transmitted to the request source. Resource information processing means.

本発明の一形態における情報処理装置は、情報処理装置から資源を参照するための要求である参照ロック要求を受信し、参照ロック要求に対応する資源に関する情報を保持せず、資源が所定の資源の場合に、所定の資源に関する情報を保存し、所定の資源に対応する第1の通知を作成し、情報処理装置から第1の通知に対する第1の応答を受信し、資源のアクセスに関する第1の情報を保存し、資源に関する第2の応答を作成し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が応答済みを示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が未応答を示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、資源に関する第2の応答を作成し、第1の通知を複数の情報処理装置に送信し、第2の応答を、参照ロック要求を送信した情報処理装置に送信する排他制御装置を含む情報処理システムにおいて、所定の要求元より参照ロック要求を受信し、参照ロック要求に対応する資源に関する第2の情報が保存されている場合に、要求元に参照ロック要求に対応する第3の応答を送信し、参照ロックを基に応答済みを示す情報を含む参照ロック要求を作成して排他制御装置に送信し、参照ロック要求に対応する資源に関する第2の情報が保存されていない場合に、参照ロック要求を基に未応答を示す情報を含む参照ロック要求を作成して排他制御装置に送信する要求処理手段と、排他制御装置から第1の通知を受信した場合に、第1の通知に対応する第2の情報を保存し、第1の応答を排他制御装置に送信し、排他制御装置から第2の応答を受信した場合に、第2の応答を要求元に送信する資源情報処理手段とを含む。 An information processing device according to an aspect of the present invention receives a reference lock request, which is a request for referencing a resource from the information processing device, does not hold information about the resource corresponding to the reference lock request, and the resource is a predetermined resource. In the case of, the first information regarding the access of the resource is stored by storing the information regarding the predetermined resource, creating the first notification corresponding to the predetermined resource, receiving the first response from the information processing device to the first notification. Information about the resource, create a second response about the resource, hold information about the resource corresponding to the reference lock request, and the resource is locked as a reference, and the reference lock request includes information indicating that the request has been answered, The reference lock is stored when the first information corresponding to the reference lock request is stored, the information about the resource corresponding to the reference lock request is held, the resource is locked as a reference, and the reference lock request includes information indicating that the reference lock request is not answered. The first information corresponding to the request is stored, the second response regarding the resource is created, the first notification is transmitted to the plurality of information processing devices, and the second response is the information processing in which the reference lock request is transmitted. In an information processing system including an exclusive control device transmitting to a device, when a reference lock request is received from a predetermined request source and second information regarding a resource corresponding to the reference lock request is stored, the reference is made to the request source. A third response corresponding to the lock request is transmitted, a reference lock request including information indicating that the response is completed is created based on the reference lock, and the reference lock request is transmitted to the exclusive control device. Request processing means for creating a reference lock request including information indicating non-response based on the reference lock request and transmitting the reference lock request to the exclusive control device when the information is not stored; and receiving a first notification from the exclusive control device. In the case of doing so, the second information corresponding to the first notification is stored, the first response is transmitted to the exclusive control device, and the second response is received when the second response is received from the exclusive control device. Resource information processing means for transmitting to the request source.

本発明の一形態における排他処理装置は、所定の要求元より資源に関する資源を参照するための要求である参照ロック要求を受信し、参照ロック要求に対応する資源に関する第2の情報が保存されている場合に、要求元に参照ロック要求に対応する第3の応答を送信し、参照ロックを基に応答済みを示す情報を含む参照ロック要求を作成して排他制御装置に送信し、参照ロック要求に対応する資源に関する第2の情報が保存されていない場合に、参照ロック要求を基に未応答を示す情報を含む参照ロック要求を作成して排他制御装置に送信し、排他制御装置から第1の通知を受信した場合に、第1の通知に対応する第2の情報を保存し、第1の応答を排他制御装置に送信し、排他制御装置から第2の応答を受信した場合に、第2の応答を要求元に送信する複数の情報処理装置を含む情報処理システムにおいて、情報処理装置から参照ロック要求を受信し、参照ロック要求に対応する資源に関する情報を保持せず、資源が所定の資源の場合に、所定の資源に関する情報を保存し、所定の資源に対応する第1の通知を作成し、情報処理装置から第1の通知に対する第1の応答を受信し、資源のアクセスに関する第1の情報を保存し、資源に関する第2の応答を作成し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が応答済みを示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が未応答を示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、資源に関する第2の応答を作成する参照ロック処理手段と、第1の通知を複数の情報処理装置に送信し、第2の応答を、参照ロック要求を送信した情報処理装置に送信する情報通信手段とを含む。 An exclusive processing device according to an aspect of the present invention receives a reference lock request, which is a request for referencing a resource related to a resource, from a predetermined request source, and stores second information related to the resource corresponding to the reference lock request. In the case of a reference lock request, a third response corresponding to the reference lock request is transmitted to the request source, a reference lock request including information indicating that the response is completed is created based on the reference lock, and the reference lock request is transmitted to the exclusive control device. When the second information related to the resource corresponding to the above is not stored, a reference lock request including information indicating non-response is created based on the reference lock request and transmitted to the exclusive control device. If the second information corresponding to the first notification is stored, the first response is transmitted to the exclusive control device, and the second response is received from the exclusive control device, In an information processing system including a plurality of information processing devices that transmits the response No. 2 to a request source, a reference lock request is received from the information processing device, information about the resource corresponding to the reference lock request is not held, and In the case of a resource, it stores information about a given resource, creates a first notification corresponding to the given resource, receives a first response to the first notification from the information processing device, and 1 information, create a second response about the resource, keep information about the resource corresponding to the reference lock request, if the resource is locked as a reference, and the reference lock request contains information indicating that the response has been answered. , Storing the first information corresponding to the reference lock request, holding the information about the resource corresponding to the reference lock request, and referencing when the resource is locked as a reference and the reference lock request includes information indicating no response A reference lock processing unit that stores the first information corresponding to the lock request and creates a second response regarding the resource, and the first notification is transmitted to the plurality of information processing devices, and the second response is referred to as the reference lock. And an information communication unit that transmits the request to the information processing apparatus that transmitted the request.

本発明の一形態における情報処理方法は、複数の情報処理装置と、情報処理装置がアクセスする資源における排他制御を実行する排他制御装置とを含む情報処理システムにおいて、排他制御装置が、情報処理装置から資源を参照するための要求である参照ロック要求を受信し、参照ロック要求に対応する資源に関する情報を保持せず、資源が所定の資源の場合に、所定の資源に関する情報を保存し、所定の資源に対応する第1の通知を作成し、情報処理装置から第1の通知に対する第1の応答を受信し、資源のアクセスに関する第1の情報を保存し、資源に関する第2の応答を作成し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が応答済みを示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が未応答を示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、資源に関する第2の応答を作成し、第1の通知を複数の情報処理装置に送信し、第2の応答を参照ロック要求を送信した情報処理装置に送信し、情報処理装置が、所定の要求元より資源に関する参照ロック要求を受信し、参照ロック要求に対応する資源に関する第2の情報が保存されている場合に、要求元に参照ロック要求に対応する第3の応答を送信し、参照ロックを基に応答済みを示す情報を含む参照ロック要求を作成して排他制御装置に送信し、参照ロック要求に対応する資源に関する第2の情報が保存されていない場合に、参照ロック要求を基に未応答を示す情報を含む参照ロック要求を作成して排他制御装置に送信し、排他制御装置から第1の通知を受信した場合に、第1の通知に対応する第2の情報を保存し、第1の応答を排他制御装置に送信し、排他制御装置から第2の応答を受信した場合に、第2の応答を要求元に送信する。 An information processing method according to an aspect of the present invention is an information processing system including a plurality of information processing apparatuses and an exclusive control apparatus that executes exclusive control on resources accessed by the information processing apparatus, wherein the exclusive control apparatus is an information processing apparatus. Receives a reference lock request, which is a request for referencing a resource from the resource, does not hold information about the resource corresponding to the reference lock request, and when the resource is a predetermined resource, saves information about the predetermined resource, Create a first notification corresponding to the resource, receive a first response to the first notification from the information processing device, store first information regarding access to the resource, and create a second response regarding the resource. And retains information about the resource corresponding to the reference lock request, and when the resource is locked as a reference and the reference lock request includes information indicating that the response has been completed, stores the first information corresponding to the reference lock request, Retains information about the resource corresponding to the reference lock request, stores the first information corresponding to the reference lock request when the resource is locked as a reference, and the reference lock request includes information indicating an unanswered, and relates to the resource The second response is created, the first notification is transmitted to the plurality of information processing apparatuses, the second response is transmitted to the information processing apparatus that transmitted the reference lock request, and the information processing apparatus transmits a second request from a predetermined request source. When the reference lock request for the resource is received and the second information about the resource corresponding to the reference lock request is stored, a third response corresponding to the reference lock request is transmitted to the request source and the reference lock request is issued. If a second reference information about a resource corresponding to the reference lock request is not stored, the reference lock request including the information indicating that the reference lock request is generated is transmitted to the exclusive control device, and no response is returned based on the reference lock request. When a first notification is received from the exclusive control device by creating a reference lock request including information indicating the first information, the second information corresponding to the first notification is saved, and the first information is stored. Is transmitted to the exclusive control device, and when the second response is received from the exclusive control device, the second response is transmitted to the request source.

本発明の一形態における第2の情報処理方法は、情報処理装置から資源を参照するための要求である参照ロック要求を受信し、参照ロック要求に対応する資源に関する情報を保持せず、資源が所定の資源の場合に、所定の資源に関する情報を保存し、所定の資源に対応する第1の通知を作成し、情報処理装置から第1の通知に対する第1の応答を受信し、資源のアクセスに関する第1の情報を保存し、資源に関する第2の応答を作成し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が応答済みを示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が未応答を示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、資源に関する第2の応答を作成し、第1の通知を複数の情報処理装置に送信し、第2の応答を、参照ロック要求を送信した情報処理装置に送信する排他制御装置を含む情報処理システムにおいて、情報処理装置が、所定の要求元より参照ロック要求を受信し、参照ロック要求に対応する資源に関する第2の情報が保存されている場合に、要求元に参照ロック要求に対応する第3の応答を送信し、参照ロックを基に応答済みを示す情報を含む参照ロック要求を作成して排他制御装置に送信し、参照ロック要求に対応する資源に関する第2の情報が保存されていない場合に、参照ロック要求を基に未応答を示す情報を含む参照ロック要求を作成して排他制御装置に送信し、排他制御装置から第1の通知を受信した場合に、第1の通知に対応する第2の情報を保存し、第1の応答を排他制御装置に送信し、排他制御装置から第2の応答を受信した場合に、第2の応答を要求元に送信する。 A second information processing method according to an aspect of the present invention receives a reference lock request, which is a request for referencing a resource from an information processing device, does not hold information about the resource corresponding to the reference lock request, and In the case of a predetermined resource, storing information about the predetermined resource, creating a first notification corresponding to the predetermined resource, receiving a first response to the first notification from the information processing device, and accessing the resource. Storing first information about the resource, creating a second response about the resource, holding information about the resource corresponding to the reference lock request, the resource locked as a reference, and including information indicating that the reference lock request has been answered In the case where the first information corresponding to the reference lock request is stored, the information regarding the resource corresponding to the reference lock request is held, the resource is locked as a reference, and the reference lock request includes information indicating that no response has been received. , Storing first information corresponding to the reference lock request, creating a second response regarding the resource, transmitting a first notification to a plurality of information processing devices, and transmitting a second response, the reference lock request In the information processing system including the exclusive control device transmitting to the information processing device, the information processing device receives the reference lock request from the predetermined request source, and the second information regarding the resource corresponding to the reference lock request is stored. In the case of a reference lock request, a third response corresponding to the reference lock request is transmitted to the request source, a reference lock request including information indicating that the response is completed is created based on the reference lock, and the reference lock request is transmitted to the exclusive control device. When the second information related to the resource corresponding to the above is not stored, a reference lock request including information indicating non-response is created based on the reference lock request and transmitted to the exclusive control device. If the second information corresponding to the first notification is stored, the first response is transmitted to the exclusive control device, and the second response is received from the exclusive control device, 2 response is transmitted to the request source.

本発明の一形態における排他処理方法は、所定の要求元より資源に関する資源を参照するための要求である参照ロック要求を受信し、参照ロック要求に対応する資源に関する第2の情報が保存されている場合に、要求元に参照ロック要求に対応する第3の応答を送信し、参照ロックを基に応答済みを示す情報を含む参照ロック要求を作成して排他制御装置に送信し、参照ロック要求に対応する資源に関する第2の情報が保存されていない場合に、参照ロック要求を基に未応答を示す情報を含む参照ロック要求を作成して排他制御装置に送信し、排他制御装置から第1の通知を受信した場合に、第1の通知に対応する第2の情報を保存し、第1の応答を排他制御装置に送信し、排他制御装置から第2の応答を受信した場合に、第2の応答を要求元に送信する複数の情報処理装置を含む情報処理システムにおいて、排他制御装置が、情報処理装置から参照ロック要求を受信し、参照ロック要求に対応する資源に関する情報を保持せず、資源が所定の資源の場合に、所定の資源に関する情報を保存し、所定の資源に対応する第1の通知を作成し、情報処理装置から第1の通知に対する第1の応答を受信し、資源のアクセスに関する第1の情報を保存し、資源に関する第2の応答を作成し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が応答済みを示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が未応答を示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、資源に関する第2の応答を作成し、第1の通知を複数の情報処理装置に送信し、第2の応答を、参照ロック要求を送信した情報処理装置に送信する。 An exclusive processing method according to an aspect of the present invention receives a reference lock request, which is a request for referencing a resource related to a resource, from a predetermined request source, and stores second information related to the resource corresponding to the reference lock request. In the case of a reference lock request, a third response corresponding to the reference lock request is transmitted to the request source, a reference lock request including information indicating that the response is completed is created based on the reference lock, and the reference lock request is transmitted to the exclusive control device. When the second information related to the resource corresponding to the above is not stored, a reference lock request including information indicating non-response is created based on the reference lock request and transmitted to the exclusive control device. If the second information corresponding to the first notification is stored, the first response is transmitted to the exclusive control device, and the second response is received from the exclusive control device, In an information processing system including a plurality of information processing devices that transmits the response No. 2 to the request source, the exclusive control device receives the reference lock request from the information processing device and does not hold the information about the resource corresponding to the reference lock request. If the resource is a predetermined resource, save information about the predetermined resource, create a first notification corresponding to the predetermined resource, and receive a first response to the first notification from the information processing device, Store first information about access to the resource, create a second response about the resource, hold information about the resource corresponding to the reference lock request, lock the resource as a reference, and indicate that the reference lock request has been answered When the information is included, the first information corresponding to the reference lock request is stored, the information about the resource corresponding to the reference lock request is held, the resource is locked as a reference, and the information indicating that the reference lock request does not respond is stored. When including, the first information corresponding to the reference lock request is stored, the second response regarding the resource is created, the first notification is transmitted to the plurality of information processing devices, and the second response is referred to as the reference lock. The request is sent to the information processing device that sent the request.

本発明の一形態におけるプログラムは、情報処理装置から資源を参照するための要求である参照ロック要求を受信し、参照ロック要求に対応する資源に関する情報を保持せず、資源が所定の資源の場合に、所定の資源に関する情報を保存し、所定の資源に対応する第1の通知を作成し、情報処理装置から第1の通知に対する第1の応答を受信し、資源のアクセスに関する第1の情報を保存し、資源に関する第2の応答を作成し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が応答済みを示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が未応答を示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、資源に関する第2の応答を作成し、第1の通知を複数の情報処理装置に送信し、第2の応答を、参照ロック要求を送信した情報処理装置に送信する排他制御装置を含む情報処理システムにおいて、所定の要求元より参照ロック要求を受信する処理と、参照ロック要求に対応する資源に関する第2の情報が保存されている場合に、要求元に参照ロック要求に対応する第3の応答を送信し、参照ロックを基に応答済みを示す情報を含む参照ロック要求を作成して排他制御装置に送信する処理と、参照ロック要求に対応する資源に関する第2の情報が保存されていない場合に、参照ロック要求を基に未応答を示す情報を含む参照ロック要求を作成して排他制御装置に送信する処理と、排他制御装置から第1の通知を受信した場合に、第1の通知に対応する第2の情報を保存し、第1の応答を排他制御装置に送信する処理と、排他制御装置から第2の応答を受信した場合に、第2の応答を要求元に送信する処理とをコンピュータに実行させる。 A program according to an aspect of the present invention receives a reference lock request that is a request for referencing a resource from an information processing device, does not hold information about the resource corresponding to the reference lock request, and the resource is a predetermined resource. In the first information storage unit, information about a predetermined resource is stored, a first notification corresponding to the predetermined resource is created, a first response to the first notification is received from the information processing device, and first information about access to the resource is received. Save a second response for the resource, hold information about the resource corresponding to the reference lock request, and lock the reference when the resource is locked as a reference and the reference lock request includes information indicating that the reference lock request has been answered. The reference lock request is stored when the first information corresponding to the request is stored, the information about the resource corresponding to the reference lock request is held, the resource is locked as a reference, and the reference lock request includes information indicating that the reference lock request is not answered. The corresponding first information is stored, a second response regarding the resource is created, the first notification is transmitted to the plurality of information processing devices, and the second response is transmitted to the information processing device that transmitted the reference lock request. In an information processing system including an exclusive control device for transmitting, when a process of receiving a reference lock request from a predetermined request source and second information regarding a resource corresponding to the reference lock request are stored, refer to the request source. A process for transmitting a third response corresponding to the lock request, creating a reference lock request including information indicating that the response has been completed based on the reference lock, and transmitting the reference lock request to the exclusive control device, and a resource related to the reference lock request. When the information of No. 2 is not stored, a process of creating a reference lock request including information indicating a non-response based on the reference lock request and transmitting the reference lock request to the exclusive control device, and receiving a first notification from the exclusive control device In the case where the second response is stored, the second information corresponding to the first notification is stored, and the second response is received when the second response is received from the processing of transmitting the first response to the exclusive control apparatus. Causes the computer to execute a process of transmitting a response to the request source.

本発明の一形態における第2のプログラムは、所定の要求元より資源に関する資源を参照するための要求である参照ロック要求を受信し、参照ロック要求に対応する資源に関する第2の情報が保存されている場合に、要求元に参照ロック要求に対応する第3の応答を送信し、参照ロックを基に応答済みを示す情報を含む参照ロック要求を作成して排他制御装置に送信し、参照ロック要求に対応する資源に関する第2の情報が保存されていない場合に、参照ロック要求を基に未応答を示す情報を含む参照ロック要求を作成して排他制御装置に送信し、排他制御装置から第1の通知を受信した場合に、第1の通知に対応する第2の情報を保存し、第1の応答を排他制御装置に送信し、排他制御装置から第2の応答を受信した場合に、第2の応答を要求元に送信する複数の情報処理装置を含む情報処理システムにおいて、情報処理装置から参照ロック要求を受信する処理と、参照ロック要求に対応する資源に関する情報を保持せず、資源が所定の資源の場合に、所定の資源に関する情報を保存し、所定の資源に対応する第1の通知を作成し、情報処理装置から第1の通知に対する第1の応答を受信し、資源のアクセスに関する第1の情報を保存し、資源に関する第2の応答を作成する処理と、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が応答済みを示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存する処理と、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が未応答を示す情報を含む場合に、参照ロック要求に対応する第1の情報を保存し、資源に関する第2の応答を作成する処理と、第1の通知を複数の情報処理装置に送信する処理と、第2の応答を、参照ロック要求を送信した情報処理装置に送信する処理とをコンピュータに実行させる。 A second program according to an aspect of the present invention receives a reference lock request, which is a request for referring to a resource regarding a resource, from a predetermined request source, and stores second information regarding the resource corresponding to the reference lock request. In this case, a third response corresponding to the reference lock request is transmitted to the request source, a reference lock request including information indicating that the response is completed is created based on the reference lock, and the reference lock request is transmitted to the exclusive control device. When the second information related to the resource corresponding to the request is not stored, a reference lock request including information indicating non-response is created based on the reference lock request and transmitted to the exclusive control device. When the first notification is received, the second information corresponding to the first notification is stored, the first response is transmitted to the exclusive control device, and the second response is received from the exclusive control device, In an information processing system including a plurality of information processing devices that transmit a second response to a request source, the process of receiving a reference lock request from the information processing device and the resource that does not hold the resource corresponding to the reference lock request Is a predetermined resource, stores information about the predetermined resource, creates a first notification corresponding to the predetermined resource, receives a first response to the first notification from the information processing device, and A process of storing the first information regarding access, creating a second response regarding the resource, and holding information regarding the resource corresponding to the reference lock request, the resource is locked as a reference, and the reference lock request indicates that the response has been answered. When the information is included, a process of storing the first information corresponding to the reference lock request and the information about the resource corresponding to the reference lock request are held, the resource is locked as a reference, and the reference lock request indicates a non-response. When the information is included, a process of storing the first information corresponding to the reference lock request and creating a second response regarding the resource, a process of transmitting the first notification to a plurality of information processing devices, and a second process The computer is caused to execute a process of transmitting the response of (1) to the information processing device that transmitted the reference lock request.

本発明に基づけば、情報処理装置と排他制御装置との通信に掛かる時間を削減するとの効果を奏することができる。 According to the present invention, it is possible to achieve the effect of reducing the time required for communication between the information processing device and the exclusive control device.

図1は、本発明における第1の実施形態に係る情報処理システムの構成の一例を示すブロック図である。FIG. 1 is a block diagram showing an example of the configuration of an information processing system according to the first embodiment of the present invention. 図2は、第1の実施形態に係る情報処理装置のロック制御部の構成の一例を示すブロック図である。FIG. 2 is a block diagram illustrating an example of the configuration of the lock control unit of the information processing device according to the first embodiment. 図3は、第1の実施形態に係る排他制御装置の構成の一例を示すブロック図である。FIG. 3 is a block diagram showing an example of the configuration of the exclusive control device according to the first embodiment. 図4は、第1の実施形態に係る要求の形式の一例を示す図である。FIG. 4 is a diagram illustrating an example of a request format according to the first embodiment. 図5は、第1の実施形態に係る排他制御テーブルに記憶されているデータの一例を模式的に示す図である。FIG. 5 is a diagram schematically showing an example of data stored in the exclusive control table according to the first embodiment. 図6は、第1の実施形態における未登録の資源に対するSロック要求に関する動作の一例を示すシーケンス図である。FIG. 6 is a sequence diagram showing an example of an operation regarding an S lock request for an unregistered resource according to the first embodiment. 図7は、第1の実施形態における登録済みの資源に対するSロック要求に関する動作の一例を示すシーケンス図である。FIG. 7 is a sequence diagram showing an example of an operation related to an S lock request for a registered resource according to the first embodiment. 図8は、第1の実施形態におけるアンロック要求に関する動作の一例を示すシーケンス図である。FIG. 8 is a sequence diagram showing an example of an operation relating to an unlock request in the first embodiment. 図9は、第1の実施形態におけるSロックをアンロック後にXロックが発生していない資源に対するSロック要求に関する動作の一例を示すシーケンス図である。FIG. 9 is a sequence diagram showing an example of an operation relating to an S lock request for a resource for which an X lock has not occurred after unlocking the S lock in the first embodiment. 図10は、第1の実施形態におけるSロックが存在する資源に対するXロック要求に関する動作の一例を示すシーケンス図である。FIG. 10 is a sequence diagram showing an example of an operation relating to an X lock request for a resource having an S lock in the first embodiment. 図11は、第1の実施形態におけるSロック及びXロックがない資源に対するXロック要求に関する動作の一例を示すシーケンス図である。FIG. 11 is a sequence diagram showing an example of an operation related to an X lock request for a resource without an S lock and an X lock according to the first embodiment. 図12は、第1の実施形態に係る参照ロック処理部の動作の一例を示すフローチャートである。FIG. 12 is a flowchart showing an example of the operation of the reference lock processing unit according to the first embodiment. 図13は、第1の実施形態に係る更新ロック処理部の動作の一例を示すフローチャートである。FIG. 13 is a flowchart showing an example of the operation of the update lock processing unit according to the first embodiment. 図14は、第1の実施形態に係るアンロック処理部の動作の一例を示すフローチャートである。FIG. 14 is a flowchart showing an example of the operation of the unlock processing unit according to the first embodiment. 図15は、第1の実施形態に係るコマンド解析部の動作の一例を示すフローチャートである。FIG. 15 is a flowchart showing an example of the operation of the command analysis unit according to the first embodiment. 図16は、第1の実施形態に係る排他制御装置通信部の動作の一例を示すフローチャートである。FIG. 16 is a flowchart showing an example of the operation of the exclusive control device communication unit according to the first embodiment. 図17は、本発明における情報処理システムの概要の構成の一例を示すブロック図である。FIG. 17 is a block diagram showing an example of a schematic configuration of an information processing system according to the present invention. 図18は、本発明における変形例である情報処理装置の構成の一例を示すブロック図である。FIG. 18 is a block diagram showing an example of the configuration of an information processing apparatus which is a modified example of the present invention. 図19は、第1の実施形態におけるXロックされている資源に対するXロック要求に関する動作の一例を示すシーケンス図である。FIG. 19 is a sequence diagram showing an example of an operation relating to an X lock request for an X locked resource according to the first embodiment. 図20は、第1の実施形態におけるXロックされている資源に対するSロック要求に関する動作の一例を示すシーケンス図である。FIG. 20 is a sequence diagram showing an example of an operation relating to an S lock request for an X-locked resource in the first embodiment. 図21は、第1の実施形態におけるXロックされた後にアンロックされた資源に対するSロック要求に関する動作の一例を示すシーケンス図である。FIG. 21 is a sequence diagram showing an example of an operation relating to an S lock request for a resource unlocked after being X-locked in the first embodiment. 図22は、第1の実施形態における未登録の資源に対するXロック要求に関する動作の一例を示すシーケンス図である。FIG. 22 is a sequence diagram showing an example of an operation relating to an X lock request for an unregistered resource according to the first embodiment.

次に、本発明の実施形態について図面を参照して説明する。 Next, an embodiment of the present invention will be described with reference to the drawings.

なお、各図面は、本発明の実施形態を説明するものである。ただし、本発明は、各図面の記載に限られない。また、各図面の同様の構成には、同じ番号を付し、その繰り返しの説明を、省略する場合がある。また、以下の説明に用いる図面において、本発明の説明に関係しない部分の構成については、記載を省略し、図示しない場合もある。 Each drawing explains the embodiment of the present invention. However, the present invention is not limited to the description of each drawing. In addition, the same numbers are given to the same configurations in the respective drawings, and repeated description thereof may be omitted. Further, in the drawings used for the following description, the configuration of the portion not related to the description of the present invention may be omitted and not illustrated.

[用語の説明]
本発明における実施形態の説明に先立ち、説明に用いる用語について整理する。
[Explanation of terms]
Prior to the description of the embodiments of the present invention, terms used in the description will be summarized.

「資源(リソース)」とは、情報処理システムにおける情報処理装置が、動作において利用する要素である。例えば、資源は、CPUの処理能力及び処理時間、メモリの容量、ハードディスクの容量、又は、通信帯域である。 The “resource” is an element used by the information processing device in the information processing system in operation. For example, the resource is the processing capacity and processing time of the CPU, the capacity of the memory, the capacity of the hard disk, or the communication band.

「共有資源」とは、複数の情報処理装置において共有される資源である。例えば、共有資源は、ファイル、データベース、又は、共有装置である。以下の説明では、特に断らない限り、資源とは、共有資源である。 The “shared resource” is a resource shared by a plurality of information processing devices. For example, the shared resource is a file, a database, or a shared device. In the following description, resources are shared resources unless otherwise specified.

「ロック成功」とは、資源へのアクセスが許可された状態である。つまり、ロック成功とは、アクセス権が確保されたことである。 “Lock successful” is a state in which access to a resource is permitted. In other words, the lock success means that the access right is secured.

「ロック待ち」とは、資源のアクセスが不許可のため、アクセスの許可の状態(ロック成功)となることを待っている状態である。 The “waiting for lock” is a state in which the access to the resource is not permitted, and therefore the state is waiting for the access to be permitted (lock success).

「ロック種別」とは、資源のアクセス時におけるアクセス権の種別である。ロック種別は、少なくとも、次に説明するSロックとXロックとを含む。 The “lock type” is a type of access right when accessing a resource. The lock type includes at least S lock and X lock described below.

「Sロック」とは、資源に対して、同時に複数の情報処理装置からアクセスが許可されるロック種別である。ただし、Sロックは、データの更新を許可しない。つまり、Sロックは、参照のアクセスを許可するロック種別である。そのため、Sロックは、「参照ロック」とも呼ばれる。さらに、Sロックは、同一の資源に対して、下記のXロックとは同時には設定されない。Sロックの一例が、上記の参照権である。Sロック要求は、情報処理装置が排他制御装置に所定の資源に対するSロックの確保を依頼する要求である。そのため、Sロック要求は、資源に関する情報を含む。 The “S lock” is a lock type in which access to a resource from a plurality of information processing devices is permitted at the same time. However, the S-lock does not allow updating of data. That is, the S lock is a lock type that permits reference access. Therefore, the S lock is also called “reference lock”. Furthermore, S locks are not set on the same resource at the same time as the following X locks. An example of the S lock is the above reference right. The S lock request is a request for the information processing apparatus to request the exclusive control apparatus to secure an S lock for a predetermined resource. Therefore, the S lock request includes information about the resource.

「Xロック」とは、資源に対して、排他的にアクセスが許可されるロック種別である。Xロックは、資源のデータを更新するときなどに使用される。そのため、Xロックは、「更新ロック」とも呼ばれる。Xロックは、例えば、資源のデータを更新するとき、又は、1台の情報処理装置が資源を占有的に使用するときに用いられる。Xロックの一例が、上記の更新権である。Xロック要求は、情報処理装置が排他制御装置に所定の資源に対するXロックの確保を依頼する要求である。そのため、Xロック要求は、資源に関する情報を含む。 The "X lock" is a lock type in which access is exclusively granted to the resource. The X lock is used when updating the data of the resource. Therefore, the X lock is also called “update lock”. The X lock is used, for example, when updating resource data or when one information processing device exclusively uses the resource. An example of the X lock is the above update right. The X lock request is a request for the information processing apparatus to request the exclusive control apparatus to secure an X lock for a predetermined resource. Therefore, the X-lock request contains information about the resource.

「ロックする」とは、上記のように、資源に対するSロック又はXロックを取得することである。例えば、資源に対するSロック又はXロックを得ることは、「その資源をロックする」と表現される。 “Lock” means to acquire an S lock or an X lock for a resource as described above. For example, obtaining an S-lock or an X-lock on a resource is said to "lock that resource."

「アンロック」とは、ロックした資源からロック(例えば、Sロック)を解除することである。アンロック要求は、情報処理装置が排他制御装置に所定の資源に対するアンロックを依頼する要求である。そのため、アンロック要求は、資源に関する情報を含む。 "Unlocking" is to release the lock (for example, S lock) from the locked resource. The unlock request is a request for the information processing apparatus to request the exclusive control apparatus to unlock a predetermined resource. Therefore, the unlock request includes information about the resource.

「S資源」とは、Xロックの要求に対してSロックの要求頻度が高い資源である。S資源の設定元は、特に制限されない。例えば、予め、排他制御装置が、S資源となる資源に関する情報を保持してもよい。あるいは、情報処理装置が、排他制御装置に指定してもよい。 An "S resource" is a resource for which an S lock request frequency is high with respect to an X lock request. The S resource setting source is not particularly limited. For example, the exclusive control device may hold in advance information about resources that are S resources. Alternatively, the information processing device may specify the exclusive control device.

<第1の実施形態>
次に、本発明における第1の実施形態について、図面を参照して説明する。
<First Embodiment>
Next, a first embodiment of the present invention will be described with reference to the drawings.

以下の説明において、情報処理装置が、資源を利用する。詳細には、情報処理装置上で動作するソフトウェアが、その動作において、資源を利用する。ソフトウェアは、所定の処理単位を用いて管理されている。この処理単位として、処理系それぞれにおいて、いろいろな用語が用いられている。このような用語として、例えば、タスク、モジュール、又は、スレッドなどがある。一般的なアプリケーション及びOS(Operating System)は、上記の処理単位の集合として動作する。本実施形態において、処理単位は、制限されない。そこで、以下の説明では、一例として、タスクを用いる。 In the following description, the information processing device uses resources. In detail, the software operating on the information processing device uses the resource in the operation. The software is managed using a predetermined processing unit. As the processing unit, various terms are used in each processing system. Such terms include, for example, task, module, or thread. A general application and OS (Operating System) operate as a set of the above processing units. In this embodiment, the processing unit is not limited. Therefore, in the following description, a task will be used as an example.

つまり、上記のように本発明における実施形態に係る情報処理装置は、資源を利用する。そして、詳細には、情報処理装置に含まれるタスクが、資源を利用する。ただし、本発明において、資源を用いる主体は、上記に限定されない。 That is, as described above, the information processing device according to the embodiment of the present invention uses resources. Then, in detail, the task included in the information processing device uses the resource. However, in the present invention, the subject using the resource is not limited to the above.

[構成と各構成の動作の説明]
まず、図面を参照して、第1の実施形態の構成及び各構成の動作を説明する。
[Description of configuration and operation of each configuration]
First, the configuration of the first embodiment and the operation of each configuration will be described with reference to the drawings.

図1は、本発明における第1の実施形態に係る情報処理システム100の構成の一例を示すブロック図である。 FIG. 1 is a block diagram showing an example of the configuration of an information processing system 100 according to the first embodiment of the present invention.

情報処理システム100は、複数の情報処理装置10と、排他制御装置40とを含む。 The information processing system 100 includes a plurality of information processing devices 10 and an exclusive control device 40.

情報処理装置10は、図示しない資源を用いて、処理を実行する。情報処理装置10は、資源を用いる場合、資源に対してSロック又はXロックを確保する。また、情報処理装置10は、資源に対するアンロックを依頼する。なお、既に説明しているように、詳細として情報処理装置10上で動作しているタスクが、資源を利用する。つまり、タスクは、Sロック要求、Xロック要求、及び、アンロック要求の要求元である。 The information processing device 10 executes processing using resources (not shown). When using the resource, the information processing device 10 secures the S lock or the X lock for the resource. In addition, the information processing device 10 requests unlocking of the resource. Note that, as already described, the task operating on the information processing device 10 uses the resource in detail. That is, the task is the request source of the S lock request, the X lock request, and the unlock request.

情報処理装置10は、ロック制御部20を含む。 The information processing device 10 includes a lock control unit 20.

ロック制御部20は、情報処理装置10における資源をロックする動作を制御する。ロック制御部20は、ロックテーブル30を含む。 The lock control unit 20 controls the operation of locking the resource in the information processing device 10. The lock control unit 20 includes a lock table 30.

ロックテーブル30は、Sロックを取得している資源に関する情報を保存する。 The lock table 30 stores information about resources that have acquired S locks.

ロック制御部20及びロックテーブル30については、後ほど詳細に説明する。 The lock control unit 20 and the lock table 30 will be described in detail later.

排他制御装置40は、情報処理装置10からの要求に対して、資源に対するアクセス権を管理する。アクセス権の管理の一例は、排他制御である。そこで、以下の説明において、アクセス権の管理の一例として「排他制御」を用いて説明する。つまり、排他制御装置40は、資源の排他制御を実行する。詳細には、排他制御装置40は、情報処理装置10からの各種の要求に対して、資源の排他制御を実行し、情報処理装置10に結果である応答を送信する。排他制御装置40は、排他制御テーブル50を含む。 The exclusive control device 40 manages the access right to the resource in response to the request from the information processing device 10. An example of access right management is exclusive control. Therefore, in the following description, “exclusive control” will be used as an example of access right management. That is, the exclusive control device 40 executes exclusive control of resources. Specifically, the exclusive control device 40 executes exclusive control of resources in response to various requests from the information processing device 10 and transmits a response as a result to the information processing device 10. The exclusive control device 40 includes an exclusive control table 50.

排他制御テーブル50は、資源のロックに関連する情報を保存する。 The exclusive control table 50 stores information related to resource locks.

排他制御装置40及び排他制御テーブル50については、後ほど詳細に説明する。 The exclusive control device 40 and the exclusive control table 50 will be described in detail later.

次に、図面を参照して、情報処理装置10のロック制御部20の構成の詳細について説明する。 Next, the details of the configuration of the lock control unit 20 of the information processing device 10 will be described with reference to the drawings.

図2は、第1の実施形態に係る情報処理装置10のロック制御部20の構成の一例を示すブロック図である。図2に示されているようにロック制御部20は、コマンド解析部201と、排他制御装置通信部202と、ロックテーブル30とを含む。 FIG. 2 is a block diagram showing an example of the configuration of the lock control unit 20 of the information processing device 10 according to the first embodiment. As shown in FIG. 2, the lock control unit 20 includes a command analysis unit 201, an exclusive control device communication unit 202, and a lock table 30.

図2及び図15を参照して、コマンド解析部201について、動作を含め説明する。 The command analysis unit 201 will be described with reference to FIGS. 2 and 15, including operations.

図15は、第1の実施形態に係るコマンド解析部201の動作の一例を示すフローチャートである。 FIG. 15 is a flowchart showing an example of the operation of the command analysis unit 201 according to the first embodiment.

コマンド解析部201は、要求元から、資源に対する要求(Sロック要求、Xロック要求、又は、アンロック要求)の依頼を受け取る。例えば、ロック制御部20は、上位層となっているタスクから要求を受け取る。つまり、ロック制御部20は、上位層から資源に対する要求を受け取る。ただし、ロック制御部20の要求元は、上位層に限られない。 The command analysis unit 201 receives a request for a resource request (S lock request, X lock request, or unlock request) from the request source. For example, the lock control unit 20 receives a request from a task in the upper layer. That is, the lock control unit 20 receives a request for a resource from the upper layer. However, the request source of the lock control unit 20 is not limited to the upper layer.

コマンド解析部201は、要求が、Sロック要求であるか否かを判定する(ステップS401)。 The command analysis unit 201 determines whether the request is an S lock request (step S401).

Sロック要求の場合(ステップS401でYes)、コマンド解析部201は、ロックテーブル30において、要求された資源に関する情報を検索する(ステップS402)。例えば、資源が識別子(Identifier(ID))を用いて管理されている場合、コマンド解析部201は、ロックテーブル30に、要求された資源の識別子(ID)が含まれているか否かを検索する。 In the case of the S lock request (Yes in step S401), the command analysis unit 201 searches the lock table 30 for information regarding the requested resource (step S402). For example, when the resource is managed using the identifier (Identifier (ID)), the command analysis unit 201 searches the lock table 30 for the identifier (ID) of the requested resource. ..

そして、コマンド解析部201は、検索結果を判定する。つまり、コマンド解析部201は、資源に関する情報がロックテーブル30に含まれているか否かを判定する(ステップS403)。 Then, the command analysis unit 201 determines the search result. That is, the command analysis unit 201 determines whether or not the information about the resource is included in the lock table 30 (step S403).

資源に関する情報がロックテーブル30に含まれている場合(ステップS403でYes)、コマンド解析部201は、要求元(例えば、タスク)にロック成功の応答を送信する(ステップS404)。 When the information about the resource is included in the lock table 30 (Yes in step S403), the command analysis unit 201 transmits a lock success response to the request source (for example, task) (step S404).

このように、ロック制御部20のコマンド解析部201は、ロックテーブル30に情報が含まれる資源に対するSロック要求に対して、排他制御装置40との通信の前に、ロック成功の応答を要求元に送信する。つまり、ロック制御部20は、Sロック要求における排他制御装置40との応答時間を削減して、要求元に応答を送信する。要求元は、この応答を用いて動作を継続する。そのため、情報処理装置10は、要求元の処理時間を削減することができる。 As described above, the command analysis unit 201 of the lock control unit 20 sends a response indicating that the lock is successful before the communication with the exclusive control device 40 to the S lock request for the resource whose information is included in the lock table 30. Send to. That is, the lock control unit 20 reduces the response time of the S lock request with the exclusive control device 40, and transmits the response to the request source. The requester continues operation using this response. Therefore, the information processing device 10 can reduce the processing time of the request source.

要求元に応答を送信後、コマンド解析部201は、排他制御装置40に、「応答済み」の情報(例えば、フラグ)を付加したSロック要求を送信する(ステップS406)。以下、応答済みの情報を付加したSロック要求を「Sロック要求(応答済み)」とする。ロック制御部20のコマンド解析部201は、Sロック要求(応答済み)を用いて、排他制御装置40に、要求された資源に対するSロック要求を依頼する。 After transmitting the response to the request source, the command analysis unit 201 transmits, to the exclusive control device 40, the S lock request to which the information (for example, flag) of “responded” is added (step S406). Hereinafter, the S lock request to which the information indicating that the response has been made is added is referred to as “S lock request (response completed)”. The command analysis unit 201 of the lock control unit 20 requests the exclusive control device 40 to make an S lock request for the requested resource using the S lock request (already answered).

そして、コマンド解析部201は、処理を終了する。 Then, the command analysis unit 201 ends the process.

資源に関する情報がロックテーブル30に含まれていない場合(ステップS403でNo)、コマンド解析部201は、排他制御装置40に、「未応答」を示す情報(例えば、フラグ)を付加してSロック要求を送信する(ステップS405)。以下、未応答の情報を付加したSロック要求を「Sロック要求(未応答)」とする。そして、コマンド解析部201は、処理を終了する。 If the information about the resource is not included in the lock table 30 (No in step S403), the command analysis unit 201 adds information (for example, a flag) indicating “not responded” to the exclusive control device 40 to lock the S lock. The request is transmitted (step S405). Hereinafter, the S lock request to which the unacknowledged information is added is referred to as an “S lock request (unacknowledged)”. Then, the command analysis unit 201 ends the process.

Sロック要求でない場合(ステップS401でNo)、つまりXロック要求又はアンロック要求の場合、コマンド解析部201は、Xロック要求又はアンロック要求を、排他制御装置40に送信する(ステップS407)。コマンド解析部201は、Xロック要求及びアンロック要求に「未対応」を示す情報を付加してもよい。例えば、排他制御装置40が、「未応答」が付加された要求に対して応答の送信する場合、情報処理装置10は、「未応答」を示す情報を付加して各要求を送信する。そして、コマンド解析部201は、処理を終了する。 If it is not the S lock request (No in step S401), that is, if it is the X lock request or the unlock request, the command analysis unit 201 transmits the X lock request or the unlock request to the exclusive control device 40 (step S407). The command analysis unit 201 may add information indicating “unsupported” to the X lock request and the unlock request. For example, when the exclusive control device 40 transmits a response to a request to which “unanswered” is added, the information processing device 10 adds information indicating “unanswered” and transmits each request. Then, the command analysis unit 201 ends the process.

ここで、Sロックは、同時に複数の情報処理装置10からアクセスが許可されたロック種別である。また、ロックテーブル30は、Sロックが確保されている資源に関する情報(例えば、資源ID)を保存している。そのため、ロックテーブル30に情報が含まれる資源に対するSロック要求は、ロック成功となる。 Here, the S lock is a lock type to which access is permitted from a plurality of information processing apparatuses 10 at the same time. Further, the lock table 30 stores information (for example, resource ID) regarding the resource for which the S lock is secured. Therefore, the S lock request for the resource whose information is included in the lock table 30 results in a successful lock.

そこで、要求元から受信したSロック要求が、ロックテーブル30に情報が含まれる資源に対するSロック要求の場合、コマンド解析部201は、排他制御装置40との通信の前に、要求元にロック成功の応答を送信することができる。このため、要求元は、排他制御装置40からの応答を待たずに、処理を進めることができる。つまり、情報処理装置10は、排他制御装置40との通信に掛かる時間を削減することができる。 Therefore, when the S-lock request received from the request source is the S-lock request for the resource whose information is included in the lock table 30, the command analysis unit 201 successfully locks the request source before communicating with the exclusive control device 40. Reply can be sent. Therefore, the request source can proceed with the process without waiting for a response from the exclusive control device 40. That is, the information processing device 10 can reduce the time required for communication with the exclusive control device 40.

なお、ステップS405及びS407の場合、排他制御装置40は、情報処理装置10に応答を送信する。ただし、コマンド解析部201は、排他制御装置40からの応答を受信しない。後ほど説明するように、排他制御装置通信部202が、これらの応答に関する動作を実行する。なお、応答は、後ほど説明するように、少なくとも、「ロック成功」、「ロック待ち」、又は、「アンロック完」を含む。 In steps S405 and S407, the exclusive control device 40 transmits a response to the information processing device 10. However, the command analysis unit 201 does not receive the response from the exclusive control device 40. As will be described later, the exclusive control device communication unit 202 executes operations regarding these responses. Note that the response includes at least "lock success", "lock wait", or "unlock complete", as will be described later.

コマンド解析部201が排他制御装置40に送信する要求の形式(フォーマット)は、特に制限されない。 The format of the request transmitted by the command analysis unit 201 to the exclusive control device 40 is not particularly limited.

図4は、第1の実施形態に係る要求の形式(フォーマット)の一例を示す図である。 FIG. 4 is a diagram illustrating an example of a request format according to the first embodiment.

図4の上部のフォーマットは、Sロック要求及びXロック要求(以下まとめて「ロック要求」と呼ぶ)に用いられるロック要求フォーマットの一例である。ロック要求フォーマットは、要求種別と、タスクIDと、資源IDと、ロック種別と、応答フラグとを含む。また、図4の下部のフォーマットは、アンロック要求に用いられるアンロック要求フォーマットの一例である。アンロック要求フォーマットは、要求種別と、タスクIDと、資源IDと、応答フラグとを含む。 The format in the upper part of FIG. 4 is an example of a lock request format used for the S lock request and the X lock request (hereinafter collectively referred to as “lock request”). The lock request format includes a request type, a task ID, a resource ID, a lock type, and a response flag. The format at the bottom of FIG. 4 is an example of an unlock request format used for an unlock request. The unlock request format includes a request type, a task ID, a resource ID, and a response flag.

要求種別は、ロック要求、又は、アンロック要求のいずれであるかを示す情報である。 The request type is information indicating whether the request is a lock request or an unlock request.

タスクIDは、要求を依頼した要求元(タスク)を識別するための識別子(ID)である。 The task ID is an identifier (ID) for identifying the request source (task) that requested the request.

資源IDは、要求された資源を示す識別子(ID)である。 The resource ID is an identifier (ID) indicating the requested resource.

ロック種別は、既に説明しているロック種別、つまり、Sロック及びXロックを示す情報である。 The lock type is information indicating the lock type already described, that is, the S lock and the X lock.

応答フラグは、既に説明した「応答済み」又は「未応答」を示す情報である。 The response flag is information indicating “already responded” or “not responded” as described above.

コマンド解析部201は、要求元から、ロック要求として、要求種別と、タスクIDと、資源IDと、ロック種別とのデータの組を受け取る。そして、コマンド解析部201は、要求元から受け取ったロック要求に、必要に応じて応答フラグ(「応答済み」又は「未応答」を示す情報)を付加してロック要求を作成し、排他制御装置40に送信する。 The command analysis unit 201 receives, as a lock request, a data set of a request type, a task ID, a resource ID, and a lock type from the request source. Then, the command analysis unit 201 adds a response flag (information indicating “already answered” or “not responded”) to the lock request received from the request source to create a lock request, and the exclusive control device Send to 40.

また、コマンド解析部201は、要求元から、アンロック要求として、要求種別と、タスクIDと、資源IDとのデータの組を受け取る。そして、コマンド解析部201は、要求元から受け取ったアンロック要求に、必要に応じて応答フラグ(「応答済み」又は「未応答」を示す情報)を付加してアンロック要求を作成し、排他制御装置40に送信する。 In addition, the command analysis unit 201 receives a data set of a request type, a task ID, and a resource ID as an unlock request from the request source. Then, the command analysis unit 201 adds a response flag (information indicating “already answered” or “unanswered”) to the unlock request received from the request source, creates an unlock request, and excludes it. It is transmitted to the control device 40.

なお、ロック要求フォーマットは、資源属性を含んでもよい。資源属性は、資源IDに対応した資源に関する属性を示す情報である。資源属性は、例えば、S資源を示す情報である。 The lock request format may include resource attributes. The resource attribute is information indicating an attribute related to the resource corresponding to the resource ID. The resource attribute is, for example, information indicating S resource.

次に、図2及び図16を参照して、排他制御装置通信部202について、動作を含め説明する。 Next, with reference to FIG. 2 and FIG. 16, the exclusive control device communication unit 202 will be described including operations.

図16は、第1の実施形態に係る排他制御装置通信部202の動作の一例を示すフローチャートである。 FIG. 16 is a flowchart showing an example of the operation of the exclusive control device communication unit 202 according to the first embodiment.

排他制御装置通信部202は、排他制御装置40から応答又は通知を受け取った場合、受け取った応答又は通知が、要求元宛か否かを判定する(ステップS501)。 When the exclusive control device communication unit 202 receives the response or notification from the exclusive control device 40, the exclusive control device communication unit 202 determines whether the received response or notification is addressed to the request source (step S501).

要求元宛の場合(ステップS501でYes)、排他制御装置通信部202は、受信した応答又は通知を要求元に送信する(ステップS502)。そして、排他制御装置通信部202は、処理を終了する。 If it is addressed to the request source (Yes in step S501), the exclusive control device communication unit 202 transmits the received response or notification to the request source (step S502). Then, the exclusive control device communication unit 202 ends the process.

要求元宛ではない場合(ステップS501でNo)、排他制御装置通信部202は、ロックテーブル30に対する資源に関する情報の追加の通知か否かを判定する(ステップS503)。ロックテーブル30に対する資源に関する情報の追加の通知を、以下、「ロック登録通知」と呼ぶ。 When it is not addressed to the request source (No in step S501), the exclusive control device communication unit 202 determines whether or not the notification is the addition of the information regarding the resource to the lock table 30 (step S503). The notification of the addition of the resource-related information to the lock table 30 will be referred to as “lock registration notification” below.

ロック登録通知の場合(ステップS503でYes)、排他制御装置通信部202は、通知された資源に関する情報をロックテーブル30に追加する(ステップS505)。そして、排他制御装置通信部202は、排他制御装置40に、ロックテーブル30の更新完了の応答を送信する。 In the case of a lock registration notification (Yes in step S503), the exclusive control device communication unit 202 adds the information about the notified resource to the lock table 30 (step S505). Then, the exclusive control device communication unit 202 transmits, to the exclusive control device 40, a response indicating that the lock table 30 has been updated.

ロック登録通知でない場合、その通知は、資源に関する情報の削除の通知である。以下、この通知を「ロック削除通知」と呼ぶ。ロック削除通知を受け取った場合(ステップS503でNo)、排他制御装置通信部202は、ロックテーブル30から通知された資源に関する情報を削除する(ステップS504)。そして、排他制御装置通信部202は、排他制御装置40に、ロックテーブル30の更新完了の応答を送信する(ステップS506)。そして、排他制御装置通信部202は、処理を終了する。 If the notification is not a lock registration notification, the notification is a notification of deletion of information regarding the resource. Hereinafter, this notification will be referred to as a "lock deletion notification". When the lock deletion notification is received (No in step S503), the exclusive control device communication unit 202 deletes the information about the resource notified from the lock table 30 (step S504). Then, the exclusive control device communication unit 202 transmits a response indicating that the lock table 30 has been updated to the exclusive control device 40 (step S506). Then, the exclusive control device communication unit 202 ends the process.

次に、図面を参照して、排他制御装置40の詳細な構成について説明する。 Next, a detailed configuration of the exclusive control device 40 will be described with reference to the drawings.

図3は、第1の実施形態に係る排他制御装置40の構成の一例を示すブロック図である。排他制御装置40は、コマンド振り分け部401と、ロックテーブル制御部402と、参照ロック処理部403と、更新ロック処理部404と、アンロック処理部405と、排他制御テーブル50とを含む。 FIG. 3 is a block diagram showing an example of the configuration of the exclusive control device 40 according to the first embodiment. The exclusive control device 40 includes a command distribution unit 401, a lock table control unit 402, a reference lock processing unit 403, an update lock processing unit 404, an unlock processing unit 405, and an exclusive control table 50.

コマンド振り分け部401は、情報処理装置10から受け取った要求(ロック要求及びアンロック要求)を、参照ロック処理部403、更新ロック処理部404、及び、アンロック処理部405のいずれかに振り分ける。具体的には、コマンド振り分け部401は、Sロック要求を、参照ロック処理部403に送信する。コマンド振り分け部401は、Xロック要求を、更新ロック処理部404に送信する。そして、コマンド振り分け部401は、アンロック要求を、アンロック処理部405に送信する。コマンド振り分け部401は、例えば、図4に示されているロック要求フォーマット及びアンロック要求フォーマットにおける要求種別及びロック種別を用いて、要求を振り分ければよい。 The command distribution unit 401 distributes the request (lock request and unlock request) received from the information processing apparatus 10 to any of the reference lock processing unit 403, the update lock processing unit 404, and the unlock processing unit 405. Specifically, the command distribution unit 401 transmits the S lock request to the reference lock processing unit 403. The command distribution unit 401 transmits the X lock request to the update lock processing unit 404. Then, the command distribution unit 401 transmits an unlock request to the unlock processing unit 405. The command distribution unit 401 may distribute the request using the request type and the lock type in the lock request format and the unlock request format shown in FIG. 4, for example.

ロックテーブル制御部402は、参照ロック処理部403、更新ロック処理部404、及び、アンロック処理部405から、情報処理装置10に対する通知の送信の依頼を受ける。この通知は、ロック登録通知及びロック削除通知である。そして、ロックテーブル制御部402は、全ての情報処理装置10に通知を送信する。そして、ロックテーブル制御部402は、情報処理装置10から、通知に対する応答を受信する。ロックテーブル制御部402は、全ての情報処理装置10から応答を受信すると、通知の送信を依頼した依頼元(参照ロック処理部403、更新ロック処理部404、又は、アンロック処理部405)に応答の完了を送信する。ただし、依頼元が、通知の完了を判断してもよい。この場合、ロックテーブル制御部402は、受信した応答を依頼元に送信する。 The lock table control unit 402 receives a request from the reference lock processing unit 403, the update lock processing unit 404, and the unlock processing unit 405 to send a notification to the information processing apparatus 10. This notification is a lock registration notification and a lock deletion notification. Then, the lock table control unit 402 transmits the notification to all the information processing devices 10. Then, the lock table control unit 402 receives a response to the notification from the information processing device 10. When the lock table control unit 402 receives the responses from all the information processing apparatuses 10, the lock table control unit 402 responds to the request source (the reference lock processing unit 403, the update lock processing unit 404, or the unlock processing unit 405) that requested the transmission of the notification. Send the completion of. However, the requester may judge the completion of the notification. In this case, the lock table control unit 402 transmits the received response to the request source.

さらに、ロックテーブル制御部402は、参照ロック処理部403、更新ロック処理部404、及び、アンロック処理部405から、情報処理装置10から要求されたロック要求及びアンロック要求の結果である応答を受信する。そして、ロックテーブル制御部402は、要求を送信した情報処理装置10に、その応答を送信する。 Further, the lock table control unit 402 sends a response, which is a result of the lock request and the unlock request requested by the information processing apparatus 10, from the reference lock processing unit 403, the update lock processing unit 404, and the unlock processing unit 405. To receive. Then, the lock table control unit 402 transmits the response to the information processing device 10 that has transmitted the request.

排他制御テーブル50は、資源のロック状態を示すデータを記憶する記憶部である。 The exclusive control table 50 is a storage unit that stores data indicating the locked state of resources.

図5は、第1の実施形態に係る排他制御テーブル50が記憶しているデータの一例を模式的に示す図である。図5は、例示として、1つの資源のデータを示している。排他制御テーブル50は、資源の数に対応する数の図5に示されているようなデータを保存する。 FIG. 5 is a diagram schematically showing an example of data stored in the exclusive control table 50 according to the first embodiment. FIG. 5 shows data of one resource as an example. The exclusive control table 50 stores a number of data as shown in FIG. 5 corresponding to the number of resources.

また、一般的に、各エントリは、リンク形式の情報が用いて接続を管理されている。そのため、図5は、リンク関係を示す線を用いて、各エントリの接続を示している。ただし、資源に関するデータは、この形式に限られない。例えば、資源に関するデータとして、全てのタスクエントリが、資源エントリに接続される形式が用いられてもよい。あるいは、エントリは、表形式のデータを用いて管理されてもよい。なお、以下の説明において、複数のタスクエントリを介して資源エントリに接続されている場合においても、各タスクエントリは、資源エントリに接続されていると呼ぶ。 In addition, in general, each entry is managed by using information in a link format. Therefore, FIG. 5 shows the connection of each entry using the line indicating the link relationship. However, the resource data is not limited to this format. For example, a format in which all task entries are connected to resource entries may be used as the data regarding the resources. Alternatively, the entries may be managed using tabular data. In addition, in the following description, each task entry is referred to as being connected to a resource entry even when it is connected to the resource entry via a plurality of task entries.

資源エントリに接続されるタスクエントリの数は、図5の記載に限定されない。そこで、図5は、数が限定されていないことを示すため、破線を用いて、一部のタスクエントリを示している。 The number of task entries connected to the resource entry is not limited to the description in FIG. Therefore, FIG. 5 shows some of the task entries by using broken lines to show that the number is not limited.

資源エントリは、排他制御装置40の処理対象となる資源を示す情報の組である。資源エントリは、資源IDと、ロック列(L)と、待ち列(W)とを含む。 The resource entry is a set of information indicating resources to be processed by the exclusive control device 40. The resource entry includes a resource ID, a lock queue (L), and a queue (W).

資源IDは、資源エントリに対応する資源を一意に識別するための識別子(ID)である。 The resource ID is an identifier (ID) for uniquely identifying the resource corresponding to the resource entry.

ロック列(L)は、資源に対して、ロック成功となっているタスクエントリを示す情報である。ロック列(L)に接続されているタスクエントリ、及び、そのタスクエントリからリンクされているタスクエントリが、その資源に対するロック成功となっているタスクのタスクエントリである。ロック列(L)は、例えば、最初にロック成功となったタスクエントリのアドレスを示す情報である。 The lock string (L) is information indicating a task entry that has been successfully locked with respect to a resource. The task entry connected to the lock row (L) and the task entry linked from the task entry are the task entries of the tasks that have successfully locked the resource. The lock string (L) is, for example, information indicating the address of the task entry that has been successfully locked first.

待ち列(W)は、資源に対して、ロック待ちとなっているタスクエントリを示す情報である。待ち列(W)に接続されているタスクエントリ、及び、そのタスクエントリからリンクされているタスクエントリが、その資源に対するロック待ちのタスクエントリである。待ち列(W)は、例えば、最初にロック待ちとなったタスクエントリのアドレスを示す情報である。 The queue (W) is information indicating a task entry waiting for a lock on a resource. A task entry connected to the queue (W) and a task entry linked from the task entry are task entries waiting for locking the resource. The queue (W) is, for example, information indicating the address of the task entry that was first in the lock wait state.

タスクエントリは、タスクを示す情報の組である。タスクエントリは、タスクIDと、ロック種別と、次タスクとを含む。 A task entry is a set of information indicating a task. The task entry includes a task ID, a lock type, and a next task.

タスクIDは、タスクを一意に識別するための識別子(ID)である。 The task ID is an identifier (ID) for uniquely identifying the task.

ロック種別は、タスクエントリに対応するタスクが要求したロック種別である。 The lock type is the lock type requested by the task corresponding to the task entry.

次タスクは、継続するタスクエントリを示す情報である。次タスクは、例えば、次のタスクエントリのアドレスを示す情報である。各列の最後のタスクエントリの次タスクは、終了を示す情報又は空欄を示す情報となっている。 The next task is information indicating a task entry to be continued. The next task is, for example, information indicating the address of the next task entry. The task next to the last task entry in each column is information indicating the end or information indicating a blank.

疑似エントリは、排他制御装置40を示す情報の組である。疑似エントリの形式は、タスクエントリの同様である。ただし、ロック種別は、Sロックである。排他制御装置40は、S資源である資源に対して、疑似エントリを登録する。そのため、疑似エントリは、ロック列(L)の最初に接続される。 The pseudo entry is a set of information indicating the exclusive control device 40. The format of the pseudo entry is similar to that of the task entry. However, the lock type is S lock. The exclusive control device 40 registers a pseudo entry for the resource that is the S resource. Therefore, the pseudo entry is connected to the beginning of the lock row (L).

なお、ロック列(L)及び待ち列(W)に接続されるタスクの数は、情報処理システム100及び排他制御装置40の仕様として規定されている範囲において、制限はない。 The number of tasks connected to the lock queue (L) and the queue (W) is not limited as long as the specifications of the information processing system 100 and the exclusive control device 40 are specified.

例えば、初期状態の場合、資源エントリは、タスクエントリに接続されていなくてもよい。 For example, in the initial state, the resource entry may not be connected to the task entry.

また、全てのタスクエントリが、ロック列(L)に接続されてもよい。例えば、全てのタスクが、参照ロックを用いるタスクの場合、全てのタスクエントリは、ロック列(L)に接続される。つまり、待ち列(W)に接続されるタスクエントリは、なくてもよい。 Further, all task entries may be connected to the lock row (L). For example, if all the tasks use the reference lock, all the task entries are connected to the lock row (L). That is, the task entry connected to the queue (W) may be omitted.

あるいは、全てのタスクエントリが、待ち列(W)に接続されてもよい。例えば、資源が、一時的に動作を停止している場合、全てのタスクエントリは、待ち列(W)に接続されてもよい。ただし、この場合でも、ロック成功となっているタスクエントリが、ロック列(L)接続されていてもよい。 Alternatively, all task entries may be connected to the queue (W). For example, all task entries may be attached to a queue (W) if the resource is temporarily suspended. However, even in this case, the task entry that has been successfully locked may be connected to the lock row (L).

図3及び図12を参照して、参照ロック処理部403について、動作を含め説明する。 With reference to FIGS. 3 and 12, the reference lock processing unit 403 will be described including the operation.

図12は、第1の実施形態に係る参照ロック処理部403の動作の一例を示すフローチャートである。 FIG. 12 is a flowchart showing an example of the operation of the reference lock processing unit 403 according to the first embodiment.

参照ロック処理部403は、コマンド振り分け部401からSロック要求を受信する。 The reference lock processing unit 403 receives the S lock request from the command distribution unit 401.

そして、参照ロック処理部403は、要求されているSロックの対象となる資源に関する情報が、排他制御テーブル50に含まれているか否かを判定する(ステップS101)。 Then, the reference lock processing unit 403 determines whether or not the exclusive control table 50 includes information regarding the resource that is the target of the requested S lock (step S101).

排他制御テーブル50に含まれていない場合(ステップS101でNo)、参照ロック処理部403は、その資源に関する情報(例えば、図5の資源エントリ)を、排他制御テーブル50に登録する(ステップS102)。 If it is not included in the exclusive control table 50 (No in step S101), the reference lock processing unit 403 registers information regarding the resource (for example, the resource entry in FIG. 5) in the exclusive control table 50 (step S102). ..

参照ロック処理部403は、対象となる資源がS資源か否かを判定する(ステップS103)。 The reference lock processing unit 403 determines whether the target resource is an S resource (step S103).

S資源の場合(ステップS103でYes)、参照ロック処理部403は、排他制御テーブル50に疑似エントリを追加する(ステップS104)。 If it is an S resource (Yes in step S103), the reference lock processing unit 403 adds a pseudo entry to the exclusive control table 50 (step S104).

そして、参照ロック処理部403は、ロックテーブル制御部402を介して、全ての情報処理装置10に対して、Sロック要求の対象となっている資源に関するロック登録通知を送信する(ステップS105)。つまり、参照ロック処理部403は、登録されていない資源に対するSロック要求に対して、ロック登録通知を送信する。排他制御テーブル50に情報が登録されていない資源は、アクセスが発生していない資源のため、ロックテーブル30に登録されていない。つまり、この動作は、参照ロック処理部403が、ロックテーブル30に情報が登録されていない資源のSロック要求に対して、ロック登録通知を送信する動作である。 Then, the reference lock processing unit 403 transmits a lock registration notification regarding the resource that is the target of the S lock request to all the information processing devices 10 via the lock table control unit 402 (step S105). That is, the reference lock processing unit 403 transmits a lock registration notification in response to an S lock request for a resource that has not been registered. A resource whose information is not registered in the exclusive control table 50 is not registered in the lock table 30 because the resource has not been accessed. That is, this operation is an operation in which the reference lock processing unit 403 transmits a lock registration notification to an S lock request for a resource whose information is not registered in the lock table 30.

既に説明したように、この通知を受けた排他制御装置通信部202は、ロックテーブル30にその資源に関する情報を登録する。そして、登録後、排他制御装置通信部202は、更新完了の応答を送信する。 As described above, the exclusive control device communication unit 202 that has received this notification registers information regarding the resource in the lock table 30. Then, after registration, the exclusive control device communication unit 202 transmits a response of update completion.

参照ロック処理部403は、全ての情報処理装置10から更新完了の応答が送信されてくるのを待つ(ステップS115)。具体的には、参照ロック処理部403は、ロックテーブル制御部402から応答の完了が送信されるのを待つ。 The reference lock processing unit 403 waits for the response of the update completion from all the information processing devices 10 (step S115). Specifically, the reference lock processing unit 403 waits for the completion of the response to be transmitted from the lock table control unit 402.

S資源でない場合(ステップS103でNo)、又は、全ての情報処理装置10において更新完了後、参照ロック処理部403は、Sロック要求を送信したタスクのタスクエントリを、排他制御テーブル50のロック列(L)に登録する(ステップS106)。 If it is not an S resource (No in step S103), or after updating is completed in all information processing devices 10, the reference lock processing unit 403 sets the task entry of the task that has transmitted the S lock request to the lock column of the exclusive control table It is registered in (L) (step S106).

そして、参照ロック処理部403は、ロック成功の応答をロックテーブル制御部402に送信する(ステップS107)。そして、参照ロック処理部403は、処理を終了する。 Then, the reference lock processing unit 403 transmits a lock success response to the lock table control unit 402 (step S107). Then, the reference lock processing unit 403 ends the process.

この場合、ロックテーブル制御部402は、ロック成功の応答を情報処理装置10に送信する。 In this case, the lock table control unit 402 transmits a lock success response to the information processing device 10.

排他制御テーブル50に資源に関する情報が含まれる場合(ステップS101でYes)、参照ロック処理部403は、資源エントリのロック列(L)にXロックが含まれるか否かを判定する(ステップS108)。 When the exclusive control table 50 includes information about resources (Yes in step S101), the reference lock processing unit 403 determines whether the lock row (L) of the resource entry includes an X lock (step S108). ..

Xロックが含まれない場合(ステップS108でNo)、参照ロック処理部403は、排他制御テーブル50のロック列(L)に、要求されたタスクのタスクエントリを追加する(ステップS109)。 When the X lock is not included (No in step S108), the reference lock processing unit 403 adds the task entry of the requested task to the lock column (L) of the exclusive control table 50 (step S109).

そして、参照ロック処理部403は、Sロック要求が応答済みか否かを判定する(ステップS110)。 Then, the reference lock processing unit 403 determines whether or not the S lock request has been answered (step S110).

応答済みの場合(ステップS110でYes)、参照ロック処理部403は、処理を終了する。 When the response has been made (Yes in step S110), the reference lock processing unit 403 ends the process.

応答済みでない場合(ステップS110でNo)、参照ロック処理部403は、ロック成功の応答をロックテーブル制御部402に送信する(ステップS111)。そして、参照ロック処理部403は、処理を終了する。 If the response has not been received (No in step S110), the reference lock processing unit 403 transmits a lock success response to the lock table control unit 402 (step S111). Then, the reference lock processing unit 403 ends the process.

この場合、ロックテーブル制御部402は、ロック成功の応答を情報処理装置10に送信する。 In this case, the lock table control unit 402 transmits a lock success response to the information processing device 10.

Xロックがある場合(ステップS108でYes)、参照ロック処理部403は、要求されたタスクのタスクエントリを待ち列(W)に追加する(ステップS112)。 When there is an X lock (Yes in step S108), the reference lock processing unit 403 adds the task entry of the requested task to the queue (W) (step S112).

そして、参照ロック処理部403は、ロック待ちの応答を、ロックテーブル制御部402に送信する(ステップS113)。そして、参照ロック処理部403は、処理を終了する。 Then, the reference lock processing unit 403 transmits a lock wait response to the lock table control unit 402 (step S113). Then, the reference lock processing unit 403 ends the process.

この場合、ロックテーブル制御部402は、ロック待ちの応答を、Sロック要求を送信してきた情報処理装置10に送信する。 In this case, the lock table control unit 402 transmits a lock wait response to the information processing device 10 that has transmitted the S lock request.

図3及び図13を参照して、更新ロック処理部404について、動作を含め説明する。 The update lock processing unit 404 will be described including the operation with reference to FIGS.

図13は、第1の実施形態に係る更新ロック処理部404の動作の一例を示すフローチャートである。 FIG. 13 is a flowchart showing an example of the operation of the update lock processing unit 404 according to the first embodiment.

更新ロック処理部404は、コマンド振り分け部401からXロック要求を受信する。 The update lock processing unit 404 receives the X lock request from the command distribution unit 401.

そして、更新ロック処理部404は、要求されているXロックが、排他制御テーブル50に含まれるか否かを判定する(ステップS201)。 Then, the update lock processing unit 404 determines whether or not the requested X lock is included in the exclusive control table 50 (step S201).

排他制御テーブル50に資源に関する情報が含まれる場合(ステップSS201でYes)、更新ロック処理部404は、その資源をロックしているタスクのロック種別がXロックか否かを判定する(ステップS202)。 When the exclusive control table 50 includes information about a resource (Yes in step SS201), the update lock processing unit 404 determines whether the lock type of the task that locks the resource is X lock (step S202). ..

Xロックでない場合(ステップS202でNo)、更新ロック処理部404は、情報処理装置10に対して、Xロック要求の対象となっている資源に関する情報をロックテーブル30から削除するロック削除通知を送信する(ステップS203)。なお、ここにおけるXロックでない場合は、Sロックもない場合、つまり、ロックしているタスクエントリがない場合を含む。 If not X-locked (No in step S202), the update lock processing unit 404 sends a lock deletion notification to the information processing apparatus 10 to delete the information on the resource that is the target of the X-lock request from the lock table 30. Yes (step S203). It should be noted that the case where there is no X lock here includes the case where there is no S lock, that is, the case where there is no locked task entry.

そして、更新ロック処理部404は、全ての情報処理装置10での処理の終了を待つ(ステップS211)。 Then, the update lock processing unit 404 waits for the end of the processing in all the information processing devices 10 (step S211).

全ての情報処理装置10が応答後、更新ロック処理部404は、疑似エントリを削除する(ステップS204)。 After all the information processing devices 10 respond, the update lock processing unit 404 deletes the pseudo entry (step S204).

そして、更新ロック処理部404は、資源エントリのロック列(L)にタスクエントリがあるか否かを確認する(ステップS212)。 Then, the update lock processing unit 404 confirms whether or not there is a task entry in the lock row (L) of the resource entry (step S212).

タスクがある場合(ステップS212でYes)及びXロック場合(ステップS202でYes)、更新ロック処理部404は、待ち列(W)に要求されたタスクのタスクエントリ(Xロック要求のタスクのタスクエントリ)を追加する(ステップS209)。 When there is a task (Yes in step S212) and when X-locked (Yes in step S202), the update lock processing unit 404 determines the task entry of the task requested in the queue (W) (task entry of the task of the X-lock request). ) Is added (step S209).

そして、更新ロック処理部404は、ロック待ちの応答を、ロックテーブル制御部402に送信する(ステップS210)。そして、更新ロック処理部404は、処理を終了する。 Then, the update lock processing unit 404 transmits a lock wait response to the lock table control unit 402 (step S210). Then, the update lock processing unit 404 ends the processing.

この場合、ロックテーブル制御部402は、ロック待ちの応答を、Xロック要求を送信してきた情報処理装置10に送信する。 In this case, the lock table control unit 402 transmits a lock wait response to the information processing apparatus 10 that has transmitted the X lock request.

排他制御テーブル50に資源に関する情報が含まれない場合(ステップSS201でNo)、更新ロック処理部404は、その資源に関する情報を排他制御テーブル50に登録する(ステップS206)。 When the exclusive control table 50 does not include the information on the resource (No in step SS201), the update lock processing unit 404 registers the information on the resource in the exclusive control table 50 (step S206).

ステップS206の後、及び、タスクがない場合(ステップS212でNo)、更新ロック処理部404は、ロック列(L)に要求されたタスクのタスクエントリ(Xロックのタスクエントリ)を登録する(ステップS207)。 After step S206 and when there is no task (No in step S212), the update lock processing unit 404 registers the task entry of the requested task (task entry of X lock) in the lock row (L) (step). S207).

そして、更新ロック処理部404は、ロック成功の応答を、ロックテーブル制御部402に送信する(ステップS208)。そして、更新ロック処理部404は、処理を終了する。 Then, the update lock processing unit 404 transmits a lock success response to the lock table control unit 402 (step S208). Then, the update lock processing unit 404 ends the processing.

この場合、ロックテーブル制御部402は、ロック成功の応答を、Xロック要求を送信してきた情報処理装置10に送信する。 In this case, the lock table control unit 402 transmits a lock success response to the information processing apparatus 10 that has transmitted the X lock request.

図3及び図14を参照して、アンロック処理部405について、動作を含め説明する。 With reference to FIGS. 3 and 14, the unlock processing unit 405 will be described including the operation.

図14は、第1の実施形態に係るアンロック処理部405の動作の一例を示すフローチャートである。 FIG. 14 is a flowchart showing an example of the operation of the unlock processing unit 405 according to the first embodiment.

アンロック処理部405は、コマンド振り分け部401からアンロック要求を受信する。 The unlock processing unit 405 receives the unlock request from the command distribution unit 401.

そして、アンロック処理部405は、アンロック要求の対象であるタスクのタスクエントリを排他制御テーブル50から削除する(ステップS301)。タスクエントリは、ロック列(L)又は待ち列(W)のいずれに含まれ場合も、削除される。さらに、アンロック処理部405は、Xロック要求であるタスクエントリを削除した場合で、その資源に対応する資源エントリの待ち列(W)にタスクエントリがない場合、その資源エントリを削除する。 Then, the unlock processing unit 405 deletes the task entry of the task that is the target of the unlock request from the exclusive control table 50 (step S301). The task entry is deleted regardless of whether it is included in the lock queue (L) or the queue (W). Further, the unlock processing unit 405 deletes the task entry which is the X lock request, and when there is no task entry in the queue (W) of the resource entry corresponding to the resource, deletes the resource entry.

そして、アンロック処理部405は、アンロック完了の応答をロックテーブル制御部402に送信する(ステップS302)。 Then, the unlock processing unit 405 transmits an unlock completion response to the lock table control unit 402 (step S302).

ロックテーブル制御部402は、アンロック完了の応答を、アンロック要求を送信してきた情報処理装置10に送信する。 The lock table control unit 402 transmits a response of unlock completion to the information processing device 10 that has transmitted the unlock request.

アンロック処理部405は、その資源エントリの待ち列(W)に、その資源をロック可能なタスク(タスクエントリ)があるか否かを確認する(ステップS303)。 The unlock processing unit 405 confirms whether or not there is a task (task entry) that can lock the resource in the queue (W) of the resource entry (step S303).

ロック可能なタスク(タスクエントリ)がない場合(ステップS303でNo)、アンロック処理部405は、処理を終了する。 When there is no lockable task (task entry) (No in step S303), the unlock processing unit 405 ends the process.

ロック可能なタスク(タスクエントリ)がある場合(ステップS303でYes)、アンロック処理部405は、そのタスクが要求した資源にXロックがあるか否かを判定する(ステップS304)。 When there is a lockable task (task entry) (Yes in step S303), the unlock processing unit 405 determines whether the resource requested by the task has an X lock (step S304).

Xロックがない場合(ステップS304でNo)、アンロック処理部405は、その資源がS資源か否かを判定する(ステップS307)。 When there is no X lock (No in step S304), the unlock processing unit 405 determines whether the resource is the S resource (step S307).

S資源の場合(ステップS307でYes)、アンロック処理部405は、疑似エントリを登録する(ステップS308)。 If it is an S resource (Yes in step S307), the unlock processing unit 405 registers a pseudo entry (step S308).

そして、アンロック処理部405は、ロックテーブル制御部402を介して、全ての情報処理装置10に対して、その資源がSロックとして登録されたこと示すロック登録通知を送信する(ステップS309)。既に説明したように、この通知を受けた排他制御装置通信部202は、ロックテーブル30にその資源に関する情報を登録する。そして、登録後、排他制御装置通信部202は、更新完了の応答を送信する。 Then, the unlock processing unit 405 transmits a lock registration notification indicating that the resource is registered as an S lock to all the information processing devices 10 via the lock table control unit 402 (step S309). As described above, the exclusive control device communication unit 202 that has received this notification registers information regarding the resource in the lock table 30. Then, after registration, the exclusive control device communication unit 202 transmits a response of update completion.

アンロック処理部405は、全ての情報処理装置10から更新完了の応答が送信されてくるのを待つ(ステップS310)。そして、アンロック処理部405は、ステップS305に進む。 The unlock processing unit 405 waits for all the information processing apparatuses 10 to send the response of the update completion (step S310). Then, the unlock processing unit 405 proceeds to step S305.

Xロックがある場合(ステップS304でYes)、及び、S資源でない場合(ステップS307でNo)、アンロック処理部405は、ステップS305に進む。 If there is an X lock (Yes in step S304) and if it is not an S resource (No in step S307), the unlock processing unit 405 proceeds to step S305.

そして、アンロック処理部405は、ロック可能なタスクエントリを、排他制御テーブル50のロック列(L)に追加する(ステップS305)。 Then, the unlock processing unit 405 adds the lockable task entry to the lock column (L) of the exclusive control table 50 (step S305).

そして、アンロック処理部405は、ロック成功の応答をロックテーブル制御部402に送信する(ステップS306)。そして、参照ロック処理部403は、処理を終了する。 Then, the unlock processing unit 405 transmits a lock success response to the lock table control unit 402 (step S306). Then, the reference lock processing unit 403 ends the process.

ロックテーブル制御部402は、ロック成功の応答を、ロック列(L)に追加されたタスクエントリの要求を送信してきた情報処理装置10に送信する。 The lock table control unit 402 transmits a lock success response to the information processing apparatus 10 that has transmitted the request for the task entry added to the lock string (L).

[情報処理システム100の動作の説明]
次に、図面を参照して、情報処理システム100の動作について説明する。
[Description of Operation of Information Processing System 100]
Next, the operation of the information processing system 100 will be described with reference to the drawings.

(1)Sロック要求(未登録の資源の場合)
図6は、第1の実施形態における未登録の資源に対するSロック要求に関する動作の一例を示すシーケンス図である。
(1) S lock request (for unregistered resources)
FIG. 6 is a sequence diagram showing an example of an operation regarding an S lock request for an unregistered resource according to the first embodiment.

まず、要求元(例えば、タスク)が、ロック制御部20に、資源のSロック要求を送信する。 First, a request source (for example, a task) sends an S lock request for a resource to the lock control unit 20.

ロック制御部20は、ロックテーブル30における資源に関する情報の登録状態を確認する。 The lock control unit 20 confirms the registration state of the resource-related information in the lock table 30.

すなわち、ロック制御部20は、要求がSロック要求のため(ステップS401でYes)、ロックテーブル30を検索する(ステップS402)。 That is, since the request is the S lock request (Yes in step S401), the lock control unit 20 searches the lock table 30 (step S402).

要求された資源に関する情報は、ロックテーブル30に登録されていないので(ステップS403でNo)、ロック制御部20は、未応答の情報を付加して、Sロック要求を、排他制御装置40に送信する(ステップS405)。つまり、ロック制御部20は、Sロック要求(未応答)を排他制御装置40に送信する。 Since the information regarding the requested resource is not registered in the lock table 30 (No in step S403), the lock control unit 20 adds the unacknowledged information and transmits the S lock request to the exclusive control device 40. Yes (step S405). That is, the lock control unit 20 transmits the S lock request (not responded) to the exclusive control device 40.

Sロック要求(未応答)を受け取った排他制御装置40のコマンド振り分け部401は、参照ロック処理部403に、Sロック要求を送信する。 The command distribution unit 401 of the exclusive control device 40 that has received the S lock request (not responded) transmits the S lock request to the reference lock processing unit 403.

参照ロック処理部403は、Sロック要求の資源に関する情報が排他制御テーブル50に存在しないため(ステップS101でNo)、排他制御テーブル50に資源エントリを登録する(ステップS102)。 The reference lock processing unit 403 registers the resource entry in the exclusion control table 50 (step S102) because the information regarding the resource of the S lock request does not exist in the exclusion control table 50 (No in step S101).

参照ロック処理部403は、S資源か否かを確認する(ステップS103)。 The reference lock processing unit 403 confirms whether the resource is an S resource (step S103).

S資源の場合(ステップS103でYes)、参照ロック処理部403は、排他制御テーブル50に資源エントリを追加する(ステップS104)。 If it is an S resource (Yes in step S103), the reference lock processing unit 403 adds a resource entry to the exclusive control table 50 (step S104).

そして、参照ロック処理部403は、ロック登録通知を作成し、ロックテーブル制御部402を介して、全ての情報処理装置10にロック登録通知を送信する(ステップS105)。 Then, the reference lock processing unit 403 creates a lock registration notification, and transmits the lock registration notification to all the information processing devices 10 via the lock table control unit 402 (step S105).

そして、参照ロック処理部403は、全ての情報処理装置10での処理の終了を待つ(ステップS115)。 Then, the reference lock processing unit 403 waits for the end of the processing in all the information processing devices 10 (step S115).

排他制御装置通信部202は、受け取った通知がロック登録通知のため(ステップS503でYes)、ロックテーブル30に資源に関する情報を追加する(ステップS505)。 Since the received notification is the lock registration notification (Yes in step S503), the exclusive control device communication unit 202 adds information about the resource to the lock table 30 (step S505).

そして、排他制御装置通信部202は、更新完了の応答を送信する(ステップS506)。 Then, the exclusive control device communication unit 202 transmits a response indicating that the update is completed (step S506).

全ての情報処理装置10での処理が完了した場合、又は、S資源でない場合(ステップS103でNo)、参照ロック処理部403は、要求元(タスク)のタスクエントリを、ロック列(L)に登録する(ステップS106)。 When the processing in all the information processing devices 10 is completed, or when it is not the S resource (No in step S103), the reference lock processing unit 403 sets the task entry of the request source (task) to the lock string (L). Register (step S106).

そして、参照ロック処理部403は、ロックテーブル制御部402を介して、ロック成功の応答を、Sロック要求を送信してきた情報処理装置10に送信する(ステップS107)。 Then, the reference lock processing unit 403 transmits a lock success response to the information processing apparatus 10 that has transmitted the S-lock request via the lock table control unit 402 (step S107).

情報処理装置10の排他制御装置通信部202は、受信した応答が要求元宛のため(ステップS501でYes)、応答を要求元に送信する(ステップS502)。 Since the received response is addressed to the request source (Yes in step S501), the exclusive control device communication unit 202 of the information processing device 10 transmits the response to the request source (step S502).

(2)Sロック要求(登録済みの資源の場合)
図7は、第1の実施形態における登録済みの資源に対するSロック要求に関する動作の一例を示すシーケンス図である。
(2) S lock request (for registered resources)
FIG. 7 is a sequence diagram showing an example of an operation related to an S lock request for a registered resource according to the first embodiment.

まず、要求元(例えば、タスク)が、ロック制御部20に、資源のSロック要求を送信する。 First, a request source (for example, a task) sends an S lock request for a resource to the lock control unit 20.

ロック制御部20は、ロックテーブル30における資源に関する情報の登録状態を確認する。 The lock control unit 20 confirms the registration state of the resource-related information in the lock table 30.

すなわち、ロック制御部20は、要求がSロック要求のため(ステップS401でYes)、ロックテーブル30を検索する(ステップS402)。 That is, since the request is the S lock request (Yes in step S401), the lock control unit 20 searches the lock table 30 (step S402).

資源に関する情報が、ロックテーブル30に登録されているので(ステップS403でYes)、ロック制御部20は、ロック成功の応答を要求元に送信する(ステップS404)。 Since the information about the resource is registered in the lock table 30 (Yes in step S403), the lock control unit 20 transmits a lock success response to the request source (step S404).

そして、ロック制御部200は、応答済みの情報を付加して、Sロック要求を、排他制御装置40に送信する(ステップS406)。つまり、ロック制御部200は、Sロック要求(応答済み)を排他制御装置40に送信する。 Then, the lock control unit 200 adds the information indicating that the response has been made and transmits the S lock request to the exclusive control device 40 (step S406). That is, the lock control unit 200 transmits the S lock request (already answered) to the exclusive control device 40.

Sロック要求(応答済み)を受け取った排他制御装置40のコマンド振り分け部401は、参照ロック処理部403に、Sロック要求を送信する。 The command distribution unit 401 of the exclusive control device 40 that has received the S lock request (already answered) transmits the S lock request to the reference lock processing unit 403.

参照ロック処理部403は、要求された資源に関する情報が、排他制御テーブル50にあるため(ステップS101でYes)、資源をロックしているロック種別を調べる(ステップS108)。今の場合、ロック種別はSロックなので(ステップS108でNo)、参照ロック処理部403は、排他制御テーブル50のロック列(L)にタスクエントリを追加する(ステップS109)。 Since the information regarding the requested resource is in the exclusive control table 50 (Yes in step S101), the reference lock processing unit 403 checks the lock type that locks the resource (step S108). In this case, since the lock type is S-lock (No in step S108), the reference lock processing unit 403 adds a task entry to the lock column (L) of the exclusive control table 50 (step S109).

そして、応答済みのため(ステップS110でYes)、参照ロック処理部403は、処理を終了する。 Then, since the response has been made (Yes in step S110), the reference lock processing unit 403 ends the process.

(3)アンロック要求
図8は、第1の実施形態におけるアンロック要求に関する動作の一例を示すシーケンス図である。
(3) Unlock request FIG. 8 is a sequence diagram showing an example of an operation related to the unlock request in the first embodiment.

まず、要求元(例えば、タスク)が、ロック制御部20に、資源のアンロック要求を送信する。 First, a request source (for example, a task) transmits a resource unlock request to the lock control unit 20.

ロック制御部20は、Sロック要求ではないので(ステップS401でNo)、アンロック要求を、排他制御装置40に送信する(ステップS407)。 Since the lock control unit 20 is not the S lock request (No in step S401), the lock control unit 20 transmits the unlock request to the exclusive control device 40 (step S407).

アンロック要求を受け取った排他制御装置40のコマンド振り分け部401は、アンロック要求をアンロック処理部405に送信する。 Upon receiving the unlock request, the command distribution unit 401 of the exclusive control device 40 transmits the unlock request to the unlock processing unit 405.

アンロック処理部405は、排他制御テーブル50からタスクエントリを削除する(ステップS301)。 The unlock processing unit 405 deletes the task entry from the exclusive control table 50 (step S301).

そして、アンロック処理部405は、アンロック完了の応答を作成し、ロックテーブル制御部402を介して、アンロック要求を送信してきた情報処理装置10に送信する(ステップS302)。 Then, the unlock processing unit 405 creates an unlock completion response and sends it to the information processing apparatus 10 that has sent the unlock request via the lock table control unit 402 (step S302).

排他制御装置通信部202は、応答が要求元宛のため(ステップS501でYes)、応答を要求元に送信する(ステップS502)。 Since the response is addressed to the request source (Yes in step S501), the exclusive control device communication unit 202 transmits the response to the request source (step S502).

ロック可能なタスクがない場合(ステップS303でNo)、アンロック処理部405は、処理を終了する。 When there is no task that can be locked (No in step S303), the unlock processing unit 405 ends the processing.

ここまでの動作が、アンロック要求に関する動作である。 The operation up to this point is the operation related to the unlock request.

ただし、本実施形態のアンロック処理部405は、さらに次の動作を実行する。 However, the unlock processing unit 405 of this embodiment further executes the following operation.

ロック可能なタスクがある場合(ステップS303でYes)、アンロック処理部405は、次のように動作する。 When there is a lockable task (Yes in step S303), the unlock processing unit 405 operates as follows.

Xロックがない場合(ステップS304でNo)、アンロック処理部405は、S資源か否かを判定する(ステップS307)。 When there is no X lock (No in step S304), the unlock processing unit 405 determines whether or not it is an S resource (step S307).

S資源の場合(ステップS307でYes)、アンロック処理部405は、疑似エントリを登録する(ステップS308)。 In the case of S resource (Yes in step S307), the unlock processing unit 405 registers the pseudo entry (step S308).

そして、アンロック処理部405は、全ての情報処理装置10に、ロック登録通知を送信する(ステップS309)。 Then, the unlock processing unit 405 transmits the lock registration notification to all the information processing devices 10 (step S309).

排他制御装置通信部202は、ロックテーブル30にその資源に関する情報を登録する。そして、登録後、排他制御装置通信部202は、更新完了の応答を送信する。 The exclusive control device communication unit 202 registers information regarding the resource in the lock table 30. Then, after registration, the exclusive control device communication unit 202 transmits a response of update completion.

アンロック処理部405は、全ての情報処理装置10から更新完了の応答が送信されてくるのを待つ(ステップS310)。そして、アンロック処理部405は、ステップS305に進む。 The unlock processing unit 405 waits for all the information processing apparatuses 10 to send the response of the update completion (step S310). Then, the unlock processing unit 405 proceeds to step S305.

また、Xロックがある場合(ステップS304でYes)、又は、S資源でない場合(ステップS307でNo)、アンロック処理部405は、ステップS305に進む。 If there is an X lock (Yes in step S304) or if it is not an S resource (No in step S307), the unlock processing unit 405 proceeds to step S305.

そして、アンロック処理部405は、Sロック要求のタスクのタスクエントリを、排他制御テーブル50のロック列(L)に追加する(ステップS305)。 Then, the unlock processing unit 405 adds the task entry of the task of the S lock request to the lock column (L) of the exclusive control table 50 (step S305).

そして、アンロック処理部405は、ロックテーブル制御部402を介して、ロック成功の応答を、ロック列(L)に追加された要求を送信してきた情報処理装置10に送信する(ステップS306)。 Then, the unlock processing unit 405 transmits a lock success response to the information processing apparatus 10 that has transmitted the request added to the lock row (L) via the lock table control unit 402 (step S306).

(4)Sロック要求(Sロックをアンロック後で、Xロックが発生していない場合)
図9は、第1の実施形態におけるSロックをアンロック後にXロックが発生していない資源に対するSロック要求に関する動作の一例を示すシーケンス図である。
(4) S lock request (when X lock is not generated after unlocking S lock)
FIG. 9 is a sequence diagram showing an example of an operation relating to an S lock request for a resource for which an X lock has not occurred after unlocking the S lock in the first embodiment.

まず、要求元(例えば、タスク)が、ロック制御部20に、資源のSロック要求を送信する。 First, a request source (for example, a task) sends an S lock request for a resource to the lock control unit 20.

ロック制御部20は、Sロック要求のため(ステップS401でYes)、ロックテーブル30を検索する(ステップS402)。 Since the lock control unit 20 is the S lock request (Yes in step S401), the lock control unit 20 searches the lock table 30 (step S402).

ロック制御部20は、ロックテーブル30における資源に関する情報の登録状態を確認する。 The lock control unit 20 confirms the registration state of the resource-related information in the lock table 30.

資源に関する情報が、ロックテーブル30に登録されているので(ステップS403でYes)、ロック制御部20は、ロック成功の応答を要求元に送信する(ステップS404)。 Since the information about the resource is registered in the lock table 30 (Yes in step S403), the lock control unit 20 transmits a lock success response to the request source (step S404).

そして、ロック制御部200は、応答済みの情報を付加して、Sロック要求を、排他制御装置40に送信する(ステップS406)。つまり、ロック制御部200は、Sロック要求(応答済み)を排他制御装置40に送信する。 Then, the lock control unit 200 adds the information indicating that the response has been made and transmits the S lock request to the exclusive control device 40 (step S406). That is, the lock control unit 200 transmits the S lock request (already answered) to the exclusive control device 40.

Sロック要求(応答済み)を受け取った排他制御装置40のコマンド振り分け部401は、参照ロック処理部403に、Sロック要求を送信する。 The command distribution unit 401 of the exclusive control device 40 that has received the S lock request (already answered) transmits the S lock request to the reference lock processing unit 403.

参照ロック処理部403は、要求された資源に関する情報が、排他制御テーブル50にあるため(ステップS101でYes)、資源エントリのロック列(L)にXロックがあるか否かを調べる(ステップS108)。今の場合、ロック列(L)にはXロックがないため(ステップS108でNo)、参照ロック処理部403は、排他制御テーブル50のロック列(L)にタスクエントリを追加する(ステップS109)。 The reference lock processing unit 403 checks whether or not there is an X lock in the lock column (L) of the resource entry because the exclusive control table 50 has information regarding the requested resource (Yes in step S101) (step S108). ). In this case, since there is no X lock in the lock column (L) (No in step S108), the reference lock processing unit 403 adds the task entry to the lock column (L) of the exclusive control table 50 (step S109). ..

そして、参照ロック処理部403は、応答済みか否かを確認する(ステップS110)。 Then, the reference lock processing unit 403 confirms whether or not a response has been made (step S110).

応答済みのため(ステップS110でYes)、参照ロック処理部403は、処理を終了する。 Since the response has been made (Yes in step S110), the reference lock processing unit 403 ends the process.

(5)Xロック要求(Sロックが存在する場合)
図10は、第1の実施形態におけるSロックが存在する資源に対するXロック要求に関する動作の一例を示すシーケンス図である。
(5) X lock request (when S lock exists)
FIG. 10 is a sequence diagram showing an example of an operation relating to an X lock request for a resource having an S lock in the first embodiment.

まず、要求元(例えば、タスク)が、ロック制御部20に、資源のXロック要求を送信する。 First, a request source (for example, a task) sends an X lock request for a resource to the lock control unit 20.

ロック制御部20は、要求がSロック要求ではないため(ステップS401でNo)、Xロック要求を排他制御装置40へ送信する(ステップS407)。 Since the request is not the S lock request (No in step S401), the lock control unit 20 transmits the X lock request to the exclusive control device 40 (step S407).

Xロック要求を受け取った排他制御装置40のコマンド振り分け部401は、更新ロック処理部404に、Xロック要求を送信する。 Upon receiving the X lock request, the command distribution unit 401 of the exclusive control device 40 transmits the X lock request to the update lock processing unit 404.

更新ロック処理部404は、要求された資源に関する情報が排他制御テーブル50に存在するため(ステップS201でYes)、資源エントリのロック列(L)のタスクエントリのロック種別を確認する(ステップS202)。資源をロックしているタスクのロック種別がXロックではないため(ステップS202でNo)、更新ロック処理部404は、ロック削除通知を作成し、ロックテーブル制御部402を介して、全ての情報処理装置10に送信する(ステップS203)。そして、更新ロック処理部404は、情報処理装置10からの応答を待つ。 The update lock processing unit 404 confirms the lock type of the task entry of the lock column (L) of the resource entry because the information regarding the requested resource exists in the exclusive control table 50 (Yes in step S201) (step S202). .. Since the lock type of the task that locks the resource is not X-lock (No in step S202), the update lock processing unit 404 creates a lock deletion notification, and all information processing is performed via the lock table control unit 402. It transmits to the apparatus 10 (step S203). Then, the update lock processing unit 404 waits for a response from the information processing device 10.

排他制御装置通信部202は、受け取った通知が要求元宛か否かを判定する(ステップS501)。要求元宛でないため(ステップS501でNo)、排他制御装置通信部202は、通知が追加か否かを判定する(ステップS503)。ここでは、追加ではないため(ステップS503でNo)、排他制御装置通信部202は、ロックテーブル30から資源に関する情報を削除する(ステップS504)。そして、排他制御装置通信部202は、排他制御装置40に、更新完了を送信する(ステップS506)。 The exclusive control device communication unit 202 determines whether the received notification is addressed to the request source (step S501). Since it is not addressed to the request source (No in step S501), the exclusive control device communication unit 202 determines whether or not the notification is added (step S503). Here, since it is not an addition (No in step S503), the exclusive control device communication unit 202 deletes the information about the resource from the lock table 30 (step S504). Then, the exclusive control device communication unit 202 transmits the update completion to the exclusive control device 40 (step S506).

全ての情報処理装置10から応答を受け取ると、更新ロック処理部404は、疑似エントリを削除する(ステップS204)。 Upon receiving the responses from all the information processing devices 10, the update lock processing unit 404 deletes the pseudo entry (step S204).

そして、更新ロック処理部404は、ロック列(L)にタスクがあるか否かを確認する(ステップS212)。 Then, the update lock processing unit 404 confirms whether or not there is a task in the lock row (L) (step S212).

タスクがあるため(ステップS212でYes)、更新ロック処理部404は、資源エントリの待ち列(W)にXロックを要求したタスクのタスクエントリを追加する(ステップS209)。 Since there is a task (Yes in step S212), the update lock processing unit 404 adds the task entry of the task requesting the X lock to the resource entry queue (W) (step S209).

そして、更新ロック処理部404は、ロックテーブル制御部402を介して、Xロック要求を送信してきた情報処理装置10に、ロック待ちの応答を送信する(ステップS210)。 Then, the update lock processing unit 404 transmits a lock wait response to the information processing apparatus 10 that has transmitted the X lock request via the lock table control unit 402 (step S210).

排他制御装置通信部202は、応答が要求元宛のため(ステップS501でYes、要求元に、応答を送信する(ステップS502)。 Since the response is addressed to the request source (Yes in step S501), the exclusive control device communication unit 202 transmits the response to the request source (step S502).

(6)Xロック要求(Sロックをアンロック後でXロックされていない場合)
図11は、第1の実施形態におけるSロック及びXロックがない資源に対するXロック要求に関する動作の一例を示すシーケンス図である。具体的には、以下で説明する動作は、図8を用いて説明した「(3)Sロックのアンロック」後の状態から開始する動作である。
(6) X lock request (when S lock is not unlocked after X lock is unlocked)
FIG. 11 is a sequence diagram showing an example of an operation related to an X lock request for a resource without an S lock and an X lock according to the first embodiment. Specifically, the operation described below is an operation started from the state after “(3) unlocking the S lock” described with reference to FIG.

まず、要求元(例えば、タスク)が、ロック制御部20に、資源のXロック要求を送信する。 First, a request source (for example, a task) sends an X lock request for a resource to the lock control unit 20.

ロック制御部20は、要求がSロック要求ではないため(ステップS401でNo)、Xロック要求を、排他制御装置40に送信する(ステップS407)。 Since the request is not the S lock request (No in step S401), the lock control unit 20 transmits the X lock request to the exclusive control device 40 (step S407).

Xロック要求を受け取った排他制御装置40のコマンド振り分け部401は、更新ロック処理部404に、Xロック要求を送信する。 Upon receiving the X lock request, the command distribution unit 401 of the exclusive control device 40 transmits the X lock request to the update lock processing unit 404.

更新ロック処理部404は、要求された資源に関する情報が排他制御テーブル50に存在するため(ステップS201でYes)、資源エントリのロック列(L)のタスクエントリのロック種別を確認する(ステップS202)。資源はXロックではないため(ステップS202でNo)、更新ロック処理部404は、ロック削除通知を作成し、ロックテーブル制御部402を介して、情報処理装置10に送信する(ステップS203)。そして、更新ロック処理部404は、情報処理装置10からの応答を待つ。 The update lock processing unit 404 confirms the lock type of the task entry of the lock column (L) of the resource entry because the information regarding the requested resource exists in the exclusive control table 50 (Yes in step S201) (step S202). .. Since the resource is not an X lock (No in step S202), the update lock processing unit 404 creates a lock deletion notification and sends it to the information processing device 10 via the lock table control unit 402 (step S203). Then, the update lock processing unit 404 waits for a response from the information processing device 10.

排他制御装置通信部202は、受け取った通知が要求元宛か否かを判定する(ステップS501)。要求元宛ではないため(ステップS501でNo)、排他制御装置通信部202は、通知が追加か否かを判定する(ステップS503)。ここでは、追加ではないため(ステップS503でNo)、排他制御装置通信部202は、ロックテーブル30から資源に関する情報を削除する(ステップS504)。そして、排他制御装置通信部202は、排他制御装置40に、更新完了を送信する(ステップS506)。 The exclusive control device communication unit 202 determines whether the received notification is addressed to the request source (step S501). Since it is not addressed to the request source (No in step S501), the exclusive control device communication unit 202 determines whether or not the notification is added (step S503). Here, since it is not an addition (No in step S503), the exclusive control device communication unit 202 deletes the information about the resource from the lock table 30 (step S504). Then, the exclusive control device communication unit 202 transmits the update completion to the exclusive control device 40 (step S506).

全ての情報処理装置10から応答を受け取ると、更新ロック処理部404は、疑似エントリを削除する(ステップS204)。 Upon receiving the responses from all the information processing devices 10, the update lock processing unit 404 deletes the pseudo entry (step S204).

そして、更新ロック処理部404は、ロック列(L)にタスクがあるか否かを確認する(ステップS212)。 Then, the update lock processing unit 404 confirms whether or not there is a task in the lock row (L) (step S212).

タスクがないため(ステップS212でNo)、更新ロック処理部404は、資源エントリのロック列(L)に、Xロックを要求したタスクのタスクエントリを追加する(ステップS207)。そして、更新ロック処理部404は、ロックテーブル制御部402を介して、ロック成功の応答を、Xロック要求を送信してきた情報処理装置10に送信する(ステップS208)。 Since there is no task (No in step S212), the update lock processing unit 404 adds the task entry of the task requesting the X lock to the lock row (L) of the resource entry (step S207). Then, the update lock processing unit 404 transmits a lock success response to the information processing apparatus 10 that has transmitted the X lock request via the lock table control unit 402 (step S208).

排他制御装置通信部202は、応答が要求元宛のため(ステップS501でYes)、応答を要求元に送信する(ステップS502)。 Since the response is addressed to the request source (Yes in step S501), the exclusive control device communication unit 202 transmits the response to the request source (step S502).

(7)Xロック要求(Xロックされている場合)
図19は、第1の実施形態におけるXロックされている資源に対するXロック要求に関する動作の一例を示すシーケンス図である。
(7) X lock request (when X locked)
FIG. 19 is a sequence diagram showing an example of an operation relating to an X lock request for an X locked resource according to the first embodiment.

まず、要求元(例えば、タスク)が、ロック制御部20に、資源のXロック要求を送信する。 First, a request source (for example, a task) sends an X lock request for a resource to the lock control unit 20.

ロック制御部20は、要求がSロック要求ではないため(ステップS401でNo)、Xロック要求を排他制御装置40へ送信する(ステップS407)。 Since the request is not the S lock request (No in step S401), the lock control unit 20 transmits the X lock request to the exclusive control device 40 (step S407).

Xロック要求を受け取った排他制御装置40のコマンド振り分け部401は、更新ロック処理部404に、Xロック要求を送信する。 Upon receiving the X lock request, the command distribution unit 401 of the exclusive control device 40 transmits the X lock request to the update lock processing unit 404.

更新ロック処理部404は、要求された資源に関する情報が排他制御テーブル50に存在するため(ステップS201でYes)、資源エントリのロック列(L)のタスクエントリのロック種別を確認する(ステップS202)。資源はXロックのため(ステップS202でYes)、更新ロック処理部404は、資源エントリの待ち列(W)にXロックを要求したタスクのタスクエントリを追加する(ステップS209)。 The update lock processing unit 404 confirms the lock type of the task entry of the lock column (L) of the resource entry because the information regarding the requested resource exists in the exclusive control table 50 (Yes in step S201) (step S202). .. Since the resource is X-locked (Yes in step S202), the update lock processing unit 404 adds the task entry of the task requesting the X-lock to the queue (W) of the resource entry (step S209).

そして、更新ロック処理部404は、ロックテーブル制御部402を介して、Xロック要求を送信してきた情報処理装置10に、ロック待ちの応答を送信する(ステップS210)。 Then, the update lock processing unit 404 transmits a lock wait response to the information processing apparatus 10 that has transmitted the X lock request via the lock table control unit 402 (step S210).

排他制御装置通信部202は、応答が要求元宛のため(ステップS501でYes)、要求元に、応答を送信する(ステップS502)。 Since the response is addressed to the request source (Yes in step S501), the exclusive control device communication unit 202 transmits the response to the request source (step S502).

(8)Sロック要求(Xロックされている資源の場合)
図20は、第1の実施形態におけるXロックされている資源に対するSロック要求に関する動作の一例を示すシーケンス図である。
(8) S lock request (for X locked resource)
FIG. 20 is a sequence diagram showing an example of an operation relating to an S lock request for an X-locked resource in the first embodiment.

まず、要求元(例えば、タスク)が、ロック制御部20に、資源のSロック要求を送信する。 First, a request source (for example, a task) sends an S lock request for a resource to the lock control unit 20.

ロック制御部20は、ロックテーブル30における資源に関する情報の登録状態を確認する。 The lock control unit 20 confirms the registration state of the resource-related information in the lock table 30.

すなわち、ロック制御部20は、要求がSロック要求のため(ステップS401でYes)、ロックテーブル30を検索する(ステップS402)。 That is, since the request is the S lock request (Yes in step S401), the lock control unit 20 searches the lock table 30 (step S402).

要求された資源に関する情報は、ロックテーブル30に登録されていないので(ステップS403でNo)、ロック制御部20は、未応答の情報を付加して、Sロック要求を、排他制御装置40に送信する(ステップS405)。つまり、ロック制御部20は、Sロック要求(未応答)を排他制御装置40に送信する。 Since the information regarding the requested resource is not registered in the lock table 30 (No in step S403), the lock control unit 20 adds the unacknowledged information and transmits the S lock request to the exclusive control device 40. Yes (step S405). That is, the lock control unit 20 transmits the S lock request (not responded) to the exclusive control device 40.

Sロック要求(未応答)を受け取った排他制御装置40のコマンド振り分け部401は、参照ロック処理部403に、Sロック要求を送信する。 The command distribution unit 401 of the exclusive control device 40 that has received the S lock request (not responded) transmits the S lock request to the reference lock processing unit 403.

参照ロック処理部403は、Sロック要求の資源に関する情報が排他制御テーブル50に存在するため(ステップS101でYes)、資源をロックしているロック種別を調べる(ステップS108)。 Since the information on the resource of the S lock request exists in the exclusive control table 50 (Yes in step S101), the reference lock processing unit 403 checks the lock type that locks the resource (step S108).

今の場合、ロック種別はXロックなので(ステップS108でYes)、参照ロック処理部403は、要求されたタスクのタスクエントリを待ち列(W)に追加する(ステップS112)。 In this case, since the lock type is X-lock (Yes in step S108), the reference lock processing unit 403 adds the task entry of the requested task to the queue (W) (step S112).

そして、参照ロック処理部403は、ロックテーブル制御部402を介して、ロック待ちの応答を、Sロック要求を送信してきた情報処理装置10に送信する(ステップS113)。 Then, the reference lock processing unit 403 transmits a lock wait response to the information processing apparatus 10 that has transmitted the S lock request via the lock table control unit 402 (step S113).

情報処理装置10の排他制御装置通信部202は、受信した応答が要求元宛のため(ステップS501でYes)、応答を要求元に送信する(ステップS502)。 Since the received response is addressed to the request source (Yes in step S501), the exclusive control device communication unit 202 of the information processing device 10 transmits the response to the request source (step S502).

(9)Sロック要求(Xロックされた後、Xロックがアンロックされている場合)
図21は、第1の実施形態におけるXロックされた後にアンロックされた資源に対するSロック要求に関する動作の一例を示すシーケンス図である。
(9) S lock request (when X lock is unlocked after X lock)
FIG. 21 is a sequence diagram showing an example of an operation relating to an S lock request for a resource unlocked after being X-locked in the first embodiment.

まず、要求元(例えば、タスク)が、ロック制御部20に、資源のSロック要求を送信する。 First, a request source (for example, a task) sends an S lock request for a resource to the lock control unit 20.

ロック制御部20は、Sロック要求のため(ステップS401でYes)、ロックテーブル30を検索する(ステップS402)。 Since the lock control unit 20 is the S lock request (Yes in step S401), the lock control unit 20 searches the lock table 30 (step S402).

ロック制御部20は、ロックテーブル30における資源に関する情報の登録状態を確認する。 The lock control unit 20 confirms the registration state of the resource-related information in the lock table 30.

資源に関する情報が、ロックテーブル30に登録されていないので(ステップS403でNo)、ロック制御部20は、未応答の情報を付加して、Sロック要求を、排他制御装置40に送信する(ステップS406)。つまり、ロック制御部200は、Sロック要求(未応答)を排他制御装置40に送信する。 Since the information regarding the resource is not registered in the lock table 30 (No in step S403), the lock control unit 20 adds the unacknowledged information and transmits the S lock request to the exclusive control device 40 (step S403). S406). That is, the lock control unit 200 transmits the S lock request (not responded) to the exclusive control device 40.

Sロック要求(未応答)を受け取った排他制御装置40のコマンド振り分け部401は、参照ロック処理部403に、Sロック要求を送信する。 The command distribution unit 401 of the exclusive control device 40 that has received the S lock request (not responded) transmits the S lock request to the reference lock processing unit 403.

参照ロック処理部403は、要求された資源に関する情報が、排他制御テーブル50にあるため(ステップS101でYes)、資源エントリのロック列(L)にXロックがあるか否かを調べる(ステップS108)。今の場合、ロック列(L)にはXロックがないため(ステップS108でNo)、参照ロック処理部403は、排他制御テーブル50のロック列(L)にタスクエントリを追加する(ステップS109)。 The reference lock processing unit 403 checks whether or not there is an X lock in the lock column (L) of the resource entry because the exclusive control table 50 has information regarding the requested resource (Yes in step S101) (step S108). ). In this case, since there is no X lock in the lock column (L) (No in step S108), the reference lock processing unit 403 adds the task entry to the lock column (L) of the exclusive control table 50 (step S109). ..

そして、参照ロック処理部403は、応答済みか否かを確認する(ステップS110)。 Then, the reference lock processing unit 403 confirms whether or not a response has been made (step S110).

応答済みでないため(ステップS110でNo)、参照ロック処理部403は、ロックテーブル制御部402を介して、ロック成功の応答を、Sロック要求を送信してきた情報処理装置10に送信する(ステップS111)。そして、参照ロック処理部403は、処理を終了する。 Since the response has not been received (No in step S110), the reference lock processing unit 403 transmits a response of the lock success to the information processing apparatus 10 that has transmitted the S lock request via the lock table control unit 402 (step S111). ). Then, the reference lock processing unit 403 ends the process.

情報処理装置10の排他制御装置通信部202は、受信した応答が要求元宛のため(ステップS501でYes)、応答を要求元に送信する(ステップS502)。 Since the received response is addressed to the request source (Yes in step S501), the exclusive control device communication unit 202 of the information processing device 10 transmits the response to the request source (step S502).

(10)Xロック要求(未登録の資源の場合)
図22は、第1の実施形態における未登録の資源に対するXロック要求に関する動作の一例を示すシーケンス図である。
(10) X lock request (for unregistered resources)
FIG. 22 is a sequence diagram showing an example of an operation relating to an X lock request for an unregistered resource according to the first embodiment.

まず、要求元(例えば、タスク)が、ロック制御部20に、資源のXロック要求を送信する。 First, a request source (for example, a task) sends an X lock request for a resource to the lock control unit 20.

ロック制御部20は、要求がSロック要求ではないため(ステップS401でNo)、Xロック要求を排他制御装置40へ送信する(ステップS407)。 Since the request is not the S lock request (No in step S401), the lock control unit 20 transmits the X lock request to the exclusive control device 40 (step S407).

Xロック要求を受け取った排他制御装置40のコマンド振り分け部401は、更新ロック処理部404に、Xロック要求を送信する。 Upon receiving the X lock request, the command distribution unit 401 of the exclusive control device 40 transmits the X lock request to the update lock processing unit 404.

更新ロック処理部404は、要求された資源に関する情報が排他制御テーブル50に存在しないため(ステップS201でNo)、その資源に関する情報を排他制御テーブル50に登録する(ステップS206)。 The update lock processing unit 404 registers the information on the resource in the exclusive control table 50 (step S206) because the information on the requested resource does not exist in the exclusive control table 50 (No in step S201).

そして、更新ロック処理部404は、ロック列(L)に、要求されたタスクのタスクエントリ(Xロックのタスクエントリ)を登録する(ステップS207)。 Then, the update lock processing unit 404 registers the task entry of the requested task (X lock task entry) in the lock row (L) (step S207).

そして、更新ロック処理部404は、ロックテーブル制御部402を介して、ロック成功の応答を、情報処理装置10に送信する。 Then, the update lock processing unit 404 transmits a lock success response to the information processing apparatus 10 via the lock table control unit 402.

情報処理装置10の排他制御装置通信部202は、受信した応答が要求元宛のため(ステップS501でYes)、応答を要求元に送信する(ステップS502)。 Since the received response is addressed to the request source (Yes in step S501), the exclusive control device communication unit 202 of the information processing device 10 transmits the response to the request source (step S502).

[効果の説明]
次に、第1の実施形態の効果について説明する。
[Explanation of effect]
Next, the effect of the first embodiment will be described.

第1に実施形態に係る情報処理システム100は、情報処理装置10と排他制御装置40との通信に掛かる時間を削減するとの効果を奏する。 The information processing system 100 according to the first embodiment has an effect of reducing the time required for communication between the information processing device 10 and the exclusive control device 40.

その理由は、次のとおりである。 The reason is as follows.

排他制御装置40は、ロックテーブル30に情報が登録されていない資源に対するSロック要求を受信すると、全ての情報処理装置10に、ロック登録通知を送信する。排他制御装置40は、特に、S資源に対して、上記の処理を実行する。 When the exclusive control device 40 receives the S lock request for the resource whose information is not registered in the lock table 30, the exclusive control device 40 transmits a lock registration notification to all the information processing devices 10. The exclusive control device 40 particularly executes the above-described processing for the S resource.

情報処理装置10のロック制御部20(排他制御装置通信部202)は、この通知を基に、ロックテーブル30にSロックとなった資源に関する情報を保存する。 Based on this notification, the lock control unit 20 (exclusive control device communication unit 202) of the information processing device 10 saves the information on the S-locked resource in the lock table 30.

そして、情報処理装置10のロック制御部20(コマンド解析部201)が、要求元からロックテーブル30に情報が登録されている資源に対するSロック要求を受けたとき、排他制御装置40に要求を送信する前に、要求元にロック成功の応答を送信する。このように第1の実施形態に係るロック制御部20は、資源のSロックに関して、排他制御装置40との通信に掛かる時間を削減して、要求元にロック成功の応答を送信できるためである。 Then, when the lock control unit 20 (command analysis unit 201) of the information processing device 10 receives an S lock request for the resource whose information is registered in the lock table 30 from the request source, it sends the request to the exclusive control device 40. Send a lock success response to the requestor. In this way, the lock control unit 20 according to the first embodiment can reduce the time required for communication with the exclusive control device 40 regarding the S-lock of the resource, and can transmit a lock success response to the request source. ..

この結果、情報処理装置10の要求元は、動作の時間を削減できる。 As a result, the request source of the information processing device 10 can reduce the operation time.

このように、情報処理システム100は、情報処理装置10における動作の時間を削減できる。 In this way, the information processing system 100 can reduce the operation time of the information processing device 10.

さらに、コマンド解析部201は、要求元に応答後、排他制御装置40に、「Sロックの要求(応答済み)」を送信する。排他制御装置40は、この要求を基に、排他制御テーブル50の資源に関する情報を修正する。ただし、排他制御装置40は、情報処理装置10には、応答しない。そのため、排他制御装置40は、応答の通信及び処理に必要な時間を削減できる。 Further, the command analysis unit 201, after responding to the request source, transmits “S lock request (already answered)” to the exclusive control device 40. The exclusive control device 40 corrects the information regarding the resources in the exclusive control table 50 based on this request. However, the exclusive control device 40 does not respond to the information processing device 10. Therefore, the exclusive control device 40 can reduce the time required for response communication and processing.

さらに、情報処理装置10は、排他制御装置40からの応答に対応する動作が不要となる。そのため、情報処理装置10は、応答の通信及び処理に必要な時間を削減できる。 Further, the information processing device 10 does not need to perform the operation corresponding to the response from the exclusive control device 40. Therefore, the information processing device 10 can reduce the time required for response communication and processing.

<その他の実施形態>
ここまでの説明において、情報処理システム100は、1台の排他制御装置40を含むとして説明した。しかし、情報処理システム100は、複数台の排他制御装置40を含んでもよい。この場合、排他制御装置40は、分担して資源の排他処理を制御してもよい。
<Other embodiments>
In the above description, the information processing system 100 has been described as including one exclusive control device 40. However, the information processing system 100 may include a plurality of exclusive control devices 40. In this case, the exclusive control device 40 may share the resource and control the exclusive processing of the resources.

また、ここまでの説明において、ロック制御部20が、ロックテーブル30を含むとして説明した。しかし、情報処理装置10において、ロックテーブル30の位置は、ロック制御部20に限られない。例えば、ロックテーブル30は、他の構成、例えば、OSに含まれてもよい。この場合、OSが、ロック制御部20に相当する機能を含んでもよい。 Further, in the above description, the lock control unit 20 has been described as including the lock table 30. However, in the information processing device 10, the position of the lock table 30 is not limited to the lock control unit 20. For example, the lock table 30 may be included in another configuration, for example, the OS. In this case, the OS may include a function corresponding to the lock control unit 20.

<実施形態の概要>
図17は、本発明における情報処理システム100の最小構成である情報処理システム101の構成の一例を示すブロック図である。
<Outline of Embodiment>
FIG. 17 is a block diagram showing an example of the configuration of the information processing system 101 which is the minimum configuration of the information processing system 100 according to the present invention.

情報処理システム101は、複数の情報処理装置11と、排他制御装置41とを含む。 The information processing system 101 includes a plurality of information processing devices 11 and an exclusive control device 41.

情報処理装置11は、要求処理部211と、資源情報処理部212とを含む。要求処理部211の一例は、コマンド解析部201である。資源情報処理部212の一例は、排他制御装置通信部202である。 The information processing device 11 includes a request processing unit 211 and a resource information processing unit 212. An example of the request processing unit 211 is the command analysis unit 201. An example of the resource information processing unit 212 is the exclusive control device communication unit 202.

また、排他制御装置41は、情報通信部412と、参照ロック処理部413とを含む。情報通信部412の一例は、ロックテーブル制御部402である。参照ロック処理部413の一例は、参照ロック処理部403である。 The exclusive control device 41 also includes an information communication unit 412 and a reference lock processing unit 413. An example of the information communication unit 412 is the lock table control unit 402. An example of the reference lock processing unit 413 is the reference lock processing unit 403.

参照ロック処理部413は、情報処理装置11から資源を参照するための要求である参照ロック要求を受信する。参照ロック要求の一例は、参照ロック要求(未応答)及び参照ロック(応答済み)である。 The reference lock processing unit 413 receives a reference lock request, which is a request for referring to a resource, from the information processing device 11. An example of the reference lock request is a reference lock request (not responded) and a reference lock (responded).

そして、参照ロック処理部413は、参照ロック要求に対応する資源に関する情報を保持せず、資源が所定の資源の場合に、所定の資源に関する情報を保存する。所定の資源の一例が、S資源である。また、所定の資源に関する情報の一例が、疑似エントリである。 Then, the reference lock processing unit 413 does not hold the information on the resource corresponding to the reference lock request, but saves the information on the predetermined resource when the resource is the predetermined resource. One example of the predetermined resource is the S resource. In addition, an example of information regarding a predetermined resource is a pseudo entry.

そして、参照ロック処理部413は、所定の資源に対応する第1の通知を作成する。第1の通知の一例が、ロック登録通知である。 Then, the reference lock processing unit 413 creates the first notification corresponding to the predetermined resource. An example of the first notification is a lock registration notification.

そして、参照ロック処理部413は、情報処理装置11から第1の通知に対する第1の応答を受信する。第1の応答の一例が、更新完了の応答である。 Then, the reference lock processing unit 413 receives the first response to the first notification from the information processing device 11. An example of the first response is an update completion response.

そして、参照ロック処理部413は、資源のアクセスに関する第1の情報を保存する。第1の情報の一例が、タスクエントリである。 Then, the reference lock processing unit 413 stores the first information regarding access to the resource. An example of the first information is a task entry.

そして、参照ロック処理部413は、資源に関する第2の応答を作成する。第2の応答の一例が、ロック成功の応答である。 Then, the reference lock processing unit 413 creates a second response regarding the resource. An example of the second response is a lock success response.

さらに、参照ロック処理部413は、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が応答済みを示す情報を含む場合に、参照ロック要求に対応する資源に関する第1の情報を保存する。応答済みを示す情報を含む参照ロック要求の一例が、参照ロック要求(応答済み)である。 Further, the reference lock processing unit 413 holds information regarding the resource corresponding to the reference lock request, and when the resource is locked as a reference and the reference lock request includes information indicating that the response has been completed, the resource corresponding to the reference lock request. Save the first information about. An example of the reference lock request including the information indicating that the response has been completed is the reference lock request (response completed).

さらに、参照ロック処理部413は、参照ロック要求に対応する資源に関する情報を保持し、資源が参照としてロックされ、参照ロック要求が未応答を示す情報を含む場合に、参照ロック要求に対応する資源に関する第1の情報を保存する。そして、参照ロック処理部413は、資源に関する第2の応答を作成する。未応答を示す情報を含む参照ロック要求の一例が、参照ロック要求(未応答)である。 Further, the reference lock processing unit 413 holds information regarding the resource corresponding to the reference lock request, and when the resource is locked as a reference and the reference lock request includes information indicating that no response has been received, the resource corresponding to the reference lock request. Save the first information about. Then, the reference lock processing unit 413 creates a second response regarding the resource. An example of a reference lock request including information indicating non-response is a reference lock request (non-response).

情報通信部412は、第1の通知を複数の情報処理装置11に送信する。 The information communication unit 412 transmits the first notification to the plurality of information processing devices 11.

情報通信部412は、第2の応答を、参照ロック要求を送信した情報処理装置11に送信する。 The information communication unit 412 transmits the second response to the information processing device 11 that has transmitted the reference lock request.

要求処理部211は、所定の要求元より資源に関する参照ロック要求を受信する。要求元の一例が、タスクである。 The request processing unit 211 receives a reference lock request regarding a resource from a predetermined request source. An example of a request source is a task.

要求処理部211は、参照ロック要求に対応する資源に関する第2の情報が保存されている場合に、要求元に参照ロック要求に対応する第3の応答を送信する。第2の情報の一例が、ロックテーブル30に保存されている資源IDである。また、第3の応答の一例は、タスクへの応答である。 The request processing unit 211 transmits the third response corresponding to the reference lock request to the request source when the second information regarding the resource corresponding to the reference lock request is stored. An example of the second information is the resource ID stored in the lock table 30. Further, an example of the third response is a response to the task.

そして、要求処理部211は、参照ロック要求を基に応答済みを示す情報を含む参照ロック要求を作成して排他制御装置41に送信する。 Then, the request processing unit 211 creates a reference lock request including information indicating that the response has been completed based on the reference lock request, and transmits the reference lock request to the exclusive control device 41.

また、要求処理部211は、参照ロック要求に対応する資源に関する第2の情報が保存されていない場合に、参照ロック要求を基に未応答を示す情報を含む参照ロック要求を作成して排他制御装置41に送信する。 Further, when the second information regarding the resource corresponding to the reference lock request is not stored, the request processing unit 211 creates a reference lock request including information indicating a non-response based on the reference lock request to perform exclusive control. To the device 41.

資源情報処理部212は、排他制御装置41から第1の通知を受信した場合に、第1の通知に対応する第2の情報を保存し、第1の応答を排他制御装置41に送信する。 When receiving the first notification from the exclusive control device 41, the resource information processing unit 212 saves the second information corresponding to the first notification and transmits the first response to the exclusive control device 41.

さらに、資源情報処理部212は、排他制御装置41から第2の応答を受信した場合に、第2の応答を要求元に送信する。 Further, when the resource information processing unit 212 receives the second response from the exclusive control device 41, the resource information processing unit 212 transmits the second response to the request source.

このように構成された情報処理システム101は、情報処理システム100と同様に、情報処理装置11と排他制御装置41との通信に掛かる時間を削減する効果を奏する。 Like the information processing system 100, the information processing system 101 configured in this way has the effect of reducing the time required for communication between the information processing apparatus 11 and the exclusive control device 41.

その理由は、情報処理システム101に含まれる情報処理装置11及び排他制御装置41が、上記の構成を用いて、第3の情報が保存されている資源に対する参照ロックにおける情報処理装置10及び排他制御装置40と同様の動作を実行するためである。 The reason is that the information processing apparatus 11 and the exclusive control apparatus 41 included in the information processing system 101 use the above configuration and the information processing apparatus 10 and the exclusive control in the reference lock for the resource in which the third information is stored. This is for performing the same operation as the device 40.

<変形例>
以上の説明した情報処理装置10、情報処理装置11、排他制御装置40、及び/又は排他制御装置41の構成について、情報処理装置10及び排他制御装置40を用いて説明する。以下の説明において、情報処理装置10及び/又は排他制御装置40は、情報処理装置11、及び/又は、排他制御装置41と置き換え可能である。
<Modification>
The configurations of the information processing device 10, the information processing device 11, the exclusive control device 40, and/or the exclusive control device 41 described above will be described using the information processing device 10 and the exclusive control device 40. In the following description, the information processing device 10 and/or the exclusive control device 40 can be replaced with the information processing device 11 and/or the exclusive control device 41.

例えば、情報処理装置10及び/又は排他制御装置40の各構成部は、ハードウェア回路で構成されてもよい。 For example, each component of the information processing device 10 and/or the exclusive control device 40 may be configured by a hardware circuit.

また、情報処理装置10及び/又は排他制御装置40において、各構成部は、ネットワークを介して接続された複数の装置を用いて、構成されてもよい。 Further, in the information processing device 10 and/or the exclusive control device 40, each component may be configured using a plurality of devices connected via a network.

また、情報処理装置10及び/又は排他制御装置40において、複数の構成部は、1つのハードウェアで構成されてもよい。 In addition, in the information processing device 10 and/or the exclusive control device 40, the plurality of configuration units may be configured by one piece of hardware.

また、情報処理装置10及び/又は排他制御装置40は、CPU(Central Processing Unit)と、ROM(Read Only Memory)と、RAM(Random Access Memory)とを含むコンピュータ装置として実現されてもよい。情報処理装置10及び排他制御装置40は、上記構成に加え、さらに、入出力接続回路(IOC:Input / Output Circuit)と、ネットワークインターフェース回路(NIC:Network Interface Circuit)とを含むコンピュータ装置として実現されてもよい。 Further, the information processing device 10 and/or the exclusive control device 40 may be realized as a computer device including a CPU (Central Processing Unit), a ROM (Read Only Memory), and a RAM (Random Access Memory). The information processing device 10 and the exclusive control device 40 are realized as a computer device including an input/output connection circuit (IOC: Input/Output Circuit) and a network interface circuit (NIC) in addition to the above configuration. May be.

図18は、本発明における情報処理装置10及び/又は排他制御装置40の変形例である情報処理装置600の構成の一例を示すブロック図である。 FIG. 18 is a block diagram showing an example of the configuration of an information processing device 600 which is a modification of the information processing device 10 and/or the exclusive control device 40 in the present invention.

情報処理装置600は、CPU610と、ROM620と、RAM630と、内部記憶装置640と、IOC650と、NIC680とを含み、コンピュータ装置を構成している。 The information processing device 600 includes a CPU 610, a ROM 620, a RAM 630, an internal storage device 640, an IOC 650, and a NIC 680, and constitutes a computer device.

CPU610は、ROM620からプログラムを読み込む。そして、CPU610は、読み込んだプログラムに基づいて、RAM630と、内部記憶装置640と、IOC650と、NIC680とを制御する。そして、CPU610を含むコンピュータは、これらの構成を制御し、情報処理装置10及び/又は排他制御装置40としての各機能を実現する。すなわち、CPU610を含むコンピュータは、図2に示されているコマンド解析部201及び排他制御装置通信部202としての機能を実現する。あるいは、CPU610を含むコンピュータは、図3に示されているコマンド振り分け部401、ロックテーブル制御部402、参照ロック処理部403、更新ロック処理部404、及び、アンロック処理部405としての機能を実現する。 The CPU 610 reads the program from the ROM 620. Then, the CPU 610 controls the RAM 630, the internal storage device 640, the IOC 650, and the NIC 680 based on the read program. Then, the computer including the CPU 610 controls these configurations and realizes each function as the information processing device 10 and/or the exclusive control device 40. That is, the computer including the CPU 610 realizes the functions of the command analysis unit 201 and the exclusive control device communication unit 202 illustrated in FIG. Alternatively, the computer including the CPU 610 realizes the functions of the command distribution unit 401, the lock table control unit 402, the reference lock processing unit 403, the update lock processing unit 404, and the unlock processing unit 405 illustrated in FIG. To do.

CPU610は、各機能を実現する際に、RAM630又は内部記憶装置640を、プログラムの一時記憶媒体として使用してもよい。 The CPU 610 may use the RAM 630 or the internal storage device 640 as a temporary storage medium of a program when implementing each function.

また、CPU610は、コンピュータで読み取り可能にプログラムを記憶した記憶媒体700が含むプログラムを、図示しない記憶媒体読み取り装置を用いて読み込んでもよい。あるいは、CPU610は、NIC680を介して、図示しない外部の装置からプログラムを受け取り、RAM630に保存して、保存したプログラムを基に動作してもよい。 Further, the CPU 610 may read the program included in the storage medium 700 that stores the program in a computer-readable manner by using a storage medium reading device (not shown). Alternatively, the CPU 610 may receive a program from an external device (not shown) via the NIC 680, store the program in the RAM 630, and operate based on the stored program.

ROM620は、CPU610が実行するプログラム及び固定的なデータを記憶する。ROM620は、例えば、P−ROM(Programmable-ROM)又はフラッシュROMである。 The ROM 620 stores programs executed by the CPU 610 and fixed data. The ROM 620 is, for example, a P-ROM (Programmable-ROM) or a flash ROM.

RAM630は、CPU610が実行するプログラム及びデータを一時的に記憶する。RAM630は、例えば、D−RAM(Dynamic-RAM)である。 The RAM 630 temporarily stores programs and data executed by the CPU 610. The RAM 630 is, for example, a D-RAM (Dynamic-RAM).

内部記憶装置640は、情報処理装置600が長期的に保存するデータ及びプログラムを記憶する。また、内部記憶装置640は、CPU610の一時記憶装置として動作してもよい。内部記憶装置640は、例えば、ハードディスク装置、光磁気ディスク装置、SSD(Solid State Drive)又はディスクアレイ装置である。内部記憶装置640は、ロックテーブル30及び/又は排他制御テーブル50として動作する。 The internal storage device 640 stores data and programs that the information processing device 600 stores for a long time. Further, the internal storage device 640 may operate as a temporary storage device of the CPU 610. The internal storage device 640 is, for example, a hard disk device, a magneto-optical disk device, an SSD (Solid State Drive), or a disk array device. The internal storage device 640 operates as the lock table 30 and/or the exclusive control table 50.

ここで、ROM620と内部記憶装置640は、不揮発性(non-transitory)の記憶媒体である。一方、RAM630は、揮発性(transitory)の記憶媒体である。そして、CPU610は、ROM620、内部記憶装置640、又は、RAM630に記憶されているプログラムを基に動作可能である。つまり、CPU610は、不揮発性記憶媒体又は揮発性記憶媒体を用いて動作可能である。 Here, the ROM 620 and the internal storage device 640 are non-transitory storage media. On the other hand, the RAM 630 is a volatile (transitory) storage medium. The CPU 610 can operate based on the programs stored in the ROM 620, the internal storage device 640, or the RAM 630. That is, the CPU 610 can operate using a non-volatile storage medium or a volatile storage medium.

IOC650は、CPU610と、入力機器660及び表示機器670とのデータを仲介する。IOC650は、例えば、IOインターフェースカード又はUSB(Universal Serial Bus)カードである。さらに、IOC650は、USBのような有線に限らず、無線を用いてもよい。 The IOC 650 mediates data between the CPU 610 and the input device 660 and the display device 670. The IOC 650 is, for example, an IO interface card or a USB (Universal Serial Bus) card. Furthermore, the IOC 650 is not limited to a wired line such as USB, but may be wireless.

入力機器660は、情報処理装置600の操作者からの入力指示を受け取る機器である。入力機器660は、例えば、キーボード、マウス又はタッチパネルである。 The input device 660 is a device that receives an input instruction from the operator of the information processing device 600. The input device 660 is, for example, a keyboard, a mouse, or a touch panel.

表示機器670は、情報処理装置600の操作者に情報を表示する機器である。表示機器670は、例えば、液晶ディスプレイである。 The display device 670 is a device that displays information to the operator of the information processing device 600. The display device 670 is, for example, a liquid crystal display.

NIC680は、ネットワークを介した図示しない他の装置(情報処理装置10又は排他制御装置40)とのデータのやり取りを中継する。NIC680は、例えば、LAN(Local Area Network)カードである。さらに、NIC680は、有線に限らず、無線を用いてもよい。NIC680は、コマンド解析部201及び排他制御装置通信部202の一部として動作する。あるいは、NIC680は、コマンド振り分け部401及びロックテーブル制御部402の一部として動作する。 The NIC 680 relays data exchange with another device (the information processing device 10 or the exclusive control device 40) not shown in the figure via the network. The NIC 680 is, for example, a LAN (Local Area Network) card. Furthermore, the NIC 680 is not limited to being wired and may be wireless. The NIC 680 operates as a part of the command analysis unit 201 and the exclusive control device communication unit 202. Alternatively, the NIC 680 operates as a part of the command distribution unit 401 and the lock table control unit 402.

このように構成された情報処理装置600は、情報処理装置10及び/又は排他制御装置40と同様の効果を得ることができる。 The information processing device 600 configured in this way can obtain the same effects as the information processing device 10 and/or the exclusive control device 40.

その理由は、情報処理装置600のCPU610が、プログラムに基づいて情報処理装置10及び/又は排他制御装置40と同様の機能を実現できるためである。 The reason is that the CPU 610 of the information processing device 600 can realize the same function as the information processing device 10 and/or the exclusive control device 40 based on the program.

なお、情報処理装置600は、情報処理装置10及び排他制御装置40として両方の機能を実現してもよい。例えば、情報処理装置600のCPU610は、情報処理装置10としての機能を実現するプログラムと排他制御装置40としての機能を実現するプログラムとの両方プログラムを並列に実行してもよい。 Note that the information processing device 600 may realize both functions as the information processing device 10 and the exclusive control device 40. For example, the CPU 610 of the information processing device 600 may execute both the program that implements the function of the information processing device 10 and the program that implements the function of the exclusive control device 40 in parallel.

さらに、情報処理装置600は、複数の情報処理装置10としての機能を実現してもよい。例えば、情報処理装置600のCPU610は、情報処理装置10としての機能を実現する複数のプログラムを並列に実行してもよい。 Further, the information processing device 600 may realize the functions of the plurality of information processing devices 10. For example, the CPU 610 of the information processing device 600 may execute a plurality of programs that realize the functions of the information processing device 10 in parallel.

以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成及び詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 Although the present invention has been described with reference to the exemplary embodiments, the present invention is not limited to the above exemplary embodiments. Various modifications that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.

本発明は、疎結合構成のコンピュータシステムに適用可能である。 The present invention can be applied to a loosely coupled computer system.

10 情報処理装置
11 情報処理装置
20 ロック制御部
30 ロックテーブル
40 排他制御装置
41 排他制御装置
50 排他制御テーブル
100 情報処理システム
101 情報処理システム
201 コマンド解析部
202 排他制御装置通信部
211 要求処理部
212 資源情報処理部
401 コマンド振り分け部
402 ロックテーブル制御部
403 参照ロック処理部
404 更新ロック処理部
405 アンロック処理部
412 情報通信部
413 参照ロック処理部
600 情報処理装置
610 CPU
620 ROM
630 RAM
640 内部記憶装置
650 IOC
660 入力機器
670 表示機器
680 NIC
700 記憶媒体
10 information processing device 11 information processing device 20 lock control unit 30 lock table 40 exclusive control device 41 exclusive control device 50 exclusive control table 100 information processing system 101 information processing system 201 command analysis unit 202 exclusive control device communication unit 211 request processing unit 212 Resource information processing unit 401 Command distribution unit 402 Lock table control unit 403 Reference lock processing unit 404 Update lock processing unit 405 Unlock processing unit 412 Information communication unit 413 Reference lock processing unit 600 Information processing device 610 CPU
620 ROM
630 RAM
640 Internal storage device 650 IOC
660 Input device 670 Display device 680 NIC
700 storage medium

Claims (9)

複数の情報処理装置と、前記情報処理装置がアクセスする資源における排他制御を実行する排他制御装置とを含む情報処理システムにおいて、
前記排他制御装置が、
前記情報処理装置から前記資源を参照するための要求であり、要求を依頼した要求元であるタスクを示すタスクIDを含む参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する情報を保持せず、前記資源が所定の前記資源の場合に、所定の前記資源に関する情報を保存し、参照ロックを取得している前記資源に関する情報を保存する前記情報処理装置のロックテーブルに対して前記資源に関する情報を追加するために、前記資源が参照としてロックされたことを示す第1の通知を作成して全ての前記情報処理装置に送信し、前記情報処理装置から前記第1の通知に対する第1の応答を受信し、前記資源のアクセスに関する第1の情報として、前記資源のロック情報を示すデータである排他制御テーブルに、前記タスクIDと、ロック種別と、次タスクとを含むタスクエントリを、要求対象の前記資源毎に、ロック成功の前記タスクを示すロック列又はロック待ちとなっている前記タスクを示す列に保存し、前記資源に関する第2の応答を作成し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が応答済みを示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が未応答を示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、前記資源に関する前記第2の応答を作成する
参照ロック処理手段と、
前記第1の通知を複数の前記情報処理装置に送信し、
前記第2の応答を、前記参照ロック要求を送信した前記情報処理装置に送信する
情報通信手段と
を含み、
前記情報処理装置が、
所定の要求元より前記資源に関する前記参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する第2の情報が保存されている場合に、前記要求元に前記参照ロック要求に対応する第3の応答を送信し、前記参照ロック要求を基に前記応答済みを示す情報を含む前記参照ロック要求を作成して前記排他制御装置に送信し、
前記参照ロック要求に対応する前記資源に関する前記第2の情報が保存されていない場合に、前記参照ロック要求を基に前記未応答を示す情報を含む前記参照ロック要求を作成して前記排他制御装置に送信する
要求処理手段と、
前記排他制御装置から前記第1の通知を受信した場合に、前記第1の通知に対応する前記第2の情報を保存し、前記第1の応答を前記排他制御装置に送信し、
前記排他制御装置から前記第2の応答を受信した場合に、前記第2の応答を前記要求元に送信する
資源情報処理手段と
を含む
情報処理システム。
In an information processing system including a plurality of information processing devices and an exclusive control device that executes exclusive control on resources accessed by the information processing device,
The exclusive control device,
A request for referencing the resource from the information processing device, receiving a reference lock request including a task ID indicating a task that is a requesting source of the request,
When the resource is the predetermined resource without storing the information on the resource corresponding to the reference lock request, the information on the predetermined resource is stored, and the information on the resource for which the reference lock is acquired is stored. In order to add information about the resource to the lock table of the information processing device, the first notification indicating that the resource is locked as a reference is created and transmitted to all the information processing devices, A first response to the first notification is received from the information processing device, and as the first information on access to the resource, the task ID and the exclusive control table, which is data indicating lock information of the resource, A task entry including a lock type and a next task is stored for each resource of the request target in a lock column indicating the task for which lock is successful or a column indicating the task waiting for lock, and Create 2 responses,
The first information corresponding to the reference lock request, when holding the information about the resource corresponding to the reference lock request, locking the resource as a reference, and including the information indicating that the reference lock request has been answered Save the
The first information corresponding to the reference lock request, when holding the information about the resource corresponding to the reference lock request, the resource is locked as a reference, and the reference lock request includes information indicating an unreply And a reference lock processing unit for creating the second response regarding the resource,
Transmitting the first notification to the plurality of information processing devices,
An information communication unit that transmits the second response to the information processing apparatus that has transmitted the reference lock request,
The information processing device is
Receiving the reference lock request for the resource from a predetermined request source,
When the second information regarding the resource corresponding to the reference lock request is stored, a third response corresponding to the reference lock request is transmitted to the request source, and the response is based on the reference lock request. Creating the reference lock request including information indicating the completion and transmitting it to the exclusive control device,
When the second information related to the resource corresponding to the reference lock request is not stored, the exclusive control device creates the reference lock request including the information indicating the non-response based on the reference lock request. Request processing means to send to
When the first notification is received from the exclusive control device, the second information corresponding to the first notification is stored, and the first response is transmitted to the exclusive control device,
An information processing system including: a resource information processing unit that transmits the second response to the request source when the second response is received from the exclusive control device.
前記排他制御装置が、さらに、
前記情報処理装置から前記資源を更新するための要求である更新ロック要求を受信し、
前記更新ロック要求に対応する第2の通知を作成し、前記情報処理装置から前記第2の通知に対応する第1の応答を受信し、所定の前記資源に関する情報を削除し、前記資源に関する前記第1の情報を保存し、前記資源に関する第2の応答を作成する
更新ロック処理手段を含み、
前記情報通信手段が、前記第2の通知を複数の前記情報処理装置に送信し、
前記資源情報処理手段が、前記第2の通知に対応した前記第2の情報を削除し、前記第
1の応答を前記排他制御装置に送信する
請求項1に記載の情報処理システム。
The exclusive control device,
Receiving an update lock request, which is a request for updating the resource, from the information processing device,
Creating a second notification corresponding to the update lock request, receiving a first response corresponding to the second notification from the information processing device, deleting information about the predetermined resource, Including update lock processing means for storing the first information and creating a second response for said resource;
The information communication unit transmits the second notification to a plurality of the information processing devices,
The information processing system according to claim 1, wherein the resource information processing unit deletes the second information corresponding to the second notification and transmits the first response to the exclusive control device.
情報処理装置から資源を参照するための要求であり、要求を依頼した要求元であるタスクを示すタスクIDを含む参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する情報を保持せず、前記資源が所定の前記資源の場合に、所定の前記資源に関する情報を保存し、参照ロックを取得している前記資源に関する情報を保存する情報処理装置のロックテーブルに対して前記資源に関する情報を追加するために、前記資源が参照としてロックされたことを示す第1の通知を作成して全ての情報処理装置に送信し、情報処理装置から前記第1の通知に対する第1の応答を受信し、前記資源のアクセスに関する第1の情報として、前記資源のロック情報を示すデータである排他制御テーブルに、前記タスクIDと、ロック種別と、次タスクとを含むタスクエントリを、要求対象の前記資源毎に、ロック成功の前記タスクを示すロック列又はロック待ちとなっている前記タスクを示す列に保存し、前記資源に関する第2の応答を作成し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が応答済みを示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が未応答を示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、前記資源に関する前記第2の応答を作成し、
前記第1の通知を複数の情報処理装置に送信し、
前記第2の応答を、前記参照ロック要求を送信した情報処理装置に送信する
排他制御装置を含む情報処理システムにおいて、
所定の要求元より前記参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する第2の情報が保存されている場合に、前記要求元に前記参照ロック要求に対応する第3の応答を送信し、前記参照ロック要求を基に前記応答済みを示す情報を含む前記参照ロック要求を作成して前記排他制御装置に送信し、
前記参照ロック要求に対応する前記資源に関する前記第2の情報が保存されていない場合に、前記参照ロック要求を基に前記未応答を示す情報を含む前記参照ロック要求を作成して前記排他制御装置に送信する
要求処理手段と、
前記排他制御装置から前記第1の通知を受信した場合に、前記第1の通知に対応する前記第2の情報を保存し、前記第1の応答を前記排他制御装置に送信し、
前記排他制御装置から前記第2の応答を受信した場合に、前記第2の応答を前記要求元に送信する
資源情報処理手段と
を含む
を含む情報処理装置。
A request for referencing a resource from the information processing device, and a reference lock request including a task ID indicating a task that is the request source of the request is received,
When the resource is the predetermined resource without storing the information on the resource corresponding to the reference lock request, the information on the predetermined resource is stored, and the information on the resource for which the reference lock is acquired is stored. In order to add information regarding the resource to the lock table of the information processing device to be processed, a first notification indicating that the resource is locked as a reference is created and transmitted to all information processing devices. A first response to the first notification is received from the device, and the task ID and the lock type are stored in the exclusive control table, which is data indicating lock information of the resource, as the first information regarding access to the resource. , A next task, and a task entry including a next task are stored in a lock column indicating the task that has been successfully locked or a column indicating the task that is waiting for the lock, for each resource of the request target, and a second response regarding the resource is stored. Create
The first information corresponding to the reference lock request, when holding the information about the resource corresponding to the reference lock request, locking the resource as a reference, and including the information indicating that the reference lock request has been answered Save the
The first information corresponding to the reference lock request, when holding the information about the resource corresponding to the reference lock request, the resource is locked as a reference, and the reference lock request includes information indicating an unreply And create the second response for the resource,
Transmitting the first notification to a plurality of information processing devices,
In an information processing system including an exclusive control device, which transmits the second response to the information processing device which has transmitted the reference lock request,
Receiving the reference lock request from a predetermined request source,
When the second information regarding the resource corresponding to the reference lock request is stored, a third response corresponding to the reference lock request is transmitted to the request source, and the response is based on the reference lock request. Creating the reference lock request including information indicating the completion and transmitting it to the exclusive control device,
When the second information related to the resource corresponding to the reference lock request is not stored, the exclusive control device is created by creating the reference lock request including the information indicating the non-response based on the reference lock request. Request processing means to send to
When the first notification is received from the exclusive control device, the second information corresponding to the first notification is stored, and the first response is transmitted to the exclusive control device,
And a resource information processing unit that transmits the second response to the request source when the second response is received from the exclusive control device.
所定の要求元より資源に関する資源を参照するための要求であり、要求を依頼した要求元であるタスクを示すタスクIDを含む参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する第2の情報が保存されている場合に、前記要求元に前記参照ロック要求に対応する第3の応答を送信し、前記参照ロック要求を基に応答済みを示す情報を含む前記参照ロック要求を作成して排他制御装置に送信し、
前記参照ロック要求に対応する前記資源に関する前記第2の情報が保存されていない場合に、前記参照ロック要求を基に未応答を示す情報を含む前記参照ロック要求を作成して排他制御装置に送信し、
排他制御装置から第1の通知を受信した場合に、前記第1の通知に対応する前記第2の情報を保存し、第1の応答を排他制御装置に送信し、
排他制御装置から第2の応答を受信した場合に、前記第2の応答を前記要求元に送
信する
複数の情報処理装置を含む情報処理システムにおいて、
前記情報処理装置から前記参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する情報を保持せず、前記資源が所定の前記資源の場合に、所定の前記資源に関する情報を保存し、参照ロックを取得している前記資源に関する情報を保存する前記情報処理装置のロックテーブルに対して前記資源に関する情報を追加するために、前記資源が参照としてロックされたことを示す前記第1の通知を作成して全ての前記情報処理装置に送信し、前記情報処理装置から前記第1の通知に対する前記第1の応答を受信し、前記資源のアクセスに関する第1の情報として、前記資源のロック情報を示すデータである排他制御テーブルに、前記タスクIDと、ロック種別と、次タスクとを含むタスクエントリを、要求対象の前記資源毎に、ロック成功の前記タスクを示すロック列又はロック待ちとなっている前記タスクを示す列に保存し、前記資源に関する前記第2の応答を作成し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が前記応答済みを示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が前記未応答を示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、前記資源に関する前記第2の応答を作成する
参照ロック処理手段と、
前記第1の通知を複数の前記情報処理装置に送信し、
前記第2の応答を、前記参照ロック要求を送信した前記情報処理装置に送信する
情報通信手段と
を含む排他制御装置。
A request for referencing a resource related to a resource from a predetermined request source, and receiving a reference lock request including a task ID indicating a task that is a request source requesting the request,
When the second information regarding the resource corresponding to the reference lock request is stored, a third response corresponding to the reference lock request is transmitted to the request source, and a response has been made based on the reference lock request. Creating the reference lock request including information indicating
When the second information related to the resource corresponding to the reference lock request is not stored, the reference lock request including information indicating non-response is created based on the reference lock request and transmitted to the exclusive control device. Then
When the first notification is received from the exclusive control device, the second information corresponding to the first notification is stored, and the first response is transmitted to the exclusive control device,
In an information processing system including a plurality of information processing devices, which transmits the second response to the request source when a second response is received from the exclusive control device,
Receiving the reference lock request from the information processing device,
When the resource is the predetermined resource without storing the information on the resource corresponding to the reference lock request, the information on the predetermined resource is stored, and the information on the resource for which the reference lock is acquired is stored. In order to add information regarding the resource to the lock table of the information processing device, the first notification indicating that the resource is locked as a reference is created and transmitted to all the information processing devices. , The first response to the first notification from the information processing device is received, and the task ID is stored in the exclusive control table, which is data indicating lock information of the resource, as the first information regarding access to the resource. And a task type including a lock type and a next task are stored for each resource as a request target in a lock column indicating the task with a successful lock or a column indicating the task waiting for the lock, and the resource Create the second response for
The first information corresponding to the reference lock request is held when the information about the resource corresponding to the reference lock request is held, the resource is locked as a reference, and the reference lock request includes information indicating the response completion. Save the information,
When the resource is held as a reference and the reference lock request includes the information indicating the non-response, the first information corresponding to the reference lock request is held, Reference lock processing means for storing information and creating the second response for the resource;
Transmitting the first notification to the plurality of information processing devices,
And an information communication unit that transmits the second response to the information processing apparatus that has transmitted the reference lock request.
複数の情報処理装置と、前記情報処理装置がアクセスする資源における排他制御を実行する排他制御装置とを含む情報処理システムにおいて、
前記排他制御装置が、
前記情報処理装置から前記資源を参照するための要求であり、要求を依頼した要求元であるタスクを示すタスクIDを含む参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する情報を保持せず、前記資源が所定の前記資源の場合に、所定の前記資源に関する情報を保存し、参照ロックを取得している前記資源に関する情報を保存する前記情報処理装置のロックテーブルに対して前記資源に関する情報を追加するために、前記資源が参照としてロックされたことを示す第1の通知を作成して全ての前記情報処理装置に送信し、前記情報処理装置から前記第1の通知に対する第1の応答を受信し、前記資源のアクセスに関する第1の情報として、前記資源のロック情報を示すデータである排他制御テーブルに、前記タスクIDと、ロック種別と、次タスクとを含むタスクエントリを、要求対象の前記資源毎に、ロック成功の前記タスクを示すロック列又はロック待ちとなっている前記タスクを示す列に保存し、前記資源に関する第2の応答を作成し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が応答済みを示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が未応答を示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、前記資源に関する前記第2の応答を作成し、
前記第1の通知を複数の前記情報処理装置に送信し、
前記第2の応答を前記参照ロック要求を送信した前記情報処理装置に送信し、
前記情報処理装置が、
所定の要求元より前記資源に関する前記参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する第2の情報が保存されている場合に、前記要求元に前記参照ロック要求に対応する第3の応答を送信し、前記参照ロック要求を基に前記応答済みを示す情報を含む前記参照ロック要求を作成して前記排他制御装置に送信し、
前記参照ロック要求に対応する前記資源に関する前記第2の情報が保存されていない場合に、前記参照ロック要求を基に前記未応答を示す情報を含む前記参照ロック要求を作成して前記排他制御装置に送信し、
前記排他制御装置から前記第1の通知を受信した場合に、前記第1の通知に対応する前記第2の情報を保存し、前記第1の応答を前記排他制御装置に送信し、
前記排他制御装置から前記第2の応答を受信した場合に、前記第2の応答を前記要求
元に送信する
情報処理方法。
In an information processing system including a plurality of information processing devices and an exclusive control device that executes exclusive control on resources accessed by the information processing device,
The exclusive control device,
A request for referencing the resource from the information processing device, receiving a reference lock request including a task ID indicating a task that is a requesting source of the request,
When the resource is the predetermined resource without storing the information on the resource corresponding to the reference lock request, the information on the predetermined resource is stored, and the information on the resource for which the reference lock is acquired is stored. In order to add information about the resource to the lock table of the information processing device, the first notification indicating that the resource is locked as a reference is created and transmitted to all the information processing devices, A first response to the first notification is received from the information processing device, and as the first information on access to the resource, the task ID and the exclusive control table, which is data indicating lock information of the resource, A task entry including a lock type and a next task is stored for each resource of the request target in a lock column indicating the task for which lock is successful or a column indicating the task waiting for lock, and Create 2 responses,
The first information corresponding to the reference lock request, when holding the information about the resource corresponding to the reference lock request, locking the resource as a reference, and including the information indicating that the reference lock request has been answered Save the
The first information corresponding to the reference lock request, when holding the information about the resource corresponding to the reference lock request, the resource is locked as a reference, and the reference lock request includes information indicating an unreply And create the second response for the resource,
Transmitting the first notification to the plurality of information processing devices,
Transmitting the second response to the information processing apparatus that has transmitted the reference lock request,
The information processing device is
Receiving the reference lock request for the resource from a predetermined request source,
When the second information regarding the resource corresponding to the reference lock request is stored, a third response corresponding to the reference lock request is transmitted to the request source, and the response is based on the reference lock request. Creating the reference lock request including information indicating the completion and transmitting it to the exclusive control device,
When the second information related to the resource corresponding to the reference lock request is not stored, the exclusive control device is created by creating the reference lock request including the information indicating the non-response based on the reference lock request. Sent to
When the first notification is received from the exclusive control device, the second information corresponding to the first notification is stored, and the first response is transmitted to the exclusive control device,
An information processing method for transmitting the second response to the request source when the second response is received from the exclusive control device.
情報処理装置から資源を参照するための要求であり、要求を依頼した要求元であるタスクを示すタスクIDを含む参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する情報を保持せず、前記資源が所定の前記資源の場合に、所定の前記資源に関する情報を保存し、参照ロックを取得している前記資源に関する情報を保存する情報処理装置のロックテーブルに対して前記資源に関する情報を追加するために、前記資源が参照としてロックされたことを示す第1の通知を作成して全ての情報処理装置に送信し、情報処理装置から前記第1の通知に対する第1の応答を受信し、前記資源のアクセスに関する第1の情報として、前記資源のロック情報を示すデータである排他制御テーブルに、前記タスクIDと、ロック種別と、次タスクとを含むタスクエントリを、要求対象の前記資源毎に、ロック成功の前記タスクを示すロック列又はロック待ちとなっている前記タスクを示す列に保存し、前記資源に関する第2の応答を作成し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が応答済みを示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が未応答を示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、前記資源に関する前記第2の応答を作成し、
前記第1の通知を複数の情報処理装置に送信し、
前記第2の応答を、前記参照ロック要求を送信した情報処理装置に送信する
排他制御装置を含む情報処理システムにおいて、
情報処理装置が、
所定の要求元より前記参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する第2の情報が保存されている場合に、前記要求元に前記参照ロック要求に対応する第3の応答を送信し、前記参照ロック要求を基に前記応答済みを示す情報を含む前記参照ロック要求を作成して前記排他制御装置に送信し、
前記参照ロック要求に対応する前記資源に関する前記第2の情報が保存されていない場合に、前記参照ロック要求を基に前記未応答を示す情報を含む前記参照ロック要求を作成して前記排他制御装置に送信し、
前記排他制御装置から前記第1の通知を受信した場合に、前記第1の通知に対応する前記第2の情報を保存し、前記第1の応答を前記排他制御装置に送信し、
前記排他制御装置から前記第2の応答を受信した場合に、前記第2の応答を前記要求元に送信する
情報処理方法。
A request for referencing a resource from the information processing device, and a reference lock request including a task ID indicating a task that is the request source of the request is received,
When the resource is the predetermined resource without storing the information on the resource corresponding to the reference lock request, the information on the predetermined resource is stored, and the information on the resource for which the reference lock is acquired is stored. In order to add information regarding the resource to the lock table of the information processing device to be processed, a first notification indicating that the resource is locked as a reference is created and transmitted to all information processing devices. A first response to the first notification is received from the device, and the task ID and the lock type are stored in the exclusive control table, which is data indicating lock information of the resource, as the first information regarding access to the resource. , A next task, and a task entry including a next task are stored in a lock column indicating the task that has been successfully locked or a column indicating the task that is waiting for the lock, for each resource of the request target, and a second response regarding the resource is stored. Create
The first information corresponding to the reference lock request, when holding the information about the resource corresponding to the reference lock request, locking the resource as a reference, and including the information indicating that the reference lock request has been answered Save the
The first information corresponding to the reference lock request, when holding the information about the resource corresponding to the reference lock request, the resource is locked as a reference, and the reference lock request includes information indicating an unreply And create the second response for the resource,
Transmitting the first notification to a plurality of information processing devices,
In an information processing system including an exclusive control device, which transmits the second response to the information processing device which has transmitted the reference lock request,
The information processing device
Receiving the reference lock request from a predetermined request source,
When the second information regarding the resource corresponding to the reference lock request is stored, a third response corresponding to the reference lock request is transmitted to the request source, and the response is based on the reference lock request. Creating the reference lock request including information indicating the completion and transmitting it to the exclusive control device,
When the second information related to the resource corresponding to the reference lock request is not stored, the exclusive control device is created by creating the reference lock request including the information indicating the non-response based on the reference lock request. Sent to
When the first notification is received from the exclusive control device, the second information corresponding to the first notification is stored, and the first response is transmitted to the exclusive control device,
An information processing method for transmitting the second response to the request source when the second response is received from the exclusive control device.
所定の要求元より資源に関する資源を参照するための要求であり、要求を依頼した要求元であるタスクを示すタスクIDを含む参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する第2の情報が保存されている場合に、前記要求元に前記参照ロック要求に対応する第3の応答を送信し、前記参照ロック要求を基に応答済みを示す情報を含む前記参照ロック要求を作成して排他制御装置に送信し、
前記参照ロック要求に対応する前記資源に関する前記第2の情報が保存されていない場合に、前記参照ロック要求を基に未応答を示す情報を含む前記参照ロック要求を作成して排他制御装置に送信し、
排他制御装置から第1の通知を受信した場合に、前記第1の通知に対応する前記第2の情報を保存し、第1の応答を排他制御装置に送信し、
排他制御装置から第2の応答を受信した場合に、前記第2の応答を前記要求元に送信する
複数の情報処理装置を含む情報処理システムにおいて、
排他制御装置が、
前記情報処理装置から前記参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する情報を保持せず、前記資源が所定の前記資源の場合に、所定の前記資源に関する情報を保存し、参照ロックを取得している前記資源に関する情報を保存する前記情報処理装置のロックテーブルに対して前記資源に関する情報を追加するために、前記資源が参照としてロックされたことを示す前記第1の通知を作成して全ての前記情報処理装置に送信し、前記情報処理装置から前記第1の通知に対する前記第1の応答を受信し、前記資源のアクセスに関する第1の情報として、前記資源のロック情報を示すデータである排他制御テーブルに、前記タスクIDと、ロック種別と、次タスクとを含むタスクエントリを、要求対象の前記資源毎に、ロック成功の前記タスクを示すロック列又はロック待ちとなっている前記タスクを示す列に保存し、前記資源に関する前記第2の応答を作成し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が前記応答済みを示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が前記未応答を示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、前記資源に関する前記第2の応答を作成し、
前記第1の通知を複数の前記情報処理装置に送信し、
前記第2の応答を、前記参照ロック要求を送信した前記情報処理装置に送信する
排他制御方法。
A request for referencing a resource related to a resource from a predetermined request source, and receiving a reference lock request including a task ID indicating a task that is a request source requesting the request,
When the second information regarding the resource corresponding to the reference lock request is stored, a third response corresponding to the reference lock request is transmitted to the request source, and a response has been made based on the reference lock request. Creating the reference lock request including information indicating
When the second information related to the resource corresponding to the reference lock request is not stored, the reference lock request including information indicating non-response is created based on the reference lock request and transmitted to the exclusive control device. Then
When the first notification is received from the exclusive control device, the second information corresponding to the first notification is stored, and the first response is transmitted to the exclusive control device,
In an information processing system including a plurality of information processing devices, which transmits the second response to the request source when a second response is received from the exclusive control device,
The exclusive control unit
Receiving the reference lock request from the information processing device,
When the resource is the predetermined resource without storing the information on the resource corresponding to the reference lock request, the information on the predetermined resource is stored, and the information on the resource for which the reference lock is acquired is stored. In order to add information regarding the resource to the lock table of the information processing device, the first notification indicating that the resource is locked as a reference is created and transmitted to all the information processing devices. , The first response to the first notification from the information processing device is received, and the task ID is stored in the exclusive control table, which is data indicating lock information of the resource, as the first information regarding access to the resource. And a task type including a lock type and a next task are stored for each resource as a request target in a lock column indicating the task with a successful lock or a column indicating the task waiting for the lock, and the resource Create the second response for
The first information corresponding to the reference lock request is held when the information about the resource corresponding to the reference lock request is held, the resource is locked as a reference, and the reference lock request includes information indicating the response completion. Save the information,
When the resource is held as a reference and the reference lock request includes the information indicating the non-response, the first information corresponding to the reference lock request is held, Storing information and creating the second response for the resource,
Transmitting the first notification to the plurality of information processing devices,
An exclusive control method of transmitting the second response to the information processing apparatus that has transmitted the reference lock request.
情報処理装置から資源を参照するための要求であり、要求を依頼した要求元であるタスクを示すタスクIDを含む参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する情報を保持せず、前記資源が所定の前記資源の場合に、所定の前記資源に関する情報を保存し、参照ロックを取得している前記資源に関する情報を保存する情報処理装置のロックテーブルに対して前記資源に関する情報を追加するために、前記資源が参照としてロックされたことを示す第1の通知を作成して全ての情報処理装置に送信し、情報処理装置から前記第1の通知に対する第1の応答を受信し、前記資源のアクセスに関する第1の情報として、前記資源のロック情報を示すデータである排他制御テーブルに、前記タスクIDと、ロック種別と、次タスクとを含むタスクエントリを、要求対象の前記資源毎に、ロック成功の前記タスクを示すロック列又はロック待ちとなっている前記タスクを示す列に保存し、前記資源に関する第2の応答を作成し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が応答済みを示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が未応答を示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、前記資源に関する前記第2の応答を作成し、
前記第1の通知を複数の情報処理装置に送信し、
前記第2の応答を、前記参照ロック要求を送信した情報処理装置に送信する
排他制御装置を含む情報処理システムにおいて、
所定の要求元より前記参照ロック要求を受信する処理と、
前記参照ロック要求に対応する前記資源に関する第2の情報が保存されている場合に、前記要求元に前記参照ロック要求に対応する第3の応答を送信し、前記参照ロック要求を基に前記応答済みを示す情報を含む前記参照ロック要求を作成して前記排他制御装置に送信する処理と、
前記参照ロック要求に対応する前記資源に関する前記第2の情報が保存されていない場合に、前記参照ロック要求を基に前記未応答を示す情報を含む前記参照ロック要求を作成して前記排他制御装置に送信する処理と、
前記排他制御装置から前記第1の通知を受信した場合に、前記第1の通知に対応する前記第2の情報を保存し、前記第1の応答を前記排他制御装置に送信する処理と、
前記排他制御装置から前記第2の応答を受信した場合に、前記第2の応答を前記要求元に送信する処理と
をコンピュータに実行させるプログラム。
A request for referencing a resource from the information processing device, and a reference lock request including a task ID indicating a task that is the request source of the request is received,
When the resource is the predetermined resource without storing the information on the resource corresponding to the reference lock request, the information on the predetermined resource is stored, and the information on the resource for which the reference lock is acquired is stored. In order to add information regarding the resource to the lock table of the information processing device to be processed, a first notification indicating that the resource is locked as a reference is created and transmitted to all information processing devices. A first response to the first notification is received from the device, and the task ID and the lock type are stored in the exclusive control table, which is data indicating lock information of the resource, as the first information regarding access to the resource. , A next task, and a task entry including a next task are stored in a lock column indicating the task that has been successfully locked or a column indicating the task that is waiting for the lock, for each resource of the request target, and a second response regarding the resource Create
The first information corresponding to the reference lock request, when holding the information about the resource corresponding to the reference lock request, locking the resource as a reference, and including the information indicating that the reference lock request has been answered Save the
The first information corresponding to the reference lock request, when holding the information about the resource corresponding to the reference lock request, the resource is locked as a reference, and the reference lock request includes information indicating an unreply And create the second response for the resource,
Transmitting the first notification to a plurality of information processing devices,
In an information processing system including an exclusive control device, which transmits the second response to the information processing device which has transmitted the reference lock request,
A process of receiving the reference lock request from a predetermined request source,
When the second information regarding the resource corresponding to the reference lock request is stored, a third response corresponding to the reference lock request is transmitted to the request source, and the response is based on the reference lock request. A process of creating the reference lock request including information indicating completion and transmitting the reference lock request to the exclusive control device;
When the second information related to the resource corresponding to the reference lock request is not stored, the exclusive control device is created by creating the reference lock request including the information indicating the non-response based on the reference lock request. Process to send to
A process of storing the second information corresponding to the first notification and transmitting the first response to the exclusive control device when the first notification is received from the exclusive control device;
A program for causing a computer to execute a process of transmitting the second response to the request source when the second response is received from the exclusive control device.
所定の要求元より資源に関する資源を参照するための要求であり、要求を依頼した要求元であるタスクを示すタスクIDを含む参照ロック要求を受信し、
前記参照ロック要求に対応する前記資源に関する第2の情報が保存されている場合に、前記要求元に前記参照ロック要求に対応する第3の応答を送信し、前記参照ロック要求を基に応答済みを示す情報を含む前記参照ロック要求を作成して排他制御装置に送信し、
前記参照ロック要求に対応する前記資源に関する前記第2の情報が保存されていない場合に、前記参照ロック要求を基に未応答を示す情報を含む前記参照ロック要求を作成して排他制御装置に送信し、
排他制御装置から第1の通知を受信した場合に、前記第1の通知に対応する前記第2の情報を保存し、第1の応答を排他制御装置に送信し、
排他制御装置から第2の応答を受信した場合に、前記第2の応答を前記要求元に送
信する
複数の情報処理装置を含む情報処理システムにおいて、
前記情報処理装置から前記参照ロック要求を受信する処理と、
前記参照ロック要求に対応する前記資源に関する情報を保持せず、前記資源が所定の前記資源の場合に、所定の前記資源に関する情報を保存し、参照ロックを取得している前記資源に関する情報を保存する前記情報処理装置のロックテーブルに対して前記資源に関する情報を追加するために、前記資源が参照としてロックされたことを示す前記第1の通知を作成して全ての前記情報処理装置に送信し、前記情報処理装置から前記第1の通知に対する前記第1の応答を受信し、前記資源のアクセスに関する第1の情報として、前記資源のロック情報を示すデータである排他制御テーブルに、前記タスクIDと、ロック種別と、次タスクとを含むタスクエントリを、要求対象の前記資源毎に、ロック成功の前記タスクを示すロック列又はロック待ちとなっている前記タスクを示す列に保存し、前記資源に関する前記第2の応答を作成する処理と、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が前記応答済みを示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存する処理と、
前記参照ロック要求に対応する前記資源に関する情報を保持し、前記資源が参照としてロックされ、前記参照ロック要求が前記未応答を示す情報を含む場合に、前記参照ロック要求に対応する前記第1の情報を保存し、前記資源に関する前記第2の応答を作成する処理と、
前記第1の通知を複数の前記情報処理装置に送信する処理と、
前記第2の応答を、前記参照ロック要求を送信した前記情報処理装置に送信する処理と
をコンピュータに実行させるプログラム。
A request for referencing a resource related to a resource from a predetermined request source, and receiving a reference lock request including a task ID indicating a task that is a request source requesting the request,
When the second information regarding the resource corresponding to the reference lock request is stored, a third response corresponding to the reference lock request is transmitted to the request source, and a response has been made based on the reference lock request. Creating the reference lock request including information indicating
When the second information related to the resource corresponding to the reference lock request is not stored, the reference lock request including information indicating non-response is created based on the reference lock request and transmitted to the exclusive control device. Then
When the first notification is received from the exclusive control device, the second information corresponding to the first notification is stored, and the first response is transmitted to the exclusive control device,
In an information processing system including a plurality of information processing devices, which transmits the second response to the request source when a second response is received from the exclusive control device,
A process of receiving the reference lock request from the information processing device,
When the resource is the predetermined resource without storing the information on the resource corresponding to the reference lock request, the information on the predetermined resource is stored, and the information on the resource for which the reference lock is acquired is stored. In order to add information regarding the resource to the lock table of the information processing device, the first notification indicating that the resource is locked as a reference is created and transmitted to all the information processing devices. , The first response to the first notification from the information processing device is received, and the task ID is stored in the exclusive control table, which is data indicating lock information of the resource, as the first information regarding access to the resource. And a task type including a lock type and a next task are stored for each resource as a request target in a lock column indicating the task with a successful lock or a column indicating the task waiting for the lock, and the resource Creating the second response for
The first information corresponding to the reference lock request is held when the information about the resource corresponding to the reference lock request is held, the resource is locked as a reference, and the reference lock request includes information indicating the response completion. The process of saving information,
When the resource is held as a reference and the reference lock request includes the information indicating the non-response, the first information corresponding to the reference lock request is held, Storing information and creating the second response for the resource;
A process of transmitting the first notification to the plurality of information processing devices;
A program for causing a computer to execute a process of transmitting the second response to the information processing device that has transmitted the reference lock request.
JP2016039025A 2016-03-01 2016-03-01 Information processing system, information processing device, exclusive control device, information processing method, exclusive control method, and program Active JP6728773B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016039025A JP6728773B2 (en) 2016-03-01 2016-03-01 Information processing system, information processing device, exclusive control device, information processing method, exclusive control method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016039025A JP6728773B2 (en) 2016-03-01 2016-03-01 Information processing system, information processing device, exclusive control device, information processing method, exclusive control method, and program

Publications (2)

Publication Number Publication Date
JP2017156951A JP2017156951A (en) 2017-09-07
JP6728773B2 true JP6728773B2 (en) 2020-07-22

Family

ID=59810187

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016039025A Active JP6728773B2 (en) 2016-03-01 2016-03-01 Information processing system, information processing device, exclusive control device, information processing method, exclusive control method, and program

Country Status (1)

Country Link
JP (1) JP6728773B2 (en)

Also Published As

Publication number Publication date
JP2017156951A (en) 2017-09-07

Similar Documents

Publication Publication Date Title
JP6244592B2 (en) Column-oriented database processing method and processing device
US8935560B2 (en) System and method of file locking in a network file system federated namespace
JP5077430B2 (en) Management device and management device program
US9734157B1 (en) Method for sub-block operations on a journal block using ranged locking
US9973440B2 (en) Resource notification method, device and system
WO2014194678A1 (en) Lock operation method of database system, and device
US20070250594A1 (en) File sharing method and file sharing system
US20170366612A1 (en) Parallel processing device and memory cache control method
JP6586174B2 (en) Database system, transaction management node, method and program
JP6728773B2 (en) Information processing system, information processing device, exclusive control device, information processing method, exclusive control method, and program
US10185735B2 (en) Distributed database system and a non-transitory computer readable medium
JP6947421B2 (en) Monitoring device, exclusive control system, program and control method
US20180052846A1 (en) Data processing method, data processing device, storage system, and method for controlling storage system
US20150067014A1 (en) Computer system and control method of computer system
KR102033383B1 (en) Method and system for managing data geographically distributed
JP2013025671A (en) Server device, control method for server device, control program for server device, and computer
US20220043776A1 (en) Metadata management program and information processing apparatus
JP2011232926A (en) Distribution database system, deadlock notification method and deadlock notification program
JP5473016B2 (en) Data sharing system, terminal device, data sharing method, and program
JP2018124707A (en) Information management method, information processing apparatus, information management system and program
JP5673224B2 (en) Information management apparatus, information management method, and program
US11138051B2 (en) Information processing apparatus and method of transferring data
WO2021038797A1 (en) Retrieval device, retrieval method, and retrieval program
JP2020160931A (en) Information processing apparatus, directory server, information processing system, information processing method, and program
JP6519180B2 (en) Management system, control method, and control program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200421

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200521

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200602

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200615

R150 Certificate of patent or registration of utility model

Ref document number: 6728773

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150