Title :
Recovering scalable spin locks
Author :
Bohannon, Philip ; Lieuwen, Daniel ; Silbershatz, A.
Author_Institution :
Bell Labs., Murray Hill, NJ, USA
Abstract :
We present a mechanism for making a scalable spin lock protocol, the MCS lock recoverable, thereby ensuring that a lock never becomes permanently unavailable, even if one or more processes using the lock die. This is achieved by modifying the original protocol to write additional information to shared memory and introducing a cleanup process which returns locks to a usable state in case of process death(s). Our method does not require kernel or hardware support other than the swap instruction, and maintains performance comparable to the original protocol (one third as fast in the uncontested case). We have proven the correctness of our scheme in the face of the weak memory models provided by modern systems
Keywords :
concurrency control; memory protocols; parallel architectures; shared memory systems; MCS lock; cleanup process; performance; recoverable; scalable spin locks; shared memory; weak memory models; Access protocols; Control systems; Data structures; Hardware; Kernel; Spinning; Testing; Traffic control;
Conference_Titel :
Parallel and Distributed Processing, 1996., Eighth IEEE Symposium on
Conference_Location :
New Orleans, LA
Print_ISBN :
0-8186-7683-3
DOI :
10.1109/SPDP.1996.570349