Index

A number represents a single reference to a topic.
A number with a "+" sign represents a longer discussion of a topic.


Numerals   A   B   C   D   E   F   G   H   I   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Z   

Numerals
16-bit PC cards 1
64-bit architectures, issues with 1+
A
accessor functions, IOService class 1
acknowledgePowerChange method 1
Action function 1 2 3
active matching 1 2 3 4
activityTickle method 1
ADB family 1
addEventSource function 1 2
AGP family (PCI and AGP family) 1
alloc function 1
allocClassWithName function 1
Apple Developer Connection 1
applications
  accessing hardware from 1
  controlling imaging devices from 1
  for I/O Kit development 1+
arbitration 1
architecture of I/O Kit 1+
ATA and ATAPI family 1
attach function 1+ 2 3
Audio family 1
Audio HAL 1
Audio Hardware Abstraction Layer. See Audio HAL
Audio plane 1
authentication 1
B
base classes
  in I/O Kit 1 2
  in libkern 1 2
big-endian format 1
block devices 1
BSD device interface 1 2
BSD network stack 1
BSD sockets 1
BSD
  and custom device interfaces 1
  and kernel-resident code 1
  as design principle of I/O Kit 1
  device files in 1
bus controller drivers 1 2 3 4
byte swapping 1
C
C++ 1
  and I/O Kit implementation 1
  subset of used by libkern 1
callback functions. See Action functions
Carbon Draw Sprockets 1
Carbon environment, using BSD sockets in 1
CardBus cards 1
CFPlugIn 1 2
character devices 1
checkForWork function 1
class hierarchy in I/O Kit 1 2+
class information functions 1
class matching 1 2 3
client configuration 1
close function 1
Cocoa environment, using BSD sockets in 1
command gates 1
  creating 1
  disposing of 1
  issuing I/O requests through 1
  registering 1
command-based events 1
command-line tools 1+
commandGate method 1
commands, as event sources 1
completion routines 1
  See also Action functions
Component Object Model (COM) 1
constructors 1 2
context switching 1
controller drivers 1 2 3 4
Core Audio framework 1 2
Core Foundation Plug-in Services. See CFPlugIn
Core MIDI framework 1
D
DART (device address resolution table) 1
Darwin Open Source 1
data containers 1
data management 1+
deadlocks
  and hardware constraints 1
  and multiple work loops 1
  avoiding 1 2
  paging 1
dedicated work loops 1
delete operator 1 2
design principles 1+
destructors
  defining 1 2
  of OSObject class 1
detach function 1+ 2 3
detach method 1
developer resources 1+
development applications 1
device drivers 1 2
device interfaces 1 2 3 4+
device matching 1 2+
device memory 1 2
device probing 1+ 2 3
device removal 1 2
Device Tree plane 1
devices
  determining idleness of 1+
  imaging 1
  network 1
  power state of 1
  removal of 1+
  serial 1
  storage 1
  unsupported 1
dictionaries. See matching dictionaries
didTerminate method 1
digital cameras 1
digital video 1
direct interrupts 1 2 3
direct memory access. See DMA
display devices 1
DLIL (Data Link Interface Layer) 1
DMA
  and controller drivers 1+
  engines 1 2 3
down calls 1
driver development 1+
driver layering 1+
driver loading 1+ 2+
driver matching 1
driver matching 1+
  and I/O Catalog 1
  as service of IOService 1 2 3
  overview of 1 2
driver object life cycles 1
driver personalities 1 2+
driver shutdown 1
drivers
  and families 1 2 3
  and nubs 1
  life cycle of 1 2
  loading 1
dynamic allocation of objects 1
dynamic type casting 1
E
Ethernet controller 1
event handling 1
  and work loops 1 2
  deferring work 1
  device removal 1
  of timer events 1 2
event sources 1 2 3
  adding to work loops 1
  and interrupt handling 1+
  categories of 1
  classes for 1 2
  disposing of 1
  timer events 1+
exceptions, as disallowed feature of C++ 1 2
F
families, I/O Kit 1+
  and drivers 1+
  as libraries 1+
  creating 1
  defined 1
  devices with no families 1
  list of 1
  loading 1
  naming conventions for 1
  reference for 1+
  structure of 1+
  typical classes in 1
  unsupported 1
