||IBM Global Services India Ltd
||Read-Copy-Update mutual exclusion - in Linux Kernel 2.5
||In 2.5 Linux kernel we implemented Read-Copy-Update mutual exclusion mechanism and it was included in kernel version 2.5 .43. It is a mechanism for constructing highly scalable algorithms for accessing and modifying read-mostly data structures, while avoiding cacheline-bouncing, memory contention, and deadlock problems that often plague highly scalable operating-system implementations. In particular, code that does read-only accesses may be written without any locks, atomic instructions, or writes to shared cachelines, even in face of concurrent updates.
Traditional operating-system locking designs tend to either be very complex, result in poor concurrency, or both. These traditional locking designs fail to take advantage of the event-driven nature of operating systems, which process many small, quickly completed units of work (in contrast to CPU-bound software such as scientific applications). This event-driven nature can often be exploited by splitting updates into the two phases: 1) carrying out enough of each update for new requests to see the new state, while still allowing
existing requests to proceed on the old state, then: 2) completing the update after all active requests have completed. Common-case code can then proceed without disabling interrupts or acquiring any locks to protect against the exceptional code, which simplifies locking
protocols, improves uniprocessor performance, and increases scalability. Examples of the application of these techniques include maintaining read-mostly data structures, such as routing tables, avoiding the need
for existence locks (and hence avoiding locking hierarchies with the attendant deadlock issues), and dealing with unusual situations like module unloading.
||Maneesh has got his Bachelor of Engineering in Electronics from Ravishankar University, Raipur (India) and has a Post Graduate Diploma in Software
Technology from National Centre of Software Technology, Bangalore(India).
Maneesh has been working with IBM Global Services India since Dec. 1997. His area of expertise includes system software mainly operating system kernel, filesystem, device drivers. As a part of IBM's Linux Technology Center, Maneesh works on Linux Kernel Development. He looks into the Linux kernel scalabilty area for making linux run better on multi-processor computers.
See Talk Schedule