Skip to content

Subsystem · The driver framework

IOKit

A C++ object model that turns hardware into a tree of nodes, matched at boot and unloaded on demand.

IORegistry treeThe IORegistry is a parent/child tree of IOService instances rooted at the platform expert. Userspace attaches via IOUserClient.IORegistryEntryrootIOPlatformExperthardware bring-upIOPCIBridgeiokit / pciIOACPIPlatformExpertiokit / acpiAppleARMPMUiokit / armIOPlatformBatteryManagementiokit / batteryIOPCIDevicevendor 0x14e4IOPCIDevicevendor 0x8086AppleBCM43xxWi-Fi drivermatchesuserspace appIOServiceOpenIOConnectCallMethodIOUserClientiokit/Kernelmach_msgEvery node here is reachable from ioreg -l. Live tree, queried by anything (debugger, power manager, fan controller).
IOKit: structure at a glance.

No articles yet for IOKit.

The source link above is the best place to start in the meantime.

Articles