Broadcom Interview Question

explain mutex and semaphore. How to use them?