Skip to Main Content
In order to solve the problem of inopportune preemption in multiprogrammed multiprocessor synchronization, two strategies which are applicable to real-time systems have been investigated: preemption-safe locking and wait-free synchronization. Both of them, however, have a problem for use in the implementation of a real-time kernel. Preemption-safe locking has the drawback that the preemption cost becomes large; while wait-free operations on complex data structures are generally very inefficient and are not practical. We propose a novel approach to multiprogrammed multiprocessor synchronization, called the SPEPP (Spinning Processor Executes for Preempted Processors) synchronization, with which the preemption cost can be reduced to almost zero, while operations on complex data structures can be realized with reasonable efficiency. This paper presents the two algorithms of the SPEPP synchronization and their extensions, and demonstrates its effectiveness through the performance measurements of real-time kernels implemented with the SPEPP synchronization algorithms.
Date of Conference: 5-5 Dec. 1997