features of I/O Kit 1+
file system, extensions to 1
filter interrupt event sources 1+
filter scheme drivers 1 2
FireWire config ROM 1
FireWire family 1
FireWire plane 1
frame buffers 1
frameworks 1
free function 1 2 3 4
function call stacks 1
G
gating mechanism 1
gcc command-line tool 1
gdb command-line tool 1
getClassName function 1
getClassSize function 1
getInstanceCount function 1
getPhysicalSegments function 1
getProperty function 1
getSuperClass function 1
getWorkLoop function 1
graphics acceleration 1 2
Graphics family 1
H
hardware constraints on bus controller drivers 1
hardware modeling 1
hardware, support for 1
header files 1
HID family 1
HID Manager 1
hot-swapping 1 2
Human Interface Device family. See HID family
I
i.LINK standard 1
I/O addresses 1
I/O Catalog 1 2 3
I/O commands 1
I/O Kit families. See families, I/O Kit
I/O Kit framework 1 2
I/O queues, clearing 1
I/O Registry 1+
  and storage devices 1
  application for 1
  architecture 1
  device matching and 1
  driver matching and 1
  examining 1+
  introduced 1+
  planes defined in 1
I/O Registry Explorer application 1 2 3+
I/O requests 1 2
  buffers for 1
  memory in 1 2
  relaying 1
I/O transfers 1+
I/O vectors. See scatter/gather lists
idleness of devices 1
IEEE 1394 standard 1
imaging devices 1 2
in-function static constructors 1
indirect interrupts 1 2 3
information property lists 1 2
init function 1 2 3 4 5
initialization methods 1
interrupt controllers
  and direct interrupts 1 2
  and indirect interrupts 1
interrupt event sources
  disposing of 1+
  ordering of 1+
  setting up 1+
interrupt events 1 2
interrupt handlers 1 2
interrupt handling 1 2 3
interrupts 1
introspection, of objects 1
IOADBController class 1 2
IOADBDevice 1 2
IOAGPDevice class 1
ioalloccount command-line tool 1
IOApplePartitionScheme 1
IOATACommand class 1
IOATADevice 1
IOATAPIProtocolTransport class 1
IOAudioDevice class 1
IOAudioEngine class 1
IOBigMemoryCursor class 1
IOBlockStorageDevice class 1 2
IOBlockStorageDriver class 1 2
IOBlockStorageServices class 1
IOBufferMemoryDescriptor class 1
IOCardBusDevice class 1
IOCDMedia class 1
ioclasscount command-line tool 1
IOCommandGate class 1 2 3
IOCompactDiscServices class 1
IODisplay class 1
IODMACommand class 1
IODVDServices class 1
IOEventSource class 1
IOFDiskPartitionScheme 1
IOFilterInterruptEventSource class 1 2
IOFireWireController class 1
IOFireWireSBP2LUN class 1
IOFireWireSBP2Target class 1
IOFireWireSerialBusProtocolTransport class 1
IOFireWireUnit class 1
IOFramebuffer class 1
IOHIKeyboard class 1 2
IOHIPointing class 1 2
IOInterruptEventSource class 1 2 3 4
IOKitPersonalities dictionary 1
IOLittleMemoryCursor class 1
IOMatchCategory 1
IOMbufMemoryCursor class 1
IOMedia class 1
IOMedia filter schemes 1
IOMedia properties 1
IOMemoryCursor class 1 2 3
IOMemoryDescriptor class 1 2 3 4
IOMemoryMap 1
IOModemSerialStreamSync class 1
IOMultiMemoryDescriptor class 1
IONaturalMemoryCursor class 1
IONDRVFramebuffer class 1
IONetworkController class 1
IONetworkData class 1
IONetworkMedium class 1
IOOutputQueue class 1
IOPacketQueue class 1
IOPartitionScheme class 1
IOPCCard16Device class 1
IOPCCard16Enabler class 1
IOPCCardBridge class 1
IOPCI2PCIBridge class 1
IOPCIBridge class 1 2
IOPCIDevice class 1 2 3 4
IOPMPowerState structure 1
IOPower plane. See Power plane
IOReducedBlockServices class 1
ioreg command-line tool 1 2 3 4
IORegistryEntry class 1+
  in class hierarchy 1 2 3
  member functions in 1
