Dynamic synchronization object pool management
US-2017046207-A1 · Feb 16, 2017 · US
US11113178B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11113178-B2 |
| Application number | US-201816236028-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 28, 2018 |
| Priority date | Dec 28, 2018 |
| Publication date | Sep 7, 2021 |
| Grant date | Sep 7, 2021 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Exposing and reproduction of race conditions is presented herein. A method identifies a synchronization mechanism of a grouping of operating system synchronization mechanisms; based on a tunable probability value, adjusts a race window associated with the synchronization mechanism; and based on the race window, raises a likelihood of revealing a race condition.
Opening claim text (preview).
What is claimed is: 1. A system, comprising: a processor; and a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations comprising: identifying a synchronization mechanism of a grouping of operating system synchronization mechanisms; based on a tunable probability value, representing a probability of a conflict occurring between a first execution of the synchronization mechanism and a second execution of the synchronization mechanism, and a semaphore used to reduce recursion associated with the synchronization mechanism, increasing a duration of a race window associated with the synchronization mechanism, wherein the race window is increased by a delay period, wherein the race window operates in collaboration with the synchronization mechanism, wherein the tunable probability value further represents a first time duration prior to the first execution of the synchronization mechanism and a second time duration prior to the second execution of the synchronization mechanism, and wherein the first time duration differs from the second time duration; and based on the race window having been increased and the delay period, increasing a likelihood of revealing a race condition. 2. The system of claim 1 , wherein a software in execution comprises the synchronization mechanism. 3. The system of claim 1 , wherein the operations further comprise assigning the tunable probability value to the synchronization mechanism. 4. The system of claim 1 , wherein the synchronization mechanism is an operating system resource allocation lock request. 5. The system of claim 1 , wherein the synchronization mechanism is an operating system lock acquisition request. 6. The system of claim 1 , wherein the synchronization mechanism is a conditional variable event associated with a sleep state. 7. The system of claim 1 , wherein the increasing of the race window comprises adjusting the race window as a function of defining a sleep time period to place use of the synchronization mechanism in a hiatus state. 8. The system of claim 1 , wherein the increasing of the race window comprises adjusting the race window as a function of defining a spin time period within which use of the synchronization mechanism is adjusted. 9. A method comprising: identifying, by a device comprising a processor, a synchronization mechanism of a grouping of operating system synchronization mechanisms; based on a tunable probability value, representative of a probability of a conflict occurring between a first execution of the synchronization mechanism and a second execution of the synchronization mechanism, and use of a bit flag to reduce recursion associated with execution of the synchronization mechanism, increasing, by the device, a duration of a race window associated with the synchronization mechanism, wherein the race window is increased by a delay period, wherein the race window operates in collaboration with the synchronization mechanism, wherein the tunable probability value further represents a time value that differs between the first execution of the synchronization mechanism at a first code point in the recursion and the second execution of the synchronization mechanism at a second code point in the recursion; and based on the race window having been increased and the delay period, increasing, by the device, a likelihood of exposing a race condition. 10. The method of claim 9 , wherein a software in execution comprises the synchronization mechanism. 11. The method of claim 9 , further comprising allocating, by the device, the tunable probability value to the synchronization mechanism. 12. The method of claim 9 , wherein the synchronization mechanism is an operating system resource allocation lock request. 13. The method of claim 9 , wherein the synchronization mechanism is an operating system lock acquisition request. 14. The method of claim 9 , wherein the synchronization mechanism is a conditional variable event associated with a sleep state. 15. The method of claim 9 , wherein the increasing of the race window comprises adjusting the race window as a function of defining a stasis time period to elapse prior to facilitating use of the synchronization mechanism. 16. The method of claim 9 , wherein the increasing of the race window comprises adjusting the race window as a function of defining a lag time period during which use of the synchronization mechanism is operational. 17. A non-transitory machine-readable medium comprising instructions that, in response to execution, cause a system comprising a processor to perform operations comprising: identifying a synchronization mechanism of a grouping of operating system synchronization mechanisms; based on a tunable probability value, representing a probability of a conflict occurring between a first execution of the synchronization mechanism and a second execution of the synchronization mechanism, and a semaphore used to reduce recursion associated with the synchronization mechanism, increasing a duration of a race window associated with the synchronization mechanism, wherein the duration of the race window is increased by a delay period, wherein the race window operates in collaboration with the synchronization mechanism, wherein the tunable probability value further represents a time value that differs between the first execution of the synchronization mechanism at a first code point in the recursion and the second execution of the synchronization mechanism at a second code point in the recursion; and based on the race window having been increased and the delay period, raising a likelihood of revealing a race condition. 18. The non-transitory machine-readable medium of claim 17 , wherein the increasing of the race window comprises adjusting the race window as a function of defining a stasis time period needed to elapse prior to facilitating use of the synchronization mechanism. 19. The non-transitory machine-readable medium of claim 17 , wherein the increasing of the race window comprises adjusting the race window as a function of defining a spin time period during which use of the synchronization mechanism is operational. 20. The non-transitory machine-readable medium of claim 17 , wherein a software in execution comprises the synchronization mechanism.
of specific synchronisation aspects · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.