The paper presents a timing based approach to implementing fully asynchronous reader/writer mechanisms which addresses the problems of priority inversion and blocking among tasks within multiprocessor real time systems. The approach associates a sequential circular buffer data sharing algorithm, which, although being lock-free and loop-free, is vulnerable to some timing subtlety, with necessary feasibility conditions and a configuring mechanism. Both the feasibility conditions and the configuring mechanism are constructed through analyzing the timing properties of relevant tasks. The feasibility conditions are employed to verify the safety property against a given implementation of the data sharing algorithm while the configuring mechanism helps configure the buffer holding the shared data objects. Applying this timing based approach to the asynchronous data sharing problem has the advantage that sequential data sharing mechanisms may be adapted to help remove priority inversion and blocking incurred by the commonly used lock based synchronization mechanism. Therefore, it demonstrates an effective alternative to the traditional algorithm based approaches.
['Jing Chen', 'Alan Burns']
Loop-free asynchronous data sharing in multiprocessor real-time systems based on timing properties