IOResources 1
IORS232SerialStreamSync class 1
IOSCSICommand class 1
IOSCSIDevice class 1
IOSCSIParallelInterfaceController class 1
IOSCSIParallelInterfaceProtocolTransport class 1
IOSCSIPeripheralDeviceType classes 1
IOSCSIPerpheralDeviceNub class 1
IOSCSIPrimaryCommandsDevice class 1
IOSCSIProtocolServices class 1
IOSerialDriverSync class 1
IOSerialStreamSync class 1
IOService class 1 2 3 4+
  accessor functions of 1
  in class hierarchy 1
IOServiceNotificationHandler type 1
IOServiceOpen function 1
iostat command-line tool 1
IOStorage class 1 2
IOSubMemoryDescriptor class 1
IOTimerEventSource class 1 2 3
IOUSBController class 1 2
IOUSBDevice class 1 2 3
IOUSBInterface class 1 2 3
IOUSBMassStorageClass class 1
IOUSBPipe class 1
IOWorkLoop class 1
IOZoomVideoDevice class 1
isEqualTo function 1
iteration functions, IORegistryEntry class 1
K
KDP (Kernel Debugger Protocol) 1
kernel development kit (KDK) 1
kernel environment
  alternatives to programming in 1
  and memory protection 1
  caveats for programming in 1 2
kernel extensions 1 2 3 4
kernel modules
  and I/O Kit classes 1
  loading and unloading 1 2
  OSObject class and 1
  setting version in 1
KEXT manager 1
kextload command-line tool 1
KEXTs. See kernel extensions
kextstat command-line tool 1
kextunload command-line tool 1
kIOMessageServiceIsTerminated message 1
KMODs. See kernel modules
L
language used in I/O Kit 1
layered architecture 1+
libkern library
  base classes in 1+
  in class hierarchy 1 2
  overview in I/O Kit 1
  services provided by 1
libraries 1 2+
library versioning 1
life cycle, driver object 1+
  device probing 1
  functions of 1
  managed by IOService class 1
  of device drivers 1 2
  overriding functions 1
limitations of I/O Kit 1
little-endian format 1
M
Mac OS 9 1
Mach 1
Mach IPC 1
Mach scheduler 1 2
Mach shared memory 1
macros of OSMetaClass class
  object construction 1
  object introspection 1
  runtime type declaration 1 2
  type casting 1
matching dictionaries 1 2
matchPropertyTable function 1
mbuf structure 1
memory cursors 1 2 3+ 4
memory descriptors 1+ 2+
memory protection 1
memory
  virtual. See virtual memory
  and I/O transfer interfaces 1
  in I/O transfers 1+
  paging and 1
  protection 1 2
  wiring down 1
message function 1 2
messageClient function 1
messaging 1 2
metaCast functions 1
MIDI 1
mkextcache command-line tool 1
MMCDeviceInterface 1
modHasInstance function 1
multimedia support 1
multiple inheritance, as disallowed feature of C++ 1 2
multiprocessing 1
N
namespaces 1
naming conventions for I/O Kit families 1
NDRV graphics drivers compatibility 1
negotiation 1
nested class 1
network devices 1
network drivers 1 2
Network family 1
Network Kernel Extension (NKE) 1
networking services 1
new operator 1 2
newUserClient function 1
notification handler 1
notifications 1 2 3
nubs
  driver matching and 1
  overview of 1+
  registering 1
O
object allocation 1
object construction 1 2
object disposal 1
object introspection 1
object retention 1
Open Firmware 1
open function 1
Open Host Controller Interface (OHCI) 1 2
Open Transport 1
OpenGL 1
OSCheckTypeInst macro 1
OSDeclareAbstractStructors macro 1
OSDeclareDefaultStructors macro 1 2
OSDefineMetaClassAndAbstractStructors macro 1
OSDefineMetaClassAndAbstractStructorsWithInit macro 1
OSDefineMetaClassAndStructors macro 1 2
OSDefineMetaClassAndStructorsWithInit macro 1
OSDictionary 1
OSDynamicCast macro 1
OSIterator objects 1
OSMetaClass class 1
  and runtime typing 1
  in class hierarchy 1
  macros in 1+ 2
  object construction and 1
  type-casting macros of 1
