Embedded Systems Conference – Silicon Valley

22 April 2010

As I’m sure you’re well aware, the ash cloud from the Eyjafjallajokull volcano (which began erupting in mid-March) pretty much brought much of European airspace to a standstill over last weekend and into this week. Now that UK airspace has been reopened, it appears I can resume plans for my visit to the Embedded Systems [...]

Mutex vs. Semaphores – Part 3 (final part): Mutual Exclusion Problems

5 October 2009

As hopefully you can see from the previous posting, the mutex is a significantly safer mechanism to use for implementing mutual exclusion around shared resources. Nevertheless, there are still a couple of problems that use of the mutex (in preference to the semaphore) will not solve. These are: Circular deadlock Non-cooperation Circular Deadlock Circular deadlock, [...]

Mutex vs. Semaphores – Part 2: The Mutex

11 September 2009

In Part 1 of this series we looked at the history of the binary and counting semaphore, and then went on to discuss some of the associated problem areas. In this posting I aim to show how a different RTOS construct, the mutex, may overcome some, if not all, of these weaknesses. To address the [...]

Mutex vs. Semaphores – Part 1: Semaphores

7 September 2009

It never ceases to amaze me how often I see postings in newsgroups, etc. asking the difference between a semaphore and a mutex. Probably what baffles me more is that over 90% of the time the responses given are either incorrect or missing the key differences. The most often quoted response is that of the [...]