Obstruction-free synchronization: double-ended queues as an example
the synergy between non - blocking synchronization and operating system structure .