Claims Analysis
Total Claims: 2
Claim 1
Independent Claim
377 words
A rendezvous for synchronizing multiple programs in a multiprocessor system having memory shared by each processor, comprising the steps of: storing in shared memory a semaphore having a count field and a valid field; designating one of said processors as a master, and designating all other processors as slaves; writing the semaphore's count field to N-1 by the master processor, regardless of the semaphore's prior value in the count field, wherein N equals the number of processors and programs in the multiprocessor system that need to be synchronized; writing the semaphore's valid field to valid by the master processor indicating the validity of the semaphore's count field; writing the semaphore's valid field to invalid by at least one slave processor, said at least one slave processor then waiting until the semaphore's valid field transitions from invalid to valid; checking by the master processor the semaphore count field for an indication that the rendezvous is complete, and, if not, writing the semaphore's valid field to valid; decrementing by one the semaphore's count field by said at least one slave processor when a transition of the semaphore's valid field from invalid to valid is detected; checking by other slave processors the semaphore count field for a zero count as an indication of the completion of the rendezvous after decrementing the semaphore's count field; rewriting the semaphore's count field to N-1 and the semaphore's valid field to valid by the master processor in the event a restore process is initiated following a system failure, regardless of the semaphore's prior value in the count field, wherein if any slave processor arrives at the semaphore prior to the master processor after restart, the slave processor writes the semaphore's valid field to invalid, thereafter waiting until the semaphore's count field is written to N-1 and the semaphore's valid field is written to valid by the master processor; and repeating, in the event a restart process is initiated, the steps of decrementing by one the semaphore's count field by a slave processor when a transition of the semaphore's valid field from invalid to valid is detected, and checking by other slave processors the semaphore field for a zero count as an indication of the completion of the rendezvous after decrementing the semaphore's count field.
Claim 2
Dependent Claim
377 words
A rendezvous for synchronizing multiple programs in a multiprocessor system having memory shared by each processor, comprising the steps of: storing in shared memory a semaphore having a count field and a valid field; designating one of said processors as a master, and designating all other processors as slaves; writing the semaphore's count field to N-1 by the master processor, regardless of the semaphore's prior value in the count field, wherein N equals the number of processors and programs in the multiprocessor system that need to be synchronized; writing the semaphore's valid field to valid by the master processor indicating the validity of the semaphore's count field; writing the semaphore's valid field to invalid by at least one slave processor, said at least one slave processor then waiting until the semaphore's valid field transitions from invalid to valid; checking by the master processor the semaphore count field for an indication that the rendezvous is complete, and, if not, writing the semaphore's valid field to valid; decrementing by one the semaphore's count field by said at least one slave processor when a transition of the semaphore's valid field from invalid to valid is detected; checking by other slave processors the semaphore count field for a zero count as an indication of the completion of the rendezvous after decrementing the semaphore's count field; rewriting the semaphore's count field to N-1 and the semaphore's valid field to valid by the master processor in the event a restore process is initiated following a system failure, regardless of the semaphore's prior value in the count field, wherein if any slave processor arrives at the semaphore prior to the master processor after restart, the slave processor writes the semaphore's valid field to invalid, thereafter waiting until the semaphore's count field is written to N-1 and the semaphore's valid field is written to valid by the master processor; and repeating, in the event a restart process is initiated, the steps of decrementing by one the semaphore's count field by a slave processor when a transition of the semaphore's valid field from invalid to valid is detected, and checking by other slave processors the semaphore field for a zero count as an indication of the completion of the rendezvous after decrementing the semaphore's count field.