Kernel Framework Reference

The I/O Kit library provides the APIs and support for kernel-resident device drivers. It defines the base class for device drivers (IOService), several helper classes, and the families supporting many types of devices. The header files of the I/O Kit library are packaged in the Kernel framework.


Framework

/System/Library/Frameworks/Kernel.framework

Header file directories

/System/Library/Frameworks/Kernel.framework/Headers

Companion document

ATA  |  AVC  |  Audio  |  Bluetooth  |  FireWire  |  Graphics  |  Human Interface Device System  |  Network  |  PCCard  |  PCI  |  Power Management  |  SBP-2  |  Storage  |  Storage/ATA  |  USB  |  libkern

Headers

bpf
init
in_arp
IOACPIPlatformDevice
IOACPIPlatformExpert
IOBDBlockStorageDevice
IOBDBlockStorageDriver
IOBDMedia
IOBufferMemoryDescriptor
IOCatalogue
IOCommand
IOCommandGate
IOCommandPool
IODataQueue
IODataQueueShared
IODeviceMemory
IODisplay
IODMACommand
IOEthernetInterface
IOEventSource
IOFilterInterruptEventSource
IOFilterScheme
IOFireWireBus
IOFireWireIRMAllocation
IOFireWireLocalNode
IOFireWirePowerManager
IOFireWireStorageCharacteristics
IOFWAsyncStreamListener
IOFWPhysicalAddressSpace
IOFWPseudoAddressSpace
IOHIDElement
IOHIDEventDriver
IOHIDEventService
IOHIDInterface
IOHIDKeys
IOI2CInterface
IOInterleavedMemoryDescriptor
IOInterruptEventSource
IOKernelDebugger
IOKitServer
IOLib
IOLocks
IOMemoryCursor
IOMemoryDescriptor
IOMessage
IOMultiMemoryDescriptor
IONDRVFramebuffer
IONotifier
IOPM
IOPMPowerSource
IOPMpowerState
IORangeAllocator
IORegistryEntry
IORemoteConfigDirectory
IOReturn
IOSCSIParallelInterfaceController
IOService
IOServicePM
IOSharedDataQueue
IOStream
IOStreamShared
IOTimerEventSource
IOTypes
IOUSBCompositeDriver
IOUSBControllerV3
IOUSBHIDDriver
IOUSBHubDevice
IOUserClient
IOVideoStream
IOWorkLoop
ip6_fw
ip_fw2
kern_control
kern_event
kern_memorystatus
kpi_interface
kpi_interfacefilter
kpi_ipfilter
kpi_mbuf
kpi_protocol
kpi_socket
kpi_socketfilter
mac_data
mac_policy
nd6
RootDomain
security.defs

ATA

ATADeviceNub
ATATimerEventSource
IOATABusCommand
IOATABusInfo
IOATACommand
IOATAController
IOATADevConfig
IOATADevice
IOATATypes
IOPCIATA
MacIOATA

AVC

IOFireWireAVCCommand
IOFireWireAVCTargetSpace
IOFireWireAVCUnit
IOFireWirePCRSpace

Audio

IOAudioControl
IOAudioDefines
IOAudioDevice
IOAudioEngine
IOAudioLevelControl
IOAudioPort
IOAudioStream
IOAudioToggleControl
IOAudioTypes

Bluetooth

Bluetooth

FireWire

IOConfigDirectory
IOFireWireController
IOFireWireDevice
IOFireWireFamilyCommon
IOFireWireNub
IOFireWireUnit
IOFWAddressSpace
IOFWCommand
IOFWDCLProgram
IOFWIsochChannel
IOFWLocalIsochPort
IOLocalConfigDirectory

Graphics

IOFramebuffer
IOFramebufferShared
IOGraphicsTypes

Human Interface Device System

IOHIDDescriptorParser
IOHIDDevice

Network

IOBasicOutputQueue
IOEthernetController
IOEthernetStats
IOGatedOutputQueue
IOMbufMemoryCursor
IONetworkController
IONetworkData
IONetworkInterface
IONetworkMedium
IONetworkStats
IOOutputQueue
IOPacketQueue

PCCard

IOCardBusDevice
IOPCCard16Device
IOPCCard16Enabler
IOPCCardBridge
IOPCCardEjectController

PCI

IOAGPDevice
IOPCIBridge
IOPCIDevice

Power Management

IOPowerConnection

SBP-2

IOFireWireSBP2Login
IOFireWireSBP2LSIWorkaroundDescriptor
IOFireWireSBP2LUN
IOFireWireSBP2ManagementORB
IOFireWireSBP2ORB
IOFireWireSBP2Target
IOFireWireSerialBusProtocolTransport

Storage

IOBlockStorageDevice
IOBlockStorageDriver
IOCDBlockStorageDevice
IOCDBlockStorageDriver
IOCDMedia
IOCDPartitionScheme
IODVDBlockStorageDevice
IODVDBlockStorageDriver
IODVDMedia
IOMedia
IOPartitionScheme
IOStorage
IOStorageDeviceCharacteristics
IOStorageProtocolCharacteristics

Storage/ATA

IOATAPIProtocolTransport

