«
apfelkern
Implementation sources
Exceptions & traps
Exception vectors and first-level handlers
Second-level exception handlers
Kernel entry and CPU bring-up
Mach trap table
BSD system call dispatch (arm)
Mach exception delivery
Processor and exception-syndrome registers (arm64)
Saved-state (exception frame) accessors
Exception delivery structures
Thread and thread_ro structures
Debugging
Kernel debugging and panic API
Panic and debugger entry
Kernel Debug Protocol (KDP)
Kernel core dumps
Userspace debugging
Task-port access and authorization
Task suspension, resume tokens, and thread enumeration
Thread suspension, aborts, and state access
Exception-port registration and restoration
arm64 register and debug-state access
arm64 debug-register installation
Debugger memory operations and cache attributes
VM protection, code writes, and target cache traversal
Physical-page instruction-cache synchronization
IPC rights and reply-port copyin checks
MIG (Mach Interface Generator)
MIG compiler driver
MIG codegen: header (.h)
MIG codegen: user stubs
MIG codegen: server demux
MIG routine model
MIG type marshaling
LLDB debugserver
debugserver task control and exception thread
debugserver Mach exception messages and saved ports
debugserver process launch, attach, stop, and resume
debugserver per-thread suspension and resume preparation
debugserver all-stop thread coordination
debugserver memory writes and instruction-cache flushes
debugserver arm64 single-step state
Register spotlights
The x18 register
Kernel Programming Guide
About This Document
Keep Out
Kernel Architecture Overview
The Early Boot Process
Security Considerations
Performance Considerations
Kernel Programming Style
Mach Overview
Memory and Virtual Memory
Mach Scheduling and Thread Interfaces
Bootstrap Contexts
I/O Kit Overview
BSD Overview
File Systems Overview
Network Architecture
Boundary Crossings
Synchronization Primitives
Miscellaneous Kernel Services
Kernel Extension Overview
Building and Debugging Kernels
Bibliography
Revision History
Glossary
BSD man pages
Mach
MIG routines
Tasks & threads
policy.h
processor_set.h
semaphore.h
sync.h
sync_policy.h
task.h
task_info.h
task_inspect.h
task_policy.h
task_special_ports.h
thread_act.h
thread_info.h
thread_policy.h
thread_special_ports.h
thread_state.h
thread_status.h
thread_switch.h
Ports & messages
bootstrap.h
mach.h
mach_init.h
mach_interface.h
mach_port.h
mach_right.h
mach_types.h
message.h
mig.h
mig_errors.h
mig_strncpy_zerofill_support.h
mig_voucher_support.h
ndr.h
notify.h
port.h
port_obj.h
rpc.h
std_types.h
Virtual memory
dyld_kernel.h
dyld_pager.h
mach_vm.h
memory_entry.h
memory_object_types.h
shared_memory_server.h
shared_region.h
vm_attributes.h
vm_behavior.h
vm_inherit.h
vm_map.h
vm_page_size.h
vm_param.h
vm_prot.h
vm_purgable.h
vm_region.h
vm_statistics.h
vm_sync.h
vm_task.h
vm_types.h
Host & processors
boolean.h
clock.h
clock_priv.h
clock_reply.h
clock_types.h
error.h
host_info.h
host_notify.h
host_priv.h
host_reboot.h
host_security.h
host_special_ports.h
kern_return.h
kmod.h
mach_error.h
mach_host.h
mach_param.h
mach_syscalls.h
mach_time.h
mach_traps.h
machine.h
processor.h
processor_info.h
time_value.h
Exceptions
exc.h
exception.h
exception_types.h
Vouchers & misc
audit_triggers_types.h
doubleagent_types.h
mach_voucher.h
mach_voucher_types.h
sdt.h
Architecture
_structs.h
asm.h
boolean.h
exception.h
kern_return.h
ndr_def.h
processor_info.h
rpc.h
sdt_isa.h
thread_state.h
thread_status.h
traps.h
vm_param.h
vm_types.h
_structs.h
boolean.h
exception.h
kern_return.h
ndr_def.h
processor_info.h
rpc.h
sdt.h
sdt_isa.h
thread_state.h
thread_status.h
vm_param.h
vm_types.h
BSD / POSIX
Types & conventions
_types.h
errno.h
inttypes.h
limits.h
stdint.h
sys/__endian.h
sys/_endian.h
sys/_select.h
sys/_types.h
sys/_types/_blkcnt_t.h
sys/_types/_blksize_t.h
sys/_types/_caddr_t.h
sys/_types/_clock_t.h
sys/_types/_ct_rune_t.h
sys/_types/_dev_t.h
sys/_types/_errno_t.h
sys/_types/_fd_clr.h
sys/_types/_fd_copy.h
sys/_types/_fd_def.h
sys/_types/_fd_isset.h
sys/_types/_fd_set.h
sys/_types/_fd_setsize.h
sys/_types/_fd_zero.h
sys/_types/_filesec_t.h
sys/_types/_fsblkcnt_t.h
sys/_types/_fsfilcnt_t.h
sys/_types/_fsid_t.h
sys/_types/_fsobj_id_t.h
sys/_types/_gid_t.h
sys/_types/_graftdmg_un.h
sys/_types/_guid_t.h
sys/_types/_id_t.h
sys/_types/_in_addr_t.h
sys/_types/_in_port_t.h
sys/_types/_ino64_t.h
sys/_types/_ino_t.h
sys/_types/_int16_t.h
sys/_types/_int32_t.h
sys/_types/_int64_t.h
sys/_types/_int8_t.h
sys/_types/_intptr_t.h
sys/_types/_iovec_t.h
sys/_types/_key_t.h
sys/_types/_mach_port_t.h
sys/_types/_mbstate_t.h
sys/_types/_mode_t.h
sys/_types/_mount_t.h
sys/_types/_nlink_t.h
sys/_types/_null.h
sys/_types/_o_dsync.h
sys/_types/_o_sync.h
sys/_types/_off_t.h
sys/_types/_offsetof.h
sys/_types/_os_inline.h
sys/_types/_pid_t.h
sys/_types/_posix_vdisable.h
sys/_types/_ptrdiff_t.h
sys/_types/_rsize_t.h
sys/_types/_rune_t.h
sys/_types/_s_ifmt.h
sys/_types/_sa_family_t.h
sys/_types/_seek_set.h
sys/_types/_sigaltstack.h
sys/_types/_sigset_t.h
sys/_types/_size_t.h
sys/_types/_socklen_t.h
sys/_types/_ssize_t.h
sys/_types/_suseconds_t.h
sys/_types/_time_t.h
sys/_types/_timespec.h
sys/_types/_timeval.h
sys/_types/_timeval32.h
sys/_types/_timeval64.h
sys/_types/_u_char.h
sys/_types/_u_int.h
sys/_types/_u_int16_t.h
sys/_types/_u_int32_t.h
sys/_types/_u_int64_t.h
sys/_types/_u_int8_t.h
sys/_types/_u_short.h
sys/_types/_ucontext.h
sys/_types/_ucontext64.h
sys/_types/_uid_t.h
sys/_types/_uintptr_t.h
sys/_types/_useconds_t.h
sys/_types/_uuid_t.h
sys/_types/_va_list.h
sys/_types/_vnode_t.h
sys/_types/_wchar_t.h
sys/_types/_wint_t.h
sys/cdefs.h
sys/endian.h
sys/errno.h
sys/param.h
sys/syslimits.h
sys/types.h
sysexits.h
Threads & scheduling
pthread.h
pthread/qos.h
pthread/sched.h
sched.h
semaphore.h
sys/posix_sem.h
sys/qos.h
sys/semaphore.h
Memory & IPC
mach_debug/hash_info.h
mach_debug/ipc_info.h
mach_debug/lockgroup_info.h
mach_debug/mach_debug.h
mach_debug/mach_debug_types.h
mach_debug/page_info.h
mach_debug/vm_info.h
mach_debug/zone_info.h
sys/buf.h
sys/ipc.h
sys/mbuf.h
sys/mman.h
sys/msg.h
sys/posix_shm.h
sys/sem.h
sys/shm.h
sys/vadvise.h
sys/vm.h
sys/vmmeter.h
Strings & text
libgen.h
regex.h
string.h
strings.h
Atomics, byte order & libkern
libkern/OSAtomic.h
libkern/OSAtomicDeprecated.h
libkern/OSAtomicQueue.h
libkern/OSByteOrder.h
libkern/OSCacheControl.h
libkern/OSDebug.h
libkern/OSKextLib.h
libkern/OSReturn.h
libkern/OSSpinLockDeprecated.h
libkern/OSThermalNotification.h
libkern/OSTypes.h
Data structures
sys/queue.h
sys/rbtree.h
sys/sbuf.h
Events & kqueue
poll.h
sys/ev.h
sys/event.h
sys/poll.h
sys/select.h
Files & directories
aio.h
copyfile.h
dirent.h
fcntl.h
fnmatch.h
fts.h
ftw.h
glob.h
paths.h
removefile.h
stdio.h
sys/acl.h
sys/aio.h
sys/attr.h
sys/clonefile.h
sys/dir.h
sys/dirent.h
sys/disk.h
sys/fcntl.h
sys/filedesc.h
sys/fileport.h
sys/filio.h
sys/fsgetpath.h
sys/ioccom.h
sys/ioctl.h
sys/loadable_fs.h
sys/mount.h
sys/paths.h
sys/quota.h
sys/stat.h
sys/statvfs.h
sys/stdio.h
sys/uio.h
sys/unistd.h
sys/vnode.h
sys/vstat.h
sys/xattr.h
unistd.h
utime.h
Processes & signals
bootstrap.h
dlfcn.h
err.h
getopt.h
grp.h
libproc.h
notify.h
pwd.h
sandbox.h
setjmp.h
signal.h
spawn.h
stdlib.h
sys/acct.h
sys/kauth.h
sys/kern_control.h
sys/kern_event.h
sys/lctx.h
sys/lockf.h
sys/pipe.h
sys/proc.h
sys/proc_info.h
sys/ptrace.h
sys/reboot.h
sys/resource.h
sys/resourcevar.h
sys/signal.h
sys/spawn.h
sys/syscall.h
sys/sysctl.h
sys/ucred.h
sys/unpcb.h
sys/user.h
sys/utsname.h
sys/wait.h
ulimit.h
Networking
arpa/ftp.h
arpa/inet.h
arpa/nameser.h
arpa/nameser_compat.h
arpa/telnet.h
arpa/tftp.h
ifaddrs.h
net/bpf.h
net/dlil.h
net/ethernet.h
net/if.h
net/if_arp.h
net/if_dl.h
net/if_llc.h
net/if_media.h
net/if_mib.h
net/if_types.h
net/if_utun.h
net/if_var.h
net/if_var_status.h
net/kext_net.h
net/ndrv.h
net/net_kev.h
net/pfkeyv2.h
net/route.h
netdb.h
netinet/bootp.h
netinet/icmp6.h
netinet/icmp_var.h
netinet/if_ether.h
netinet/igmp.h
netinet/igmp_var.h
netinet/in.h
netinet/in_pcb.h
netinet/in_systm.h
netinet/in_var.h
netinet/ip.h
netinet/ip6.h
netinet/ip_icmp.h
netinet/ip_var.h
netinet/tcp.h
netinet/tcp_fsm.h
netinet/tcp_seq.h
netinet/tcp_timer.h
netinet/tcp_var.h
netinet/tcpip.h
netinet/udp.h
netinet/udp_var.h
sys/netport.h
sys/protosw.h
sys/socket.h
sys/socketvar.h
sys/sockio.h
sys/un.h
sys/vsock.h
Time
sys/time.h
sys/timeb.h
sys/times.h
sys/timex.h
time.h
Terminals
sys/ioctl_compat.h
sys/termios.h
sys/tty.h
sys/ttychars.h
sys/ttycom.h
sys/ttydefaults.h
termios.h
util.h
Audit (BSM)
bsm/audit.h
bsm/audit_domain.h
bsm/audit_errno.h
bsm/audit_fcntl.h
bsm/audit_filter.h
bsm/audit_internal.h
bsm/audit_kevents.h
bsm/audit_record.h
bsm/audit_session.h
bsm/audit_socket_type.h
bsm/audit_uevents.h
bsm/libbsm.h
Tracing & debugging
asl.h
sys/conf.h
sys/dtrace.h
sys/fasttrap.h
sys/gmon.h
sys/kdebug.h
sys/kdebug_signpost.h
sys/kernel_types.h
sys/lockstat.h
sys/log_data.h
sys/msgbuf.h
sys/random.h
sys/snapshot.h
sys/sys_domain.h
sys/syslog.h
sys/trace.h
syslog.h
Misc
sys/vcmd.h
Kernel (KEXT)
C++ classes
kern/ primitives
kern/arithmetic_128.h
kern/assert.h
kern/backtrace.h
kern/block_hint.h
kern/cambria_layout.h
kern/circle_queue.h
kern/clock.h
kern/coalition.h
kern/cs_blobs.h
kern/debug.h
kern/ecc.h
kern/energy_perf.h
kern/exc_guard.h
kern/exc_resource.h
kern/ext_paniclog.h
kern/extmod_statistics.h
kern/host.h
kern/hv_io_notifier.h
kern/hv_support.h
kern/hv_support_kern.h
kern/hv_support_kext.h
kern/hvg_hypercall.h
kern/ipc_mig.h
kern/kcdata.h
kern/kcdata_private.h
kern/kern_cdata.h
kern/kern_types.h
kern/kext_alloc.h
kern/ledger.h
kern/llc_error.h
kern/lock_attr.h
kern/lock_group.h
kern/lock_mtx.h
kern/lock_rw.h
kern/lock_sleep.h
kern/lock_types.h
kern/locks.h
kern/macro_help.h
kern/monotonic.h
kern/mpqueue.h
kern/mpsc_queue.h
kern/panic_call.h
kern/percpu.h
kern/policy_internal.h
kern/priority_queue.h
kern/processor.h
kern/queue.h
kern/remote_time.h
kern/restartable.h
kern/sched_prim.h
kern/smr_types.h
kern/stackshot_kpi.h
kern/task.h
kern/task_ref.h
kern/telemetry.h
kern/thread.h
kern/thread_call.h
kern/thread_group.h
kern/timer_call.h
kern/trap_telemetry.h
kern/trustcache.h
kern/turnstile.h
kern/waitq.h
kern/work_interval.h
Mach (kernel)
mach/arcade_upcall_server.h
mach/arm64/asm.h
mach/arm/_structs.h
mach/arm/sdt_isa.h
mach/arm/syscall_sw.h
mach/arm/thread_status.h
mach/arm/vm_param.h
mach/audit_triggers_server.h
mach/clock_reply_server.h
mach/coalition_notification_server.h
mach/doubleagent_mig_server.h
mach/exc_server.h
mach/fairplayd_notification_server.h
mach/iocompressionstats_notification_server.h
mach/ktrace_background.h
mach/mach_exc_server.h
mach/mach_host.h
mach/mach_interface.h
mach/mach_port.h
mach/mach_time.h
mach/mach_types.h
mach/mach_vm.h
mach/mach_voucher_attr_control.h
mach/mach_voucher_types.h
mach/machine/asm.h
mach/machine/sdt.h
mach/memory_error_notification_server.h
mach/memory_object_types.h
mach/message.h
mach/notify_server.h
mach/port.h
mach/semaphore.h
mach/shared_memory_server.h
mach/shared_region.h
mach/sysdiagnose_notification_server.h
mach/task.h
mach/task_access.h
mach/task_access_server.h
mach/task_info.h
mach/telemetry_notification_server.h
mach/thread_act.h
mach/upl.h
mach/vfs_nspace.h
mach/vfs_nspace_server.h
mach/vm_map.h
mach/vm_param.h
mach/vm_statistics.h
mach/vm_types.h
mach/vm_types_unsafe.h
BSD (kernel)
miscfs/devfs/devfs.h
miscfs/fifofs/fifo.h
miscfs/specfs/specdev.h
miscfs/union/union.h
sys/__endian.h
sys/_endian.h
sys/_structs.h
sys/_types.h
sys/_types/_caddr_t.h
sys/_types/_fd_def.h
sys/_types/_null.h
sys/_types/_offsetof.h
sys/_types/_ptrdiff_t.h
sys/_types/_rsize_t.h
sys/_types/_size_t.h
sys/_types/_uintptr_t.h
sys/_types/_user32_itimerval.h
sys/_types/_user32_ntptimeval.h
sys/_types/_user32_timespec.h
sys/_types/_user32_timeval.h
sys/_types/_user32_timex.h
sys/_types/_user64_itimerval.h
sys/_types/_user64_ntptimeval.h
sys/_types/_user64_timespec.h
sys/_types/_user64_timeval.h
sys/_types/_user64_timex.h
sys/_types/_user_timespec.h
sys/_types/_user_timeval.h
sys/_types/_va_list.h
sys/_types/_wchar_t.h
sys/appleapiopts.h
sys/attr.h
sys/cdefs.h
sys/commpage.h
sys/conf.h
sys/constrained_ctypes.h
sys/dir.h
sys/dirent.h
sys/disk.h
sys/dkstat.h
sys/domain.h
sys/errno.h
sys/ev.h
sys/event.h
sys/fcntl.h
sys/file.h
sys/imgact.h
sys/ioctl.h
sys/ipc.h
sys/kauth.h
sys/kdebug.h
sys/kdebug_kernel.h
sys/kdebug_private.h
sys/kern_control.h
sys/kern_event.h
sys/kernel.h
sys/kernel_types.h
sys/kpi_mbuf.h
sys/kpi_socket.h
sys/kpi_socketfilter.h
sys/lock.h
sys/malloc.h
sys/mbuf.h
sys/md5.h
sys/mman.h
sys/mount.h
sys/msg.h
sys/namei.h
sys/param.h
sys/proc.h
sys/random.h
sys/resource.h
sys/resource_private.h
sys/select.h
sys/sem.h
sys/shm.h
sys/signal.h
sys/socket.h
sys/socketvar.h
sys/sockio.h
sys/stat.h
sys/stdio.h
sys/sysctl.h
sys/syslog.h
sys/systm.h
sys/time.h
sys/timex.h
sys/ttycom.h
sys/types.h
sys/ubc.h
sys/ucontext.h
sys/ucred.h
sys/uio.h
sys/un.h
sys/unicode.h
sys/unistd.h
sys/utfconv.h
sys/vm.h
sys/vmparam.h
sys/vnode.h
sys/vnode_if.h
sys/wait.h
sys/xattr.h
uuid/uuid.h
vfs/vfs_support.h
Networking KPIs
net/bpf.h
net/bpf_private.h
net/dlil.h
net/ethernet.h
net/if.h
net/if_dl.h
net/if_ether.h
net/if_ipsec.h
net/if_mib_private.h
net/if_private.h
net/if_var.h
net/if_var_private.h
net/if_vlan_var.h
net/init.h
net/kpi_interface.h
net/kpi_interfacefilter.h
net/kpi_protocol.h
net/necp.h
net/network_agent.h
net/radix.h
net/route_private.h
netinet6/ah.h
netinet6/esp.h
netinet6/in6.h
netinet6/in6_private.h
netinet6/in6_var.h
netinet6/ipcomp.h
netinet6/ipsec.h
netinet6/nd6.h
netinet6/raw_ip6.h
netinet6/scope6_var.h
netinet/icmp6.h
netinet/in.h
netinet/in_arp.h
netinet/in_pcb.h
netinet/in_private.h
netinet/in_stat.h
netinet/kpi_ipfilter.h
netinet/mptcp_var.h
netinet/tcp_private.h
netinet/tcp_var.h
libkern & os
libkern/Block.h
libkern/OSAtomic.h
libkern/OSBase.h
libkern/OSKextLib.h
libkern/OSMalloc.h
libkern/OSTypes.h
libkern/_OSByteOrder.h
libkern/arm/OSByteOrder.h
libkern/arm/_OSByteOrder.h
libkern/c++/OSAllocation.h
libkern/c++/OSArray.h
libkern/c++/OSBoolean.h
libkern/c++/OSBoundedArray.h
libkern/c++/OSBoundedArrayRef.h
libkern/c++/OSBoundedPtr.h
libkern/c++/OSBoundedPtrFwd.h
libkern/c++/OSCPPDebug.h
libkern/c++/OSCollection.h
libkern/c++/OSCollectionIterator.h
libkern/c++/OSContainers.h
libkern/c++/OSData.h
libkern/c++/OSDictionary.h
libkern/c++/OSEndianTypes.h
libkern/c++/OSIterator.h
libkern/c++/OSLib.h
libkern/c++/OSMetaClass.h
libkern/c++/OSNumber.h
libkern/c++/OSObject.h
libkern/c++/OSOrderedSet.h
libkern/c++/OSPtr.h
libkern/c++/OSSerialize.h
libkern/c++/OSSet.h
libkern/c++/OSSharedPtr.h
libkern/c++/OSString.h
libkern/c++/OSSymbol.h
libkern/c++/OSUnserialize.h
libkern/c++/bounded_array.h
libkern/c++/bounded_array_ref.h
libkern/c++/bounded_ptr.h
libkern/c++/bounded_ptr_fwd.h
libkern/c++/intrusive_shared_ptr.h
libkern/c++/safe_allocation.h
libkern/copyio.h
libkern/crc.h
libkern/crypto/crypto.h
libkern/crypto/md5.h
libkern/crypto/rand.h
libkern/crypto/sha1.h
libkern/libkern.h
libkern/locks.h
libkern/machine/OSByteOrder.h
libkern/sysctl.h
libkern/tree.h
libkern/version.h
libkern/zconf.h
libkern/zlib.h
mach-o/fat.h
mach-o/fixup-chains.h
mach-o/loader.h
mach-o/nlist.h
os/alloc_util.h
os/atomic.h
os/base.h
os/cpp_util.h
os/log.h
os/object.h
os/trace.h
IOKit
IOKit/AppleBasebandBridgeKeys.h
IOKit/IOBSD.h
IOKit/IOBufferMemoryDescriptor.h
IOKit/IOCatalogue.h
IOKit/IOCircularDataQueue.h
IOKit/IOCircularDataQueueImplementation.h
IOKit/IOCommand.h
IOKit/IOCommandGate.h
IOKit/IOCommandPool.h
IOKit/IOConditionLock.h
IOKit/IODMACommand.h
IOKit/IODMAController.h
IOKit/IODMAEventSource.h
IOKit/IODataQueue.h
IOKit/IODataQueueShared.h
IOKit/IODeviceMemory.h
IOKit/IODeviceTreeSupport.h
IOKit/IOEventSource.h
IOKit/IOFilterInterruptEventSource.h
IOKit/IOGuardPageMemoryDescriptor.h
IOKit/IOInterleavedMemoryDescriptor.h
IOKit/IOInterruptController.h
IOKit/IOInterruptEventSource.h
IOKit/IOInterrupts.h
IOKit/IOKernelReportStructs.h
IOKit/IOKitDebug.h
IOKit/IOKitKeys.h
IOKit/IOKitServer.h
IOKit/IOLib.h
IOKit/IOLocks.h
IOKit/IOMapTypes.h
IOKit/IOMapper.h
IOKit/IOMemoryCursor.h
IOKit/IOMemoryDescriptor.h
IOKit/IOMessage.h
IOKit/IOMultiMemoryDescriptor.h
IOKit/IONVRAM.h
IOKit/IONotifier.h
IOKit/IOPlatformExpert.h
IOKit/IOProviderPropertyMerger.h
IOKit/IORPC.h
IOKit/IORangeAllocator.h
IOKit/IORegistryEntry.h
IOKit/IOReportMacros.h
IOKit/IOReportTypes.h
IOKit/IOReturn.h
IOKit/IOService.h
IOKit/IOServicePM.h
IOKit/IOServiceStateNotificationEventSource.h
IOKit/IOSharedDataQueue.h
IOKit/IOSharedLock.h
IOKit/IOSubMemoryDescriptor.h
IOKit/IOTimeStamp.h
IOKit/IOTimerEventSource.h
IOKit/IOTypes.h
IOKit/IOUserClient.h
IOKit/IOUserServer.h
IOKit/IOWorkLoop.h
IOKit/OSMessageNotification.h
IOKit/PassthruInterruptController.h
IOKit/acpi/IOACPIPlatformDevice.h
IOKit/acpi/IOACPIPlatformExpert.h
IOKit/acpi/IOACPITypes.h
IOKit/assert.h
IOKit/ata/ATADeviceNub.h
IOKit/ata/ATATimerEventSource.h
IOKit/ata/IOATABusCommand.h
IOKit/ata/IOATABusInfo.h
IOKit/ata/IOATACommand.h
IOKit/ata/IOATAController.h
IOKit/ata/IOATADevConfig.h
IOKit/ata/IOATADevice.h
IOKit/ata/IOATATypes.h
IOKit/ata/IOPCIATA.h
IOKit/audio/BigNum128.h
IOKit/audio/IOAudioBlitterLibDispatch.h
IOKit/audio/IOAudioControl.h
IOKit/audio/IOAudioControlUserClient.h
IOKit/audio/IOAudioDebug.h
IOKit/audio/IOAudioDefines.h
IOKit/audio/IOAudioDevice.h
IOKit/audio/IOAudioEngine.h
IOKit/audio/IOAudioEngineUserClient.h
IOKit/audio/IOAudioLevelControl.h
IOKit/audio/IOAudioPort.h
IOKit/audio/IOAudioSelectorControl.h
IOKit/audio/IOAudioStream.h
IOKit/audio/IOAudioTimeIntervalFilter.h
IOKit/audio/IOAudioToggleControl.h
IOKit/audio/IOAudioTypes.h
IOKit/avc/IOFireWireAVCCommand.h
IOKit/avc/IOFireWireAVCConsts.h
IOKit/avc/IOFireWireAVCRequestSpace.h
IOKit/avc/IOFireWireAVCTargetSpace.h
IOKit/avc/IOFireWireAVCUnit.h
IOKit/avc/IOFireWireAVCUserClientCommon.h
IOKit/avc/IOFireWirePCRSpace.h
IOKit/bluetooth/Bluetooth.h
IOKit/bluetooth/BluetoothAssignedNumbers.h
IOKit/bluetooth/IOBluetoothTypes.h
IOKit/firewire/IOConfigDirectory.h
IOKit/firewire/IOFWAddressSpace.h
IOKit/firewire/IOFWCommand.h
IOKit/firewire/IOFWDCL.h
IOKit/firewire/IOFWDCLPool.h
IOKit/firewire/IOFWDCLProgram.h
IOKit/firewire/IOFWDCLTranslator.h
IOKit/firewire/IOFWIsochChannel.h
IOKit/firewire/IOFWIsochPort.h
IOKit/firewire/IOFWLocalIsochPort.h
IOKit/firewire/IOFWPHYPacketListener.h
IOKit/firewire/IOFWPhysicalAddressSpace.h
IOKit/firewire/IOFWPseudoAddressSpace.h
IOKit/firewire/IOFWRegs.h
IOKit/firewire/IOFWSimpleContiguousPhysicalAddressSpace.h
IOKit/firewire/IOFWSimplePhysicalAddressSpace.h
IOKit/firewire/IOFWSyncer.h
IOKit/firewire/IOFWUserObjectExporter.h
IOKit/firewire/IOFWUtils.h
IOKit/firewire/IOFireWireBus.h
IOKit/firewire/IOFireWireController.h
IOKit/firewire/IOFireWireDevice.h
IOKit/firewire/IOFireWireFamilyCommon.h
IOKit/firewire/IOFireWireIRMAllocation.h
IOKit/firewire/IOFireWireLocalNode.h
IOKit/firewire/IOFireWireMultiIsochReceive.h
IOKit/firewire/IOFireWireNub.h
IOKit/firewire/IOFireWirePowerManager.h
IOKit/firewire/IOFireWireUnit.h
IOKit/firewire/IOLocalConfigDirectory.h
IOKit/graphics/IOAccelClientConnect.h
IOKit/graphics/IOAccelSurfaceConnect.h
IOKit/graphics/IOAccelTypes.h
IOKit/graphics/IOAccelerator.h
IOKit/graphics/IODisplay.h
IOKit/graphics/IOFramebuffer.h
IOKit/graphics/IOFramebufferShared.h
IOKit/graphics/IOGraphicsDevice.h
IOKit/graphics/IOGraphicsEngine.h
IOKit/graphics/IOGraphicsInterfaceTypes.h
IOKit/graphics/IOGraphicsTypes.h
IOKit/hidsystem/IOHIDDescriptorParser.h
IOKit/hidsystem/IOHIDParameter.h
IOKit/hidsystem/IOHIDShared.h
IOKit/hidsystem/IOHIDSystem.h
IOKit/hidsystem/IOHIDTypes.h
IOKit/hidsystem/IOHIDUsageTables.h
IOKit/hidsystem/IOHIDWorkLoop.h
IOKit/hidsystem/IOHIDevice.h
IOKit/hidsystem/IOHIKeyboard.h
IOKit/hidsystem/IOHIKeyboardMapper.h
IOKit/hidsystem/IOHIPointing.h
IOKit/hidsystem/IOLLEvent.h
IOKit/hidsystem/ev_keymap.h
IOKit/i2c/IOI2CInterface.h
IOKit/ndrvsupport/IOMacOSTypes.h
IOKit/ndrvsupport/IOMacOSVideo.h
IOKit/ndrvsupport/IONDRVFramebuffer.h
IOKit/ndrvsupport/IONDRVLibraries.h
IOKit/ndrvsupport/IONDRVSupport.h
IOKit/network/IOBasicOutputQueue.h
IOKit/network/IOEthernetController.h
IOKit/network/IOEthernetInterface.h
IOKit/network/IOEthernetStats.h
IOKit/network/IOGatedOutputQueue.h
IOKit/network/IOKernelDebugger.h
IOKit/network/IOMbufMemoryCursor.h
IOKit/network/IONetworkController.h
IOKit/network/IONetworkData.h
IOKit/network/IONetworkInterface.h
IOKit/network/IONetworkMedium.h
IOKit/network/IONetworkStats.h
IOKit/network/IOOutputQueue.h
IOKit/network/IOPacketQueue.h
IOKit/nvram/IONVRAMController.h
IOKit/pci/IOAGPDevice.h
IOKit/pci/IOPCIBridge.h
IOKit/pci/IOPCIDevice.h
IOKit/pci/IOPCIFamilyDefinitions.h
IOKit/platform/AppleMacIO.h
IOKit/platform/AppleMacIODevice.h
IOKit/platform/AppleNMI.h
IOKit/platform/ApplePlatformExpert.h
IOKit/platform/IOPlatformIO.h
IOKit/power/IOPwrController.h
IOKit/pwr_mgt/IOPM.h
IOKit/pwr_mgt/IOPMLibDefs.h
IOKit/pwr_mgt/IOPMPowerSource.h
IOKit/pwr_mgt/IOPMPowerSourceList.h
IOKit/pwr_mgt/IOPMpowerState.h
IOKit/pwr_mgt/IOPowerConnection.h
IOKit/pwr_mgt/RootDomain.h
IOKit/rtc/IORTCController.h
IOKit/sbp2/IOFireWireSBP2LSIWorkaroundDescriptor.h
IOKit/sbp2/IOFireWireSBP2LUN.h
IOKit/sbp2/IOFireWireSBP2Login.h
IOKit/sbp2/IOFireWireSBP2ManagementORB.h
IOKit/sbp2/IOFireWireSBP2ORB.h
IOKit/sbp2/IOFireWireSBP2Target.h
IOKit/sbp2/IOFireWireSBP2UserClient.h
IOKit/sbp2/IOFireWireSBP2UserClientCommon.h
IOKit/sbp2/IOFireWireSerialBusProtocolTransport.h
IOKit/scsi/IOBDServices.h
IOKit/scsi/IOBlockStorageServices.h
IOKit/scsi/IOCompactDiscServices.h
IOKit/scsi/IODVDServices.h
IOKit/scsi/IOReducedBlockServices.h
IOKit/scsi/IOSCSIBlockCommandsDevice.h
IOKit/scsi/IOSCSIMultimediaCommandsDevice.h
IOKit/scsi/IOSCSIPeripheralDeviceNub.h
IOKit/scsi/IOSCSIPeripheralDeviceType00.h
IOKit/scsi/IOSCSIPeripheralDeviceType05.h
IOKit/scsi/IOSCSIPeripheralDeviceType07.h
IOKit/scsi/IOSCSIPeripheralDeviceType0E.h
IOKit/scsi/IOSCSIPrimaryCommandsDevice.h
IOKit/scsi/IOSCSIProtocolInterface.h
IOKit/scsi/IOSCSIProtocolServices.h
IOKit/scsi/IOSCSIReducedBlockCommandsDevice.h
IOKit/scsi/SCSICmds_INQUIRY_Definitions.h
IOKit/scsi/SCSICmds_MODE_Definitions.h
IOKit/scsi/SCSICmds_READ_CAPACITY_Definitions.h
IOKit/scsi/SCSICmds_REPORT_LUNS_Definitions.h
IOKit/scsi/SCSICmds_REQUEST_SENSE_Defs.h
IOKit/scsi/SCSICommandDefinitions.h
IOKit/scsi/SCSICommandOperationCodes.h
IOKit/scsi/SCSIPort.h
IOKit/scsi/SCSITask.h
IOKit/scsi/spi/IOSCSIParallelControllerCharacteristics.h
IOKit/scsi/spi/IOSCSIParallelInterfaceController.h
IOKit/storage/IOAppleLabelScheme.h
IOKit/storage/IOApplePartitionScheme.h
IOKit/storage/IOBDBlockStorageDevice.h
IOKit/storage/IOBDBlockStorageDriver.h
IOKit/storage/IOBDMedia.h
IOKit/storage/IOBDMediaBSDClient.h
IOKit/storage/IOBDTypes.h
IOKit/storage/IOBlockStorageDevice.h
IOKit/storage/IOBlockStorageDriver.h
IOKit/storage/IOCDBlockStorageDevice.h
IOKit/storage/IOCDBlockStorageDriver.h
IOKit/storage/IOCDMedia.h
IOKit/storage/IOCDMediaBSDClient.h
IOKit/storage/IOCDPartitionScheme.h
IOKit/storage/IOCDTypes.h
IOKit/storage/IODVDBlockStorageDevice.h
IOKit/storage/IODVDBlockStorageDriver.h
IOKit/storage/IODVDMedia.h
IOKit/storage/IODVDMediaBSDClient.h
IOKit/storage/IODVDTypes.h
IOKit/storage/IOFDiskPartitionScheme.h
IOKit/storage/IOFilterScheme.h
IOKit/storage/IOFireWireStorageCharacteristics.h
IOKit/storage/IOGUIDPartitionScheme.h
IOKit/storage/IOMedia.h
IOKit/storage/IOMediaBSDClient.h
IOKit/storage/IOPartitionScheme.h
IOKit/storage/IOStorage.h
IOKit/storage/IOStorageCardCharacteristics.h
IOKit/storage/IOStorageControllerCharacteristics.h
IOKit/storage/IOStorageDeviceCharacteristics.h
IOKit/storage/IOStorageProtocolCharacteristics.h
IOKit/storage/ata/IOATAPIProtocolTransport.h
IOKit/storage/ata/IOATAStorageDefines.h
IOKit/stream/IOStream.h
IOKit/stream/IOStreamFamily.h
IOKit/stream/IOStreamShared.h
IOKit/stream/IOStreamUserClient.h
IOKit/system.h
IOKit/system_management/IOWatchDogTimer.h
IOKit/usb/AppleUSBDefinitions.h
IOKit/usb/IOUSBHostControllerInterfaceDefinitions.h
IOKit/usb/IOUSBHostControllerInterfaceHelpers.h
IOKit/usb/IOUSBHostDevice.h
IOKit/usb/IOUSBHostFamily.h
IOKit/usb/IOUSBHostFamilyDefinitions.h
IOKit/usb/IOUSBHostIOSource.h
IOKit/usb/IOUSBHostInterface.h
IOKit/usb/IOUSBHostPipe.h
IOKit/usb/IOUSBHostStream.h
IOKit/usb/StandardUSB.h
IOKit/usb/USB.h
IOKit/usb/USBSpec.h
IOKit/video/IOVideoControlDictionary.h
IOKit/video/IOVideoDevice.h
IOKit/video/IOVideoDeviceClientInit.h
IOKit/video/IOVideoDeviceShared.h
IOKit/video/IOVideoDeviceUserClient.h
IOKit/video/IOVideoStream.h
IOKit/video/IOVideoStreamDictionary.h
IOKit/video/IOVideoStreamFormatDictionary.h
IOKit/video/IOVideoTypes.h
VM & pexpert
pexpert/boot.h
pexpert/device_tree.h
pexpert/machine/boot.h
pexpert/machine/protos.h
pexpert/pexpert.h
pexpert/protos.h
vm/WKdm_new.h
vm/lz4.h
vm/lz4_assembly_select.h
vm/lz4_constants.h
vm/pmap.h
vm/vm_compressor_algorithms.h
vm/vm_dyld_pager.h
vm/vm_far.h
vm/vm_fault.h
vm/vm_kern.h
vm/vm_map.h
vm/vm_options.h
vm/vm_pageout.h
vm/vm_shared_region.h
Architecture
arm64/machine_cpuid.h
arm64/machine_machdep.h
arm/_endian.h
arm/_limits.h
arm/_mcontext.h
arm/_param.h
arm/_types.h
arm/arch.h
arm/cpu_capabilities_public.h
arm/endian.h
arm/limits.h
arm/locks.h
arm/machine_cpuid.h
arm/machine_routines.h
arm/pal_routines.h
arm/param.h
arm/profile.h
arm/signal.h
arm/thread.h
arm/trap.h
arm/types.h
arm/vmparam.h
machine/_endian.h
machine/_limits.h
machine/_mcontext.h
machine/_param.h
machine/_types.h
machine/byte_order.h
machine/endian.h
machine/limits.h
machine/locks.h
machine/machine_cpc.h
machine/machine_routines.h
machine/monotonic.h
machine/pal_routines.h
machine/param.h
machine/profile.h
machine/signal.h
machine/smp.h
machine/trap.h
machine/types.h
machine/vmparam.h
Mach-O
File format
mach-o/compact_unwind_encoding.h
mach-o/fat.h
mach-o/fixup-chains.h
mach-o/loader.h
mach-o/nlist.h
mach-o/ranlib.h
mach-o/reloc.h
mach-o/stab.h
Runtime & dyld
mach-o/arch.h
mach-o/dyld.h
mach-o/dyld_images.h
mach-o/getsect.h
mach-o/ldsyms.h
mach-o/swap.h
mach-o/utils.h
Architecture
mach-o/arm64/reloc.h
XPC
xpc/activity.h
xpc/availability.h
xpc/base.h
xpc/connection.h
xpc/debug.h
xpc/endpoint.h
xpc/listener.h
xpc/peer_requirement.h
xpc/rich_error.h
xpc/session.h
xpc/xpc.h
Hypervisor
Hypervisor.h
hv.h
hv_base.h
hv_error.h
hv_gic.h
hv_gic_config.h
hv_gic_parameters.h
hv_gic_state.h
hv_gic_types.h
hv_intr.h
hv_sme_config.h
hv_types.h
hv_vcpu.h
hv_vcpu_config.h
hv_vcpu_types.h
hv_vm.h
hv_vm_allocate.h
hv_vm_config.h
hv_vm_types.h
arm64/hv/hv_kern_types.h
Dispatch
dispatch/base.h
dispatch/block.h
dispatch/data.h
dispatch/dispatch.h
dispatch/group.h
dispatch/introspection.h
dispatch/io.h
dispatch/object.h
dispatch/once.h
dispatch/queue.h
dispatch/semaphore.h
dispatch/source.h
dispatch/time.h
dispatch/workloop.h
os/
os/activity.h
os/atomic.h
os/availability.h
os/base.h
os/clock.h
os/lock.h
os/log.h
os/object.h
os/os_sync_wait_on_address.h
os/overflow.h
os/proc.h
os/signpost.h
os/trace.h
os/trace_base.h
os/workgroup.h
os/workgroup_base.h
os/workgroup_interval.h
os/workgroup_object.h
os/workgroup_parallel.h
EndpointSecurity
EndpointSecurity/ESClient.h
EndpointSecurity/ESMessage.h
EndpointSecurity/ESMessageCore.h
EndpointSecurity/ESTypes.h
EndpointSecurity/EndpointSecurity.h
CommonCrypto
CommonCrypto/CommonCrypto.h
CommonCrypto/CommonCryptoError.h
CommonCrypto/CommonCryptor.h
CommonCrypto/CommonDigest.h
CommonCrypto/CommonHMAC.h
CommonCrypto/CommonKeyDerivation.h
CommonCrypto/CommonRandom.h
CommonCrypto/CommonSymmetricKeywrap.h
#include <IOKit/hidsystem/IOHIDWorkLoop.h>
Kernel (KEXT)
›
IOKit
IOKit/hidsystem/IOHIDWorkLoop.h
Kernel.framework
Create a workloop
This header declares nothing itself under the arm64 configuration; it groups the headers below.
IOKit/IOWorkLoop.h