Sort by Title |
Sort by Topic |
Sort by Resource Type |
Sorted by Date |
HID Class Device Interface Guide
(HTML)
(PDF)
Explains how to develop applications to communicate with or control HID class devices.
|
Hardware & Drivers |
Guides |
2009-05-06
|
Porting Drivers to Mac OS X
(HTML)
(PDF)
Tips and code samples to help UNIX/Linux device driver developers bring their drivers to Mac OS X.
|
General, Porting |
Guides |
2009-05-06
|
Audio Device Driver Programming Guide
(HTML)
(PDF)
Explains how to develop kernel-resident drivers for audio devices.
|
Hardware & Drivers |
Guides |
2009-03-04
|
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.
|
General, Hardware & Drivers |
Reference |
2009-03-04
|
Network Kernel Extensions Programming Guide
(HTML)
(PDF)
Describes how to write a kernel extension for adding or modifying functionality of a networking stack (Mac OS X 10.4 and later).
|
Kernel, Networking |
Guides |
2009-03-02
|
Dynamic Library Programming Topics
(HTML)
(PDF)
Explains how to design, implement, and use dynamic libraries.
|
Runtime Architecture |
Guides |
2009-02-26
|
Mac OS X ABI Function Call Guide
(HTML)
(PDF)
Describes the function-calling conventions used in the architectures supported by Mac OS X.
|
Intel-Based Macs |
Guides |
2009-02-04
|
Mac OS X ABI Mach-O File Format Reference
(HTML)
(PDF)
Describes the data structures that make up the Mach-O file format.
|
Runtime Architecture, Tools |
Reference |
2009-02-04
|
Universal Binary Programming Guidelines, Second Edition
(HTML)
(PDF)
Conceptual information and tips for writing code that runs on PowerPC-based and Intel-based Macintosh computers.
|
Intel-Based Macs |
Guides |
2009-02-04
|
Authorization Services Programming Guide
(HTML)
(PDF)
Explains how to add fine-grained control of privileged operations in an application.
|
Security |
Guides |
2009-01-06
|
Kernel Framework Reference
(HTML)
Describes the APIs and classes (including I/O Kit families) that support kernel-resident device drivers.
|
General, Hardware & Drivers |
Reference |
2009-01-06
|
Code Signing Guide
(HTML)
(PDF)
Explains how you can sign your code and why you should.
|
Security |
Guides |
2008-11-19
|
System Startup Programming Topics
(HTML)
(PDF)
Explains the boot process used to initialize the Mac OS X operating system.
|
Runtime Architecture |
Guides |
2008-11-19
|
Kernel Core Dumps
(HTML)
TN2118: Explains how to gather and use remote kernel core dumps.
|
Hardware & Drivers, Kernel |
Technical Notes |
2008-11-12
|
Bluetooth Framework Reference
(HTML)
Describes the C and Objective-C APIs that support user-space access to Bluetooth devices.
|
Hardware & Drivers |
Reference |
2008-10-15
|
Security Overview
(HTML)
(PDF)
An introduction to computer security concepts and the security APIs in Mac OS X and iPhone OS.
|
Security |
Guides |
2008-10-15
|
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.
|
Hardware & Drivers, Kernel |
Technical Q&As |
2008-10-13
|
Generating a Non-Maskable Interrupt (NMI)
(HTML)
()
QA1264: Explains how to generate a non-maskable interrupt (NMI) on modern Macintosh systems.
|
Hardware & Drivers, Kernel |
Technical Q&As |
2008-10-13
|
Programmatically causing restart, shutdown and/or logout
(HTML)
()
QA1134: Describes how to programmatically cause restart, shutdown, sleep or logout.
|
Hardware & Drivers |
Technical Q&As |
2008-09-24
|
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.
|
Hardware & Drivers |
Technical Q&As |
2008-09-24
|
IODeviceTree and the I/O Registry
(HTML)
()
QA1120: Describes the IODeviceTree plane in the Mac OS X I/O Registry.
|
Hardware & Drivers |
Technical Q&As |
2008-09-18
|
Disabling Processor Cores on a Multi-Core System
(HTML)
()
QA1141: Describes how to disable processor cores on a multi-core system for testing purposes.
|
Performance |
Technical Q&As |
2008-09-16
|
Mac OS X and root access
(HTML)
QA1013: Describes how to enable root access in Mac OS X.
|
Hardware & Drivers, Kernel, Security |
Technical Q&As |
2008-09-16
|
Running At Login
(HTML)
TN2228: Describes how to write code that's coordinated with the login process.
|
Process Management |
Technical Notes |
2008-09-16
|
Observing Process Lifetimes Without Polling
(HTML)
TN2050: Shows a variety of methods to observe process lifetimes without polling.
|
Process Management |
Technical Notes |
2008-09-10
|
SimpleUserClient
(HTML)
(DMG)
(ZIP)
Shows how to create a user client for an I/O Kit kernel driver.
|
Hardware & Drivers, Kernel |
Sample Code |
2008-08-27
|
Is dlopen available on all versions of Mac OS X?
(HTML)
()
QA1180: Describes how to dynamically link to libraries and plug-ins, typically done with dlopen.
|
Porting, Runtime Architecture, Tools |
Technical Q&As |
2008-08-19
|
Building Universal I/O Kit Drivers
(HTML)
TN2163: How to build a universal I/O Kit kernel driver while avoiding common pitfalls.
|
Hardware & Drivers |
Technical Notes |
2008-08-18
|
Understanding and Debugging Kernel Panics
(HTML)
()
TN2063: Addresses kernel panics: what they are and how to debug the code that caused the panic.
|
Hardware & Drivers, Kernel |
Technical Notes |
2008-08-14
|
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.
|
Hardware & Drivers, Resource Management |
Technical Q&As |
2008-08-08
|
Mac OS X Code Signing In Depth
(HTML)
TN2206: Intermediate to expert level overview of code signing that details specific options and gotchas
|
Security |
Technical Notes |
2008-08-06
|
File System Overview
(HTML)
(PDF)
Conceptual information and guidelines describing the structure and usage of the Mac OS X file system.
|
File Management |
Guides |
2008-07-11
|
Netwide Assembler Guide
(HTML)
Describes the Netwide Assembler for Intel-based Macs.
|
Tools |
Reference |
2008-06-19
|
BootstrapDump
(HTML)
(DMG)
(ZIP)
Print Mach bootstrap namespace information.
|
Interprocess Communication, Process Management |
Sample Code |
2008-06-18
|
Using Doxygen to Create Xcode Documentation Sets
(HTML)
Learn how to integrate your documentation into Xcode.
|
Open Source |
Articles |
2008-06-09
|
Getting a Packet Trace
(HTML)
()
QA1176: Lists tools available for looking at the network packets on the wire.
|
Networking |
Technical Q&As |
2008-06-03
|
Secure Coding Guide
(HTML)
(PDF)
Describes techniques to use and factors to consider to make your code more secure from attack.
|
Security |
Guides |
2008-05-23
|
Mac OS X Man Pages
(HTML)
HTML versions of the Mac OS X, Mac OS X Server, Xcode Tools, and CHUD man pages.
|
General, Networking, Tools |
Reference |
2008-04-29
|
DNS Service Discovery C Reference
(HTML)
Describes the DNS Service Discovery API for implementing Bonjour in an application.
|
Networking |
Reference |
2008-04-23
|
Determining console user login status
(HTML)
QA1133: How to determine whether a user is logged in on the console, and be notified of changes.
|
Process Management |
Technical Q&As |
2008-04-14
|
64-Bit Transition Guide
(HTML)
(PDF)
Describes the 64-bit features available in Mac OS X.
|
Interprocess Communication, Performance, Porting |
Guides |
2008-04-08
|
Bluetooth User Interface Framework Reference
(HTML)
Describes the C and Objective-C APIs that provide a consistent user interface to Bluetooth services.
|
Hardware & Drivers |
Reference |
2008-04-08
|
Darwin Notification API Reference
(HTML)
Describes the Darwin API for interprocess notification.
|
General, Interprocess Communication |
Reference |
2008-04-08
|
Disk Arbitration Framework Reference
(HTML)
Describes Disc Arbitration API, which includes information on mount/unmount notification and dissent.
|
General |
Reference |
2008-04-08
|
Force Feedback Framework Reference
(HTML)
Describes the public interfaces to the Force Feedback implementation in Mac OS X, including support for plug-ins.
|
Hardware & Drivers |
Reference |
2008-04-08
|
FSEvents Reference
(HTML)
Describes the API used to provide lightweight notification of directory changes in a file-system subtree.
|
File Management |
Reference |
2008-04-08
|
HeaderDoc User Guide
(HTML)
(PDF)
Explains how to extract API reference documentation from commented header files.
|
Tools |
Guides |
2008-04-08
|
Porting UNIX/Linux Applications to Mac OS X
(HTML)
(PDF)
Conceptual information and tips about porting UNIX and Linux applications to Mac OS X.
|
Porting, Tools |
Guides |
2008-04-08
|
System Configuration Framework Reference
(HTML)
Describes the API for configuration of network resources, the reachability of target hosts, and connection to network services.
|
Networking |
Reference |
2008-04-08
|
Bonjour Printer Subtype for HTTP
(HTML)
QA1555: Describes how printer vendors can register their bonjour service such that Safari can see them.
|
Networking, Printing |
Technical Q&As |
2008-03-25
|
Supported KPIs
(HTML)
QA1575: Describes how to check whether a kernel function is part of a supported KPI.
|
Kernel |
Technical Q&As |
2008-03-25
|
UTXplorer
(HTML)
(DMG)
(ZIP)
Uses the <utmpx.h> API to display current login sessions and login history.
|
Process Management |
Sample Code |
2008-03-19
|
CryptNoMore
(HTML)
(DMG)
(ZIP)
Shows how to authenticate a user using Open Directory (Directory Services).
|
Security |
Sample Code |
2008-03-17
|
File System Events Programming Guide
(HTML)
(PDF)
Explains how applications can detect changes in the file system.
|
File Management, Interprocess Communication, Kernel, Performance |
Guides |
2008-03-11
|
Network Device Driver Programming Guide
(HTML)
(PDF)
Background and task information about developing network drivers for Mac OS X.
|
Hardware & Drivers |
Guides |
2008-03-11
|
Suppressing the "unexpectedly quit" alert
(HTML)
QA1288: Describes how to suppress the "unexpectedly quit" alert.
|
Security |
Technical Q&As |
2008-03-11
|
FSMegaInfo
(HTML)
(DMG)
(ZIP)
Prints information about various file system objects; helpful when debugging VFS plug-ins.
|
File Management |
Sample Code |
2008-02-25
|
Customizing Process Stack Size
(HTML)
QA1419: Describes methods for setting the stack size of a process and/or thread.
|
Process Management, Resource Management |
Technical Q&As |
2008-02-20
|
GNU C 4.2 Preprocessor User Guide
(HTML)
Describes the Apple version of the GNU C 4.2 Preprocessor.
|
Tools |
Reference |
2008-01-23
|
GNU C/C++/Objective-C 4.2.1 Compiler User Guide
(HTML)
Describes the Apple version of the GNU 4.2.1 compiler.
|
Tools |
Reference |
2008-01-23
|
Kernel's MAC framework
(HTML)
QA1574: Cautions that the kernel's MAC framework is currently not support.
|
Kernel |
Technical Q&As |
2008-01-04
|
Daemons and Agents
(HTML)
TN2083: Describes the most common problems encountered with daemons and agents, and suggests detailed solutions.
|
Process Management |
Technical Notes |
2007-11-05
|
Affinity API Release Notes for Mac OS X v10.5
(HTML)
Explains how to influence which CPU core runs a group of threads (for performance optimization).
|
Performance, Process Management |
Release Notes |
2007-10-31
|
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.
|
Hardware & Drivers, Networking |
Release Notes |
2007-10-31
|
Code Signing Release Notes
(HTML)
|
Security |
Release Notes |
2007-10-31
|
GNU C 4.0 Preprocessor User Guide
(HTML)
Describes the Apple version of the GNU C 4.0 Preprocessor.
|
Tools |
Reference |
2007-10-31
|
GNU C/C++/Objective-C 4.0.1 Compiler User Guide
(HTML)
Describes the Apple version of the GNU 4.0.1 compiler.
|
Intel-Based Macs, Tools |
Reference |
2007-10-31
|
I/O Kit Power Management Release Notes
(HTML)
Describes the latest changes to power management for Mac OS X v10.5.
|
Hardware & Drivers |
Release Notes |
2007-10-31
|
Kernel Extension Programming Topics
(HTML)
(PDF)
Combines the HOWTOs that were previously documented in Hello Debugger, Hello IOKit, Hello KEXT, Packaging KEXT, and KEXT Dependencies.
|
General, Kernel |
Guides |
2007-10-31
|
Kernel Extensions Release Notes
(HTML)
|
Kernel |
Release Notes |
2007-10-31
|
Perl, Python, and Ruby Extensions Release Notes
(HTML)
Describes how to create universal binary extensions for Perl, Python, and Ruby.
|
Porting, Tools |
Release Notes |
2007-10-31
|
CFProxySupportTool
(HTML)
(DMG)
(ZIP)
Shows how to use the CFProxySupport APIs to decide whether a network connection should pass through a proxy.
|
Networking |
Sample Code |
2007-10-29
|
Descriptor Passing Problems
(HTML)
QA1541: Describes how to work around common problems with descriptor passing.
|
Kernel, Networking |
Technical Q&As |
2007-10-29
|
Symbol Variants Release Notes
(HTML)
Describes symbol variants, a way of providing multiple versions of symbols for backwards compatibility.
|
Porting, Tools |
Release Notes |
2007-10-16
|
NotifyTool
(HTML)
(DMG)
(ZIP)
Shows how to use the BSD notify API.
|
Interprocess Communication |
Sample Code |
2007-09-25
|
Leopard Technology Series for Developers: OS Foundations
(HTML)
Leopard Overview article on system-level updates.
|
File Management |
Articles |
2007-09-04
|
USB Device Interface Guide
(HTML)
(PDF)
Provides background information and sample code for developing applications to communicate with or control USB devices and interfaces.
|
Hardware & Drivers |
Guides |
2007-09-04
|
System Configuration Reference Update
(HTML)
(PDF)
Summarizes the symbols added to the System Configuration framework.
|
General, Networking |
Release Notes |
2007-07-18
|
CCL Modem Scripting Guide
(HTML)
(PDF)
|
Hardware & Drivers, Networking |
Guides |
2007-06-28
|
MoreSCF
(HTML)
(DMG)
(ZIP)
High-level wrapper around System Configuration framework, making common operations easy.
|
Networking |
Sample Code |
2007-06-07
|
Core Endian Reference
(HTML)
(PDF)
Describes the C API for creating and installing callbacks to byte swap custom data.
|
Intel-Based Macs |
Reference |
2007-05-29
|
I/O Kit Fundamentals
(HTML)
(PDF)
The basics of developing device drivers. Includes descriptions of I/O Kit families.
|
Hardware & Drivers, Resource Management |
Guides |
2007-05-17
|
Mac OS X Notification Overview
(HTML)
(PDF)
|
Interprocess Communication, Runtime Architecture |
Guides |
2007-05-15
|
KauthORama
(HTML)
(DMG)
(ZIP)
Prints each Kauth request, illustrating how Kauth interacts with high-level operations, like copying files.
|
Kernel, Security |
Sample Code |
2007-04-30
|
Mass Storage Device Driver Programming Guide
(HTML)
(PDF)
Background and task information about developing kernel-resident drivers for mass storage devices.
|
Hardware & Drivers |
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
|
Hardware & Drivers |
Technical Notes |
2007-03-23
|
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.
|
Hardware & Drivers |
Guides |
2007-03-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.
|
Hardware & Drivers |
Guides |
2007-03-06
|
ExpressCard Prevents System Sleep
(HTML)
QA1517: Describes how some ExpressCard cards can prevent system sleep and how to fix the problem.
|
Hardware & Drivers |
Technical Q&As |
2007-02-28
|
SCSIHBAEmulator
(HTML)
(DMG)
(ZIP)
Demonstration of how to implement a virtual parallel tasking SCSI host bus adapter (HBA)
|
Hardware & Drivers |
Sample Code |
2007-02-20
|
Accessing Hardware From Applications
(HTML)
(PDF)
Tips and guidelines for developing applications that communicate with or control devices.
|
Hardware & Drivers |
Guides |
2007-02-08
|
FireWire Device Interface Guide
(HTML)
(PDF)
Explains how to develop applications to communicate with or control FireWire devices and units.
|
Hardware & Drivers |
Guides |
2007-02-08
|
SCSI Architecture Model Device Interface Guide
(HTML)
(PDF)
Explains how to develop applications that communicate with or control SCSI Architecture Model devices.
|
Hardware & Drivers |
Guides |
2007-02-08
|
Kerberos: Highly Secure Single Sign On Authentication in Mac OS X
(HTML)
Learn how you can take advantage of Kerberos in your application.
|
Security |
Articles |
2007-02-05
|
Frequently Asked Questions about the X Window System (X11) for Mac OS X
(HTML)
TN2165: Answers several FAQs about the Mac OS X implementation of X11
|
Open Source |
Technical Notes |
2007-01-22
|
Kernel Authorization
(HTML)
TN2127: Describes the kernel authorization (kauth) subsystem and its associated KPI.
|
Kernel, Security |
Technical Notes |
2007-01-16
|
Open Directory Programming Guide
(HTML)
(PDF)
Explains how to implement centralized storage and retrieval of information in Carbon.
|
Networking |
Guides |
2007-01-08
|
Developing for VFS
(HTML)
()
QA1242: Describes Apple's position on developing external file systems (VFS plug-ins) for Mac OS X.
|
File Management, Kernel |
Technical Q&As |
2006-12-22
|
Volumes Not Showing Up On The Desktop
(HTML)
QA1491: Describes how to make a volume from a third party VFS plug-in show up on the desktop.
|
File Management, Kernel |
Technical Q&As |
2006-12-20
|
Integrating With The Connect to Server Dialog
(HTML)
QA1387: Describes problems integrating a third-party network file system with Finder's Connect to Server dialog.
|
File Management, Kernel |
Technical Q&As |
2006-11-16
|