IOUserClient
IOUserClient is a kernel-side class in the IOKit framework that represents a per-process connection between user space and a kernel extension (kext). It provides the interface through which user-space code can invoke kernel methods exposed by an IOService-based provider. A user client is created when a user-space application opens an IOService that implements an IOUserClient subclass, typically via IOServiceOpen or similar IOKit APIs, and is identified by a task port representing the calling process.
In operation, an IOUserClient holds a reference to its owning provider and the client task (the user
Lifecycle and security are central concerns. The IOUserClient instance is created by the provider during an
Common usage patterns involve a kernel driver exposing device-like services to user space, where applications obtain