Boundaries That Protect the Core
Why host environments separate privileged code, user processes, and device-facing responsibilities.
Privilege changes the cost of an error
Kernel-mode code can access resources and coordinate hardware on behalf of the system. A faulty assumption in that boundary can affect more than one application, which is why its interfaces and ownership rules are deliberately constrained.
User mode provides a different boundary
User-mode services and applications normally operate with narrower access and process isolation. They can expose rich policy and application behavior without each component receiving unrestricted access to device resources.
Drivers can be layered
A bus, class, function, and filter driver can divide responsibility. The layers communicate through documented interfaces and shared state, so the core can distinguish transport, policy, and device-specific work.
Boundaries explain vocabulary
When documentation says kernel mode, user mode, filter, or function driver, it is describing authority and responsibility, not a product category. The terms help readers locate the risk and ownership of an operation.
Reference facts
- Kernel mode
- Privileged execution context for core system and hardware-facing responsibilities.
- User mode
- More isolated context for applications and services.
Questions and answers
Why not put every device operation in an application?
Applications should not each own privileged resource access, transport rules, and device arbitration. Shared driver layers provide a controlled system boundary.
What does a filter driver do?
A filter participates alongside another driver to observe or modify a defined portion of a device stack. Its exact role depends on the documented stack contract.