latches and enqueues are both types of locks. latches are lightweight serialization devices. enqueues are heavyweight serialization devices. A semaphore is an operating system supplied serialization device that one might use to implemented latching or enqueues.