The DLM is for Application Developers
With NT today, application developers have several synchronization primitives:
- Interlocked functions
- WaitFor*Object (Single/Multiple)
- Mutexes
- Semaphores
- Events
- Critical Sections (for threads within a process)
These are all designed for thread and process synchronization within a single system