Good Explanation aambazinga
Anyone for details see here
They are NOT the same thing.
They are used for different purposes!
While both types of semaphores have a full/empty state and use the same API, their usage is very different.
Mutex is for exclusive access to a resource(data structure, file, etc..).
A Binary semaphore should be used for synchronization (i.e. "Hey Someone! This occurred!"). The Binary "giver" simply notifies whoever the "taker" that what they were waiting for happened.