OPTIMIZING GRACE PERIOD DETECTION FOR PREEMPTIBLE READ-COPY UPDATE ON UNIPROCESSOR SYSTEMS
First Claim
1. A method for optimizing grace period detection following a data element update operation that affects preemptible data readers, comprising:
- determining if said data processing system is a uniprocessor system or a multiprocessor system;
performing grace period detection processing using a first grace period detection technique if said data processing system is a multiprocessor system;
performing grace period detection processing using a second grace period detection technique if said data processing system is a uniprocessor system; and
said grace period detection processing according to either technique determining the end of a grace period in which readers that are subject to preemption have passed through a quiescent state and cannot be maintaining references to said pre-update view of said shared data.
1 Assignment
0 Petitions
Accused Products
Abstract
A technique for optimizing grace period detection following a data element update operation that affects preemptible data readers. A determination is made whether the data processing system is a uniprocessor system or a multiprocessor system. Grace period detection processing is performed using a first grace period detection technique if the data processing system is a multiprocessor system. Grace period detection processing is performed using a second grace period detection technique if the data processing system is a uniprocessor system. The grace period detection processing according to either technique determines the end of a grace period in which readers that are subject to preemption have passed through a quiescent state and cannot be maintaining references to the pre-update view of the shared data.
-
Citations
20 Claims
-
1. A method for optimizing grace period detection following a data element update operation that affects preemptible data readers, comprising:
-
determining if said data processing system is a uniprocessor system or a multiprocessor system; performing grace period detection processing using a first grace period detection technique if said data processing system is a multiprocessor system; performing grace period detection processing using a second grace period detection technique if said data processing system is a uniprocessor system; and said grace period detection processing according to either technique determining the end of a grace period in which readers that are subject to preemption have passed through a quiescent state and cannot be maintaining references to said pre-update view of said shared data. - View Dependent Claims (3, 4, 5, 6, 18)
-
-
2. The method of claim 2, wherein said first grace period detection technique comprises multiprocessor coordination processing and said second grace period detection technique does not comprise said multiprocessor coordination processing.
-
7. A data processing system, comprising:
-
one or more processors; a memory coupled to said one or more processors, said memory including a computer useable medium tangibly embodying at least one program of instructions executable by said processor to perform operations for optimizing grace period detection following a data element update operation that affects preemptible data readers, comprising; determining if said data processing system is a uniprocessor system or a multiprocessor system; performing grace period detection processing using a first grace period detection technique if said data processing system is a multiprocessor system; performing grace period detection processing using a second grace period detection technique if said data processing system is a uniprocessor system; and said grace period detection processing according to either technique determining the end of a grace period in which readers that are subject to preemption have passed through a quiescent state and cannot be maintaining references to said pre-update view of said shared data. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer program product, comprising:
-
one or more machine-readable media; means provided by said one or more media for programming a data processing platform to optimize grace period detection following a data element update operation that affects preemptible data readers, as by; determining if said data processing system is a uniprocessor system or a multiprocessor system; performing grace period detection processing using a first grace period detection technique if said data processing system is a multiprocessor system; performing grace period detection processing using a second grace period detection technique if said data processing system is a uniprocessor system; and said grace period detection processing according to either technique determining the end of a grace period in which readers that are subject to preemption have passed through a quiescent state and cannot be maintaining references to said pre-update view of said shared data. - View Dependent Claims (14, 15, 16, 17)
-
-
19. A method for optimizing grace period detection following a data element update operation in a data processing system having preemptible readers, comprising:
-
performing a first-phase data update operation on shared data in a manner that temporarily preserves a pre-update view of said shared data for the benefit of readers that may be concurrently referencing said shared data during said update operation; dynamically determining if said data processing system is a uniprocessor system or a multiprocessor system; performing grace period detection processing using a first grace period detection technique if said data processing system is a multiprocessor system; performing grace period detection processing using a second grace period detection technique if said data processing system is a uniprocessor system; said grace period detection processing according to either technique determining the end of a grace period in which readers that are subject to preemption have passed through a quiescent state and cannot be maintaining references to said pre-update view of said shared data; and performing a second-phase update operation following said grace period. - View Dependent Claims (20)
-
Specification