USB

IOUSBController
IOUSBControllerV2
IOUSBDevice
IOUSBInterface
IOUSBPipe
USB
USBHub
USBSpec

libkern

OSArray
OSAtomic
OSBoolean
OSCollection
OSCollectionIterator
OSData
OSDictionary
OSEndianTypes
OSIterator
OSMetaClass
OSNumber
OSObject
OSOrderedSet
OSSerialize
OSSet
OSString
OSSymbol
OSUnserialize

Classes

IOBDBlockStorageDevice
IOBDBlockStorageDriver
IOBDMedia
IOBigMemoryCursor
IOBufferMemoryDescriptor
IOCatalogue
IOCommand
IOCommandGate
IOCommandPool
IODataQueue
IODBDMAMemoryCursor
IODeviceMemory
IODMACommand
IOEthernetInterface
IOEventSource
IOFilterInterruptEventSource
IOFilterScheme
IOFireWireBus
IOFireWireLocalNodeAux
IOFWAsyncStreamListener
IOFWBufferFillIsochPort
IOFWPhysicalAddressSpaceAux
IOFWPseudoAddressSpace
IOFWPseudoAddressSpaceAux
IOHIDInterface
IOHIDPointing
IOHIDReportHandler
IOInterleavedMemoryDescriptor
IOInterruptEventSource
IOKernelDebugger
IOLittleMemoryCursor
IOMemoryCursor
IOMemoryDescriptor
IOMemoryMap
IOMultiMemoryDescriptor
IONaturalMemoryCursor
IONotifier
IOPMprot
IORangeAllocator
IORegistryEntry
IORegistryIterator
IORemoteConfigDirectory
IOService
IOSharedDataQueue
IOStream
IOStreamBuffer
IOTimerEventSource
IOUSBControllerV3
IOUSBHubDevice
IOUserClient
IOWorkLoop

ATA

ATADeviceNub
ATATimerEventSource
IOATABusCommand
IOATABusInfo
IOATACommand
IOATAController
IOATADevConfig
IOATADevice
IOPCIATA
MacIOATA

AVC

AVCCommandHandlerInfo
AVCConnectionRecord
AVCSubunitInfo
IOFireWireAVCAsynchronousCommand
IOFireWireAVCCommand
IOFireWireAVCNub
IOFireWireAVCSubUnit
IOFireWireAVCTargetSpace
IOFireWireAVCUnit
IOFireWirePCRSpace
UCInfo

Audio

IOAudioControl
IOAudioDevice
IOAudioEngine
IOAudioLevelControl
IOAudioPort
IOAudioStream
IOAudioToggleControl

FireWire

IOConfigDirectory
IODCLProgram
IOFireWireController
IOFireWireControllerAux
IOFireWireDevice
IOFireWireNub
IOFireWireNubAux
IOFireWireUnit
IOFireWireUnitAux
IOFWAddressSpace
IOFWAsyncCommand
IOFWAsyncPHYCommand
IOFWAsyncStreamCommand
IOFWBusCommand
IOFWCommand
IOFWCompareAndSwapCommand
IOFWDelayCommand
IOFWIsochChannel
IOFWLocalIsochPort
IOFWReadQuadCommand
IOFWWriteQuadCommand
IOLocalConfigDirectory

Graphics

IOFramebuffer

Human Interface Device System

IOHIDDevice

Network

IOBasicOutputQueue
IOEthernetController
IOGatedOutputQueue
IOMbufBigMemoryCursor
IOMbufDBDMAMemoryCursor
IOMbufLittleMemoryCursor
IOMbufMemoryCursor
IOMbufNaturalMemoryCursor
IONetworkController
IONetworkData
IONetworkInterface
IONetworkMedium
IOOutputQueue
IOPacketQueue

PCCard

IOCardBusDevice
IOPCCard16Device
IOPCCard16Enabler
IOPCCardEjectController

PCI

IOAGPDevice
IOPCI2PCIBridge
IOPCIBridge
IOPCIDevice

Power Management

IOPowerConnection

SBP-2

IOFireWireSBP2Login
IOFireWireSBP2LSIWorkaroundDescriptor
IOFireWireSBP2LUN
IOFireWireSBP2ManagementORB
IOFireWireSBP2ORB
IOFireWireSBP2Target
IOFireWireSerialBusProtocolTransport

Storage

IOBlockStorageDevice
IOBlockStorageDriver
IOCDBlockStorageDevice
IOCDMedia
IODVDBlockStorageDevice
IODVDBlockStorageDriver
IODVDMedia
IOMedia
IOPartitionScheme
IOStorage

Storage/ATA

IOATAPIProtocolTransport

USB

IOUSBController
IOUSBControllerV2
IOUSBDevice
IOUSBInterface
IOUSBPipe

libkern

OSArray
OSBoolean
OSCollection
OSCollectionIterator
OSData
OSDictionary
OSIterator
OSMetaClass
OSMetaClassBase
OSNumber
OSObject
OSOrderedSet
OSSerialize
OSSet
OSString
OSSymbol

Other References

Constants, Globals, and Macros Index
Data Types Index
Functions/Methods Index

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.