by David Kalinsky, Kalinsky Associates
Users of real-time operating systems (RTOS) are familiar with the various kinds of semaphores they offer. Depending on which RTOS you choose, these may include counting semaphores, binary semaphores and mutex semaphores.
As the embedded software world transitions into the era of multi-core processing, these 3 “traditional” kinds of semaphores are being joined in a number of multi-core oriented operating systems by a fourth kind of semaphore: the multiple reader – writer lock. In this article, we will see how these new semaphores work, and which multi-core application problems are best solved using this special kind of semaphore.