Read-Copy-Update for HelenOS
This talk briefly introduces the RCU mechanism and the usual trade-offs that specific RCU implementations need to make. Furthermore, the talk also presents two novel RCU algorithms designed for a microkernel environment and implemented in HelenOS.
Read-Copy-Update (RCU) is a generic synchronization mechanism suitable for read-mostly shared data. There are many various implementations of the RCU mechanism, but their common goal is to provide non-blocking concurrent access with only a small overhead for the readers and also concurrent access for the updaters. Such an arrangement provides for excellent scalability compared to traditional mutual exclusion synchronization mechanisms while at the same time isolating the user of the RCU from the complexity of designing custom non-blocking algorithms.