Non-blocking data sharing in multiprocessor real-time systems

A non-blocking protocol that allows real time tasks to share data in a multiprocessor system is presented. The protocol gives the means for concurrent real time tasks to read and write shared data; the protocol allows multiple write and multiple read operations to be executed concurrently. Our protocol extends previous results and is optimal with respect to space requirements. Together with the protocol, its schedulability analysis and a set of schedulability tests for a set of random task sets are presented. Both the schedulability analysis and the schedulability experiments show that the algorithm presented in the paper exhibits less overhead than the lock based protocols.