Sorted by Title |
Sort by Resource Type |
Sort by Date |
Accessing Hardware From Applications
(HTML)
(PDF)
Tips and guidelines for developing applications that communicate with or control devices.
|
Guides |
2007-02-08
|
Allocating and sharing memory with user space from an I/O Kit driver
(HTML)
()
QA1197: Describes the preferred technique for allocating and sharing buffers in an I/O Kit kernel driver.
|
Technical Q&As |
2008-10-13
|
Are the Name Registry device tree nodes unique?
(HTML)
Deprecated - HW64: Discusses whether Name Registry nodes copied from the Open Firmware device tree are unique.
|
Technical Q&As |
1999-10-11
|
Audio Device Driver Programming Guide
(HTML)
(PDF)
Explains how to develop kernel-resident drivers for audio devices.
|
Guides |
2009-03-04
|
Bluetooth Framework Reference
(HTML)
Describes the C and Objective-C APIs that support user-space access to Bluetooth devices.
|
Reference |
2008-10-15
|
Bluetooth User Interface Framework Reference
(HTML)
Describes the C and Objective-C APIs that provide a consistent user interface to Bluetooth services.
|
Reference |
2008-04-08
|
Building Universal I/O Kit Drivers
(HTML)
TN2163: How to build a universal I/O Kit kernel driver while avoiding common pitfalls.
|
Technical Notes |
2008-08-18
|
Can't attach during two-machine debugging with GDB
(HTML)
()
Deprecated - QA1019: Describes a workaround for a problem attaching during two-machine debugging on Mac OS X 10.0.x.
|
Technical Q&As |
2003-06-02
|
CCL Modem Scripting Guide
(HTML)
(PDF)
|
Guides |
2007-06-28
|
CCL Modem Scripting Release Notes
(HTML)
Explains changes to modem CCLs for Mac OS X v10.5 and what to do to change existing and supersede older scripts.
|
Release Notes |
2007-10-31
|
CD-ROM Driver Calls
(HTML)
Deprecated - DV22: Discusses public interface to Apple CD-ROM driver and supersedes information in AppleCD SC Developer's Guide.
|
Technical Notes |
2000-08-14
|
Device File Access Guide for Serial Devices
(HTML)
(PDF)
Guidelines for using I/O Kit and POSIX functions to develop applications that communicate with serial devices.
|
Guides |
2005-12-06
|
Device File Access Guide for Storage Devices
(HTML)
(PDF)
Guidelines for using I/O Kit and POSIX functions to develop applications that communicate with storage devices.
|
Guides |
2007-03-06
|
The dreaded "incompatible flag -framework" error
(HTML)
QA1096: Explains how to eliminate the incompatible flag -framework error in Project Builder.
|
Technical Q&As |
2001-12-05
|
Driver Tuning on Panther or G5
(HTML)
()
TN2090: Describes potential issues when using drivers in Panther or later, or on a Power Macintosh G5.
|
Technical Notes |
2003-06-24
|
ExpressCard Prevents System Sleep
(HTML)
QA1517: Describes how some ExpressCard cards can prevent system sleep and how to fix the problem.
|
Technical Q&As |
2007-02-28
|
FireWire Device Interface Guide
(HTML)
(PDF)
Explains how to develop applications to communicate with or control FireWire devices and units.
|
Guides |
2007-02-08
|
Force Feedback Framework Reference
(HTML)
Describes the public interfaces to the Force Feedback implementation in Mac OS X, including support for plug-ins.
|
Reference |
2008-04-08
|
Generating a Non-Maskable Interrupt (NMI)
(HTML)
()
QA1264: Explains how to generate a non-maskable interrupt (NMI) on modern Macintosh systems.
|
Technical Q&As |
2008-10-13
|
HBA Device Driver Programming Guide
(HTML)
(PDF)
Describes how to develop a high-performance, kernel-resident driver for an HBA device.
|
Guides |
2006-05-23
|
HID Class Device Interface Guide
(HTML)
(PDF)
Explains how to develop applications to communicate with or control HID class devices.
|
Guides |
2009-05-06
|
I/O Kit Device Driver Design Guidelines
(HTML)
(PDF)
Design guidelines and tips for developing, debugging, and deploying kernel-resident device drivers, including user clients.
|
Guides |
2007-03-06
|
I/O Kit Framework Reference
(HTML)
Describes the I/O Kit classes that support non-kernel access to I/O Kit objects through the device-interface mechanism.
|
Reference |
2009-03-04
|
I/O Kit Fundamentals
(HTML)
(PDF)
The basics of developing device drivers. Includes descriptions of I/O Kit families.
|
Guides |
2007-05-17
|
I/O Kit Power Management Release Notes
(HTML)
Describes the latest changes to power management for Mac OS X v10.5.
|
Release Notes |
2007-10-31
|
Installing an I/O Kit KEXT Without Rebooting
(HTML)
QA1319: Describes the state of the art of installing I/O Kit kernel extensions (KEXTs) without requiring a restart.
|
Technical Q&As |
2003-10-28
|
IODeviceTree and the I/O Registry
(HTML)
()
QA1120: Describes the IODeviceTree plane in the Mac OS X I/O Registry.
|
Technical Q&As |
2008-09-18
|
IOKit Framework Headers
(HTML)
()
QA1107: Describes the differences between the headers in IOKit.framework and the I/O Kit headers in Kernel.framework.
|
Technical Q&As |
2002-01-15
|
IOKitWithLibrary
(HTML)
(DMG)
(ZIP)
Shows how an I/O Kit driver can link with a C library from a separate kernel extension.
|
Sample Code |
2003-08-27
|
IOLog and Interrupt Context
(HTML)
()
QA1100: Describes when IOKit runs at primary (hardware) interrupt context.
|
Technical Q&As |
2002-02-13
|
IOPrintSuperClasses
(HTML)
(DMG)
(ZIP)
Given the name of a class, this tool will print all of the super-classes of that class.
|
Sample Code |
2005-08-17
|
Issues with boot time KEXT loading
(HTML)
()
QA1087: Explains how to solve problems with loading KEXTs at boot time.
|
Technical Q&As |
2004-01-15
|
Kernel Core Dumps
(HTML)
TN2118: Explains how to gather and use remote kernel core dumps.
|
Technical Notes |
2008-11-12
|
Kernel Framework Reference
(HTML)
Describes the APIs and classes (including I/O Kit families) that support kernel-resident device drivers.
|
Reference |
2009-01-06
|
Mac OS X and root access
(HTML)
QA1013: Describes how to enable root access in Mac OS X.
|
Technical Q&As |
2008-09-16
|
Making sense of IOKit error codes
(HTML)
()
QA1075: Explains how to interpret I/O Kit error codes.
|
Technical Q&As |
2002-02-07
|
Mass Storage Device Driver Programming Guide
(HTML)
(PDF)
Background and task information about developing kernel-resident drivers for mass storage devices.
|
Guides |
2007-04-03
|
Multipathing with FibreChannel on Mac OS X
(HTML)
TN2173: An explanation on how FibreChannel multipathing works on Mac OS X and how to design storage hardware to take advantage of it
|
Technical Notes |
2007-03-23
|
Network Device Driver Programming Guide
(HTML)
(PDF)
Background and task information about developing network drivers for Mac OS X.
|
Guides |
2008-03-11
|
Open Firmware Memory bus speed
(HTML)
HW97: Describes a method to display memory bus speed for G3 or G4 Macintosh in Open Firmware.
|
Technical Q&As |
2000-09-22
|
PCI/PCI-X slots on the Power Mac G5
(HTML)
QA1307: Discusses installing PCI/PCI-X cards of different speeds in the Power Mac G5.
|
Technical Q&As |
2003-09-30
|
Power Management; Policy Maker vs. Power Controller
(HTML)
()
QA1121: Describes the differences between a Power Management Policy Maker and a Power Management Power Controller.
|
Technical Q&As |
2002-02-13
|
Programmatically causing restart, shutdown and/or logout
(HTML)
()
QA1134: Describes how to programmatically cause restart, shutdown, sleep or logout.
|
Technical Q&As |
2008-09-24
|
Registering and unregistering for sleep and wake notifications
(HTML)
QA1340: Explains how applications can register and unregister for sleep and wake notifications on Mac OS X.
|
Technical Q&As |
2008-08-08
|
Retain Counts of io_object_t Objects in IOKit.framework
(HTML)
()
QA1195: Distinguishes between the retain counts of an I/O Kit kernel object and its io_object_t user space proxy.
|
Technical Q&As |
2008-09-24
|
SampleFilterScheme
(HTML)
(DMG)
(ZIP)
Demonstrates a simple filter scheme which passes all operations through to its provider unchanged.
|
Sample Code |
2006-01-03
|
SampleUSBAudioPlugin
(HTML)
(DMG)
(ZIP)
USB audio plugin that performs a lowpass filtering operation on audio streamed through an audio USB Device.
|
Sample Code |
2005-03-07
|
SCSI Architecture Model Device Interface Guide
(HTML)
(PDF)
Explains how to develop applications that communicate with or control SCSI Architecture Model devices.
|
Guides |
2007-02-08
|
SCSIHBAEmulator
(HTML)
(DMG)
(ZIP)
Demonstration of how to implement a virtual parallel tasking SCSI host bus adapter (HBA)
|
Sample Code |
2007-02-20
|
Secrets of the GPT
(HTML)
TN2166: Describes the new partition map format used by Intel-based Macintosh computers.
|
Technical Notes |
2006-11-06
|
SimpleDataQueue
(HTML)
(DMG)
(ZIP)
Implements an IODataQueue inside an I/O Kit KEXT which passes events and data to user space.
|
Sample Code |
2003-01-14
|
SimpleUserClient
(HTML)
(DMG)
(ZIP)
Shows how to create a user client for an I/O Kit kernel driver.
|
Sample Code |
2008-08-27
|
Sleep vs. Doze on Mac OS X
(HTML)
QA1309: Discusses and demonstrates sleep versus doze detection on Machintosh Mac OS X
|
Technical Q&As |
2003-10-09
|
TimerEventSample
(HTML)
(DMG)
(ZIP)
Shows how to set up and use an IOTimerEventSource in a kext.
|
Sample Code |
2003-01-14
|
Understanding and Debugging Kernel Panics
(HTML)
()
TN2063: Addresses kernel panics: what they are and how to debug the code that caused the panic.
|
Technical Notes |
2008-08-14
|
USB Device Interface Guide
(HTML)
(PDF)
Provides background information and sample code for developing applications to communicate with or control USB devices and interfaces.
|
Guides |
2007-09-04
|
User-Mode USB Device Arbitration
(HTML)
Information about using USB device arbitration, available in Mac OS X version 10.1 and later.
|
Guides |
2002-02-06
|
VendorSpecificType00
(HTML)
(DMG)
(ZIP)
Demonstrates how to access vendor-specific storage device functionality using a simple interface from user space code.
|
Sample Code |
2006-10-02
|
VolumeToBSDNode
(HTML)
(DMG)
(ZIP)
Shows how to iterate across all mounted volumes and retrieve their BSD node names.
|
Sample Code |
2006-10-16
|
Working with Configuration Variables
(HTML)
()
QA1119: Explains how to delete a specific Open Firmware configuration variable without using Command-Option-P-R.
|
Technical Q&As |
2002-02-13
|
Writing PCI Drivers
(HTML)
(PDF)
Conceptual information about writing I/O Kit drivers for PCI, AGP, and CardBus (PC Card) devices.
|
Guides |
2006-04-04
|