Fast mutexes
- Safe, efficient kernel conditional queueing in Linux
- All operations performed atomically
- futex_wait(futex_t *futex, int val)
- if futex->val is equal to val, then sleep - otherwise return
- futex_wake(futex_t *futex)
- wakes one waiting thread if there is any.
- futex_wait(futex_t *futex, int val)