Claims Analysis
Total Claims: 26
Claim 1
Independent Claim
61 words
A synchronization service [10] for use with a computer having a distributed operating system, to allow the construction of a customized synchronization scheme, for synchronizing the constituent portions of a distributed program, said service comprising: a general set of application-independent synchronization primitives, whereby the construction of said customized synchronization scheme is achieved by the selective implementation of said application-independent synchronization primitives.
Claim 2
Dependent Claim
61 words
A synchronization service [10] for use with a computer having a distributed operating system, to allow the construction of a customized synchronization scheme, for synchronizing the constituent portions of a distributed program, said service comprising: a general set of application-independent synchronization primitives, whereby the construction of said customized synchronization scheme is achieved by the selective implementation of said application-independent synchronization primitives.
Claim 3
Dependent Claim
19 words
The synchronization service of claim 1 wherein said application-independent primitives comprise the following functions: synchronize; synchronize done; and unsynchronize.
Claim 4
Dependent Claim
27 words
The synchronization service of claim 2 wherein said primitives further comprise the following functions: request right; right granted; right refused; release right; group broadcast; and group acknowledge.
Claim 5
Dependent Claim
22 words
The synchronization service of claim 3 wherein said primitives further comprise the following functions: unsynchronize done; send to member; and message acknowledge.
Claim 6
Dependent Claim
150 words
A synchronization service [10] for use with a computer having an operating system [15] distributed over a plurality of processing elements [12], to allow the construction of a customized synchronization scheme, for synchronizing the constituent portions [18] of a distributed program, said service comprising: a common synchronization master control means [13]; a synchronization agent means [14] for each processing element; a plurality of application program components [18], each component located on a different processing element, each said component having associated therewith a member agent [11], said member agent being a program for interfacing with said synchronization agent means, and said synchronization agent means interfacing between said master control means and said member agent, whereby a customized synchronization scheme can be constructed based upon a general set of application-independent synchronization primitives contained in both said synchronization agent means [14] and said member agent [11] and accessed via said synchronization agent means.
Claim 7
Dependent Claim
150 words
A synchronization service [10] for use with a computer having an operating system [15] distributed over a plurality of processing elements [12], to allow the construction of a customized synchronization scheme, for synchronizing the constituent portions [18] of a distributed program, said service comprising: a common synchronization master control means [13]; a synchronization agent means [14] for each processing element; a plurality of application program components [18], each component located on a different processing element, each said component having associated therewith a member agent [11], said member agent being a program for interfacing with said synchronization agent means, and said synchronization agent means interfacing between said master control means and said member agent, whereby a customized synchronization scheme can be constructed based upon a general set of application-independent synchronization primitives contained in both said synchronization agent means [14] and said member agent [11] and accessed via said synchronization agent means.
Claim 8
Dependent Claim
19 words
The synchronization service of claim 5 wherein said application-independent primitives comprise the following functions: synchronize; synchronize done; and unsynchronize.
Claim 9
Dependent Claim
28 words
The synchronization service of claim 6 wherein said application-independent primitives further comprise the following functions: request right; right granted; right refused; release right; group broadcast; and group acknowledge.
Claim 10
Dependent Claim
177 words
A synchronization service [10] for use with a computer having an operating system [15] distributed over a plurality of processing elements, to allow the construction of a customized synchronization scheme, for synchronizing the constituent component of a distributed program, said service [10] comprising the steps of: a) joining a program component [18] on a first processing element [12] to a group of existing program components [18] on at least a second processing element [12] so that each of the existing components is aware of the presence and location of the joining components; b) informing each member of a group of physically distributed program components when one or more components which are members of said group, depart from it; c) selecting, as a distinguished member, one program component from a group of distributed program components such that, within said group, there is never more than one said distinguished member; and d) providing mutually exclusive rights to said group of distributed program components such that no more than one said component can appropriate a given right at any time.
Claim 11
Dependent Claim
177 words
A synchronization service [10] for use with a computer having an operating system [15] distributed over a plurality of processing elements, to allow the construction of a customized synchronization scheme, for synchronizing the constituent component of a distributed program, said service [10] comprising the steps of: a) joining a program component [18] on a first processing element [12] to a group of existing program components [18] on at least a second processing element [12] so that each of the existing components is aware of the presence and location of the joining components; b) informing each member of a group of physically distributed program components when one or more components which are members of said group, depart from it; c) selecting, as a distinguished member, one program component from a group of distributed program components such that, within said group, there is never more than one said distinguished member; and d) providing mutually exclusive rights to said group of distributed program components such that no more than one said component can appropriate a given right at any time.
Claim 12
Dependent Claim
28 words
The synchronization service of claim 8 further including the step of providing reliable point-to-point communication between said distributed program components on the basis of their internal group identifiers.
Claim 13
Dependent Claim
39 words
The synchronization service of claim 9 further including the step of providing a broadcast mechanism from any one program component to all other program components which are currently declared as being in the same group as the broadcasting component.
Claim 14
Dependent Claim
16 words
The synchronization service of claim 10 wherein said program components are components of an application program.
Claim 15
Dependent Claim
17 words
The synchronization service of claim 10 wherein said program components are components of an operating system program.
Claim 16
Dependent Claim
19 words
The synchronization service of claim 8 wherein said physical processing elements are logically distributed entities at one physical location.
Claim 17
Dependent Claim
189 words
A synchronization service [10], for use with a computer having an operating system [15] distributed over a plurality of processing elements [12], to allow the construction of customized synchronization schemes for synchronizing the constituent components [18] of a distributed program, said service comprising, as required, the steps of: a) establishing a synchronization group for said distributed program, said group comprising at least one distributed program component [18]; b) joining a program component [18] to said group of existing program components so that each of the components is aware of the presence and the location of all the other components in said group; c) informing each member of said group of distributed program components when one or more components which are members of said group, depart from it; d) selecting, as a distinguished member for said group, one program component from said group of distributed program components such that, within said group, there is never more than one said distinguished member; and e) providing mutually exclusive rights to said group of distributed program components such that no more than one said component can appropriate a given right at any time.
Claim 18
Dependent Claim
189 words
A synchronization service [10], for use with a computer having an operating system [15] distributed over a plurality of processing elements [12], to allow the construction of customized synchronization schemes for synchronizing the constituent components [18] of a distributed program, said service comprising, as required, the steps of: a) establishing a synchronization group for said distributed program, said group comprising at least one distributed program component [18]; b) joining a program component [18] to said group of existing program components so that each of the components is aware of the presence and the location of all the other components in said group; c) informing each member of said group of distributed program components when one or more components which are members of said group, depart from it; d) selecting, as a distinguished member for said group, one program component from said group of distributed program components such that, within said group, there is never more than one said distinguished member; and e) providing mutually exclusive rights to said group of distributed program components such that no more than one said component can appropriate a given right at any time.
Claim 19
Dependent Claim
23 words
The synchronization service of claim 14 further including the step of providing full connectivity between all said distributed program components of said group.
Claim 20
Dependent Claim
14 words
The synchronization service of claim 15 wherein said distributed program is an application program.
Claim 21
Dependent Claim
15 words
The synchronization service of claim 15 wherein said distributed program is an operating system program.
Claim 22
Dependent Claim
19 words
The synchronization service of claim 15 wherein each said program component [18] is on a different processing element [12].
Claim 23
Dependent Claim
128 words
A synchronization service [10], for use with a computer having an operating system [15] distributed over a plurality of processing elements [12], to allow the construction of customized synchronization schemes for synchronizing the constituent components [18] of a distributed program, said service including a synchronization master control [13] comprising: master control means [21] for activating said synchronization service; polling means [22] for polling the processing elements [12] associated with said components of said distributed program so as to monitor the status of said processing element; control means [24] for joining new members [18] to said group, and for handling departures of members [18] from said group; and a database means [16] containing information representative of the current state of said synchronization service at a given point in time.
Claim 24
Dependent Claim
128 words
A synchronization service [10], for use with a computer having an operating system [15] distributed over a plurality of processing elements [12], to allow the construction of customized synchronization schemes for synchronizing the constituent components [18] of a distributed program, said service including a synchronization master control [13] comprising: master control means [21] for activating said synchronization service; polling means [22] for polling the processing elements [12] associated with said components of said distributed program so as to monitor the status of said processing element; control means [24] for joining new members [18] to said group, and for handling departures of members [18] from said group; and a database means [16] containing information representative of the current state of said synchronization service at a given point in time.
Claim 25
Dependent Claim
53 words
The synchronization service of claim 19 further including, at each said processing element, a synchronization agent [14] comprising: means for accepting synchronization directives and for creating corresponding member agents; and means for monitoring the status of all active member agents on said processing element and reporting same to said synchronization master control [13].
Claim 26
Dependent Claim
89 words
The synchronization service of claim 20 further including at each said processing element [12], a member agent [11] each synchronization group, comprising: communications means [33] for providing a reliable communications service between program components [18]; storage means [32] for maintaining a local version of the current state of all other program components [18]; handler means [31] for providing the interface between user tasks and said member agent [11]; and distinguished member means [30] for implementing the distinguished member function on only one program component [18] at any given time.