Jump To:
Leopard Reference Library
Darwin is the UNIX technology-based foundation of Mac OS X. Darwin integrates several technologies. Among the most important are 4.4BSD-based operating-system services (built on the Mach 3.0 microkernel), the I/O Kit, networking facilities, and support for multiple integrated file systems. Developers can use Darwin to port UNIX/Linux applications and create kernel extensions.

A guided introduction and learning path for developers new to Darwin.   Essential information for developers working in the Darwin environment.   C and Objective-C API references organized by framework.
Document Descriptions
On Off
Display

Sort by
Title
Sorted by
Topic
Sort by
Resource Type
Sort by
Date
The "/.vol" directory and "volfs" (HTML) (日本語 HTML)
QA1113: Describes how the Carbon File Manager interacts with BSD via "volfs" and the "/.vol" directory.
File Management Technical Q&As 2002-02-14
Developing for VFS (HTML) (日本語 HTML)
QA1242: Describes Apple's position on developing external file systems (VFS plug-ins) for Mac OS X.
File Management Technical Q&As 2006-12-22
Directories Appear as Volume Aliases (HTML)
QA1351: Discusses how VFS plug-ins should handle device numbers to ensure compatibility with Carbon applications.
File Management Technical Q&As 2004-05-25
EmptyFS (HTML) (DMG) (ZIP)
A very simple VFS plug-in that mounts a volume that is completely empty.
File Management Sample Code 2006-11-09
File Manager Text Encoding Hints (HTML) (日本語 HTML)
QA1223: How to use Text Encoding Hints.
File Management Technical Q&As 2003-01-20
File System Events Programming Guide (HTML) (PDF)
Explains how applications can detect changes in the file system.
File Management Guides 2008-03-11
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
FileNotification (HTML) (DMG) (ZIP)
kqueue file notification introduced in 10.3. Notification API to detect file system modifications.
File Management Sample Code 2005-10-27
filesystem_examples (HTML) (DMG) (ZIP)
Collection of command line tools illustrating filesystem features.
File Management Sample Code 2006-01-10
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
FSMegaInfo (HTML) (DMG) (ZIP)
Prints information about various file system objects; helpful when debugging VFS plug-ins.
File Management Sample Code 2008-02-25
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 Technical Q&As 2006-11-16
Leopard Technology Series for Developers: OS Foundations (HTML)
Leopard Overview article on system-level updates.
File Management Articles 2007-09-04
MFSLives (HTML) (DMG) (ZIP)
Sample VFS plug-in for the Macintosh File System (MFS) volume format, as used on 400KB floppies.
File Management Sample Code 2006-11-09
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
File Management Sample Code 2003-10-27
Secrets of the GPT (HTML)
TN2166: Describes the new partition map format used by Intel-based Macintosh computers.
File Management Technical Notes 2006-11-06
Text Encodings in VFS (HTML) (日本語 HTML)
QA1173: How to handle text encodings correctly when writing a file system (VFS) plug-in for Mac OS X.
File Management Technical Q&As 2003-02-10
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 Technical Q&As 2006-12-20
VolumeToBSDNode (HTML) (DMG) (ZIP)
Shows how to iterate across all mounted volumes and retrieve their BSD node names.
File Management Sample Code 2006-10-16
Watcher (HTML) (DMG) (ZIP)
Uses FSEvents to monitor a directory hierarchy to keep track of its total size
File Management Sample Code 2006-08-04
Building Darwin (HTML)
Explains how to work with the Darwin build system using the build tools provided.
General Guides 2001-10-08
Darwin Notification API Reference (HTML)
Describes the Darwin API for interprocess notification.
General 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
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 Reference 2009-03-04
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 Guides 2007-10-31
Kernel Framework Reference (HTML)
Describes the APIs and classes (including I/O Kit families) that support kernel-resident device drivers.
General Reference 2009-01-06
KPI Reference (HTML)
Provides information on the NKE Sustainable API in Headerdoc format.
General Reference 2006-07-17
Mac OS X Man Pages (HTML)
HTML versions of the Mac OS X, Mac OS X Server, Xcode Tools, and CHUD man pages.
General Reference 2008-04-29
Miscellaneous User Space API Reference (HTML)
Describes APIs located in various headers in /usr/include.
General Reference 2006-09-05
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 Guides 2009-05-06
System Configuration Reference Update (HTML) (PDF)
Summarizes the symbols added to the System Configuration framework.
General Release Notes 2007-07-18
Unix 03 Conformance Release Notes (HTML)
Describes features, issues, and workarounds related to Mac OS X v10.5 and its support of SUSv3 (Version 3 of the SUS).
General Release Notes 2006-10-06
Accessing Hardware From Applications (HTML) (PDF)
Tips and guidelines for developing applications that communicate with or control devices.
Hardware & Drivers Guides 2007-02-08
Allocating and sharing memory with user space from an I/O Kit driver (HTML) (日本語 HTML)
QA1197: Describes the preferred technique for allocating and sharing buffers in an I/O Kit kernel driver.
Hardware & Drivers 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.
Hardware & Drivers Technical Q&As 1999-10-11
Audio Device Driver Programming Guide (HTML) (PDF)
Explains how to develop kernel-resident drivers for audio devices.
Hardware & Drivers Guides 2009-03-04
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
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
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
Can't attach during two-machine debugging with GDB (HTML) (日本語 HTML)
Deprecated - QA1019: Describes a workaround for a problem attaching during two-machine debugging on Mac OS X 10.0.x.
Hardware & Drivers Technical Q&As 2003-06-02
CCL Modem Scripting Guide (HTML) (PDF)
Hardware & Drivers 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.
Hardware & Drivers 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.
Hardware & Drivers 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.
Hardware & Drivers 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.
Hardware & Drivers Guides 2007-03-06
The dreaded "incompatible flag -framework" error (HTML)
QA1096: Explains how to eliminate the incompatible flag -framework error in Project Builder.
Hardware & Drivers Technical Q&As 2001-12-05
Driver Tuning on Panther or G5 (HTML) (日本語 HTML)
TN2090: Describes potential issues when using drivers in Panther or later, or on a Power Macintosh G5.
Hardware & Drivers 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.
Hardware & Drivers 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.
Hardware & Drivers 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.
Hardware & Drivers Reference 2008-04-08
Generating a Non-Maskable Interrupt (NMI) (HTML) (日本語 HTML)
QA1264: Explains how to generate a non-maskable interrupt (NMI) on modern Macintosh systems.
Hardware & Drivers 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.
Hardware & Drivers Guides 2006-05-23
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
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
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.
Hardware & Drivers Reference 2009-03-04
I/O Kit Fundamentals (HTML) (PDF)
The basics of developing device drivers. Includes descriptions of I/O Kit families.
Hardware & Drivers 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.
Hardware & Drivers 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.
Hardware & Drivers Technical Q&As 2003-10-28
IODeviceTree and the I/O Registry (HTML) (日本語 HTML)
QA1120: Describes the IODeviceTree plane in the Mac OS X I/O Registry.
Hardware & Drivers Technical Q&As 2008-09-18
IOKit Framework Headers (HTML) (日本語 HTML)
QA1107: Describes the differences between the headers in IOKit.framework and the I/O Kit headers in Kernel.framework.
Hardware & Drivers 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.
Hardware & Drivers Sample Code 2003-08-27
IOLog and Interrupt Context (HTML) (日本語 HTML)
QA1100: Describes when IOKit runs at primary (hardware) interrupt context.
Hardware & Drivers 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.
Hardware & Drivers Sample Code 2005-08-17
Issues with boot time KEXT loading (HTML) (日本語 HTML)
QA1087: Explains how to solve problems with loading KEXTs at boot time.
Hardware & Drivers Technical Q&As 2004-01-15
Kernel Core Dumps (HTML)
TN2118: Explains how to gather and use remote kernel core dumps.
Hardware & Drivers 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.
Hardware & Drivers Reference 2009-01-06
Mac OS X and root access (HTML)
QA1013: Describes how to enable root access in Mac OS X.
Hardware & Drivers Technical Q&As 2008-09-16
Making sense of IOKit error codes (HTML) (日本語 HTML)
QA1075: Explains how to interpret I/O Kit error codes.
Hardware & Drivers 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.
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
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
Open Firmware Memory bus speed (HTML)
HW97: Describes a method to display memory bus speed for G3 or G4 Macintosh in Open Firmware.
Hardware & Drivers 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.
Hardware & Drivers Technical Q&As 2003-09-30
Power Management; Policy Maker vs. Power Controller (HTML) (日本語 HTML)
QA1121: Describes the differences between a Power Management Policy Maker and a Power Management Power Controller.
Hardware & Drivers Technical Q&As 2002-02-13
Programmatically causing restart, shutdown and/or logout (HTML) (日本語 HTML)
QA1134: Describes how to programmatically cause restart, shutdown, sleep or logout.
Hardware & Drivers 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.
Hardware & Drivers Technical Q&As 2008-08-08
Retain Counts of io_object_t Objects in IOKit.framework (HTML) (日本語 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
SampleFilterScheme (HTML) (DMG) (ZIP)
Demonstrates a simple filter scheme which passes all operations through to its provider unchanged.
Hardware & Drivers 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.
Hardware & Drivers 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.
Hardware & Drivers Guides 2007-02-08
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
Secrets of the GPT (HTML)
TN2166: Describes the new partition map format used by Intel-based Macintosh computers.
Hardware & Drivers 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.
Hardware & Drivers Sample Code 2003-01-14
SimpleUserClient (HTML) (DMG) (ZIP)
Shows how to create a user client for an I/O Kit kernel driver.
Hardware & Drivers 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
Hardware & Drivers Technical Q&As 2003-10-09
TimerEventSample (HTML) (DMG) (ZIP)
Shows how to set up and use an IOTimerEventSource in a kext.
Hardware & Drivers Sample Code 2003-01-14
Understanding and Debugging Kernel Panics (HTML) (日本語 HTML)
TN2063: Addresses kernel panics: what they are and how to debug the code that caused the panic.
Hardware & Drivers 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.
Hardware & Drivers 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.
Hardware & Drivers 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.
Hardware & Drivers Sample Code 2006-10-02
VolumeToBSDNode (HTML) (DMG) (ZIP)
Shows how to iterate across all mounted volumes and retrieve their BSD node names.
Hardware & Drivers Sample Code 2006-10-16
Working with Configuration Variables (HTML) (日本語 HTML)
QA1119: Explains how to delete a specific Open Firmware configuration variable without using Command-Option-P-R.
Hardware & Drivers 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.
Hardware & Drivers Guides 2006-04-04
AltiVec/SSE Migration Guide (HTML) (PDF)
Explains how to convert PowerPC AltiVec code to Intel SSE code.
Intel-Based Macs Guides 2005-09-08
Building an Open Source Universal Binary (HTML)
Learn to build a universal binary through this sample build that uses OpenSSL.
Intel-Based Macs Articles 2006-04-24
Byte-Order Utilities Reference (HTML) (PDF)
Describes Core Foundation byte-order functions.
Intel-Based Macs Reference 2006-05-23
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
GCC Porting Guide (HTML) (PDF)
Provides guidance on how to migrate projects to new GCC releases.
Intel-Based Macs Guides 2006-10-03
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 Reference 2007-10-31
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
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
64-Bit Transition Guide (HTML) (PDF)
Describes the 64-bit features available in Mac OS X.
Interprocess Communication Guides 2008-04-08
BootstrapDump (HTML) (DMG) (ZIP)
Print Mach bootstrap namespace information.
Interprocess Communication Sample Code 2008-06-18
Darwin Notification API Reference (HTML)
Describes the Darwin API for interprocess notification.
Interprocess Communication Reference 2008-04-08
File System Events Programming Guide (HTML) (PDF)
Explains how applications can detect changes in the file system.
Interprocess Communication Guides 2008-03-11
Kernel Programming Guide (HTML) (PDF)
Essential information for programming in the Mac OS X kernel. Includes a high-level overview.
Interprocess Communication Guides 2006-11-07
Mac OS X Notification Overview (HTML) (PDF)
Interprocess Communication Guides 2007-05-15
NotifyTool (HTML) (DMG) (ZIP)
Shows how to use the BSD notify API.
Interprocess Communication Sample Code 2007-09-25
Allocating and sharing memory with user space from an I/O Kit driver (HTML) (日本語 HTML)
QA1197: Describes the preferred technique for allocating and sharing buffers in an I/O Kit kernel driver.
Kernel Technical Q&As 2008-10-13
Avoiding Kernel Event Conflicts (HTML)
QA1063: Documents the namespace for the vendor_code field of the kern_event_msg structure.
Kernel Technical Q&As 2001-09-14
Can't attach during two-machine debugging with GDB (HTML) (日本語 HTML)
Deprecated - QA1019: Describes a workaround for a problem attaching during two-machine debugging on Mac OS X 10.0.x.
Kernel Technical Q&As 2003-06-02
Coding in the Kernel (HTML)
Considerations and caveats about programming in the kernel.
Kernel Guides 2005-11-09
Descriptor Passing Problems (HTML)
QA1541: Describes how to work around common problems with descriptor passing.
Kernel Technical Q&As 2007-10-29
Developing for VFS (HTML) (日本語 HTML)
QA1242: Describes Apple's position on developing external file systems (VFS plug-ins) for Mac OS X.
Kernel Technical Q&As 2006-12-22
Directories Appear as Volume Aliases (HTML)
QA1351: Discusses how VFS plug-ins should handle device numbers to ensure compatibility with Carbon applications.
Kernel Technical Q&As 2004-05-25
EmptyFS (HTML) (DMG) (ZIP)
A very simple VFS plug-in that mounts a volume that is completely empty.
Kernel Sample Code 2006-11-09
Energy Star PCI Device (HTML) (日本語 HTML)
QA1108: Provides useful information for developers of Energy Star-compliant PCI devices.
Kernel Technical Q&As 2002-01-15
File System Events Programming Guide (HTML) (PDF)
Explains how applications can detect changes in the file system.
Kernel Guides 2008-03-11
Generating a Non-Maskable Interrupt (NMI) (HTML) (日本語 HTML)
QA1264: Explains how to generate a non-maskable interrupt (NMI) on modern Macintosh systems.
Kernel Technical Q&As 2008-10-13
Getting List of All Processes on Mac OS X (HTML) (日本語 HTML)
QA1123: Describes how, using Carbon and BSD respectively, to list all applications and processes.
Kernel Technical Q&As 2002-03-05
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.
Kernel Technical Q&As 2003-10-28
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.
Kernel Technical Q&As 2006-11-16
IOKit Framework Headers (HTML) (日本語 HTML)
QA1107: Describes the differences between the headers in IOKit.framework and the I/O Kit headers in Kernel.framework.
Kernel 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.
Kernel Sample Code 2003-08-27
IOLog and Interrupt Context (HTML) (日本語 HTML)
QA1100: Describes when IOKit runs at primary (hardware) interrupt context.
Kernel 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.
Kernel Sample Code 2005-08-17
Issues with boot time KEXT loading (HTML) (日本語 HTML)
QA1087: Explains how to solve problems with loading KEXTs at boot time.
Kernel Technical Q&As 2004-01-15
KauthORama (HTML) (DMG) (ZIP)
Prints each Kauth request, illustrating how Kauth interacts with high-level operations, like copying files.
Kernel Sample Code 2007-04-30
Kernel Authorization (HTML)
TN2127: Describes the kernel authorization (kauth) subsystem and its associated KPI.
Kernel Technical Notes 2007-01-16
Kernel Core Dumps (HTML)
TN2118: Explains how to gather and use remote kernel core dumps.
Kernel Technical Notes 2008-11-12
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.
Kernel Guides 2007-10-31
Kernel Extensions Release Notes (HTML)
Kernel Release Notes 2007-10-31
Kernel Programming Guide (HTML) (PDF)
Essential information for programming in the Mac OS X kernel. Includes a high-level overview.
Kernel Guides 2006-11-07
Kernel's MAC framework (HTML)
QA1574: Cautions that the kernel's MAC framework is currently not support.
Kernel Technical Q&As 2008-01-04
KPI Reference (HTML)
Provides information on the NKE Sustainable API in Headerdoc format.
Kernel Reference 2006-07-17
Mac OS X and root access (HTML)
QA1013: Describes how to enable root access in Mac OS X.
Kernel Technical Q&As 2008-09-16
Making sense of IOKit error codes (HTML) (日本語 HTML)
QA1075: Explains how to interpret I/O Kit error codes.
Kernel Technical Q&As 2002-02-07
MFSLives (HTML) (DMG) (ZIP)
Sample VFS plug-in for the Macintosh File System (MFS) volume format, as used on 400KB floppies.
Kernel Sample Code 2006-11-09
Network Kernel Extensions (legacy) (HTML) (PDF)
Describes how to write a kernel extension for adding or modifying functionality of a networking stack (Mac OS X 10.3 and earlier).
Kernel Guides 2006-10-03
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 Guides 2009-03-02
SampleFilterScheme (HTML) (DMG) (ZIP)
Demonstrates a simple filter scheme which passes all operations through to its provider unchanged.
Kernel Sample Code 2006-01-03
SimpleDataQueue (HTML) (DMG) (ZIP)
Implements an IODataQueue inside an I/O Kit KEXT which passes events and data to user space.
Kernel Sample Code 2003-01-14
SimpleUserClient (HTML) (DMG) (ZIP)
Shows how to create a user client for an I/O Kit kernel driver.
Kernel Sample Code 2008-08-27
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
TimerEventSample (HTML) (DMG) (ZIP)
Shows how to set up and use an IOTimerEventSource in a kext.
Kernel Sample Code 2003-01-14
Understanding and Debugging Kernel Panics (HTML) (日本語 HTML)
TN2063: Addresses kernel panics: what they are and how to debug the code that caused the panic.
Kernel Technical Notes 2008-08-14
VendorSpecificType00 (HTML) (DMG) (ZIP)
Demonstrates how to access vendor-specific storage device functionality using a simple interface from user space code.
Kernel Sample Code 2006-10-02
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.
Kernel Technical Q&As 2006-12-20
Apple Filing Protocol Programming Guide (HTML) (PDF)
Describes high-level concepts for Apple Filing Protocol commands.
Networking Guides 2006-04-04
Apple Filing Protocol Reference (HTML) (PDF)
Describes the Apple Filing Protocol commands.
Networking Reference 2006-05-23
Bonjour enforces the TXT record format in Panther (HTML)
QA1306: Explains how mDNSResponder enforces the proper TXT record format in Panther.
Networking Technical Q&As 2004-07-14
Bonjour Printer Subtype for HTTP (HTML)
QA1555: Describes how printer vendors can register their bonjour service such that Safari can see them.
Networking Technical Q&As 2008-03-25
CCL Modem Scripting Guide (HTML) (PDF)
Networking 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.
Networking Release Notes 2007-10-31
CFLocalServer (HTML) (DMG) (ZIP)
Uses UNIX domain sockets to communicate between client and server programs on the same machine.
Networking Sample Code 2005-07-26
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
The "chosen" node in the device tree (HTML)
HW88: Describes how to find the "chosen" node in the Open firmware device tree.
Networking Technical Q&As 2000-09-05
Descriptor Passing Problems (HTML)
QA1541: Describes how to work around common problems with descriptor passing.
Networking Technical Q&As 2007-10-29
Discovering all advertised Bonjour service types (HTML)
QA1337: Explains how to discover all Bonjour service types being advertised on the local network.
Networking Technical Q&As 2004-06-01
DNS Service Discovery C Reference (HTML)
Describes the DNS Service Discovery API for implementing Bonjour in an application.
Networking Reference 2008-04-23
DNSServiceMetaQuery (HTML) (DMG) (ZIP)
Shows how to discover Bonjour service types being advertised on the local network.
Networking Sample Code 2005-06-01
GetMACAddressSample (HTML) (DMG) (ZIP)
Demonstrates how to retrieve the MAC address for each Ethernet interface from the Mac OS X I/O Registry.
Networking Sample Code 2003-01-14
GetPrimaryMACAddress (HTML) (DMG) (ZIP)
Demonstrates retrieving the MAC address of the built-in Ethernet controller. Useful for uniquely identifying a Macintosh system.
Networking Sample Code 2005-10-27
Getting a Packet Trace (HTML) (日本語 HTML)
QA1176: Lists tools available for looking at the network packets on the wire.
Networking Technical Q&As 2008-06-03
IOKit Framework Headers (HTML) (日本語 HTML)
QA1107: Describes the differences between the headers in IOKit.framework and the I/O Kit headers in Kernel.framework.
Networking Technical Q&As 2002-01-15
KPI Reference (HTML)
Provides information on the NKE Sustainable API in Headerdoc format.
Networking Reference 2006-07-17
Mac OS X Man Pages (HTML)
HTML versions of the Mac OS X, Mac OS X Server, Xcode Tools, and CHUD man pages.
Networking Reference 2008-04-29
Mixing link-local IP addresses and routable IP addresses (HTML)
QA1357: Explains how to enable communication between devices with link-local addresses and devices with routable addresses.
Networking Technical Q&As 2005-07-06
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
Networking Sample Code 2003-10-27
MoreSCF (HTML) (DMG) (ZIP)
High-level wrapper around System Configuration framework, making common operations easy.
Networking Sample Code 2007-06-07
Network Kernel Extensions (legacy) (HTML) (PDF)
Describes how to write a kernel extension for adding or modifying functionality of a networking stack (Mac OS X 10.3 and earlier).
Networking Guides 2006-10-03
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).
Networking Guides 2009-03-02
NetworkAuthentication (HTML) (DMG) (ZIP)
Demonstrates authentication with Open Directory APIs and GSSAPI
Networking Sample Code 2005-06-01
Open Directory Plug-in Programming Guide (HTML) (PDF)
Explains how to implement dynamically loaded libraries that respond to Open Directory client requests in Carbon.
Networking Guides 2006-05-23
Open Directory Programming Guide (HTML) (PDF)
Explains how to implement centralized storage and retrieval of information in Carbon.
Networking Guides 2007-01-08
Open Directory Reference (HTML) (PDF)
Describes the Carbon API for using Open Directory.
Networking Reference 2006-05-23
QISA (HTML) (DMG) (ZIP)
Demonstrates the basics of writing an Internet setup assistant for traditional Mac OS and Mac OS X.
Networking Sample Code 2003-05-15
SimpleDial (HTML) (DMG) (ZIP)
Demonstrates management of dialup connections, such as PPP, using System Configuration framework network connection API.
Networking Sample Code 2005-07-26
SimplePing (HTML) (DMG) (ZIP)
Sample provides simple API to programatically ping a remote host without admin privileges
Networking Sample Code 2003-10-27
SimpleReach (HTML) (DMG) (ZIP)
Demonstrates network host reachability testing using the System Configuration framework asynchronous network reachability API.
Networking Sample Code 2005-07-26
SocketCancel (HTML) (DMG) (ZIP)
Shows how to safely cancel threads that are blocked within BSD sockets calls.
Networking Sample Code 2005-08-10
The state of mDNSResponder (HTML)
QA1339: Explains how to obtain information regarding the internal state of mDNSResponder.
Networking Technical Q&As 2006-10-03
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
System Configuration Programming Guidelines (HTML) (PDF)
Explains how to use system configuration services for network configuration and management, including determining reachability and getting connected.
Networking Guides 2006-02-07
System Configuration Reference Update (HTML) (PDF)
Summarizes the symbols added to the System Configuration framework.
Networking Release Notes 2007-07-18
Updating the TXT record of a Bonjour service (HTML)
QA1302: Explains how to update a Bonjour TXT record while running on either Jaguar or Panther.
Networking Technical Q&As 2004-07-14
Writing Open Directory Plug-ins (HTML)
Learn how to write Open Directory plug-ins to help your application locate and manage network information.
Networking Articles 2004-09-13
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
Using Doxygen to Create Xcode Documentation Sets (HTML)
Learn how to integrate your documentation into Xcode.
Open Source Articles 2008-06-09
64-Bit Transition Guide (HTML) (PDF)
Describes the 64-bit features available in Mac OS X.
Performance Guides 2008-04-08
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 Release Notes 2007-10-31
Disabling Processor Cores on a Multi-Core System (HTML) (日本語 HTML)
QA1141: Describes how to disable processor cores on a multi-core system for testing purposes.
Performance Technical Q&As 2008-09-16
dist_fft (HTML) (DMG) (ZIP)
Gigaelement FFTs on Apple G5 clusters
Performance Sample Code 2004-08-23
File System Events Programming Guide (HTML) (PDF)
Explains how applications can detect changes in the file system.
Performance Guides 2008-03-11
GDB for MacsBug Veterans (HTML)
TN2030: Translate your experience with MacsBug into a working knowledge of the GNU source-level debugger (GDB).
Performance Technical Notes 2001-10-18
Getting Started with launchd (HTML)
Learn about launchd and see how to migrate your configuration files.
Performance Articles 2005-08-22
Performance Overview (HTML) (PDF)
Introduces the factors that determine performance.
Performance Guides 2006-10-03
Signals and Threads (HTML) (日本語 HTML)
QA1184: Describes how threads and signals interact.
Performance Technical Q&As 2002-08-27
Tiger Developer Overview Series: Developing 64-bit Applications (HTML)
Learn how Mac OS X Tiger breaks the limitations of 32-bit computing.
Performance Articles 2004-12-20
64-Bit Transition Guide (HTML) (PDF)
Describes the 64-bit features available in Mac OS X.
Porting Guides 2008-04-08
Building Universal Binaries from "configure"-based Open Source Projects (HTML)
TN2137: Describes some methods for building some existing "configure"-based Open Source packages as universal binaries.
Porting Technical Notes 2006-10-05
Developing Cross-Platform UNIX Applications with Mac OS X (HTML)
Learn tips for developing code on Mac OS X for deployment on other UNIX platforms.
Porting Articles 2004-08-30
Getting List of All Processes on Mac OS X (HTML) (日本語 HTML)
QA1123: Describes how, using Carbon and BSD respectively, to list all applications and processes.
Porting Technical Q&As 2002-03-05
Is dlopen available on all versions of Mac OS X? (HTML) (日本語 HTML)
QA1180: Describes how to dynamically link to libraries and plug-ins, typically done with dlopen.
Porting Technical Q&As 2008-08-19
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
Porting Sample Code 2003-10-27
Moriarity (HTML) (DMG) (ZIP)
Implementing a Cocoa GUI that wraps command-line functionality, calling a UNIX task and presenting the results in a GUI.
Porting Sample Code 2003-01-14
Packaging UNIX Software (HTML)
Explains how to post UNIX and other command-line tools to Apple's Macintosh Product Guide.
Porting Guides 2001-04-20
Pascal to C: PROCEDURE Parameters (HTML)
Deprecated - PT31: Nested procedures and PROCEDURE parameters in Pascal when converting them into C or C++.
Porting Technical Notes 1990-02-01
Perl, Python, and Ruby Extensions Release Notes (HTML)
Describes how to create universal binary extensions for Perl, Python, and Ruby.
Porting Release Notes 2007-10-31
PIDFromBSDProcessName (HTML) (DMG) (ZIP)
Provides a simple API to do process PID lookup based on BSD process name.
Porting Sample Code 2003-02-13
Porting Command Line Unix Tools to Mac OS X (HTML) (日本語 HTML)
TN2071: A general guide for Unix developers porting software to Mac OS X.
Porting Technical Notes 2003-09-03
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.
Porting Guides 2009-05-06
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 Guides 2008-04-08
Setting environment variables for user processes (HTML)
QA1067: Tells how to set environment variables for user processes.
Porting Technical Q&As 2001-10-25
Static linking of user binaries on Mac OS X (HTML) (日本語 HTML)
QA1118: Explains why static linking of user binaries is not supported on Mac OS X, and possible workarounds.
Porting Technical Q&As 2002-02-07
Symbol Variants Release Notes (HTML)
Describes symbol variants, a way of providing multiple versions of symbols for backwards compatibility.
Porting Release Notes 2007-10-16
Tiger Developer Overview Series: Developing 64-bit Applications (HTML)
Learn how Mac OS X Tiger breaks the limitations of 32-bit computing.
Porting Articles 2004-12-20
Bonjour Printer Subtype for HTTP (HTML)
QA1555: Describes how printer vendors can register their bonjour service such that Safari can see them.
Printing Technical Q&As 2008-03-25
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).
Process Management Release Notes 2007-10-31
BootstrapDump (HTML) (DMG) (ZIP)
Print Mach bootstrap namespace information.
Process Management Sample Code 2008-06-18
CFLocalServer (HTML) (DMG) (ZIP)
Uses UNIX domain sockets to communicate between client and server programs on the same machine.
Process Management Sample Code 2005-07-26
Customizing Process Stack Size (HTML)
QA1419: Describes methods for setting the stack size of a process and/or thread.
Process Management Technical Q&As 2008-02-20
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
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
Getting Started with launchd (HTML)
Learn about launchd and see how to migrate your configuration files.
Process Management Articles 2005-08-22
Mach Absolute Time Units (HTML)
QA1398: Describes how to convert Mach absolute time units to real time, and vice versa.
Process Management Technical Q&As 2005-01-06
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
Process Management Sample Code 2003-10-27
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
PIDFromBSDProcessName (HTML) (DMG) (ZIP)
Provides a simple API to do process PID lookup based on BSD process name.
Process Management Sample Code 2003-02-13
Running At Login (HTML)
TN2228: Describes how to write code that's coordinated with the login process.
Process Management Technical Notes 2008-09-16
SampleD (HTML) (DMG) (ZIP)
Demonstrates use of launchd and Apple System Logger.
Process Management Sample Code 2005-10-27
UTXplorer (HTML) (DMG) (ZIP)
Uses the <utmpx.h> API to display current login sessions and login history.
Process Management Sample Code 2008-03-19
Customizing Process Stack Size (HTML)
QA1419: Describes methods for setting the stack size of a process and/or thread.
Resource Management Technical Q&As 2008-02-20
I/O Kit Fundamentals (HTML) (PDF)
The basics of developing device drivers. Includes descriptions of I/O Kit families.
Resource Management Guides 2007-05-17
Mach Absolute Time Units (HTML)
QA1398: Describes how to convert Mach absolute time units to real time, and vice versa.
Resource Management Technical Q&As 2005-01-06
MachPortDump (HTML) (DMG) (ZIP)
Dumps out the Mach port name space of a process; useful when debugging port right leaks.
Resource Management Sample Code 2005-08-10
MapLargeFile (HTML) (DMG) (ZIP)
Shows a technique for mapping files greater than 4GB into memory for faster access.
Resource Management Sample Code 2003-11-19
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
Resource Management Sample Code 2003-10-27
Preventing sleep (HTML)
QA1160: Explains how your application can prevent the system from sleeping.
Resource Management Technical Q&As 2004-10-22
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.
Resource Management Technical Q&As 2008-08-08
CheckExecutableArchitecture (HTML) (DMG) (ZIP)
Determine whether a particular Mach-O executable contains a version suitable for executing on a given processor architecture.
Runtime Architecture Sample Code 2006-02-07
Dynamic Library Programming Topics (HTML) (PDF)
Explains how to design, implement, and use dynamic libraries.
Runtime Architecture Guides 2009-02-26
Is dlopen available on all versions of Mac OS X? (HTML) (日本語 HTML)
QA1180: Describes how to dynamically link to libraries and plug-ins, typically done with dlopen.
Runtime Architecture Technical Q&As 2008-08-19
Mac OS X ABI Dynamic Loader Reference (HTML) (PDF)
Describes the functions used to access Mach-O files.
Runtime Architecture Reference 2005-11-09
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 Reference 2009-02-04
Mac OS X Notification Overview (HTML) (PDF)
Runtime Architecture Guides 2007-05-15
MemoryBasedBundle (HTML) (DMG) (ZIP)
Shows how to execute Mach-O code from memory, much like GetMemFragment in CFM.
Runtime Architecture Sample Code 2005-08-10
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
Runtime Architecture Sample Code 2003-10-27
Static linking of user binaries on Mac OS X (HTML) (日本語 HTML)
QA1118: Explains why static linking of user binaries is not supported on Mac OS X, and possible workarounds.
Runtime Architecture Technical Q&As 2002-02-07
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
Authorization Services Programming Guide (HTML) (PDF)
Explains how to add fine-grained control of privileged operations in an application.
Security Guides 2009-01-06
Code Signing Guide (HTML) (PDF)
Explains how you can sign your code and why you should.
Security Guides 2008-11-19
Code Signing Release Notes (HTML)
Security Release Notes 2007-10-31
CryptNoMore (HTML) (DMG) (ZIP)
Shows how to authenticate a user using Open Directory (Directory Services).
Security Sample Code 2008-03-17
CryptoSample (HTML) (DMG) (ZIP)
Contains sample code showing symmetric encryption and message digest calculation.
Security Sample Code 2003-02-06
GetMACAddressSample (HTML) (DMG) (ZIP)
Demonstrates how to retrieve the MAC address for each Ethernet interface from the Mac OS X I/O Registry.
Security Sample Code 2003-01-14
GetPrimaryMACAddress (HTML) (DMG) (ZIP)
Demonstrates retrieving the MAC address of the built-in Ethernet controller. Useful for uniquely identifying a Macintosh system.
Security Sample Code 2005-10-27
KauthORama (HTML) (DMG) (ZIP)
Prints each Kauth request, illustrating how Kauth interacts with high-level operations, like copying files.
Security Sample Code 2007-04-30
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
Kernel Authorization (HTML)
TN2127: Describes the kernel authorization (kauth) subsystem and its associated KPI.
Security Technical Notes 2007-01-16
Mac OS X and root access (HTML)
QA1013: Describes how to enable root access in Mac OS X.
Security Technical Q&As 2008-09-16
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
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
Security Sample Code 2003-10-27
QISA (HTML) (DMG) (ZIP)
Demonstrates the basics of writing an Internet setup assistant for traditional Mac OS and Mac OS X.
Security Sample Code 2003-05-15
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
Security Framework Error Codes (HTML)
QA1499: Explains how to interpret errors returned by the Security Framework with an overview of Security error handling.
Security Technical Q&As 2006-11-16
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
SSLSample (HTML) (DMG) (ZIP)
Contains examples showing how to use SecureTransport.
Security Sample Code 2003-01-14
Suppressing the "unexpectedly quit" alert (HTML)
QA1288: Describes how to suppress the "unexpectedly quit" alert.
Security Technical Q&As 2008-03-11
Uniquely Identifying a Macintosh Computer (HTML) (日本語 HTML)
TN1103: How to identify a specific Macintosh computer.
Security Technical Notes 2006-04-25
Building Universal Binaries from "configure"-based Open Source Projects (HTML)
TN2137: Describes some methods for building some existing "configure"-based Open Source packages as universal binaries.
Tools Technical Notes 2006-10-05
Cross-Development Programming Guide (HTML) (PDF)
Explains how to build software for versions of Mac OS X other than the one the development tools are running on.
Tools Guides 2006-11-07
Developing Cross-Platform UNIX Applications with Mac OS X (HTML)
Learn tips for developing code on Mac OS X for deployment on other UNIX platforms.
Tools Articles 2004-08-30
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 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 3.3 Compiler (HTML)
Explains how to use the GNU compilers from the command line.
Tools Reference
GNU C/C++/Objective-C 4.0.1 Compiler User Guide (HTML)
Describes the Apple version of the GNU 4.0.1 compiler.
Tools Reference 2007-10-31
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
HeaderDoc User Guide (HTML) (PDF)
Explains how to extract API reference documentation from commented header files.
Tools Guides 2008-04-08
IOKit Framework Headers (HTML) (日本語 HTML)
QA1107: Describes the differences between the headers in IOKit.framework and the I/O Kit headers in Kernel.framework.
Tools Technical Q&As 2002-01-15
Is dlopen available on all versions of Mac OS X? (HTML) (日本語 HTML)
QA1180: Describes how to dynamically link to libraries and plug-ins, typically done with dlopen.
Tools Technical Q&As 2008-08-19
Mac OS X ABI Mach-O File Format Reference (HTML) (PDF)
Describes the data structures that make up the Mach-O file format.
Tools Reference 2009-02-04
Mac OS X Man Pages (HTML)
HTML versions of the Mac OS X, Mac OS X Server, Xcode Tools, and CHUD man pages.
Tools Reference 2008-04-29
Netwide Assembler Guide (HTML)
Describes the Netwide Assembler for Intel-based Macs.
Tools Reference 2008-06-19
Packaging UNIX Software (HTML)
Explains how to post UNIX and other command-line tools to Apple's Macintosh Product Guide.
Tools Guides 2001-04-20
Perl, Python, and Ruby Extensions Release Notes (HTML)
Describes how to create universal binary extensions for Perl, Python, and Ruby.
Tools Release Notes 2007-10-31
PIDFromBSDProcessName (HTML) (DMG) (ZIP)
Provides a simple API to do process PID lookup based on BSD process name.
Tools Sample Code 2003-02-13
Porting UNIX/Linux Applications to Mac OS X (HTML) (PDF)
Conceptual information and tips about porting UNIX and Linux applications to Mac OS X.
Tools Guides 2008-04-08
Setting environment variables for user processes (HTML)
QA1067: Tells how to set environment variables for user processes.
Tools Technical Q&As 2001-10-25
Signals and Threads (HTML) (日本語 HTML)
QA1184: Describes how threads and signals interact.
Tools Technical Q&As 2002-08-27
Symbol Variants Release Notes (HTML)
Describes symbol variants, a way of providing multiple versions of symbols for backwards compatibility.
Tools Release Notes 2007-10-16
X11 FAQ (HTML) (日本語 HTML)
QA1232: Frequently Asked Questions about using Apple's X Window System (X11) implementation.
Tools Technical Q&As 2003-11-17