OSObject class 1 2 3 4+
OSTypeID macro 1
OSTypeIDInst macro 1
outputPacket function 1
P
Package Maker application 1
page-out threads 1
paging
  and deadlocks 1
  and kernel code 1
partition schemes 1
passive matching 1 2 3
PC Card family 1
PCI and AGP family 1 2
PCI Localbus 2.1 specification 1
personalities. See driver personalities
physical memory
  and I/O transfers 1 2
  kernel code restrictions 1
  paging virtual memory into 1
planes 1+ 2
Platform Expert 1
plug-and-play feature 1
plug-in interfaces 1
policy makers
  determining idleness 1+
positional functions, IORegistryEntry class 1
POSIX
  device files 1
  device nodes 1
power events 1
power management 1
  See also notifications of power events
  support for 1
Power plane 1 2
power states
  changing 1+
  defined 1
PPP (Point-to-Point Protocol) 1
preemptive multitasking support 1
prepare function 1 2
prerequisites for driver development 1
primary interrupts. See direct interrupts
principal class of a personality 1
printers 1
probe function 1 2 3 4
probe scores 1 2
probing, devices 1 2 3 4
Programmed Input/Output (PIO) interface 1
programming language 1
property tables. See driver personalities
protected memory 1
provider matching 1
provider-client relationships, tracking 1
providers 1 2
Q
Quartz Compositor 1
Quartz graphics system 1
QuickTime, for video support 1
R
read function 1
reentrancy 1
reference counting 1
registerPowerDriver method 1
registerService function 1
release function 1
resources for developers 1 2
responding to device removal 1+
retain function 1
runAction function 1
runCommand function 1
runtime environment of I/O Kit 1+
runtime type information (RTTI), as disallowed feature of C++ 1 2 3 4
runtime typing facility 1 2 3
S
SBP-2 transport protocol 1
SBP2 family 1 2
scanners 1
scatter/gather lists 1 2 3
SCSI Architecture Model family 1 2 3
SCSI disk drivers 1
SCSI Parallel family 1 2
SCSI Parallel Interface-5 (SPI-5) specification 1
SCSITaskDeviceInterface 1
SCSITaskInterface 1
SCSITaskLib 1
SCSITaskUserClient 1
secondary interrupts. See indirect interrupts
sequential access devices 1
serial devices 1
Serial family 1
Service plane 1
setPowerState method 1
shared interrupts 1
shared work loops 1 2
sockets, BSD 1
software development kit (SDK) 1
SPI-5. See SCSI Parallel Interface-5 specification
start function 1 2 3
static constructors, in-function 1
stop function 1
storage devices 1
storage drivers 1
Storage family 1 2
structural events 1
super macro 1
symmetric multiprocessing support 1
T
telephony devices 1
templates, as disallowed feature of C++ 1 2
terminate method 1
termios command 1
threads, and work loops 1
timeouts 1
timer event sources 1 2 3
timer events 1 2+
timers 1
tools for development 1 2
Transport Driver layer 1
type casting 1
U
Unified Buffer Cache (UBC) 1
Universal Page List (UPL) 1
up calls 1
UPS (uninterruptible power supply) devices 1
USB Common Class Specification 1
USB family 1
USB plane 1
user client 1 2
user client 1
user thread interrupts 1
V
virtual memory
  and I/O transfers 1 2 3
  cache 1
  in I/O Kit 1
  kernel code restrictions 1
  paging into physical memory 1
virtual-memory (VM) pager 1 2
W
willTerminate method 1
Window Manager interrupts 1
work loops 1+
  adding and removing event sources 1
  architecture of 1
  dedicated 1
  obtaining, examples of 1+
  querying of event sources 1 2
  shared 1
X
Xcode application 1
Z
Zoom Video cards 1