US 11,734,085 B2
Managing concurrent accesses by a set of tasks to a shared resource of a computer system
Reinhold Geiselhart, Rottenburg-Ergenzingen (DE); Knut Stolze, Hummelshain (DE); Felix Beier, Haigerloch (DE); and Luis Eduardo Oliveira Lizardo, Böblingen (DE)
Assigned to International Business Machines Corporation, Armonk, NY (US)
Filed by International Business Machines Corporation, Armonk, NY (US)
Filed on Feb. 26, 2020, as Appl. No. 16/801,512.
Prior Publication US 2021/0263786 A1, Aug. 26, 2021
Int. Cl. G06F 9/52 (2006.01); G06F 9/54 (2006.01); G06F 9/48 (2006.01); G06F 9/50 (2006.01); G06F 11/36 (2006.01)
CPC G06F 9/524 (2013.01) [G06F 9/4837 (2013.01); G06F 9/4881 (2013.01); G06F 9/5022 (2013.01); G06F 9/52 (2013.01); G06F 9/546 (2013.01); G06F 11/3632 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method for managing concurrent accesses by a set of tasks to a shared resource of a computer system, the method comprising:
collecting timing pattern data during normal operation of a multi-threaded software synchronization module, the timing pattern data collected while the multi-threaded software synchronization module coordinates access by a set of calibration tasks to a shared resource;
defining delay periods according to each calibration task type of the set of calibration tasks, each calibration task corresponding to a task type of a set of predefined task types;
reconfiguring the multi-thread software synchronization module to coordinate access by a set of test tasks to the shared resource, each test task corresponding to a task type of the set of predefined task types, the set of test tasks being granted protected access during respective extended access time periods including corresponding delay periods according to the defined delay periods;
identifying, during execution of the reconfigured multi-thread software synchronization module, a first external task and a first task type of the first external task during the respective extended access time periods, the first external task causing data to be corrupted; and
configuring the computer system for preventing accesses to the shared resource by external tasks of the first task type.