Arm interview question

What is the difference between a mutex and a semaphore?